STRATEGIE HEURYSTYCZNE

Transkrypt

STRATEGIE HEURYSTYCZNE
www.kwmimkm.polsl.pl
METODY
HEURYSTYCZNE
www.kwmimkm.polsl.pl
STRATEGIE
HEURYSTYCZNE
wykład 2
2
www.kwmimkm.polsl.pl
METODA WZROSTU (SIMPLE) HILLHILL-CLIMBING
HC: PROBLEM 8 KRÓ
KRÓLOWYCH
Operator - dział
działanie podejmowane w stosunku do stanu
aktualnego aby otrzymać
otrzymać z niego kolejny stan.
Lokalne minimum:
1. Wygeneruj stan początkowy (CS).
2. Jeśli CS jest stanem końcowym to zwróć SUKCES i zakończ.
3. Wybierz operator, który nie był jeszcze używany dla stanu CS
i wygeneruj przy jego pomocy stan NS.
4. Jeżeli:
• NS jest stanem końcowym to zwróć SUKCES i zakończ;
• NS nie jest stanem końcowym, ale jest lepszy od CS
to CS=NS.
5. Powróć do 3.
• Stan ma 1 konflikt.
• Każ
Każde przesunię
przesunięcie w kolumnie zwię
zwiększa liczbę
liczbę
konfliktó
konfliktów.
Strategia stosowana
do zagadnień
zagadnień cią
ciągłych oraz dyskretnych.
METODA NAJSZYBSZEGO WZROSTU
www.kwmimkm.polsl.pl
3
www.kwmimkm.polsl.pl
1. Wygeneruj stan początkowy (CS).
2. Jeśli CS jest stanem końcowym to zwróć SUKCES i zakończ.
3. Dla każdego operatora, który nie był jeszcze używany wygeneruj
stan NS.
4. Jeżeli:
• NS jest stanem końcowym: zwróć SUKCES i zakończ.
• NS nie jest stanem końcowym, ale jest lepszy
od CS to CS=NS.
5. Powróć do 3.
W SHC przechodzi się
cego do pierwszego stanu
się ze stanu bieżą
bieżącego
dla któ
którego wartość
wartość funkcji oceniają
oceniającej okazał
okazała się
się lepsza.
•
W SAHC sprawdza się
się dla każ
każdego stanu wszystkie opeoperatory i wybiera się
się ten, któ
który daje najlepszy nowy stan.
WADY METODY HILL CLIMBING
www.kwmimkm.polsl.pl
1. Rozwija jedną ścieżkę.
(STEEPESTSTEEPEST-ASCENT HILLHILL-CLIMBING)
CLIMBING)
•
4
5
2. W przypadku jednakowych kosztów losuje ścieżkę.
3. Lokalne ekstrema.
4. Plateau (równiny).
5. Wąskie grzbiety.
Co zrobić?
3. Powrót do poprzednich węzłów i próba przemieszczania się
w innym kierunku lub metoda wielostartu.
4. Wykonanie dużego skoku w pewnym kierunku (eksplorowanie nowego fragmentu przestrzeni stanów).
5. Wykonanie ruchu w kilku kierunkach naraz.
PIERWSZY NAJLEPSZY (BEST FIRST)
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
SZUKANIE ZACHŁ
ZACHŁANNE (GREEDY SEARCH)
• Jedna z najprostszych strategii BF.
BF.
• W wersji podstawowej toż
tożsamy z HC dla wariantu
dyskretnego.
• F. heurystyczna szacuje pozostał
pozostałe koszty dotarcia do
celu (jak: odległ
odległość od celu).
• W procesie poszukiwania zawsze moż
można wró
wrócić
cić do
węzła lepszego (jeś
(jeśli są
są pamię
pamiętane).
• Najpierw rozwijany jest najbliż
najbliższy węzeł
zeł.
Problemy szukania drogi: metryki:
metryki:
1. Euklidesowa;
Wersje:
• szukanie zachł
zachłanne;
2. Manhattan (poruszanie się
się tylko
po liniach poziomych i pionowych).
• A*.
7
www.kwmimkm.polsl.pl
W linii prostej do
Bukaresztu z:
www.kwmimkm.polsl.pl
W linii prostej do
Bukaresztu z:
450km
418km
W innych problemach: oceny podobień
podobieństwa.
stwa.
8
www.kwmimkm.polsl.pl
W linii prostej do
Bukaresztu z:
www.kwmimkm.polsl.pl
• Znalezione rozwią
rozwiązanie jest suboptymalne (o 32 km
dłuższe niż
niż droga optymalna).
• Strategia zachł
zachłanna pró
próbuje maksymalnie zmniejszyć
zmniejszyć
koszt dotarcia do celu bez oceny, czy na dł
dłuższa metę
metę
jest to najlepsze zachowanie.
• GS moż
może „źle”
le” wystartować
wystartować i utknąć
utknąć w ślepej uliczce:
12
www.kwmimkm.polsl.pl
• GS nie jest algorytmem optymalnym (niekoniecznie
znajduje rozwią
rozwiązanie o minimalnym koszcie).
• GS nie jest algorytmem zupeł
zupełnym (nie zawsze znajduje
rozwią
rozwiązanie).
• Złożoność
oność czasowa GS w najgorszym razie wynosi
O(bm), dla m krokó
b i średnio b moż
kroków w głą
głąb
możliwoś
liwości.
Funkcji heurystyczna oceniają
oceniająca koszty najtań
najtańszego
rozwią
rozwiązania przechodzą
przechodzącego przez wę
węzeł
zeł n:
f (n) = g(n) + h(n)
g(n) – dotychczasowy koszt dotarcia do stanu n;
h(n) – oszacowanie kosztu od stanu bieżą
cego n do stanu
bieżącego
docelowego.
• Złożoność
oność pamię
pamięciowa GS wynosi O(bm)
(przechowuje wszystkie wę
węzły w pamię
pamięci).
1. Rozpocznij od węzła początkowego i twórz nowe węzły
osiągnięty;
• Alternatywa:
Alternatywa: minimalizacja kosztó
kosztów dojś
dojścia do danego
węzła g(n) – metoda zupeł
zupełna i optymalna,
optymalna, lecz mał
mało
efektywna…
efektywna…
2. Posortuj nowe węzły
{n} zgodnie z funkcją: f(n)=g(n)+h(n).
4. Wybierz najlepszy węzeł
n’
n’.
n’ jest celem skończ; jeśli nie, rozwijaj dalsze węzły {n}
5. Zostaw tylko najtańszą ścieżkę do
łącznie z
n’
13
14
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
Do Bukaresztu z:
15
Do Bukaresztu z:
16
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
Do Bukaresztu z:
17
{n} dopóki cel nie zostanie
3. Odrzuć ścieżki zapętlone.
6. Jeśli
• Metoda A* łączy
łączy obydwa podejś
podejścia.
www.kwmimkm.polsl.pl
STRATEGIA A*
Do Bukaresztu z:
18
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
Do Bukaresztu z:
• A* jest algorytmem optymalnym (znajduje rozwią
rozwiązanie
o minimalnym koszcie) jeś
jeśli heurystyka h jest dopuszczalna.
• A* jest algorytmem zupeł
rozwiązazazupełnym (zawsze znajduje rozwią
nie) jeś
jeśli nie ma nieskoń
nieskończenie wielu stanó
stanów takich, że:
f ≤ f (G)
gdzie: G - stan docelowy.
• Złożoność
oność czasowa: wykł
wykładnicza
wzglę
d wzglę
względem [błą
[błąd
względny h × dług. rozwią
rozwiązania].
• Złożoność
oność pamię
pamięciowa: O(bm)
(przechowuje wszystkie wę
węzły w pamię
pamięci).
418km
19
20
www.kwmimkm.polsl.pl
DOPUSZCZALNOŚĆ
DOPUSZCZALNOŚĆ HEURYSTYKI
Funkcja heurystyczna h(n) jest dopuszczalna,
dopuszczalna, jeś
jeśli
w każ
spełnia nastę
następują
pujący warunek:
każdym stanie n speł
h(n) ≤ h* (n)
Np.:
www.kwmimkm.polsl.pl
hSLD(n):
h* (n) - rzeczywisty koszt ścież
cieżki od stanu n do celu.
Np.:
• A – stan począ
początkowy;
• F – stan docelowy;
• Na krawę
krawędziach: rzecz. koszty
przejś
przejścia mię
między stanami;
• Wartoś
Wartości f. heurystycznej h(n):
A
h(-) 10
B
3
C
7
D
4
E
2
F. odległ
odległości w linii prostej hSLD(n) jest dopuszczalna:
dopuszczalna:
- nigdy nie przekracza rzeczywistej
odległ
odległości drogowej.
F
0
SPÓ
SPÓJNOŚĆ
JNOŚĆ HEURYSTYKI
21
www.kwmimkm.polsl.pl
Dopuszczalna funkcja heurystyczna h(n) jest spó
spójna
(speł
(spełnia wymó
wymóg monotonicznoś
monotoniczności),
ci), jeż
jeżeli dla każ
każdego
węzła n i każ
każdego jego nastę
następcy n’:
h(n) ≤ c(n,n’) + h (n’)
22
www.kwmimkm.polsl.pl
STRATEGIA IDA* (ITERATIVE DEEPENING A*)
1. Stosuj algorytm szukania w głąb.
2. Oceniaj całkowite koszty f (n) = g(n) + h(n) heurystyką A*.
3. Jeśli f (n) > T cofaj się.
4. Jeśli nie znaleziono rozwiązania zwiększ T i powtarzaj.
n
• Obcinane są
są węzły, któ
których wartość
wartość funkcji oceny leż
leży
poniż
poniżej progu T.
c(n,n’)
n’
h(n)
• Poziom obcinania jest iteracyjnie zwię
zwiększany, aż
aż do
osią
osiągnię
gnięcia celu.
• Zalety:
Zalety: niewielkie wymagania pamię
pamięciowe - jak
w szukaniu w głą
b - jednakż
głąb
jednakże szybsza.
h(n’)
Jeż
Jeżeli heurystyka h(n) jest spó
spójna, to A* znajdzie
optymalną
ą
ś
cież
ż
k
ę
.
optymaln cie
23
24
SYMULOWANE WYŻ
WYŻARZANIE
www.kwmimkm.polsl.pl
(SIMULATED ANNEALING)
Z metalurgii:
• Kawał
Kawałek metalu ogrzewany i pozostawiany do
powolnego ostygnię
ostygnięcia.
• Algorytm z rodziny algorytmó
algorytmów „Generuj i Testuj”
Testuj”.
• Odmiana algorytmu najwię
największego wzrostu, w któ
której
rozwią
rozwiązuje się
się problem lokalnych ekstremó
ekstremów.
• Powolne i regularne chł
chłodzenie - obniż
obniżenie poziomu
energii atomó
atomów do momentu znalezienia się
się w stanie
metastabilnym (o minimalnej energii).
energii).
• Dopuszcza się
cego takż
się przejś
przejścia ze stanu bieżą
bieżącego
także do
stanó
stanów gorszych
(uniezależ
(uniezależnienie się
się od punktu startowego i badanie
znacznie wię
większego obszaru przestrzeni rozwią
rozwiązań
zań).
• W miarę
upływu czasu prawdopodobień
prawdopodobieństwo
miarę upł
wykonania „złego”
ego” posunię
posunięcia zmniejsza się
się.
www.kwmimkm.polsl.pl
• Gwał
Gwałtowne ochł
ochłodzenie: zamroż
zamrożenie atomó
atomów na
przypadkowych pozycjach.
25
www.kwmimkm.polsl.pl
Prawdopodobień
Prawdopodobieństwo przejś
przejścia do wyż
wyższego stanu
energetycznego:
energetycznego:
26
www.kwmimkm.polsl.pl
SZTUCZNE SYMULOWANE WYŻ
WYŻARZANIE
p ' = e − ΔE / T
ΔE – zmiana funkcji heurystycznej;
p = e − ΔE / kT
T – temperatura (tempo studzenia, rozkł
rozkład wyż
wyżarzania).
arzania).
• Rozkł
Rozkład wyż
wyżarzania musi być
być dany (zał
(założony).
• Najczęś
ciej jest zwią
Najczęściej
związany z czasem (krokiem) procesu.
ΔE – zmiana energii stanu;
T – temperatura przy jakiej nastę
następuje przejś
przejście do
wyż
wyższego stanu energetycznego;
k – stał
stała Boltzmanna.
Boltzmanna.
• Prawdopodobień
Prawdopodobieństwo mał
małego skoku w kierunku
wzrastają
wzrastającej energii jest wię
większe niż
niż duż
dużego skoku.
• Prawdopodobień
Prawdopodobieństwo skoku powodują
powodującego wzrost
energii zmniejsza się
się wraz ze spadkiem temperatury.
temperatury.
27
www.kwmimkm.polsl.pl
• Wielkość
upływem czasu.
czasu.
Wielkość skokó
skoków maleje z upł
GRY DWUOSOBOWE
28
www.kwmimkm.polsl.pl
Typowe zał
założenia:
1. Wygeneruj stan początkowy (CS).
1. W grze uczestniczy dwó
dwóch graczy.
2. Ustaw początkową temperaturę T oraz stan BestSoFar:=CS.
2. Gracze wykonują
wykonują ruchy naprzemiennie.
3. Dopóki T>0 i są stany nie wykorzystane jako CS:
3. W każ
każdej sytuacji na planszy jest skoń
skończona liczba
moż
możliwych do wykonania ruchó
ruchów.
• Wybierz jeden z niewykorzystanych stanów i nazwij go NS.
• Oblicz ΔE=E(NS)–E(CS).
4. Sytuacja na planszy i wykonany ruch jednoznacznie
wyznaczają
wyznaczają nastę
następną
pną sytuację
sytuację na planszy.
• Jeśli ΔE<=0 to CS:=NS oraz BestSoFar:=NS.
5. Każ
Każda moż
możliwa sytuacja na planszy moż
może być
być jednoznaczjednoznacznie zaklasyfikowana do jednej z nastę
następują
pujących kategorii:
• Jeśli ΔE>0 to CS:=NS z prawdopodobieństwem p.
• Zmniejsz temperaturę T.
4. Zwróć BestSoFar jako rozwiązanie i zakończ.
29
•
•
•
•
wygrana pierwszego gracza,
wygrana drugiego gracza,
remis,
sytuacja nierozstrzygnię
nierozstrzygnięta.
30
www.kwmimkm.polsl.pl
• Pojedyncza partia gry moż
może być
być w peł
pełni opisana przez cią
ciąg
naprzemiennych ruchó
ruchów obu graczy, od począ
początkowego
ustawienia do rozstrzygnię
rozstrzygnięcia.
• Aby w dowolnym momencie partii wybrać
wybrać najbardziej
odpowiedni ruch dla jednego z graczy, moż
można rozważ
rozważyć
wszystkie moż
możliwe scenariusze jej dalszego cią
ciągu.
poziom
gracza
• Najczęś
ciej stosowane podejś
Najczęściej
podejście:
przyję
c do wygrania partii
przyjęcie zał
założenia, że przeciwnik dążą
dążąc
zawsze wybiera najkorzystniejszy dla siebie (a wię
więc
najmniej korzystny dla gracza) ruch.
poziom
przeciwnika
32
31
www.kwmimkm.polsl.pl
Algorytm minimini-max
• Obecność
Obecność przeciwnika, któ
którego ruchy nie mogą
mogą być
być
przewidziane i dokł
dokładnie zaplanowane,
zaplanowane, decyduje
o istotnej odmiennoś
odmienności zadania przeszukiwania w grach od
innych zadań
zadań przeszukiwania.
• Istnieje zatem konieczność
konieczność posł
posługiwania się
się specyficzspecyficznymi algorytmami.
algorytmami.
• Naturalna reprezentacja: drzewo gry.
gry.
poziom
gracza
www.kwmimkm.polsl.pl
Peł
Pełny minimini-max
www.kwmimkm.polsl.pl
• Najprostszy algorytm przeszukiwania drzew mają
mający zastosowazastosowa-nie
w nielosowych algorytmach gry w dwie osoby, np.
np. szachó
szachów.
1. Przypisz liś
liściom drzewa ocenę
ocenę jako uż
użyteczność
yteczność z punktu
widzenia aktualnego gracza;
• Dla każ
każdego ruchu symulujemy wszystkie moż
możliwe ruchy
przeciwnika.
• Za wartość
wartość danego naszego ruchu uznajemy wartość
wartość najlepszego
z punktu przeciwnika ruchu, któ
który moż
może on wykonać
wykonać, jeś
jeśli my
wykonamy dany ruch (część
(część min).
min).
• Nastę
Następnie wybieramy ruch o najwyż
najwyższej wartoś
wartości (część
(część max).
max).
2. Dla każ
każdego poziomu k, drzewa, zaczynają
zaczynając od poziomu
przedostatniego i koń
kończą
cząc na poziomie 0,
1
1
3
-1
2
Obcię
Obcięty minimini-max
-1
1
4
2
2. jeś
jeśli poziom k odpowiada przeciwnikowi aktualnego gracza, przypisz
każ
każdemu wę
węzłowi tego poziomu ocenę
ocenę wyznaczoną
wyznaczoną jako minimum ocen jego
węzłów potomnych z poziomu k+1;
+1;
3. Wybierz ruch prowadzą
prowadzący do wę
węzła poziomu 1 o maksymalnej
ocenie.
-1
2
1. jeś
jeśli poziom k odpowiada aktualnemu graczowi, przypisz każ
każdemu wę
węzłowi
tego poziomu ocenę
ocenę wyznaczoną
wyznaczoną jako maksimum ocen jego wę
węzłów
potomnych z poziomu k+1;
+1;
-1
33
www.kwmimkm.polsl.pl
• Ograniczenie głę
bokośści analizowania drzewa gry do
głęboko
pewnej liczby poziomó
poziomów (zależ
(zależnej od zł
złożonoś
oności gry i dosdostępnej mocy obliczeniowej).
• Wystą
Wystąpią
pią węzły terminalne odpowiadają
odpowiadające
nierozstrzygnię
nierozstrzygniętej partii – należ
należy je w jakiś
jakiś sposó
sposób ocenić
ocenić.
• Ich ocena nie moż
może być
być oparta na wyniku partii (brak
rozstrzygnię
rozstrzygnięcia) ani na ocenach wę
węzłów potomnych (brak
węzłów potomnych), lecz wyłą
cznie na analizie zwią
wyłącznie
związanego
z nim stanu gry – potrzebna jest funkcja heurystyczna...
heurystyczna...
Tak sformuł
sformułowany algorytm zakł
zakłada,
ada, że dysponujemy
zbudowanym peł
pełnym drzewem gry – zwykle
nie jest to moż
możliwe...
34
www.kwmimkm.polsl.pl
Algorytm minimini-max – zadowalają
zadowalający, jeś
jeśli stosowany
stosowany do
umiarkowanie złożonych gier albo wymagamy tylko
umiarkowanego poziomu gry (poró
porównywalnego ze
średnim ludzkim graczem.
graczem.
http://wazniak.mimuw.edu.pl
http://wazniak.mimuw.edu.pl//index.php?title=Sztuczna_inteligencja
w module „Gry dwuosobowe”
dwuosobowe” – postaci algorytmó
algorytmów minimini-max
i obcię
obcięty minimini-max (wersja rekurencyjna).
• F. heurystyczna ocenia użyteczność
yteczność danego stanu
z punktu widzenia gracza bez rozważ
rozważania dalszych
moż
możliwych ruchó
ruchów.
35
36
Cię
Cięcia alfaalfa-beta
www.kwmimkm.polsl.pl
• Oparty na obcię
obciętym algorytmie minimini-maks,
maks, uwzglę
uwzględniadniającym kryteria umoż
umożliwiają
liwiające bezpieczne pominię
pominięcie
(wycię
(wycięcie) fragmentó
fragmentów drzewa gry.
• Rezygnacja z rozbudowy i analizy drzewa gry tam, gdzie
jej wynik i tak nie wpł
wpłynie na wybierany ruch.
www.kwmimkm.polsl.pl
Cię
Cięcie alfa: oceniają
oceniając wę
węzeł
zeł przez maksymalizację
maksymalizację ocen
węzłów potomnych moż
możemy zakoń
zakończyć
czyć wyznaczanie oceny
węzła potomnego natychmiast po stwierdzeniu, że musi być
być
ona niż
niższa niż
niż dotychczasowe maksimum α.
Cię
Cięcie beta: oceniają
oceniając wę
węzeł
zeł przez minimalizację
minimalizację ocen
węzłów potomnych moż
możemy zakoń
zakończyć
czyć wyznaczanie oceny
węzła potomnego natychmiast po stwierdzeniu, że musi być
być
ona wyż
wyższa niż
niż dotychczasowe minimum β.
• Oszczę
Oszczędność
dność zasobó
zasobów, któ
które moż
można wykorzystać
wykorzystać do
przeszukiwania obiecują
obiecujących fragmentó
fragmentów drzewa gry.
1
1
3
α
2
-1<=α
-1
-1
4
2
-1
37
38
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
• Skuteczność
Skuteczność algorytmó
algorytmów opartych na zasadzie miniminimaksu w duż
dużej mierze zależ
zależy od jakoś
jakości uż
używanej
funkcji heurystycznej.
heurystycznej.
• W najskuteczniejszych programach grają
grających w gry
(zwł
(zwłaszcza szachy) - niezwykle wyrafinowane funkcje
heurystyczne, oparte na najwyż
najwyższej klasy wiedzy
eksperckiej i wielu eksperymentach.
• Funkcja heurystyczna powinna:
1. Przypisywać
Przypisywać ocenę
ocenę dodatnią
dodatnią stanowi, z któ
którego wię
większe
szanse wygranej ma gracz,
• Dobre podejś
podejście:
cie: by funkcja heurystyczna (nawet
bardzo skuteczna) mogł
mogła podlegać
podlegać modyfikacjom na
podstawie rozgrywanych partii (wyposaż
(wyposażanie prograprogramów grają
grających w gry w zdolność
zdolność do uczenia się
się).
2. Przypisywać
Przypisywać ocenę
ocenę ujemną
ujemną stanowi, z któ
którego wię
większe
szanse wygranej ma przeciwnik,
3. Przypisywać
Przypisywać ocenę
ocenę tym wię
większą
kszą co do wartoś
wartości
bezwzglę
bezwzględnej, im przewaga szans wygranej gracza
albo przeciwnika jest wię
większa.
39
40
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
DOBÓR
METODY
HEURYSTYCZNEJ
Pytania:
1. Czy moż
można dokonać
dokonać dekompozycji problemu?
2. Czy moż
można ignorować
ignorować/anulować
/anulować pewne stany?
3. Czy wynik jest znany z gó
góry?
4. Czy rozwią
rozwiązanie jest wzglę
względne czy bezwzglę
bezwzględne?
5. Czy oczekiwane rozwią
rozwiązanie jest stanem czy ścież
cieżką?
6. Jaka ilość
ilość wiedzy jest wymagana?
41
7. Czy program wymaga interakcji uż
użytkownika?
42
Ad. 1. Dekompozycja problemu.
www.kwmimkm.polsl.pl
Podział
Podział zadania na mniejsze,
mniejsze, łatwiejsze do rozwią
rozwiązania
fragmenty.
Klasy zadań
zadań:
1. Z ignorowaniem błę
dów - np.
błęd
np. dowodzenie twierdzeń
twierdzeń:
błędnie
łędnie wykonane wnioskowanie moż
można zignorować
zignorować
i poszukiwać
poszukiwać innej drogi rozwią
rozwiązania).
Korzyś
Korzyści:
• Moż
Możliwość
liwość rozwią
rozwiązania duż
dużych zadań
zadań, któ
których nie
moż
można rozwią
rozwiązać
zać bez ich podział
podziału;
2. Odwracalne - np.
np. ósemka:
moż
możliwy jest powró
powrót z niewł
niewłaściwego stanu do
poprzedniego, co daje szanse na znalezienie
rozwią
rozwiązania).
• Mniejsze problemy moż
można zazwyczaj rozwią
rozwiązać
zać
w kró
krótszym czasie. Sumaryczny czas obliczeń
obliczeń po
dekompozycji jest czę
często kró
krótszy niż
niż dla zadania
oryginalnego.
Nie wszystkie problemy dają
się dekomponować
dekomponować...
dają się
43
Ad. 3. Znajomość
Znajomość wyniku.
www.kwmimkm.polsl.pl
1. Pewny wynik (np.
np. ósemka)
2. Niepewny wynik (np.
np. szachy, brydż
brydż)
Ad. 4. Wzglę
Względność
dność rozwią
rozwiązania.
1. Rozwią
Rozwiązanie wzglę
względne:
problemy typu „dowolna ścież
cieżka do rozwią
rozwiązania”
zania” –
rozwią
rozwiązywalne w rozsą
rozsądnym czasie przy zastosowaniu
dobrej heurystyki.
2. Rozwią
Rozwiązanie bezwzglę
bezwzględne:
Problemy typu „najlepsza ścież
cieżka do rozwią
rozwiązania”
zania” –
wymagają
wymagające bardziej wyczerpują
wyczerpującego przeprzeszukiwania przestrzeni stanó
stanów.
45
Ad. 7. Interakcja z uż
użytkownikiem.
www.kwmimkm.polsl.pl
Ad. 2. Ignorowanie i anulowanie krokó
kroków.
www.kwmimkm.polsl.pl
1. Systemy samodzielne:
Komputer szuka rozwią
rozwiązania bez komunikacji z użytkowytkownikiem i nie wymaga się
się wyjaś
wyjaśniania procesu dochodzedochodze-nia
do rozwią
rozwiązania).
Np.: dowodzenie twierdzeń
twierdzeń.
3. Nieodwracalne - np.
np. szachy.
one
Algorytm musi podejmować
podejmować decyzje obciąż
obciążone
ryzykiem. Niezbę
Niezbędna analiza w przó
przód (planowanie).
Ad. 5. Typy rozwią
rozwiązań
zań.
44
www.kwmimkm.polsl.pl
1. Pojedynczy stan z przestrzeni (istotny jest stan
koń
końcowy a nie wyniki poś
pośrednie).
2. Ścież
cieżka prowadzą
prowadząca od stanu począ
początkowego
do rozwią
rozwiązania (wynik jest znany, istotna jest droga
dojś
dojścia do niego).
Ad. 6. Wiedza.
1. Problemy wymagają
wymagające wiedzy do mechanizmu
sterowania (wiedza niezbę
niezbędna by usprawnić
usprawnić algorytm
sterowania i eliminować
dane stany). Np szachy:
eliminować niepożą
niepożądane
szachy:
ruchy figur, strategia.
2. Problemy wymagają
wymagające szerokiej wiedzy (wiedza
ma pomó
pomóc w okreś
określeniu rozwią
rozwiązania, nie tylko przysprzys46
pieszeniu jego znalezienia). Np. rozumienie tekstu.
tekstu.
www.kwmimkm.polsl.pl
OPTYMALIZACJA
2. Systemy konwersacyjne:
Wymagana jest interakcja z uż
użytkownikiem.
Np.: systemy ekspertowe i diagnozy medyczne.
47
48
www.kwmimkm.polsl.pl
OPTYMALIZACJA:
„Dział
Działanie, mają
mające na celu zwię
zwiększenie efektywnoś
efektywności
aż do osią
osiągnię
gnięcia pewnego optimum”
optimum”.
Metody analityczne bezpoś
bezpośrednie:
www.kwmimkm.polsl.pl
• Poruszanie się
się po wykresie funkcji w kierunku
wyznaczonym przez lokalny gradient (wspinaczka po
najbardziej stromym zboczu z moż
możliwych).
• Cel gł
główny: ulepszenie.
ulepszenie.
• Cel drugorzę
drugorzędny: osią
osiągnię
gnięcie optimum.
optimum.
Metody analityczne poś
pośrednie:
METODY OPTYMALIZACJI
ANALITYCZNE
PRZEGLĄDOWE
• Poszukiwanie ekstremó
ekstremów lokalnych poprzez
rozwią
rozwiązanie ukł
układu ró
równań
wnań (zwykle nieliniowych),
otrzymanych poprzez przyró
przyrównanie gradientu funkcji celu
do zera.
LOSOWE
(enumeracyjne)
pośrednie
bezpośrednie
49
www.kwmimkm.polsl.pl
GŁÓWNA WADA METOD ANALITYCZNYCH:
50
Funkcja trudna do optymalizacji metodami analitycznymi:
analitycznymi:
www.kwmimkm.polsl.pl
f ( x1 , x2 ) = 21.5 ⋅ sin(4π x1 ) + x2 ⋅ sin(20π x2 )
MAŁ
MAŁA ODPORNOŚĆ
ODPORNOŚĆ
x1∈[ -3.0, 12.1]; x 2 ∈[ 4.1, 5.8];
f
Funkcja niemoż
niemożliwa
do optymalizacji
metodami analitycznymi:
analitycznymi:
f(x)
51
x
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
METODY ENUMERACYJNE:
Czasem maksimum globalne nie jest pożą
dane:
pożądane:
• Sprowadzają
Sprowadzają się
się do przeszukiwania wszystkich punktó
punktów
przestrzeni w poszukiwaniu optimum.
• Algorytm niezwykle prosty lecz skuteczny jedynie
w przypadku skoń
skończonych, mał
małych przestrzeni.
• Zwykle sprawdzenie wszystkich moż
możliwoś
liwości jest
niemoż
niemożliwe w rozsą
rozsądnym czasie
(tzw. przekleń
przekleństwo wymiaru).
Preferowane
referowane są czasem rozwią
rozwiązania,
zania, któ
których otoczenie przyjmuje
wartoś
wartości bliskie temu ekstremum a nie te, dla któ
których niewielkie
oddalenie się
się od ekstremum powoduje gwał
gwałtowny spadek wartoś
wartości
funkcji.
funkcji.
Np: w przypadku inwestycji kapitał
kapitałowych,
owych, by nie ryzykować
ryzykować straty
z powodu niezbyt precyzyjnie zdefiniowanej funkcji,
funkcji, bądź
nieznacznej zmiany jakiegoś
jakiegoś parametru funkcji.
funkcji.
53
54
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
METODY LOSOWE:
• W swej najprostszej postaci: bada się
się losowo całą
całą
przestrzeń
przestrzeń zadania nie korzystają
korzystając z innych informacji.
ALGORYTMY
GENETYCZNE
• Poszukiwanie takie jest zwykle bardzo czasochł
czasochłonne
(zwykle jednak mniej niż
niż metody enumeracyjne).
enumeracyjne).
Algorytmy genetyczne i ewolucyjne ró
również
wnież zawiezawierają
rają element losowoś
losowości (algorytm zrandomizowany).
zrandomizowany).
55
56
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
Karol Darwin (1859 „On the origin of species”):
species”):
• Ewolucja przez dobór naturalny oznacza, że przeżywają
i rozmnażają się osobniki najlepiej przystosowane do
warunków środowiska.
• Wynik przystosowania zależy od:
- organizmu;
Gregor Johann Mendel (18221822-1884)
1884) austriacki zakonnik, augustianin,
prekursor genetyki.
genetyki.
- środowiska.
• Sformułował podstawowe prawa dziedziczenia
(3 prawa Mendla),
Mendla), przeprowadzając badania nad
krzyżowaniem roślin, głównie grochu jadalnego.
jadalnego.
www.kwmimkm.polsl.pl
• Na świat przychodzi duż
dużo wię
więcej potomstwa, niż
niż moż
może
pomieś
pomieścić
cić środowisko.
ALGORYTMY GENETYCZNE:
www.kwmimkm.polsl.pl
• Przeż
Przeżywają
ywają nieliczni,
nieliczni, ale za to najlepsi (selekcja
naturalna).
• AG odwzorowują
odwzorowują naturalne procesy ewolucji zachodzą
zachodzące w czasie.
• W procesie ewolucji istotne jest zachowywanie
różnorodnoś
norodności cech.
• Ich celem jest maksymalne dopasowanie osobnikó
osobników do
istnieją
istniejących warunkó
warunków życia.
• Sił
Siła ewolucji to nie zaawansowany proces doskonadoskonalenia jednostki,
jednostki, lecz utrzymywanie duż
dużej liczby
różnorodnych osobnikó
osobników (tzw. populacji), któ
która
ewoluuje jako cał
całość.
ść.
• Rolę
Rolę środowiska speł
spełnia tu funkcja oceniają
oceniająca (funkcja
celu).
• Pomimo elementu losowoś
dzą
ą
losowości AG nie błą
błądz
przypadkowo, lecz wykorzystują
wykorzystują efektywnie przeszł
przeszłe
doś
wiadczenia.
doświadczenia.
59
60
www.kwmimkm.polsl.pl
TERMINOLOGIA:
www.kwmimkm.polsl.pl
100011011
John H. Holland,
Holland, 1975:
„Adaptation in Natural and Artificial Systems”
Systems”:
• gen – najmniejsza skł
składowa chromosomu
• Koncepcja algorytmu przeszukiwania opartego
na zasadzie doboru naturalnego.
• chromosom – uporzą
uporządkowany cią
ciąg genó
genów (cią
(ciąg
kodowy). Zwykle utoż
utożsamiany z osobnikiem;
(decyduje o dziedzicznoś
dziedziczności jednej lub kilku cech);
• locus – miejsce genu w chromosomie;
• Procedurę
Procedurę probabilistycznego przeszukiwania
dyskretnej przestrzeni stanó
stanów nazwał
nazwał
algorytmem genetycznym.
• allele – warianty (stany) jednego genu warunkują
warunkujące
daną
daną cechę
cechę;
• populacja – pewna liczba osobnikó
osobników (chromosomó
(chromosomów);
61
TERMINOLOGIA:
www.kwmimkm.polsl.pl
100011011
• genotyp – ogó
ogół genó
genów danego osobnika;
• fenotyp – ogó
ogół cech ujawniają
ujawniających się
się na zewną
zewnątrz (np
(np..
rozkodowana postać
postać zmiennych projektowych);
• mutacja – zmiana jednego lub kilku genó
genów w
chromosomie;
• krzyż
krzyżowanie – operacja mają
mająca na celu wymianę
wymianę
materiał
materiału genetycznego mię
między osobnikami;
• selekcja – wybó
wybór osobnikó
osobników, któ
które zostaną
zostaną poddane
operacjom genetycznym.
62
SCHEMAT DZIAŁ
DZIAŁANIA AG:
www.kwmimkm.polsl.pl
procedure algorytm_genetyczny
begin
t:=0
wybierz populację początkową P(t)
oceń P(t)
while (not warunek_zakończenia) do
begin
t:=t+1
wybierz P(t) z P(t-1) (selekcja)
zmień P(t) (działanie operatorów genetycznych)
oceń P(t)
end
end
63
64
www.kwmimkm.polsl.pl
www.kwmimkm.polsl.pl
ZASTOSOWANIA PRAKTYCZNE AG (i AE):
• nieliniowe systemy dynamiczne – analiza danych;
• wyznaczanie trasy połą
czeń
ń kablowych;
połącze
• przewidywanie;
• harmonogramowanie;
• projektowanie sieci neuronowych: architektury i wagi;
• sterowanie adaptacyjne;
• poruszanie robotem;
• rozgrywanie gier;
• tworzenie programó
programów;
• zadanie plecakowe;
• planowanie;
• zadanie komiwojaż
komiwojażera;
• znajdowanie kształ
kształtu molekuł
molekuł biał
białek;
• sterowanie optymalne;
• tworzenie grafik i muzyki;
• optymalizacja obsł
obsługi pytań
pytań w bazach danych;
65
• ...
66

Podobne dokumenty