第五章独立集与匹配_第1页
第五章独立集与匹配_第2页
第五章独立集与匹配_第3页
第五章独立集与匹配_第4页
第五章独立集与匹配_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第五章 独立集与匹配v第一节 独立集定义1 设G=是简单图无向图,SV,S,若S中任何两个顶点都不相邻,则称这个顶点集合S为图图G的独立集的独立集.若S是图G的独立集,但是任意增加一个顶点就破坏它的独立性,则称这个独立集独立集S为极大独立集为极大独立集. 独立集S称为最大最大独立集独立集,如果不存在独立集S,使 ,其中 为集合S的基数.G的最大独立集S的基数称为G的独立数的独立数,记作 (G).说明1:简单无向图G的独立集,实际是对图G的顶点进行着色的结果.把图G的顶点集V划分成若干不相交的子集, SSS 把图G的顶点集V划分成若干不相交的子集,每个子集中的各结点着同一色.上述不相交的子集的最

2、少个数即为图为图G的色数的色数.说明2:图G的极大独立集不是唯一的,且顶点数目最多的极大独立集是最大独立集.定义定义2 设G=是简单无向图,同时将G的邻接矩阵第i行与第j行, 第i列与第j列互换,称为一次平移变换一次平移变换.说明3: 平移变换不改变邻接矩阵所表示图G的各顶点之间的关系,紧紧仅仅改变了i,j的编号.也就是说,邻接矩阵的平移变换对应于图中结点的一个重新编号.反之,结点的重新编号对应于邻接矩阵的一系列平移变换.定理定理1 设G=是具有n个结点的无向简单图,A是G的邻接矩阵,且A具有如下形式:令 ,若 ,则其已确定一极大独立集S=V1,V2,Vi,其中Vt(1t i)为A下三角阵的第

3、t行.证明证明:由矩阵A可知,akj(1 ji),即结点V1,V2,Vi互不相邻.在A21中,因bj(i+1 jn),则aj1,aj2,aji中必有一 innniiiiiiiiininTaaaaaaaaaARAAAAA,2,1 , 22, 21 , 2, 12, 11 , 121)()(22222121,0),.,1(1nijabikjkj0(1,., )jbjin 元素为1,不妨设ajk=1(1 ji),即Vj与Vk相邻。由j=i+1,i+2,n的任意性得Vi+1,Vi+2,Vn中所有元素都与S=V1,V2,Vi相邻接,而S=V1,V2,Vi中任何两点不邻接。由极大独立集的定义 可知 S=V

4、1,V2,Vi即为G的一个极大独立集.定理定理2. 设A是简单无向图G=的邻接矩阵,则总可以通过若干次平移将A化为标准型,从而得到图G的一个极大独立集. 基于布尔运算的图G的所有极大独立集的求法.几个约定:已知简单无向图G=,且V=V1,V2,Vn,规定:(1)G的每个顶点Vi当作一个布尔变量;(2)Vi Vj表示包含Vi和Vj;(3) Vi Vj表示或者包含一顶点Vi;或者包含一顶点Vj;或者包含Vi和Vj两个顶点.说明:(2)和(3)中的运算有类似集合运算的性质.(见p170) 基于布尔运算的图G的所有极大独立集的求法:由于过图G的顶点Vi,Vj的边对应布尔Vi Vj,表达式 ,即中的每一

5、项Vi Vj对应G的一条边, 表示对所有的边求和.由德.摩根律,有 .设 都是含有布尔变量V1,V2,Vn的表达式,又G的极大独立集不包含任何一边,()ijijV VVV )(_,_jiEjViVVV _21_,k 的两个顶点,故表达式在任一极大独立集上取布尔值0(F);反之,使取值0的点集是独立集,即取布尔值0是独立集的的充要条件。或 取 布尔值1也是独立集的充要条件.从而分别使1, 2, k取布尔值1的点集都是极大独立集.例1.通过布尔运算,求下图G的极大独立集。12kv1v2v4v3v6v5定义定义2. 设G=是无向简单图,SV,S.若E中每条边都与S中某点关联,则称S为为G的点覆盖的点

6、覆盖.如果G中的任何异于S的点覆盖S,均有 ,则称S为G的最小点覆盖最小点覆盖.最小点覆盖S的基数 称为G的点覆盖数的点覆盖数,记作记作 (G).点覆盖S称为极小点覆盖极小点覆盖,若对任何xS,S-x都不是点覆盖.定理3. 设G=是无向简单图,SV,S,则S是G的独立集V-S是G的点覆盖.证:S是G的独立集G中每条边的两端点都不同时属于S G中每条边至少有一端点在V-S中V-S是G的点覆盖.推论推论1 S是G的极大独立集V-S是G的极小点覆盖.SS S推论推论2. (G)+(G)=V(G).证明:设S1是G的最大独立集, S2是G的最小点覆盖, 由定理3知 V(G)-S1是点覆盖,V(G)-S

7、2是独立集.因而V(G)- (G)= V(G) -S1 (G)V(G)- (G)= V(G) S2 (G)所以,(G)+(G)=V(G).定义定义2 设G=是无向简单图,LE,L.若G中每个顶点都与L中某条边关联,则称L为为G的边覆盖的边覆盖.如果G中的任何异于L的边覆盖L,均有L L ,则称L为为G的最小边覆的最小边覆盖盖.最小边覆盖L的基数 L 称为G的边覆盖数的边覆盖数,记作(G).第二节 独立集的应用定义定义1 设G1=和G2=是两个无向简单图,其中V1=a1,a2,an,V2=b1,b2,bm.图G=G1G2称为图G1和G2的乘积,若满足:(1)V=aiV1,bj V2;(2)adj

8、()= ak adj( ai) btadj(bj) ak adj( ai), btadj(bj) ,其中adj(vi)表示与vi相邻的点的集合.例1.已知G1和G2,则G1G2如下:G1G2G1G2独立集的应用举例例2. (收款台的设置问题)某大型商场为加强经营管理,对商品的零售收入实行统一收款制度.为了使顾客在任何一个货架前都能看到收款台,问收款台应设置在什么地方且至少要设置多少个收款台? 问题分析: 建立简单无向图G=,该商场两排货架之间的通道为G的边,通道交叉处为G的顶点.为使顾客在任何一个货架前都能看到收款台,从尽可能减少收款台的数目来说,收款台应设在通道的交叉处.故收款台的设置问题转

9、化为在G中找出一个最小点覆盖或G的一个最大独立集.例3 求下图G的最小点覆盖定义定义2: (图G的团) 设G=是无向简单图,TV, T. 若T中任意两个顶点都相邻,则称称T是图是图G的团的团.若T是图G的团,但任意增加一个新顶点后,它就不是团,则称T是图是图G的极大团的极大团.v1v2v5v6v3v4G团与极大独立集团与极大独立集 用团可以求图的极大独立集用团可以求图的极大独立集:一个图的团的概念在一个图的团的概念在下述意义下与独立集是下述意义下与独立集是“互补的互补的”.设设G=是简单无是简单无向图向图,其中其中V=1,2,n. 是是G的补图的补图,其中其中顶点顶点i与与j在补图中相邻在补图

10、中相邻,当且仅当当且仅当顶点顶点i与与j在在G中不相邻中不相邻.由独立集与团的定义可知由独立集与团的定义可知S是是G的极大独立集的极大独立集当且仅当当且仅当S是其补图的极大团是其补图的极大团,因此,求图,因此,求图G的极大独立集可转化的极大独立集可转化为求其补图的极大团为求其补图的极大团.请同学们看请同学们看p178的例的例2. 说明说明:一般来说一般来说,如何求出一个图如何求出一个图G的所有极大团是的所有极大团是图论中的一个难题图论中的一个难题.,GV E1456923107811第三节第三节 支配集支配集定义定义1 1. 设G=是无向简单图,SV,S,若对于xV-S,x与S里至少一个顶点相

11、邻,则称S S是图是图G G的支配集的支配集. S是图G的支配集,若S的任何真子集都不是支配集,则称S S为图为图G G的极小支的极小支配集配集. . S是图G的支配集,若不存在任何其他支配集S,使得S S,则称S S是图是图G G的最小支配集的最小支配集, S为图G的支配数,记作(G).例1.求下图G的一个最小支配集(p179).支配集的应用支配集的应用 支配集首先出现在国际象棋比赛中支配集首先出现在国际象棋比赛中. .一个一个8 8* *8 8的棋盘具的棋盘具有有8 8* *8 8配置下的配置下的6464个格子个格子. .在所给某个位置的皇后控制着在所给某个位置的皇后控制着同行、同列以及包

12、含这个格子的两条斜线上的所有格同行、同列以及包含这个格子的两条斜线上的所有格子子. .18621862年年,De Jaenisch,De Jaenisch考虑了控制整个棋盘所需要的最少考虑了控制整个棋盘所需要的最少的皇后最少个数为的皇后最少个数为5. 5.若要求任两个皇后都不相互攻击若要求任两个皇后都不相互攻击, ,即即任两个皇后都不在同一行、同一列或同一斜线上任两个皇后都不在同一行、同一列或同一斜线上, ,那么那么这种皇后的最少个数为这种皇后的最少个数为7. 7.请同学们看请同学们看p180p180的图的图5-8.5-8. 棋盘问题可以转化为求支配集的基数棋盘问题可以转化为求支配集的基数:

13、: 作简单图G,G的顶点集与棋盘上的64个格子一一对应,且两个顶点在G中相邻当且仅当当且仅当两个对应格子中的一个格子可以由位于另一个格子中的皇后控制,则支配棋盘中全部格子的皇后的最少个数为图G的支配数.关于支配集的几个性质定理定理定理1. 图G的支配集S是G的极小支配集当且仅当S中的每个顶点x满足如下条件之一:(1)存在yV(G)-S使得N(y)S=x,其中N(y)为y的邻接点集合.(2) N(x)S=.证明证明:充分性:如果S中每个顶点至少满足(1)和(2)中一个,则S-x就不是支配集,故S是G的一个极小支配集.必要性:若S是G的极小支配集,则对每个xS,S-x就不是G的支配集.故存在顶点y

14、 V(G)-(S-x),使得没有S-x中顶点与y邻接.1)如果y=x,则S中没有顶点与x邻接.所以SN(x)= .2)若yx,因为S是G的支配集且yS,故顶点y至少与S中一个顶点相邻.又y不与S-x中顶点相邻,故N(y)S=x.定理定理2. 若G是没有孤立结点的图,且S是G的极小支配集,则V(G)-S也是G的支配集.证明证明:因为G是没有孤立结点的图,且S是G的极小支配集,所以S中无孤立结点,且对于S中任何一个顶点,在V-S中有一个顶点与之相邻,所以V(G)-S也是G的支配集.推论推论1.若若G是是n阶无孤立结点的图阶无孤立结点的图,则则 (G) n/2.证明证明:不妨设S是G的一个极小支配集

15、,由定理2,V(G)-S也是G的一个支配集,从而(G)min|S|,|V(G)-S| n/2.定理定理3.若G是无孤立结点的图,则存在存在G的最小支的最小支配集配集S使得对使得对S中每个顶点中每个顶点x,存在存在V(G)-S中的顶中的顶点点y满足满足: N(y) S=x, 其中其中N(y)为为y的邻接点的邻接点集合集合.证明证明:用反证法用反证法.以以GS表示表示S的导出子图的导出子图.在在G的的全部最小支配集中全部最小支配集中,设设S是使是使GS满足满足|E(GS)| 达到最大的一个最小支配集.假设定理结论不成立,S至少包含一个不具备上述性质的顶点x,即对yV(G)-S, N(y)Sx.由定

16、理1,x是GS的孤立结点.又因为S为G的最小支配集,所以对yV(G)-S,N(y) S即与x邻接的V(G)-S中的每个顶点一定与S中的另外一个顶点邻接.由于G不含孤立结点,所以x与V(G)-S中某个顶点y邻接,故(S-x)y是G的最小支配集,且其导出子图中至少包含一条与y关联的边,要比GS中的边数多,与S的构造矛盾.定理4. 若G是n阶图,则n/1+(G)(G)n- (G).证明:设S是G的最小支配集,则定理定理5. 图G的一个顶点集S是一个独立支配集当且仅当S是一个极大独立集.证明证明:必要性必要性:因为S既是一个独立集又是一个支配集,故在S中任意增加V-S中一个顶点时,S就不是独立集,所以

17、S是一个极大独立集.充分性充分性:因为S是一个极大独立集,所以在S中任意增加V-S中一个顶点时,S中必有一顶点与之相邻,故S也是支配集.( )( ),( )( ).n(G).1(G)x SV GSN xV GSSG即从而推论推论2.图G的每个极大独立集是一个极小支配集.证明证明:设S是图G的一个极大独立集.由定理5,S是一个支配集.因为S是独立集,故S中的每个顶点不与S中其他顶点邻接.即S的每个顶点满足定理1中的性质(2),所以S是极小支配集.说明:不是每个支配集都是独立集,也不是每个最小支配集都是独立集,请看p183的图5-9. 支配集的实际应用背景:要在n座城市中建一个通信系统,需在这n个

18、城市中选其中的几个建立通讯站,为减少造价,要使通讯站数目最少,应如何选址? 问题解决办法:作图G,以城市作为图G的顶点,当两城市之间有直通讯线路时,相应的两顶点连一边,则图G的最小支配集为所求. 极小支配集的布尔计算:请看p184-185.第四节第四节 匹配匹配 匹配问题是运筹学的重要问题之一,也是图论研究的重点内容,它提供了解决“人员分配问题”和“最优分配问题”一种新的思想.定义定义1.设G=是无环图,ME(G),M,若M中任意两条边都不相邻,则称M是图是图G的一个匹配的一个匹配.若对图G的任何匹配M ,均有M |M|,矛盾.()若M不是G的最大匹配,则存在匹配M,使得|M|M|,作H=MM

19、,由定理1,H的任意边导出子图Q是下列两种情况之一:(1)交错偶圈:Q中每个结点度数为2.(2)交错路.Q中除端点外,其余结点度数均为2. 因为|M|M|,故|E(H)M|E(H)M|,因而H中必有一条起始于M且终止于M的连通分支P,故P是M可增广路,矛盾,所以命题正确. 定义定义:NG(S):设设S是图是图G的任意顶点子集的任意顶点子集,G中与中与S的顶点邻接的的顶点邻接的所有顶点的集合所有顶点的集合,称为称为S的邻集的邻集,记做记做NG(S).定理定理3(Hall定理,1935)设G是有二部划分(V1,V2)的二分图,则G含有饱和V1的每个顶点的匹配M的充要条件充要条件是对SV1,有N(S

20、)S.证明证明:()对SV1,匹配M将S中的每个顶点与N(S)中的顶点配对,所以N(S)S. ()当对SV1,有N(S)S时.可按下述方法作出饱和V1的匹配M. 先作一初始匹配M1,若已经饱和V1,定理得证.否则,V1中至少有一非饱和点x1,检查以x1为起点,终点在V2中的交错路.考虑下面两种情形:(1)不存在任何一条交错路可以到达V2的非饱和点.此时从X1开始的一切交错路的终点还是在V1中.故存在AV1,使得N(A)M1,因此,重复该过程就可以找到饱和V1的全部顶点的匹配M.推论推论1 具具有二部划分有二部划分(V1,V2)的二分图的二分图G有完美匹配有完美匹配 V1 = V2 ,且且对对

21、S V1(或或V2),有有 N(S)S .证明:必要性必要性.若二分图G有完美匹配,由定理3有V2=N(V1)V1,即V2V1,同理V1V2,因此V1=V2.充分性充分性:因为对SV1,有N(S)S,由定理1,G中存在饱和V1的每个顶点匹配M,又G是二分图,故匹配M的每一边的两个端点分别属于V1和V2,据V1=V2,即知M饱和V2,所以M为完美匹配.推论推论2. 设设G是是k(0)正则二分图正则二分图,则则G有完美匹配有完美匹配.证明:因为G是二部划分(V1,V2)的k正则二分图,故 kV1=E(G)=kV2 又k0,所以V1=V2.任取SV1,并用E1和E2分别表示G中与S和N(S)中关联的

22、边集,则E1E2,则 kN(S)=E2E1=kS即N(S)S, SV1, 由定理3可知,G有饱和V1的匹配M,再据V1=V2和推论1即知M是完美匹配.推论推论3. 设设G是二部划分是二部划分(V1,V2)的简单二分图的简单二分图,且且 V1 = V2 =n,若若 (G) n/2,则则G有完美匹配有完美匹配.证明:SV1,(1)若N(S)|N(S) (G)n/2,且V2- N(S) ,令uV2- N(S) ,则N(u) V1- S,即 (G) deg(u)= N(u) |V1|-| S| n-n/2=n/2这与(G)n/2矛盾,所以G中有完美匹配.定理定理4. G有完美匹配O(G-S)S,SV(

23、G),其中O(G-S)是G-S的奇数阶连通分支数目.(不证)例1.有n张纸牌,每张纸牌的正反两面都写上1,2,n的某一个数.证明:如果每个数字恰好出现两次,则这些纸牌一定可以这样摊开,使朝上的面中1,2,n都出现.证明证明:作一个二分图G=,其中V1=1,2,n,V2=y1,y2,yn表示这n张纸牌.i与yi之间连接的边数等于数i在纸牌yj中出现的次数,这样得到的图G是一个2-正则二分图,因此图G中有完美匹配,设为M=1yi1,2yi2,nyin 则只要把纸牌yi1中的1朝上,yi2中的2朝上,yin的n朝上,这样摊开,这样摊开的纸牌就能使上面中1,2,n都出现.例例2.某工厂生产由6种不同颜

24、色的纱布织成的双色布,由该厂所生产的双色布中,每一种颜色至少和其他三种颜色搭配.证明可以挑选出三种不同的双色布,它们含有所有的6种颜色.证明证明:构造图G=,其中V=v1,v2,v3,v4,v5,v6表示6种颜色,工厂生产出一种颜色vi与vj搭配而成的双色布边vi,vjE(G).由题意知,G为简单图,且每个结点的度数至少为3,下证G中含有一个完美匹配. 今设v1,v2E(G),由于d(v3) 3,所以存在一个不同于v1和v2的顶点vi(4i6),使v3,viE(G),不妨设vi=4,即v3,v4E(G). 如果边v5,v6E(G),由于d(v5)3,v1,v2,v3,v4中至少有3个顶点与v5

25、相邻,即v5与边v1,v2,v3,v4中的每一边的某一个端点相邻,不妨设v1,v5E(G)和v3,v5E(G). 对于顶点v6,同样与v1,v2,v3,v4中至少3个顶点相邻,即在v2和v4中至少有一个顶点与v6相邻.如果v2,v6E(G),则边v1,v5,v3,v4,v2,v6是G的一个完美匹配;如果v4,v6E(G),则v1,v5,v3,v5,v4,v6是G的一个完美匹配. 综上所述,G总存在完美匹配,完美匹配中的三条边所对应的三种双色布即为所求.第五节 最大匹配的生成算法-匈牙利算法定义定义1. 根在x的M交错子图:设M是图G的匹配,x是G中非M饱和点。G中由起点为x的M交错路所能连接的

26、顶点集所导出的G的导出子图称为根在称为根在x的的M交错子图交错子图.定理定理1. 设M是具有二部划分(V1,V2)的二分图G的匹配,xV1是非M饱和点,H是G中根在x的M交错子图的顶点集S=HV1,T=HV2,则:(1)TNG(S);(2)下述三条等价:(a)G中不存在以x为端点的M可增广路;(b)x是H中唯一的非M饱和点;(c) T=NG(S),且T=S-1.证明证明:(1)yT,则G中存在以x和y为端点的M交错路P.令uNp(y),由于G是二分图且yTV2,所以uHV1=S,即yNG(S),因而T NG(S),.(2)(a)(b)设y是H中异于x的非M饱和点,则G中存在以x和y为端点的M交

27、错路P。P是G中以x为端点的M可增广路,与(a)矛盾.(b)(c)任取yNG(S)V2,则存在uS=H V1和边eE(G)使G(e)=u,y.若u=x,显然有yT.若ux,则G中存在以x和u为端点的交错路P.因为x是唯一非M饱和点,所以u为M饱和点.若P不含y,则eM.由H的定义知,y HV2=T,所以NG(S)T,再由(1),T= NG(S).显然显然y T(交错路中不可能含有两个非交错路中不可能含有两个非M饱和点饱和点),与与T=NG(S)矛盾矛盾.若若y S,则显然有则显然有T=S-2.矛盾矛盾. 所以所以G中不存在以中不存在以x为端点的为端点的M可增广路可增广路.(3) (c)(a)反

28、设G中存在以x为端点的M可增广路,则G中至少还存在一个异于x的非M饱和点y,若yS,则yT NG(S),匈牙利算法基本思想基本思想:设G是具有二部划分(V1,V2)的二分图,从图G的任意匹配M开始.若M饱和V1,则M是G的匹配.若M不能饱和V1,则在V1中选择一个非M饱和点x,若G中存在以x为起点的M可增广路P,则M=MP就是比M更大的匹配,利用M代替M,并重复这个过程.若G中不存在以x为起点的M可增广路,则令H是根在x的M交错子图的顶点集,并令S=HV1,T=HV2, 由定理1,T=NG(S),且G中不存在以x为起点的M可增广路,此时称x为检验过的非M饱和点.对V1中其它未检验过的非M饱和点

29、重复该过程,直到V1中的所有非M饱和点全部检验过为止.当整个过程结束时,由于G中不存在M可增广路,从而M为G的最大匹配.匈牙利算法步骤匈牙利算法步骤:设设G是具有二部划分是具有二部划分(V1,V2)的二分图的二分图.(1)任给初始匹配任给初始匹配M;(2)若若M饱和饱和V1则结束则结束.否则转否则转(3);(3)在在V1中找一非中找一非M饱和点饱和点x,置置S=x,T=;(4)若若N(S)=T,则停止则停止,否则任选一点否则任选一点y N(S)-T;(5)若若y为为M饱和点转饱和点转(6),否则作求一条从否则作求一条从x到到y的的M可增可增广路广路P,置置M=M P,转转(2)(6)由于由于y

30、是是M饱和点饱和点,故故M中有一边中有一边y,u,置置S=S u,T=T y,转转(4).例1 如图G所示,V1=x1,x2,x3,x4,x5,V2=y1,y2,y3,y4,y5,试求图G的最大匹配。x1, x2 x3 x4 x5y1 y2 y3 y4 y5图图ax1 x2 x3 x4 x5y1 y2 y3 y4 y5图图b解:任取初始匹配M=x2y2,x3y3,x5y5,如图(a)中虚线所示.解题过程如下表:MxSTN(S)y N(S)-Ty,u MPx2y2,x3y3,x5y5x1x1y2,y3y2饱和饱和y2,x2x1,x2y2y1,y2,y3,y4,y5y1非饱和非饱和(x1y2x2y1)x1y2,x2y1,x3y3 x5y5x4x4y2,x3y2饱和饱和y2,x1x4,x1y2y2,y3y3饱和饱和y3,x3x4,x1,x3y2,y3y2,y3N(S)=T,停止停止 因此,M=x1y2,x2y1,x3y3,x5y5即为图G的最大匹配,如图(b)虚线所

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论