问题描述如下,有什么好的算法可以解决这个任务分配问题吗?

现有N个任务,可以由M个人来完成,每个任务由于技术需求,不是每个人都可以做.

  • 假设现有任务:task1,task2,task3。和人员A,B,C,D,E,F。
  • 任务和可执行的人员之间的关系:
    • task1 只能由{A,C,F}来完成
    • task2 只能由{B,D,F,E}来完成
    • task3 只能由{A,E,C}来完成 现在要求使用最少的人员,来完成工作task1,task2,task3。列出所有的方案?

问题补充,一个人可以同时完成多个做个工作

http://www.docin.com/p-1013386229.html

一个思路,供参考。
可以建任务数组,记录内容为以人员长度的二进制数,将允许人员位置为1
然后进行与操作,得到结果。

一个人可以做多项,,

可以建一个数组来存储

可以用群体智能算法~

遗传算法,TSP的思路都可以借鉴

一个人可以做多项。,,,

最近看了些遗传算法的东西,觉得这个问题可以考虑一下用遗传算法来解决

这个问题属于非平衡指派问题,可以看看整数规划的东西,用匈牙利算法和遗传算法都可以图片说明