Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Algorytmy i struktury danych

Podobne prezentacje


Prezentacja na temat: "Algorytmy i struktury danych"— Zapis prezentacji:

1 Algorytmy i struktury danych
Problemy łatwe i trudne Klasa P i NP Wybrane problemy

2 Przykłady praktycznych problemów, które można sprowadzić do kolorowania grafów
rozdział częstotliwości roboczych dla stacji nadawczych układanie rozkładów zajęć rozmieszczanie elementów na warstwach układu scalonego projektowanie kodów odpornych na błędy szacowanie rzadkich macierzy Jakobiego konstrukcja prostokątów łacińskich optymalizacja kodu wynikowego generowanego przez kompilator Istnieje wiele rozmaitych problemów, które można sprowadzić do kolorowania grafów. Taką idyllę burzy fakt, że znalezienie najlepszego pokolorowania przy użyciu komputera może zająć dużo, a nawet baaaaaaaardzo dużo czasu.

3 Problemy łatwe, trudne i nierozwiązywalne
Problemy łatwe, dla których znany jest algorytm pracujący w czasie wielomianowo zależnym od ilości wierzchołków grafu. Przykłady: minimalny/maksymalny wierzchołek, cykl/droga Eulera. Problemy trudne, dla których nie jest znany dokładny algorytm wielomianowy. Przykłady: największa klika, kolorowanie grafów. Problemy nierozwiązywalne, których nie można rozwiązać przy pomocy komputera, Przykład: problem stopu. Problemy grafowe i większość problemów informatycznych można w ogólności podzielić na trzy grupy: Problemy łatwe, dla których znany jest algorytm (tj sposób rozwiązania problemu) pracujący w czasie wielomianowo zależnym od ilości wierzchołków grafu. Przykłady: minimalny/maksymalny wierzchołek, cykl/droga Eulera. Problemy trudne, dla których nie jest znany dokładny algorytm wielomianowy. Przykłady: największa klika, kolorowanie grafów. Problemy nierozwiązywalne, których nie można rozwiązać przy pomocy komputera, Przykład: problem stopu. Problem stopu można najogólniej sformułować tak Należy napisać program który na podstawie listingu będzie w stanie stwierdzić czy dowolny program się nie zapętla. Zwracam uwagę że dowolny to również on sam. Można pokazać formalny dowód że napisanie takiego programu jest niemożliwe.

4 Tempo wzrostu

5 Tempo wzrostu

6 Klasa problemów NP-zupełnych
Dla wielu przypuszczalnie niewielomianowych problemów, pokazano ich wzajemną równoważność co oznacza, że: jeżeli znajdziemy wielomianowy algorytm dla jednego z problemów to będziemy w stanie wszystkie te problemy rozwiązać w czasie wielomianowym. Czy to ważne ?

7 Wariant pesymistyczny...
Nie potrafię znaleźć szybkiego sposobu na zrobienie tego...

8 Wariant optymistyczny...
Nie istnieje szybki sposób na zrobienie tego...

9 Dla problemów NP-zupełnych ...
Nie potrafię znaleźć szybkiego sposobu na zrobienie tego, ale ci wszyscy ZNANI NAUKOWCY też nie potrafili...

10 Klasa NPI Algorytm deterministyczny Algorytm niedeterministyczny
Problemy decyzyjne Problemy optymalizacyjne Dla decyzyjnych problemów klasy NPC koniecnze jest istnienie wielomianowego (być może niedetermini-stycznego) algorytmu

11 Klasy P, NPI, NPC NPI NPC P

12 Wybrane problemy NPC Spełnialność, 3-spełnialność
Liczba i indeks chromatyczny Największa klika, minimalne pokrycie, najw. zbiór niezależny Cykl i ścieżka hamiltona, problem komiwojażera Najdłuższa ścieżka, najdłuższy cykl Problem plecakowy, podział zbioru Najdłuższy wspólny podciąg Szeregowanie zadań, układanie rozkładów zajęć Izomorfizm grafów ?

13 Wybrane problemy otwarte
Izomorfizm grafów Faktoryzacja Problemy ostatnio zamknięte Programowanie liniowe Stwierdzenie czy liczba jest pierwsza


Pobierz ppt "Algorytmy i struktury danych"

Podobne prezentacje


Reklamy Google