求解指派问题的匈牙利算法.doc

求解指派问题的匈牙利算法.doc

ID:55710595

大小:61.50 KB

页数:2页

时间:2020-05-26

求解指派问题的匈牙利算法.doc_第1页
求解指派问题的匈牙利算法.doc_第2页
资源描述:

《求解指派问题的匈牙利算法.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、3.2求解指派问题的匈牙利算法由于指派问题的特殊性,又存在着由匈牙利数学家D.Konig提出的更为简便的解法—匈牙利算法。算法主要依据以下事实:如果系数矩阵一行(或一列)中每一元素都加上或减去同一个数,得到一个新矩阵 ,则以或为系数矩阵的指派问题具有相同的最优指派。利用上述性质,可将原系数阵C变换为含零元素较多的新系数阵B,而最优解不变。若能在B中找出n个位于不同行不同列的零元素,令解矩阵中相应位置的元素取值为1,其它元素取值为零,则所得该解是以B为系数阵的指派问题的最优解,从而也是原问题的最优解。由C到B的转

2、换可通过先让矩阵C的每行元素均减去其所在行的最小元素得矩阵D,D的每列元素再减去其所在列的最小元素得以实现。下面通过一例子来说明该算法。例7求解指派问题,其系数矩阵为解将第一行元素减去此行中的最小元素15,同样,第二行元素减去17,第三行元素减去17,最后一行的元素减去16,得再将第3列元素各减去1,得以为系数矩阵的指派问题有最优指派由等价性,它也是例7的最优指派。有时问题会稍复杂一些。例8求解系数矩阵的指派问题解:先作等价变换如下容易看出,从变换后的矩阵中只能选出四个位于不同行不同列的零元素,但,最优指派还无

3、法看出。此时等价变换还可进行下去。步骤如下:(1)对未选出0元素的行打;(2)对行中0元素所在列打;(3)对列中选中的0元素所在行打;重复(2)、(3)直到无法再打为止。可以证明,若用直线划没有打的行与打的列,就得到了能够覆盖住矩阵中所有零元素的最少条数的直线集合,找出未覆盖的元素中的最小者,令行元素减去此数,列元素加上此数,则原先选中的0元素不变,而未覆盖元素中至少有一个已转变为0,且新矩阵的指派问题与原问题也等价。上述过程可反复采用,直到能选取出足够的0元素为止。例如,对例5变换后的矩阵再变换,第三行、第五

4、行元素减去2,第一列元素加上2,得现在已可看出,最优指派为。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。