Your SlideShare is downloading. ×
0
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Metody przeszukiwania przestrzeni
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Metody przeszukiwania przestrzeni

2,035

Published on

Podstawy przeszukiwania grafów z przykładem kodu

Podstawy przeszukiwania grafów z przykładem kodu

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,035
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Next: Rozwiązywanie problemów
  • Problem kojarzenia małżeństw (Facebook), Problemy „geograficzne”, Przejście labiryntu, WnioskowanieRozwiązanie zadania polega na znalezieniu wierzchołka lub ścieżki spełniających nasze warunkiWiększość problemów da się przedstawić w postaci zbioru węzłów wzajemnie połączonych
  • Next: Strategie przeszukiwania przestrzeni
  • Next: Strategie z funkcją oceny
  • Funkcja g przyporządkowuje każdemu węzłowi wartość liczbową, zwaną funkcją oceny. Zadanie przeszukiwania sprowadza się do znalezienia takiego węzła, dla którego funkcja oceny przyjmuje największą (albo najmniejszą) wartość. Problem plecakowy (problem włamywacza w sklepie jubilerskim, którego worek ma ograniczony udźwig)
  • Węzłysą rozważane w kolejności najmniejszej wartości funkcji heurystycznej, z całkowitym pominięciem funkcji oceny g(s)
  • Transcript

    • 1. Metody przeszukiwania przestrzeni<br />Dawid Cieszyński<br />http://cieszak.eu<br />
    • 2. Agenda<br />Sposób na rozwiązywanie problemów<br />Algorytm rozwiązywania<br />Wybrane strategie<br />Narzędzia<br />Podsumowanie<br />
    • 3. Twierdzenie o kojarzeniu małżeństw<br />Problem komiwojażera<br />Problem chińskiego listonosza<br />Problem marszrutyzacji<br />Rozwiązywanie problemów<br />
    • 4. Algorytm przeszukiwania przestrzeni <br />At – zbiór węzłów do odwiedzenia<br />Vt – zbiór węzłów odwiedzonych<br />st – bieżący węzeł<br />t = 0<br />V0 = {s0}<br />At=N(s0)<br />Powtarzaj {<br />Wybierz st+1 z At<br />Vt+1 = Vt U {st+1}<br />t = t + 1<br />} Dopóki niespełniony warunek zatrzymania<br />N(st) – funkcja zwracająca sąsiadów wezła st<br />
    • 5. Strategie przeszukiwania przestrzeni<br />Strategie ślepe<br />W głąb<br />Wszerz<br />Strategie z funkcją oceny(„najpierw najlepszy”)<br />Równomiernego kosztu (zysku) <br />Wykorzystujące funkcję heurystyczną:<br />zachłanna<br />A*<br />
    • 6. Strategie ślepe<br />
    • 7. Przeszukiwanie w głąb(Depth-first search)<br />Przeszukiwanie zaczyna się od korzenia i porusza się w dół do samego końca gałęzi, po czym wraca się o jeden poziom i próbuje kolejne gałęzie itd.<br />Zbiór Atjest reprezentowany jako kolejka LIFO (stos)<br />
    • 8. Przeszukiwanie wszerz(Breadth-first search) <br />Algorytm zaczyna od korzenia i odwiedza wszystkie połączone z nim węzły. Następnie odwiedza węzły połączone z tymi węzłami i tak dalej, aż do odnalezienia celu.<br />zbiór Atjest kolejką FIFO <br />
    • 9. Strategie z funkcją oceny<br />
    • 10. Funkcja oceny węzła<br />g: S -> R<br />Problem plecakowy<br />
    • 11. Równomiernego kosztu (zysku) <br />5<br />8<br />7<br />3<br />4<br />1<br />6<br />2<br />
    • 12. Funkcja heurystyczna<br />h: S -> R<br />Przykłady funkcji heurystycznych:<br /><ul><li>Odległość geograficzna
    • 13. Problem plecakowy: „Największy obiekt, który się jeszcze zmieści”
    • 14. Piętnastka/Dzięwiątka: „Ilość ruchów potrzebnych do przemieszczenia liczby na właściwąpozycję”</li></li></ul><li>A*<br />Algorytm A* od wierzchołka początkowego tworzy ścieżkę, za każdym razem wybierając wierzchołek x z dostępnych w danym kroku niezbadanych wierzchołków tak, by minimalizować funkcję f(x) zdefiniowaną:f(x) = g(x) + h(x)gdzie:g(x) – droga pomiędzy wierzchołkiem początkowym a x. Dokładniej: suma wag krawędzi, które należą już do ścieżki plus waga krawędzi łączącej aktualny węzeł z x.<br /> h(x) – przewidywana przez heurystykę droga od x do wierzchołka docelowego.<br />W każdym kroku algorytm dołącza do ścieżki wierzchołek o najniższym współczynniku f. Kończy w momencie natrafienia na wierzchołek będący wierzchołkiem docelowym.<br />
    • 15. Metoda zachłanna<br />g(s) + h(s)<br />
    • 16. Demo<br />Przykładowy problem<br />
    • 17. 1<br />2<br />3<br />4<br />9<br />10<br />5<br />0<br />11<br />7<br />16<br />6<br />8<br />21<br />15<br />12<br />22<br />13<br />18<br />14<br />17<br />19<br />20<br />
    • 18. Narzędzia<br />Graphviz-Graph Visualization Software<br /><ul><li>http://www.graphviz.org/</li></li></ul><li>Narzędzia<br />QuickGraph: A 100% C# graph library with Graphviz Support.<br /><ul><li>http://quickgraph.codeplex.com/documentation</li></li></ul><li>Narzędzia<br />A+ Pathfinding Algorithm<br />http://www.planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=62790&lngWId=1<br />
    • 19. Podsumowanie<br />Różne metody, w zależności od problemu<br />Gotowe narzędzia do obsługi grafów wraz z gotowymi strategiami<br />
    • 20. Dziękuję za uwagę<br />Metody przeszukiwania przestrzeni<br /><ul><li>http://mediawiki.ilab.pl/index.php/Sztuczna_inteligencja/SI_Moduł_5_-_Wnioskowanie_jako_metoda_przeszukiwania
    • 21. http://mediawiki.ilab.pl/index.php/Sztuczna_inteligencja/SI_Modu%C5%82_6
    • 22. http://pl.wikipedia.org/wiki/Przeszukiwanie_grafu
    • 23. http://aragorn.pb.bialystok.pl/~radev/ai/se/zal/ready/kossakowska.htm</li></ul>Źródła rysunków:<br /><ul><li>http://mediawiki.ilab.pl/index.php/Sztuczna_inteligencja/SI_Modu%C5%82_5_-_Wnioskowanie_jako_metoda_przeszukiwania
    • 24. http://tapety.tja.pl/tapeta_37627.html
    • 25. http://www.nexto.pl/e-ksiazki/arkusze_oceny_okresowej_pracownika_-_ebook_p2186.xml
    • 26. http://www.bing.com/maps/</li>

    ×