计算图中的最大对集的匈牙利方法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
专业资料 WORD完美格式 下载可编辑 计算图中的最大对集的匈牙利方法 背景知识介绍—在一个网络中往往要求计算其中的最大对集。是由匈牙利人Egervary于1931年发现,后被另外一个匈牙利人Edmonds所推广(到一般图中的“开花算法”) 基本方法—利用反圈法 第一节 二部图中最大对集的有效算法 设为一个二部图,是中一个对集。 型节点----位于的节点; 型节点---位于中的节点; -边----位于中的边; 注意:一个增广路的长度为奇数,所以这样的路的两个端点必须是同型节点。 反圈法基本原则--- (1)初始时,令; (2)在中选边时,必须按照以下原则: (a)如果时,则选取以为端点的非边(即,在型节点处只选非边); (b)如果 ,则选取以为端点的边(即,在型节点处只选边) (3)若在某一步,出现下述情况之一时算法要终止: 情况1。中有非饱和的型节点(此时得到一条关于的增广路); 情况2.。情况1不出现,且中无边可选(此时中不存在关于的增广路)。 定理1.当匈牙利算法结束时,得到一个最大对集 解答:下面我们来证明这个方法(算法)的正确性。 如果情况1发生,根据我们算法特点,每一步上都是森林,其中每一个树都是以中的一点为根的。根据的定义,每一个树以一个非饱和的型节点为根。按照选边原则(2)可以看出:每一个树上,根与任意节点之间的唯一的路是交错路、。所以,当某个非饱和的型节点属于时,这个树上联接根节点与它的路是一个长度为奇数的增广路。 现在假定情况2出现。我们用表示此时的(一定要记住:中的每一个节点都位于一个树中)。令记 其几何意义如图所示:(注意:这是其中一种结构,也是最重要的结构,即,假定对集中所有边都被包含在以为根的树中)。 结论1.所有非饱和的型节点都在中(这是根据的定义得到的。表明:每一个这样的非饱和型节点都是一个树的根,这个树有可能退化为一个节点!); 结论2。所有的非饱和的型节点都在中(否则,选边原则(1)可得到增广路); 结论3.(前提是:连通) 事实上,如果有使得,则因为,知道如果则是可选边(事实上此时有增广路联接与中点),与情况2的定义相违背;如果,则,必然有使得,与是对集相违背。 结论4. (这个显然成立) 注意:上述图形仍有地方要知道:中含有未被饱和的非根节点(因此,) 注意:上述的有些东西可能描述的不太精确。我们下面详细说明。 记住当前算法执行到情况2,无法选边而且情况1不发生。可选边时有两种选法:沿着对集中的边向下走,沿着非中边向上走。 (1):将对集分成两类:和,其中是以中的节点为根的树中所能包含的边形成的子对集,而则是无法被这些树所含有的子对集(可以为空集); (2)对集所能饱和的的节点集合为,没有被饱和的节点集合为 (3); (4)(这是由于无法选边决定的,否则,有些子树可以长大); (5)(理由同上)。 这样, 结论1.所有非饱和的型节点都在中(这是根据的定义得到的。表明:每一个这样的非饱和型节点都是一个树的根,这个树有可能退化为一个节点!); 结论2。所有的非饱和的型节点都在中(否则,选边原则(1)可得到增广路); 结论3. ; 结论4. 结论5.。(这是由图的连通性决定的) 结论6. ; 这样一来,若中存在增广路,那么它的一个端点在中,另外一个端点在中。显然此时可以选边使得对集增大。矛盾。因此,当情况2发生时当前的对集是最大的。 注意:从上述分析中可知,我们的讨论可以假定。分析中得到的结构(结论1-6)非常有用,我们可以直接利用它们来计算。 定理2.任何一个使得的二部图中一定有一个最大对集饱和所有最大次节点。 点评:如果这个结果成立,那么这个图一定是第一类的(即,边色数。) 解答:设是这样一个最大对集,它所饱和的最大次节点最多。我们将要证明:为所求。若不然,则存在一个最大次节点,没有被所饱和。不妨设可以取使得是唯一一个未被饱和的最大次节点。对于这个执行匈牙利算法。可知情况2一定出现(即,无边可选的结构一定出现)。 注意到上述结论1-结论6暗示:。此时一定有一个节点不是最大次的。不然,则有 , 这与相悖(这里利用了性质:中非根节点的领域全部被包含在)。设不是最大次节点,记为执行匈牙利算法终止时得到的交错树里面唯一的-路。意见它的长度为偶数。令,则也是最大对集,它饱和最大节点数目比多(事实上,饱和了,但是没有饱和。这正是我们需要的;同时,前面中其他节点还是被所饱和)。这与定义相违背。 点评:关于这个结果有许多证明。我们将要提供另外一个富有技巧性的证明(但是说真的,我不喜欢这种过于简短的证明,因为它们往往掩盖了很多的事物真相!)。 例3. 如果二部图G中节点次数的最大值是,那么可以将它的边进行着色,每一条边染这中颜色中的一种,使得同一

文档评论(0)

xfnzn + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档