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

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

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

Transkrypt

1 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. Spójność grafu można zbadać za pomocą algorytmu przeszukiwania w głąb (DFS, ang. depth-first search), który dla reprezentacji grafu w postaci listy sąsiedztwa ma złożoność liniową proporcjonalną do sumy wierzchołków i krawędzi O(V+E). W przypadku reprezentacji grafu w postaci macierzy sąsiedztwa algorytm DFS ma złożoność kwadratową względem liczby wierzchołków O(V 2 ). Metoda DFS Rekurencyjnie przeszukujemy graf. Odwiedzając wierzchołek zaznaczamy, że został już odwiedzony, a następnie rekurencyjnie odwiedzamy wszystkie sąsiednie wierzchołki, które nie zostały oznaczone jako odwiedzone. 2. Ścieżka Eulera Ścieżka Eulera to ścieżka łącząca dwa dane wierzchołki, która przebiega przez każdą krawędź w grafie dokładnie raz. Jeżeli jest taka potrzeba, to przez wierzchołki można przechodzić wielokrotnie. Jeżeli wierzchołek końcowy pokrywa się z początkowym, to mówimy o trasie Eulera. Problem został sformułowany po raz pierwszy przez Leonarda Eulera w 1736 roku, a jego szczególny przypadek nie mający rozwiązania, to tzw. problem 7 mostów królewieckich. Rozwiązanie trasy i ścieżki Eulera warunkują następujące własności. Graf posiada cykl (trasę) Eulera, jeżeli jest spójny i wszystkie jego wierzchołki mają parzysty stopień (parzystą ilość krawędzi przylegających do wierzchołka). Graf posiada ścieżkę Eulera, jeżeli jest spójny i dokładnie dwa jego wierzchołki mają nieparzysty stopień. Stopień wierzchołka V i oznaczamy jako deg(v i ). Jeżeli istnieje cykl Eulera to możemy go wyznaczyć w czasie liniowym O(E).

2 3. Ścieżka Hamiltona Ścieżka Hamiltona to ścieżka w grafie łącząca dwa dane wierzchołki, która przebiega przez każdy wierzchołek w grafie dokładnie jeden raz. Jeżeli wierzchołek końcowy pokrywa się z początkowym, to mówimy o trasie (cyklu) Hamiltona. Wyznaczenie ścieżki Hamiltona w sposób rekurencyjny wymaga czasu wykładniczego O(V!) i jest to problem NP-zupełny. Rozszerzeniem problemu Hamiltona jest problem komiwojażera (TSP, ang. traveling salesman problem). Polega on na znalezieniu minimalnego cyklu Hamiltona w pełnym grafie ważonym. Nazwa wzięła się stąd, że wierzchołki interpretujemy jako miasta, a wagi krawędzi jako odległości między miastami. Jest to także klasyczny problem NP-zupełny. 4. Dopasowanie Problem polega na wyznaczeniu możliwie największego podzbioru krawędzi grafu, mających tę własność, że żadne dwie spośród krawędzi nie prowadzą do/od tego samego wierzchołka. Rozwiązanie tego problemu wymaga czasu proporcjonalnego do wielomianu zależnego od ilości wierzchołków i krawędzi O(p(V,E)). Dopasowanie dwudzielne (graf dwudzielny) Problem j/w, ale mamy dwa różne typy wierzchołków i wyszukujemy tylko te krawędzie, które łączą wierzchołek pierwszego typu z wierzchołkiem drugiego typu. 5. Planarność Czy możemy narysować dany graf, bez wzajemnego przecinania się krzywych reprezentujących jego krawędzie? Wyjaśnia to Twierdzenie Kuratowskiego (1930): Graf jest planarny, jeżeli po zredukowaniu wierzchołków stopnia 2 nie zawiera podgrafu pełnego o pięciu wierzchołkach (graf 5), ani podgrafu pełnego dwudzielnego o sześciu wierzchołkach, w którym każdy z trzech wierzchołków w pierwszej grupie jest połączony z każdym z wierzchołków w drugiej grupie (graf 3,3). graf 5 graf 3,3 Innymi słowy można to ująć: graf jest planarny wtedy i tylko wtedy, gdy nie zawiera podgrafu, który można otrzymać z grafów graf 5 i graf 3,3 przez podział krawędzi

3 wierzchołkami o stopniu 2. Graf homeomorficzny (podobny) to graf, który można otrzymać z danego grafu wstawiając w krawędziach dodatkowe wierzchołki stopnia 2. Bezpośrednia implementacja ma złożoność wielomianową O(n 6 ). Tarjan i Hopcroft w 1971 podali algorytm o złożoności O(n log(n)). A w 1974 przedstawili zawiłą wersję o złożoności liniowej O(n). Najładniejszy graf planarny w 1994 roku 6. Maksymalna klika Jaki jest rozmiar największego podgrafu pełnego w grafie (kliki)? (podgraf pełny podzbiór wierzchołków grafu wraz z krawędziami pomiędzy tymi wierzchołkami tworzący graf, w którym każdy wierzchołek jest połączony ze wszystkimi pozostałymi). Jest to problem klasy NP. 7. Kolorowanie grafu Problem polega na rozstrzygnięciu, czy istnieje taki sposób przypisania jednego z k kolorów każdemu wierzchołkowi w grafie tak, aby każda para wierzchołków, połączonych wspólną krawędzią miała różne kolory. Liczbą chromatyczną grafu nazywamy najmniejszą możliwą liczbę kolorów potrzebnych do pokolorowania wierzchołków w w/w sposób. Dwukolorowalność Problem rozstrzygamy dla k=2, czyli dla dwóch kolorów. Problem ten jest równoważny problemowi sprawdzania, czy graf jest dwudzielny. Graf dwudzielny graf, którego zbiór wierzchołków można podzielić na dwa rozłączne zbiory tak, że krawędzie nie łączą wierzchołków tego samego zbioru. Problem ten może być rozwiązywany z zastosowaniem metody przeszukiwania grafu wszerz (BFS, ang. breadth-first search), która dla reprezentacji grafu w postaci listy sąsiedztwa ma złożoność O(V+E), a w przypadku reprezentacji grafu w postaci macierzy sąsiedztwa O(V 2 ). Metoda BFS Wykorzystuje się strukturę danych typu kolejka (FIFO). Zdejmując ze stosu wierzchołek umieszczamy na stosie wszystkie jego sąsiednie nieodwiedzone wierzchołki. Odwiedzone wierzchołki zaznaczamy.

4 Trójkolorowalność Problem sformułowany jak w dwukolorowalności, ale wierzchołkom przypisujemy jeden z trzech kolorów. Problem potrafimy rozwiązywać tylko algorytmami siłowymi, czyli ma złożoność wykładniczą O(3 V ) i jest NP-zupełny. Używając programowania dynamicznego, uzyskujemy złożoność obliczeniową O(2,445 V ). Znane są także szybsze algorytmy o złożoności O(V2 V ), O(1,7504 V ) i O(1,3289 V ). Programowanie dynamiczne Jest przykładem programowania wstępującego, polegającego na rozwiązywaniu kolejnych coraz większych realizacji problemu, aż do osiągnięcia realizacji koocowej. Najpierw rozwiązywane są najmniejsze realizacje problemu, otrzymane wyniki są zapamiętywane, a potem są wykorzystywane przy rozwiązywaniu coraz to większych realizacji problemu (bez potrzeby ich ponownego wielokrotnego wyliczania). Algorytmy programowania dynamicznego na ogół opisuje się w postaci iteracyjnej. Czterokolorowalność Twierdzenie o czterech kolorach: Każdy graf planarny jest czterokolorowalny Po raz pierwszy hipoteza o prawdziwości tego twierdzenia została postawiona w roku Jednakże dowód przedstawiono dopiero ponad sto lat później w 1976 roku. Dowód opiera się niestety na sprawdzeniu aż 1936 przypadków szczególnych, a wykonać to można tylko przy pomocy komputera. Dlatego z dowodem czekano, aż do czasów komputerów o wystarczających mocach obliczeniowych. Nikt dotąd nie udowodnił twierdzenia o czterech barwach bez komputerowego wspomagania, choć wymyślono pewne uproszczenia oryginalnego dowodu. 8. Najkrótsza ścieżka Problem wyznaczania w grafie ważonym najkrótszej ścieżki między dwoma wierzchołkami. Istnieją dwa klasyczne algorytmy: Dijkstry: Wyznaczana jest najkrótsza ścieżka pomiędzy danym wierzchołkiem, a wszystkimi wierzchołkami w grafie. Algorytm Dijkstry jest przykładem algorytmu zachłannego. Algorytm zachłanny Algorytm, w którym w celu uzyskania rozwiązania problemu w każdym kroku dokonuje się wyboru najlepiej rokującego w danym momencie rozwiązania częściowego, tzn. wybieramy zachłannie. Najprostsza implementacja złożoność obliczeniowa O(V 2 ). Gdy graf ma dużo mniej krawędzi niż graf pełny stosuje się kolejkę priorytetową zrealizowana w postaci kopca binarnego złożoność obliczeniowa wynosi wtedy O(E logv). Złożoność można jeszcze polepszyć do wartości O(V logv+e) (stosuje się wtedy kopiec Fibonacciego).

5 Algorytm Dijkstry Algorytm korzysta z węzłów oznaczanych jako nieosiągalne, nieustalone i ustalone. W kolejnych krokach algorytmu obliczenia odległości wykonuje się tylko dla węzłów nieustalonych i nieosiągalnych. Wagi krawędzi muszą byd dodatnie. 1. Na początku wszystkie wierzchołki są oznaczone jako nieosiągalne z wierzchołka początkowego. 2. Zaczynamy od oznaczenia wierzchołka początkowego jako ustalonego. Dla wszystkich wierzchołków połączonych z nim obliczamy ich odległości od tego wierzchołka, a następnie wierzchołek o minimalnej odległości oznaczamy jako ustalony. 3. W następnym kroku dla wszystkich wierzchołków sąsiadujących z aktualnym wierzchołkiem ustalonym obliczamy ich odległości od wierzchołka początkowego (liczone poprzez aktualny wierzchołek ustalony). Jeżeli dla któregoś z wierzchołków odległośd ta jest mniejsza niż dotychczasowa, to ją uaktualniamy. 4. Spośród wierzchołków nieustalonych wyszukujemy wierzchołek o minimalnej odległości od wierzchołka początkowego i czynimy go aktualnym wierzchołkiem ustalonym. 5. Powtarzamy kroki 3 i 4 aż do osiągnięcia wierzchołka koocowego i oznaczenia go jako wierzchołek ustalony (mamy wtedy wyznaczoną najkrótszą drogę do tego wierzchołka) lub po ustawieniu wszystkich wierzchołków jako ustalonych (mamy wtedy wyznaczoną najkrótszą drogę do wszystkich wierzchołków w grafie). krok A B C D E F G H 0 N N N N N N N N 1 0 (*) 16 7 min 21 N N N N 2 0 * 15 min 7 (*) N N N 3 0 * 15 (*) 7 * min N 27 N 4 0 * 15 * 7 * 20 min 15 (*) N 5 0 * 15 * 7 * 20 (*) 15 * min N 6 0 * 15 * 7 * 20 * 15 * 24 min 23 (*) * 15 * 7 * 20 * 15 * 24 (*) 23 * 31 min 8 0 * 15 * 7 * 20 * 15 * 24 * 23 * 31 (*) Bellmana-Forda: pesymistyczna złożoność obliczeniowa O(VE). Stosuje się także dwa algorytmy wyznaczające najkrótsze ścieżki pomiędzy wszystkimi parami wierzchołków: Floyda-Warshalla: pesymistyczna złożoność obliczeniowa O(V 3 ). Algorytm Floyda-Warshalla Algorytm wyznacza minimalne odległości pomiędzy wszystkimi parami wierzchołków w grafie. W tym algorytmie wagi węzłów mogą byd ujemne, ale nie może jednak występowad cykl o łącznej ujemnej wadze osiągalny ze źródła. Działanie algorytmu jest następujące: 1. Po kolei rozpatrujemy kolejne wierzchołki grafu jako elementy centralne c. 2. Dla każdej pary wierzchołków u i v, jeżeli suma etykiet krawędzi u-c i c-v jest mniejsza od wartości etykiety krawędzi u-v, to w macierzy sąsiedztwa reprezentującej graf zamieniamy tą etykietę na etykietę będącą sumą etykiet krawędzi u-c i c-v. Johnsona: pesymistyczna złożoność obliczeniowa O(V 2 log(v)+ve).

6 9. Najdłuższa ścieżka Problem wyznaczania w grafie ważonym najdłuższej ścieżki między dwoma wierzchołkami. Podobieństwo tego problemu do problemu najkrótszej ścieżki jest tylko pozorne. Problem ten jest wersją problemu trasy Hamiltona, czyli jest to problem NP-zupełny. 10. Silna spójność Czy istnieje ścieżka skierowana łącząca każdą parę wierzchołków w grafie skierowanym? Złożoność obliczeniowa jest liniowa względem sumy wierzchołków i krawędzi O(V+E) (dwukrotne wykonanie algorytmu spójności dla grafu nieskierowanego). Problem ten redukuje się do problemu spełnialności formuł logicznych w postaci 2SAT, co oznacza, że problem 2SAT jest problemem klasy P. 11. Cykl nieparzystej długości Czy dany graf skierowany posiada cykl o nieparzystej długości? Problem ten jest równoważny problemowi dwukolorowalności, a więc ma złożoność wielomianową. Graf niezawierający cykli nieparzystej długości jest dwukolorowalny. 12. Cykl parzystej długości Czy dany graf skierowany posiada cykl o parzystej długości? Problem ten jest równoważny problemowi dwudzielności, a więc ma złożoność wielomianową. W grafie dwudzielnym wszystkie cykle są parzyste. 13. Minimalne drzewo rozpinające Minimalne drzewo rozpinające definiuje się dla grafu ważonego nieskierowanego jako zbiór wszystkich wierzchołków grafu oraz podzbiór jego krawędzi spełniające trzy warunki: krawędzie łączą wszystkie wierzchołki grafu w grafie nie występują cykle suma etykiet krawędzi jest minimalna Algorytm Kruskala - wyznaczanie minimalnego drzewa rozpinającego Algorytm polega na łączeniu minimalnych drzew rozpinających. Przeglądamy kolejne krawędzie grafu w kolejności rosnących wartości etykiet. Jeżeli wierzchołki kolejnej rozważanej krawędzi należą do dwóch różnych drzew, to krawędź tą dołączamy do minimalnego drzewa rozpinającego, w przeciwnym razie (wierzchołki znajdują się w obrębie jednego drzewa) nie dołączamy. Algorytm Kruskala: złożoność obliczeniowa O(E log (E))

7 Stosuje się także dwa algorytmy wyznaczające minimalne drzewo rozpinające: Prima: złożoność obliczeniowa O(E log(v)). Boruvki: złożoność obliczeniowa O(E log(v) log(e)). Tab. Złożoności obliczeniowe klasycznych problemów grafowych rodzaj grafu rodzaj problemu problemy P łatwe problemy P trudne problemy NP-zupełne grafy nieskierowane spójność ścieżka Eulera ścieżka Hamiltona dopasowanie dwudzielne dopasowanie maksymalne planarność maksymalna klika 2-kolorowalność 3-kolorowalność najkrótsza ścieżka najdłuższa ścieżka grafy skierowane silna spójność cykl nieparzystej długości cykl parzystej długości grafy ważone minimalne drzewo rozpinające problem komiwojażera

Porównanie algorytmów wyszukiwania najkrótszych ścieżek międz. grafu. Daniel Golubiewski. 22 listopada Instytut Informatyki

Porównanie algorytmów wyszukiwania najkrótszych ścieżek międz. grafu. Daniel Golubiewski. 22 listopada Instytut Informatyki Porównanie algorytmów wyszukiwania najkrótszych ścieżek między wierzchołkami grafu. Instytut Informatyki 22 listopada 2015 Algorytm DFS w głąb Algorytm przejścia/przeszukiwania w głąb (ang. Depth First

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

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

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew 1. ( pkt) Dany jest algorytm, który dla dowolnej liczby naturalnej n, powinien wyznaczyd sumę kolejnych liczb naturalnych mniejszych od n. Wynik algorytmu jest zapisany w zmiennej suma. Algorytm i=1; suma=0;

Bardziej szczegółowo

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

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

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

Egzamin, AISDI, I termin, 18 czerwca 2015 r.

Egzamin, AISDI, I termin, 18 czerwca 2015 r. Egzamin, AISDI, I termin, 18 czerwca 2015 r. 1 W czasie niezależnym do danych wejściowych działają algorytmy A. sortowanie bąbelkowego i Shella B. sortowanie szybkiego i przez prosty wybór C. przez podział

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

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

Wybrane podstawowe rodzaje algorytmów

Wybrane podstawowe rodzaje algorytmów Wybrane podstawowe rodzaje algorytmów Tomasz Głowacki tglowacki@cs.put.poznan.pl Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia na Politechnice Poznańskiej w zakresie technologii informatycznych

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

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

Grafy i sieci w informatyce - opis przedmiotu

Grafy i sieci w informatyce - opis przedmiotu Grafy i sieci w informatyce - opis przedmiotu Informacje ogólne Nazwa przedmiotu Grafy i sieci w informatyce Kod przedmiotu 11.9-WI-INFD-GiSwI Wydział Kierunek Wydział Informatyki, Elektrotechniki i Automatyki

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

Programowanie dynamiczne i algorytmy zachłanne

Programowanie dynamiczne i algorytmy zachłanne Programowanie dynamiczne i algorytmy zachłanne Tomasz Głowacki tglowacki@cs.put.poznan.pl Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia na Politechnice Poznańskiej w zakresie technologii

Bardziej szczegółowo

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek Algorytmy i str ruktury danych Metody algorytmiczne Bartman Jacek jbartman@univ.rzeszow.pl Metody algorytmiczne - wprowadzenia Znamy strukturę algorytmów Trudność tkwi natomiast w podaniu metod służących

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

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

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

Algorytmy grafowe. Wykład 2 Przeszukiwanie grafów. Tomasz Tyksiński CDV

Algorytmy grafowe. Wykład 2 Przeszukiwanie grafów. Tomasz Tyksiński CDV Algorytmy grafowe Wykład 2 Przeszukiwanie 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 3. Spójność grafu,

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

Wprowadzenie do algorytmów / Thomas H. Cormen [et al.]. - wyd. 7. Warszawa, Spis treści. Wprowadzenie 2

Wprowadzenie do algorytmów / Thomas H. Cormen [et al.]. - wyd. 7. Warszawa, Spis treści. Wprowadzenie 2 Wprowadzenie do algorytmów / Thomas H. Cormen [et al.]. - wyd. 7. Warszawa, 2012 Spis treści Przedmowa XIII Część I Podstawy Wprowadzenie 2 1. Rola algorytmów w obliczeniach 4 1.1. Algorytmy 4 1.2. Algorytmy

Bardziej szczegółowo

Literatura. 1) Pojęcia: złożoność czasowa, rząd funkcji. Aby wyznaczyć pesymistyczną złożoność czasową algorytmu należy:

Literatura. 1) Pojęcia: złożoność czasowa, rząd funkcji. Aby wyznaczyć pesymistyczną złożoność czasową algorytmu należy: Temat: Powtórzenie wiadomości z PODSTAW INFORMATYKI I: Pojęcia: złożoność czasowa algorytmu, rząd funkcji kosztu. Algorytmy. Metody programistyczne. Struktury danych. Literatura. A. V. Aho, J.E. Hopcroft,

Bardziej szczegółowo

Algorytmy i Struktury Danych.

Algorytmy i Struktury Danych. Algorytmy i Struktury Danych. Grafy Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 8 Bożena Woźna-Szcześniak (AJD) Algorytmy i Struktury Danych. Wykład 8 1 / 39 Plan wykładu

Bardziej szczegółowo

Wprowadzenie do algorytmów / Thomas H. Cormen [et al.]. wyd. 7 (I w PWN), dodr. 2. Warszawa, Spis treści. Wprowadzenie 2

Wprowadzenie do algorytmów / Thomas H. Cormen [et al.]. wyd. 7 (I w PWN), dodr. 2. Warszawa, Spis treści. Wprowadzenie 2 Wprowadzenie do algorytmów / Thomas H. Cormen [et al.]. wyd. 7 (I w PWN), dodr. 2. Warszawa, 2013 Spis treści Przedmowa XIII Część I Podstawy Wprowadzenie 2 1. Rola algorytmów w obliczeniach 4 1.1. Algorytmy

Bardziej szczegółowo

Metody Programowania

Metody Programowania POLITECHNIKA KRAKOWSKA - WIEiK KATEDRA AUTOMATYKI i TECHNIK INFORMACYJNYCH Metody Programowania www.pk.edu.pl/~zk/mp_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład 8: Wyszukiwanie

Bardziej szczegółowo

Wykład 7. Algorytmy grafowe

Wykład 7. Algorytmy grafowe Wykład Algorytmy grafowe Algorytmy grafowe i podstawowe algorytmy przeszukiwania Problem Definicje i własności Reprezentacja Przeszukiwanie wszerz (Breadthirst Search) Przeszukiwanie w głąb (Depthirst

Bardziej szczegółowo

Podejście zachłanne, a programowanie dynamiczne

Podejście zachłanne, a programowanie dynamiczne Podejście zachłanne, a programowanie dynamiczne Algorytm zachłanny pobiera po kolei elementy danych, za każdym razem wybierając taki, który wydaje się najlepszy w zakresie spełniania pewnych kryteriów

Bardziej szczegółowo

WSTĘP DO INFORMATYKI. Grafy i struktury grafowe

WSTĘP DO INFORMATYKI. Grafy i struktury grafowe Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WTĘP DO INFORMATYKI Adrian Horzyk Grafy i struktury grafowe www.agh.edu.pl DEFINICJA GRAFU Graf to

Bardziej szczegółowo

Złożoność obliczeniowa zadania, zestaw 2

Złożoność obliczeniowa zadania, zestaw 2 Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze

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

ĆWICZENIE 1: Przeszukiwanie grafów cz. 1 strategie ślepe

ĆWICZENIE 1: Przeszukiwanie grafów cz. 1 strategie ślepe Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny, Politechnika Śląska www.imio.polsl.pl METODY HEURYSTYCZNE ĆWICZENIE 1: Przeszukiwanie grafów cz. 1 strategie ślepe opracował:

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Sieci powiązań Paweł Daniluk Wydział Fizyki Jesień 2015 P. Daniluk (Wydział Fizyki) PO w. IX Jesień 2015 1 / 21 Sieci powiązań Można (bardzo zgrubnie) wyróżnić dwa rodzaje powiązań

Bardziej szczegółowo

Wstęp do Programowania potok funkcyjny

Wstęp do Programowania potok funkcyjny Wstęp do Programowania potok funkcyjny Marcin Kubica 2010/2011 Outline 1 Podstawowe pojęcia Definition Graf = wierzchołki + krawędzie. Krawędzie muszą mieć różne końce. Między dwoma wierzchołkami może

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

Złożoność problemów. 1 ruch na sekundę czas wykonania ok lat 1 mln ruchów na sekundę czas wykonania ok.

Złożoność problemów. 1 ruch na sekundę czas wykonania ok lat 1 mln ruchów na sekundę czas wykonania ok. Złożoność problemów Przykład - wieże Hanoi Problem jest zamknięty (dolne ograniczenie złożoności = złożoność algorytmu rekurencyjnego lub iteracyjnego) i ma złożoność O(2 N ). Mnisi tybetańscy podobno

Bardziej szczegółowo

7. Teoria drzew - spinanie i przeszukiwanie

7. Teoria drzew - spinanie i przeszukiwanie 7. Teoria drzew - spinanie i przeszukiwanie Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny 7. wteoria Krakowie) drzew - spinanie i przeszukiwanie

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Sieci powiązań Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) PO w. IX Jesień 2014 1 / 24 Sieci powiązań Można (bardzo zgrubnie) wyróżnić dwa rodzaje powiązań

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

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

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

Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1 Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1 G. Wybrane elementy teorii grafów W matematyce teorię grafów klasyfikuje się jako gałąź topologii. Jest ona jednak ściśle związana z algebrą i

Bardziej szczegółowo

ĆWICZENIE NR 1 WPROWADZENIE DO INFORMATYKI

ĆWICZENIE NR 1 WPROWADZENIE DO INFORMATYKI J.NAWROCKI, M. ANTCZAK, H. ĆWIEK, W. FROHMBERG, A. HOFFA, M. KIERZYNKA, S.WĄSIK ĆWICZENIE NR 1 WPROWADZENIE DO INFORMATYKI ZAD. 1. Narysowad graf nieskierowany. Zmodyfikowad go w taki sposób, aby stał

Bardziej szczegółowo

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

Grafy. Graf ( graf ogólny) to para G( V, E), gdzie: Graf ( graf ogólny) to para G( V, E), gdzie: V jest zbiorem wierzchołków, ( czasami zwanymi węzłami lub punktami grafu) E jest rodziną ( być może powtarzających się) krawędzi, czyli jedno- i dwu- elementowych

Bardziej szczegółowo

Egzaminy i inne zadania. Semestr II.

Egzaminy i inne zadania. Semestr II. Egzaminy i inne zadania. Semestr II. Poniższe zadania są wyborem zadań ze Wstępu do Informatyki z egzaminów jakie przeprowadziłem w ciągu ostatnich lat. Ponadto dołączyłem szereg zadań, które pojawiały

Bardziej szczegółowo

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne Algorytmy i struktury danych Drzewa: BST, kopce Letnie Warsztaty Matematyczno-Informatyczne Drzewa: BST, kopce Definicja drzewa Drzewo (ang. tree) to nieskierowany, acykliczny, spójny graf. Drzewo może

Bardziej szczegółowo

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

Algorytm Dijkstry znajdowania najkrótszej ścieżki w grafie Algorytm Dijkstry znajdowania najkrótszej ścieżki w grafie Używane struktury danych: V - zbiór wierzchołków grafu, V = {1,2,3...,n} E - zbiór krawędzi grafu, E = {(i,j),...}, gdzie i, j Î V i istnieje

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część III - Układy kombinacyjne i P-zupełność

Algorytmy Równoległe i Rozproszone Część III - Układy kombinacyjne i P-zupełność Algorytmy Równoległe i Rozproszone Część III - Układy kombinacyjne i P-zupełność Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@eti.pg.gda.pl Oficjalna strona wykładu http://www.kaims.pl/

Bardziej szczegółowo

prowadzący dr ADRIAN HORZYK /~horzyk e-mail: horzyk@agh tel.: 012-617 Konsultacje paw. D-13/325

prowadzący dr ADRIAN HORZYK /~horzyk e-mail: horzyk@agh tel.: 012-617 Konsultacje paw. D-13/325 PODSTAWY INFORMATYKI WYKŁAD 8. prowadzący dr ADRIAN HORZYK http://home home.agh.edu.pl/~ /~horzyk e-mail: horzyk@agh agh.edu.pl tel.: 012-617 617-4319 Konsultacje paw. D-13/325 DRZEWA Drzewa to rodzaj

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

Segmentacja obrazów cyfrowych z zastosowaniem teorii grafów - wstęp. autor: Łukasz Chlebda

Segmentacja obrazów cyfrowych z zastosowaniem teorii grafów - wstęp. autor: Łukasz Chlebda Segmentacja obrazów cyfrowych Segmentacja obrazów cyfrowych z zastosowaniem teorii grafów - wstęp autor: Łukasz Chlebda 1 Segmentacja obrazów cyfrowych - temat pracy Temat pracy: Aplikacja do segmentacji

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 8 2 Modele danych: grafy Podstawowe pojęcia Grafy wywołań Grafy skierowane i nieskierowane Grafy planarne,

Bardziej szczegółowo

Matematyczne podstawy informatyki Mathematical Foundations of Computational Sciences. Matematyka Poziom kwalifikacji: II stopnia

Matematyczne podstawy informatyki Mathematical Foundations of Computational Sciences. Matematyka Poziom kwalifikacji: II stopnia Nazwa przedmiotu: Kierunek: Rodzaj przedmiotu: obowiązkowy dla wszystkich specjalności Rodzaj zajęć: wykład, ćwiczenia Matematyczne podstawy informatyki Mathematical Foundations of Computational Sciences

Bardziej szczegółowo

Problem skoczka szachowego i inne cykle Hamiltona na szachownicy n x n

Problem skoczka szachowego i inne cykle Hamiltona na szachownicy n x n i inne cykle Hamiltona na szachownicy n x n Uniwersytet Warszawski 15 marca 2007 Agenda 1 2 naiwne Prosty algorytm liniowy 3 Problem znany był już od bardzo dawna, jako łamigłówka logiczna. Był też stosowany

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

Zaawansowane algorytmy i struktury danych

Zaawansowane algorytmy i struktury danych Zaawansowane algorytmy i struktury danych u dr Barbary Marszał-Paszek Opracowanie pytań teoretycznych z egzaminów. Strona 1 z 12 Pytania teoretyczne z egzaminu pisemnego z 25 czerwca 2014 (studia dzienne)

Bardziej szczegółowo

Algorytmy i struktury danych.

Algorytmy i struktury danych. Kod przedmiotu: ASD Rodzaj przedmiotu: Wydział: Informatyki Kierunek: Informatyka Specjalność (specjalizacja): - Algorytmy i struktury danych. kierunkowy ; obowiązkowy Poziom studiów: pierwszego stopnia

Bardziej szczegółowo

Wstęp do Sztucznej Inteligencji

Wstęp do Sztucznej Inteligencji Wstęp do Sztucznej Inteligencji Rozwiązywanie problemów-i Joanna Kołodziej Politechnika Krakowska Wydział Fizyki, Matematyki i Informatyki Rozwiązywanie problemów Podstawowe fazy: Sformułowanie celu -

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

Załącznik KARTA PRZEDMIOTU. KARTA PRZEDMIOTU Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010

Załącznik KARTA PRZEDMIOTU. KARTA PRZEDMIOTU Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 1/1 Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 Kierunek: INFORMATYKA Specjalność: PRZEDMIOT OBOWIĄZKOWY DLA WSZYSTKICH STUDENTÓW. Tryb studiów: NIESTACJONARNE PIERWSZEGO STOPNIA

Bardziej szczegółowo

Struktury Danych i Złożoność Obliczeniowa

Struktury Danych i Złożoność Obliczeniowa Struktury Danych i Złożoność Obliczeniowa Zajęcia 3 Struktury drzewiaste drzewo binarne szczególny przypadek drzewa, które jest szczególnym przypadkiem grafu skierowanego, stopień każdego wierzchołka jest

Bardziej szczegółowo

Marcel Stankowski Wrocław, 23 czerwca 2009 INFORMATYKA SYSTEMÓW AUTONOMICZNYCH

Marcel Stankowski Wrocław, 23 czerwca 2009 INFORMATYKA SYSTEMÓW AUTONOMICZNYCH Marcel Stankowski Wrocław, 23 czerwca 2009 INFORMATYKA SYSTEMÓW AUTONOMICZNYCH Przeszukiwanie przestrzeni rozwiązań, szukanie na ślepo, wszerz, w głąb. Spis treści: 1. Wprowadzenie 3. str. 1.1 Krótki Wstęp

Bardziej szczegółowo

Sortowanie topologiczne skierowanych grafów acyklicznych

Sortowanie topologiczne skierowanych grafów acyklicznych Sortowanie topologiczne skierowanych grafów acyklicznych Metody boolowskie w informatyce Robert Sulkowski http://robert.brainusers.net 23 stycznia 2010 1 Definicja 1 (Cykl skierowany). Niech C = (V, A)

Bardziej szczegółowo

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

Grafy co o ich rysowaniu wiedzą przedszkolaki i co z tego wynika dla matematyków Wykłady popularne z matematyki Grafy co o ich rysowaniu wiedzą przedszkolaki i co z tego wynika dla matematyków Joanna Jaszuńska Politechnika Warszawska, 6 maja 2010 Grafy Wykłady popularne z matematyki,

Bardziej szczegółowo

Siedem cudów informatyki czyli o algorytmach zdumiewajacych

Siedem cudów informatyki czyli o algorytmach zdumiewajacych Siedem cudów informatyki czyli o algorytmach zdumiewajacych Łukasz Kowalik kowalik@mimuw.edu.pl Instytut Informatyki Uniwersytet Warszawski Łukasz Kowalik, Siedem cudów informatyki p. 1/25 Problem 1: mnożenie

Bardziej szczegółowo

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

Wstęp do informatyki dr Adrian Horzyk, paw. H Wykład TEORIA GRAFÓW 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ś

Bardziej szczegółowo

Metody przeszukiwania

Metody przeszukiwania Metody przeszukiwania Co to jest przeszukiwanie Przeszukiwanie polega na odnajdywaniu rozwiązania w dyskretnej przestrzeni rozwiązao. Zwykle przeszukiwanie polega na znalezieniu określonego rozwiązania

Bardziej szczegółowo

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Projektowanie i analiza algorytmów

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Projektowanie i analiza algorytmów Politechnika Krakowska im. Tadeusza Kościuszki Karta przedmiotu Wydział Inżynierii Elektrycznej i Komputerowej obowiązuje w roku akademickim 01/013 Kierunek studiów: Elektrotechnika Forma studiów: Niestacjonarne

Bardziej szczegółowo

Ilustracja S1 S2. S3 ściana zewnętrzna

Ilustracja S1 S2. S3 ściana zewnętrzna Grafy płaskie G=(V,E) nazywamy grafem płaskim, gdy V jest skończonym podzbiorem punktów płaszczyzny euklidesowej, a E to zbiór krzywych Jordana (łamanych) o końcach w V i takich, że: 1) rożne krzywe mają

Bardziej szczegółowo

ANALIZA ALGORYTMÓW. Analiza algorytmów polega między innymi na odpowiedzi na pytania:

ANALIZA ALGORYTMÓW. Analiza algorytmów polega między innymi na odpowiedzi na pytania: ANALIZA ALGORYTMÓW Analiza algorytmów polega między innymi na odpowiedzi na pytania: 1) Czy problem może być rozwiązany na komputerze w dostępnym czasie i pamięci? 2) Który ze znanych algorytmów należy

Bardziej szczegółowo

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) 16.01.2003 Algorytmy i Struktury Danych PIŁA ALGORYTMY ZACHŁANNE czas [ms] Porównanie Algorytmów Rozwiązyjących problem TSP 100 000 000 000,000 10 000 000

Bardziej szczegółowo

Zadania obliczeniowe, algorytmy i złożoność obliczeniowa

Zadania obliczeniowe, algorytmy i złożoność obliczeniowa Dr inż. Jerzy Mieścicki Instytut Informatyki PW Zadania obliczeniowe, algorytmy i złożoność obliczeniowa Wstęp do Informatyki, część 2 Przeszukiwanie listy nieuporządkowanej Zapisy (records), umieszczone

Bardziej szczegółowo

Heurystyki. Strategie poszukiwań

Heurystyki. Strategie poszukiwań Sztuczna inteligencja Heurystyki. Strategie poszukiwań Jacek Bartman Zakład Elektrotechniki i Informatyki Instytut Techniki Uniwersytet Rzeszowski DLACZEGO METODY PRZESZUKIWANIA? Sztuczna Inteligencja

Bardziej szczegółowo

DWA ZDANIA O TEORII GRAFÓW. przepływ informacji tylko w kierunku

DWA ZDANIA O TEORII GRAFÓW. przepływ informacji tylko w kierunku DWA ZDANIA O TEORII GRAFÓW Krawędź skierowana Grafy a routing Każdą sieć przedstawić składającego przedstawiają E, inaczej węzłami). komunikacyjną można w postaci grafu G się z węzłów V (które węzły sieci)

Bardziej szczegółowo

ZAGADNIENIE TRANSPORTOWE

ZAGADNIENIE TRANSPORTOWE ZAGADNIENIE TRANSPORTOWE ZT jest specyficznym problemem z zakresu zastosowań programowania liniowego. ZT wykorzystuje się najczęściej do: optymalnego planowania transportu towarów, przy minimalizacji kosztów,

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

Algorytmy i Struktury Danych

Algorytmy i Struktury Danych Algorytmy i Struktury Danych Kopce Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 11 Bożena Woźna-Szcześniak (AJD) Algorytmy i Struktury Danych Wykład 11 1 / 69 Plan wykładu

Bardziej szczegółowo

KARTA MODUŁU KSZTAŁCENIA

KARTA MODUŁU KSZTAŁCENIA KARTA MODUŁU KSZTAŁCENIA I. Informacje ogólne 1 Nazwa modułu kształcenia Algorytmy i struktury danych 2 Nazwa jednostki prowadzącej moduł Instytut Informatyki, Zakład Informatyki Stosowanej 3 Kod modułu

Bardziej szczegółowo

WSTĘP DO INFORMATYKI. Drzewa i struktury drzewiaste

WSTĘP DO INFORMATYKI. Drzewa i struktury drzewiaste Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk Drzewa i struktury drzewiaste www.agh.edu.pl DEFINICJA DRZEWA Drzewo

Bardziej szczegółowo

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

6. Wstępne pojęcia teorii grafów 6. Wstępne pojęcia teorii grafów Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny w Krakowie) 6. Wstępne pojęcia teorii grafów zima 2016/2017

Bardziej szczegółowo

Teoria grafów - Teoria rewersali - Teoria śladów

Teoria grafów - Teoria rewersali - Teoria śladów 17 maja 2012 1 Planarność Wzór Eulera Kryterium Kuratowskiego Algorytmy testujące planarność 2 Genom i jego przekształcenia Grafy złamań Sortowanie przez odwrócenia Inne rodzaje sortowania Algorytmy sortujące

Bardziej szczegółowo

Praca dyplomowa magisterska

Praca dyplomowa magisterska Politechnika Gdańska WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI Katedra: Katedra Algorytmów i Modelowania Systemów Forma i poziom studiów: stacjonarne, jednolite magisterskie Kierunek studiów: Informatyka

Bardziej szczegółowo

Grafowy model danych

Grafowy model danych Teoretyczne podstawy informatyki Wykład 7: Grafowy model danych Prof. dr hab. Elżbieta Richter-Wąs 1 Relacje Chociaż założyliśmy, że w ogólności elementy należące do zbiorów są niepodzielne, w praktyce

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Algorytmy zachłanne, programowanie dynamiczne Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk(Wydział Fizyki) WP w. IX Jesień 2014 1 / 26 Algorytmy zachłanne Strategia polegająca

Bardziej szczegółowo

AiSD zadanie trzecie

AiSD zadanie trzecie AiSD zadanie trzecie Gliwiński Jarosław Marek Kruczyński Konrad Marek Grupa dziekańska I5 5 czerwca 2008 1 Wstęp Celem postawionym przez zadanie trzecie było tzw. sortowanie topologiczne. Jest to typ sortowania

Bardziej szczegółowo

Zaawansowane programowanie

Zaawansowane programowanie Zaawansowane programowanie wykład 3: inne heurystyki prof. dr hab. inż. Marta Kasprzak Instytut Informatyki, Politechnika Poznańska Heurystyką nazywamy algorytm (metodę) zwracający rozwiązanie przybliżone.

Bardziej szczegółowo

Matematyka dyskretna - 6.Grafy

Matematyka dyskretna - 6.Grafy Matematyka dyskretna - 6.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

Algorytmy i struktury danych

Algorytmy i struktury danych POLITECHNIKA KRAKOWSKA - WIEiK KATEDRA AUTOMATYKI i TECHNIK INFORMACYJNYCH Algorytmy i struktury danych www.pk.edu.pl/~zk/aisd_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład 5: Algorytmy

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

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

Kilka zagadnień dotyczących Sztucznej inteligencji.

Kilka zagadnień dotyczących Sztucznej inteligencji. Kilka zagadnień dotyczących Sztucznej inteligencji. Artykuł pobrano ze strony eioba.pl Jest tu kilka zagadnień dotyczących SI. Autor przygotowania: Magister inżynier Ireneusz Łukasz Dzitkowski Wałcz, dnia:

Bardziej szczegółowo

Konspekt. 15 października Wykład III (16 października 2014 r.): optymalizacja kombinatoryczna na grafach (metody sieciowe)

Konspekt. 15 października Wykład III (16 października 2014 r.): optymalizacja kombinatoryczna na grafach (metody sieciowe) Konspekt 15 października 2014 1 Wykład III (16 października 2014 r.): optymalizacja kombinatoryczna na grafach (metody sieciowe) 1.1 Przykładowe problemy optymalizacji kombinatorycznej na grafach 1. Optymalizacja

Bardziej szczegółowo

Komputery, obliczenia, algorytmy Tianhe-2 (MilkyWay-2), system Kylin Linux, 33862.7 Tflops, 17808.00 kw

Komputery, obliczenia, algorytmy Tianhe-2 (MilkyWay-2), system Kylin Linux, 33862.7 Tflops, 17808.00 kw Komputery, obliczenia, algorytmy Tianhe-2 (MilkyWay-2), system Kylin Linux, 33862.7 Tflops, 17808.00 kw Michał Rad 08.10.2015 Co i po co będziemy robić Cele zajęć informatycznych: Alfabetyzacja komputerowa

Bardziej szczegółowo

Akademickie Mistrzostwa Polski w Programowaniu Zespołowym

Akademickie Mistrzostwa Polski w Programowaniu Zespołowym Akademickie Mistrzostwa Polski w Programowaniu Zespołowym Prezentacja rozwiązań zadań 27 października 2013 e j f d i b k a h g c Egzamin Autor zadania: Jakub Łącki Zgłoszenia: 132 z 935 (14%) Zaakceptowane

Bardziej szczegółowo

Wstęp do programowania. Zastosowania stosów i kolejek. Piotr Chrząstowski-Wachtel

Wstęp do programowania. Zastosowania stosów i kolejek. Piotr Chrząstowski-Wachtel Wstęp do programowania Zastosowania stosów i kolejek Piotr Chrząstowski-Wachtel FIFO - LIFO Kolejki i stosy służą do przechowywania wartości zbiorów dynamicznych, czyli takich, które powstają przez dodawanie

Bardziej szczegółowo

Algorytmy i struktury danych IS/IO, WIMiIP

Algorytmy i struktury danych IS/IO, WIMiIP Algorytmy i struktury danych IS/IO, WIMiIP Danuta Szeliga AGH Kraków Spis treści I 1 Algorytmy i struktury danych 2 Spis treści 3 Organizacja zajęć 4 Literatura 5 Pojęcia podstawowe Rozwiązywanie problemu

Bardziej szczegółowo

Rozdział 4. Algorytmy sortowania 73 Rozdział 5. Typy i struktury danych 89 Rozdział 6. Derekursywacja i optymalizacja algorytmów 147

Rozdział 4. Algorytmy sortowania 73 Rozdział 5. Typy i struktury danych 89 Rozdział 6. Derekursywacja i optymalizacja algorytmów 147 Spis treści Przedmowa 9 Rozdział 1. Zanim wystartujemy 17 Jak to wcześniej bywało, czyli wyjątki z historii maszyn algorytmicznych 18 Jak to się niedawno odbyło, czyli o tym, kto wymyślił" metodologię

Bardziej szczegółowo

Metoda podziału i ograniczeń

Metoda podziału i ograniczeń Seminarium: Algorytmy heurystyczne Metoda podziału i ograniczeń Mateusz Łyczek Wrocław, 16 marca 011 r. 1 Metoda podziału i ograniczeń Metoda podziału i ograniczeń służy do rozwiązywania problemów optymalizacyjnych.

Bardziej szczegółowo

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA? /9/ Zagadnienie transportowe Optymalizacja w procesach biznesowych Wykład --9 Plan wykładu Przykład zagadnienia transportowego Sformułowanie problemu Własności zagadnienia transportowego Metoda potencjałów

Bardziej szczegółowo

Drzewa rozpinajace, zbiory rozłaczne, czas zamortyzowany

Drzewa rozpinajace, zbiory rozłaczne, czas zamortyzowany , 1 2 3, czas zamortyzowany zajęcia 3. Wojciech Śmietanka, Tomasz Kulczyński, Błażej Osiński rozpinajace, 1 2 3 rozpinajace Mamy graf nieskierowany, ważony, wagi większe od 0. Chcemy wybrać taki podzbiór

Bardziej szczegółowo