Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie mosty w Królewcu dokładnie jeden raz?



Podobne dokumenty
WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Matematyka dyskretna

KURS MATEMATYKA DYSKRETNA

Suma dwóch grafów. Zespolenie dwóch grafów

Matematyczne Podstawy Informatyki

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

KURS MATEMATYKA DYSKRETNA

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Graf. Definicja marca / 1

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14

Opracowanie prof. J. Domsta 1

6a. Grafy eulerowskie i hamiltonowskie

Algorytmiczna teoria grafów

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

TEORIA GRAFÓW I SIECI

Podstawowe własności grafów. Wykład 3. Własności grafów

Grafy co o ich rysowaniu wiedzą przedszkolaki i co z tego wynika dla matematyków

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona

Algorytmiczna teoria grafów

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Grafy dla każdego. dr Krzysztof Bryś. Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska.

Algorytmy i Struktury Danych.

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Grafy i Zastosowania. 9: Digrafy (grafy skierowane) c Marcin Sydow

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH. Skojarzeniem w grafie G nazywamy dowolny podzbiór krawędzi parami niezależnych.

Ilustracja S1 S2. S3 ściana zewnętrzna

Wykład 4. Droga i cykl Eulera i Hamiltona

SPÓJNOŚĆ. ,...v k. }, E={v 1. v k. i v k. ,...,v k-1. }. Wierzchołki v 1. v 2. to końce ścieżki.

Matematyka dyskretna - 5.Grafy.

6. Wstępne pojęcia teorii grafów

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Drzewa. Jeżeli graf G jest lasem, który ma n wierzchołków i k składowych, to G ma n k krawędzi. Własności drzew

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

G. Wybrane elementy teorii grafów

MATEMATYKA DYSKRETNA - KOLOKWIUM 2

1) Grafy eulerowskie własnoci algorytmy. 2) Problem chiskiego listonosza

Kolorowanie wierzchołków Kolorowanie krawędzi Kolorowanie regionów i map. Wykład 8. Kolorowanie

Algorytm Dijkstry znajdowania najkrótszej ścieżki w grafie

Elementy teorii grafów Elementy teorii grafów

Teoria grafów dla małolatów. Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska

Matematyczne Podstawy Informatyki

TEORIA GRAFÓW I SIECI

E ' E G nazywamy krawędziowym zbiorem

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1

6d. Grafy dwudzielne i kolorowania

Sortowanie topologiczne skierowanych grafów acyklicznych

Grafy. Graf ( graf ogólny) to para G( V, E), gdzie:

Kombinowanie o nieskończoności. 2. Wyspy, mosty, mapy i kredki materiały do ćwiczeń

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV

Matematyka dyskretna - 6.Grafy

Algorytmy z powracaniem

Matematyczne Podstawy Informatyki

Digraf. 13 maja 2017

TEORETYCZNE PODSTAWY INFORMATYKI

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Złożoność obliczeniowa klasycznych problemów grafowych

c Marcin Sydow Spójno± Grafy i Zastosowania Grafy Eulerowskie 2: Drogi i Cykle Grafy Hamiltonowskie Podsumowanie

Grafy i grafy skierowane. Izomorfizmy grafów

Kolorowanie wierzchołków grafu

0. ELEMENTY LOGIKI. ALGEBRA BOOLE A

Ogólne wiadomości o grafach

Ścieżki w grafach. Grafy acykliczne i spójne

TOMASZ TRACZYK MATEMATYKA DYSKRETNA Wykłady 9-10 Grafy Hamiltona

TEORIA GRAFÓW I SIECI

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:

Zał. nr 4 do ZW. Wykład Ćwiczenia Laboratorium Projekt Seminarium 30 30

Matematyka dyskretna - 8. Egzaminy próbne. Uwaga! Niektórych z tych zadań nie obejmuje program dla studiów zaocznych - proszę się tym nie niepokoić -

Teoria grafów. Magdalena Lemańska

1. Powtórka ze szkoły. Wykład: (4 godziny), ćwiczenia: , kolokwium nr 1:

Znajdowanie skojarzeń na maszynie równoległej

GEOMETRIA PRZESTRZENNA (STEREOMETRIA)

Topologia kombinatoryczna zadania kwalifikacyjne

Kolorowanie grafów planarnych, discharging

7. Teoria drzew - spinanie i przeszukiwanie

WYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku

Matematyka dyskretna. Andrzej Łachwa, UJ, A/14

STEREOMETRIA CZYLI GEOMETRIA W 3 WYMIARACH

Wykłady z Matematyki Dyskretnej

Grafy (3): drzewa. Wykłady z matematyki dyskretnej dla informatyków i teleinformatyków. UTP Bydgoszcz

Wojciech Guzicki. Gdynia, 23 września 2016 r.

LI Olimpiada Matematyczna Rozwiązania zadań konkursowych zawodów stopnia trzeciego 3 kwietnia 2000 r. (pierwszy dzień zawodów)

Teoria grafów dla małolatów

TEORIA GRAFÓW I SIECI

Zadania dodatkowe z Matematyki Dyskretnej semestr letni 2015

Algorytmy i Struktury Danych.

Wprowadzenie Podstawy Fundamentalne twierdzenie Kolorowanie. Grafy planarne. Przemysław Gordinowicz. Instytut Matematyki, Politechnika Łódzka

Matematyka dyskretna - 7.Drzewa

Wprowadzenie do teorii grafów. Dr inż. Krzysztof Lisiecki

Wykłady z Matematyki Dyskretnej

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA Pod auspicjami Polskiej Akademii Nauk Warszawa, ul. Newelska 6, tel.

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Matematyka Dyskretna (Ćwiczenia)

PROBLEM: SEKWENCJONOWANIE DNA METODA: ALGORYTMY GRAFOWE

Transkrypt:

DROGI i CYKLE EULERA w grafach Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie mosty w Królewcu dokładnie jeden raz? Czy można narysować podaną figurę nie odrywając ołówka od papieru i nie rysując dwukrotnie żadnego odcinka? Drogą Eulera w grafie (skierowanym) nazywamy taką drogę prostą, która zawiera wszystkie krawędzie (łuki) grafu. Cyklem Eulera nazywamy zamkniętą drogę Eulera. Graf, który ma cykl Eulera nazywamy grafem eulerowskim, a taki, który ma drogę Eulera nazywamy grafem półeulerowskim. GRAFY i SIECI () J.Sikorski Strona /

Twierdzenie (Euler, 76) Spójny graf G (nieskierowany) ma cykl Eulera wtedy i tylko wtedy, gdy stopień każdego wierzchołka w G jest parzysty. Leonhard Euler (707 78) Dowód ( ) Załóżmy, że graf ma cykl Eulera. Jeśli będziemy przechodzili wzdłuż krawędzi tego cyklu, usuwając je po przejściu, to w każdym przechodzonym wierzchołku stopień będzie malał o. Ponieważ ten cykl zawiera wszystkie krawędzie grafu dokładnie raz, to po przejściu całego cyklu wszystkie wierzchołki będą stopnia 0. Zatem na początku wszystkie musiały mieć stopień parzysty. ( ) Indukcja względem liczby krawędzi m. Dla m = twierdzenie oczywiście zachodzi. Rozważmy graf o m >, zakładając, że każdy graf o mniejszej liczbie krawędzi ma cykl Eulera. Ze spójności grafu i parzystości stopni wierzchołków wynika, że minimalny stopień wierzchołka jest równy. Zatem graf musi GRAFY i SIECI () J.Sikorski Strona /

zawierać cykl elementarny o długości co najmniej (tw. Diraca). Wybierzmy taki cykl i oznaczmy go przez C. Jeśli cykl C zawiera każdą krawędź grafu, to dowód jest zakończony. Jeśli nie, to usuwamy z grafu krawędzie należące do cyklu C. Powstaje podgraf H, który ma mniej krawędzi niż graf G (może nie być spójny), ale nadal każdy wierzchołek ma w nim stopień parzysty (po usunięciu cyklu C stopień zmniejsza się o 0 lub ). Na mocy założenie indukcyjnego w każdej składowej spójnej podgrafu H istnieje cykl Eulera. Ponadto ze spójności grafu G wynika, że każda składowa podgrafu H ma wierzchołek wspólny z cyklem C. Zatem cykl Eulera w grafie G można skonstruować przechodząc kolejne krawędzie cyklu C w ustalonym kierunku od wybranego wierzchołka początkowego i włączając do drogi cykle Eulera w napotkanych składowych spójnych podgrafu H. W każdym wierzchołku, który nie jest w H wierzchołkiem izolowanym, przechodzimy krawędzie cyklu Eulera w tej składowej podgrafu H, która zawiera ten wierzchołek. Po obejściu cyklu Eulera w składowej podgrafu H kontynuujemy poruszanie się wzdłuż cyklu C i wracamy na końcu do wierzchołka początkowego. Obchodzimy w ten sposób dokładnie jeden raz wszystkie krawędzie grafu G. GRAFY i SIECI () J.Sikorski Strona /

Przykład rekurencyjnego wyznaczania cyklu Eulera 7 6 8 C 9 6 0 Wniosek (z tw. Eulera) Graf spójny, który ma nie więcej niż dwa wierzchołki stopnia nieparzystego, ma drogę Eulera. Grafy reprezentujące przykładowe problemy ( spacer i koperta ) nie ma drogi Eulera jest droga E., ale nie ma cyklu Mostem nazywamy taką krawędź grafu, której usunięcie zwiększa liczbę składowych spójnych tego grafu. GRAFY i SIECI () J.Sikorski Strona /

Prosty algorytm wyznaczania drogi Eulera (tzw. alg. Fleury ego) Budujemy iteracyjnie ciąg krawędzi grafu (drogę).. Wybierz dowolny wierzchołek v 0 o nieparzystym stopniu, o ile taki istnieje; w przeciwnym przypadku wybierz dowolny wierzchołek v 0 ; podstaw v v 0 ;. Dopóki są w grafie krawędzie incydentne z v wykonuj:.. Jeśli jest dokładnie jedna krawędź incydentna z v : {v, w}, to ją wybierz;.. Jeśli istnieje więcej niż jedna krawędź incydentna z v, to wybierz dowolną krawędź incydentną {v, w}, która nie jest mostem;.. wstaw wybraną krawędź jako kolejny wyraz ciągu i usuń ją z grafu; podstaw v w ;. Jeśli ciąg zawiera wszystkie krawędzie grafu, to została wyznaczona w nim droga lub cykl Eulera, a jeśli nie, to graf nie był spójny i algorytm wyznaczył drogę lub cykl Eulera w jego składowej spójnej, która zawiera wybrany początkowo wierzchołek v 0. Przykład działania algorytmu Fleury ego 7 6 GRAFY i SIECI () J.Sikorski Strona /

DROGI i CYKLE EULERA w grafach skierowanych Twierdzenie Spójny graf skierowany ma cykl Eulera wtedy i tylko wtedy, gdy dla każdego wierzchołka v zachodzi d + (v) = d (v). Wniosek Spójny graf skierowany ma drogę Eulera, gdy dla każdego wierzchołka v zachodzi d + (v) = d (v), albo gdy istnieją dokładnie dwa wierzchołki v i v nie spełniające tego warunku, dla których zachodzi d + (v ) d (v ) = d (v ) d + (v ) =. DROGI i CYKLE HAMILTONA w grafach Rozważmy graf (nieskierowany) G = ( V, E ) Drogą Hamiltona w grafie G nazywamy taką drogę elementarną, która zawiera wszystkie wierzchołki grafu. Cyklem Hamiltona w grafie G nazywamy taki cykl elementarny, który zawiera wszystkie wierzchołki grafu (jest zamkniętą drogą Hamiltona). Długość cyklu Hamiltona jest równa V. Graf, który ma cykl Hamiltona nazywamy grafem hamiltonowskim, a taki, który ma drogę Hamiltona nazywamy półhamiltonowskim. GRAFY i SIECI () J.Sikorski Strona 6 /

Przykłady graf dwunastościanu foremnego (graf platoński) jest hamiltonowski graf Petersena nie jest hamiltonowski Przykład cyklu Hamiltona w grafie sześcianu (związek z kodem Graya) Kod Graya rzędu trzeciego (n =): (0,0,0) (,0,0) (,,0) (0,,0) (0,,) (,,) (,0,) (0,0,) y (0,,) (,,) (0,,0) (,,0) z (0,0,0) (0,0,) (,0,0) (,0,) x (nadawanie etykiet procesorom połączonym w tzw. kostkę) GRAFY i SIECI () J.Sikorski Strona 7 /

Graf pełny K n jest hamiltonowski dla każdego n i zawiera ( n )! cykli Hamiltona. Przykład cykli Hamiltona w grafie K i K ( )! K : = ( )! K : = Twierdzenie Dla każdego grafu dwudzielnego G = (V V, E) zachodzi: jeśli G ma cykl Hamiltona, to V = V, jeśli G ma drogę Hamiltona, to V V. Dla każdego pełnego grafu dwudzielnego, w którym V V zachodzi: jeśli V = V, to G ma cykl Hamiltona, jeśli V V, to G ma drogę Hamiltona. GRAFY i SIECI () J.Sikorski Strona 8 /

Warunki dostateczne istnienia cyklu Hamiltona Twierdzenie (Ore, 960) Graf (nieskierowany) o n wierzchołkach dla n, w którym d(v) + d(w) n dla każdej pary wierzchołków v i w niepołączonych krawędzią (niezależnych), jest hamiltonowski Przykład grafu hamiltonowskiego spełniającego warunek Ore d()= d()= d()= d(7)= 7 d(6)= 6 d()= d()= Najniższy stopień mają wierzchołki i 6. Dla wierzchołków niezależnych z w. : d(v) + d() = 7 n = 7 Dla wierzchołków niezależnych z w. 6: d(v) + d(6) = 7 n = 7 Przykład grafu hamiltonowskiego, w którym warunek Ore nie jest spełniony Dla grafu: zachodzi d(v) + d(w) = < n = dla każdej pary wierzchołków v i w niepołączonych krawędzią, a cykl Hamiltona oczywiście w nim istnieje. GRAFY i SIECI () J.Sikorski Strona 9 /

Wniosek (twierdzenie Diraca, 9) n Jeśli graf (nieskierowany) ma n wierzchołków i d(v) dla każdego wierzchołka, to graf ten jest hamiltonowski. Dowód n v V : d(v) u, w V : d(u) + d(w) n Wniosek ( n )( n ) Jeśli graf ma n wierzchołków i co najmniej + krawędzi, to jest hamiltonowski. Dowód ( n )( n ) Załóżmy, że graf G = (V, E) ma E = + krawędzi. Wybierzmy u, v V takie, że {u, v} E i usuńmy z grafu wierzchołki u i v oraz wszystkie krawędzie z nimi incydentne. Zatem usunęliśmy d(u) + d(v) krawędzi i wierzchołki. Otrzymany podgraf G = (V, E ) jest na pewno podgrafem K n, ( n )( n ) a zatem ma nie więcej niż krawędzi. ( n )( n ) Mamy więc: + d(u) d(v) E ( n )( n ) Stąd ( n )( n ). ( n )( n ) + = n d(u) + d(v) i spełnione są założenia twierdzenia Ore. GRAFY i SIECI () J.Sikorski Strona 0 /

Przykład grafu hamiltonowskiego (c.d.) d()= d()= d()= d(7)= 7 d(6)= 6 d()= d()= Warunek Ore jest spełniony (patrz poprzedni przykład). n Warunek Diraca nie jest spełniony, bo np. d() = < =,. Warunek na liczbę krawędzi także nie jest spełniony, ( n )( n ) bo m = < + = 7. W grafie G o n wierzchołkach uporządkujmy stopnie wszystkich wierzchołków w ciąg niemalejący: (d (G), d (G),..., d n (G)), d (G) d (G)... d n (G); ciąg ten nazywamy sekwencją wstępującą stopni wierzchołków. Ciąg liczb naturalnych (a, a,..., a n ) nazywamy ciągiem hamiltonowskim, jeśli każdy graf nieskierowany G o n wierzchołkach, którego sekwencja wstępująca stopni wierzchołków spełnia warunek d i (G) a i, i =,,..., n, jest grafem hamiltonowskim. GRAFY i SIECI () J.Sikorski Strona /

Twierdzenie (Chvátal, 97) Ciąg liczb naturalnych (a, a,..., a n ), w którym 0 a a... a n < n dla n, jest hamiltonowski n wtedy i tylko wtedy, gdy dla każdego i < spełniona jest implikacja: a i i a n i n i. Przykład grafu hamiltonowskiego d()= d()= d()= d(7)= 7 d(6)= 6 d()= d()= Sekwencja wstępująca stopni wierzchołków: (,,,,,, ). Zbadajmy, czy jest ona ciągiem hamiltonowskim. i = : i = : i = : a = > a 6 = < 6 ; implikacja prawdziwa (0 0) a = > a = < ; implikacja prawdziwa (0 0) a = a = ; implikacja prawdziwa ( ) Zatem ciąg (,,,,,, ) jest ciągiem hamiltonowskim, co oznacza, że graf o takiej sekwencji wstępującej ma cykl Hamiltona. Warunek Ore nie jest spełniony, bo np. d() + d(6) = < n = 7 GRAFY i SIECI () J.Sikorski Strona /