Sunteți pe pagina 1din 11

Inteligen Artificial

Modulul 1.
STRATEGII DE CUTARE
n acest modul:
Strategia de cutare pe nivel
Aplicaia 1
Aplicaia 2
Strategia de cutare n adncime
Aplicaia 3
Alte strategii de cutare
Teme
Bibliograie
I.
A.
1
I.A. Modulul 1. Strategii de cutare
Strategia de cutare pe nivel n pa!iul trilor
Strategia de cutare pe nivel !n lime" breadth-first search# este o strategie de cutare
neinormat$
Strategia de cutare pe nivel ncepe e%pandarea cu nodul rdcin" apoi e%pandea& toate
nodurile generate de rdcin 'i continu similar e%pandarea cu toi succesorii acestora etc$
(mplementarea strategiei de cutare pe nivel se reali&ea& particulari&nd strategia general
de cutare prin implementarea listei )*+,T(-*A sub orm de coad$
Algorit"
1. iniializeaz listele FRONTIERA {S
i
} i TERITORIU {}
2. dac FRONTIERA={} atunci
ntoa!e INSU""ES #$n% e&ist sol%ie$#
'. eli(in )i(%l no* S *in FRONTIERA i inseeaz+l n TERITORIU
,. e&)an*eaz no*%l S
,.1. -eneeaz toi s%!!esoii *ie!i S
.
ai no*%l%i S
,.2. pentru /ie!ae s%!!eso S
.
011.1n2 al l%i S execut
,.2.1. sta3ilete le-t%a S
.
4 S
,.2.2. dac S
.
este stae /inal atunci
i. sol%ia este 0S
.
5 S5 ...5 S
i
2
ii. ntoa!e SU""ES #$ a /ost -sit sol%ia $#
,.2.'. dac S
.
6 toate stile anteio -eneate n
sol%ia )aial !%ent atunci
inseeaz S
.
n FRONTIERA5 la s/7it
8. repet *e la )as%l 2
sfrit
n ca&ul n care soluia e%ist" algoritmul ntoarce soluia cale de lungime minim$
Caracteritici
.utarea pe nivel este complet$
.utarea pe nivel este optimal$
.omple%itatea strategiei este e%ponenial$
2
I.A. Modulul 1. Strategii de cutare
Aplica!ia 1 # $R%&'EMA C%MIS()%IA*%RU'UI
Enun!
/n comis0voia1or trebuie s vi&ite&e n ora'e conectate" astel nct" plecnd din ora'ul i s
treac prin toate ora'ele o singur dat 'i s se ntoarc n ora'ul i$
Datele de intrare
n repre&int numrul de ora'e ce trebuie parcurse$
m repre&int numrul de drumuri !un drum une'te dou ora'e#$
An % n repre&int matricea drumurilor" unde

=
1 'i i ntre drum e%ist dac 1
1 'i i ntre drum e%ist nu dac 2
1# a!i"
$
si repre&int ora'ul de plecare$
Strile pro+le"ei
Starea ini!ial
si
Starea ,inal
drumul parcurs de comis0voia1or
%perator
Se olose'te un operator de adugare la coniguraia curent a unui ora' care nu a
ost de1a vi&itat 'i care este vecin cu ultimul ora' al coniguraiei curente$
Ar+orele de cutare
3entru 4arta ora'elor din igura 1$1 'i ora'ul de plecare 2" o parte a arborelui de cutare este
cel din igura 1$2$
)igura 1$1$ 56arta7 ora'elor
3
1
2
3
4 5
I.A. Modulul 1. Strategii de cutare
)igura 1$2$ Arborele de cutare
E-ecu!ia aplica!iei
1
Situa!ia n care algorit"ul ntoarce ucce
)igura 1$3$ /n set de date de intrare
)igura 1$8$ 9ate de ie'ire
1
.odul surs pre&entat a ost e%ecutat n Borland .:: or ;indo<s" =ersion 3$1
4
I.A. Modulul 1. Strategii de cutare
Situa!ia n care algorit"ul ntoarce inucce
)igura 1$>$ /n set de date de intrare
)igura 1$?$ 56arta7 ora'elor pentru datele de intrare din igura 1$>
)igura 1$@$ 9ate de ie'ire
5
1
2
3
4 5
I.A. Modulul 1. Strategii de cutare
Aplica!ia . # / pu00le 1"o0aicul de / nu"ere2
Enun!
3e o tabl 3%3 se al A plcue numerotate de la 1 la A 'i o locaie liber$ + plcu
adiacent spaiului liber poate aluneca n acel spaiu$ +biectivul este atingerea unei
coniguraii inale !date# a plcuelor$
Strile pro+le"ei
Starea ini!ial
si 0 repre&int coniguraia iniial a tableiB este o matrice de dimensiune 3%3 n care
sunt introduse valori de la 2 la A" unde 2 repre&int spaiul liber$
Starea ,inal
sf 0 repre&int coniguraia inal a tableiB este o matrice de dimensiune 3%3 n care
sunt introduse valori de la 2 la A" unde 2 repre&int spaiul liber$
%perator
Se olose'te un operator mut de tipul 5mut plcua n spaiul liber7 'i care are un
parametru ce repre&int direcia de mutare !10sus" 20stnga" 301os" 80dreapta#$
)igura 1$A$ Aplicarea operatorului
E-ecu!ia aplica!iei
.
Situa!ia n care algorit"ul ntoarce ucce
)igura 1$C$ Starea iniial
2
.odul surs pre&entat a ost e%ecutat n Borland .::" =ersion 3$1
6
1 2 3
8 > 2
@ A ?
1 2 3
8 2 >
@ A ?
1 2 3
8 > ?
@ A 2
1 2 3
8 2 >
@ A ?
I.A. Modulul 1. Strategii de cutare
)igura 1$12$ Starea inal
)igura 1$11$ Arborele de cutare
)igura 1$12$ 9ate de ie'ire
SU""ES9 Sol%tia este: stan-a5 s%s.
Situa!ia n care algorit"ul ntoarce inucce
)igura 1$13$ Starea iniial
7
1 2 3
8 > ?
@ A 2
1 2 3
8 > ?
A @ 2
I.A. Modulul 1. Strategii de cutare
)igura 1$18$ Starea inal
)igura 1$1>$ 9ate de ie'ire
INSU""ES9 N% a( a.%ns la staea /inala.
Strategia de cutare n ad3nci"e li"itat n pa!iul trilor
Strategia de cutare n adncime limitat !depth-first search# este o strategie de cutare
neinormat$
Strategia e%pandea& ntotdeauna ultimul nod adugat arborelui !alat pe nivelul cel mai
adnc#$ .utarea revine pe nivelele anterioare numai atunci cnd s0a blocat !a aprut un nod
care nu e nodul scop 'i care nu poate i e%pandat sau s0a a1uns la adncimea ma%im
impus#$
(mplementarea strategiei de cutare pe nivel se reali&ea& particulari&nd strategia general
de cutare prin implementarea listei )*+,T(-*A sub orm de stiv$
Algorit"
1. iniializeaz listele FRONTIERA {Si} i TERITORIU {}
2. dac FRONTIERA={} atunci
ntoa!e INSU""ES #$n% e&ist sol%ie$#
'. eli(in )i(%l no* S *in FRONTIERA i inseeaz+l n TERITORIU
,. *a!a a*an!i(e0S2 = ;(a& at%n!i e)eta *e la )as%l 2
,. e&)an*eaz no*%l S
,.1. -eneeaz toi s%!!esoii *ie!i S
.
ai no*%l%i S
,.2. pentru /ie!ae s%!!eso S
.
011.1n2 al l%i S execut
,.2.1. sta3ilete le-t%a S
.
4 S
,.2.2. dac S
.
este stae /inal atunci
i. sol%ia este 0S
.
5 S5 ...5 S
i
2
ii. ntoa!e SU""ES #$ a /ost -sit sol%ia $#
,.2.'. dac S
.
6 toate stile anteio -eneate n
sol%ia )aial !%ent atunci
inseeaz S
.
n FRONTIERA5 la in!e)%t
8. repet *e la )as%l 2
sfrit
8
1 2 3
8 > ?
@ A 2
I.A. Modulul 1. Strategii de cutare
9e&avanta1ul cutrii este posibilitatea blocrii ntr0o cale gre'it aleas$

Caracteritici
.utarea nu este complet$
.utarea nu este optimal$
.omple%itatea timp este e%ponenial" iar comple%itatea spaiu este polinomial$
Aplica!ia 4 # $R%&'EMA C%MIS()%IA*%RU'UI
Situa!ia n care algorit"ul ntoarce ucce
3entru 4arta ora'elor din igura 1$1?" ora'ul de plecare 2 'i adncimea limitat >" o parte a
arborelui de cutare este cel din igura 1$1@$
)igura 1$1?$ 56arta7 ora'elor
)igura 1$1@$ Arborele de cutare
)igura 1$1A$ 9ate de ie'ire
9
1
2
3
4 5
I.A. Modulul 1. Strategii de cutare
SU""ES9 Sol%tia este: 2 8 , ' 1 2.
Situa!ia n care algorit"ul ntoarce inucce
3entru 4arta ora'elor din igura 1$1?" ora'ul de plecare 2 'i adncimea limitat 3 sau pentru
4arta ora'elor din igura 1$1C" ora'ul de plecare 2 'i adncimea limitat @$
)igura 1$1C$ 56arta7 ora'elor
)igura 1$22$ 9ate de ie'ire
INSU""ES9 N% s+a -asit %n *%(.
Alte trategii de cutare
strategia de cutare cu nivel iterativB
strategia de cutare de cost uniormB
strategia de cutare bidirecionalB
strategia de cutare best-firstB
algoritmul ADB
algoritmul A+D$
Te"e
10
1
2
3
4 5
I.A. Modulul 1. Strategii de cutare
1$ S se re&olve problema A0pu&&le olosind strategia de cutare n adncime$
2$ 3roblema celor A regine$ S se plase&e A regine pe o tabl de 'a4 a$$ acestea s nu se
atace reciproc$ + regin atac orice po&iie alat pe acela'i rnd" coloan sau
diagonal$ Starea iniial prespune c nici o regin nu este plasat pe tabl$ 3roblema se
va re&olva olosind strategia de cutare n adncime$
3$ S se re&olve problema celor A regine olosind strategia de cutare pe nivel$
8$ 3roblema misionarilor 'i canibalilor$ 3 misionari 'i 3 canibali se al pe unul dintre
malurile unui ru" mpreun cu o barc ce poate trasporta la un moment dat unul sau doi
oameni$ Se cere s se gseasc o modalitate de a0i transporta pe toi pe cellalt mal"
r a permite la vreun transport ca numrul de canibali dintr0un loc s dep'easc
numrul de misionari$ .oniguraia se d prin numrul de misionari 'i de canibali de pe
primul mal 'i de pe al doilea mal E cea iniial este !3"3"2"2#" iar cea inal !2"2"3"3#$
3roblema se va re&olva olosind strategia de cutare pe nivel$
>$ S se re&olve problema misionarilor 'i canibalilor olosind strategia de cutare n
adncime$
?$ 3roblema colorrii 4rilor$ )iind dat o 4art cu n ri" se cere o posibilitate de colorare a
4rii utili&nd cel mult 8 culori" a$$ dou ri cu rontier comun s ie colorate dierit$
.oniguraia iniial este ormat din valoarea 1" ceea ce nseamn c ara 1 va i
colorat cu culoarea 1$ .oniguraia inal va i un 'ir de n numere repre&entnd culorile
olosite pentru cele n ri$ 3roblema se va re&olva olosind strategia de cutare pe nivel$
@$ S se re&olve problema colorrii 4rilor olosind strategia de cutare n adncime$
A$ 3roblema labirintului$ Se d un labirint de dimensiuni m % n$ )iecare element al matricii
labirintului repre&int o camer a acestuia !camerele alate pe margine au sau nu ie'ire
din labirint#$ ntr0una din camere" avnd coordonatele !x"y#" cunoscute" se gse'te un om$
S se oloseasc startegia de cutare pe nivel pentru a gsi cel puin o ie'ire din labirint$
C$ S se re&olve problema labirintului olosind strategia de cutare n adncime$
12$ 3roblema navigrii unui robot pentru livrarea po'tei$ Se d un careu A % A repre&entnd
un palier al unei instituii" n care un robot alat la o po&iie iniial dat va naviga pentru a
livra po'ta la cteva locaii" de asemenea cunoscute$ Fi'crile sale se eectuea& la
stnga" dreapta" sus 'i 1os$ S se gseasc o rut prin care robotul livrea& po'ta la
toate locaiile preci&ate 'i se ntoarce la po&iia iniial$ Se va olosi strategia de cutare
pe nivel$
11$ S se re&olve problema navigrii robotului olosind strategia de cutare n adncime$
&i+liogra,ie
9umitrescu" 9$" Inteligen artificial" Gito$ /niv$ HBabe'0BolIaiH" 1CC>B
Jeorgescu" ($" Inteligen artificial" -d$ Academiei" 1CA@B
Falita" F$" Bazele matematice ale Inteligenei Artificiale" -d$Te4nic" 1CAAB
+prea" F$" ,icoar" -$S$" Inteligen artificial" -d$ /niversitii din 3loie'ti" 222>B
*ic4" -$" Artificial Intelligence" Fc$Jra< 6ill" 1CACB
;inston" 3$" Inteligen artificial" -d$Te4nic" 1CA2$
11

S-ar putea să vă placă și