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 HEURYSTYCZNE wykład 1

Metody przeszukiwania

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

Heurystyczne metody przeszukiwania

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

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

Rozwiązywanie problemów metodą przeszukiwania

Heurystyki. Strategie poszukiwań

Sztuczna Inteligencja i Systemy Doradcze

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

Elementy kognitywistyki II:

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

Algorytmy. wer Wojciech Myszka 30 listopada 2008

Podstawy sztucznej inteligencji

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

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

SZTUCZNA INTELIGENCJA

Metody algortmiczne (Algorytmy Część IV)

Podstawy Sztucznej Inteligencji (PSZT)

Sztuczna Inteligencja i Systemy Doradcze

Matematyczne Podstawy Informatyki

Wybrane podstawowe rodzaje algorytmów

Wstęp do Sztucznej Inteligencji

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

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

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

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

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 ( ).

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek

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

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 1

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

Algorytmiczna teoria grafów

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

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

Planowanie drogi robota, algorytm A*

Wyznaczanie strategii w grach

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

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

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

ĆWICZENIE 1: Przeszukiwanie grafów strategie heurystyczne

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

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

1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb.

Algorytmika Problemów Trudnych

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

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

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

PRZEWODNIK PO PRZEDMIOCIE

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

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

PRZEWODNIK PO PRZEDMIOCIE

KARTA MODUŁU KSZTAŁCENIA

SID Wykład 2 Przeszukiwanie

PRZEWODNIK PO PRZEDMIOCIE

Złożoność algorytmów. Wstęp do Informatyki

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

ANALIZA ALGORYTMÓW. Analiza algorytmów polega między innymi na odpowiedzi na pytania:

Ogólne wiadomości o grafach

ĆWICZENIE NR 1 WPROWADZENIE DO INFORMATYKI

Algorytmy i struktury danych

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

INFORMATYKA SORTOWANIE DANYCH.

Wykład 10 Grafy, algorytmy grafowe

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

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

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

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

Wykłady z Matematyki Dyskretnej

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

Algorytm Dijkstry znajdowania najkrótszej ścieżki w grafie

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.

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

TEORETYCZNE PODSTAWY INFORMATYKI

Jeszcze o algorytmach

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

TEORETYCZNE PODSTAWY INFORMATYKI

Podstawy Informatyki. Metalurgia, I rok. Rekurencja. skomplikowane zadanie. Rekurencja

Podstawy Informatyki. Metalurgia, I rok. Wykład 5 Rekurencja

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

Optymalizacja. Wybrane algorytmy

Sztuczna inteligencja w programowaniu gier

Tworzenie gier na urządzenia mobilne

Wykład z Technologii Informacyjnych. Piotr Mika

Zadania laboratoryjne i projektowe - wersja β

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

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

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

METODY HEURYSTYCZNE wykład 2

Zadania obliczeniowe, algorytmy i złożoność obliczeniowa

Tomasz M. Gwizdałła 2012/13

Tadeusz Pankowski

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona

Transkrypt:

MB4 n2z, sem. II MTODY HURYSTYZN wykład prowadzący: dr hab. inż. Witold Beluch (p. 49) wykład: 9h laboratorium: 9h ZAJĘIA KOŃZĄ SIĘ GZAMINM ONA KOŃOWA: O=0.6k+0.3L k- ocena z kolokwiom końcowego L -ocena z laboratorium obydwie oceny muszą być pozytywne! 2 LITRATURA: 2. Mulawka J., Systemy ekspertowe, WNT, Warszawa, 997 3. Arabas J., Wykłady z algorytmów ewolucyjnych, WNT, Warszawa, 2003. Rutkowski L., Metody i techniki sztucznej inteligencji, PWN, Warszawa, 2006 4.Tadeusiewicz R., lementarne wprowadzenie do techniki sieci neuronowych z przykładowymi programami, Akad. Oficyna Wyd. PLJ, Warszawa, 998. BolcL., ytowskij., Metody przeszukiwania heurystycznego. Tom,2. PWN, Warszawa, 989, 99. Włodzisław Duch: http://www.is.umk.pl/~duch/wyklady/index.html 3 http://wazniak.mimuw.edu.pl/index.php?title=sztuczna_inteligencja - wykład dotyczący sztucznej inteligencji 4 4 HURYSTYZN O TO ZNAZY?! Heuristicmethodsdon'twork... iftheydid, theywouldbe calledalgorithms. --Unknown Z greckiego: heuriskein znaleźć, odkryć. Praktyczna, oparta na doświadczeniu, inteligentna reguła postępowania, która MOŻ drastycznie uprościć lub skrócić proces rozwiązywania problemu, gdy me-toda rozwiązania: nie jest znana; jest zawiła i czasochłonna. W algorytmice: Niepełnowartościowy algorytm, który umożliwia zna-lezieniew akceptowalnym czasie przynajmniej dosta-teczniedobrego przybliżonego rozwiązania problemu. (hoć nie gwarantuje tego we wszystkich przypadkach). Metody heurystyczne należą do podstawowych narzędzisztucznej inteligencji, często używane są też w różnych działach badań operacyjnych. 6

O BĘDZI? Strategie ślepe Metoda najszybszego wzrostu Najpierw najlepszy (zachł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 PRZSZUKIWANI Jedna z najważniejszych metod informatyki. zęstokroć utożsamiane ze sztuczną inteligencją (AI). Wiele zadań praktycznych można traktować jako konkretne przypadki ogólnego zadania przeszukiwania. Rozwiązania mają spełniać pewne ustalone kryteria i ograniczenia, Inteligentne techniki obliczeniowe opracowywane do przeszukiwania mają na celu znajdowanie zadowalających rozwiązańbez pełnego przeglądaniawszystkich możliwości, czyli: dokonanie niewyczerpującego przeszukiwania przestrzeni rozwiązań. 8 Ś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łąb; przeszukiwanie ograniczone w głąb; przeszukiwanie iteracyjnie pogłębiane; przeszukiwanie dwukierunkowe; 9 Zadania łatwe to np.: Sortowanie. Szukanie pierwiastków wielomianów. Szukanie maksimum funkcji ciągłej i różniczkowalnej. Mnożenie macierzy. Sprawdzenie, czy w grafie istnieje cykl ulera. Zadania trudne to np.: Szukanie maksimum funkcji nieciągłej, nieróżniczko-walnej, zaszumionej, zmieniającej się w czasie. Szukanie najkrótszej postaci danej formuły logicznej. Rozkładanie liczb na czynniki pierwsze. Sprawdzenie, czy w grafie istnieje cykl Hamiltona. 0 ykl ulera:cykl w grafie, który przechodzi przez każdą krawędź niezorientowanego grafu dokładnie jeden raz (przez węzły może przechodzić wielokrotnie). ykl Hamiltona:cykl w grafie, w którym każdy wierzchołek grafu występuje dokładnie jeden raz. (znalezienie cyklu Hamiltona o minimalnej sumie wag krawędzi jest równoważne rozwiązaniu problemu komiwojażera). 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żoności (najczęściej spotykane): stała; logn logarytmiczna; n liniowa; n logn liniowo-logarytmiczna; n 2 kwadratowa; n 3 sześcienna; n c wielomianowa; c n, n! wykładnicza. n wielkość danych algorytmu 2 2

ZŁOŻONOŚĆ ALGORYTMU n wielkość danych algorytmu, np.: - dla sortowania liczba elementów w ciągu wejściowym; - dla wyznaczania wartości wielomianu jego stopień; - dla znajdowania najkrótszej drogi liczba węzłów. Np.: sortowanie n obiektów: sprawdzenie wszystkich możliwości: O(n!) wykładnicza. algorytm szybki: O(n log n) liniowo-logarytmiczna; algorytm bąbelkowy: O(n 2 ) kwadratowa; 3 Np.: jeśli jedna operacja trwa µs: Typ złożoności Oznaczenie n 0 0 00 logarytmiczna logn 0.000003 s 0.000006 s 0.000007 s liniowa n 0.0000 s 0.0000 s 0.000 s liniowologarytmiczna n logn 0.00003 s 0.0003 s 0.0007 s kwadratowa n 2 0.000 s 0.002 s 0.0 s wielomianowa n k ; k=3 0.00 s 0.008 s s wykładnicza 2 n 0.00 s 3.6 lat 4 0 6 lat wykładnicza n! 3.6 s 2.6 0 68 lat 3 0 44 lat 4 PROBLMY NP Problem NP(nondeterministic polynomial): problem decyzyjny, dla którego rozwiązanie można zweryfikować w czasie wielomianowym. Problem P 0 jest NP-zupełny, gdy:.p 0 należ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. Największy problem: eksplozja kombinatoryczna liczby możliwych dróg. Np. zadanie komiwojażera: Liczba możliwych tras: (N -)! / 2 N=00 minuta N=0 h40 N=02 7 dni N=03 2 lata... Problemy NP-zupełne maja postać pytania czy istnieje. Problemy NP-trudne to zwykle ich optymalizacyjne wersje ( znajdź najmniejszy ). warcaby: 0 40 węzłów; szachy: 0 20 węzłów; go: 0 260 węzłów. 6 Np.: Znaleźć najkrótszą trasę dla Bardzo Ważnego Polityka (BWP) przez wszystkie miasta wojewódzkie. Na superkomputerze o mocy PFLOPS o!/2 => ok. 0.00 sek. o 48!/2 => ok.. 0 38 lat FLOPS(ang. FLoatingpoint Operations Per Second) liczba operacji zmiennoprzecinkowych na sekundę. PFLOPS petaflops: 0 FLOPS o start: Warszawa. o możliwości jest: o podział administracyjny 97-998: 7 Prometheus (27.04.20) -.7 PFLOPS; w pierwszej 30 na świecie 8 3

PRZSZUKIWANI WSZRZ STRATGI ŚLP. Utwórz listę węzłów P zawierającą stany początkowe. 2. Niech nbędzie pierwszym węzłem w P. Jeżeli Pjest puste, zakończ i zwróć NIPOWODZNI. 3. Jeżeli njest rozwiązaniem, zatrzymaj i podaj ścieżkę od stanu początkowego do n - zwróć SUKS. 4. W przeciwnym przypadku usuń nz Pi na końculisty dopisz wszystkich potomków n (wygenerowanych z pomocą zdefiniowanych reguł) zapamiętując dla każdego ścieżkę od stanu początkowego.. Wróć do kroku 2. 9 20 Metoda ta wykonuje rozwinięcie najpłytszego węzła spośród tych, które nie były jeszcze rozszerzone PRZSZUKIWANI W GŁĄB A 2 3 B 4 6 7 D F G 8 9 0 2 3 4 H I J K L M N O. Utwórz list węzłów P zawierającą stany początkowe. 2. Niech nbędzie pierwszym węzłem w P. Jeżeli Pjest puste, zakończ i zwróć NIPOWODZNI. 3. Jeżeli njest rozwiązaniem, zatrzymaj i podaj ścieżkę od stanu początkowego do n - zwróć SUKS. 4. W przeciwnym przypadku usuń nz Pi na początkulisty dopisz wszystkich potomków n (wygenerowanych za pomocą reguł produkcji) zapamiętując dla każdego ścieżkę od stanu początkowego.. Wróć do kroku 2. 2 22 Metoda ta wykonuje rozwinięcie najpłytszego węzła spośród tych, które nie były jeszcze rozszerzone A 2 9 B 3 6 0 3 D F G 4 7 8 2 4 H I J K L M N O STRATGIA JDNOLITGO KOSZTU (UNIFORM-OST SARH) Wykonuje ekspansję węzła o najmniejszym koszcie spośród tych, które nie były jeszcze rozszerzone. Jeśli koszt wszystkich węzłów jest jednakowy, to jest to równoważne szukaniu wszerz. S 0 S 0 23 24 4

STRATGIA JDNOLITGO KOSZTU (UNIFORM-OST SARH) Wykonuje ekspansję węzła o najmniejszym koszcie spośród tych, które nie były jeszcze rozszerzone. Jeśli koszt wszystkich węzłów jest jednakowy, to jest to równoważne szukaniu wszerz. S S 0 STRATGIA JDNOLITGO KOSZTU (UNIFORM-OST SARH) Wykonuje ekspansję węzła o najmniejszym koszcie spośród tych, które nie były jeszcze rozszerzone. Jeśli koszt wszystkich węzłów jest jednakowy, to jest to równoważne szukaniu wszerz. S S 0 2 26 STRATGIA JDNOLITGO KOSZTU (UNIFORM-OST SARH) Wykonuje ekspansję węzła o najmniejszym koszcie spośród tych, które nie były jeszcze rozszerzone. Jeśli koszt wszystkich węzłów jest jednakowy, to jest to równoważne szukaniu wszerz. S S 0 0 PRZYKŁADOW PROBLMY 27 28 ÓSMKA ÓSMKA... Przestrzeń stanów: 9!/2 = 8 440 elementów Stan: macierz 3x3. Operacje: przesuwanie (najwygodniej: 4 operacje na pustym polu); Ruchy: zbiór operatorów: O d, O g, O l, O p. Zbiór stanów wyjściowych Si końcowych G. Problem zdefiniowany jest jako trójka (S,O,G). Rozwiązanieproblemu: ciąg operatorów przekształcających S G. 29 Algorytmy szukania heurystycznego testuje się często na problemie przesuwanki. Klocków Rozmiar przestrzeni stanów zas sprawdzenia wszystkich stanów 8 8 440 0.8 s 0.6 0 2 6 dni 24 0. 0 2 2 bilionów lat...zakładając sprawdzanie 0 6 stanów na sekundę. Dobra funkcja heurystyczna zmniejsza liczbę rozpatrywanych stanów do <0. 30

PROBLM N KRÓLOWYH 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. el: ustawienie Nkrólowych tak, by żadna nie atakowała pozostałych. el dodatkowy: znaleźć wszystkie możliwe rozwiązania. 3 32 KRYPTOARYTMTYKA KOLOROWANI MAPY Zamienić litery na cyfry. Stan początkowy: słupek arytmetyczny z literami. Operator: zamień jednoznacznie literę na cyfrę. el: zamień wszystkie litery tak, by operacje na cyfrach się zgadzały. Np: FORTY + TN + TN SIXTY Rozwiązanie: 29786 + 80 + 80 3486 33 Gdy w październiku 82 roku Francis Guthrie (były student Augustusa de Morgana) kolorował mapę Anglii, zauważył, że cztery kolory wystarczą, Związek Australijski by każde dwa sąsiadujące hrabstwa różniły się barwą. Pomyślał: zy cztery barwy wystarczą do pokolorowania dowolnej, nawet najbardziej skomplikowanej mapy? (...) Więcej: http://www.mimuw.edu.pl/delta/artykuly/delta0604/4barwy.pdf 34 LIS I GĘSI Farmer ma przewieźć lisa, gęś i ziarno małą łódką na drugą stronę rzeki: w łódce mieści się rzecz; lis zjada gęś, gęś zjada ziarno. Stan początkowy: GRAF ROZWIĄZAŃ: 6 stanóww tym: 6 niebezpiecznych 0 akceptowalnych pusto... 3 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. 36 36 6

PRAKTYZN PROBLMY Szukanie optymalnej drogi (rutowanie pakietów w sieciach komputerowych, rezerwacje lotnicze itp). Projektowanie układów VLSI (very-large scale integration). Optymalizacja drogi robota w zmiennym środowisku. Autonomiczne urządzenia ratunkowe. Plan zajęć w szkole. Gry komputerowe. Dowodzenie twierdzeń matematycznych. Wnioskowanie (znalezienie zależności w bazie wiedzy). Systemy diagnozy medycznej. Komunikacja z maszyną za pomocą języka naturalnego. ksploracja danych (data mining).... 37 PROBLM I JGO OPIS 38 DFINIJA PROBLMU.Baza danych: fakty, stany, możliwości, opis sytuacji. 2.Możliwe operacje: zmieniają stan bazy danych. 3.Strategia kontrolna: określa start, koniec i kolejność operacji. iąg operacji tworzy sekwencję działań. Z każdą operacją związany jest pewien koszt. Należy dążyć do minimalizacji całkowitych kosztów. 39 RPRZNTAJA PROBLMU Zbiór konwencji dotyczących opisu pewnej klasy rzeczy. Odpowiednia reprezentacja znaczna część rozwiązania: uwidacznia istotne relacje; ujawnia wszystkie więzy ograniczające możliwe relacje; jest zrozumiała, kompletna, zwięzła; można ją efektywnie wykorzystać w modelu komputerowym.. Reprezentacja w przestrzeni stanów. 2. Reprezentacja redukcyjna. Zwykle problemy można konwertować z do 2 (i odwrotnie) 40 PRZYKŁAD PROBLMU: 7 Zerind Arad 8 7 Timisoara Dobreta Oradea 40 Lugoj 70 Mehadia 7 Sibiu 80 99 Rimnicu Vilcea raiova Fagaras Pitesti Neamt 87 Bucharest Giurgiu Sformułowanie problemu: 20 46 97 38 0 2 90 8 Iasi 92 42 98 Urziceni Vaslui Hirsova forie stany: miasta {Arad, Sibiu, Bucharest, }; akcje: przejazdy pomiędzy 2 miastami (np.: Arad Sibiu); cel: Arad Bucharest; koszt akcji: odległość pomiędzy dwoma miastami. 86 4 Reprezentacja problemu: stan początkowy: Arad; stan docelowy: Bukareszt; rozwiazanie: ciagprzejazdów (np. Arad Sibiu Fagaras Bukareszt); koszt rozwiązania: suma km pomiędzy kolejnymi miastami. 42 7

PRZYKŁAD PROBLMU: Montaż przy użyciu robota GRAF: Uporządkowana para: G = (V, ) V-niepusty zbiór wierzchołków (węzłów, punktów); - zbiór krawędzi (łuków). v w v w Sformułowanie problemu: stany: rzeczywiste współrzędne kątów w złączeniach robota, elementy do zmontowania; akcje: ciągłe ruchy złączy robota; cel: kompletny montaż; koszt akcji: czas montażu. 43 x y skierowane (zorientowane) z x y nieskierowane (niezorientowane) z 44 DRZWA: grafy, w których każdy węzeł ma tylko poprzednika. v u p x r w y z q s t korzeń wierzchołek wewnętrzny Drzewo to graf: - nieskierowany; wierzchołek = stan - acykliczny; krawędź = akcja -spójny. 4 liść Wysokość wierzchołka (h): maksymalna długość drogi od tego wierzchołka do liścia. Wysokość drzewa:dł. najdłuższejdrogiod korzenia do liścia. Głębokość (numer poziomu) wierzchołka (p):długość drogi łączącej ten wierzchołek z korzeniem. h=2, p= v u p x r w y z h=3, p=0 q s t h=0, p=3 46 RPRZNTAJA RDUKYJNA Najważniejsze nie stany, ale cele (opisy problemu). lementy składowe: opis początkowego problemu; zbiór operatorów transformujących dany problem na problemy cząstkowe; zbiór problemów elementarnych. Np.: Wieże Hanoi: Krążki:, 2, 3, 4 Kołki: A, B,. Koszt czasowy algorytmu: T(n)=2 n -. Przy 0 6 stanów/s -dla n=64: 0. miliona lat! 47 "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. 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. 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". http://chemeng.p.lodz.pl/zylla/games/hanoi3p.html 48 8

Problem: przesuń nklocków z Ana. Podproblemy: Przesuń stos n-klocków z Ana B Przesuń jeden klocek z Ana Przesuń stos n-klocków z Bna Problem elementarny: przesunięcie pojedynczego klocka. Opis problemu: ile jest klocków na stosie do przesunięcia; z którego kołka przesuwać; na który kołek przesuwać. 49 KRYTRIA ONY STRATGII SZUKANIA: Zupełność czy zawsze znajduje rozwiązanie, jeśli ono istnieje? Złożoność czasowa liczba wygenerowanych węzłów. Złożoność pamięciowa maksymalna liczba węzłów w pamięci. Optymalność czy znajduje rozwią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 o najmniejszym koszcie; m maks. głębokość drzewa przeszukiwań (możliwa ). 0 MTODY HURYSTYZN ( intuicyjne ): MTODY HURYSTYZN Strategie heurystyczne korzystają z dodatkowej, heurystycznej funkcji oceny stanu (np. szacującej koszt rozwiązania od bieżącego stanu do celu). Używają heurystyk, reguł kciuka by określić, którą częśćdrzewa decyzjirozwijać najpierw. Heurystyki to reguły lub metody, które prawie zawsze gwarantują podjęcie lepszej decyzji. Heurystyki wskazują dobre (według pewnego kryterium) kierunki poszukiwania, ale mogąpominąć ważne rozwiązania. 2 Podział metod heurystycznych: ogólne-efektywne dla szerokiego spektrum zadań; szczególne wykorzystują specyficzną wiedzę z danej dziedziny. Zalety poszukiwań heurystycznych: uniknięcie eksplozji kombinatorycznej; satysfakcjonujące (quasi-optymalne, dobre) rozwiązanie często wystarcza; próby znalezienia heurystyki dla danego problemu często prowadzą do lepszego zrozumienia tematu. 3 Kiedy stosować przeszukiwanie heurystyczne? Systemy ekspertowe problem nie posiada jednoznacznego rozwiązania ze względu na: niejednoznaczność zadania (celu); nieprecyzyjne lub niepewne dane; niepełne dane. Przeszukiwanie przestrzeni stanów z funkcją oceny gdy istnieją dokładne rozwiązania ale wymogi co do zasobów (pamięć, czas) są zbyt duże. Typowe zastosowania: problemy jednoosobowe (np. zagadki logiczne); zadania optymalizacji (np. znajdowanie najkrótszej ścieżki); gry dwuosobowe; systemy dowodzenia twierdzeń. 4 9

FUNKJA HURYSTYZNA: gdzie: Ψ zbiór dozwolonych stanów {s 0, s,..., 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 lub zysków rozwijania dalszej drogi przez węzeł odpowiadający s. s Węzeł s 0 ma3potomków. Określamykosztyutworzeniawęzłów s, s 2 i s 3 ; h(s ) = 0.9 h(s 2 ) =.3 h(s 3 ) = 0.6 Z punktu widzenia danej heurystyki s 3 jest najlepszym kandydatem. s 0 s 2 s 3 6 PRZYKŁADY FUNKJI HURYSTYZNYH: Problem komiwojażera: suma odległości jaka została przebyta do osiągnięcia danego miasta. Kółko i krzyżyk: -wartość dla wierszy, kolumn i przekątnych, w których jest symbol danego gracza i możliwa jest wygrana. -wartość 2dla wierszy, kolumn i przekątnych, w których są 2 symbole i możliwa jest wygrana. 7 0