Sztuczna inteligencja w programowaniu gier

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

Download "Sztuczna inteligencja w programowaniu gier"

Transkrypt

1 ztuczna inteligencja w programowaniu gier Algorytmy przeszukiwania przestrzeni rozwiązań Krzysztof Ślot

2 Wprowadzenie Ogólna charakterystyka zagadnienia Cel przeszukiwania: znaleźć element będący rozwiązaniem problemu Hipotezy rozważane w procedurze są znane (możliwe do generacji) Rozwiązanie to akcja (stan) lub sekwencja akcji Rozwiązanie na pewno istnieje Przykładowe zadania przeszukiwania Planowanie trasy (nawigacja), logistyka: zbiór tras (działań) jest skończony, cel to wybór najlepszej trasy (sekwencji działań) Gry: zbiór scenariuszy jest skończony, cel to wybór najlepszego Dopasowywanie danych (rozpoznawanie): skończony zbiór hipotez Genomika poszukiwanie sekwencji nukleotydów kodujących konkretne białko: skończony zbiór sekwencji

3 Misjonarze i kanibale formułowanie zadania Cel: przewieźć grupę misjonarzy i kanibali na drugi brzeg rzeki tan początkowy: 3M, 3K lewy brzeg tan docelowy: 3M, 3K prawy brzeg Operacje: transfery dwuosobową łodzią Ograniczenia: liczba kanibali nie może przekroczyć liczby misjonarzy; łódź nie płynie sama M K Cel M K tart Oczekiwany wynik analizy: sekwencja operacji

4 Misjonarze i kanibale #ML #KL #MP #KP Ł L P L P L P L P L P L P P(1,1) L(1,0) P(0,2) L(0,1) P(2,0) P(1,1) P(2,0) P(0,1) P(0,2) P(0,1) P(0,2)

5 Terminologia tan Elementarny składnik dziedziny problemu Przykłady: sekwencja przystanków planowanej drogi, zbiór parametrów kontrolowanego procesu, stan gry Akcja Operacja, której wynikiem może być zmiana stanu o 1 ( ) o 2 ( ) o xxx yyy ( xxx ) stanys akcje Rozwiązywanie problemu Poszukiwanie stanu spełniającego predefiniowane kryterium (pożądany efekt terapii, sekwencja nukleotydów, sekwencja przystanków) Przestrzeń poszukiwań Przejścia między stanami

6 Terminologia Drzewo poszukiwań: graficzna reprezentacja procesu przeszukiwania tan początlowy Gałęzie Drzewo Węzły końcowe (liście) Ekspansja węzła (stanu) określenie następników danego węzła Bieżący stan Akcje tany następne 1 o 2 o 3 o : (gorączka, wysoki poziom glukozy) : (gorączka, norma) : (norma, poziom niski) 1 o podaj L1 Q zbiór stanów czekających na ekspansję 2 o : (norma, norma) : podaj L2 3 o : podaj L3 Q = {,,,, }

7 Metodologia przeszukiwania Podstawa algorytmów przeszukiwania: Znalezienie systematycznej strategii ekspansji węzłów, zapewniającej osiągnięcie celu Oczekiwane właściwości metody przeszukiwania: Maksymalizacja szybkości procedury Minimalizacja wymaganych zasobów Zapewnienie pewności uzyskania rozwiązania (optymalnego) Złożoność obliczeniowa procesu przeszukiwania: koszt znalezienia rozwiązania + koszt wdrożenia znalezionej sekwencji (akcji) kala trudności funkcja dostępnej wiedzy o problemie (istnienie przesłanek pozwalających ukierunkować procedurę)

8 Ogólna metodologia postępowania Algorytm przeszukiwania Wybór stanu początkowego TART prawdzenie kryterium zakończenia Testuj bieżący węzeł Wynik? TAK TOP Wykonanie wszystkich akcji możliwych dla rozważanego węzła Ekspansja bieżącego węzła Wszystkie? TAK trategia przeszukiwania Wybór następnego węzła do ekspansji

9 Kanibale i misjonarze Rozwiązywanie: powtarzanie kroków prawdzenie osiągnięcia celu (A) Ekspansja węzłą(b) prawdzenie spełnienia ograniczeń i dodanie węzła do zbioru Q (C) A (3,3,0,0,0) <> (0,0,3,3,1) Nie jest rozwiązaniem B P(0,1) 0 = (3,3,0,0,0) P(1,1) 1 = (3,2,0,1,1) P(0,2) P(1,0) P(2,0) C #ML>#KL, #ML=0 ok

10 Metodologie przeszukiwania Kryterium wyboru strategii Dostępność informacji pozwalającej na ukierunkowanie procesu przeszukiwania trategie przeszukiwania Bez dodatkowej informacji (ślepe) Nie istnieją żadne przesłanki pozwalające ukierunkować proces poszukiwań Z informacją (heurystyczne) Istnieją informacje pozwalające na ocenę spodziewanych korzyści Wybór węzła podlegającego ekspansji Metody ślepe: jedyne kryterium to kompletność (nie pominąć rozwiązania) Metody heurytyczne: skupić się na najlepiej rokujących elementach

11 Przeszukiwanie na oślep Różnice między strategiami: reguła ekspansji W jakiej kolejności dokonywać ekspansji węzłów ze zbioru Q,? Przeszukiwanie na oślep Q = {,,,, } Warstwowe (poziome) BF Ekspansja najdłużej oczekującego węzła Q - kolejka Wgłębne (pionowe) DF Ekspansja najpóźniej dodanego węzła Q - stos Q = {,,,, } Q = {,,,, }

12 Przeszukiwanie na oślep Q - kolejka Q - stos Q={1} Q={1} Q={2,3,4} Q={4,3,2} Q={3,4,5,6} Q={7,6,5,3,2} Q={4,5,6,7,8} Q={10,9,8,6,5,3,2}

13 Przykład Przeszukiwanie warstwowe Cel: znalezienie najkrótszej drogi między dwoma punktami mapy Dany punkt startowy i końcowy Znana mapa (przeszkody) Cel tart Przeszkoda Drzewo poszukiwań (4,0) Q = BF (3,0) (4,1) (5,0) (2,0) (3,1) (4,2) (5,1) (6,0) Kolejność ekspansji W,N,E,

14 Przeszukiwanie warstwowe Fazy algorytmu Ekspansja kolejnych węzłów ( fala ) aż do znalezienia rozwiązania Rekonstrukcja ścieżki: powrót od rozwiązania do startu najkrótszą drogą Ścieżka Kolejność ekspansji węzłów: W,N,E,

15 Przeszukiwanie wgłębne Alternatywna strategia rozwiązania: DF Węzły podlegają ekspansji według kolejności pojawiania się (stos) Rekonstrukcja ścieżki: tak jak w strategii poziomej Ścieżka Kolejność ekspansji węzłów: E,, W, N Śiceżka została znaleziona Ścieżka nie jest optymalna (najkrótsza)

16 Właściwości metod przeszukiwania na oślep Kryteria porównawcze strategii Kompletność (Czy jest gwarancja znalezienia rozwiązania?) Optymalność (czy znajdziemy rozwiązanie najlepsze?) Złożoność obliczeniowa (jak długo będzie trwało znalezienie rozwiązania?) Zasoby niezbędne dla realizacji algorytmu Kompletność BF: rozwiązanie będzie znalezione DF: będzie znalezione (uwaga: konieczne monitorowanie listy odwiedzonych węzłów, by uniknąć nieskończonych pętli) Obydwie strategie pozwolą rozwiązać wspomniane problemy, np. misjonarze-kanibale, poszukiwanie ścieżki itd.. Optymalność BF optymalna jeśli koszt przejścia między węzłami jest nieujemny DF: zwykle nieoptymalna (znalezione pierwsze z brzegu rozwiązanie)

17 Złożoność obliczeniowa Porównanie BF i DF Czas: funkcją głebokości drzewa (d) i współczynnika rozgałęzienia (b) 1 1 b b: współczynnik rozgałęzienia średnia liczba potomków każdego węzła 2 d d głębokość drzewa o = 1 + b 1 + b 2 + b b d Przykładowe oszacowania Problem akwizytora: 4 poł./miasto (b), 11 miast (d) Kolorowanie map: 4 kolory (b), 30 regionów (d) o o (10 ) (10 ) Złożoność obliczeniowa może być gigantyczna Konieczne posiadanie listy odwiedzonych węzłów (usuwanie powtórzeń unikanie relacji wykładniczej) Mimo to, złożoność pozostanie ogromna (kombinacje - silnia)

18 Zasoby Porównanie BF i DF Funkcja głebokości drzewa (d) i współczynnika rozgałęzienia (b) BF Konieczne pamiętanie wszystkich węzłów czekających na ekspansję (na danym poziomie) d m b DF Konieczne pamiętanie węzłów na analizowanej ścieżce m bd Gigantyczne zasoby: b=4, d= m 4 10 Wymaganie: 10 GB Niewielkie zasoby: b=4, d=20 m Wymaganie: 80 B

19 Porównanie BF i DF BF DF Kompletność Optymalność Złożoność Zasoby

20 Uzasadnienie strategii Pogłębianie iteracyjne Kombinacje strategii przeszukiwania Wzajemna kompensacja metod: BF (wymagane ogromne zasoby) i DF (nieoptymalność) d=1 d=1 zukaj d=2 Rozwiązanie? d = d + 1 TOP Właściwości metody - Kompletna - Optymalna - Ogromna złożoność obliczeniowa - Małe wymagania co do zasobów

21 Przeszukiwanie na oślep algorytm Dijkstry Problem Zróżnicowany koszt odwiedzin węzła BF, DF nie biorą pod uwagę atrybutów węzła Idea modyfikacji Wybór węzłów do ekspansji na podstawie ich wkładu w całkowity koszt przejścia (wybór minimalnej wartości) Śledzenie historii procesu : rejestracja zakumulowanego kosztu Woda, koszt np. 10 Las, koszt np. 4 Zwykły teren, koszt np. 1 Początek Cel

22 Algorytm Dijkstry DF Długość ścieżki:120 Koszt ścieżki:324 Koszt poszukiwań: 150 BF Długość ścieżki:30 Koszt ścieżki:57 Koszt poszukiwań: 255 Dijkstra Długość ścieżki: 30 Koszt ścieżki: 39 Koszt poszukiwań: 252

23 Przeszukiwanie heurystyczne tosowanie: Problemy, w których istnieją przesłanki pozwalające na ukierunkowanie procesu przeszukiwania Założenia: Możliwe sformułowanie heurystyki (zasady/miary, pozwalającej na ocenę jakości wyboru kierunku dalszych poszukiwań) Ekspansja węzłów w algorytmach heurystycznych Wybieraj do ekspansji najlepiej rokujące węzły (tzn. takie, które mają dają ekstremum wartości przyjętego kryterium oceny)

24 Przeszukiwanie heurystyczne Zasada wyboru węzła do ekspansji: zwycięzca Q = {,,,, } Przeszukiwanie heurystyczne Q = {,,,, } Kandydaci Wybór najlepiej rokujących hipotez Ekspansja zwycięzcy Funkcja kryterialna: heurystyka Odzwierciedla intuicyjną ocenę sytuacji Musi być konstruowana indywidualnie dla danego zadania

25 Przykład: układanka Przeszukiwanie heurystyczne tany [5,7,2,1,8,6,3,x,4}, {1,2,3,4,5,6,7,8,x} Akcje Przesuń x: N,, E, W, jeśli to możliwe Przykładowe przejścia między stanami E i = [ x 4 ] i+1 = [ x 3 4 ] i+1 = [ x ]

26 Przykład - układanka Przykładowe drzewo poszukiwań i = [ x 4 ] [ x 3 4 ] [ x ] [ x ] [572x86134] [ x4] [572x16384] [57216x384] [5x ] [5x ] [5x ] Rozwiązanie zadania przy użyciu metody przeszukiwania na oślep jest nierealne (zbyt złożone obliczeniowo) Współczynnik rozfgałęzienia d to w przybliżeniu 3 Maksymalna głębokość drzewa: N = 9! = zacunkowa złożoność obliczeniowa - d N =

27 Układanka wykorzystanie heurystyki Możliwa heurystyka dla problemu Odległość blokowa 1, 2 kumulowana odległość kostek od ich położeń docelowych f 9 t1 i t i * t j t j * t Drzewo poszukiwań i = [ x 4 ] [ x 3 4 ] f = =16 [ x ] f = =16 [ x ] f = =14 Typowa efektywność średnio nie więcej niż 40 kroków

28 Przeszukiwanie heurystyczne ztandarowa aplikacja: planowanie drogi Znajdź optymalną drogę między A i B,(załóżmy, że dana jest mapa cyfrowa o d=1000 węzłach ze średnim współczynnikiem rozgałęzienia b=3) prawdzenie rozwiązywalności problemu Przeszukiwanie na oślep Ekspansja węzłów musi być heurystyczna Zalety przeszukiwania heurystycznego o Czas od Wielkiego Wybuchu około. 4x10 18 sekund Możliwe radykalne zmniejszenie złożoności obliczeniowej Możliwe radykalne zmniejszenie wymaganych zasobów Wady metodologii Heurystyka nie daje 100% pewności: możliwe fiasko szybkich poszukiwań Nie ma uniwersalnej heurystyki: musi być określana indywidualnie Rozwiązanie może nie być optymalne

29 Przeszukiwanie zachłanne (greedy search) Heurystyka przeszukiwania zachłannego zacowana odległość do celu (jak w układance) BF Długość ścieżki: 30 Koszt ścieżki:30 Koszt poszukiwań: 180 Dijkstra Długość ścieżki: 30 Koszt ścieżki:30 Koszt poszukiwań: 180 DF Długość ścieżki: 54 Koszt ścieżki: 54 Koszt poszukiwań: 183 Greedy search Długość ścieżki: 30 Koszt ścieżki:30 Koszt poszukiwań: 30

30 Algorytm A* (A-star) Podstawowa strategia heurystyczna Połączenie metod poszukiwania zachłannego (ukierunkowanie poszukiwań) i algorytmu Dijkstry (karanie nadmiernie skomplikowanej lub kosztownej ścieżki eksploracji) Koszt całkowity: koszt dotychczasowy + estymata dystansu do celu A* Długość ścieżki: 30 Koszt ścieżki:30 Koszt poszukiwań: 83 Greedy search Długość ścieżki: 34 Koszt ścieżki: 34 Koszt poszukiwań: 41

31 Algorytm A* (A-star) Proporcje między składnikami heurystycznym i zakumulowanym Przyśpieszenie poszukiwań zwiększenie roli heurystyki KC H KZ KC koszt całkowity, H heurystyka, KZ koszt zakumulowany 11/( w h) Przykładowa wartość współczynnika (w+h odległość L1 do celu) 1.01 Długość ścieżki: 62 Koszt poszukiwań: Długość ścieżki: 62 Koszt poszukiwań: 835

32 Algorytm A* Przeszukiwanie w warunkach zróżnicowanego kosztu węzłów t=1 t=3 t=27 t=58 t=83 Długość ścieżki: 30 Koszt ścieżki: 39 Koszt poszukiwań: 92

33 Algorytm A* Optymalny koszt ścieżki Przeszukiwanie zachłanne bezużyteczne Dijkstra Długość ścieżki: 30 Koszt ścieżki: 39 Koszt poszukiwań: 176 Greedy search Długość ścieżki: 30 Koszt ścieżki: 57 Koszt poszukiwań: 30 A* Długość ścieżki: 30 Koszt ścieżki:39 Koszt poszukiwań: 92

34 Przeszukiwanie heurystyczne: gry Gra: powtarzanie dwóch faz (ruch mój ruch przeciwnika) Cel: znalezienie sekwencji ruchów prowadzących do zwycięstwa Zasada algorytmu: maksymalizacja własnej korzyści połączona z minimalizacją korzyści przeciwnika: algorytmy MINI-MAX Korzyść to ilościowa ocena stanu gry po wykonaniu ruchu (ruchów) Ilościowa ocena bieżącego stanu gry (heurystyka) zależy od reguł gry, pomysłowości i intuicji. Utworzenie dobrego opisu ilościowego to element różnicujący rozwiązania.

35 Algorytm MiniMax Cel: znalezienie najlepszego ruchu w danym stanie gry Naprzemienne ruchy gracza G i przeciwnika P Maksymalizacja korzyści G w jego ruchu, minimalizacja w ruchu P Korzyść: ilościowa miara opisująca stan gry Ruch G Ruch P Ruch G Ruch P tany gry

36 Heurystyka Algorytm MiniMax Wartość określana po k symulowanych naprzemiennych posunięciach Musi być określona indywidualnie dla gry Przebieg typowego algorytmu Przeszukuj pionowo na głębokość 2k, oceń stan gry 18 MAX MIN MIN

37 Reguła wyboru ruchu Algorytm MiniMax Maksymalna korzyść, uwzględniająca wszystkie ocenione w procesie analizy sekwencje możliwych wariantów naprzemiennych ruchów Ruch dokonywany na poziomie bieżącego węzła Analiza dokonywana do głębokości 2k Ruch G Ruch P Ruch G Ruch P

38 Algorytm MiniMax Problem Liczba przewidywanych ruchów zależy od złożoności zadania Złożoność to O(b 2k ), gdzie współczynnik rozgałęzienia (b) może być duży: szachy ok. 40) Przykład: szachy b wynosi ok. 40 k= L k= L k=3 L Rozwiązanie Przycinanie drzewa poszukiwań (alfa-beta pruning) Idea metody Rezygnacja z eksploracji gałęzi, które na pewno prowadzą do gorszych rezultatów Problem: jak to oszacować?

39 Przycinanie drzewa Poziom MIN (faza beta ) Jeżeli nowo określany koszt węzła poziomu jest mniejszy niż istniejący, dalsza ekspansja tego węzła jest zbędna (bo i tak spośród wartości tego poziomu zostanie wybrana wartość największa) MIN max 18, k, k min13,? 18

40 Przycinanie drzewa Poziom MAX (faza alfa ) Jeżeli nowo określany koszt węzła poziomu jest większy niż istniejący, dalsza ekspansja tego węzła jest zbędna (bo i tak spośród wartości węzłów tego poziomu zostanie wybrana wartość najmniejsza) , k, k max min,? 12, k, l, k max 21,?, l max min,?

41 Przycinanie drzewa Wymagany stopień eksploracji dla rozważanego drzewa Formalizacja metody Wprowadzanie współczynników alfa i beta skojarzonych z węzłami, określających przedziały, w których powinny zawierać się koszty dla nowo ocenianych węzłów

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

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

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

Rozwiązywanie problemów metodą przeszukiwania

Rozwiązywanie problemów metodą przeszukiwania Rozwiązywanie problemów metodą przeszukiwania Dariusz Banasiak Katedra Informatyki Technicznej W4/K9 Politechnika Wrocławska Reprezentacja problemu w przestrzeni stanów Jedną z ważniejszych metod sztucznej

Bardziej szczegółowo

Podstawy Sztucznej Inteligencji (PSZT)

Podstawy Sztucznej Inteligencji (PSZT) Podstawy Sztucznej Inteligencji (PSZT) Paweł Wawrzyński Przeszukiwanie Przeszukiwanie przestrzeni stanów Motywacja Rozwiązywanie problemów: poszukiwanie sekwencji operacji prowadzącej do celu poszukiwanie

Bardziej szczegółowo

Heurystyczne metody przeszukiwania

Heurystyczne metody przeszukiwania Heurystyczne metody przeszukiwania Dariusz Banasiak Katedra Informatyki Technicznej W4/K9 Politechnika Wrocławska Pojęcie heurystyki Metody heurystyczne są jednym z ważniejszych narzędzi sztucznej inteligencji.

Bardziej szczegółowo

SZTUCZNA INTELIGENCJA

SZTUCZNA INTELIGENCJA SZTUCZNA INTELIGENCJA WYKŁAD 12. PRZESZUKIWANIE Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska ROZWIĄZYWANIE PROBLEMÓW JAKO PRZESZUKIWANIE Istotną rolę podczas

Bardziej szczegółowo

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych ELEMENTY SZTUCZNEJ INTELIGENCJI Laboratorium nr 9 PRZESZUKIWANIE GRAFÓW Z

Bardziej szczegółowo

Podstawy sztucznej inteligencji

Podstawy sztucznej inteligencji wykład 2 Strategie przeszukiwania - ślepe i heurystyczne 27 październik 2011 Plan wykładu 1 Strategie czyli jak znaleźć rozwiązanie problemu Jak wykonać przeszukiwanie Przeszukiwanie przestrzeni stanów

Bardziej szczegółowo

Ćwiczenie 1 Planowanie trasy robota mobilnego w siatce kwadratów pól - Algorytm A

Ćwiczenie 1 Planowanie trasy robota mobilnego w siatce kwadratów pól - Algorytm A Ćwiczenie 1 Planowanie trasy robota mobilnego w siatce kwadratów pól - Algorytm A Zadanie do wykonania 1) Utwórz na pulpicie katalog w formacie Imię nazwisko, w którym umieść wszystkie pliki związane z

Bardziej szczegółowo

Planowanie drogi robota, algorytm A*

Planowanie drogi robota, algorytm A* Planowanie drogi robota, algorytm A* Karol Sydor 13 maja 2008 Założenia Uproszczenie przestrzeni Założenia Problem planowania trasy jest bardzo złożony i trudny. W celu uproszczenia problemu przyjmujemy

Bardziej szczegółowo

Wykład2,24II2010,str.1 Przeszukiwanie przestrzeni stanów powtórka

Wykład2,24II2010,str.1 Przeszukiwanie przestrzeni stanów powtórka Wykład2,24II2010,str.1 Przeszukiwanie przestrzeni stanów powtórka DEFINICJA: System produkcji M zbiórst.zw.stanów wyróżnionys 0 St.zw.stanpoczątkowy podzbiórg St.zw.stanówdocelowych zbiórot.zw.operacji:

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

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

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

Sztuczna Inteligencja i Systemy Doradcze

Sztuczna Inteligencja i Systemy Doradcze Sztuczna Inteligencja i Systemy Doradcze Przeszukiwanie przestrzeni stanów algorytmy ślepe Przeszukiwanie przestrzeni stanów algorytmy ślepe 1 Strategie slepe Strategie ślepe korzystają z informacji dostępnej

Bardziej szczegółowo

Sztuczna Inteligencja i Systemy Doradcze

Sztuczna Inteligencja i Systemy Doradcze ztuczna Inteligencja i ystemy Doradcze Przeszukiwanie przestrzeni stanów Przeszukiwanie przestrzeni stanów 1 Postawienie problemu eprezentacja problemu: stany: reprezentują opisy różnych stanów świata

Bardziej szczegółowo

Techniki optymalizacji

Techniki optymalizacji Techniki optymalizacji Dokładne algorytmy optymalizacji Maciej Hapke maciej.hapke at put.poznan.pl Problem optymalizacji kombinatorycznej Problem optymalizacji kombinatorycznej jest problemem minimalizacji

Bardziej szczegółowo

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD III: Problemy agenta

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD III: Problemy agenta Elementy kognitywistyki II: Sztuczna inteligencja WYKŁAD III: Problemy agenta To już było: AI to dziedzina zajmująca się projektowaniem agentów Określenie agenta i agenta racjonalnego Charakterystyka PAGE

Bardziej szczegółowo

Znajdowanie wyjścia z labiryntu

Znajdowanie wyjścia z labiryntu Znajdowanie wyjścia z labiryntu Zadanie to wraz z problemem pakowania najcenniejszego plecaka należy do problemów optymalizacji, które dotyczą znajdowania najlepszego rozwiązania wśród wielu możliwych

Bardziej szczegółowo

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI POLITECHNIKA WARSZAWSKA WYDZIAŁ MECHANICZNY ENERGETYKI I LOTNICTWA MEL WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI NS 586 Dr inż. Franciszek Dul Poziomy sztucznej inteligencji Sztuczna świadomość? Uczenie się

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

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD V: Agent wciąż szuka rozwiązania (choć już nie na ślepo)

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD V: Agent wciąż szuka rozwiązania (choć już nie na ślepo) Elementy kognitywistyki II: Sztuczna inteligencja WYKŁAD V: Agent wciąż szuka rozwiązania (choć już nie na ślepo) Poprzednio: węzeł reprezentowany jest jako piątka: stan odpowiadający węzłowi rodzic węzła

Bardziej szczegółowo

LABORATORIUM 2: Przeszukiwanie grafów cz. 2 strategie heurystyczne

LABORATORIUM 2: Przeszukiwanie grafów cz. 2 strategie heurystyczne Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny, Politechnika Śląska www.imio.polsl.pl METODY HEURYSTYCZNE LABORATORIUM 2: Przeszukiwanie grafów cz. 2 strategie heurystyczne

Bardziej szczegółowo

Algorytmy dla gier dwuosobowych

Algorytmy dla gier dwuosobowych Algorytmy dla gier dwuosobowych Wojciech Dudek Seminarium Nowości Komputerowe 5 czerwca 2008 Plan prezentacji Pojęcia wstępne (gry dwuosobowe, stan gry, drzewo gry) Algorytm MiniMax Funkcje oceniające

Bardziej szczegółowo

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

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

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

Plan. Struktura czynności myślenia (materiał, operacje reguły)

Plan. Struktura czynności myślenia (materiał, operacje reguły) Myślenie Pojęcie myślenia Plan Struktura czynności myślenia (materiał, operacje reguły) Funkcje myślenia Rola myślenia w rozwiązywaniu problemów (pojęcie problemu i jego rodzaje, fazy rozwiązywania, przeszkody)

Bardziej szczegółowo

Elementy kognitywistyki II:

Elementy kognitywistyki II: Elementy kognitywistyki II: Sztuczna inteligencja WYKŁAD IV: Agent szuka rozwiązania (na ślepo) Poprzednio: etapy rozwiązywania problemu sformułowanie celu sformułowanie problemu stan początkowy (initial

Bardziej szczegółowo

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy Wykład 3 Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy Dynamiczne struktury danych Lista jest to liniowo uporządkowany zbiór elementów, z których dowolny element

Bardziej szczegółowo

Algorytm. Krótka historia algorytmów

Algorytm. Krótka historia algorytmów Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne

Bardziej szczegółowo

ĆWICZENIE 1: Przeszukiwanie grafów strategie heurystyczne

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

Bardziej szczegółowo

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1 Wykład Algorytmy grafowe metoda zachłanna. Właściwości algorytmu zachłannego:. W przeciwieństwie do metody programowania dynamicznego nie występuje etap dzielenia na mniejsze realizacje z wykorzystaniem

Bardziej szczegółowo

Metody Optymalizacji: Przeszukiwanie z listą tabu

Metody Optymalizacji: Przeszukiwanie z listą tabu Metody Optymalizacji: Przeszukiwanie z listą tabu Wojciech Kotłowski Instytut Informatyki Politechniki Poznańskiej email: imię.nazwisko@cs.put.poznan.pl pok. 2 (CW) tel. (61)665-2936 konsultacje: wtorek

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

Algorytmy wyznaczania centralności w sieci Szymon Szylko

Algorytmy wyznaczania centralności w sieci Szymon Szylko Algorytmy wyznaczania centralności w sieci Szymon Szylko Zakład systemów Informacyjnych Wrocław 10.01.2008 Agenda prezentacji Cechy sieci Algorytmy grafowe Badanie centralności Algorytmy wyznaczania centralności

Bardziej szczegółowo

Rekurencja. Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów.

Rekurencja. Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów. Rekurencja Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów. Zgodnie ze znaczeniem informatycznym algorytm rekurencyjny to taki który korzysta z samego

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

Algorytmy mrówkowe. H. Bednarz. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Inteligentne systemy informatyczne

Algorytmy mrówkowe. H. Bednarz. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Inteligentne systemy informatyczne Algorytmy mrówkowe H. Bednarz Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Inteligentne systemy informatyczne 13 kwietnia 2015 1 2 3 4 Przestrzeń poszukiwań Ograniczenia

Bardziej szczegółowo

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI POLITECHNIKA WARSZAWSKA WYDZIAŁ MECHANICZNY ENERGETYKI I LOTNICTWA MEL WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI NS 586 Dr inż. Franciszek Dul 6. GRY POSZUKIWANIA W OBECNOŚCI PRZECIWNIKA Gry Pokażemy, w jaki

Bardziej szczegółowo

Przeszukiwanie przestrzeni rozwiązań, szukanie na ślepo, wszerz, wgłąb

Przeszukiwanie przestrzeni rozwiązań, szukanie na ślepo, wszerz, wgłąb POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRONIKI INFORMATYKA SYSTEMÓW AUTONOMICZNYCH Przeszukiwanie przestrzeni rozwiązań, szukanie na ślepo, wszerz, wgłąb AUTOR: Krzysztof Górski Indeks: 133247 e-mail: 133247@student.pwr.wroc.pl

Bardziej szczegółowo

Algorytmy mrówkowe (optymalizacja kolonii mrówek, Ant Colony optimisation)

Algorytmy mrówkowe (optymalizacja kolonii mrówek, Ant Colony optimisation) Algorytmy mrówkowe (optymalizacja kolonii mrówek, Ant Colony optimisation) Jest to technika probabilistyczna rozwiązywania problemów obliczeniowych, które mogą zostać sprowadzone do problemu znalezienie

Bardziej szczegółowo

SZTUCZNA INTELIGENCJA

SZTUCZNA INTELIGENCJA Instytut Automatyki, Robotyki i Informatyki Politechniki Poznańskiej Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis Literatura SZTUCZNA INTELIGENCJA Modelowanie problemów za

Bardziej szczegółowo

Twój wynik: 4 punktów na 6 możliwych do uzyskania (66,67 %).

Twój wynik: 4 punktów na 6 możliwych do uzyskania (66,67 %). Powrót Twój wynik: 4 punktów na 6 możliwych do uzyskania (6667 %). Nr Opcja Punkty Poprawna Odpowiedź Rozważmy algorytm AVLSequence postaci: 1 Niech drzewo będzie rezultatem działania algorytmu AVLSequence

Bardziej szczegółowo

Partition Search i gry z niezupełną informacją

Partition Search i gry z niezupełną informacją MIMUW 21 stycznia 2010 1 Co to jest gra? Proste algorytmy 2 Pomysł Algorytm Przykład użycia 3 Monte Carlo Inne spojrzenie Definicja Co to jest gra? Proste algorytmy Grą o wartościach w przedziale [0, 1]

Bardziej szczegółowo

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je. Problem porządkowania zwanego również sortowaniem jest jednym z najważniejszych i najpopularniejszych zagadnień informatycznych. Dane: Liczba naturalna n i ciąg n liczb x 1, x 2,, x n. Wynik: Uporządkowanie

Bardziej szczegółowo

Wyznaczanie strategii w grach

Wyznaczanie strategii w grach Wyznaczanie strategii w grach Dariusz Banasiak Katedra Informatyki Technicznej W4/K9 Politechnika Wrocławska Definicja gry Teoria gier i konstruowane na jej podstawie programy stanowią jeden z głównych

Bardziej szczegółowo

K.Pieńkosz Badania Operacyjne Wprowadzenie 1. Badania Operacyjne. dr inż. Krzysztof Pieńkosz

K.Pieńkosz Badania Operacyjne Wprowadzenie 1. Badania Operacyjne. dr inż. Krzysztof Pieńkosz K.Pieńkosz Wprowadzenie 1 dr inż. Krzysztof Pieńkosz Instytut Automatyki i Informatyki Stosowanej Politechniki Warszawskiej pok. 560 A tel.: 234-78-64 e-mail: K.Pienkosz@ia.pw.edu.pl K.Pieńkosz Wprowadzenie

Bardziej szczegółowo

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych Systemy wbudowane Wykład 11: Metody kosyntezy systemów wbudowanych Uproszczone metody kosyntezy Założenia: Jeden procesor o znanych parametrach Znane parametry akceleratora sprzętowego Vulcan Początkowo

Bardziej szczegółowo

Sztuczna Inteligencja i Systemy Doradcze

Sztuczna Inteligencja i Systemy Doradcze Sztuczna Inteligencja i Systemy Doradcze Przeszukiwanie przestrzeni stanów gry Przeszukiwanie przestrzeni stanów gry 1 Gry a problemy przeszukiwania Nieprzewidywalny przeciwnik rozwiązanie jest strategią

Bardziej szczegółowo

Luty 2001 Algorytmy (4) 2000/2001

Luty 2001 Algorytmy (4) 2000/2001 Mając dany zbiór elementów, chcemy znaleźć w nim element największy (maksimum), bądź najmniejszy (minimum). We wszystkich naturalnych metodach znajdywania najmniejszego i największego elementu obecne jest

Bardziej szczegółowo

Algorytm Stentz a D. Przemysław Klęsk Katedra Metod Sztucznej Inteligencji i Matematyki Stosowanej

Algorytm Stentz a D. Przemysław Klęsk Katedra Metod Sztucznej Inteligencji i Matematyki Stosowanej Algorytm tentz a D Przemysław Klęsk pklesk@wi.zut.edu.pl Katedra Metod ztucznej Inteligencji i Matematyki tosowanej Zadanie W nieznanym terenie (lub znanym tylko częściowo) należy dojść do celu o podanych

Bardziej szczegółowo

Schemat programowania dynamicznego (ang. dynamic programming)

Schemat programowania dynamicznego (ang. dynamic programming) Schemat programowania dynamicznego (ang. dynamic programming) Jest jedną z metod rozwiązywania problemów optymalizacyjnych. Jej twórcą (1957) był amerykański matematyk Richard Ernest Bellman. Schemat ten

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

Techniki optymalizacji

Techniki optymalizacji Techniki optymalizacji Metaheurystyki oparte na algorytmach lokalnego przeszukiwania Maciej Hapke maciej.hapke at put.poznan.pl GRASP Greedy Randomized Adaptive Search Procedure T.A. Feo, M.G.C. Resende,

Bardziej szczegółowo

Wykład 7 i 8. Przeszukiwanie z adwersarzem. w oparciu o: S. Russel, P. Norvig. Artificial Intelligence. A Modern Approach

Wykład 7 i 8. Przeszukiwanie z adwersarzem. w oparciu o: S. Russel, P. Norvig. Artificial Intelligence. A Modern Approach (4g) Wykład 7 i 8 w oparciu o: S. Russel, P. Norvig. Artificial Intelligence. A Modern Approach P. Kobylański Wprowadzenie do Sztucznej Inteligencji 177 / 226 (4g) gry optymalne decyzje w grach algorytm

Bardziej szczegółowo

Zadanie 1: Piętnastka

Zadanie 1: Piętnastka Informatyka, studia dzienne, inż. I st. semestr VI Sztuczna Inteligencja i Systemy Ekspertowe 2010/2011 Prowadzący: mgr Michał Pryczek piątek, 12:00 Data oddania: Ocena: Grzegorz Graczyk 150875 Marek Rogalski

Bardziej szczegółowo

Optymalizacja. Przeszukiwanie lokalne

Optymalizacja. Przeszukiwanie lokalne dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Maciej Hapke Idea sąsiedztwa Definicja sąsiedztwa x S zbiór N(x) S rozwiązań, które leżą blisko rozwiązania x

Bardziej szczegółowo

Definicje. Algorytm to:

Definicje. Algorytm to: Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi

Bardziej szczegółowo

Technologia informacyjna Algorytm Janusz Uriasz

Technologia informacyjna Algorytm Janusz Uriasz Technologia informacyjna Algorytm Janusz Uriasz Algorytm Algorytm - (łac. algorithmus); ścisły przepis realizacji działań w określonym porządku, system operacji, reguła komponowania operacji, sposób postępowania.

Bardziej szczegółowo

a) 7 b) 19 c) 21 d) 34

a) 7 b) 19 c) 21 d) 34 Zadanie 1. Pytania testowe dotyczące podstawowych własności grafów. Zadanie 2. Przy każdym z zadań może się pojawić polecenie krótkiej charakterystyki algorytmu. Zadanie 3. W zadanym grafie sprawdzenie

Bardziej szczegółowo

Analiza stanów gry na potrzeby UCT w DVRP

Analiza stanów gry na potrzeby UCT w DVRP Analiza stanów gry na potrzeby UCT w DVRP Seminarium IO na MiNI 04.11.2014 Michał Okulewicz based on the decision DEC-2012/07/B/ST6/01527 Plan prezentacji Definicja problemu DVRP DVRP na potrzeby UCB Analiza

Bardziej szczegółowo

Optymalizacja. Wybrane algorytmy

Optymalizacja. Wybrane algorytmy dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Andrzej Jaszkiewicz Problem optymalizacji kombinatorycznej Problem optymalizacji kombinatorycznej jest problemem

Bardziej szczegółowo

Algorytm genetyczny (genetic algorithm)-

Algorytm genetyczny (genetic algorithm)- Optymalizacja W praktyce inżynierskiej często zachodzi potrzeba znalezienia parametrów, dla których system/urządzenie będzie działać w sposób optymalny. Klasyczne podejście do optymalizacji: sformułowanie

Bardziej szczegółowo

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI POLITECHNIKA WARSZAWSKA WYDZIAŁ MECHANICZNY ENERGETYKI I LOTNICTWA MEL WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI NS 586 Dr inż. Franciszek Dul 5. ROZWIĄZYWANIE PROBLEMÓW Z OGRANICZENIAMI Problemy z ograniczeniami

Bardziej szczegółowo

Genomika Porównawcza. Agnieszka Rakowska Instytut Informatyki i Matematyki Komputerowej Uniwersytet Jagiellooski

Genomika Porównawcza. Agnieszka Rakowska Instytut Informatyki i Matematyki Komputerowej Uniwersytet Jagiellooski Genomika Porównawcza Agnieszka Rakowska Instytut Informatyki i Matematyki Komputerowej Uniwersytet Jagiellooski 1 Plan prezentacji 1. Rodzaje i budowa drzew filogenetycznych 2. Metody ukorzeniania drzewa

Bardziej szczegółowo

Wprowadzenie do Sztucznej Inteligencji

Wprowadzenie do Sztucznej Inteligencji Wprowadzenie do Sztucznej Inteligencji Wykład Informatyka Studia InŜynierskie Przeszukiwanie przestrzeni stanów Przestrzeń stanów jest to czwórka uporządkowana [N,[, S, GD], gdzie: N jest zbiorem wierzchołków

Bardziej szczegółowo

Tworzenie gier na urządzenia mobilne

Tworzenie gier na urządzenia mobilne Katedra Inżynierii Wiedzy Teoria podejmowania decyzji w grze Gry w postaci ekstensywnej Inaczej gry w postaci drzewiastej, gry w postaci rozwiniętej; formalny opis wszystkich możliwych przebiegów gry z

Bardziej szczegółowo

Algorytmy i struktury danych

Algorytmy i struktury danych Algorytmy i struktury danych ĆWICZENIE 2 - WYBRANE ZŁOŻONE STRUKTURY DANYCH - (12.3.212) Prowadząca: dr hab. inż. Małgorzata Sterna Informatyka i3, poniedziałek godz. 11:45 Adam Matuszewski, nr 1655 Oliver

Bardziej szczegółowo

Algorytmy przeszukiwania grafów i drzew dla gier i łamigłówek

Algorytmy przeszukiwania grafów i drzew dla gier i łamigłówek 1/ 39 Algorytmy przeszukiwania grafów i drzew dla gier i łamigłówek Przemysław Klęsk pklesk@wi.ps.pl Zagadnienia i algorytmy 2/ 39 1 Zachłanne (wyczerpujące) przeszukiwanie grafu (algorytm Breadth First

Bardziej szczegółowo

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

Złożoność obliczeniowa klasycznych problemów grafowych 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.

Bardziej szczegółowo

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska DRZEWO REGRESYJNE Sposób konstrukcji i przycinania

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

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

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

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013 http://www.wilno.uwb.edu.

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013 http://www.wilno.uwb.edu. SYLLABUS na rok akademicki 01/013 Tryb studiów Studia stacjonarne Kierunek studiów Informatyka Poziom studiów Pierwszego stopnia Rok studiów/ semestr /3 Specjalność Bez specjalności Kod katedry/zakładu

Bardziej szczegółowo

PODEJMOWANIE DECYZJI W WARUNKACH NIEPEŁNEJ INFORMACJI

PODEJMOWANIE DECYZJI W WARUNKACH NIEPEŁNEJ INFORMACJI Wprowadzenie do badań operacyjnych z komputerem Opisy programów, ćwiczenia komputerowe i zadania. T. Trzaskalik (red.) Rozdział 5 PODEJMOWANIE DECYZJI W WARUNKACH NIEPEŁNEJ INFORMACJI 5.2. Ćwiczenia komputerowe

Bardziej szczegółowo

3. MINIMAX. Rysunek 1: Drzewo obrazujące przebieg gry.

3. MINIMAX. Rysunek 1: Drzewo obrazujące przebieg gry. 3. MINIMAX. Bardzo wygodną strukturą danych pozwalającą reprezentować stan i przebieg gry (szczególnie gier dwuosobowych) jest drzewo. Węzły drzewa reprezentują stan gry po wykonaniu ruchu przez jednego

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

Zastosowania algorytmów heurystycznych do sterowania systemami autonomicznymi

Zastosowania algorytmów heurystycznych do sterowania systemami autonomicznymi Wrocław, 16.06.2009 Zastosowania algorytmów heurystycznych do sterowania systemami autonomicznymi Opracował: Janusz Taterka 1. Wstęp W systemach autonomicznych spotykamy się z zadaniami planowania działań.

Bardziej szczegółowo

Metody ilościowe w badaniach ekonomicznych

Metody ilościowe w badaniach ekonomicznych prof. dr hab. Tadeusz Trzaskalik dr hab. Maciej Nowak, prof. UE Wybór portfela projektów z wykorzystaniem wielokryterialnego programowania dynamicznego Metody ilościowe w badaniach ekonomicznych 19-06-2017

Bardziej szczegółowo

Teoria gier matematyki). optymalności decyzji 2 lub więcej Decyzja wpływa na wynik innych graczy strategiami

Teoria gier matematyki). optymalności decyzji 2 lub więcej Decyzja wpływa na wynik innych graczy strategiami Teoria gier Teoria gier jest częścią teorii decyzji (czyli gałęzią matematyki). Teoria decyzji - decyzje mogą być podejmowane w warunkach niepewności, ale nie zależą od strategicznych działań innych Teoria

Bardziej szczegółowo

Projekty zaliczeniowe Podstawy Programowania 2012/2013

Projekty zaliczeniowe Podstawy Programowania 2012/2013 Projekty zaliczeniowe Podstawy Programowania 2012/2013 0. Zasady ogólne W skład projektu wchodzą następujące elementy: dokładny opis rozwiązywanego problemu opis słowny rozwiązania problemu wraz z pseudokodami

Bardziej szczegółowo

Obliczenia inspirowane Naturą

Obliczenia inspirowane Naturą Obliczenia inspirowane Naturą Wykład 01 Modele obliczeń Jarosław Miszczak IITiS PAN Gliwice 05/10/2016 1 / 33 1 2 3 4 5 6 2 / 33 Co to znaczy obliczać? Co to znaczy obliczać? Deterministyczna maszyna Turinga

Bardziej szczegółowo

Wprowadzenie do Sztucznej Inteligencji

Wprowadzenie do Sztucznej Inteligencji Wprowadzenie do Sztucznej Inteligencji Wykład Informatyka Studia InŜynierskie Przeszukiwanie przestrzeni stanów Przestrzeń stanów jest to czwórka uporządkowana [N,, S, GD], gdzie: N jest zbiorem wierzchołków

Bardziej szczegółowo

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II Wykład 6. Drzewa cz. II 1 / 65 drzewa spinające Drzewa spinające Zliczanie drzew spinających Drzewo T nazywamy drzewem rozpinającym (spinającym) (lub dendrytem) spójnego grafu G, jeżeli jest podgrafem

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

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa Jacek Skorupski pok. 251 tel. 234-7339 jsk@wt.pw.edu.pl http://skorupski.waw.pl/mmt prezentacje ogłoszenia konsultacje: poniedziałek 16 15-18, sobota zjazdowa 9 40-10 25 Udział w zajęciach Kontrola wyników

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

CZYM JEST SZTUCZNA INTELIGENCJA? REPREZENTACJA WIEDZY SZTUCZNA INTELIGENCJA PROJEKTOWANIE ALGORYTMÓW I METODY SZTUCZNEJ INTELIGENCJI

CZYM JEST SZTUCZNA INTELIGENCJA? REPREZENTACJA WIEDZY SZTUCZNA INTELIGENCJA PROJEKTOWANIE ALGORYTMÓW I METODY SZTUCZNEJ INTELIGENCJI PROJEKTOWANIE ALGORYTMÓW I METODY SZTUCZNEJ INTELIGENCJI CZYM JEST SZTUCZNA INTELIGENCJA? Jak działa ludzki mózg? SZTUCZNA INTELIGENCJA Jak zasymulować ludzki mózg? Co to kogo obchodzi zróbmy coś pożytecznego

Bardziej szczegółowo

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ Zalety: nie wprowadzają żadnych ograniczeń na sformułowanie problemu optymalizacyjnego. Funkcja celu może być wielowartościowa i nieciągła, obszar

Bardziej szczegółowo

BADANIA OPERACYJNE i teoria optymalizacji. Prowadzący: dr Tomasz Pisula Katedra Metod Ilościowych

BADANIA OPERACYJNE i teoria optymalizacji. Prowadzący: dr Tomasz Pisula Katedra Metod Ilościowych BADANIA OPERACYJNE i teoria optymalizacji Prowadzący: dr Tomasz Pisula Katedra Metod Ilościowych e-mail: tpisula@prz.edu.pl 1 Literatura podstawowa wykorzystywana podczas zajęć wykładowych: 1. Gajda J.,

Bardziej szczegółowo

Algorytmy ewolucyjne (3)

Algorytmy ewolucyjne (3) Algorytmy ewolucyjne (3) http://zajecia.jakubw.pl/nai KODOWANIE PERMUTACJI W pewnych zastosowaniach kodowanie binarne jest mniej naturalne, niż inne sposoby kodowania. Na przykład, w problemie komiwojażera

Bardziej szczegółowo

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu danych

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

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

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2 Metody teorii gier ALP520 - Wykład z Algorytmów Probabilistycznych p.2 Metody teorii gier Cel: Wyprowadzenie oszacowania dolnego na oczekiwany czas działania dowolnego algorytmu losowego dla danego problemu.

Bardziej szczegółowo

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski : idea Indeksowanie: Drzewo decyzyjne, przeszukiwania binarnego: F = {5, 7, 10, 12, 13, 15, 17, 30, 34, 35, 37, 40, 45, 50, 60} 30 12 40 7 15 35 50 Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski

Bardziej szczegółowo

2. Metody podejmowania decyzji w warunkach pewności... 37

2. Metody podejmowania decyzji w warunkach pewności... 37 Spis treści Wstęp... 7 1. Problemy i procesy decyzyjne w organizacji... 11 1.1. Istota decyzji menedżerskich w organizacji... 11 1.2. Sytuacje decyzyjne, problemy decyzyjne i decyzje w organizacji.. 15

Bardziej szczegółowo