指派问题的基本内容
一般来说指派问题解决的是如何将任务分配到人,使得任务完成的效益最大化(成本型效益则求最小值,利润型效益则求最大值)。上述问题一个 0 - 1 整数规划问题。
问题围绕着任务和人展开,即存在着 m 个任务,以及 n 个人。每个人处理每个任务都会有对应的效益,将所有人的情况写在一起,就组成了一个 m*n 的效益矩阵。
当 m = n 时,即此时,任务数和人数相等,那么每个人都会处理一项任务,存在如下约束:
对于任务来说,每个任务必须分配一个人;
对于人来说,每个人必须分配一个任务。
类似的,当 m < n 时,任务数小于人数,则存在如下约束:
对于任务来说,每个任务必须分配一个人;
对于人来说,每个人可能会被分配到一个任务,也可能没有分配到任务。
当 m > n 时,任务数大于人数,则存在如下约束:
对于任务来说,每个任务必须分配一个人;
对于人来说,每个人可能会被分配到一个或者多个任务,但最多不超过任务总数。
模型调用形式
[x,min_fval,exitflag] = myTaskArrange2(f)