作为硕士论文的一部分,我有一个作业问题,我正在寻找解决问题的大方向。
因此,有一个代理列表和一个任务列表,任务数量大于代理数量。
代理商提交他们可以/想要执行的优先顺序的任务列表。列表的长度固定为远小于任务总数的数字。
必须为每个代理分配一项任务。分配的任务无法分配给其他代理。
目标是找到一个分配,使得分配的任务的平均优先级/偏好最低。另外,如果它是完整的解决方案,即每个代理都被分配了一个任务,那就更好了。
我已经研究了广义分配问题和匈牙利语算法,但这些问题并不适合任务成本的具体情况以及代理无法完成某些任务的可能性。
请帮忙。谢谢。
答案 0 :(得分:0)
如果您需要一般方法,可以将问题建模为混合整数程序,引入二进制变量以将任务分配给代理,并将优先级成本和(非常高的)非分配成本放入目标函数中。混合整数程序可以使用各种求解程序来解决,包括CPLEX或Gurobi,这些程序可以免费用于学术目的。