1 / 48

Uniwersytet Dzieci

Uniwersytet Dzieci. Nieważne jaki masz komputer – ważne jaki masz algorytm ! dr Krzysztof Bryś Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska 27 marca 2010. Problem:

silvio
Download Presentation

Uniwersytet Dzieci

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Uniwersytet Dzieci Nieważne jaki masz komputer – ważne jaki masz algorytm ! dr Krzysztof Bryś Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska 27 marca 2010

  2. Problem: • Dane: • Szukane: • Algorytm • przepis na rozwiązanie problemu, • opis sposobu rozwiązania problemu • Jeden problem można rozwiązać wieloma algorytmami ! źródło: KN KOALA

  3. Przykłady algorytmów: • przepis kucharski (jak ugotować budyń tak by był najsmaczniejszy) • sposób ubierania się (w jakiej kolejności zakładać części ubioru) • wybór drogi powrotu do domu (którędy pójść, żeby wrócić najszybciej) źródło: internet

  4. Przykład 1: Problem Dane: Liczba cukierków, które posiada Antek, liczba cukierków, które posiada Bronek, liczba cukierków, które posiada Czarek. Szukane: Łączna liczba cukierków u chłopców. źródło: internet

  5. Algorytm1: 1. Dodaj liczby cukierków u Antka i u Bronka • Do obliczonej liczby dodaj liczbę cukierków u Czarka Algorytm 2 (szybszy ale niegrzeczny): 1. Zabierz cukierki Antkowi, Bronkowi i Czarkowi 2. Policz ile masz cukierków źródło: internet

  6. Przykład 2: Problem: Dane: Obiad składający się z zupy, drugiego dania i deseru Szukane: Zjedzony obiad Algorytm1: • Zjedz zupę. • Zjedz drugie danie. • Zjedz deser. Algorytm2 (wolniejszy ale smaczniejszy ?!) • Zjedz deser • Zjedz drugie danie • Zjedz zupę (jak jeszcze dasz radę) źródło: internet

  7. Algorytmy: - szybkie - wolne Problemy: - łatwe (znamy szybki algorytm rozwiązujący ten problem) - trudne (nie znamy szybkiego algorytmu rozwiązującego ten problem) źródło: internet

  8. Przykłady problemów łatwych: • zjedzenie tortu • zdenerwowanie Mamy • ubranie się przed wyjściem do kina • Zrobienie bałaganu w pokoju

  9. Przykłady problemów trudnych: • nauczenie się matematyki (?!) • spowodowanie, żeby Mama mnie pochwaliła • ubranie się przed wyjściem do szkoły • zrobienie porządku w pokoju • zabicie smoka • znalezienie drogi wyjścia z labiryntu • Trudny problem może stać się łatwym jeśli odkryjemy szybki algorytm rozwiązujący ten problem !!

  10. Graf składa się z elementów pewnego zbioru zwanych wierzchołkamioraz par wierzchołków zwanych krawędziami. Na rysunku grafuwierzchołki reprezentowane są przez punkty a krawędzie przez linie łączące pary wierzchołków. Graf – uniwersalne narzędzie do rozwiązywania problemów z różnych dziedzin nauki i życia codziennego.

  11. Problem siedmiu mostów królewieckich Czy da się przejść po każdym z siedmiu mostów, których układ pokazany jest na poniższym rysunku, dokładnie raz tak, by wrócić do punktu wyjścia?

  12. Leonhard Euler (1736): Nie da się. Dałoby się znaleźć taką drogę w grafie reprezentującym opisaną sytuację wtedy i tylko wtedy gdyby z każdego wierzchołka tego grafu wychodziła parzysta liczba krawędzi. Graf odpowiadający rozmieszczeniu mostów w Królewcu w 1736 roku

  13. Zagadka: Dane: Układ uliczek w parku. Szukane: Czy da się przejść po każdej uliczce w parku dokładnie raz i wrócić do bramy? A B F Brama C E D

  14. A B F Brama C E D

  15. A B F Brama C E D

  16. A B F Brama C E D

  17. A B F Brama C E D

  18. A B F Brama C E D

  19. A B F Brama C E D

  20. A B F Brama C E D

  21. A B F Brama C E D

  22. A B F Brama C E D

  23. A B F Brama C E D

  24. Da się !! Pan Euler wykazał, że zawsze się da jeśli z każdego skrzyżowania (wierzchołka grafu) wychodzi parzysta liczba uliczek (krawędzi grafu) !! A 4 2 B 2 F 2 Brama C 4 4 E D 2

  25. A To spróbujmy znaleźć taką drogę w takim parku: B 3 F Brama C E D Nie da się !! Bo są skrzyżowania, z których wychodzi nieparzysta liczba uliczek !

  26. Problem chińskiego listonosza (Mei Ku Kwan, 1962): Znaleźć najkrótszą drogę, po której powinien przejść listonosz, tak aby przeszedł po każdej ulicy w swoim rejonie i powrócił na pocztę.

  27. Sformułowanie grafowe tego problemu : Niech wierzchołki grafu odpowiadają skrzyżowaniom ulic, a krawędzie odcinkom ulic pomiędzy skrzyżowaniami w rejonie listonosza. Każdej krawędzi przypiszmy wagę równą długości odpowiadającego jej odcinka ulicy. W stworzonym w ten sposób grafie znaleźć taką ścieżkę o najmniejszej sumie wag krawędzi, która zaczyna się i kończy w tym samym wierzchołku.

  28. Łamigłówka Hamiltona (Wiliam Rowan Hamilton 1856): Gramy na grafie będącym siatką dwunastościanu foremnego

  29. Gracz 1: Wybiera 5 pierwszych wierzchołków w taki sposób, że każde dwa kolejne są połączone krawędzią. Gracz 2: Ma za zadanie wybrać pozostałe wierzchołki w takiej kolejności, by utworzyć cykl (czyli drogę zaczynającą się i kończącą się w tym samym wierzchołku) przechodzący przez każdy wierzchołek tego grafu dokładnie raz. Gracz 2 zawsze może wygrać !!! (jeśli pomyśli trochę)

  30. Zagadka Dane: • Na urodziny Adaś zaprosił czwórkę swoich przyjaciół: Basię, Czarka, Dorotkę i Ewę. • Basia i Ewa są przyjaciółmi. • Czarek i Dorotka też się przyjaźnią. • Przyjaciółmi są też Ewa i Dorotka. Szukane: Takie rozsadzenie dzieci przy okrągłym stole, by każde dziecko miało koło siebie przyjaciela. źródło: internet

  31. Rozwiązanie zagadki: Stwórzmy graf, którego wierzchołki odpowiadają dzieciom i dwa wierzchołki są połączone krawędzią jeśli odpowiadające im dzieci są przyjaciółmi. Ten graf będzie wyglądał tak:

  32. Na urodziny Adaś zaprosił czwórkę swoich przyjaciół: Basię, Czarka, Dorotkę i Ewę. • Basia i Ewa są przyjaciółmi. • Czarek i Dorotka też się przyjaźnią. • Przyjaciółmi są też Ewa i Dorotka. Rozwiązanie zagadki: Poszukujemy takiego cyklu w tym grafie, który przejdzie przez każdy wierzchołek dokładnie raz !! W tym grafie taki cykl istnieje !!

  33. Na urodziny Adaś zaprosił czwórkę swoich przyjaciół: Basię, Czarka, Dorotkę i Ewę. • Basia i Ewa są przyjaciółmi. • Czarek i Dorotka też się przyjaźnią. • Przyjaciółmi są też Ewa i Dorotka.

  34. Inna wersja tej zagadki: Dane: • Na urodziny Adaś zaprosił czwórkę swoich przyjaciół: Basię, Czarka, Dorotkę i Ewę. • Basia i Ewa są przyjaciółmi. • Czarek i Dorotka też się przyjaźnią. Szukane: Takie rozsadzenie dzieci przy okrągłym stole, by każde dziecko miało koło siebie przyjaciela.

  35. Odpowiadający tej sytuacji graf : • Na urodziny Adaś zaprosił czwórkę swoich przyjaciół: Basię, Czarka, Dorotkę i Ewę. • Basia i Ewa są przyjaciółmi. • Czarek i Dorotka też się przyjaźnią. Nie da się posadzić dzieci wokół okrągłego stołu tak, by każde dziecko miało za sąsiadów przyjaciół. Urodzin nie będzie !!

  36. Problem komiwojażera: Komiwojażer musi odwiedzić każde z n miast i wrócić do miasta, z którego wyruszył. Chce przebyć jak najkrótszą drogę. Sformułowanie grafowe tego problemu: Niech wierzchołki w grafie odpowiadają miastom. Każde dwa wierzchołki łączymy w tym grafie krawędzią o wadze równej odległości między tymi miastami. Znaleźć w tak stworzonym grafie „najkrótszy” cykl przechodzący przez każdy wierzchołek tego grafu dokładnie raz

  37. Dla 5 miast, wszystkich możliwych dróg komiwojażera jest 4*3*2*1*(1/2)=12 Dla 20 miast, wszystkich możliwych dróg komiwojażera jest około 6 000 000 000 000 000 000. Dla 20 tysięcy miast, wszystkich możliwych dróg komiwojażera jest BARDZO DUŻO – jedynka z 77 tysiącami zer

  38. Komputer (bardzo szybki) może to liczyć nawet przez 100 tysięcy lat !! A dla ilu miast da się policzyć przez rok ? Powiedzmy, że dla 100. To jak kupię 100 razy szybszy komputer, to będę mógł rozwiązać ten problem dla 100 razy większej liczby miast ?! źródło: KN KOALA

  39. Otóż NIE !! Będę mógł policzyć tylko dla 106 miast zamiast dla 100 ! A zapłacę 100 razy więcej pieniędzy !! A jak kupię tysiąc razy szybszy komputer ? To dla 110 miast będę mógł ten problem rozwiązać. Tylko o 10 więcej. źródło:internet

  40. Ale nic nie stoi na przeszkodzie by wymyśleć szybki algorytm rozwiązujący ten problem !!! 

  41. Dziękuje za uwagę

  42. Dziękuje za uwagę

  43. ZADANIA DOMOWE Zagadka: Dane: Układ uliczek w parku. Szukane: Czy da się przejść po każdej uliczce w parku dokładnie raz i wrócić do bramy? Brama

  44. Nie da się !! Bo są skrzyżowania, z których wychodzi nieparzysta liczba uliczek !

  45. Zagadka Dane: Na urodziny Adaś zaprosił czwórkę swoich przyjaciół: Basię, Czarka, Dorotkę i Ewę. Basia i Dorotka są przyjaciółmi. Czarek i Ewa też się przyjaźnią. Przyjaciółmi są też Ewa i Dorotka. Szukane: Takie rozsadzenie dzieci przy okrągłym stole, by każde dziecko miało koło siebie przyjaciela.

More Related