运筹学指派问题的匈牙利法实验报告.pdf

运筹学指派问题的匈牙利法实验报告.pdf

ID:57593309

大小:565.17 KB

页数:16页

时间:2020-08-28

运筹学指派问题的匈牙利法实验报告.pdf_第1页
运筹学指派问题的匈牙利法实验报告.pdf_第2页
运筹学指派问题的匈牙利法实验报告.pdf_第3页
运筹学指派问题的匈牙利法实验报告.pdf_第4页
运筹学指派问题的匈牙利法实验报告.pdf_第5页
资源描述:

《运筹学指派问题的匈牙利法实验报告.pdf》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、精品文档运筹学课程设计报告专业:班级:学号:姓名:2012年6月20日1欢迎下载。精品文档目录一、题目。二、算法思想。三、算法步骤。四、算法源程序。五、算例和结果。六、结论与总结。2欢迎下载。精品文档一、题目:匈牙利法求解指派问题。二、算法思想。匈牙利解法的指派问题最优解的以下性质:设指派问题的系数矩阵为C=c,若将C的一行(或列)各元素分别减ijnn去一个常数k(如该行或列的最小元素),则得到一个新的矩阵C’=c'。那ijnn么,以C’位系数矩阵的指派问题和以C位系数矩阵的原指派问题有相同最优解。由于系数矩阵的这种变化不影响

2、约束方程组,只是使目标函数值减少了常数k,所以,最优解并不改变。必须指出,虽然不比要求指派问题系数矩阵中无负元素,但在匈牙利法求解指派问题时,为了从以变换后的系数矩阵中判别能否得到最优指派方案,要求此时的系数矩阵中无负元素。因为只有这样,才能从总费用为零这一特征判定此时的指派方案为最优指派方案。三、算法步骤。(1)变换系数矩阵,使各行和各列皆出现零元素。各行及各列分别减去本行及本列最小元素,这样可保证每行及每列中都有零元素,同时,也避免了出现负元素。(2)做能覆盖所有零元素的最少数目的直线集合。3欢迎下载。精品文档因此,若直线数等于n,则

3、以可得出最优解。否则,转第(3)步。对于系数矩阵非负的指派问题来说,总费用为零的指派方案一定是最优指派方案。在第(1)步的基础上,若能找到n个不同行、不同列的零元素,则对应的指派方案总费用为零,从而是最优的。当同一行(或列)上有几个零元素时,如选择其一,则其与的零元素就不能再被选择,从而成为多余的。因此,重要的是零元素能恰当地分布在不同行和不同列上,而并在与它们的多少。但第(1)步并不能保证这一要求。若覆盖所有零元素的最少数目的直线集合中的直线数目是n,则表明能做到这一点。此时,可以从零元素的最少的行或列开始圈“0”,每圈一个“0”,同时

4、把位于同行合同列的其他零元素划去(标记为),如此逐步进行,最终可得n个位于不同行、不同列的零元素,他们就对应了最优解;若覆盖所有零元素的最少数目的直线集合中的元素个数少于n,则表明无法实现这一点。需要对零元素的分布做适当调整,这就是第(3)步。(3)变换系数矩阵,是未被直线覆盖的元素中出现零元素。回到第(2)步。在未被直线覆盖的元素中总有一个最小元素。对未被直线覆盖的元素所在的行(或列)中各元素都减去这一最小元素,这样,在未被直线覆盖的元素中势必会出现零元素,但同时却又是以被直线覆盖的元素中出现负元素。为了消除负元素,只要对它们所在的列(

5、或行)中个元素都加上这一最小元素(可以看作减去这一最小元素的相反数)即可。四、算法源程序。4欢迎下载。精品文档#include#include#definem5intinput(intM[m][m]){inti,j;for(i=0;i>M[i][j];}cout<<"系数矩阵为:"<

6、

7、][j]>n;if(n==0)cout<<

8、"分别输入要变换的行及该行未覆盖元素中最小元素:"<>a>>b;for(j=0;j<

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

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

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