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

Wielkość: px
Rozpocząć pokaz od strony:

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

Transkrypt

1 TEORIA GRAFÓW W osiemnastym wieku mieszkańcy Królewca lubili spacerować po mostach na rzece Pregole, których mieli w mieście siedem. Plan mostów pokazuje rysunek. Ale takie zwykłe spacerowanie po jakimś czasie im się znudziło, i zaczęli zastanawiać się, czy jest taka trasa spacerowa, która przechodzi przez każdy most dokładnie raz, żadnego nie omija, i pozwala wrócić do punktu wyjścia. Nie potrafili sami rozwiązać tego problemu, więc napisali do znanego już wtedy matematyka Leonharda Eulera. Euler pokazał, że nie istnieje rozwiązanie tego zadania. (Jeśli wejdzie się po raz trzeci na wyspę, nie ma jak z niej wyjść.) Można tę sytuację przedstawić jako graf o wielokrotnych krawędziach: Trzeba w tym grafie znaleźć cykl Eulera, czyli cykl przechodzący przez wszystkie wierzchołki i wszystkie krawędzie tego grafu, ale przez każdą krawędź tylko raz. W opublikowanej w 1736 roku pracy Euler sformułował pierwsze twierdzenie teorii grafów, które dziś zapisujemy następująco: W grafie można znaleźć cykl Eulera wtedy i tylko wtedy, gdy graf jest spójny i każdy jego wierzchołek ma parzysty stopień. Znając to twierdzenie zawsze można stwierdzić, czy łamigłówka typu "narysuj figurę nie odrywając ołówka od kartki" ma rozwiązanie. Fleury podał algorytm, który pozwala znaleźć cykl Eulera w każdym grafie, w którym on istnieje. Spróbuj samodzielnie znaleźć cykl Eulera w poniższym grafie: 47

2 W tak zaetykietowanym grafie rozwiązaniem jest na przykład droga przechodząca kolejno przez wierzchołki: 1, 2, 3, 1, 12, 11, 1, 10, 11, 13, 12, 3, 13, 14, 3, 4, 14, 15, 4, 5, 6, 4, 16, 15, 13, 22, 15, 17, 16, 6, 17, 18, 6, 7, 18, 19, 17, 22, 11, 21, 22, 19, 7, 8, 9, 7, 20, 19, 21, 20, 9, 21, 10, 9, 1. (w tym rozwiązaniu przechodzimy po wszystkich krawędziach stopniowo poprzez trójkąty). Trzeba pamiętać, że nie jest to jedyne rozwiązanie, a zapis cyklu można zacząć od dowolnego wierzchołka. Graf to zbiór wierzchołków, który na rysunku zwykle reprezentujemy kropkami, na przykład: oraz krawędzi łączących wierzchołki, co na rysunku można przedstawić następująco: Czasem dopuszcza się wielokrotne krawędzie i pętle (czyli krawędzie o początku i końcu w tym samym wierzchołku): Niekiedy wygodnie jest rozważać grafy o krawędziach skierowanych (grafy skierowane): 48

3 Wiele zastosowań mają grafy ważone, w których każdej krawędzi przyporządkowano liczbę - wagę, która może oznaczać na przykład odległość między wierzchołkami: W grafach etykietowanych każdy wierzchołek ma swoją nazwę - etykietę: Przykład grafu skierowanego, ważonego, o zaetykietowanych wierzchołkach: Każdy rysunek grafu to tylko jedna z wielu jego reprezentacji graficznych. Każdy graf można narysować na wiele sposobów, które nazywamy reprezentacjami graficznymi tego grafu: 49

4 Co to jest algorytm grafowy? Problemem 'grafowym' nazywamy problem, który można rozwiązać używając pojęcia grafu. Algorytm rozwiązujący pewien problem 'grafowy' nazywamy algorytmem grafowym. Oto kilka przykładów ważniejszych problemów grafowych: 1. Problem kojarzenia małżenstw Dlaczego kojarzenia małżenstw? Załóżmy, że mamy k kawalerów i p panien oraz dla każdej z panien podany jest zbiór kawalerów, których zna. Czy jest możliwe wydanie za mąż każdej z kobiet za kawalera, którego zna? Sformułowanie problemu przy pomocy grafów. Zbudujmy graf, którego zbiór wierzchołków składa się z dwóch rozłącznych podzbiorów: zbioru kawalerów K i zbioru panien P. Wierzchołek x ze zbioru K łączymy krawędzią z wierzchołkiem y z P, jeśli panna y zna kawalera x. W otrzymanym grafie nie istnieją krawędzie między żadnymi dwoma wierzchołkami ze zbioru P ani żadnymi dwoma ze zbioru K. Jest to więc graf dwudzielny. Poszukiwany jest w tym grafie zbiór krawędzi M taki, że: 1. żadna para krawędzi należących do M nie ma wspólnego wierzchołka (tj. małżeństwa są rozłączne tzn. nie dopuszczamy bigamii), 2. każdy wierzchołek ze zbioru P jest końcem pewnej krawędzi ze zbioru M (tj. każda panna wychodzi za mąż). Zbiór krawędzi spełniający takie warunki nazywamy skojarzeniem doskonałym. Kiedy rozwiązanie problemu kojarzenia małżeństw istnieje? P. Hall sformułował i udowodnił w 1935 roku twierdzenie, które podaje warunek konieczny i wystarczający na to, by problem kojarzenia małżeństw miał rozwiązanie: Twierdzenia Halla Problem kojarzenia małżeństw ma rozwiązanie wtedy, gdy każde m panien zna łącznie co najmniej m kawalerów, dla m=1,2,...p. 50

5 Przykład. Oto przykładowy graf dla zbioru P złożonego z trzech panien i zbioru K złożonego z trzech kawalerów. Każda z panien zna dokładnie dwóch kawalerów. Skojarzenie doskonałe istnieje i może wyglądać następująco: Ania może wyjść za Tomka, Kasia za Arka a Zosia za Jasia. Popatrzmy teraz na następujący graf. W tym grafie skojarzenie doskonałe nie istnieje. Ania i Kasia znają tylko Tomka. Nie uda się więc znaleźć równocześnie męża dla obydwu panien. Zastosowania. Problem ten posiada bardziej poważne zastosowania. Przy użyciu tej samej metody możemy rozwiązać problem polegający na przydzieleniu pracownikom zajęć zgodnie z ich kwalifikacjami. W tym przypadku przez P należy rozumieć zbiór pracowników, K zbiór żądań do wykonania. Dwa wierzchołki x i y łączymy krawędzią, jeśli praca y jest zgodna z kwalifikacjami pracownika x (to znaczy może on ją wykonywać). 51

6 Problem znajdowania najkrótszej drogi Wyobraźmy sobie pewną mapę. Na mapie zaznaczone są drogi między poszczególnymi miastami oraz długości tych dróg. Wybierając z tej mapy dowolne dwa miasta A i B chcemy zaplanować najkrótszą trasę z miasta A do miasta B. Jak rozwiązać ten problem używając grafów? Stwórzmy graf, którego wierzchołki odpowiadają miastom znajdującym się na danej mapie. Wierzchołki łączymy krawędzią, jeśli istnieje bezpośrednia (nie przebiegająca przez żadne inne miasto zaznaczone na tej mapie) droga łącząca odpowiadające im miasta. Krawędziom nadajemy wagi równe długości danej drogi. Oczywiście długość drogi możemy zastąpić przez czas trwania podróży lub jej koszt. Znalezienie najkrótszej drogi z miasta A do miasta B oznacza znalezienie pomiędzy odpowiadającymi im wierzchołkami drogi o możliwie najmniejszej sumie wag krawędzi. Kiedy rozwiązanie tego problemu istnieje? Jesteśmy w stanie znaleźć najkrótszą drogę, jeśli droga między danymi miastami (wierzchołkami w grafie) w ogóle istnieje. Aby można było znaleźć najkrótsze drogi między dowolną parą miast utworzony dla danej mapy graf musi być spójny. Algorytm rozwiązujący ten problem. Najbardziej znanym algorytmem rozwiązującym ten problem jest algorytm Dijkstry. Opis algorytmu Dijkstry Algorytm Dijkstry znajduje najkrótszą drogę z wierzchołka s (zwanego źródłem) do wierzchołka t (zwanego ujściem) w grafie, w którym wszystkim krawędziom nadano nieujemne wagi. Polega na przypisaniu wierzchołkom pewnych wartości liczbowych. Taką liczbę nazwijmy cechą wierzchołka. Cechę wierzchołka v nazwiemy stałą (gdy jest równa długości najkrótszej drogi z s do v) albo, w przeciwnym przypadku, tymczasową. Na początku wszystkie wierzchołki, oprócz s, otrzymują tymczasowe cechy. źródło s otrzymuje cechę stałą równą 0. Następnie wszystkie wierzchołki połączone krawędzią z wierzchołkiem s otrzymują cechy tymczasowe równe odległości od s. Potem wybierany jest spośród nich wierzchołek o najmniejszej cesze tymczasowej. Oznaczmy go v. Cechę tego wierzchołka zamieniamy na stałą oraz przeglądamy wszystkie wierzchołki połączone z v. Jeśli droga z s do któregoś z nich, przechodząca przez v ma mniejszą długość od tymczasowej cechy tego wierzchołka, to zmniejszamy tą cechę. Ponownie znajdujemy wierzchołek o najmniejszej cesze tymczasowej i zamieniamy cechę tego wierzchołka na stałą. Kontynuujemy to postępowanie aż do momentu zamiany cechy wierzchołka t na stałą (czyli obliczenia długości najkrótszej drogi z s do t). Zastosowania. Algorytmy znajdujące najkrótszą drogę w grafie są wykorzystywane do wyznaczania najlepszej trasy pomiędzy dwoma miastami na 'komputerowych' mapach. Mapy takie przydatne są w pracy np. firm transportowych. 52

7 Problem chińskiego listonosza Dlaczego listonosza? W swojej pracy, listonosz wyrusza z poczty, dostarcza przesyłki adresatom, by na końcu wrócić na pocztę. Aby wykonać swoją pracę musi przejść po każdej ulicy w swoim rejonie co najmniej raz. Oczywiście chciałby, aby droga, którą przebędzie, była możliwie najkrótsza. Dlaczego chińskiego? Problem ten został sformułowany po raz pierwszy w języku teorii grafów przez chińskiego matematyka Mei Ku Kwana w 1962 roku. Sformułowanie problemu. Rozważmy graf, którego krawędzie odpowiadają ulicom w rejonie, odsługiwanym przez listonosza. Wierzchołki to po prostu skrzyżowania ulic. Krawędziom nadajemy wagi, które oznaczają odległości między dwoma skrzyżowaniami. Znalezienie możliwie najkrótszej drogi, którą musi przejść listonosz sprowadza się do znalezienia w tym grafie drogi o minimalnej sumie wag krawędzi, która przechodzi przez każdą krawędź co najmniej raz. Jeśli graf posiada cykl Eulera. Jeśli dany graf posiada cykl Eulera, to istnieje taka droga, która zaczyna i kończy się w tym samym punkcie i wymaga przejścia po każdej ulicy dokładnie raz. Zauważmy, że ponieważ każdy cykl Eulera przechodzi raz przez każdą krawędź to suma wag krawędzi (długość drogi, którą musi przejść listonosz) jest zawsze taka sama (nie zależy od wierzchołka, w którym cykl ten zaczyna się i kończy). Rozwiązaniem jest więc dowolny cykl Eulera w tym grafie. Jeśli graf nie posiada cyklu Eulera. W takim przypadku listonosz będzie zmuszony przejść niektórymi ulicami wielokrotnie. Rozwiązanie jest więc cyklem, w którym suma długości krawędzi wybranych więcej niż raz jest możliwie najmniejsza. Przykład Na rysunku pokazany jest pewien układ ulic, które tworzą rejon listonosza. Obok nazw ulic umieszczone są odległości w metrach. Prostokąt oznaczony literą P oznacza miejsce, w którym umieściliśmy pocztę, na której pracuje 'nasz' listonosz. Oto jak wygląda graf odpowiadający danemu układowi ulic. Zauważmy, że graf ten nie ma cyklu Eulera ponieważ posiada dwa wierzchołki, z których wychodzi nieparzysta liczba krawędzi. Na poniższym rysunku zaznaczono czerwoną kreską rozwiązanie czyli optymalną trasę listonosza. 53

8 Zwróćmy uwagę, że listonosz musi przejść dwukrotnie tylko ulicę Nowakowskiego, zaś pozostałe ulice dokładnie raz. Powyższa droga jest najkrótszą z możliwych ponieważ odcinek, po którym przechodzi dwukrotnie liczy tylko 500 metrów i nie istnieje trasa spełniająca zadane warunki o krótszym odcinku, który listonosz musi pokonać więcej niż raz. Czym różni się problem mostów królewieckich od problemu chińskiego listonosza? Rozwiązanie problemu chińskiego listonosza istnieje zawsze o ile graf jest spójny. Natomiast problem mostów królewieckich, a mówiąc ogólniej problem znalezienia cyklu Eulera w grafie, nie zawsze ma rozwiązanie. Jeśli jednak graf posiada cykl Eulera, to rozwiązanie jednego z tych problemów jest również rozwiązaniem dla drugiego. Algorytm Fleury'ego Jest to algorytm znajdujący cykl Eulera w grafie. Jak już wiemy, jeśli graf posiada taki cykl, to jest on rozwiązaniem rozważanego problemu. Po wprowadzeniu pewnych modyfikacji może posłużyć również do rozwiązywania problemu chińskiego listonosza w przypadku grafów, które nie mają cyklu Eulera. Opis Algorytmu Fleury'ego Startujemy z dowolnego wierzchołka. Każda kolejna krawędź, po której przechodzimy, wybierana jest spośród krawędzi wychodzących z wierzchołka, w którym aktualnie się znajdujemy. Wybieramy oczywiście krawędź, po której jeszcze nie przeszliśmy. O ile jest to możliwe, usunięcie wybranej krawędzi nie powinno rozciąć grafu na dwa 'kawałki'. Jeśli uda nam się, postępując w ten sposób, dojść do wierzchołka, z którego wyruszyliśmy i przejść przez wszystkie krawędzie, to otrzymana droga jest cyklem Eulera. 54

9 Problem komiwojażera Dlaczego 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 miedzy miastami. Jak powinien zaplanować trasę podróży, aby w sumie przebył możliwie najkrótsza drogę? Przez 'odległość' między miastami możemy rozumieć odległość w kilometrach, czas trwania podróży między tymi miastami albo koszt takiej podróży (na przykład cenę biletu lotniczego). W tym ostatnim przypadku, poszukiwanie optymalnej trasy polega na zminimalizowaniu całkowitych kosztów podróży. Tak więc możemy poszukiwać trasy najkrótszej albo najszybszej albo najtańszej. Zakładamy przy tym, że odległość miedzy dowolnymi dwoma miastami jest nie większa niż długość jakiekolwiek drogi łączącej te miasta, która wiedzie przez inne miasta. Założenie to tylko z pozoru wydaje się być zawsze spełnione. Rozważmy następujący przykład. Załóżmy, że interesuje nas czas trwania podróży koleją. Najszybsze połączenie z Katowic do Białegostoku wiedzie przez Warszawę. Czas trwania tej podróży traktujemy w tym przypadku jako 'odległość' z Katowic do Białegostoku. Sformułowanie problemu. Zbudujmy graf ważony, którego wierzchołki są miastami. Każda parę miast połączmy krawędziami. Każdej krawędzi nadajemy wagę równa 'odległości' miedzy miastami odpowiadającymi wierzchołkom, które są końcami tej krawędzi. Otrzymujemy w ten sposób graf pełny, który ma tyle wierzchołków, ile miast musi odwiedzić komiwojażer (wliczając w to miasto, z którego wyrusza). Odwiedzenie wszystkich miast odpowiada cyklowi, który przechodzi przez każdy wierzchołek danego grafu dokładnie raz. Cykl taki nazywamy cyklem Hamiltona. Poszukujemy więc w grafie pełnym cyklu Hamiltona o minimalnej sumie wag krawędzi. Przykład Na rysunku pokazano graf ważony o wierzchołkach odpowiadających pięciu miastom polskim. Wagami krawędzi są odległości podane w kilometrach. Poszukujemy rozwiązania następującego problemu: Komiwojażer wyrusza z Warszawy i chce odwiedzić wszystkie pozostałe cztery miasta a następnie wrócić do Warszawy. Jak powinien zaplanować podróż, aby przebył możliwie najmniejsza liczbę kilometrów? 1 4! Już przy pięciu miastach wszystkich możliwych tras podróży komiwojażera jest =. Można 2 2 zauważyć, że przy większej liczbie miast rozważanie wszystkich możliwości nie jest najlepszym pomysłem. 55

10 Dlaczego rozwiązanie tego problemu zawsze istnieje? Dowolny graf pełny posiada co najmniej jeden cykl Hamiltona. Ponieważ graf ma skończona liczbę wierzchołków, to w zbiorze cykli Hamiltona istnieje taki (niekoniecznie jedyny), który posiada minimalna sumę wag krawędzi. Algorytmy rozwiązujące problem komiwojażera. Istnieje wiele algorytmów rozwiązujących ten problem. Wszystkie mają jedną podstawową wadę. Wymagają rozważenia bardzo dużej liczby przypadków i czas ich działania może być bardzo długi. Niewielki przyrost liczby miast powoduje 'duży' wzrost ilości przypadków do rozważenia i tym samym czasu działania algorytmu. Jeden z możliwych algorytmów polega na obliczeniu całkowitej długości wszystkich istniejących w danym grafie cykli Hamiltona. Jest to jednak bardzo skomplikowane już dla liczby miast niewiele większej od pięciu. Na przykład dla 20 miast liczba możliwych tras Komiwojażera 19! wynosi wynosi = i cykli Hamiltona w grafie pełnym o 20 wierzchołkach istnieje 2 około Algorytmy przybliżone Czas rozwiązywania problemu komiwojażera można zmniejszyć stosując jeden ze znanych algorytmów przybliżonych, które nie wymagają rozważania aż tak dużej liczby przypadków. Jednak algorytmy takie nie zawsze znajdują optymalne rozwiązanie. Stworzona przez nie trasa może być znacznie 'dłuższa' od najkrótszej. Stosowanie algorytmów przybliżonych wynika z konieczności wyboru pomiędzy szybkością znajdowania a 'jakością' znalezionego rozwiązań. Z reguły zakłada się, że wynik działania takiego algorytmu nie może być gorszy od optymalnego o więcej niż pewna ustaloną z góry wartość. Znajdowanie cyklu Hamiltona. Znajdowanie cyklu Hamiltona w dowolnym grafie. W grafie pełnym cykl Hamiltona zawsze istnieje. W dowolnym grafie może jednak nie istnieć. Problem polegający na znalezieniu cyklu Hamiltona jest podobnie jak problem komiwojażera 'trudny' ze względu na długi czas działania znanych algorytmów. Do znalezienia takiego cyklu może wystarczyć 'trochę szczęścia'. Gorzej jest kiedy cykl Hamiltona w badanym grafie nie istnieje. W takim przypadku możemy nawet być zmuszeni do sprawdzenia wszystkich możliwych permutacji zbioru wierzchołków, aby uzyskać pewność, że cykl taki nie istnieje. 56

11 Problem niezawodności sieci Wyobraźmy sobie, że chcemy zaprojektować sieć komunikacyjną (np. telekomunikacyjną, drogową, komputerową). Składa się ona z pewnej liczby punktów węzłowych (np. terminali komputerowych) i bezpośrednich połączeń (linii) między niektórymi z nich. Jak przedstawić sieć komunikacyjną przy pomocy grafu? Sieć taką możemy przedstawić za pomocą grafu, którego wierzchołki odpowiadają punktom węzłowym a krawędź miedzy dwoma wierzchołkami oznacza bezpośrednie połączenie linią danych dwóch punktów węzłowych. Oto przykładowa sieć składająca się z 6 punktów węzłowych oznaczonych literami A,B,C,D,E,F i pewnych krawędzi między nimi Wiemy, że nic nie jest doskonałe i sieć narażona jest na awarie. Spójność wierzchołkowa takiego grafu jest równa minimalnej liczbie awarii w punktach węzłowych sieci, które spowodują awarię całej sieci (to znaczy między niektórymi węzłami zostanie zerwane połączenie). Natomiast spójność krawędziowa oznacza minimalną liczbę awarii łączy między węzłami, które spowodują awarię sieci. Przez niezawodność sieci możemy rozumieć maksymalną liczbę awarii, których wystąpienie nie spowoduje awarii całej sieci. Im większa spójność grafu tym większa niezawodność sieci Jak skonstruować sieć by jej niezawodność była możliwie największa? Oczywiście im więcej linii (krawędzi) tym niezawodność większa. Z drugiej jednak strony zbudowanie każdego połączenia kosztuje. Możemy założyć, że szukamy możliwie najtańszej sieci o z góry założonej niezawodności, bądź szukamy sieci o ustalonym koszcie i możliwie największej niezawodności. Jedno z możliwych sformułowań tego problemu wygląda następująco: Sformułowanie problemu. Załóżmy, że dana jest liczba punktów węzłowych oraz żądana niezawodność sieci k (liczba 'dopuszczalnych' awarii). Zbudowanie każdego bezpośredniego połączenia obarczone jest pewnym kosztem jednostkowym (jest to pewne uproszczenie - w rzeczywistości koszty budowy połączeń są różne). Chcemy zaprojektować sieć o żądanej niezawodności, której koszt budowy będzie możliwie najmniejszy. Poszukujemy więc grafu o n wierzchołkach i możliwie najmniejszej liczbie krawędzi, którego spójność wierzchołkowa lub spójność krawędziowa wynosi k. 57

12 Znajdowanie liczby chromatycznej grafu Sformułowanie problemu. Dane: graf G Szukane: liczba chromatyczna grafu G Przykładowe zastosowanie Przy pomocy algorytmów znajdujących optymalne pokolorowanie wierzchołków grafu można rozwiązać następujący problem dotyczący składowania substancji chemicznych: Zakłady chemiczne wykorzystują przy produkcji n surowców chemicznych. Wiadomo, że niektóre substancje nie mogą być przechowywane razem, gdyż zetknięcie ich ze sobą spowodowałoby 'zniszczenie magazynu', ewentualnie katastrofę ekologiczną. Jaka jest minimalna liczba magazynów potrzebna do przechowywania wszystkich surowców chemicznych używanych w tej fabryce? Jak to zrobić używając grafu? Tworzymy graf, którego n wierzchołków odpowiada poszczególnym surowcom chemicznym. Dwa wierzchołki łączymy krawędzią jeśli nie mogą być przechowywane razem. Minimalna liczba magazynów potrzebnych do składowania tych surowców jest równa liczbie chromatycznej tego grafu. Dlaczego tak jest? Rozważmy dowolne pokolorowanie wierzchołków tego grafu, w którym każde dwa wierzchołki połączone krawędzią są pokolorowane innym kolorem. Surowce odpowiadające wierzchołkom pokolorowanym tym samym kolorem mogą być składowane w jednym magazynie! Znajdowanie indeksu chromatycznego grafu Sformułowanie problemu. Dane: graf G Szukane: indeks chromatyczny grafu G Przykładowe zastosowanie. Rozważmy następujący problem. Dany jest zbiór m nauczycieli oraz zbiór n klas. Podane są także liczby godzin zajęć jakie musi odbyć w ciągu tygodnia dany nauczyciel z każdą z klas. Szukana jest minimalna liczba godzin w tygodniu, w czasie których mogą odbyć się wszystkie zajęcia. Wiadomo, że w danym momencie czasu nauczyciel może uczyć tylko jedną klasę i każda klasa może być uczona przez tylko jednego nauczyciela. Jak rozwiązać problem układania planu zajęć przy pomocy grafów? Stwórzmy graf dwudzielny, którego zbiór wierzchołków można podzielić na dwa rozłączne zbiory odpowiadające nauczycielom oraz klasom. W grafie tym dopuszczamy istnienie wielu krawędzi między każdą parą wierzchołków. Wierzchołek odpowiadający nauczycielowi łączymy tyloma krawędziami z wierzchołkiem odpowiadającym klasie ile godzin zajęć musi on odbyć z tą klasą w ciągu tygodnia. Zauważmy, że jeśli pokolorujemy krawędzie tego grafu tak, aby każde dwie mające wspólny koniec były różnych kolorów, to krawędzie pokolorowane tym samym kolorem odpowiadają zajęciom, które mogą odbywać się równocześnie. Poszukujemy więc minimalnej liczby kolorów potrzebnych do pokolorowania w ten sposób wszystkich krawędzi. Innymi słowy, poszukiwany jest indeks chromatyczny tego grafu. Problem ten można oczywiście skomplikować dodając założenia dotyczące sal, w których zajęcia mogą się odbywać, bądź narzucając pewne terminy, w których dane zajęcia muszą się odbyć. 58

13 Przykład Przypuśćmy, że mamy 5 nauczycieli: profesorów Mroza, Nowaka, Pawlaka, Cicho i Lisa oraz 4 klasy maturalne. Na poniższym rysunku pokazany jest graf stworzony na podstawie informacji o tym ile godzin zajęć w tygodniu z daną klasą ma poprowadzić każdy z nauczycieli. Dla przykładu: profesor Mróz ma 2 godziny z IVa i 1 godzinę z IVb a profesor Nowak po 1 godzinie z IVa i IVc. Indeks chromatyczny tego grafu wynosi 4. Czyli w ciągu 4 godzin uda się przeprowadzić wszystkie zajęcia. Widać, że mniejsza liczba godzin nie wystarczy ponieważ profesor Lis musi przeprowadzić 4 godziny zajęć. Również klasy IVa, IVc oraz IVd mają zaplanowane po 4 godziny. A oto jak wygląda pokolorowanie krawędzi tego grafu na 4 kolory, w którym żadne dwie krawędzie o wspólnym wierzchołku nie mają tego samego koloru. Jeżeli przyjmiemy, że każdy kolor oznacza pewien 45 minutowy okres czasu (np ), to w prosty sposób tak pokolorowany graf można przekształcić w poniższą tabelę prof. Mróz IVa IVb IVa prof. Nowak IVc IVa prof. Pawlak IVd IVa IVc prof. Cicho IVc IVd IVb prof. Lis IVb IVd IVc IVd 59

14 W wierszach odpowiadających poszczególnym nauczycielom wypisane są klasy, które profesor powinien uczyć o danej godzinie (przy czym u góry każdej kolumny zamiast godziny jest kolor). Profesor Mróz ma najpierw godzinę z IVa potem godzinę z IVb, znowu 1 lekcję z IVa i na koniec godzinę wolną. Kolejność terminów (kolorów) możemy ustawić w dowolny sposób. Czyli profesor Mróz może mieć wpierw 2 godziny z IVa a potem 1 lekcję z IVb. Wymaga to tylko zamiany miejscami 2-ej i 3-ej kolumny w tabeli. Znajdowanie grubości grafu Sformułowanie problemu. Dane: graf G Szukane: grubość grafu G Przykładowe zastosowanie. Przewodzącą płytkę, na której jednej stronie drukowane są części układu elektronicznego oraz przewody je łączące, nazywamy obwodem drukowanym. Projektując obwód drukowany należy pamiętać o tym, że przewody nie mogą się przecinać ponieważ nie są izolowane. Wynika stąd, że graf odpowiadający obwodowi drukowanemu musi być płaski. Rozpatrzmy graf, który odpowiada całemu układowi elektronicznemu. Wierzchołkami są elementy tego układu a krawędziami przewody. Grubość takiego grafu jest to minimalna liczba obwodów drukowanych potrzebnych do złożenia całego układu. Mózg człowieka (przykład grafu), a procesor komputera Mówiąc o sieciach neuronowych często zamiennie używamy nazwy neurokomputery mając na myśli urządzenia, których budowa podobna jest do biologicznej struktury mózgu ludzkiego. Stąd też wywodzi się nazwa, podkreślająca, iż pierwowzorem podstawowego elementu sieci neuronowej jest właśnie neuron biologiczny - elementarny składnik mózgu. Oto przykład sieci - jej węzły to neurony, ich zadaniem jest przetwarzanie informacji wejściowej i przesyłanie wynikowego sygnału. To oczywiście tylko jeden z przykładów wielu modeli sieci. Mózg człowieka ciągle jest najpotężniejszym z istniejących obecnie urządzeń stosowanych do przetwarzania informacji w czasie rzeczywistym. Mózg i komputer : jakie są podobieństwa i jakie różnice. Wyobraźmy sobie komputer, który rozwiązując pewien problem sam się uczy. Najpierw wprowadzamy do niego informacje o postawionym zadaniu, dane wejściowe problemu oraz wybrane przykłady wraz z poprawnymi ich rozwiązaniami. Następnie komputer analizuje wprowadzone informacje i ucząc się na swoich błędach osiąga w końcu taki stan, w którym postawiony problem może być rozwiązany. W takiej działalności można zauważyć wiele podobieństw do działania człowieka. 60

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

Suma dwóch grafów. Zespolenie dwóch grafów Suma dwóch grafów G 1 = ((G 1 ), E(G 1 )) G 2 = ((G 2 ), E(G 2 )) (G 1 ) i (G 2 ) rozłączne Suma G 1 G 2 graf ze zbiorem wierzchołków (G 1 ) (G 2 ) i rodziną krawędzi E(G 1 ) E(G 2 ) G 1 G 2 G 1 G 2 Zespolenie

Bardziej szczegółowo

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

Grafy dla każdego. dr Krzysztof Bryś. Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska. Grafy dla każdego dr Krzysztof Bryś brys@mini.pw.edu.pl Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska www.mini.pw.edu.pl Warszawa, 28 marca 2015 Graf składa się z elementów pewnego zbioru

Bardziej szczegółowo

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

Teoria grafów dla małolatów. Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska Teoria grafów dla małolatów Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska Wstęp Matematyka to wiele różnych dyscyplin Bowiem świat jest bardzo skomplikowany wymaga rozważenia

Bardziej szczegółowo

W osiemnastym wieku mieszkańcy Królewca lubili spacerować po mostach na rzece Pregole, których mieli w mieście siedem. Plan mostów pokazuje rysunek.

W osiemnastym wieku mieszkańcy Królewca lubili spacerować po mostach na rzece Pregole, których mieli w mieście siedem. Plan mostów pokazuje rysunek. Mosty królewieckie W osiemnastym wieku mieszkańcy Królewca lubili spacerować po mostach na rzece Pregole których mieli w mieście siedem. Plan mostów pokazuje rysunek. Ale takie zwykłe spacerowanie po jakimś

Bardziej szczegółowo

Algorytm chińskiego listonosza Katarzyna Ignaszewska SPI51. Temat: Problem chińskiego listonosza, czyli jak obejść miasto najmniejszym nakładem sił.

Algorytm chińskiego listonosza Katarzyna Ignaszewska SPI51. Temat: Problem chińskiego listonosza, czyli jak obejść miasto najmniejszym nakładem sił. Scenariusz lekcji Temat: Problem chińskiego listonosza, czyli jak obejść miasto najmniejszym nakładem sił. W roku 1962 chioski matematyk Mei-Ko Kwan zaproponował następujący problem: Listonosz roznosząc

Bardziej szczegółowo

Wyznaczanie optymalnej trasy problem komiwojażera

Wyznaczanie optymalnej trasy problem komiwojażera Wyznaczanie optymalnej trasy problem komiwojażera Optymalizacja w podejmowaniu decyzji Opracowała: mgr inż. Natalia Malinowska Wrocław, dn. 28.03.2017 Wydział Elektroniki Politechnika Wrocławska Plan prezentacji

Bardziej szczegółowo

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

Teoria grafów II. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak Teoria grafów II Materiały pomocnicze do wykładu wykładowca: dr Magdalena Kacprzak Graf planarny Graf planarny Graf, który może być narysowany tak, by uniknąć przecinania się krawędzi, nazywamy grafem

Bardziej szczegółowo

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

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA DROGI i CYKLE w grafach Dla grafu (nieskierowanego) G = ( V, E ) drogą z wierzchołka v 0 V do v t V nazywamy ciąg (naprzemienny) wierzchołków i krawędzi grafu: ( v 0, e, v, e,..., v t, e t, v t ), spełniający

Bardziej szczegółowo

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

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14 Matematyka dyskretna Andrzej Łachwa, UJ, 2019 andrzej.lachwa@uj.edu.pl 1B/14 Drogi w grafach Marszruta (trasa) w grafie G z wierzchołka w do wierzchołka u to skończony ciąg krawędzi w postaci. W skrócie

Bardziej szczegółowo

Elementy teorii grafów Elementy teorii grafów

Elementy teorii grafów Elementy teorii grafów Spis tresci 1 Spis tresci 1 Często w zagadnieniach praktycznych rozważa się pewien zbiór obiektów wraz z zależnościami jakie łączą te obiekty. Dla przykładu można badać pewną grupę ludzi oraz strukturę

Bardziej szczegółowo

Matematyka dyskretna

Matematyka dyskretna Matematyka dyskretna Wykład 13: Teoria Grafów Gniewomir Sarbicki Literatura R.J. Wilson Wprowadzenie do teorii grafów Definicja: Grafem (skończonym, nieskierowanym) G nazywamy parę zbiorów (V (G), E(G)),

Bardziej szczegółowo

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

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA DRZEWA i LASY Drzewem nazywamy graf spójny nie zawierający cykli elementarnych. Lasem nazywamy graf nie zawierający cykli elementarnych. Przykłady drzew i lasów takie krawędzie są wykluczone drzewo las

Bardziej szczegółowo

TEORIA GRAFÓW I SIECI

TEORIA GRAFÓW I SIECI TEORIA GRAFÓW I SIECI Temat nr 3: Marszruty, łańcuchy, drogi w grafach dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl tel.: 261-83-95-04, p.225/100

Bardziej szczegółowo

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

Kolorowanie wierzchołków Kolorowanie krawędzi Kolorowanie regionów i map. Wykład 8. Kolorowanie Wykład 8. Kolorowanie 1 / 62 Kolorowanie wierzchołków - definicja Zbiory niezależne Niech G będzie grafem bez pętli. Definicja Mówimy, że G jest grafem k kolorowalnym, jeśli każdemu wierzchołkowi możemy

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Twierdzenie 2.1 Niech G będzie grafem prostym

Bardziej szczegółowo

KURS MATEMATYKA DYSKRETNA

KURS MATEMATYKA DYSKRETNA KURS MATEMATYKA DYSKRETNA LEKCJA 28 Grafy hamiltonowskie ZADANIE DOMOWE www.akademia.etrapez.pl Strona 1 Część 1: TEST Zaznacz poprawną odpowiedź (tylko jedna jest prawdziwa). Pytanie 1 Drogę nazywamy

Bardziej szczegółowo

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

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak 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

Bardziej szczegółowo

Wykład 4. Droga i cykl Eulera i Hamiltona

Wykład 4. Droga i cykl Eulera i Hamiltona Wykład 4. i Hamiltona Wykład 4. i Hamiltona 1 / 35 Grafy Eulera Niech G będzie grafem spójnym. Definicja Jeżeli w grafie G istnieje zamknięta droga prosta zawierająca wszystkie krawędzie grafu, to taką

Bardziej szczegółowo

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

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona Wykład 4. Droga i cykl Eulera i Hamiltona 1 / 92 Grafy Eulera Droga i cykl Eulera Niech G będzie grafem spójnym. Definicja Jeżeli w grafie G istnieje zamknięta droga prosta zawierająca wszystkie krawędzie

Bardziej szczegółowo

Kolorowanie wierzchołków

Kolorowanie wierzchołków Kolorowanie wierzchołków Mając dany graf, pokolorować jego wierzchołki w taki sposób, aby każde dwa wierzchołki sąsiednie miały inny kolor. Każda krawędź łączy wierzchołki różnych kolorów. Takie pokolorowanie

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 03/0 Przeszukiwanie w głąb i wszerz I Przeszukiwanie metodą

Bardziej szczegółowo

Graf. Definicja marca / 1

Graf. Definicja marca / 1 Graf 25 marca 2018 Graf Definicja 1 Graf ogólny to para G = (V, E), gdzie V jest zbiorem wierzchołków (węzłów, punktów grafu), E jest rodziną krawędzi, które mogą być wielokrotne, dokładniej jednoelementowych

Bardziej szczegółowo

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

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II Wykład 6. Drzewa cz. II 1 / 65 drzewa spinające Drzewa spinające Zliczanie drzew spinających Drzewo T nazywamy drzewem rozpinającym (spinającym) (lub dendrytem) spójnego grafu G, jeżeli jest podgrafem

Bardziej szczegółowo

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

a) 7 b) 19 c) 21 d) 34 Zadanie 1. Pytania testowe dotyczące podstawowych własności grafów. Zadanie 2. Przy każdym z zadań może się pojawić polecenie krótkiej charakterystyki algorytmu. Zadanie 3. W zadanym grafie sprawdzenie

Bardziej szczegółowo

MODELE SIECIOWE 1. Drzewo rozpinające 2. Najkrótsza droga 3. Zagadnienie maksymalnego przepływu źródłem ujściem

MODELE SIECIOWE 1. Drzewo rozpinające 2. Najkrótsza droga 3. Zagadnienie maksymalnego przepływu źródłem ujściem MODELE SIECIOWE 1. Drzewo rozpinające (spanning tree) w grafie liczącym n wierzchołków to zbiór n-1 jego krawędzi takich, że dowolne dwa wierzchołki grafu można połączyć za pomocą krawędzi należących do

Bardziej szczegółowo

Matematyka od zaraz zatrudnię

Matematyka od zaraz zatrudnię Uniwersytet Jagielloński Gdzie jest matematyka? Soczewka, 26-28 listopada 2010 Kolorowanie grafów Dobre kolorowanie wierzchołków grafu, to nadanie im kolorów w taki sposób, że każde dwa wierzchołki połaczone

Bardziej szczegółowo

Wykłady z Matematyki Dyskretnej

Wykłady z Matematyki Dyskretnej Wykłady z Matematyki Dyskretnej dla kierunku Informatyka dr Instytut Informatyki Politechnika Krakowska Wykłady na bazie materiałów: dra hab. Andrzeja Karafiata dr hab. Joanny Kołodziej, prof. PK Kolorowanie

Bardziej szczegółowo

Twierdzenie Halla o małżeństwach

Twierdzenie Halla o małżeństwach Twierdzenie Halla o małżeństwach Tomasz Tkocz Streszczenie. Notatki te, przygotowane do referatu wygłoszonego na kółku w II LO w Rybniku, pokazują jak można rozwiązywać życiowe problemy oraz te bardziej

Bardziej szczegółowo

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

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych. Grafy Graf Graf (ang. graph) to zbiór wierzchołków (ang. vertices), które mogą być połączone krawędziami (ang. edges) w taki sposób, że każda krawędź kończy się i zaczyna w którymś z wierzchołków. Graf

Bardziej szczegółowo

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

SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH. Skojarzeniem w grafie G nazywamy dowolny podzbiór krawędzi parami niezależnych. SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH. Rozważamy graf G = (V, E) Dwie krawędzie e, e E nazywamy niezależnymi, jeśli nie są incydentne ze wspólnym wierzchołkiem. Skojarzeniem w grafie G nazywamy dowolny

Bardziej szczegółowo

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

Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie mosty w Królewcu dokładnie jeden raz? 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

Bardziej szczegółowo

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

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA Zad. 1 (12p.)Niech n 3k > 0. Zbadać jaka jest najmniejsza możliwa liczba krawędzi w grafie, który ma dokładnie n wierzchołków oraz dokładnie k składowych, z których

Bardziej szczegółowo

Temat 9. Zabłocone miasto Minimalne drzewa rozpinające

Temat 9. Zabłocone miasto Minimalne drzewa rozpinające Temat 9 Zabłocone miasto Minimalne drzewa rozpinające Streszczenie Nasze życie związane jest z funkcjonowaniem wielu sieci: telefonicznych, energetycznych, komputerowych i drogowych. W przypadku każdej

Bardziej szczegółowo

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

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów Wykład 2. Reprezentacja komputerowa grafów 1 / 69 Macierz incydencji Niech graf G będzie grafem nieskierowanym bez pętli o n wierzchołkach (x 1, x 2,..., x n) i m krawędziach (e 1, e 2,..., e m). 2 / 69

Bardziej szczegółowo

Opracowanie prof. J. Domsta 1

Opracowanie prof. J. Domsta 1 Opracowanie prof. J. Domsta 1 Algorytm FLEURY'ego: Twierdzenie 6.5 G-graf eulerowski. Wtedy cykl Eulera otrzymujemy nastepująco: a) Start w dowolnym wierzchołku b) Krawędzie w dowolnej kolejności po przebyciu

Bardziej szczegółowo

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY ERIAŁY DO WYKŁADU GRAFY Graf nieskierowany Grafem nieskierowanym nazywamy parę G = (V, E), gdzie V jest pewnym zbiorem skończonym (zwanym zbiorem wierzchołków grafu G), natomiast E jest zbiorem nieuporządkowanych

Bardziej szczegółowo

6a. Grafy eulerowskie i hamiltonowskie

6a. Grafy eulerowskie i hamiltonowskie 6a. Grafy eulerowskie i hamiltonowskie Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny6a. w Krakowie) Grafy eulerowskie i hamiltonowskie

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Informacje podstawowe 1. Konsultacje: pokój

Bardziej szczegółowo

Algorytmy genetyczne

Algorytmy genetyczne Algorytmy genetyczne Motto: Zamiast pracowicie poszukiwać najlepszego rozwiązania problemu informatycznego lepiej pozwolić, żeby komputer sam sobie to rozwiązanie wyhodował! Algorytmy genetyczne służą

Bardziej szczegółowo

Działanie algorytmu oparte jest na minimalizacji funkcji celu jako suma funkcji kosztu ( ) oraz funkcji heurystycznej ( ).

Działanie algorytmu oparte jest na minimalizacji funkcji celu jako suma funkcji kosztu ( ) oraz funkcji heurystycznej ( ). Algorytm A* Opracowanie: Joanna Raczyńska 1.Wstęp Algorytm A* jest heurystycznym algorytmem służącym do znajdowania najkrótszej ścieżki w grafie. Jest to algorytm zupełny i optymalny, co oznacza, że zawsze

Bardziej szczegółowo

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle Paweł Szołtysek 12 czerwca 2008 Streszczenie Planowanie produkcji jest jednym z problemów optymalizacji dyskretnej,

Bardziej szczegółowo

OPTYMALIZACJA W LOGISTYCE

OPTYMALIZACJA W LOGISTYCE OPTYMALIZACJA W LOGISTYCE Optymalizacja zadań bazy transportowej ( część 1 ) Opracowano na podstawie : Stanisław Krawczyk, Metody ilościowe w logistyce ( przedsiębiorstwa ), Wydawnictwo C. H. Beck, Warszawa

Bardziej szczegółowo

Algorytmy i Struktury Danych.

Algorytmy i Struktury Danych. Algorytmy i Struktury Danych. Grafy dr hab. Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 9 Bożena Woźna-Szcześniak (AJD) Algorytmy i Struktury Danych. Wykład 9 1 / 53

Bardziej szczegółowo

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

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 Drzewa Las - graf, który nie zawiera cykli Drzewo - las spójny 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 Niech T graf o n wierzchołkach będący

Bardziej szczegółowo

Przykładowe zadania z teorii liczb

Przykładowe zadania z teorii liczb Przykładowe zadania z teorii liczb I. Podzielność liczb całkowitych. Liczba a = 346 przy dzieleniu przez pewną liczbę dodatnią całkowitą b daje iloraz k = 85 i resztę r. Znaleźć dzielnik b oraz resztę

Bardziej szczegółowo

6d. Grafy dwudzielne i kolorowania

6d. Grafy dwudzielne i kolorowania 6d. Grafy dwudzielne i kolorowania Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny w6d. Krakowie) Grafy dwudzielne i kolorowania zima

Bardziej szczegółowo

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

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV Algorytmy grafowe Wykład 1 Podstawy teorii grafów Reprezentacje grafów Tomasz Tyksiński CDV Rozkład materiału 1. Podstawowe pojęcia teorii grafów, reprezentacje komputerowe grafów 2. Przeszukiwanie grafów

Bardziej szczegółowo

Teoria grafów dla małolatów

Teoria grafów dla małolatów Teoria grafów dla małolatów Andrzej P.Urbański Instytut Informatyki Politechnika Poznańska Wstęp Matematyka w szkole podstawowej kojarzy się przede wszystkim z arytmetyką, ale współcześni matematycy rzadko

Bardziej szczegółowo

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

Wprowadzenie Podstawy Fundamentalne twierdzenie Kolorowanie. Grafy planarne. Przemysław Gordinowicz. Instytut Matematyki, Politechnika Łódzka Grafy planarne Przemysław Gordinowicz Instytut Matematyki, Politechnika Łódzka Grafy i ich zastosowania Wykład 12 Plan prezentacji 1 Wprowadzenie 2 Podstawy 3 Fundamentalne twierdzenie 4 Kolorowanie grafów

Bardziej szczegółowo

Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie

Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie OPIS ZAGADNIENIA Zagadnienie transportowe służy głównie do obliczania najkorzystniejszego

Bardziej szczegółowo

W. Guzicki Zadanie 41 z Informatora Maturalnego poziom podstawowy 1

W. Guzicki Zadanie 41 z Informatora Maturalnego poziom podstawowy 1 W. Guzicki Zadanie 41 z Informatora Maturalnego poziom podstawowy 1 W tym tekście zobaczymy rozwiązanie zadania 41 z Informatora o egzaminie maturalnym z matematyki od roku szkolnego 014/015 oraz rozwiązania

Bardziej szczegółowo

Algorytmika Problemów Trudnych

Algorytmika Problemów Trudnych Algorytmika Problemów Trudnych Wykład 9 Tomasz Krawczyk krawczyk@tcs.uj.edu.pl Kraków, semestr letni 2016/17 plan wykładu Algorytmy aproksymacyjne: Pojęcie algorytmu aproksymacyjnego i współczynnika aproksymowalności.

Bardziej szczegółowo

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.

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. SPÓJNOŚĆ Graf jest spójny, gdy dla każdego podziału V na dwa rozłączne podzbiory A i B istnieje krawędź z A do B. Definicja równoważna: Graf jest spójny, gdy każde dwa wierzchołki są połączone ścieżką

Bardziej szczegółowo

Programowanie sieciowe. Tadeusz Trzaskalik

Programowanie sieciowe. Tadeusz Trzaskalik Programowanie Tadeusz Trzaskalik 8.1. Wprowadzenie Słowa kluczowe Drzewo rozpinające Minimalne drzewo rozpinające Najkrótsza droga w sieci Wierzchołek początkowy Maksymalny przepływ w sieci Źródło Ujście

Bardziej szczegółowo

5c. Sieci i przepływy

5c. Sieci i przepływy 5c. Sieci i przepływy Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny w Krakowie) 5c. Sieci i przepływy zima 2016/2017 1 / 40 1 Definicje

Bardziej szczegółowo

Algorytmy wyznaczania centralności w sieci Szymon Szylko

Algorytmy wyznaczania centralności w sieci Szymon Szylko Algorytmy wyznaczania centralności w sieci Szymon Szylko Zakład systemów Informacyjnych Wrocław 10.01.2008 Agenda prezentacji Cechy sieci Algorytmy grafowe Badanie centralności Algorytmy wyznaczania centralności

Bardziej szczegółowo

KONSPEKT FUNKCJE cz. 1.

KONSPEKT FUNKCJE cz. 1. KONSPEKT FUNKCJE cz. 1. DEFINICJA FUNKCJI Funkcją nazywamy przyporządkowanie, w którym każdemu elementowi zbioru X odpowiada dokładnie jeden element zbioru Y Zbiór X nazywamy dziedziną, a jego elementy

Bardziej szczegółowo

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania Politechnika Poznańska Modele i narzędzia optymalizacji w systemach informatycznych zarządzania Joanna Józefowska POZNAŃ 2010/11 Spis treści Rozdział 1. Metoda programowania dynamicznego........... 5

Bardziej szczegółowo

E ' E G nazywamy krawędziowym zbiorem

E ' E G nazywamy krawędziowym zbiorem Niech G będzie grafem spójnym. Wierzchołek x nazywamy rozcinającym, jeśli G\{x} jest niespójny. Niech G będzie grafem spójnym. V ' V G nazywamy zbiorem rozcinającym jeśli G\V' jest niespójny Niech G będzie

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Matematyka dyskretna. Andrzej Łachwa, UJ, /15 Matematyka dyskretna Andrzej Łachwa, UJ, 2014 andrzej.lachwa@uj.edu.pl 15/15 TWIERDZENIE HALLA Twierdzenie o kojarzeniu małżeństw rozważa dwie grupy dziewcząt i chłopców, oraz podgrupy dziewczyn i podgrupy

Bardziej szczegółowo

Digraf. 13 maja 2017

Digraf. 13 maja 2017 Digraf 13 maja 2017 Graf skierowany, digraf, digraf prosty Definicja 1 Digraf prosty G to (V, E), gdzie V jest zbiorem wierzchołków, E jest rodziną zorientowanych krawędzi, między różnymi wierzchołkami,

Bardziej szczegółowo

Algorytmiczna teoria grafów

Algorytmiczna teoria grafów Przedmiot fakultatywny 20h wykładu + 20h ćwiczeń 21 lutego 2014 Zasady zaliczenia 1 ćwiczenia (ocena): kolokwium, zadania programistyczne (implementacje algorytmów), praca na ćwiczeniach. 2 Wykład (egzamin)

Bardziej szczegółowo

Matematyka Dyskretna - zadania

Matematyka Dyskretna - zadania zad. 1. Chcemy zdefiniować rekurencyjnie zbiór Z wszystkich trójkątów równoramiennych ABC, gdzie współrzędne wierzchołków będą liczbami całkowitymi, wierzchołek A zawsze będzie leżeć w początku układu

Bardziej szczegółowo

TEORIA GRAFÓW I SIECI

TEORIA GRAFÓW I SIECI 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

Bardziej szczegółowo

1 Automaty niedeterministyczne

1 Automaty niedeterministyczne Szymon Toruńczyk 1 Automaty niedeterministyczne Automat niedeterministyczny A jest wyznaczony przez następujące składniki: Alfabet skończony A Zbiór stanów Q Zbiór stanów początkowych Q I Zbiór stanów

Bardziej szczegółowo

MIO - LABORATORIUM. Imię i nazwisko Rok ak. Gr. Sem. Komputer Data ... 20 / EC3 VIII LAB...

MIO - LABORATORIUM. Imię i nazwisko Rok ak. Gr. Sem. Komputer Data ... 20 / EC3 VIII LAB... MIO - LABORATORIUM Temat ćwiczenia: TSP - Problem komiwojażera Imię i nazwisko Rok ak. Gr. Sem. Komputer Data Podpis prowadzącego... 20 / EC3 VIII LAB...... Zadanie Zapoznać się z problemem komiwojażera

Bardziej szczegółowo

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

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott Struktury danych i złożoność obliczeniowa Wykład 7 Prof. dr hab. inż. Jan Magott Problemy NP-zupełne Transformacją wielomianową problemu π 2 do problemu π 1 (π 2 π 1 ) jest funkcja f: D π2 D π1 spełniająca

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Matematyka dyskretna. Andrzej Łachwa, UJ, /15 Matematyka dyskretna Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl 15/15 Twierdzenie Dla grafu prostego następujące warunki są równoważne: 1) jest drzewem, 2) nie zawiera cykli i ma krawędzi, 3)

Bardziej szczegółowo

Materiały dla finalistów

Materiały dla finalistów Materiały dla finalistów Malachoviacus Informaticus 2016 11 kwietnia 2016 Wprowadzenie Poniższy dokument zawiera opisy zagadnień, które będą niezbędne do rozwiązania zadań w drugim etapie konkursu. Polecamy

Bardziej szczegółowo

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

Złożoność obliczeniowa klasycznych problemów grafowych Złożoność obliczeniowa klasycznych problemów grafowych Oznaczenia: G graf, V liczba wierzchołków, E liczba krawędzi 1. Spójność grafu Graf jest spójny jeżeli istnieje ścieżka łącząca każdą parę jego wierzchołków.

Bardziej szczegółowo

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

Kombinowanie o nieskończoności. 2. Wyspy, mosty, mapy i kredki materiały do ćwiczeń Kombinowanie o nieskończoności. 2. Wyspy, mosty, mapy i kredki materiały do ćwiczeń Projekt Matematyka dla ciekawych świata spisał: Michał Korch 15 marzec 2018 Szybkie przypomnienie z wykładu Prezentacja

Bardziej szczegółowo

KURS MATEMATYKA DYSKRETNA

KURS MATEMATYKA DYSKRETNA KURS MATEMATYKA DYSKRETNA LEKCJA 28 Grafy hamiltonowskie Odpowiedzi do zadania domowego www.akademia.etrapez.pl Strona 1 Część 1: TEST 1) b 2) a 3) b 4) d 5) c 6) d 7) b 8) b 9) d 10) a Zad. 1 ODPOWIEDZI

Bardziej szczegółowo

TEORIA GRAFÓW I SIECI

TEORIA GRAFÓW I SIECI TEORIA GRAFÓW I SIECI Temat nr 7: Przydziały w grafach i sieciach dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl tel.: 26-83-95-04, p.225/00 Zakład

Bardziej szczegółowo

Graf to nie tylko tytuł szlachecki

Graf to nie tylko tytuł szlachecki Kàcik olimpijski Grafy Graf to nie tylko tytuł szlachecki karta pracy Graf to nie tylko tytuł szlachecki Graf co to takiego? Pojęcie grafu wprowadził szwajcarski matematyk Leonhard Euler (707 783). Grafem

Bardziej szczegółowo

X Olimpiada Matematyczna Gimnazjalistów

X Olimpiada Matematyczna Gimnazjalistów www.omg.edu.pl X Olimpiada Matematyczna Gimnazjalistów Zawody stopnia pierwszego część korespondencyjna (10 listopada 01 r. 15 grudnia 01 r.) Szkice rozwiązań zadań konkursowych 1. nia rozmieniła banknot

Bardziej szczegółowo

Programowanie celowe #1

Programowanie celowe #1 Programowanie celowe #1 Problem programowania celowego (PC) jest przykładem problemu programowania matematycznego nieliniowego, który można skutecznie zlinearyzować, tzn. zapisać (i rozwiązać) jako problem

Bardziej szczegółowo

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

Podstawowe własności grafów. Wykład 3. Własności grafów Wykład 3. Własności grafów 1 / 87 Suma grafów Niech będą dane grafy proste G 1 = (V 1, E 1) oraz G 2 = (V 2, E 2). 2 / 87 Suma grafów Niech będą dane grafy proste G 1 = (V 1, E 1) oraz G 2 = (V 2, E 2).

Bardziej szczegółowo

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10. ZAMIANA LICZB MIĘDZY SYSTEMAMI DWÓJKOWYM I DZIESIĘTNYM Aby zamienić liczbę z systemu dwójkowego (binarnego) na dziesiętny (decymalny) należy najpierw przypomnieć sobie jak są tworzone liczby w ww systemach

Bardziej szczegółowo

G. Wybrane elementy teorii grafów

G. Wybrane elementy teorii grafów Dorota Miszczyńska, Marek Miszczyński KBO UŁ Wybrane elementy teorii grafów 1 G. Wybrane elementy teorii grafów Grafy są stosowane współcześnie w różnych działach nauki i techniki. Za pomocą grafów znakomicie

Bardziej szczegółowo

Wykład z modelowania matematycznego. Zagadnienie transportowe.

Wykład z modelowania matematycznego. Zagadnienie transportowe. Wykład z modelowania matematycznego. Zagadnienie transportowe. 1 Zagadnienie transportowe zostało sformułowane w 1941 przez F.L.Hitchcocka. Metoda rozwiązania tego zagadnienia zwana algorytmem transportowymópracowana

Bardziej szczegółowo

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

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane: Wykład 4 grafy Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, E zbiór krawędzi, Grafy dzielimy na grafy skierowane i nieskierowane: Formalnie, w grafach skierowanych E jest podzbiorem

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

Matematyka dyskretna. Andrzej Łachwa, UJ, /14 Matematyka dyskretna Andrzej Łachwa, UJ, 2016 andrzej.lachwa@uj.edu.pl 13/14 Grafy podstawowe definicje Graf to para G=(V, E), gdzie V to niepusty i skończony zbiór, którego elementy nazywamy wierzchołkami

Bardziej szczegółowo

MATEMATYKA DLA CIEKAWSKICH

MATEMATYKA DLA CIEKAWSKICH MATEMATYKA DLA CIEKAWSKICH Dowodzenie twierdzeń przy pomocy kartki. Część II Na rysunku przedstawiony jest obszar pewnego miasta wraz z zaznaczonymi szkołami podstawowymi. Wyobraźmy sobie, że mamy przydzielić

Bardziej szczegółowo

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne Przypominajka: 152 drzewo filogenetyczne to drzewo, którego liśćmi są istniejące gatunki, a węzły wewnętrzne mają stopień większy niż jeden i reprezentują

Bardziej szczegółowo

1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb.

1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb. 1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb. Algorytmy przeszukiwania w głąb i wszerz są najczęściej stosowanymi algorytmami przeszukiwania. Wykorzystuje się je do zbadania istnienia połączenie

Bardziej szczegółowo

8. Neuron z ciągłą funkcją aktywacji.

8. Neuron z ciągłą funkcją aktywacji. 8. Neuron z ciągłą funkcją aktywacji. W tym ćwiczeniu zapoznamy się z modelem sztucznego neuronu oraz przykładem jego wykorzystania do rozwiązywanie prostego zadania klasyfikacji. Neuron biologiczny i

Bardziej szczegółowo

Lista 4. Kamil Matuszewski 22 marca 2016

Lista 4. Kamil Matuszewski 22 marca 2016 Lista 4 Kamil Matuszewski 22 marca 2016 1 2 3 4 5 6 7 8 9 10 Zadanie 2 Ułóż algorytm który dla danego n-wierzchołkowego drzewa i liczby k pokoloruje jak najwięcej wierzchołków tak, by na każdej ścieżce

Bardziej szczegółowo

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

1) Grafy eulerowskie własnoci algorytmy. 2) Problem chiskiego listonosza 165 1) Grafy eulerowskie własnoci algorytmy 2) Problem chiskiego listonosza 166 Grafy eulerowskie Def. Graf (multigraf, niekoniecznie spójny) jest grafem eulerowskim, jeli zawiera cykl zawierajcy wszystkie

Bardziej szczegółowo

TEORETYCZNE PODSTAWY INFORMATYKI

TEORETYCZNE PODSTAWY INFORMATYKI 1 TEORETYCZNE PODSTAWY INFORMATYKI WFAiS UJ, Informatyka Stosowana I rok studiów, I stopień Wykład 14c 2 Definicje indukcyjne Twierdzenia dowodzone przez indukcje Definicje indukcyjne Definicja drzewa

Bardziej szczegółowo

Matematyka dyskretna - 5.Grafy.

Matematyka dyskretna - 5.Grafy. Matematyka dyskretna - 5.Grafy. W tym rozdziale zajmiemy się grafami. Są to wykresy zawierające rozmaite informacje, przedstawiające połączenia pomiędzy różnymi swoimi elementami. Algorytmy na nich oparte

Bardziej szczegółowo

Czy kwadrat da się podzielić na nieparzystą liczbę trójkątów o równych polach? Michał Kieza

Czy kwadrat da się podzielić na nieparzystą liczbę trójkątów o równych polach? Michał Kieza Czy kwadrat da się podzielić na nieparzystą liczbę trójkątów o równych polach? Michał Kieza Łatwo zauważyć, że kwadrat można podzielić na 2, 4, 6,..., a także na dowolną parzystą liczbę trójkątów o równych

Bardziej szczegółowo

Kolorowanie płaszczyzny, prostych i okręgów

Kolorowanie płaszczyzny, prostych i okręgów Kolorowanie płaszczyzny, prostych i okręgów Jadwiga Czyżewska Pisane pod kierunkiem W.Guzickiego W 2013 roku na II etapie VIII edycji Olimpiady Matematycznej Gimnazjalistów pojawiło się zadanie o następującej

Bardziej szczegółowo

Matematyka dyskretna - 7.Drzewa

Matematyka dyskretna - 7.Drzewa Matematyka dyskretna - 7.Drzewa W tym rozdziale zajmiemy się drzewami: specjalnym przypadkiem grafów. Są one szczególnie przydatne do przechowywania informacji, umożliwiającego szybki dostęp do nich. Definicja

Bardziej szczegółowo

Zagadnienie najkrótszej drogi w sieci

Zagadnienie najkrótszej drogi w sieci L L Zagadnienie najkrótszej drogi w sieci 1 Rozważmy sieć, gdzie graf jest grafem skierowanym (digrafem) a jest funkcją określoną na zbiorze łuków. Wartość tej funkcji na łuku!"$#%'&, którą oznaczać będziemy

Bardziej szczegółowo

Informatyka w logistyce przedsiębiorstw wykład 5

Informatyka w logistyce przedsiębiorstw wykład 5 Informatyka w logistyce przedsiębiorstw wykład 5 1. Charakterystyka i funkcje systemu klasy WMS 2. Funkcje systemu WMS 3. Elementy (moduły) systemu WMS 3.1. Operacje magazynowe 3.2. Transport i spedycja

Bardziej szczegółowo

0 + 0 = 0, = 1, = 1, = 0.

0 + 0 = 0, = 1, = 1, = 0. 5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,

Bardziej szczegółowo

Minimalne drzewa rozpinające

Minimalne drzewa rozpinające KNM UŚ 26-28 listopada 2010 Ostrzeżenie Wprowadzenie Motywacja Definicje Niektóre pojęcia pojawiające się podczas tego referatu są naszymi autorskimi tłumaczeniami z języka angielskiego. Nie udało nam

Bardziej szczegółowo

Bukiety matematyczne dla szkoły podstawowej http://www.mat.uni.torun.pl/~kolka/

Bukiety matematyczne dla szkoły podstawowej http://www.mat.uni.torun.pl/~kolka/ Bukiety matematyczne dla szkoły podstawowej http://www.mat.uni.torun.pl/~kolka/ 12 IX rok 2003/2004 Bukiet 1 O pewnych liczbach A, B i C wiadomo, że: A + B = 32, B + C = 40, C + A = 26. 1. Ile wynosi A

Bardziej szczegółowo

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

Zadania z ćwiczeń #18 (pon. 7 maja) Matematyka Dyskretna Zadania z ćwiczeń #18 (pon. 7 maja) Matematyka Dyskretna Q1.: Mamy dany zbiór artykułów, z których każdy ma co najmniej k z n możliwych tagów. Chcemy bardzo z grubsza pokategoryzować artykuły w jak najmniejszą

Bardziej szczegółowo