Documente Academic
Documente Profesional
Documente Cultură
• Probleme de cautare:
urmarire obiectiv
Formalizarea matematica a cautarii
“E”, 1.0
– O stare start si un test de atingere obiectiv (uneori mai mult de o singura stare
satisface atingerea obiectivului)
• Solutia?
Ce contine Spatiul Starilor unei probleme?
Spatiul starilor include toate detaliile mediului
O stare de cautare pastreaza numai detaliile necesare pentru planificare ( in urma abstractizarii)
• Problema: Gasire traseu • Problema: Include-toate
– Starile: localizarea (x,y) punctele
– Actiuni posibile: deplasare NSEV – Starile: {(x,y), punctele mari de
– Succesori: localizarea actualizata inclus }
– Test de atingere obiectiv: – Actiuni posibile: deplasare NSEV
daca (x,y)=END – Succesori: localizarea actualizata
si posibil a un nou punct boolean
– Test de atingere obiectiv : toate
punctele vizibile incuse
Dimensiunea Spatiului Starilor posibile
• Stari componente:
– Pozitii Agent : 120
– Nr locatii de bile: 30
– Pozitii fantome: 12
– Orientare Agent: NSEV
• Care este
– Dimensiunea spatiului tuturor Starilor
120x(230)x(122)x4
– Starile posibile pentru traseu:
120
– Starile pentru capturare toate bilele
120x(230)
Problema: Trecere in Siguranta
a G
b c
e
d f
S h
p r
q
• Un arbore de cautare:
– Un arbore de tip “what if” de planuri si consecintele lor
– Starea de Start este Nodul Radacina
– Copii corespund succesorilor
– Nodurile arata starile, dar corespund PLANurilor pe care le obtin aceste stari
– Pentru majoritatea problemelor, nu se poate construi intregul arbore
Grafuri ale Spatiului Starilor vs. Arbori de cautare
Fiecare NOD in
Graful Spatiilor arborele de Arbore de cautare
Starilor cautare este o
S
intreaga CALE in
G graful Spatiului e p
a d
c Starilor
b
b c e h r q
e
d f a a h r p q f
S h Construirea
acestora se va face p q f q c G
p q r
numai la cerere si q c a
G
cat mai putin.
a
Grafuri ale Spatiului Starilor vs. Arbori de cautare
Considerand acest graf cu 4 stari : Cat de mare este arborele de cautare
(incepand din S)?
S G
• Cautarea:
– Expandarea planurilor potentiale (trei noduri)
– Mentine o parte a planurilor partiale luate in considerare
– Incearca sa extinda cat mai putine noduri ale arborelui
posibil
Cautarea Generala in Arbori
Functie Cautare – in Arbori (problema , strategia) returneaza o solutie, sau nu
initializeaza arborele de cautare folosind starea initiala a problemei
bucleaza
daca nu exista candidati pentru expansiune atunci returneaza nu
alege un nod frunza pentru expansiune conform strategiei
daca nodul contine o stare obiectiv atunci returneaza solutia corespunzatoare
altfel expandeaza nodul si adauga nodul rezultat la arborele de cautare
sfarsit bucla
• Idei importante :
– Franjurarea
– Expansiunea
– Strategia de Explorare
• Intrebarea de baza: Ce noduri sa se exploreze?
Exemplu: Cautarea in Arbori
a G
b c
e
d f
S h
p q r
Cautarea in Adancime (Depth-First Search =DFS)
Cautarea in Adancime ( Depth-First Search)
Strategia: expandare cel mai adanc nod a G
primul b c
e
Implementare: Parcurgerea este o stiva d f
LIFO S h
p q r
d e p
b c e h r q
a a h r p q f
p q f q c G
q c G a
a
Proprietati ale Algoritmului de Cautare DFS
Proprietati ale Algoritmului de Cautare DFS
• Completitudine: Garantarea gasirii unei solutii daca aceasta exista
• Optimal: Garantat sa gaseasca cea mai ieftina cale
• Complexitatea in Timp?
• Complexitatea in Spatiu? 1 nod
b
… b noduri
• Diagrama arborelui de cautare: b2 noduri
– b este factorul de ramificare m niveluri
– m este adancimea maxima
– Solutii pentru diverse adancimi
• Este complet?
– m poate fi infinit deci doar daca prevenim bm noduri
ciclurile
• Este optimal?
– Nu, gaseste solutia “leftmost” – cea mai din
stanga, indiferent de adancime sau cost
Cautarea in Largime (Breadth-First Search)
Cautarea in Largime (Breadth-First Search)
Strategie: expaneaza a G
un nod apropiat mai b c
intai e
d f
Implementare: S h
Parcurgerea este o p r
coada FIFO q
d e p
Niveluri
b c e h r q
de
Cautare a a h r p q f
p q f q c G
q c G a
a
Proprietati ale Algoritmului Breadth-First Search
• Ce noduri expandeaza BFS ?
– Procesează toate nodurile de deasupra 1 nod
soluției cea mai putin adanca b
– Daca adancimea soluției cea mai putin … b noduri
s niveluri
adanca este s b2 noduri
– Cautarea dureaza O(bs)
bs noduri
• Cat spatiu ocupa cautarea?
– O(bs)
p 4 r
15
q
S 0
d 3 e 9 p 1
b 4 c e 5 h 17 r 11 q 16
11
Contururile a 6 a h 13 r 7 p q f
Costului
p q f 8 q c G
q 11 c G 10 a
a
Proprietati ale Cautarii de Cost Uniform-
Uniform Cost Search (UCS)
• Ce noduri expandeaza UCS ?
– Proceseaza fiecare nod avand costul cel mai mic de acces in
momentul respective dintre cele la care s-a ajuns! b c1
– Daca Solutia respective costa C* si arcele costa cel putin , …
atunci adancimea efectiva este aproximativ C*/ c2
C*/
– Dureaza de ordinul O(bC*/) (exponentiala in adancimea efectiva) “straturi” c3
• Este complet?
– Da presupunand ca cea mai buna solutie are un cost finit si
minimul costului de arc este pozitiv.
• Este optimal?
– Da!
Cautarea de Cost Uniform avantaje si dezavantaje
• Cautarea UCS exploreaza contururi avand
cost crescut … c1
c2
c3
• Cautarea UCS este completa si optimala!
• Dezavantaje:
– Exploreaza optiuni in orice “directie”
– Fiind o cautare din categoria Neinformata Nu
exista informatii despre localizarea obiectivului