METODY HEURYSTYCZNE wykład 1

Podobne dokumenty
METODY HEURYSTYCZNE wykład 1

METODY HEURYSTYCZNE wykład 1

METODY HEURYSTYCZNE wykład 1

METODY HEURYSTYCZNE wykład 1

METODY. cy: dr inż.. Witold Beluch (p. 149) 15h laboratorium: 15h. prowadzący LITERATURA: Duch: CZĄ SIĘ EGZAMINEM

METODY HEURYSTYCZNE wykład 1

METODY LITERATURA: prowadzący (p. 149) 15h laboratorium: 15h CZĄ SIĘ ZALICZENIEM HEURYSTYCZNE CO TO ZNACZY?! HEURYSTYCZNE. Heuristic. O=0.65k+0.

Metody przeszukiwania

Heurystyczne metody przeszukiwania


Rozwiązywanie problemów metodą przeszukiwania

Sztuczna Inteligencja i Systemy Doradcze

Raport z projektu. Przedmiot: Algorytmy i struktury danych 1 Projekt: Wieża Hanoi Autor: Wojciech Topolski

Elementy kognitywistyki II:

Heurystyki. Strategie poszukiwań

Marcel Stankowski Wrocław, 23 czerwca 2009 INFORMATYKA SYSTEMÓW AUTONOMICZNYCH

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

Podstawy sztucznej inteligencji

ĆWICZENIE 1: Przeszukiwanie grafów cz. 1 strategie ślepe

Algorytmy. wer Wojciech Myszka 30 listopada 2008

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Wybrane podstawowe rodzaje algorytmów

Metody algortmiczne (Algorytmy Część IV)

Wstęp do Sztucznej Inteligencji

Matematyczne Podstawy Informatyki

Sztuczna Inteligencja i Systemy Doradcze

Wprowadzenie do Sztucznej Inteligencji

METODY HEURYSTYCZNE wykład 2

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

SZTUCZNA INTELIGENCJA

Teoria grafów dla małolatów. Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska

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

Działanie algorytmu oparte jest na minimalizacji funkcji celu jako suma funkcji kosztu ( ) oraz funkcji heurystycznej ( ).

Podstawy Sztucznej Inteligencji (PSZT)

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

SID Wykład 2 Przeszukiwanie

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

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie

Algorytmiczna teoria grafów

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

PRZEWODNIK PO PRZEDMIOCIE

KARTA MODUŁU KSZTAŁCENIA

Elementy sztucznej inteligencji. Materiał udostępniony na prawach rękopisu

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek

Złożoność problemów. 1 ruch na sekundę czas wykonania ok lat 1 mln ruchów na sekundę czas wykonania ok.

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

Wyznaczanie strategii w grach

ĆWICZENIE 1: Przeszukiwanie grafów strategie heurystyczne

METODY HEURYSTYCZNE wykład 2

Algorytmy i struktury danych

LABORATORIUM 7: Problem komiwojażera (TSP) cz. 2

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

METODY HEURYSTYCZNE wykład 2

SID Wykład 1 Wprowadzenie

Planowanie drogi robota, algorytm A*

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

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

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

Struktura danych. Sposób uporządkowania informacji w komputerze.

STRATEGIE HEURYSTYCZNE

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

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.

Metody Programowania

Metody Sztucznej Inteligencji Methods of Artificial Intelligence. Elektrotechnika II stopień ogólno akademicki. niestacjonarne. przedmiot kierunkowy

Wstęp do programowania. Drzewa. Piotr Chrząstowski-Wachtel

TEORETYCZNE PODSTAWY INFORMATYKI

Optymalizacja. Wybrane algorytmy

Złożoność obliczeniowa zadania, zestaw 2

Podstawy Informatyki. Sprawność algorytmów

Sztuczna inteligencja w programowaniu gier

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

prowadzący dr ADRIAN HORZYK /~horzyk tel.: Konsultacje paw. D-13/325

PRZEWODNIK PO PRZEDMIOCIE

Ogólne wiadomości o grafach

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

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

Teoria obliczeń i złożoność obliczeniowa

Algorytmika Problemów Trudnych

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 9 Rekurencja

Problemy optymalizacyjne - zastosowania

Zadania laboratoryjne i projektowe - wersja β

Programowanie dynamiczne i algorytmy zachłanne

ĆWICZENIE NR 1 WPROWADZENIE DO INFORMATYKI

Wykład 10 Grafy, algorytmy grafowe

Zadanie 1 Przygotuj algorytm programu - sortowanie przez wstawianie.

Programowanie strukturalne

KARTA MODUŁU KSZTAŁCENIA

Metody Optymalizacji: Przeszukiwanie z listą tabu

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

znalezienia elementu w zbiorze, gdy w nim jest; dołączenia nowego elementu w odpowiednie miejsce, aby zbiór pozostał nadal uporządkowany.

3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.

Zaawansowane programowanie

Techniki optymalizacji

Tworzenie gier na urządzenia mobilne

Transkrypt:

1 METODY HEURYSTYCZNE wykład 1

ME3, sem.. I prowadzący cy: dr hab. inż.. Witold Beluch wykład: 15h laboratorium: 15h (p. 149) ZAJĘCIA KOŃCZ CZĄ SIĘ ZALICZENIEM OCENA KOŃCOWA: O=0.65k+0.35L k - ocena z kolokwiom końcowego L - ocena z laboratorium obydwie oceny muszą być pozytywne! 2

LITERATURA: 1. Rutkowski L., Metody i techniki sztucznej inteligencji,, PWN, Warszawa, 2006 2. Mulawka J., Systemy ekspertowe,, WNT, Warszawa, 1997 3. Arabas J., Wykłady z algorytmów w ewolucyjnych,, WNT, Warszawa, 2003 4. Tadeusiewicz R., Elementarne wprowadzenie do techniki sieci neuronowych z przykładowymi programami, Akad.. Oficyna Wyd. PLJ, Warszawa, 1998.

Włodzisław Duch: http://www.is.umk.pl www.is.umk.pl/~duch/ /~duch/wyklady/index.html http://wazniak.mimuw.edu.pl wazniak.mimuw.edu.pl/index.php?title=sztuczna_inteligencjaindex.php?title=sztuczna_inteligencja - wykład dotyczący cy sztucznej inteligencji 4

HEURYSTYCZNE CO TO ZNACZY?! Heuristic methods don't work... if they did, they would be called algorithms. -- Unknown Z greckiego: heuriskein znaleźć źć,, odkryć. Praktyczna, oparta na doświadczeniu, inteligentna reguła a postępowania, powania, która MOŻE drastycznie uprości cić lub skróci cić proces rozwiązywania zywania problemu, gdy metoda rozwiązania: zania: nie jest znana; jest zawiła a i czasochłonna. onna. 5

6 W algorytmice: Niepełnowartościowy algorytm, który umożliwia zna- lezienie w akceptowalnym czasie przynajmniej dosta- tecznie dobrego przybliżonego rozwiązania zania problemu. (Choć nie gwarantuje tego we wszystkich przypadkach). Metody heurystyczne należą do podstawowych narzędzi sztucznej inteligencji,, często używane u sąs też w różnych r działach ach badań operacyjnych.

CO BĘDZIE? B Strategie ślepe Metoda najszybszego wzrostu Najpierw najlepszy (zachłanne, anne, A* i IDA*) Symulowane wyżarzanie Algorytmy genetyczne i algorytmy ewolucyjne Sztuczne sieci neuronowe Logika rozmyta i sterowniki rozmyte Algorytmy mrówkowe Algorytmy immunologiczne?... 7

PRZESZUKIWANIE Jedna z najważniejszych niejszych metod informatyki. Częstokro stokroć utożsamiane ze sztuczną inteligencją (AI). Wiele zadań praktycznych można traktować jako konkretne przypadki ogólnego zadania przeszukiwania. Rozwiązania zania mają spełnia niać pewne ustalone kryteria i ograniczenia, Inteligentne techniki obliczeniowe opracowywane do przeszukiwania mają na celu znajdowanie zadowalających rozwiąza zań bez pełnego przeglądania wszystkich możliwo liwości, czyli: dokonanie niewyczerpującego cego przeszukiwania przestrzeni rozwiąza zań. 8

9 Ślepe przeszukiwanie: Strategie ślepe korzystają z informacji dostępnej jedynie w definicji problemu (nie wykorzystują wiedzy o problemie): przeszukiwanie wszerz; strategia jednolitego kosztu; przeszukiwanie w głąg łąb; przeszukiwanie ograniczone w głąg łąb; przeszukiwanie iteracyjnie pogłę łębiane; przeszukiwanie dwukierunkowe;

Zadania łatwe to np.: Sortowanie. Szukanie pierwiastków w wielomianów. w. Szukanie maksimum funkcji ciągłej i różniczkowalnej. r Mnożenie macierzy. Sprawdzenie, czy w grafie istnieje cykl Eulera. Zadania trudne to np.: Szukanie maksimum funkcji nieciągłej, ej, nieróżniczko niczko- walnej, zaszumionej,, zmieniającej się w czasie. Szukanie najkrótszej postaci danej formuły y logicznej. Rozkładanie liczb na czynniki pierwsze. Sprawdzenie, czy w grafie istnieje cykl Hamiltona. 10

Eulera: cykl w grafie, który przechodzi przez każdą krawędź niezorientowanego grafu dokładnie jeden raz Cykl Eulera (przez węzływ może przechodzić wielokrotnie). cykl w grafie, w którym każdy wierzchołek ek grafu występuje dokładnie jeden raz. Cykl Hamiltona: cykl w grafie, w (znalezienie cyklu Hamiltona o minimalnej sumie wag krawędzi jest równowar wnoważne ne rozwiązaniu zaniu problemu komiwojażera era). 11

ZŁOŻONOŚĆ ALGORYTMU To ilość zasobów niezbędna do wykonania algorytmu. Mierzona wymaganiami czasowymi T i pamięciowymi S. Rzędy złożonoz oności (najczęś ęściej spotykane): stała; a; log 2 n logarytmiczna; liniowa; log 2 n liniowo-logarytmiczna; logarytmiczna; kwadratowa; sześcienna; wielomianowa;, n! wykładnicza. n wielkość danych algorytmu 1 sta log n liniowa; n log n 2 kwadratowa; n 3 sze n c wielomianowa; c n, n! 12

13 ZŁOŻONOŚĆ ALGORYTMU - przykład Sortowanie n obiektów: sprawdzenie wszystkich możliwo liwości: O(n!) wykładnicza algorytm bąbelkowy: b belkowy: O(n 2 ) kwadratowa algorytm szybki - O(n log n) n - liniowo-logarytmiczna logarytmiczna

14 Za: Zofia Kruczkiewicz,, Algorytmy i struktury danych, Wykład 10 zofia.kruczkiewicz.staff.iiar.pwr.wroc.pl/wyklady wyklady/alg/algusm10.pdf

PROBLEMY NP Problem NP (nondeterministic polynomial): problem decyzyjny, dla którego rozwiązanie zanie można zweryfikować w czasie wielomianowym. Problem P 0 jest NP-zupe zupełny,, gdy: 1. P 0 należy y do klasy NP, 2. Każdy problem z klasy NP da się sprowadzić w czasie wielomianowym do problemu P 0. Problem NP-trudny spełnia tylko punkt 2. Problemy NP-zupe zupełne maja postać pytania czy istnieje. Problemy NP-trudne to zwykle ich optymalizacyjne wersje ( znajd( znajdź najmniejszy ). 15

Największy problem: eksplozja kombinatoryczna liczby możliwych dróg. Np. zadanie komiwojażera: Liczba możliwych tras: (N - 1)! / 2 N=100 1 minuta N=101 1h40 N=102 7 dni N=103 2 lata... warcaby: 10 40 węzłów; w; szachy: 10 120 węzłów; w; go: 10 260 węzłów. w. 16

17 STRATEGIE ŚLEPE

PRZESZUKIWANIE WSZERZ 18 1. Utwórz listę węzłów P zawierającą stany początkowe. 2. Niech n będzie pierwszym węzłem w P. Jeżeli P jest puste, zakończ i zwróć NIEPOWODZENIE. 3. Jeżeli n jest rozwiązaniem, zatrzymaj i podaj ścieżkę od stanu początkowego do n - zwróć SUKCES. 4. W przeciwnym przypadku usuń n z P i na końcu listy dopisz wszystkich potomków n (wygenerowanych z pomocą zdefiniowanych reguł) zapamiętując dla każdego ścieżkę od stanu początkowego. 5. Wróć do kroku 2.

Metoda ta wykonuje rozwinięcie najpłytszego węzła spośród tych, które nie były jeszcze rozszerzone 1 A D 2 3 B 4 5 6 7 E F C G 8 9 10 11 12 13 14 15 H I J K L M N O 19

PRZESZUKIWANIE W GŁĄG ŁĄB 1. Utwórz list węzłów P zawierającą stany początkowe. 2. Niech n będzie pierwszym węzłem w P. Jeżeli P jest puste, zakończ i zwróć NIEPOWODZENIE. 3. Jeżeli n jest rozwiązaniem, zatrzymaj i podaj ścieżkę od stanu początkowego do n - zwróć SUKCES. 4. W przeciwnym przypadku usuń n z P i na początku listy dopisz wszystkich potomków n (wygenerowanych za pomocą reguł produkcji) zapamiętując dla każdego ścieżkę od stanu początkowego. 5. Wróć do kroku 2. 20

Metoda ta wykonuje rozwinięcie najpłytszego węzła spośród tych, które nie były jeszcze rozszerzone 1 A D 2 3 B 4 5 6 7 E F C G 8 9 10 11 12 13 14 15 H I J K L M N O 21

22 STRATEGIA JEDNOLITEGO KOSZTU (UNIFORM-COST SEARCH) Wykonuje ekspansję węzła a o najmniejszym koszcie spośród d tych, które nie były y jeszcze rozszerzone. Jeśli koszt wszystkich węzłów w w jest jednakowy,, to jest to równowar wnoważne ne szukaniu wszerz. A 1 10 5 5 S B E 15 5 C S 0

23 STRATEGIA JEDNOLITEGO KOSZTU (UNIFORM-COST SEARCH) Wykonuje ekspansję węzła a o najmniejszym koszcie spośród d tych, które nie były y jeszcze rozszerzone. Jeśli koszt wszystkich węzłów w w jest jednakowy,, to jest to równowar wnoważne ne szukaniu wszerz. A 1 10 5 5 S B E 15 5 C S A B C 1 5 15

24 STRATEGIA JEDNOLITEGO KOSZTU (UNIFORM-COST SEARCH) Wykonuje ekspansję węzła a o najmniejszym koszcie spośród d tych, które nie były y jeszcze rozszerzone. Jeśli koszt wszystkich węzłów w w jest jednakowy,, to jest to równowar wnoważne ne szukaniu wszerz. A 1 10 5 5 S B E 15 5 C A E 11 S B C 5 15

25 STRATEGIA JEDNOLITEGO KOSZTU (UNIFORM-COST SEARCH) Wykonuje ekspansję węzła a o najmniejszym koszcie spośród d tych, które nie były y jeszcze rozszerzone. Jeśli koszt wszystkich węzłów w w jest jednakowy,, to jest to równowar wnoważne ne szukaniu wszerz. A 1 10 5 5 S B E 15 5 C A E 11 S B E 10 C 15

26 PRZYKŁADOWE PROBLEMY

ÓSEMKA Przestrzeń stanów: 9!/2 = 181 440 elementów Stan: : macierz 3x3. Operacje: : przesuwanie (najwygodniej: 4 operacje na pustym polu); Ruchy: : zbiór r operatorów: O d, O g, O l, O p. Zbiór r stanów w wyjściowych S i końcowych G. Problem zdefiniowany jest jako trójka (S,O,G). Rozwiązanie zanie problemu: ciąg g operatorów w przekształcaj cających cych S G. 27

ÓSEMKA... 28 Algorytmy szukania heurystycznego testuje się często na problemie przesuwanki. Klocków Rozmiar Czas sprawdzenia przestrzeni stanów wszystkich stanów 8 181 440 0.18 s 15 0.65 10 12 6 dni 24 0.5 10 25 12 bilionów lat...zakładaj adając c sprawdzanie 1 1010 6 stanów w na sekundę. Dobra funkcja heurystyczna zmniejsza liczbę rozpatrywanych stanów w do <50.

PROBLEM N KRÓLOWYCH Stan początkowy: dowolny układ N królowych. Operator: przestaw królową na jedno z pustych pól. Cel: ustawienie N królowych tak, by żadna nie atakowała pozostałych. Cel dodatkowy: znaleźć wszystkie możliwe rozwiązania. 29

30 http://www.mini.pw.edu.pl/miniwyklady/sieci/hetmany.html

KRYPTOARYTMETYKA Zamienić litery na cyfry. Stan początkowy tkowy: : słupek s arytmetyczny z literami. Operator: : zamień jednoznacznie literę na cyfrę. Cel: : zamień wszystkie litery tak, by operacje na cyfrach się zgadzały. Np: FORTY + TEN + TEN SIXTY Rozwiązanie: zanie: 29786 + 850 + 850 31486 31

KOLOROWANIE MAPY Gdy w październiku 1852 roku Francis Guthrie (były y student Augustusa de Morgana) ) kolorował mapę Anglii, zauważył, że e cztery kolory wystarczą, Związek Australijski by każde dwa sąsiadujs siadujące hrabstwa różnir niły y się barwą. Pomyśla lał: Czy cztery barwy wystarczą do pokolorowania dowol-nej nej, nawet najbardziej skomplikowanej mapy? (...)..) Więcej: http://www.mimuw.edu.pl www.mimuw.edu.pl/delta/ /delta/artykuly/delta0604/4barwy.pdf 32

LIS I GĘSIG Farmer ma przewieźć lisa, gęśg i ziarno małą łódką na drugą stronę rzeki: w łódce mieści się 1 rzecz; lis zjada gęśg ęś, gęś zjada ziarno. Stan początkowy tkowy: pusto... 16 stanów w tym: 6 niebezpiecznych 10 akceptowalnych 33

GRAF ROZWIĄZAŃ: Dla większej liczby obiektów ( misjonarze i kanibale ) zadanie nietrywialne: wymagane jest tworzenie etapów pośrednich, chwilowo oddalających od pożądanego rozwiązania. 34

PRAKTYCZNE PROBLEMY Szukanie optymalnej drogi (rutowanie rutowanie pakietów w w sieciach komputerowych, rezerwacje lotnicze itp). Projektowanie układ adów w VLSI (very-large scale integration Optymalizacja drogi robota w zmiennym środowisku. integration). Autonomiczne urządzenia ratunkowe. Plan zajęć w szkole. Gry komputerowe. Dowodzenie twierdzeń matematycznych. Wnioskowanie (znalezienie zależno ności w bazie wiedzy). Systemy diagnozy medycznej. Komunikacja z maszyną za pomocą języka naturalnego. Eksploracja danych (data (data mining). 35

36 PROBLEM I JEGO OPIS

DEFINICJA PROBLEMU 37 1. Baza danych: : fakty, stany, możliwo liwości, opis sytuacji. 2. Możliwe operacje: : zmieniają stan bazy danych. 3. Strategia kontrolna: : określa start, koniec i kolejność operacji. Ciąg g operacji tworzy sekwencję działań. Z każdą operacją związany zany jest pewien koszt. Należy y dążd ążyć do minimalizacji całkowitych kosztów.

REPREZENTACJA PROBLEMU Zbiór r konwencji dotyczących cych opisu pewnej klasy rzeczy. Odpowiednia reprezentacja znaczna część rozwiązania: zania: uwidacznia istotne relacje; ujawnia wszystkie więzy ograniczające ce możliwe relacje; jest zrozumiała, a, kompletna, zwięzła; można jąj efektywnie wykorzystać w modelu komputerowym. 1.. Reprezentacja w przestrzeni stanów. 2.. Reprezentacja redukcyjna. Zwykle problemy można konwertować z 1 do 2 (i odwrotnie) 38

PRZYKŁAD PROBLEMU: 71 Zerind 75 Arad 118 Timisoara 111 Oradea 140 Mehadia 75 Dobreta 151 Lugoj 70 120 Sibiu 80 99 Rimnicu Vilcea 146 97 138 Craiova Fagaras Pitesti 101 211 Sformułowanie owanie problemu: Neamt 87 Iasi 92 142 98 85 Urziceni Bucharest 90 Giurgiu Vaslui Hirsova Eforie stany: : miasta {Arad{ Arad, Sibiu, Bucharest, }; akcje: : przejazdy pomiędzy 2 miastami (np.: Arad Sibiu); cel: Arad Bucharest; koszt akcji: : odległość pomiędzy dwoma miastami. 86 39

Zerind Arad 118 75 71 Oradea 140 Timisoara 111 Mehadia 75 Dobreta 151 Lugoj 70 Sibiu 120 Reprezentacja problemu: stan początkowy tkowy: Arad; stan docelowy: : Bukareszt; rozwiazanie: ciag przejazdów 80 koszt rozwiązania 99 Rimnicu Vilcea 146 97 138 Craiova Fagaras Pitesti 101 211 90 Neamt 85 (np. Arad Sibiu Sibiu Fagaras Bukareszt Bukareszt); zania: suma km pomiędzy kolejnymi miastami. Iasi Urziceni Bucharest Giurgiu 87 142 98 92 Vaslui Hirsova Eforie 86 40

PRZYKŁAD PROBLEMU: Montaż przy użyciu u robota Sformułowanie owanie problemu: stany: : rzeczywiste współrz rzędne kątów k w w złąz łączeniach robota, elementy do zmontowania; akcje: : ciągłe e ruchy złąz łączy robota; cel: kompletny montaż; koszt akcji: : czas montażu. 41

42 GRAF: Uporządkowana para: G = (V,( E) V - niepusty zbiór r wierzchołków (węzłów, w, punktów); E - zbiór r krawędzi (łuk( uków). v w v w z z x y x y skierowane (zorientowane) nieskierowane (niezorientowane)

DRZEWA: grafy, w których każdy węzew zeł ma tylko 1 poprzednika. r korzeń u p w q s t wierzchołek ek wewnętrzny v x y z liść Drzewo to graf: - nieskierowany; - acykliczny; - spójny. wierzchołek ek = stan krawędź = akcja 43

Wysokość wierzchołka (h):( maksymalna długod ugość drogi od tego wierzchołka do liścia. Wysokość drzewa: dł.. najdłuższej drogi od korzenia do liścia. Głębokość (numer poziomu) wierzchołka (p):( długość drogi łącz czącej cej ten wierzchołek ek z korzeniem. r h=3, p=0 p q h=2, p=1 u w s t v x y z h=0, p=3 44

REPREZENTACJA REDUKCYJNA Najważniejsze nie stany, ale cele (opisy( problemu). Elementy składowe: opis początkowego problemu; zbiór r operatorów w transformujących dany problem na problemy cząstkowe; zbiór r problemów w elementarnych. Np.: Wieże e Hanoi: Koszt czasowy algorytmu: T(n)=2 n -1. Krąż ążki: 1, 2, 3, 4 Kołki: A, B, C. Przy 1 101 10 6 stanów/s - dla n=64 : 0.5 miliona lat! 45

"W wielkiej świątyni Benares w Hanoi, pod kopułą łą,, która zaznacza środek świata, znajduje się płytka z brązu, na której umocowane sąs trzy diamentowe igły, wysokie na łokieć i cienkie jak talia osy. Na jednej z tych igieł,, w momencie stworzenia świata, Bóg B g umieści cił 64 krąż ążki ze szczerego złota. z Największy z nich leży y na płytce p z brązu, a pozostałe e jeden na drugim, idąc c malejąco od największego do najmniejszego. Jest to wieża Brahma. Bez przerwy we dnie i w nocy kapłani ani przekładaj adają krąż ążki z jednej diamentowej igły y na drugą,, przestrzegając c niewzruszonych praw Brahma.. Prawa te chcą,, aby kapłan an na służbie s brał tylko jeden krąż ążek na raz i aby umieszczał go na jednej z igieł w ten sposób, by nigdy nie znalazł się pod nim krąż ążek mniejszy. Wówczas, gdy 64 krąż ążki zostaną przełożone one z igły, na której umieści cił je Bóg B g w momencie stworzenia świata, na jedną z dwóch pozostałych igieł,, wieża, świątynia, bramini rozsypią się w proch i w jednym oka mgnieniu nastąpi koniec świata". 46

Problem: przesuń n klocków w z A na C. 47 Podproblemy: Przesuń stos n-1 klocków w z A na B Przesuń jeden klocek z A na C Przesuń stos n-1 klocków w z B na C Problem elementarny: przesunięcie pojedynczego klocka. Opis problemu: ile jest klocków w na stosie do przesunięcia; z którego kołka ka przesuwać; na który kołek przesuwać.

KRYTERIA OCENY STRATEGII SZUKANIA: Zupełno ność czy zawsze znajduje rozwiązanie, zanie, jeśli ono istnieje? Złożoność czasowa liczba wygenerowanych węzłów. w. Złożoność pamięciowa maksymalna liczba węzłów w w pamięci. Optymalność czy znajduje rozwiązanie zanie o minimalnym koszcie? Złożoność czasowa i pamięciowa mierzone w terminach: b maksymalne rozgałę łęzienie drzewa przeszukiwań; d głębokość rozwiązania zania o najmniejszym koszcie; m maks. głęg łębokość drzewa przeszukiwań (możliwa ). 48

METODY HEURYSTYCZNE ( intuicyjne ): Strategie heurystyczne korzystają z dodatkowej, heurystycznej funkcji oceny stanu (np. szacującej cej koszt rozwiązania zania od bieżą żącego stanu do celu). Używają heurystyk, reguł kciuka by określi lić, którą część drzewa decyzji rozwijać najpierw. Heurystyki to reguły y lub metody, które prawie zawsze gwarantują podjęcie lepszej decyzji. Heurystyki wskazują dobre (według pewnego kryte- rium) ) kierunki poszukiwania, ale mogą pominąć ważne rozwiązania zania. 49

Podział metod heurystycznych: 50 ogólne - efektywne dla szerokiego spektrum zadań; szczególne wykorzystują specyficzną wiedzę z da- nej dziedziny. Zalety poszukiwań heurystycznych: uniknięcie eksplozji kombinatorycznej; satysfakcjonujące ce (quasi-optymalne, dobre) rozwiązanie zanie często wystarcza; próby znalezienia heurystyki dla danego problemu często prowadzą do lepszego zrozumienia tematu.

Kiedy stosować przeszukiwanie heurystyczne? np. systemy ekspertowe problem nie posiada jednoznacznego rozwiązania zania ze względu na: niejednoznaczność zadania (celu); nieprecyzyjne lub niepewne dane; niepełne ne dane. Przeszukiwanie przestrzeni stanów w z funkcją oceny gdy istnieją dokładne rozwiązania, zania, ale wymogi co do zasobów w (pamięć ęć,, czas) sąs zbyt duże. Typowe zastosowania: problemy jednoosobowe (np. zagadki logiczne) zadania optymalizacji (np. znajdowanie najkr gry dwuosobowe; systemy dowodzenia twierdzeń. (np. zagadki logiczne); (np. znajdowanie najkrótszej ścieżki); 51

FUNKCJA HEURYSTYCZNA: gdzie: Ψ zbiór r dozwolonych stanów {s 0, s 1,..., s n }, R liczby rzeczywiste. h: Ψ R Funkcja heurystyczna odwzorowuje stany we współ- czynnik ich użyteczności. Funkcja heurystyczna odwzorowuje stany s ze zbioru Ψ na wartości h(s) służące do oceny względnych kosztów w lub zysków w rozwijania dalszej drogi przez węzeł odpowiadający s. 52

s 0 s 1 s 2 s 3 Węzeł s 0 ma 3 potomków. Określamy koszty utworzenia węzłów s 1, s 2 i s 3 ; h(s 1 ) = 0.95 h(s 2 ) = 1.3 h(s 3 ) = 0.6 Z punktu widzenia danej heurystyki s 3 jest najlepszym kandydatem. 53

54 PRZYKŁADY FUNKCJI HEURYSTYCZNYCH: Problem komiwojażera era: - suma odległości jaka została a przebyta do osiągni gnięcia danego miasta; Kółko i krzyżyk yk: - wartość 1 dla wierszy, kolumn i przekątnych, w których jest symbol danego gracza i możliwa jest wygrana. - wartość 2 dla wierszy, kolumn i przekątnych, w których są 2 symbole i możliwa jest wygrana.