码迷,mamicode.com
首页 > 其他好文 > 详细

变形的指派问题

时间:2019-03-19 10:25:50      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:col   最小   整数   方法   承担   复制   矩阵   das   bsp   

工作多于人数的指派问题  

  设人数m,工作数n,且n-m>0。

  1. n/m=k为整数时,需要每人完成k项工作任务。

   技术图片

  解:甲和乙每人分配2项工作,故一个人要当两个人用。在分配矩阵中可以把这两个人每行数据复制成两行,再利用经典指派问题算法进行计算

  为什么要利用经典算法?——理由是经典算法已经有成熟高效的计算方法和数学软件。

  过程如下:

  1. 每行减去该行最小数。

  技术图片

  2. 每列减去该列最小数。

  技术图片

  3. 试分配。

  技术图片

  技术图片

  计算的最终结果即:

  技术图片

  甲分配到工作A和B

  乙分配到工作E

  丙分配到工作D和C。

  故最小成本(目标)为:Z=7+5+9+4+6=31

  2. n/m=k不为整数时,需要每人完成[k]项或[k]+1工作任务。

  由于每个人最多可能承担[k]+1项工作任务,分配矩阵每行复制成[k+1]行。

  技术图片

  1. 构造初始矩阵。

  技术图片

  2. 每个人限制最多做一项虚拟工作。

  技术图片

  3. 每行减去最小数。

  技术图片

  4. 每列减去最小数。

  技术图片

  5. 试分配。

  技术图片

  6. 匈牙利法。

  技术图片技术图片

  技术图片技术图片

  技术图片

  最小未覆盖数为4

  技术图片

  7. 调整费用矩阵,再次试分配。

  技术图片技术图片

  最后,

  技术图片

  甲分配到工作B

  乙分配到工作A

  丙分配到工作C和D

  最小总费用为:Z=5+9+(4+6)=24

  

 

变形的指派问题

标签:col   最小   整数   方法   承担   复制   矩阵   das   bsp   

原文地址:https://www.cnblogs.com/fangxiaoqi/p/10545233.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!