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

Podobne dokumenty