|
3.¹q¸£±a¨Óªº½ÄÀ»¡G¦I¤ú§Qºâªk |
¦b1960¦~¥Nªº¼ö¼éùØ¡A¥t¥~¤@Ó²§x¬ð°_ªº¬O¹q¸£¡C
¹q¸£ªº¿³°_§¹¦¨¤HÃþ§Ö³tpºâªº¬ü¹Ú¡A³\¦h¥H«e¤H̤£´±°ø±æªº°ÝÃD¡A
¦A«×³Q®³¥X¨ÓɧU¹q¸£µL«è¨¥ªº§Ö³tpºâ¶¶§Q§¹¦¨¡C¦ý¬O¹q¸£ªº§Ö³t¤]¦³¨ä¤@©wªº·¥¡A
©ó¬O¤@ªù·s¿³ªº¾Ç°Ý-ºâªk(Algorithm)-¼sªxªº¬ã¨s¡C
Á|¨Ò¨Ó»¡¡A¯¸¦b²z½×ªºÆ[ÂI¡A¦ó¤ó©w²zµLºÃªº¬O¤@Ó·¥º}«Gªº©w²z¡A
¦ý±q¹ê¥Îªº¥ß³õ¨Ó¬Ý¡A¥¦¦ü¥G²@µLµo´§ªº¾l¦a¡CÀH«Kµ¹nÓ¶°¦X¡A
Y·Q¥Î¦ó¤ó©w²zÅçÃÒ¬O§_¦s¦b¤@Ó¬Û²§¥Nªí¨t¡A
´N¥²¶·§â 2n-1 ºØ¤£¦Pªº k Ó¶°¦X®³¥X¨Ó¡A
¬Ý¥¦ÌÁp¶°¬O§_¦s¦b³Ì¤ÖkÓ¤¸¯À¡C¤@¤è±¡A·ín¤j®É¡A2n ¤j±o¤£¥i«äij¡A
¦AªÌ§Y¨ÏÅçÃÒ¥Xªºµª®×¬OªÖ©wªº¡A¦ó¤ó©w²z¤]¨S§i¶D§Ų́º¤@²Õ¬O¬Û²§¥Nªí¨t¡A
¬°¦¹¡A§ÚÌ»Ýn¤@Ó¦³®Äªººâªk¡C
§â¬Û²§¥Nªí¨tÂà´«¦¨¤G¤À¹Ïºô (bipartite graph) ¤W¨D¹ï¶° (matching) ªº°ÝÃD¬O¤@ºØ¤è«Kªº»y¨¥¡C
¤@¯ë¦Ó¨¥¡A¤@ӹϺô (graph) ¥]§t¦³Ó³»ÂI (vertices) ¥H¤Î¤@¨ÇÁp±µ¨âÓ³»ÂIªºÃä (edges)¡A¦p¹Ï1 ªº
A1,A2,A3,A4,a,b,c,d ¬O³»ÂI¡A
(A1,a),(A1,b), ¬OÃä¡A¦ý¹Ï¤W (A1,c) ©M (A3,b)
¨âÃä¥t¥~¬Û¥æªºÂI¨Ã¤£ºâ°µ³»ÂI¡A´«¨¥¤§¡AÁp±µ¬Y¨â³»ÂIªºÃä¨ä¹ê¥uªí¥Ü³o¨âÂI¬O
¡u¦³Ãö«Y¡v©Î¡u¬Û¾F¡v¦Ó¤w¡A¦Ü©ó¥Îª½½u©Î¦±½uªí¥Ü¡A¹êµL°Ï§O¡C
¹Ï1
|
¹Ï1ªº¹Ïºô´N¬O©Ò¿×ªº¤G¤À¹Ïºô¡A¦]¬°³»ÂI¥i¥H¤À¬°¨â³¡¤À¡A¨ä¤¤¥ô¤@³¡¤À¤ºªº¥ô¤G³»ÂI¤£¬Û¾F¡C³oÓ¤G¤À¹Ïºô¨Æ¹ê¤W¤]´N¬O¨Ò1ªº¶°±Úªº¹Ïºôªí¥Üªk¡F
©Ò¥H (A1,a) ¬O¤@±øÃä¡A
©Ò¥H (A2,b) ¤£¬O¤@±øÃä¡C
(A1,A2,A3,A4)¬O¤@²Õ¬Û²§¥Nªí(a,b,c,d),¦b¹Ïºô¤W¬Û·í©ó(A1,a),
(A2,c),(A3,b),(A4,d)¥|Ãä,¤À§Oªí¥Ü,,
,;³o¥|Ã䤤ªº¥ô¨âÃä¨S¦³¦@¦P³»ÂI,
¦]¬°§Ú̧䤣¦P¶°¦Xªº¬Û²§¥Nªí,¹Ï2¤¤²Ê½uªí¥Ü³o¥|Ãä¡C
¹³³oºØ¨â¨â¤£§t¦@¦P³»ÂIªºÃä©Ò²Õ¦¨ªº¶°¦XºÙ¬°¹ï¶°(matching)¡C
©Ò¥H¨D ªº¤@²Õ¬Û²§¥Nªí,
¬Û·í©ó¦b¥¦©Ò¹ïÀ³ªº¤G¤À¹Ïºô¤¤§ä¤@Ó¦³nÃ䪺¹ï¶°¡C
¹Ï2
|
¥Î¤G¤À¹Ïºôªí¥Ü¶°¦X±Ú
ªº¥t¤@¦n³B¬O¥i¥H¬Ý¥X¶°¦XAi©M¤¸¯Àajªº¹ïºÙ©Ê,
¦pªG¹ï¨C¤@¤¸¯Àaj,©w¸q¶°¦X
,
(A1,,An) ©M
(B1,,Bm) ©Ò¹ïÀ³¥X¨Óªº¤G¤À¹Ïºô¹ê»Ú¤W¬O¦P¤@¹Ïºô(¥i¯à³»ÂI¥ª¥k¬Û¤Ï,¦WºÙ¦U²§)¡C¦b±B«Ã°ÝÃD¤¤,³oªí¥Ü¨k¤k¥µ¥¡C
ÀH«Kµ¹¤@¶°¦X±Ú (A1,,An) ¤£¤@©w¦s¦b¬Û²§¥Nªí¨t,
©Ò¥H¦b¥¦ªº¤G¤À¹Ïºô¤¤,¤]¤£¨£±o¯à§ä¨ì¤@ÓnÃ䪺¹ï¶°¡C¤@¯ë¨Ó»¡,
§Ú̦³¿³½ìªº¬O,ÀH«Kµ¹¤@Ó¤G¤À¹Ïºô,¨D¤@Ө㦳³Ì¦hÃ䪺¹ï¶°,
¦³¦Wªº¦I¤ú§Q¤èªk(Hungarian method)´N¬O¸Ñ¨M³o°ÝÃDªº¦nºâªk¡C
µ¹©w¤@Ó¤G¤À¹ÏºôG=(X,Y,E),¨ä¤¤X©MY¦X¦¨©Ò¦³³»ÂI,E¬OÃ䶰,
¥ô¤@Ã䪺¤@ºÝÂI¦bX¤º,¥t¤@ºÝÂI¦bY¤º¡C¥tµ¹©wG¤¤ªº¤@ӹﶰM,
¦p¹Ï3(a)¬O¤@Ó¨Ò¤l,²Ê½u¥Nªí¹ï¶°M¡C
¹Ï3(a)
|
¹Ï3(b)
|
G ªº¤@±øM-¥iÂX±i¸ô®| (M-augmenting path) ¬O§t¦³ 2n+1 Ó³»ÂIªº¤@±ø¸ô®|
(v0,v1,v2,,
v2n,v2n+1)¡A¨ä¤¤
,
,
¦ý¬O
,
¨Ã¥B v0 ©M v2n+1 ¬OM-¼ÉÅS³»ÂI(M-exposed vertices)¡A
¤]´N¬O v0 ©M v2n+1 ¤£¬O M ¤º¥ô¦óÃ䪺ºÝÂI¡C
¨Ò¦p¹Ï3(a)¤¤
(x3,y1,x1,y3) ¬O¤@±ø M-¥iÂX±i¸ô®|¡C
§ä¨ì¤@±øM-¥iÂX±i¸ô®| P ªº¦n³B¬O¡A¦pªG±NM¦bPªºÃä¥h±¼¡A´«¤WP
¤¤¤£¦bMªºÃä¡A±N³y¦¨¤@Ó·s¹ï¶°M*¡A¨äÃä¼Æ¤ñì¨ÓMªºÃä¼Æ¼W¥[1¡C
¹Ï3(b)´N¬O¥Î¤WzM-¥iÂX±i¸ô®|°µ¥X¨Ó¬°M*¡C
- ¨©º¸»ô©w²z(Berge Theorem)¡G
¥ô¤@¹Ïºô¡]¤£¤@©w¬O¤G¤À¹Ïºô¡^¤¤ªº¹ï¶°M¬O³Ì¤j¹ï¶°ªº¥R¤À±ø¥ó¬O¤£¦s¦b
M-¥iÂX±i¸ô®|¡C
¦I¤ú§Q¤èªk²³æªº»¡´N¬O±q¤G¤À¹ÏºôG=(X,Y,E)ªº¥ô·N¹ï¶°M(¨Ò¦pªÅ¶°¦X)
¶}©l,¦³¨t²Îªº´M§äM-¥iÂX±i¸ô®|¡AY§ä¨ì´N±o¨ì¤@Ó§ó¤jªº¹ï¶°¡A
¦AÄ~Äò¤@ª½¨ì¤£¦s¦bM-¥iÂX±i¸ô®|¬°¤î¡C
´M§äM-¥iÂX±i¸ô®|ªº¤èªk¦p¤Uz¡C
- (¥Ò)
;¦C¥X©Ò¦³M-¼ÉÅS³»ÂI·í§@²Äi¼h¡C
- (¤A)
·íi¬O°¸¼Æ®É:¨Ì¦¸¦C¥X©M²Äi¼h³»ÂI¬Û¾Fªº³»ÂI·í§@²Äi+1¼h,
¦ý³Q¦C¥X¹Lªº³»ÂI¤£¦A«½Æ;Y²Äi+1¼h¨S¦³³»ÂI«h°±¤î,
ªí¥Ü¨S¦³M-¥iÂX±i¸ô®|¡C·íi¬O©_¼Æ®É:
Y¦³¬YÓ²Äi¼hªº³»ÂI¬OM-¼ÉÅS³»ÂI,
ªí¥Ü§ä¨ì¤@±øM-¥iÂX±i¸ô®|;
§_«h±N²Äi¼h¨C¤@³»ÂI©ÒÁp±µªº¤@±øMÃä§ä¥X¨Ó,
¥t¤@ºÝÂI·í§@²Äi+1¼h³»ÂI¡C
- (¤þ)
;¦^¨ì(¤A)«°µ¡C
¥H¹Ï3(a)¬°¨Ò,¥i¥H±o¨ì¤U¹Ï;¨ä¤¤§Ú̽ᤩ°¸(©_)¼Æ¼hªº³»ÂI¥H¥¿(t)¸¹,
³o¬O¬°¤F¥H«á»¡©ú¤è«K¡C
¹Ï4
|
¦]¬°y3(t¸¹)¬OM-¼ÉÅS³»ÂI,©Ò¥H§ä¤@±øM-¥iÂX±i¸ô®|,
´N¬O
(y3,x1,y1,x3),³o¬O¥Ñy3˪ð¦^¥h§ä¨ìªº¡C
¥Ñ³oÓM-¥iÂX±i¸ô®|±o¨ì¤@Ó§ó¤jªº¹ï¶°,¦p¹Ï3(b)©Ò¥Ü,
¦A°µ¤@¦¸±o¨ì¤U¹Ï,ªí¥Ü¤£¦s¦bM-¥iÂX±i¸ô®|,©Ò¥H¤w¸g§ä¨ì³Ì¤j¹ï¶°¡C
¹Ï5
|
|
|
|