实施Papadimitriou& Sons描述的匈牙利方法。 Steiglitz

时间:2010-10-28 01:12:34

标签: algorithm optimization combinatorics

如果你已经实现了组合优化:算法和复杂性的图11-2中给出的匈牙利方法完全,你是否成功而没有改变伪代码在任何[重要]方式?具体而言,我指的是更正后的1998 Dover版本,该版本是关于Steiglitz网站上2000年10月的勘误表文件的最新版本。

一个可接受的答案是“我实施了它,并且它完美地运行”。或者,“我已经实现了它,但它在某种程度上需要这样的等等。”在前一种情况下,我知道要继续对我的代码进行已经广泛的深入研究和调试。 (不管怎么说,我打算这样做。)在后一种情况下,我会有一些洞察力可以使我自己的实现正常工作。

如果您已实施匈牙利方法,但未使用 CO:AaC 或未使用C而没有第三方库,那么您仍然非常欢迎提供答案。事实上,如果你是一个超级天才谁可以查看图11-2并指出P& S的遗漏或委托错误,我想听听你的意见,我打赌他们也会这样做: - )

修改: Here是关于Google图书的书。有关匈牙利方法,请参阅第251-252页。有关augment()过程的伪代码,请参见第224页。有关数据结构的说明,请参阅周围的页面。理想情况下,您拥有实体书籍,因为Google图书版本可以预测是部分版本。

更新

在对我的实现进行更全面的测试并对本书的伪代码和文本进行更全面的检查之后,我认为我已经解决了伪代码本身的一些问题。有一些新的勘误表。我一直与Steiglitz教授保持联系,Steiglitz在他的普林斯顿主页上维护着勘误表文件,他说当他在 12月学期结束时有更多时间时,他会审查我的笔记。 >一月。 (对不起那些在年底前期待解决的人。对于普林斯顿来说,我假设12月是学期末,但实际上是1月份。)

更新

教授。 Steiglitz已将我的code-& -documentation包发布到他的普林斯顿网站空间。请参阅下面的答案以获取链接。

1 个答案:

答案 0 :(得分:2)

我打开这个问题已经有一段时间了,我没有收到Steiglitz教授的回复(这完全可以理解,因为我确信他几乎每周7天,每天24小时都很忙,如果没有工作的话那么比起验证一些陌生人所谓的错误修正:-))更快乐的事情,所以我将继续发布我所谓的勘误表,如果考虑到,允许P& S图11-2伪代码是实施以产生正确的输出。

[...]

最后,对于任何有兴趣的人,我刚刚在share1t.com上发布了我自己的实现的代码和文档包。 (公平警告:它只会在没有下载的情况下持续15天。之后,它们会删除提交的文件。)此软件包包含一个更易读的PDF版本(可读且正确排版pdflatex)我在上面给出的勘误表附录。

而且......我想这就是全部。我希望这很有用。

<强>更新

教授。 Steiglitz在his Publications webpage发布了我的代码和文档包。