![Page 1: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/1.jpg)
Informovane metody prohledavanı stavoveho prostoru
Michal Pechoucek
Gerstner Laboratory Agent Technology Group,Czech Technical University in Prague
http://labe.felk.cvut.cz/~pechouc/KUI/2.pdf
![Page 2: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/2.jpg)
pInformovane metody prohledavanı stavoveho prostoru
:: implementujı efektivnı metody nalezenı optimalnıho resenı a vyuzıvajı pri tom kvalitativnı
informaci ruznych stavech stavoveho prostoru.
Pri prohledavanı pouzıvame:
� urcitou informaci o konkretnı cene pouzitı daneho stavoveho operatoru
� heuristickou informaci, odhad o vhodnosti pouzitı daneho stavoveho s ohledem na efektivnost
prohledavanı stavoveho prostoru
:: Tyto informace pouzıvame pro navrh heuristickeho algoritmu – Best-First-Search, ktery
vybere vhodny uzel k expanzi. Takovyto uzel vede prohledavanı k optimalnımu resenı. Funguje-li
heuristicky algoritmus dobre, minimalizuje prohledavanı castı stavoveho prostoru, ktera nevedou
k optimalnımu resenı.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 3: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/3.jpg)
pInformovane metody prohledavanı stavoveho prostoru
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 4: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/4.jpg)
pBreatht First Search
begin
_open <= [Start]
while (_open =/= []) do begin
X <= FIRST(_open)
_open <= _open - [X]
if X = GOAL then return(SUCCESS)
else begin
E <= expand(X)
_open <= _open + E
end
end
return(failure)
end.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 5: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/5.jpg)
pBest First Search
begin
_open <= [Start]
while (_open =/= []) do begin
X <= BEST(_open)
_open <= _open - [X]
if X = GOAL then return(SUCCESS)
else begin
E <= expand(X)
_open <= _open + E
end
end
return(failure)
end.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 6: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/6.jpg)
pHodnotıcı Funkce
:: Kdyz se algoritmus snazı vybıra nejlepsı stav pro expanzi (napr. sn) z aktualnıho stavu
(napr. sm) pracuje s nasledujıcımi parametry:
� c(n) – cena aplikace operatoru pro prechod ze stavu n do stavu m
� g(m) – celkova cena, soucet cen vsech operatoru aplikovanych z pocatecnıho stavu az do
stavu m
� h(n) – realna nebo odhadovana celkova cena, soucet vsech operatoru ktere je potreba aplikovat
ze stavu n do cıloveho stavu.
:: je tedy treba navrhnout nasledujıcı hodnotıcı funkci
F : C × G ×H → R
a zajistit, ze ma rozumne chovanı v konkretnı domene.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 7: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/7.jpg)
pPrıklady hodnotıcı funkce
hillclimbing – kde ∀m, n : f (m, n) = c(n)
� jednoducha na implementaci, rychla, odolna vuci zacyklenı – nicmene casto
uvızne v lokalnım optimu !!!
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 8: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/8.jpg)
pPrıklady hodnotıcı funkce
hillclimbing – kde ∀m, n : f (m, n) = c(n)
� jednoducha na implementaci, rychla, odolna vuci zacyklenı – nicmene casto
uvızne v lokalnım optimu !!!
breadth-first-search – ∀m, n : c(m, n) = 1 existuje-li hrana z m do n. Ze platı f (m,n) =
g(n) + 1
� minimalizuje pocet kroku (hloubku) resenı
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 9: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/9.jpg)
pPrıklady hodnotıcı funkce
hillclimbing – kde ∀m, n : f (m, n) = c(n)
� jednoducha na implementaci, rychla, odolna vuci zacyklenı – nicmene casto
uvızne v lokalnım optimu !!!
breadth-first-search – ∀m, n : c(m, n) = 1 existuje-li hrana z m do n. Ze platı f (m,n) =
g(n) + 1
� minimalizuje pocet kroku (hloubku) resenı
greedy algorithm – ∀m, n : f (m,n) = h(n) existuje-li hrana z m do n. Zde h(n) je heuristicky
odhad vzdalenosti z uzlu n do cıle
� neoptimalnı, neuplny
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 10: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/10.jpg)
pPrıklady hodnotıcı funkce
hillclimbing – kde ∀m, n : f (m, n) = c(n)
� jednoducha na implementaci, rychla, odolna vuci zacyklenı – nicmene casto
uvızne v lokalnım optimu !!!
breadth-first-search – ∀m, n : c(m, n) = 1 existuje-li hrana z m do n. Ze platı f (m,n) =
g(n) + 1
� minimalizuje pocet kroku (hloubku) resenı
greedy algorithm – ∀m, n : f (m,n) = h(n) existuje-li hrana z m do n. Zde h(n) je heuristicky
odhad vzdalenosti z uzlu n do cıle
� neoptimalnı, neuplny
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 11: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/11.jpg)
pPrıklady hodnotıcı funkce
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 12: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/12.jpg)
pPrıklady hodnotıcı funkce
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 13: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/13.jpg)
pPrıklady hodnotıcı funkce
hillclimbing – kde ∀m, n : f (m, n) = c(n)
� jednoducha na implementaci, rychla, odolna vuci zacyklenı – nicmene casto
uvızne v lokalnım optimu !!!
breadth-first-search – ∀m, n : c(m, n) = 1 existuje-li hrana z m do n. Ze platı f (m,n) =
g(n) + 1
� minimalizuje pocet kroku (hloubku) resenı
greedy algorithm – ∀m, n : f (m,n) = h(n) existuje-li hrana z m do n. Zde h(n) je heuristicky
odhad vzdalenosti z uzlu n do cıle
� neoptimalnı, neuplny
A∗ Algoritmus f (n,m) = c(m, n) + g(m) + h(n) = g(n) + h(n)
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 14: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/14.jpg)
pAlgoritmus A∗
� Nastavenı hodnotıcı funkce f ve forme f (n) = g(n) + h(n) je netrivialnı problem protoze
hodnotu h(n) ktera nenı a priori znama je ji treba odhadnout.
� Vzhledem k tomu, ze optimalizujeme chovanı algoritmu, chceme aby byl odhad co nejpresnejsı
– aby hodnota h(n) byla co nejblıze hodnote h∗(n). Funkci h(n) nazyvame heuristickafunkce.
� Hodnotıcı funkce f (n) je odhadem presnych hodnot, ktere vratı funkce f ∗(n) = g∗(n)+h∗(n)
kde g(n) = g∗(n)
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 15: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/15.jpg)
pPrıpustnost Algoritmu A∗
Jake vlastnosti musı myt heuristicka funkce h(n)? Co se stane kdyz bude h(n) > h∗(n)?
A co kdyz h(n) < h∗(n)?
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 16: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/16.jpg)
pPrıpustnost Algoritmu A∗
Jake vlastnosti musı myt heuristicka funkce h(n)? Co se stane kdyz bude h(n) > h∗(n)?
A co kdyz h(n) < h∗(n)?
Aby se algoritmus choval rozumne, tudız aby nasel vzdy jen to optimalnı resenı, musı platit:
∀n : h(n) ≤ h∗(n)
Je-li to pravda, rıkame, ze heuristcka funkce je prıpustna. A∗ algoritmus ma vzdy heuristickou
funkci prıpustnou. A∗ algoritmus vzdy najde optimalnı resenı.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 17: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/17.jpg)
pPrıpustnost Algoritmu A∗
Jake vlastnosti musı myt heuristicka funkce h(n)? Co se stane kdyz bude h(n) > h∗(n)?
A co kdyz h(n) < h∗(n)?
Aby se algoritmus choval rozumne, tudız aby nasel vzdy jen to optimalnı resenı, musı platit:
∀n : h(n) ≤ h∗(n)
Je-li to pravda, rıkame, ze heuristcka funkce je prıpustna. A∗ algoritmus ma vzdy heuristickou
funkci prıpustnou. A∗ algoritmus vzdy najde optimalnı resenı.
je BFS optimalnı?
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 18: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/18.jpg)
pPrıpustnost Algoritmu A∗
Jake vlastnosti musı myt heuristicka funkce h(n)? Co se stane kdyz bude h(n) > h∗(n)?
A co kdyz h(n) < h∗(n)?
Aby se algoritmus choval rozumne, tudız aby nasel vzdy jen to optimalnı resenı, musı platit:
∀n : h(n) ≤ h∗(n)
Je-li to pravda, rıkame, ze heuristcka funkce je prıpustna. A∗ algoritmus ma vzdy heuristickou
funkci prıpustnou. A∗ algoritmus vzdy najde optimalnı resenı.
je BFS optimalnı?
ano, protoze u BFS f (n) = g(n) + h(n) = g(n). Tudız 0 = h(n) < h∗(n) a platı, ze
heuristika je prıpustna.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 19: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/19.jpg)
pPrıklad heuristic pro hledanı cesty
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 20: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/20.jpg)
pPrıklad heuristic pro hledanı cesty
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 21: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/21.jpg)
pMonotonnost
heuristicka funkce je monotonnı (lokalne prıpustna) platı-li
i.∀n1, n2, kde n1 expanduje do n2: h(n1)− h(n2) ≤ cost(n1, n2),
kde cost(n1, n2) opravdova cena z n1 do n2
ii. h(goal) = 0.
kazda monotonnı heuristicka funkce je prıpustna.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 22: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/22.jpg)
pMonotonnost
heuristicka funkce je monotonnı (lokalne prıpustna) platı-li
i.∀n1, n2, kde n1 expanduje do n2: h(n1)− h(n2) ≤ cost(n1, n2),
kde cost(n1, n2) opravdova cena z n1 do n2
ii. h(goal) = 0.
kazda monotonnı heuristicka funkce je prıpustna.
Dukaz:
for n0 → n1 . . . h(n0)− h(n1) ≤ cost(n0, n1) by monotonicity
for n1 → n2 . . . h(n1)− h(n2) ≤ cost(n1, n2) by monotonicity
. . .
for nk−1 → goal . . . h(nk−1)− h(goal) ≤ cost(nk−1, goal)
je-li h(goal) = 0 pak po sectenı vsech radku platı h(n0) ≤ cost(n0, goal)
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 23: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/23.jpg)
pDominance (Informovanost) Heuristiky
Mame-li dve prıpustne heuristiky h1 a h2 tak, ze ∀n : h1(n) ≤ h2(n), pak rıkame, ze
heuristika h2 dominuje (je vıce informovana) nez h1.
� Obe heuristiky naleznou optimalnı resenı, ale h2 potrebuje expandovat mensı prostor nez h1.
Je treba dat pozor na to aby vypocet nebo pouzitı hodne informovane heuristiky nezabral vıce
casu nez prohledanı vetsı casti stavoveho prostoru.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 24: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/24.jpg)
pHeuristiky pro 8-puzzle
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 25: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/25.jpg)
pPorovnanı Heuristik
Effective Branching Factor: metrika popisujıcı stavovy prostor b∗ je-li pro hloubku d a
celkovy pocet expandovanych uzlu N pak musı platit N = 1 + b∗ + (b∗)2 + · · · + (b∗)d
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 26: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/26.jpg)
pOptimalnı efektivita A∗
� O A∗ rıkame, ze je optimalne efektivnı. To znamena, ze pro libovolnou heuristikou funkci
neexistuje jiny optimalnı algoritmus, ktery by expandoval mene uzlu nez A∗.
� O A∗ vıme, ze je optimalnı, uplny a optimalne efektivnı. Nicmene to neznamena, ze by
byl vhodny na vsechny problemy prohledavanı. Bohuzel pametova narocnost zustava nadale
exponencialne rostoucı (bylo dokazano, ze v prıpade, ze |h(n)− h∗(n)| > O(log h∗(n))).
� Casova vypocetnı narocnost nenı hlavnım problemem A∗. Vzhledem k tom, ze A∗ musı
udrzovat vsechny otevrene uzly v pameti, stava se, ze casto dojde na pretecenı pameti drıv
nez vyprsı cas.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 27: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/27.jpg)
pZlepsenı pametove narocnosti u A∗
:: IDA∗ – iterative deepening A∗ algoritmus. Pracuje stejne jako IDDFS algoritmus. Mısto
omezenı hloubky prohledavanı algoritmus omezuje prohledavane vetve odhadem minimalnı
hodnoty ohodnocovacı funkce f .
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 28: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/28.jpg)
pZlepsenı pametove narocnosti u A∗
:: IDA∗ – iterative deepening A∗ algoritmus. Pracuje stejne jako IDDFS algoritmus. Mısto
omezenı hloubky prohledavanı algoritmus omezuje prohledavane vetve odhadem minimalnı
hodnoty ohodnocovacı funkce f .
� algoritmus zacına s omezenım prohledavanı na l = h(n0)
� pri kazdem kroku je omezenı l funkcı nejen g ale i h
� omezenı l lze pri kazde iteraci zvysit o vıce nez o 1
1. f limit=f(n 0)
2. do A* with nodes of which f <= f limit
3. if solution found then return(solution)
else f limit = min f(f(OpenList)) and go to the step 2.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 29: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/29.jpg)
pZlepsenı pametove narocnosti u A∗
:: IDA∗ – iterative deepening A∗ algoritmus. Pracuje stejne jako IDDFS algoritmus. Mısto
omezenı hloubky prohledavanı algoritmus omezuje prohledavane vetve odhadem minimalnı
hodnoty ohodnocovacı funkce f .
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 30: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/30.jpg)
pZlepsenı pametove narocnosti u A∗
:: IDA∗ – iterative deepening A∗ algoritmus. Pracuje stejne jako IDDFS algoritmus. Mısto
omezenı hloubky prohledavanı algoritmus omezuje prohledavane vetve odhadem minimalnı
hodnoty ohodnocovacı funkce f .
:: RBFS – Recursive best first search, rekurzivnı heuristicky algoritmus je klasicky heuri-
sticky algoritmus operujıcı ale v linearnım pametovem prostoru. Omezuje hodnotu f druhou
nejlepsı hodnotou v dane urovni.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 31: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/31.jpg)
Zerind
Arad
Sibiu
Arad
Timisoara
Fagaras Oradea
Craiova Pitesti Sibiu
Bucharest Craiova Rimnicu Vilcea
Zerind
Arad
Sibiu
Arad
Timisoara
Sibiu Bucharest
Rimnicu VilceaOradea
Zerind
Arad
Sibiu
Arad
Timisoara
Fagaras Oradea Rimnicu Vilcea
Craiova Pitesti Sibiu
646 415 526
526 417 553
646 526
450591
646 526
526 553
418 615 607
447 449
447
447 449
449
366
393
366
393
413
413 417415
366
393
415 450417
417
Rimnicu Vilcea
Fagaras
447
415
447
447
417
(a) After expanding Arad, Sibiu, Rimnicu Vilcea
(c) After switching back to Rimnicu Vilcea and expanding Pitesti
(b) After unwinding back to Sibiu and expanding Fagaras
447
447
![Page 32: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/32.jpg)
Zerind
Arad
Sibiu
Arad
Timisoara
Fagaras Oradea
Craiova Pitesti Sibiu
Bucharest Craiova Rimnicu Vilcea
Zerind
Arad
Sibiu
Arad
Timisoara
Sibiu Bucharest
Rimnicu VilceaOradea
Zerind
Arad
Sibiu
Arad
Timisoara
Fagaras Oradea Rimnicu Vilcea
Craiova Pitesti Sibiu
646 415 526
526 417 553
646 526
450591
646 526
526 553
418 615 607
447 449
447
447 449
449
366
393
366
393
413
413 417415
366
393
415 450417
417
Rimnicu Vilcea
Fagaras
447
415
447
447
417
(a) After expanding Arad, Sibiu, Rimnicu Vilcea
(c) After switching back to Rimnicu Vilcea and expanding Pitesti
(b) After unwinding back to Sibiu and expanding Fagaras
447
447
![Page 33: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/33.jpg)
Zerind
Arad
Sibiu
Arad
Timisoara
Fagaras Oradea
Craiova Pitesti Sibiu
Bucharest Craiova Rimnicu Vilcea
Zerind
Arad
Sibiu
Arad
Timisoara
Sibiu Bucharest
Rimnicu VilceaOradea
Zerind
Arad
Sibiu
Arad
Timisoara
Fagaras Oradea Rimnicu Vilcea
Craiova Pitesti Sibiu
646 415 526
526 417 553
646 526
450591
646 526
526 553
418 615 607
447 449
447
447 449
449
366
393
366
393
413
413 417415
366
393
415 450417
417
Rimnicu Vilcea
Fagaras
447
415
447
447
417
(a) After expanding Arad, Sibiu, Rimnicu Vilcea
(c) After switching back to Rimnicu Vilcea and expanding Pitesti
(b) After unwinding back to Sibiu and expanding Fagaras
447
447
![Page 34: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/34.jpg)
pZlepsenı pametove narocnosti u A∗
:: IDA∗ – iterative deepening A∗ algoritmus. Pracuje stejne jako IDDFS algoritmus. Mısto
omezenı hloubky prohledavanı algoritmus omezuje prohledavane vetve odhadem minimalnı hod-
noty ohodnocovacı funkce f .
:: RBFS – Recursive best first search, rekurzivnı heuristicky algoritmus je klasicky heuristicky
algoritmus operujıcı ale v linearnım pametovem prostoru. Omezuje hodnotu f druhou nejlepsı
hodnotou v dane urovni.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 35: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/35.jpg)
pZlepsenı pametove narocnosti u A∗
:: IDA∗ – iterative deepening A∗ algoritmus. Pracuje stejne jako IDDFS algoritmus. Mısto
omezenı hloubky prohledavanı algoritmus omezuje prohledavane vetve odhadem minimalnı hod-
noty ohodnocovacı funkce f .
:: RBFS – Recursive best first search, rekurzivnı heuristicky algoritmus je klasicky heuristicky
algoritmus operujıcı ale v linearnım pametovem prostoru. Omezuje hodnotu f druhou nejlepsı
hodnotou v dane urovni.
Zatımco IDA* ma mensı pametove naroky, RFBS najde resenı rychleji, protoze si udrzuje
vetsı OpenList.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 36: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/36.jpg)
pZlepsenı pametove narocnosti u A∗
:: IDA∗ – iterative deepening A∗ algoritmus. Pracuje stejne jako IDDFS algoritmus. Mısto
omezenı hloubky prohledavanı algoritmus omezuje prohledavane vetve odhadem minimalnı hod-
noty ohodnocovacı funkce f .
:: RBFS – Recursive best first search, rekurzivnı heuristicky algoritmus je klasicky heuristicky
algoritmus operujıcı ale v linearnım pametovem prostoru. Omezuje hodnotu f druhou nejlepsı
hodnotou v dane urovni.
Zatımco IDA* ma mensı pametove naroky, RFBS najde resenı rychleji, protoze si udrzuje
vetsı OpenList.
:: MA∗ – memory bounded A∗ – vyuzıva veskerou dostupnou pamet. Zjednoduseny algorithms
SMA∗ (simplified MA∗) udrzuje pouze urcity pocet uzlu na open-seznamu. je-li plno vyhodı ten
nejhorsı uzel.
� � � � � � � � � � � � � � � � � � � � � /Uvod
![Page 37: Informovan´e metody prohled´av´an´ı stavov´eho prostoru ...labe.felk.cvut.cz/~tkrajnik/kui2/data/K333/2.pdf · Informovan´e metody prohled´av´an´ı stavov´eho prostoru](https://reader033.vdocuments.net/reader033/viewer/2022051914/6005d2c670aee718842ff68b/html5/thumbnails/37.jpg)
pZlepsenı pametove narocnosti u A∗
:: IDA∗ – iterative deepening A∗ algoritmus. Pracuje stejne jako IDDFS algoritmus. Mısto
omezenı hloubky prohledavanı algoritmus omezuje prohledavane vetve odhadem minimalnı hod-
noty ohodnocovacı funkce f .
:: RBFS – Recursive best first search, rekurzivnı heuristicky algoritmus je klasicky heuristicky
algoritmus operujıcı ale v linearnım pametovem prostoru. Omezuje hodnotu f druhou nejlepsı
hodnotou v dane urovni.
Zatımco IDA* ma mensı pametove naroky, RFBS najde resenı rychleji, protoze si udrzuje
vetsı OpenList.
:: MA∗ – memory bounded A∗ – vyuzıva veskerou dostupnou pamet. Zjednoduseny algorithms
SMA∗ (simplified MA∗) udrzuje pouze urcity pocet uzlu na open-seznamu. je-li plno vyhodı ten
nejhorsı uzel.
IDA∗ a RFBS jsou optimalnı (tzn., nemohou minout nejlepsı resenı), MA∗ a SMA∗ mohou
minout optimum a uvıznout v lokalnım extremu (je-li mez velikosti seznamu OpenList
mala).
� � � � � � � � � � � � � � � � � � � � � /Uvod