Pobierz prezentację
OpublikowałKrzysztof Chwalisz Został zmieniony 10 lat temu
2
ZNAJDOWANIE NAJKRÓTSZYCH DRÓG oraz NAJNIŻSZYCH i NAJKRÓTSZYCH DRZEW WSTĘP DO OBLICZEŃ NA GRAFACH
Maciej M. Sysło Uniwersytet Wrocławski Uniwersytet UMK w Toruniu informatyka +
3
Algorytm, algorytmika algorytm od Muhammad informatyka +
Algorytm – opis rozwiązania krok po kroku postawionego problemu lub sposobu osiągnięcia jakiegoś celu Pierwszy algorytm – algorytm Euklidesa 300 p.n.e algorytm od Muhammad ibn Musa al-Chorezmi IX w. Algorytmika – dziedzina zajmująca się algorytmami i ich własnościami informatyka +
4
Algorytmy a informatyka
Informatyka – jedna z definicji: dziedzina wiedzy i działalności zajmująca się algorytmami Donald E. Knuth: Mówi się często, że człowiek dotąd nie zrozumie czegoś, zanim nie nauczy tego – kogoś innego. W rzeczywistości, człowiek nie zrozumie czegoś (algorytmu) naprawdę, zanim nie zdoła nauczyć tego – komputera. Ralf Gomory (IBM): Najlepszym sposobem przyspieszania komputerów jest obarczanie ich mniejszą liczbą działań (szybszymi algorytmami) informatyka +
5
Grafy i algorytmy informatyka + Plan: Przykłady pojawiania się grafów
siatki wielościanów mosty królewieckie – figury jednobieżne malowanie map drzewa w informatyce sieci dróg cykle Hamilton Przykłady trudnych problemów szukanie trasy objazdu Problemy, które mają efektywne algorytmy szukanie najniższych drzew – krótkich kodów komputerowe reprezentacje grafów problemy najkrótszych dróg problem najkrótszego drzewa informatyka +
6
Grafy – przykłady występowania – wielościany
Leonhard Euler ( ) – Ojciec Teorii Grafów: Podał zależność między liczbą wierzchołków. krawędzi i ścian w wielościanach Sześcian Spłaszczony sześcian Wierzchołki Krawędzie Ściany Wzór Eulera: Liczba wierzchołków + liczba ścian = 2 + liczba krawędzi n + f = 2 + m dla sześcianu: = informatyka +
7
Grafy – przykłady występowania – grafy Eulera, 1
Leonhard Euler ( ) – Ojciec Teorii Grafów: 1736: Problem mostów Królewieckich Czy istnieje droga, która zawiera każdy most (każdą krawędź) dokładnie raz? Do każdego wierzchołka, z wyjątkiem dwóch, tyle samo razy musimy wyjść, ile razy wchodzimy informatyka +
8
Grafy – przykłady występowania – grafy Eulera, 2
Leonhard Euler ( ) – Ojciec Teorii Grafów: 1736: Problem mostów Królewieckich Figury unikursalne, jednobieżne informatyka +
9
Kolorowanie map informatyka + Problem czterech kolorów (1852):
Czy każdą mapę można pomalować 4 kolorami? Mapa województw Graf województw Pomalowany graf 1976: K. Appel. W. Haken i J. Koch (programista) Pierwszy dowód – z wykorzystaniem komputera informatyka +
10
Drzewa w informatyce informatyka + Drzewo algorytmu
Drzewa – grafy spójne bez cykli Drzewa obliczeń Zastosowanie: ONP Odwrotna Notacja Polska Jan Łukasiewicz (1920) (6 + 3)*(5 – 3*4) (x2+ y2)/(a – b) informatyka +
11
Drzewa w algorytmice – wyłanianie zwycięzcy
Porównania – mecze Tomek Ośmiu zawodników: 7 meczy n zawodników: n – 1 meczy Bartek Tomek Bartek Witek Tomek Tolek Bartek Romek Bolek Witek Tomek Zenek Tolek Felek informatyka +
12
A jak znaleźć drugiego najlepszego zawodnika w turnieju?
Tomek Czy jest nim Bartek? Bo przegrał z Tomkiem? Ale Bartek nie grał z drugą połową! Bartek Tomek ??? Tylko dwa dodatkowe mecze! Bartek Witek ??? Tomek Tolek Bartek Romek Bolek Witek Tomek Zenek Tolek Felek informatyka +
13
Sieci dróg samochodowych, kolejowych, lotniczych …
informatyka +
14
Grafy Hamiltona informatyka + William R. Hamilton (1805-1865):
1859: cykl Hamiltona – przechodzi przez każdy wierzchołek dokładnie raz Dwunastościan foremny Siatka (graf) dwunastościanu Cykl Hamiltona informatyka +
15
Zastosowanie – najkrótsza trasa premiera, 1
Problem: Znajdź najkrótszą trasę dla Premiera przez wszystkie miasta wojewódzkie. Rozwiązanie: Premier zaczyna w Stolicy a inne miasta może odwiedzać w dowolnej kolejności. Tych możliwości jest: 15*14*13*12*11*…*2*1 = 15! (15 silnia) W 1990 roku było: 48*47*46*…*2*1 = 48! (48 silnia) informatyka +
16
Zastosowanie – najkrótsza trasa premiera, 2
Wartości funkcji n! Rosną BARDZO SZYBKO Prezydent Stanów Zjednoczonych ma problem ze znalezieniem najkrótszej trasy objazdu Stanów. Na superkomputerze o mocy 1 PFlops – ile trwa obliczanie n! 15! = /1015 sek. = ok sek. 48! = 1, *1061/1015 = 3*1038 lat 25! = /1015 sek. = sek. = = dni = 491 lat informatyka +
17
Zastosowanie – najkrótsza trasa premiera, 3
Trudno sprawdzić, jak dobre jest to rozwiązanie w stosunku do najlepszego, bo go nie znamy. Zły wybór Algorytmy przybliżone szukania rozwiązań: Metoda zachłanna – najbliższy sąsiad – mogą być bardzo złe Meta-heurystyki: algorytmy genetyczne – krzyżowanie i mutowanie rozwiązań algorytmy mrówkowe – modelowanie feromonów informatyka +
18
Krótkie kody – kompresja
Kody: ASCII a: b: d: k: r: Huffman 110 1111 10 abrakadabra 88 znaków 24 znaki
19
Krótkie kody – kompresja
Drzewo Huffmana Litery i ich częstości Kody Krótsze dla często występujących liter Algorytm Huffmana: Powtarzaj, aż zostanie jedna liczba: Wybierz dwie najmniejsze częstości i dodaj ich sumę do ciągu M.M. Sysło
20
Reprezentacje grafów w komputerze
M.M. Sysło
21
Najkrótsze drogi M.M. Sysło
22
Najkrótsze drzewa M.M. Sysło
23
Najlepszym sposobem przyspieszania komputerów
Konkluzja Najlepszym sposobem przyspieszania komputerów jest obarczanie ich mniejszą liczbą działań (szybszymi algorytmami) [Ralf Gomory, IBM]
24
Pokrewne zajęcia w Projekcie Informatyka +
Wykład+Warsztaty (Wszechnica Poranna): Wprowadzenie do algorytmiki i programowania – wyszukiwanie i porządkowanie informacji Proste rachunki wykonywane za pomocą komputera. Techniki algorytmiczne – przybliżone (heurystyczne) i dokładne. Wykłady (Wszechnica Popołudniowa): Czy wszystko można policzyć na komputerze? Porządek wśród informacji kluczem do szybkiego wyszukiwania. Dlaczego możemy się czuć bezpieczni w sieci, czyli o szyfrowaniu informacji. Znajdowanie najkrótszych dróg, najniższych drzew, najlepszych małżeństw informatyka +
25
Pokrewne zajęcia w Projekcie Informatyka +
Kursy (24 godz.) – Wszechnica na Kołach: Algorytmy poszukiwania i porządkowania. Elementy języka programowania Różnorodne algorytmy obliczeń i ich komputerowe realizacje Grafy, algorytmy grafowe i ich komputerowe realizacje Kursy (24 godz.) – Kuźnia Informatycznych Talentów – KIT dla Orłów: Przegląd podstawowych algorytmów Struktury danych i ich wykorzystanie Zaawansowane algorytmy Tendencje – Wykłady Algorytmy w Internecie, K. Diks Czy P = NP, czyli jak wygrać milion dolarów w Sudoku, J. Grytczuk Między przeszłością a przyszłość informatyki, M.M Sysło informatyka +
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.