Danh mục

Bài giảng Toán rời rạc (Phần II: Lý thuyết đồ thị): Bài toán ghép cặp - Nguyễn Đức Nghĩa

Số trang: 43      Loại file: ppt      Dung lượng: 368.00 KB      Lượt xem: 18      Lượt tải: 0    
tailieu_vip

Xem trước 5 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Chương này trình bày về Bài toán ghép cặp (Graph Matching) với những nội dung chính sau: Bài toán ghép cặp trên đồ thị, bài toán cặp ghép cực đại trên đồ thị hai phía, qui về bài toán luồng cực đại, đường tăng cặp ghép, thuật toán tìm cặp ghép cực đại,... Mời các bạn cùng tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Toán rời rạc (Phần II: Lý thuyết đồ thị): Bài toán ghép cặp - Nguyễn Đức Nghĩa Bài toán ghép cặp   Graph Matching Graph Matching 1 Bài toán ghép cặp trên đồ thị Gi¶ sö G=(V,E) lµ ®å thÞ v« h­íng, trong ®ã mçi c¹nh (v,w) ®­îc g¸n víi mét sè thùc c(v,w) gäi lµ träng sè cña nã. §Þnh ng hÜa. CÆ p ghÐp M trªn ®å thÞ G lµ tËp c¸c  c¹nh cña ®å thÞ trong ®ã kh«ng cã hai c¹nh nµo cã  ®Ønh chung.   S è  c¹nh trong M ­ kÝc h th­íc ,   Tæ ng träng s è  cña c¸c c¹nh trong M ­ träng  l­îng  cña cÆ p  ghÐp.   CÆ p ghÐp víi kÝ ch th­íc lín nhÊt ®­îc gäi lµ c Æp  g hÐp   c ùc  ®¹i.   CÆ p ghÐp víi träng l­îng lín nhÊt ®­îc gäi lµ c Æp  g hÐp   lín nhÊt.   CÆ p ghÐp ®­îc gäi lµ ®Çy  ®ñ (ho µn h¶o ) nÕu m çi  Graph Matching ®Ønh cña ®å thÞ lµ ®Çu m 2 é t c¹nh trong  ót cña Ý t nhÊt m Hai bài toán Bµi to ¸n c Æp g hÐp c ùc  ®¹i: T×m  cÆ p  ghÐp víi kÝ ch th­íc lín nhÊt trong ®å thÞ  G. Bµi to ¸n c Æp g hÐp lín nhÊt: T×m  cÆ p  ghÐp víi träng l­îng lín nhÊt trong ®å thÞ  G.  Ta h¹n chÕ xÐt c¸c bµi to¸n ®Æ t ra trªn  ®å thÞ hai phÝ a G = (X   Y , E). Graph Matching 3 Ví dụ Cặp ghép cực đại                    Cặp ghép           không là cặp ghép Cặp ghép                                      Cặp ghép hoàn hảo Graph Matching 4 Ví dụ 12 x1 y1 3 4 x2 y2 8 3 x3 2 y3 4 x4 6 y4 Cặp ghép lớn nhất:         M = {(x1, y1), (x2, y3), (x3, y2), (x4, y4)} Có trọng lượng 29. Graph Matching 5 Bµi to ¸n c Æp g hÐp c ùc  ®¹i  trªn ®å thÞ hai phÝa  1 6 XÐt ®å thÞ hai phÝa  G = (X   Y , E). 2 7 CÆp g hÐp lµ tËp c ¹nh  mµ kh«ng  c ã hai c ¹nh  nµo  c ã c hung  ®Ønh 3 8 Bµi to ¸n:  T×m c Æp  4 9 g hÐp kÝc h th­íc  lín nhÊt 5 10 Graph Matching 6 Qui vÒ Bµi to¸n luång cùc ®¹i 1 6 2 7 s 3 8 t 4 9 5 10 Mỗi cạnh được thay thế bởi Mỗi cung (s, i) có kntq 1. cung có kntq 1. Mỗi cung (j, t) có kntq 1. Graph Matching 7 Tìm luồng cực đại 1 6 2 7 s 3 8 t 4 9 5 10 Luồng cực đại từ s->t có giá trị 4. Cặp ghép cực đại có kích thước 4. Graph Matching 8 Bµi to ¸n c Æp g hÐp c ùc  ®¹i  trªn ®å thÞ hai phÝa  Gi¶ sö M lµ mét cÆp ghÐp trªn G. NÕu c¹nh e =(x, y) M, ta nãi e lµ c¹nh cña cÆp ghÐp (hay c¹nh ®Ëm) vµ c¸c ®Ønh x, y lµ c¸c ®Ønh ®Ëm (hay kh«ng tù do). NÕu c¹nh e =(x, y) M, th×ta nãi e lµ c¹nh nh¹t cßn c¸c ®Ønh x, y lµ c¸c ®Ønh nh¹t (hay tù do). Graph Matching 9 Đường tăng cặp ghép Mé t ®­ê ng ®i trªn ®å thÞ G m µ trong ®ã  hai c¹nh liªn tiÕp lµ kh«ng cïng ®Ëm  hay  nh¹t s Ï ®­îc gäi lµ ®­ê ng  ®i lu©n p hiª n  ®Ëm /nh¹t (hay gäi ng¾n gän lµ ®­ê ng ®i  lu©n phiªn).  §­ê ng ®i lu©n phiªn b¾t ®Çu tõ m é t ®Ønh  tù do thué c tËp X vµ kÕt thóc ë  m é t ®Ønh  tù do thué c tËp Y  ®­îc gäi lµ ®­ê ng  t¨ng   c Æp  g hÐp . Graph Matching 10 Định lý Berge §Þnh lý 1 (Be rg e  C). CÆ p ghÐp M lµ cùc ®¹i khi vµ chØ khi kh«ng  t×m  ®­îc ®­ê ng t¨ng cÆ p ghÐp. CM: §iÒu kiÖn c Çn. B»ng ph¶n chø ng. Gi¶ s ö M lµ cÆ p ghÐp cùc ®¹i  nh­ng vÉn t×m  ®­îc ®­ê ng t¨ng cÆ p ghÐp  P    x 0, y 1, x 1, y 2, ..., x k, y 0       trong ®ã x 0 vµ y 0 lµ c¸c ®Ønh tù do.       Gäi E P  lµ tËp c¸c c¹nh cña ®å thÞ n»m  trªn ®­ê ng ®i P        E P  = {(x 0,y 1), (y 1, x 1), ..., (x k , y 0) }.      DÔ thÊy s è  l­îng c¹nh nh¹t trong E P  lµ b»ng s è  l­îng c¹nh ®Ëm  cña nã  cé ng víi 1. §Ó ®¬n gi¶n trong phÇn d­íi ®©y ta ®ång nhÊt ký hiÖu ®­ ê ng ®i P víi tËp c¹nh E P  cña nã.  X©y dùng cÆ p ghÐp M’ the o qui  t¾c: M’ = (M P) \ (M P). DÔ thÊy M’ còng lµ cÆ p ghÐp vµ râ rµng |M’| = |M| +1. M©u thuÉn  thu ®­îc ®∙ chø ng m inh ®iÒu kiÖn cÇn. Graph Matching 11 Định lý Berge §iÒu kiÖn ®ñ. Gi¶ sö cÆp ghÐp M ch­a lµ cÆp ghÐp cùc ®¹i. Gäi M* lµ cÆp ghÐp cùc ®¹i. XÐt ®å thÞ G’ =(V, M M*). Râ rµng hai c¹nh liªn tiÕp trong mçi ®­êng ®i còng nh­ mçi chu tr×nh trong G’ kh«ng thÓ thuéc cïng mét cÆp ghÐp M hoÆc M*. V×vËy, mçi ®­êng ®i còng nh­ mçi chu tr×nh trong G’ ®Òu lµ ®­êng lu©n phiªn M/M*. Do |M*| >|M|, nªn râ rµng lµ lu«n t×m ®­îc Ýt nhÊt mét ®­êng ®i lu©n phiªn M/M* mµ trong ®ã sè l­îng c¹nh thuéc M* lµ lín h¬n sè l­îng c¹nh thuéc M. §­êng ®i ®ã chÝnh lµ ®­êng t¨ng cÆp ghÐp trªn ®å thÞ G. §Þnh lý ®­îc chøng minh. Chó  ý: Trong chøng minh ®Þnh lý ta kh«ng sö dông tÝnh hai phÝa cña G. Do ®ã, §Þnh lý 1 lµ ®óng víi ®å thÞ v« h­íng bÊt kú. Graph Matching 12 ThuËt to ¸n t×m c Æp g hÐp c ùc   ®¹i §Çu vµo: §å thÞ v« h­íng G =(V, E). B­íc khë i t¹o. X©y dùng cÆp ghÐp M trong ®å thÞ G (cã thÓ b¾t ®Çu tõ M = ). B­íc lÆ p.  KiÓm tra tiªu chuÈn tèi ­u: NÕu ®å thÞ G kh«ng chøa ®­êng t¨ng cÆp ghÐp th× M lµ cÆp ghÐp cùc ® ...

Tài liệu được xem nhiều: