zoukankan      html  css  js  c++  java
  • 运营管理中的任务指派法之匈牙利法

    在企业运作中,每个员工能力,效率,擅长都不一样,在任务工作量恒定的情况下,如何以最优方式,分配任务保证效率最高,资源消耗最小,这时可以参考此方法来计算得出。使企业的整体效率达到最优。
    这里以作业计划为例来说明:

    举例

    某维修小组有4名员工甲乙丙丁,要完成4项任务 ABCD,具体每个员工完成不同计划耗时如下:

    • 甲员工: A任务 9小时,B 7小时,C 3小时,D 5小时
    • 乙员工: A任务 7小时,B 8小时,C 12小时,D 11小时
    • 丙员工:A任务4小时,B 6小时,C 8小时, D 7小时
    • 丁员工: A任务 6小时,B 11小时,C 13小时,D 10小时
      如果四项任务同时进行,如何分配任务才能最快完成任务,效率最高,耗时最少?
      1.找出表中每一行的最小值,将该行所有数值都减去这个最小值,使每行至少出现一个0
      2.从第一步中得到的数表中找出每一列的最小值,将该列所有数值都减去这个最小值,使每一列至少出现一个0,最小值为0的这一列不变。
      3.以最少的水平线和垂直线划去第二步中所得的数据,即没条直线尽可能多的覆盖0,如果线条数与数表行数相等,则已经找到最优方案,直接转第6步。
      4.从表中未被划去的数值中找出最小值,所有未被划去的数值都减去这个最小值,而第三部中得到的数据中两条线相交的的数值则加上这个最小值,其他数不变。
      5.重复第三部和第四部,直到满足第三步条件,跳到第6步。
      6.从仅有0的列或者行,找出0所对应的就是最优指派方案。如果每行每列只有一个 0 ,其对应的就是最优方案。
      由以上方法得出,甲完成C 3工时,乙完成 B 8工时,丙完成 C 7工时, 丁完成A 6工时。总共使用24个工时。
  • 相关阅读:
    有向无环图单源最短路径问题
    linux下程序编译出错解决方法
    Ceres入门笔记
    Java 中的数据结构类 Vector 和 ArrayList
    102. Binary Tree Level Order Traversal
    104. Maximum Depth of Binary Tree
    101. Symmetric Tree
    100. Same Tree
    490. The Maze
    骑士游历问题
  • 原文地址:https://www.cnblogs.com/liea/p/11962709.html
Copyright © 2011-2022 走看看