TEORIA GRAFÓW I SIECI Temat nr : Grafy Berge a dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl tel.: 6-83-95-0, p.5/00 Zakład Badań Operacyjnych i Wspomagania Decyzji Instytut Systemów Informatycznych Wydział Cybernetyki, Wojskowa Akademia Techniczna
Rodzaj grafów Berge a W, U W, W, G.B. zwrotny: x x x W G.B. symetryczny: y x x y x, yw G.B. przeciwsymetryczny: y x x y x, yw G.B. antysymetryczny:, y x x y x y x y W G.B. przechodni: y x, y, zw x z y z x G.B. przeciwprzechodni: y x y z W,,
Dendryt - graf Berge a o własnościach:. Rodzaj grafów Berge a x W : x, x0 korzeń pradrzewo x x0 Antydendryt- graf Berge a o własnościach:. x x W : x, antykorzeń. x0. x antydrzewo xx 0 Zbiór wewnętrznie stabilny SW: x S xs Zbiór zewnętrznie stabilny TW: x T xw \ T Jądro zbiór wewnętrznie i zewnętrznie stabilny 3
Algorytm wyznaczania wszystkich minimalnych zbiorów zewnętrznie stabilnych T W jest zbiorem zewn. stab. T W gdzie xx W x xw x
Algorytm wyznaczania wszystkich minimalnych zbiorów zewnętrznie stabilnych. Utworzyć n T x x, x,, x B bij nxn gdzie:, gdy x bij 0, gdy x. Skonstruować WAK: n n b ij x i j i i i W W x j x j 3. Przekształcić WAK do mfa: k n X k. Do zbioru zewnętrznie stabilnego należą wierzchołki odpowiadające wszystkim zmiennym występującym w iloczynie. Liczba iloczynów = liczba minimalnych zbiorów zewnętrznie stabilnych. n 5
Zbiory zewnętrznie i wewnętrznie stabilne, jądra JW jądro J max. z.wewn. stab. J min. z. zewn. stab. Każdy maksymalny zbiór wewnętrznie stabilny digrafu symetrycznego jest jego jądrem. Każdy minimalny zbiór zewnętrznie stabilny digrafu przechodniego jest jego jądrem. Każdy digraf bez dróg cyklicznych ma dokładnie jedno jądro. UWAGA: nie wszystkie grafy mają jądra. 6
G- acykliczny (w sensie dróg) G 0 Silna spójność grafu Graf jest silnie spójny istnieje droga z x do y x, yw Macierz osiągalności: gdzie: gdzie: D d ij G ij d nxn, gdy istnieje droga z x i do x 0 w przeciwnym przypadku. n k G b G D P k0 Pb G - binarna macierz przejść grafu G. j Każdy maksymalny zbiór wierzchołków, którym odpowiadają identyczne wiersze macierzy osiągalności, tworzy maksymalną składową silnej spójności grafu. 7
Algorytm wyznaczania wszystkich maksymalnych składowych silnej spójności (LEIFMANA) x G W,, s x x, x x x, - cechy, S rodzina maksymalnych składowych silnej spójności.. Jeżeli x x 0, tox S s G W \ x,. 0 s oraz tworzymy podgraf Postępowanie kontynuujemy dokąd jest to możliwe. Otrzymamy podgraf s 0 0 0 G W,.. Wszystkie wierzchołki z W cechujemy cechą 0,0. Wybieramy dowolny x 0 0 W. 0 Każdemu y x nadajemy y. Każdemu y x, dla którego x, nadajemy y. Postępowanie kontynuujemy dokąd jest to możliwe. Każdemu y y 0 x nadajemy y. Każdemu y x, dla którego x 0 W W W 00 0 W 0 W W W Jeżeli W, to 0 S; : \ x 0 x W 00 W 00., nadajemy. Postępowanie kontynuujemy dokąd jest to możliwe. Otrzymujemy podział: 3. Jeżeli, to S i przechodzimy do pkt... Jeżeli istnieją zapamiętane niepuste podzbiory zbioru wierzchołków, to dowolny z nich podstawiamy jako W 0 0 0 0, tworzymy podgraf G W, i przechodzimy do pkt.. 3 5 S={{5}, {, }, {3, }} 8
Przeszukiwanie grafu 9
Przeszukiwanie grafu Przykład przeszukiwania wszerz 0 3 0 3 0 3 5 6 5 6 5 6 Q Q 5 3 Q 6 0 3 3 3 0 0 0 5 6 5 6 5 6 Q 5 Q 3 6 Q 6 0
Przeszukiwanie grafu
Przeszukiwanie grafu
Silnie spójne składowe inaczej Transpozycja grafu skierowanego G, T w którym, :, U v u W W u v U T W U : taki graf G W, U T, 3
Podział warstwowy grafu Digraf bez pętli nie zawiera dróg cyklicznych wszystkie jego maksymalne składowe silnej spójności są jednowierzchołkowe. Warstwy digrafu: W W k 0, K k. x W x W 0 :. k 3. k! Tylko dla digrafów acyklicznych x W k x W W W 0 0 k x W k 0 x W k 5 7 3 W W W W W W 0 3 5 6
Algorytm wyznaczania warstw digrafu P b G p ij nxn - binarna macierz przejść. Do W0 zaliczamy wierzchołki, którym odpowiadają zerowe kolumny macierzy Pb(G), k:=.. Wykreślamy z G Pb zerowe kolumny i wiersze o numerach wykreślonych kolumn. Wykreślono wszystko KONIEC. 3. Do Wk zaliczamy wierzchołki, którym odpowiadają zerowe kolumny; k:=k+ i przechodzimy do pkt.. Własności warstwowej reprezentacji digrafu: Wk tworzy podgraf pusty, k, K ; Wk, k, K ; Długość najdłuższej drogi prostej w digrafie acyklicznym = K. 5
Sortowanie topologiczne grafu 6
Sortowanie topologiczne grafu Jak posortować graf topologicznie wykorzystując warstwową reprezentację grafu? 7
Graf Hertz a G H grafu G W, U : Graf Hertz a gdzie: H G S, S zbiór wszystkich maksymalnych składowych silnej spójności, S S x S y S oraz I II, S, S S II I I II Graf H(G) jest digrafem przeciwsymetrycznym, acyklicznym w sensie dróg. WNIOSEK: Graf H(G) można przedstawić warstwami. x y U 8
Graf Hertz a, drogi Hamiltona i Eulera G zawiera drogę Hamiltona H(G) zawiera drogę Hamiltona każda warstwa grafu H(G) jest jednowierzchołkowa. W digrafie istnieje droga cykliczna Eulera s x s x. W digrafie istnieje droga Eulera łącząca x0 z y0 (x0 y0) 0, 0 xw 0 0 0 0 s x s x s x s x s y s y xx y G przeciwsymetryczny digraf s x s x n istnieje w G droga Hamiltona. x W 9
Graf Hertz a, drogi Hamiltona W digrafie acyklicznym istnieje droga Hamiltona wszystkie warstwy digrafu są jednowierzchołkowe. Digraf pełny jest silnie spójny i zawiera cykliczną drogę Hamiltona. G digraf silnie spójny bez pętli i x x n xw w G istnieje droga cykliczna Hamiltona. 0
Cykl, droga Hamiltona - zastosowanie Przykładowy cykl Hamiltona w grafie dwunastościanu foremnego Przykładowy cykl Hamiltona w grafie Mycielskiego PRZYKŁAD wykorzystania cyklu Hamiltona Problem komiwojażera (TSP - ang. traveling salesman problem) polega na znalezieniu minimalnego cyklu Hamiltona w pełnym grafie ważonym. Nazwa pochodzi od typowej ilustracji problemu, przedstawiającej go z punktu widzenia wędrownego sprzedawcy (komiwojażera): dane jest n miast, które komiwojażer ma odwiedzić, oraz odległość pomiędzy każdą parą miast. Należy znaleźć najkrótszą trasę zaczynającą się w jednym z miast X, przechodzącą jednokrotnie przez wszystkie pozostałe miasta i wracającą do X.
Algorytm wyznaczania drogi Hamiltona. Wyznaczamy wszystkie składowe silnej spójności grafu G i tworzymy graf H(G).. Wyznaczamy warstwy H(G). Jeżeli są one jednowierzchołkowe, to tworzą drogę Hamiltona w H(G). Jeżeli nie to taka droga nie istnieje KONIEC. 3. Tworzymy graf częściowy grafu G pozostawiając wszystkie składowe silnej spójności oraz łuki odpowiadające sąsiednim składowym silnej spójności występującym w drodze Hamiltona grafu H(G).. Spośród łuków pozostawionych i łączących składowe silnej spójności wybieramy takie, aby w tych składowych istniały nadające się do połączenia drogi Hamiltona. Jeżeli nie jest to możliwe, to w G nie istnieje droga Hamiltona.
Przykład zastosowania algorytmu wyznaczania drogi Hamiltona G: 3 6 8 0 5 7 9 S S 5 S3 S S H(G): S S S5 S3 S 3 6 8 0 5 7 9 3
Zakład Badań Operacyjnych i Wspomagania Decyzji Instytut Systemów Informatycznych Wydział Cybernetyki, Wojskowa Akademia Techniczna DZIĘKUJĘ ZA UWAGĘ dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl