Documente Academic
Documente Profesional
Documente Cultură
2.1automate Finite
2.1automate Finite
1 Automate finite
Din punct de vedere istoric, automatele finit au fost introduse pentru a modela
reelele neuronale dar au o mulime de aplicaii i n alte domenii cum ar fi: analiza
lexicala (faza iniial a unui compilator), descrierea editoarelor de texte i a altor
programe de procesare a textelor, modelarea circuitelor logice i altele.
Automatul finit este un bun model pentru un calculator cu o cantitate extreme de
limitat de memorie. Vom vede c, dei are o memorie foarte mic, un astfel de calculator
poate sa fac o serie de lucruri utile cum ar fi cele enumerate mai sus.
Definiia 2.1.1 Un automat finit determinist, notat M=(Q, , , q0, F), este format din:
Q - o mulime finit nevid (mulimea strilor);
- un alfabet finit de intrare;
- o aplicaie numit funcie de tranziie, care ataeaz fiecrei combinaii <stare,
simbol de intrare> o nou stare : Q Q ;
q 0 Q starea iniial;
F Q mulimea strilor finale.
Din punct de vedere practic un automat finit este format dintr-un control finit, care se
poate afla ntr-una din strile mulimii Q, dintr-o band de intrare mprit n celule n
care sunt scrise un numr finit de simboluri din , i un cap de citire care se mic pe
banda de intrare secvenial de la stnga la dreapta (de fapt banda de intrare se mic n
dreptul capului de citire de la dreapta la stnga ).
a0
a1
ai
an
CONTROL FINIT
Figura 2.1.1
Iniial controlul finit se afl n starea q 0 iar capul de citire analizeaz cel mai din stnga
simbol scris pe banda de intrare. Interpretarea lui (q, a) p pentru q,pQ i a, este
aceea c automatul M, aflat n starea q i analiznd simbolul a pe banda de intrare, i
schimb starea n p i i mut capul de citire cu o celul la dreapta.
S-ar putea ca funcia de tranziie s nu fie peste tot definit, adic s existe p P i a
astfel nct (p,a)=. n cazul n care automatul se afl n aceast stare p i capul de citire
vizeaz simbolul a pe banda de intrare se spune c automatul se blocheaz fiindca nu este
definit micarea urmtoare.
:
Aplicaia se poate extinde la Q * , prin
(q, ) q
semnificaia lui (q, x) p fiind aceea c M, pornind s analizeze secvena x din starea
q, ajunge n starea p n momentul n care capul de citire depete secvena x.
Observaia 2.1.1 n continuare vom folosi notaia i pentru .
Definiia 2.1.2 Un cuvnt x este acceptat sau recunoscut de un automat finit M, dac,
(q 0 , x) p pentru p F .
Limbajul acceptat de automatul M se noteaz T(M) x (q 0 , x) F .
Definiia 2.1.3
Numim configuraie instantanee perechea (q,x), format din starea
q Q n care se afl automatul finit i irul de caractere x * rmas necitit pe banda de
intrare, unde capul de citire vizeaz cel mai din stnga simbol al lui x.
Dac automatul finit folosete tranziia (q, a) p , atunci vom nota modificarea
configuraiei astfel: (q, a ) ( p, ) .
Exemplul 2.1.1 Specificarea unui automat finit M se poate face prin definirea funciei
(ntr-un tabel) sau printr-o diagram de stare sau de tranziie. Diagrama de tranziie este
un graf orientat n care nodurile sunt strile automatului iar arcele (q,p) sunt etichetate cu
a dac (q,a)=p este o tranziie din automatul M.
Fie, de exemplu, automatul finit
01Qq0q1q2q1q0q3q2q3q0q3q2q1
M (Q, , , q 0 , F)
{0,1} , Q {q 0 , q 1 , q 2 , q 3 } , F {q 0 }
sau:
0
Start
q0
1
q
0
1
q
2
0
0
q
3
Figura 2.1.2
Fie irul de intrare 10110010; atunci putem urmri execuia automatului astfel:
p'(q, x)
0,1
Start
q0
0,1
0
q4
1
q
1
1
0,1
q2
Figura 2.1.3
S urmrim funcionarea acestui automat pentru cteva situaii diferite:
a) Dac irul de intrare este 0101, automatul va face toate ncercrile de tranziii posibile,
nainte de a trage concluzia c acest cuvnt nu e recunoscut (nu duce automatul ntr-o
stare final):
(q0,0101) (q0,101) (q0,01) (q0,1) (q0,) , q 0 F
(q0,0101) (q0,101) (q0,01) (q0,1) (q1,) , q 1 F
(q0,0101) (q0,101) (q0,01) (q3,1) blocare ( (q 3 ,1) )
(q0,0101) (q0,101) (q1,01) blocare ( (q1 ,1) )
(q0,0101) (q3,101) blocare ( (q 3 ,1) )
b) Dac irul de intrare este 0110, automatul va accepta acest cuvnt n momentul
depistrii unui calcul de configuraii ce duce automatul ntr-o stare final (indiferent cte
ncercri nereuite face, automatul accept irul de intrare la nregistrarea unui succes):