METODY HEURYSTYCZNE wykład 1
Transkrypt
METODY HEURYSTYCZNE wykład 1
www.imio.polsl.pl METODY HEURYSTYCZNE www.imio.polsl.pl ME3, sem. sem. I prowadzą prowadzący: cy: dr hab. inż inż. Witold Beluch (p. 149) wykł wykład: 15h laboratorium: 15h ZAJĘ ZAJĘCIA KOŃ KOŃCZĄ CZĄ SIĘ SIĘ ZALICZENIEM wykład 1 OCENA KOŃ KOŃCOWA: O=0.65k O=0.65k+0.35L k - ocena z kolokwiom koń końcowego L - ocena z laboratorium obydwie oceny muszą muszą być być pozytywne! pozytywne! 1 www.imio.polsl.pl LITERATURA: LITERATURA Włodzisł odzisław Duch: http://www.is.umk.pl /~duch/Wyklady Wyklady//index.html http://www.is.umk.pl/~duch/ 2 www.imio.polsl.pl 1. Rutkowski L. , Metody i techniki sztucznej inteligencji, inteligencji, PWN, Warszawa, 2006 2. Mulawka J., Systemy ekspertowe, ekspertowe, WNT, Warszawa, 1997 3. Arabas J., Wykł Wykłady z algorytmó algorytmów ewolucyjnych, ewolucyjnych, WNT, Warszawa, 2003 4. Tadeusiewicz R., Elementarne wprowadzenie do techniki sieci neuronowych z przykł przykładowymi programami, programami, Akad. Akad. Oficyna Wyd. PLJ, Warszawa, 1998 . http://wazniak.mimuw.edu.pl http://wazniak.mimuw.edu.pl//index.php?title=Sztuczna_inteligencja wykł wykład dotyczą dotyczący sztucznej inteligencji 4 HEURYSTYCZNE – CO TO ZNACZY?! www.imio.polsl.pl www.imio.polsl.pl W algorytmice: algorytmice: „Heuristic methods don't work ... if they did, did, they would be called algorithms.” „Niepeł Niepełnowartoś nowartościowy” ciowy” algorytm, któ który umoż umożliwia znaznalezienie w akceptowalnym czasie przynajmniej „dostadostatecznie dobrego” dobrego” przybliż przybliżonego rozwią rozwiązania problemu. -- Unknown Z greckiego: heuriskein – znaleźć znaleźć,, odkryć odkryć. (Choć Choć nie gwarantuje tego we wszystkich przypadkach). Praktyczna, oparta na doś doświadczeniu, „inteligentna” inteligentna” reguł reguła postę postępowania, któ która MOŻ MOŻE drastycznie uproś uprościć cić lub skró skrócić cić proces rozwią rozwiązywania problemu, gdy metoda rozwią rozwiązania: Metody heurystyczne należą należą do podstawowych narzę narzędzi sztucznej inteligencji, inteligencji, czę często uż używane są są też też w ró różnych dział działach badań badań operacyjnych. operacyjnych. • nie jest znana; • jest zawił zawiła i czasochł czasochłonna. 5 6 CO BĘ BĘDZIE? www.imio.polsl.pl www.imio.polsl.pl • Jedna z najważ najważniejszych metod informatyki. • Czę Częstokroć stokroć utoż utożsamiane ze sztuczną sztuczną inteligencją inteligencją (AI). • Strategie ślepe • Metoda najszybszego wzrostu • Wiele zadań zadań praktycznych moż można traktować traktować jako konkretne przypadki ogó ogólnego zadania przeszukiwania. • Najpierw najlepszy (zachł (zachłanne, A* i IDA*) • Symulowane wyż wyżarzanie • Rozwią Rozwiązania mają mają speł spełniać niać pewne ustalone kryteria i ograniczenia, ograniczenia, • Algorytmy genetyczne i algorytmy ewolucyjne • Sztuczne sieci neuronowe • Inteligentne techniki obliczeniowe opracowywane do przeszukiwania mają mają na celu znajdowanie zadowalają zadowalających rozwią rozwiązań zań bez peł pełnego przeglą przeglądania wszystkich moż możliwoś liwości, czyli: • Logika rozmyta i sterowniki rozmyte • Algorytmy mró mrówkowe • Algorytmy immunologiczne ? • ... dokonanie niewyczerpują niewyczerpującego przeszukiwania przestrzeni rozwią rozwiązań zań. 7 www.imio.polsl.pl Ślepe przeszukiwanie: Zadania „łatwe” atwe” to np.: 8 www.imio.polsl.pl • Sortowanie. • Szukanie pierwiastkó pierwiastków wielomianó wielomianów. • Szukanie maksimum funkcji cią ciągłej i ró różniczkowalnej. • Mnoż ż enie macierzy. Mno • Sprawdzenie, czy w grafie istnieje cykl Eulera. Eulera. Strategie ślepe korzystają korzystają z informacji dostę dostępnej jedynie w definicji problemu (nie wykorzystują wykorzystują wiedzy o problemie): • przeszukiwanie wszerz; • strategia jednolitego kosztu; • przeszukiwanie w głą b; głąb; • przeszukiwanie ograniczone w głą b; głąb; • przeszukiwanie iteracyjnie pogłę łębiane; biane; pog • przeszukiwanie dwukierunkowe; •… Zadania „trudne” trudne” to np.: 9 www.imio.polsl.pl Cykl Eulera: który przechodzi przez Eulera: cykl w grafie, któ każ każdą krawę krawędź niezorientowanego grafu dokł dokładnie jeden raz • Szukanie maksimum funkcji niecią nieciągłej, nieró nieróżniczkoniczkowalnej, walnej, zaszumionej, zaszumionej, zmieniają zmieniającej się się w czasie. • Szukanie najkró najkrótszej postaci danej formuł formuły logicznej. • Rozkł Rozkładanie liczb na czynniki pierwsze. • Sprawdzenie, czy w grafie istnieje cykl Hamiltona. ZŁOŻONOŚĆ ONOŚĆ ALGORYTMU 10 www.imio.polsl.pl • To ilość ilość zasobó zasobów niezbę niezbędna do wykonania algorytmu. • Mierzona wymaganiami czasowymi T i pamię pamięciowymi S. (przez wę węzły moż może przechodzić przechodzić wielokrotnie). Rzę ciej spotykane): Rzędy zł złożonoś oności (najczęś (najczęściej 1 – stał stała; log2n – logarytmiczna; n – liniowa; n·log2n – liniowoliniowo-logarytmiczna; n2 – kwadratowa; n3 – sześ sześcienna; nc – wielomianowa; cn, n! – wykł wykładnicza. n – wielkość wielkość danych algorytmu • • • • • • • • Cykl Hamiltona: cykl w grafie, w któ którym każ każdy wierzchoł wierzchołek grafu wystę występuje dokł dokładnie jeden raz. (znalezienie cyklu Hamiltona o minimalnej sumie wag krawę krawędzi jest ró równoważ wnoważne rozwią rozwiązaniu problemu komiwojaż komiwojażera). era). PRZESZUKIWANIE 11 12 ZŁOŻONOŚĆ ONOŚĆ ALGORYTMU - przykł przykład www.imio.polsl.pl www.imio.polsl.pl Za: Zofia Kruczkiewicz, Kruczkiewicz, Algorytmy i struktury danych, Wykł Wykład 10 zofia.kruczkiewicz.staff.iiar.pwr.wroc.pl/ zofia.kruczkiewicz.staff.iiar.pwr.wroc.pl/wyklady/ALG/Algusm10.pdf wyklady/ALG/Algusm10.pdf Sortowanie n obiektó obiektów: • sprawdzenie wszystkich moż możliwoś liwości: O(n!) – wykł wykładnicza • algorytm bą bąbelkowy: O(n2) – kwadratowa • algorytm szybki - O(n log n) n) - liniowoliniowo-logarytmiczna 13 PROBLEMY NP www.imio.polsl.pl Problem NP (nondeterministic polynomial): • problem decyzyjny, dla któ którego rozwią rozwiązanie moż można zweryfikować zweryfikować w czasie wielomianowym. 14 eksplozja kombinatoryczna liczby moż możliwych dró dróg. Np. zadanie komiwojaż komiwojażera: Liczba moż możliwych tras: (N - 1)! / 2 Problem P0 jest NPNP-zupeł zupełny, ny, gdy: 1. P0 należ należy do klasy NP, N=100 N=100 – 1 minuta N=101 N=101 – 1h40’ 1h40’ N=102 N=102 – 7 dni N=103 N=103 – 2 lata ... 2. Każ Każdy problem z klasy NP da się się sprowadzić sprowadzić w czasie wielomianowym do problemu P0. Problem NPNP-trudny speł spełnia tylko punkt 2. • Problemy NPNP-zupeł zupełne maja postać postać pytania „czy istnieje” istnieje”. • Problemy NPNP-trudne to zwykle ich optymalizacyjne wersje („ („znajdź znajdź najmniejszy” najmniejszy”). www.imio.polsl.pl Najwię Największy problem: • warcaby: 1040 węzłów; • szachy: 10120 węzłów; • go: 10260 węzłów. 15 www.imio.polsl.pl PRZESZUKIWANIE WSZERZ 16 www.imio.polsl.pl 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. STRATEGIE ŚLEPE 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. 17 18 www.imio.polsl.pl Metoda ta wykonuje rozwinięcie najpłytszego węzła spośród tych, które nie były jeszcze rozszerzone 1 2 4 8 9 H C 5 D 10 I 6 E 11 J K 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. A B 12 13 L 3 7 F M 14 G 15 N www.imio.polsl.pl PRZESZUKIWANIE W GŁĄ B GŁĄB O 19 20 www.imio.polsl.pl Metoda ta wykonuje rozwinięcie najpłytszego węzła spośród tych, które nie były jeszcze rozszerzone 1 2 4 8 H 9 I 10 J 6 E 11 K (UNIFORMUNIFORM-COST SEARCH) A C 5 12 www.imio.polsl.pl • Wykonuje ekspansję ekspansję węzła o najmniejszym koszcie spoś spośród tych, któ które nie był były jeszcze rozszerzone. B D STRATEGIA JEDNOLITEGO KOSZTU 7 F 13 L M 14 • Jeś Jeśli koszt wszystkich wę węzłów jest jednakowy, jednakowy, to jest to ró równoważ wnoważne szukaniu wszerz. wszerz. S S 15 1 3 N G 15 0 5 A B O 10 5 E C 5 21 22 STRATEGIA JEDNOLITEGO KOSZTU www.imio.polsl.pl STRATEGIA JEDNOLITEGO KOSZTU (UNIFORMUNIFORM-COST SEARCH) www.imio.polsl.pl (UNIFORMUNIFORM-COST SEARCH) • Wykonuje ekspansję ekspansję węzła o najmniejszym koszcie spoś spośród tych, któ które nie był były jeszcze rozszerzone. • Wykonuje ekspansję ekspansję węzła o najmniejszym koszcie spoś spośród tych, któ które nie był były jeszcze rozszerzone. • Jeś Jeśli koszt wszystkich wę węzłów jest jednakowy, jednakowy, to jest to ró równoważ wnoważne szukaniu wszerz. wszerz. S 15 S 1 • Jeś Jeśli koszt wszystkich wę węzłów jest jednakowy, jednakowy, to jest to ró równoważ wnoważne szukaniu wszerz. wszerz. S 15 S 1 5 A B 10 5 E C A B C 1 5 15 5 A 5 B 10 5 E C 5 A B C 5 15 E 11 23 24 STRATEGIA JEDNOLITEGO KOSZTU www.imio.polsl.pl www.imio.polsl.pl (UNIFORMUNIFORM-COST SEARCH) • Wykonuje ekspansję ekspansję węzła o najmniejszym koszcie spoś spośród tych, któ które nie był były jeszcze rozszerzone. • Jeś Jeśli koszt wszystkich wę węzłów jest jednakowy, jednakowy, to jest to ró równoważ wnoważne szukaniu wszerz. wszerz. S 15 S 1 PRZYKŁADOWE PROBLEMY 5 A B 10 5 E C A B C 15 5 E E 11 10 25 www.imio.polsl.pl ÓSEMKA 26 www.imio.polsl.pl ÓSEMKA... Algorytmy szukania heurystycznego testuje się się czę często na problemie przesuwanki. przesuwanki. • Przestrzeń Przestrzeń stanó stanów: 9!/2 = 181 440 elementó elementów • Stan: Stan: macierz 3x3. • Operacje: Operacje: przesuwanie Klocków 8 15 24 (najwygodniej: 4 operacje na pustym polu); • Ruchy: Ruchy: zbió zbiór operatoró operatorów: Od, Og, Ol, Op. Rozmiar przestrzeni stanów 181 440 0.65·1012 0.5·1025 Czas sprawdzenia wszystkich stanów 0.18 s 6 dni 12 bilionów lat • Zbió końcowych G. Zbiór stanó stanów wyjś wyjściowych S i koń ...zakł ...zakładają adając sprawdzanie 1·106 stanó stanów na sekundę sekundę. • Problem zdefiniowany jest jako tró trójka (S,O,G). • Rozwią Rozwiązanie problemu: cią cających S → G. operatorów przekształ przekształcają ciąg operatoró Dobra funkcja heurystyczna zmniejsza liczbę liczbę rozpatrywanych stanó stanów do <50. <50. PROBLEM N KRÓ KRÓLOWYCH 28 27 www.imio.polsl.pl www.imio.polsl.pl http://www.mini.pw.edu.pl/miniwyklady/sieci/hetmany.html http://www.mini.pw.edu.pl/miniwyklady/sieci/hetmany.html • 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 www.imio.polsl.pl KRYPTOARYTMETYKA KOLOROWANIE MAPY www.imio.polsl.pl Zamienić Zamienić litery na cyfry. • Stan począ początkowy: tkowy: sł słupek arytmetyczny z literami. • Operator: Operator: zamień zamień jednoznacznie literę literę na cyfrę cyfrę. • Cel: Cel: zamień zamień wszystkie litery tak, by operacje na cyfrach się się zgadzał zgadzały. Np: FORTY + TEN + TEN Rozwią Rozwiązanie: 29786 + 850 + 850 __________ __________ SIXTY 31486 Wię Więcej: http://www.mimuw.edu.pl /delta/artykuly artykuly/delta0604/4barwy.pdf /delta0604/4barwy.pdf http://www.mimuw.edu.pl/delta/ 31 www.imio.polsl.pl LIS I GĘ GĘSI „Gdy w paź październiku 1852 roku Francis Guthrie (był (były student Augustusa de Morgana) Morgana) kolorował kolorował mapę mapę Anglii, zauważ zauważył, że cztery kolory wystarczą wystarczą, Zwią Związek Australijski by każ każde dwa są sąsiadują siadujące hrabstwa ró różnił niły się się barwą barwą. Pomyś wystarczą do pokolorowania dowoldowol-nej, nej, Pomyślał lał: Czy cztery barwy wystarczą nawet najbardziej skomplikowanej mapy? ” (...) 32 www.imio.polsl.pl GRAF ROZWIĄZAŃ: Farmer ma przewieźć przewieźć lisa, gęś gęś i ziarno małą małą łódką dką na drugą drugą stronę stronę rzeki: • w łódce mieś mieści się się 1 rzecz; • lis zjada gęś gęś,, gęś zjada ziarno. Stan począ początkowy: tkowy: pusto... 16 stanó stanów w tym: • 6 niebezpiecznych • 10 akceptowalnych 33 PRAKTYCZNE PROBLEMY www.imio.polsl.pl 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 www.imio.polsl.pl • Szukanie optymalnej drogi (rutowanie pakietó pakietów w sieciach komputerowych, rezerwacje lotnicze itp). itp). • Projektowanie ukł very-large scale integration). integration). układó adów VLSI (very• Optymalizacja drogi robota w zmiennym środowisku. • Autonomiczne urzą urządzenia ratunkowe. • Plan zajęć zajęć w szkole. • Gry komputerowe. • Dowodzenie twierdzeń twierdzeń matematycznych. • Wnioskowanie (znalezienie zależ zależnoś ności w bazie wiedzy). • Systemy diagnozy medycznej. • Komunikacja z maszyną maszyną za pomocą pomocą języka naturalnego. • Eksploracja danych (data mining). mining). PROBLEM I JEGO OPIS 35 36 www.imio.polsl.pl DEFINICJA PROBLEMU www.imio.polsl.pl REPREZENTACJA PROBLEMU Zbió Zbiór konwencji dotyczą dotyczących opisu pewnej klasy rzeczy. 1. Baza danych: danych: fakty, stany, moż możliwoś liwości, opis sytuacji. 2. Moż Możliwe operacje: operacje: zmieniają zmieniają stan bazy danych. Odpowiednia reprezentacja – znaczna część część rozwią rozwiązania: 3. Strategia kontrolna: kontrolna: okreś określa start, koniec i kolejność kolejność operacji. • uwidacznia istotne relacje; • ujawnia wszystkie wię więzy ograniczają ograniczające moż możliwe relacje; • jest zrozumiał zrozumiała, kompletna, zwię zwięzła; • moż można ją ją efektywnie wykorzystać wykorzystać w modelu komputerowym. • Cią Ciąg operacji tworzy sekwencję sekwencję dział działań. 1. Reprezentacja w przestrzeni stanó stanów. 2. Reprezentacja redukcyjna. redukcyjna. • Z każ każdą operacją operacją zwią związany jest pewien koszt. koszt. • Należ yć do minimalizacji cał całkowitych kosztó kosztów. Należy dąż dąży Zwykle problemy moż można konwertować konwertować z 1 do 2 37 (i odwrotnie) www.imio.polsl.pl PRZYKŁ PRZYKŁAD PROBLEMU: www.imio.polsl.pl Oradea 71 Oradea 87 Arad Fagaras Timisoara 111 70 146 Mehadia 85 101 Urziceni Bucharest 120 Craiova 98 90 70 Dobreta Eforie stany: stany: miasta {Arad {Arad,, Sibiu, Sibiu, Bucharest, Bucharest, …}; akcje: akcje: przejazdy pomię pomiędzy 2 miastami (np.: Arad → Sibiu); Sibiu); cel: cel: Arad → Bucharest; Bucharest; koszt akcji: akcji: odległ odległość pomię pomiędzy dwoma miastami. 211 120 98 85 101 Craiova Hirsova Urziceni Bucharest 90 86 Eforie Giurgiu Reprezentacja problemu: • stan począ początkowy: tkowy: Arad; Arad; • stan docelowy: docelowy: Bukareszt; • rozwiazanie: rozwiazanie: ciag przejazdó przejazdów Giurgiu PRZYKŁ PRZYKŁAD PROBLEMU: Pitesti 142 138 75 86 97 146 Mehadia Hirsova Sformuł Sformułowanie problemu: • • • • Vaslui Rimnicu Vilcea Lugoj 142 211 138 75 Dobreta Pitesti 97 Timisoara 111 Rimnicu Vilcea Lugoj Fagaras 80 Vaslui 80 92 Sibiu 99 118 92 Sibiu 99 118 Iasi 140 Iasi 140 87 151 75 Neamt 151 Arad Neamt Zerind 71 Zerind 75 38 (np. Arad→Sibiu→ Fagaras→Bukareszt); Bukareszt); 39 www.imio.polsl.pl • koszt rozwią pomiędzy kolejnymi miastami. rozwiązania: zania: suma km pomię 40 www.imio.polsl.pl GRAF: Uporzą Uporządkowana para: G = (V (V, E) Montaż Montaż przy uż użyciu robota • V - niepusty zbió zbiór wierzchoł wierzchołków (wę (węzłów, punktó punktów); • E - zbió zbiór krawę krawędzi (ł (łukó uków). v v w z Sformuł Sformułowanie problemu: • stany: czeniach robota, stany: rzeczywiste wspó współrzę rzędne ką kątów w złą złączeniach elementy do zmontowania; • akcje: czy robota; akcje: cią ciągłe ruchy złą złączy • cel: kompletny montaż montaż; • koszt akcji: akcji: czas montaż montażu. w x y skierowane (zorientowane) 41 z x y nieskierowane (niezorientowane) 42 www.imio.polsl.pl DRZEWA: tego wierzchoł wierzchołka do liś liścia. grafy, w któ których każ każdy wę węzeł zeł ma tylko 1 poprzednika. q p u v w x y Wysokość Wysokość drzewa: dł. najdł najdłuższej drogi od korzenia do liś liścia. korzeń korzeń r s łącz ącej ten wierzchoł łączą wierzchołek z korzeniem. r q p u • wierzchoł wierzchołek = stan • krawę krawędź = akcja v x w s y z h=2, p=1 t h=0, p=3 43 Na jednej z tych igieł, w momencie stworzenia świata, Bóg umieścił 64 krążki ze szczerego złota. Największy z nich leży na płytce z brązu, a pozostałe jeden na drugim, idąc malejąco od największego do najmniejszego. Jest to wieża Brahma. Krąż ki: 1, 2, 3, 4 Krążki: Koł Kołki: A, B, C. - 1. Przy 1· 1·106stanó stanów/s - dla n=64 : 0.5 miliona lat! Problem: przesuń n klockó klocków z A na C. Problem: przesuń www.imio.polsl.pl "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ą trzy diamentowe igły, wysokie na łokieć i cienkie jak talia osy. Najważ Najważniejsze nie stany, ale cele (opisy (opisy problemu). problemu). Elementy skł składowe: • opis począ początkowego problemu; • zbió zbiór operatoró operatorów transformują transformujących dany problem na problemy czą cząstkowe; • zbió zbiór problemó problemów elementarnych. Np.: Wież Wieże Hanoi: Hanoi: algorytmu: T(n)=2n 44 www.imio.polsl.pl REPREZENTACJA REDUKCYJNA Koszt czasowy h=3, p=0 liść liść z Drzewo to graf: - nieskierowany; nieskierowany; - acykliczny; - spó spójny. Głęboko ść (numer poziomu) wierzchoł łębokość wierzchołka (p (p): długość ugość drogi wierzchoł wierzchołek wewnę wewnętrzny t www.imio.polsl.pl Wysokość Wysokość wierzchoł wierzchołka (h (h): maksymalna dł długość ugość drogi od Bez przerwy we dnie i w nocy kapłani przekładają krążki z jednej diamentowej igły na drugą, przestrzegając niewzruszonych praw Brahma. Prawa te chcą, aby kapłan na służbie 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 z igły, na której umieścił je 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". 45 www.imio.polsl.pl 46 www.imio.polsl.pl KRYTERIA OCENY STRATEGII SZUKANIA: • Zupeł Zupełność ność — czy zawsze znajduje rozwią rozwiązanie, jeś jeśli ono istnieje? • Złożoność oność czasowa — liczba wygenerowanych węzłów. • Złożoność oność pamię pamięciowa — maksymalna liczba węzłów w pamię pamięci. • Optymalność Optymalność — czy znajduje rozwią rozwiązanie o minimalnym koszcie? Podproblemy: Podproblemy: • Przesuń Przesuń stos n-1 klockó klocków z A na B • Przesuń Przesuń jeden klocek z A na C • Przesuń Przesuń stos n-1 klockó klocków z B na C Problem elementarny: przesunięcie pojedynczego klocka. elementarny: przesunię Opis problemu: problemu: • ile jest klockó klocków na stosie do przesunię przesunięcia; • z któ którego koł kołka przesuwać przesuwać; • na któ który koł kołek przesuwać przesuwać. Złożoność oność czasowa i pamię pamięciowa mierzone w terminach: 47 zienie drzewa przeszukiwań • b — maksymalne rozgałę rozgałęzienie przeszukiwań; ść rozwią • d — głęboko łębokość rozwiązania o najmniejszym koszcie; bokość ść drzewa przeszukiwań • m — maks. głę głęboko przeszukiwań (moż (możliwa ∞). 48 www.imio.polsl.pl METODY HEURYSTYCZNE („intuicyjne” intuicyjne”): Podział Podział metod heurystycznych: www.imio.polsl.pl • ogó ogólne - efektywne dla szerokiego spektrum zadań zadań; • Strategie heurystyczne korzystają korzystają z dodatkowej, heurystycznej funkcji oceny stanu • szczegó szczególne – wykorzystują wykorzystują specyficzną specyficzną wiedzę wiedzę z dadanej dziedziny. (np. szacują cego stanu do celu). szacującej koszt rozwią rozwiązania od bieżą bieżącego • Używają ywają heurystyk, „reguł reguł kciuka” kciuka” by okreś określić lić, któ którą część część drzewa decyzji rozwijać rozwijać najpierw. Zalety poszukiwań poszukiwań heurystycznych: • Heurystyki to reguł reguły lub metody, któ które prawie zawsze gwarantują gwarantują podję podjęcie lepszej decyzji. decyzji. • satysfakcjonują satysfakcjonujące (quasi(quasi-optymalne, dobre) rozwią rozwiązanie czę często wystarcza; wystarcza; • uniknię uniknięcie eksplozji kombinatorycznej; • Heurystyki wskazują wskazują dobre (wedł (według pewnego krytekryterium) pominąć waż ważne rium) kierunki poszukiwania, ale mogą mogą pominąć rozwią rozwiązania. zania. • pró próby znalezienia heurystyki dla danego problemu czę często prowadzą prowadzą do lepszego zrozumienia tematu. 49 www.imio.polsl.pl Kiedy stosować stosować przeszukiwanie heurystyczne? 50 FUNKCJA HEURYSTYCZNA: • np. systemy ekspertowe – problem nie posiada jednoznacznego rozwią rozwiązania ze wzglę względu na: www.imio.polsl.pl h: Ψ → ℜ • niejednoznaczność niejednoznaczność zadania (celu); • nieprecyzyjne lub niepewne dane; • niepeł niepełne dane. gdzie: Ψ – zbió zbiór dozwolonych stanó stanów {s0, s1, ..., sn}, ℜ – liczby rzeczywiste. • Przeszukiwanie przestrzeni stanó stanów z funkcją funkcją oceny – gdy istnieją istnieją dokł dokładne rozwią rozwiązania, ale wymogi co do zasobó zasobów (pamięć (pamięć,, czas) są są zbyt duż duże. Funkcja heurystyczna odwzorowuje stany we wspó współczynnik ich użytecznoś yteczności. ci. Typowe zastosowania: • problemy jednoosobowe (np. zagadki logiczne); • zadania optymalizacji (np. znajdowanie najkró najkrótszej ścież cieżki); • gry dwuosobowe; • systemy dowodzenia twierdzeń twierdzeń. 51 www.imio.polsl.pl s0 Funkcja heurystyczna odwzorowuje stany s ze zbioru Ψ na wartoś żące do oceny wzglę względnych wartości h(s) służące kosztó kosztów lub zyskó zysków rozwijania dalszej drogi przez węzeł zeł odpowiadają odpowiadający s. 52 www.imio.polsl.pl PRZYKŁ PRZYKŁADY FUNKCJI HEURYSTYCZNYCH: • Problem komiwojaż komiwojażera: era: s1 s2 s3 - suma odległ odległości jaka został została przebyta do osią osiągnię gnięcia danego miasta; Węzeł zeł s0 ma 3 potomkó potomków. • Kółko i krzyż krzyżyk: yk: Okreś Określamy koszty utworzenia węzłów s1, s2 i s3; - wartość wartość 1 dla wierszy, kolumn i przeką przekątnych, w któ których jest symbol danego gracza i moż możliwa jest wygrana. h(s1) = 0.95 h(s2) = 1.3 - wartość wartość 2 dla wierszy, kolumn i przeką przekątnych, w któ których są 2 symbole i moż możliwa jest wygrana. h(s3) = 0.6 0.6 Z punktu widzenia danej heurystyki s3 jest najlepszym kandydatem. kandydatem. 53 54