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

Podobne dokumenty
MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

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

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

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

Matematyka dyskretna

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

Matematyczne Podstawy Informatyki

Algorytmiczna teoria grafów

Elementy teorii grafów Elementy teorii grafów

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Graf. Definicja marca / 1

Algorytmiczna teoria grafów

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

Matematyczne Podstawy Informatyki

TEORIA GRAFÓW I SIECI

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. Andrzej Łachwa, UJ, /14

KURS MATEMATYKA DYSKRETNA

TEORIA GRAFÓW I SIECI

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

Opracowanie prof. J. Domsta 1

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

Digraf. 13 maja 2017

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

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

G. Wybrane elementy teorii grafów

Podstawowe pojęcia dotyczące drzew Podstawowe pojęcia dotyczące grafów Przykłady drzew i grafów

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

Wykłady z Matematyki Dyskretnej

Kolorowanie wierzchołkó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

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

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

TEORIA GRAFÓW I SIECI

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

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

MATEMATYKA DYSKRETNA - KOLOKWIUM 2

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

Wykład 4. Droga i cykl Eulera i Hamiltona

Matematyczne Podstawy Informatyki

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

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

Matematyka dyskretna - 5.Grafy.

E ' E G nazywamy krawędziowym zbiorem

Indukowane Reguły Decyzyjne I. Wykład 3

0. ELEMENTY LOGIKI. ALGEBRA BOOLE A

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

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Sortowanie topologiczne skierowanych grafów acyklicznych

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

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Algorytmy z powracaniem

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

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

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

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

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

Graf to nie tylko tytuł szlachecki

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

Wstęp do programowania. Drzewa. Piotr Chrząstowski-Wachtel

Egzaminy i inne zadania. Semestr II.

Ilustracja S1 S2. S3 ściana zewnętrzna

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

Algorytmika Problemów Trudnych

Matematyka dyskretna - 7.Drzewa

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

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

Programowanie obiektowe

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

Teoria grafów. Magdalena Lemańska

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

6a. Grafy eulerowskie i hamiltonowskie

TEORIA GRAFÓW I SIECI

7. Teoria drzew - spinanie i przeszukiwanie

a) 7 b) 19 c) 21 d) 34

Wykład 8. Drzewo rozpinające (minimum spanning tree)

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

Ogólne wiadomości o grafach

KURS MATEMATYKA DYSKRETNA

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Programowanie obiektowe

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

Relacje i relacje równoważności. Materiały pomocnicze do wykładu. przedmiot: Matematyka Dyskretna 1 wykładowca: dr Magdalena Kacprzak

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

(4) x (y z) = (x y) (x z), x (y z) = (x y) (x z), (3) x (x y) = x, x (x y) = x, (2) x 0 = x, x 1 = x

Grafy i Zastosowania. 5: Drzewa Rozpinające. c Marcin Sydow. Drzewa rozpinające. Cykle i rozcięcia fundamentalne. Zastosowania

Digraf o V wierzchołkach posiada V 2 krawędzi, zatem liczba różnych digrafów o V wierzchołkach wynosi 2 VxV

Zadania z ćwiczeń #18 (pon. 7 maja) Matematyka Dyskretna

Twierdzenie Halla o małżeństwach

Algebrą nazywamy strukturę A = (A, {F i : i I }), gdzie A jest zbiorem zwanym uniwersum algebry, zaś F i : A F i

Wykłady z Matematyki Dyskretnej

Teoria grafów dla małolatów

Algorytmy i Struktury Danych.

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

Rozważmy funkcję f : X Y. Dla dowolnego zbioru A X określamy. Dla dowolnego zbioru B Y określamy jego przeciwobraz:

Wyznaczanie optymalnej trasy problem komiwojażera

Wstęp do informatyki dr Adrian Horzyk, paw. H Wykład TEORIA GRAFÓW

Matematyka dyskretna - 6.Grafy

Transkrypt:

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

Grafy zorientowane i niezorientowane

Przykład 1

Dwa pociągi i jeden most problem wzajemnego wykluczania się

Dwa pociągi i jeden most graf możliwych tranzycji W 1,G,W 2 W pociąg czeka B pociąg jest na moście A pociąg nie jest na moście B 1,R,W 2 W 1,R,B 2 A 1,G,W 2 W 1,G,A 2 A 1,R,B 2 B 1,R,A 2 G światło jest zielone A 1,G,A 2 R światło jest czerwone

Dwa pociągi i jeden most przykładowe obliczenie W 1,G,W 2 W pociąg czeka B pociąg jest na moście A pociąg nie jest na moście B 1,R,W 2 W 1,R,B 2 A 1,G,W 2 W 1,G,A 2 A 1,R,B 2 B 1,R,A 2 G światło jest zielone A 1,G,A 2 R światło jest czerwone

Dwa pociągi i jeden most drzewo możliwych obliczeń A 1 GA 2 A 1 GW 2 W 1 GA 2 W 1 GW 2 A 1 RB 2 W 1 GW 2 B 1 RA 2 B 1 RW 2 W 1 RB 2 A 1 GA 2 B 1 RW 2 W 1 RB 2 A 1 GA 2

Przykład 2

Sieć logiczna Czy istnieje wartościowanie spełniające formułę z (x y) ( x y)? 1 1 1 1 1 0 1 0 x 1 y 0 z

Przykład 3

Algorytm X := 2,5 Czy X >100? NIE X := X+1 TAK STOP

Przykład 4

Mapa drogowa

Graf zorientowany Grafem zorientowanym (digrafem albo grafem skierowanym) nazywamy parę uporządkowaną G=(V,E), gdzie V jest niepustym zbiorem, E podzbiorem produktu V V. Elementy zbioru V nazywamy węzłami lub wierzchołkami grafu, a elementy zbioru E nazywamy krawędziami grafu.

Graf jako relacja Każdy graf jednoznacznie wyznacza pewną relację binarną w zbiorze V, (x,y) r wttw (x,y) E. Odwrotnie, każda relacja binarna r w zbiorze X, wyznacza jednoznacznie graf zorientowany, którego węzłami są elementy zbioru X, a krawędziami uporządkowane pary (x,x') należące do r.

Relacja sąsiedztwa Relację r będziemy nazywać relacją sąsiedztwa. Wierzchołki połączone krawędzią będziemy nazywać sąsiednimi. O krawędzi (x,x') mówimy, że jest incydentna z wierzchołkami x i x'.

Pętle Wierzchołek x nazywamy początkiem, a x' końcem krawędzi (x,x'). Krawędź, której początek jest identyczny z końcem nazywa się pętlą w grafie.

Przykład Zbiór wierzchołków: V={1,2,3,4,5,6,7} 1 2 Zbiór krawędzi: E={(1,1),(1,2),(2,2),(2,1), (3,3),(4,4,),(5,5),(5,6), (6,6),(6,5),(7,7)} 6 3 7 4 5 Pętle: (1,1), (2,2,), (3,3,) itp..

Graf skończony Powiemy, że graf zorientowany jest skończony, jeśli zbiór jego wierzchołków jest skończony.

Stopnie wierzchołków Dla każdego wierzchołka grafu zorientowanego definiujemy stopień wejściowy d + (v) i stopień wyjściowy d - (v) wierzchołka v następująco:

Stopnie wierzchołków d + (v) jest liczbą krawędzi, których końcem jest v, tzn. liczbą krawędzi wchodzących do v, d - (v) jest liczbą krawędzi, których początkiem jest v, tzn. liczbą krawędzi wychodzących z wierzchołka v.

Przykład 1 3 2 Ilość wierzchołków wychodzących z wierzchołka 2 d + (2)=1 7 6 5 Ilość wierzchołków wchodzących do wierzchołka 2 d - (2)=2

Lemat Niech G=(V,E) będzie grafem zorientowanym skończonym. Wtedy S v V d + (v) = S v V d - (v).

1 3 2 Przykład 7 6 5 S v V d + (v) = d + (1)+ d + (2)+d + (3)+d + (5)+d + (6)+d + (7)= 1+1+2+1+2+1=8 S v V d - (v) = d - (1)+ d - (2)+d - (3)+d - (5)+d - (6)+d - (7)= 2+2+0+1+2+1=8

Graf niezorientowany Powiemy, że graf G=(V,E) jest niezorientowany, jeżeli relacja sąsiedztwa tego grafu jest symetryczna, tzn. dla dowolnych dwóch wierzchołków v,v' V, (v,v') E wttw (v',v) E.

Lemat o uściskach dłoni Jeśli pewne osoby witają się, podając sobie dłonie, to łączna liczba uściśniętych dłoni jest parzysta dlatego, że w każdym uścisku uczestniczą dokładnie dwie dłonie.

Lemat (Leonard Euler - 1736) W każdym grafie niezorientowanym suma stopni wszystkich wierzchołków jest liczbą parzystą i jest równa podwojonej liczbie krawędzi.

Lemat Każdy graf niezorientowany ma parzystą liczbę wierzchołków stopnia nieparzystego.

Reprezentacja macierzowa

Macierz sąsiedztwa Jeśli G jest grafem, którego wierzchołki są oznakowane liczbami ze zbioru {1,2,...,n}, to macierzą sąsiedztwa jest macierz wymiaru n n, której wyraz o indeksach i, j jest równy liczbie krawędzi łączących wierzchołek i z wierzchołkiem j.

Macierz sąsiedztwa - przykład 1 2 4 3 Macierz sąsiedztwa 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0

Typy grafów

Graf prosty Graf prosty jest to graf spełniający warunki: graf niezorientowany bez pętli, dowolne dwa wierzchołki mogą być połączone co najwyżej jedną krawędzią.

Graf prosty - przykład Relacja sąsiedztwa między państwami Francja Niemcy Polska Austria Czechy

Multigraf Grafy, w których istnieją wierzchołki połączone więcej niż jedną krawędzią nazywamy multigrafami.

Multigraf - przykład 3 1 2 7 6 5

Graf regularny i pełny Grafy, których wszystkie wierzchołki mają ten sam stopień nazywamy regularnymi. Graf, w którym każdy wierzchołek jest połączony krawędzią z każdym innym, nazywamy grafem pełnym.

Graf regularny - przykład

Graf pełny - przykład Niech A={Asia, Krysia, Piotr}, r = {(a,b): a lubi b} Asia Krysia Piotr

Graf dwudzielny Grafem dwudzielnym nazywamy graf G, w którym zbiór wierzchołków może być podzielny na dwa rozłączne zbiory A i B w taki sposób, że każda krawędź grafu łączy wierzchołek zbioru A z wierzchołkiem zbioru B.

Graf dwudzielny - przykład

Podgraf Podgrafem grafu G =(V,E) nazywamy graf G' =(V',E ) taki, że V' jest podzbiorem zbioru V, a zbiór krawędzi E' składa się ze wszystkich tych krawędzi zbioru E, których końce należą do wybranego zbioru wierzchołków V'.

Podgraf - przykład Niech A={Asia, Krysia, Piotr}, r = {(a,b): a lubi b} Asia Podgraf Krysia Piotr

Zastosowania

Przykład 1: Sześć osób na przyjęciu

Problem Udowodnij, że w dowolnej grupie sześciu osób zawsze istnieją albo trzy osoby znające się nawzajem, albo trzy osoby, z których żadna nie zna pozostałych dwóch.

Opis problemu w teorii grafów x v y z osoby znają się osoby nie znają się

Rozwiązanie 3 osoby znające się nawzajem x v y x z x v y v y z z

Rozwiązanie 3 osoby, z których żadna nie zna pozostałych x v y z

Przykład 2: Twierdzenie o kojarzeniu małżeństw

Problem kojarzenia małżeństw Jeśli dany jest skończony zbiór dziewcząt, z których każda zna pewną liczbę chłopców, to jakie warunki muszą być spełnione, by każda dziewczyna mogła poślubić któregoś ze znanych jej chłopców?

Opis problemu w teorii grafów c1 d1 c2 d2 c3 d3 c4

Opis problemu w teorii grafów c1 d1 c2 d2 c3 d3 c4

Twierdzenie (Philip Hall - 1935) Warunkiem koniecznym i wystarczającym na to, by problem kojarzenia małżeństw miał rozwiązanie, jest, by dla każdego zbioru k dziewcząt, wszystkie one łącznie znały co najmniej k chłopców, gdzie 1 k m oraz m jest liczbą wszystkich dziewcząt.

Drogi i cykle

Droga Niech G=(V,E) będzie grafem. Drogą w grafie G nazywamy ciąg wierzchołków v 0,v 1,..., v n taki, że kolejne wierzchołki ciągu są połączone krawędzią, tzn. (v i,v i+1 ) E dla każdego i=0,1,...,n-1.

Droga-przykład W 1,G,W 2 B 1,R,W 2 W 1,R,B 2 A 1,G,W 2 W 1,G,A 2 A 1,R,B 2 B 1,R,A 2 A 1,G,A 2

Długość drogi i droga zamknięta Długość drogi, to liczba krawędzi, przez które droga przechodzi. Jeśli v 0 =v n, to powiemy, że droga jest zamknięta.

Cykl Jeśli wszystkie wierzchołki drogi zamkniętej są różne z wyjątkiem pierwszego i ostatniego wierzchołka, to taką drogę nazywamy cyklem.

Cykl-przykład W 1,G,W 2 B 1,R,W 2 W 1,R,B 2 A 1,G,W 2 W 1,G,A 2 A 1,R,B 2 B 1,R,A 2 A 1,G,A 2

Droga prosta Drogę nazwiemy prostą, jeżeli wierzchołki, przez które przechodzi są parami różne. Droga prosta nigdy nie przechodzi dwukrotnie po tej samej krawędzi.

Droga acykliczna Jeśli droga nie zawiera cyklu, to nazywamy ją acykliczną.

Lemat Jeżeli w grafie G istnieje droga łącząca dwa różne wierzchołki u i v, to istnieje też droga prosta i acykliczna prowadząca od u do v.

Relacja osiągalności Niech G=(V,E) będzie dowolnym grafem. Relacją osiągalności w grafie G nazywamy relację binarną r w zbiorze wierzchołków grafu, taką że (u,v) r wttw w grafie G istnieje droga prowadząca od u do v.

Relacja osiągalności-przykład W 1,G,W 2 Stan osiągalny B 1,R,W 2 W 1,R,B 2 A 1,G,W 2 W 1,G,A 2 A 1,R,B 2 B 1,R,A 2 A 1,G,A 2

Spójność i acykliczność

Graf spójny Powiemy, że graf niezorientowany jest spójny wtedy i tylko wtedy, gdy dowolne dwa wierzchołki grafu są połączone drogą.

Graf który nie jest spójny-przykład

Graf który jest spójny-przykład

Lemat Jeżeli G=(V,E) jest grafem niezorientowanym, spójnym, o n wierzchołkach, to ma co najmniej n-1 krawędzi.

Spójna składowa grafu Spójny podgraf grafu, który nie jest zawarty w żadnym większym spójnym podgrafie nazywa się spójną składową grafu.

Spójna składowa grafu-przykład Spójna składowa grafu

Graf acykliczny Powiemy, że graf jest acykliczny wttw nie istnieje cykl w tym grafie.

Lemat Niech G=(V,E) będzie grafem niezorientowanym, acyklicznym, o n wierzchołkach, to G ma co najwyżej n-1 krawędzi.

Droga Eulera

Problem mostów królewieckich Przez Królewiec przepływała rzeka, w której rozwidleniach znajdowały się dwie wyspy. Ponad rzeką przerzucono siedem mostów, z których jeden łączył obie wyspy, a pozostałe mosty łączyły wyspy z brzegami rzeki. Czy można przejść kolejno przez wszystkie mosty tak, żeby każdy przekroczyć tylko raz i wrócić do miejsca, z którego się wyruszyło?

Problem mostów królewieckich Czy można przejść dokładnie jeden raz przez każdy z siedmiu mostów?

Problem mostów królewieckich Czy można przejść dokładnie jeden raz przez każdy z siedmiu mostów?

Droga Eulera Drogą Eulera nazywamy drogę w grafie, która przechodzi przez wszystkie krawędzie i przez każdą dokładnie raz.

Cykl Eulera Jeżeli ta droga jest cyklem, to nazywamy ją cyklem Eulera. Graf posiadający cykl Eulera nazywamy Eulerowskim.

Twierdzenie Warunkiem koniecznym i dostatecznym na to, by skończony graf niezorientowany i spójny posiadał cykl Eulera jest by wszystkie wierzchołki tego grafu miały rząd parzysty.

Twierdzenie Warunkiem koniecznym i dostatecznym na to by w grafie niezorientowanym skończonym i spójnym istniała droga Eulera łącząca wierzchołki A i B jest by jedynymi wierzchołkami rzędów nieparzystych były co najwyżej wierzchołki A i B.

Wniosek Jeśli każdy wierzchołek ma rząd parzysty, to taki graf posiada cykl i drogę Eulera. Jeśli w grafie są wierzchołki rzędu nieparzystego, to albo są dokładnie dwa takie wierzchołki i wtedy istnieje łącząca je droga Eulera, albo nie istnieje żadna droga Eulera w tym grafie.

Droga Hamiltona

Problem komiwojażera Komiwojażer ma do odwiedzenia pewna liczbę miast. Chciałby dotrzeć do każdego z nich i wrócić do miasta, z którego wyruszył. Dane są również odległości między miastami. Jak powinien zaplanować trasę podróży, aby w sumie przebył możliwie najkrótsza drogę? 10 12 3 7 3 7 5 9 11 10

Droga Hamiltona Drogą Hamiltona w grafie G nazywamy drogę przechodzącą przez wszystkie wierzchołki grafu i to przez każdy wierzchołek dokładnie raz.

Czy ten graf posiada ścieżkę Hamiltona?

Czy ten graf posiada ścieżkę Hamiltona?

Cykl Hamiltona Jeżeli droga ta jest cyklem, to nazywamy ją cyklem Hamiltona. Graf posiadający cykl Hamiltona nazywamy Hamiltonowskim.

Uwaga Nie jest znany żaden warunek konieczny i dostateczny na to, by graf był Hamiltonowski. Nie jest też znany żaden efektywny algorytm znajdowania drogi lub cyklu Hamiltona.

Drzewa

Przykład - Pierwsi Piastowie Ziemomysł Mieszko I Czcibor Bolesław I Chrobry Bezprym Mieszko II Otton Kazimierz I Odnowiciel Bolesław II Śmiały Władysław I Herman

Drzewo możliwych obliczeń A 1 GA 2 A 1 GW 2 W 1 GA 2 W 1 GW 2 A 1 RB 2 W 1 GW 2 B 1 RA 2 B 1 RW 2 W 1 RB 2 A 1 GA 2 B 1 RW 2 W 1 RB 2 A 1 GA 2

Drzewo Drzewem nazywamy graf niezorientowany, spójny i acykliczny.

Korzeń drzewa W drzewie wyróżniamy zwykle jeden wierzchołek i nazywamy go korzeniem. Każdy inny wierzchołek jest połączony dokładnie jedną drogą z korzeniem. Wszystkie wierzchołki znajdujące się w takiej samej odległości od korzenia tworzą w tym drzewie poziom.

Poprzednik i następnik Jeśli dwa wierzchołki x, y są połączone krawędzią i x znajduje się na poziomie niższym (bliżej korzenia) niż y, to wierzchołek x nazywamy poprzednikiem, albo ojcem wierzchołka y, a y nazywamy następnikiem lub synem wierzchołka x.

Liście i wierzchołki wewnętrzne Wierzchołki, które nie mają następników nazywa się liśćmi drzewa, a pozostałe wierzchołki wierzchołkami wewnętrznymi.

Drzewo-przykład korzeń ojciec poziom syn liść liść liść liść

Drzewo binarne Drzewo, w którym każdy wierzchołek wewnętrzny ma co najwyżej dwa następniki nazywamy drzewem binarnym.

Wysokość drzewa Długość najdłuższej drogi od korzenia do liścia nazywamy wysokością drzewa.

Twierdzenie Każde drzewo o n wierzchołkach ma dokładnie n-1 krawędzi.