Sunteți pe pagina 1din 8

Elemente de teoria automatelor finite 69

Elemente de teoria automatelor finite


6.1 Definirea noiunii de automat finit
Elementele principale de prelucrare logic din sistemele numerice sunt constituite din sisteme
secveniale. Prin conectarea unor traductoare externe se obin sistemele numerice.
Din punct de vedere abstract, aceste sisteme se ncadreaz n categoria sistemelor dinamice; din
punct de vedere particular, aceste sisteme sunt descrise de teoria automatelor finite.
Prin definiie, un automat este un cinci-uplu
! " #$,%,&,f,g'
unde $, %, & sunt mulimi nevide cu semnificaia
$ - mulimea intrrilor #alfabet de intrare'
% - mulimea strilor #alfabet de stare'
& - mulimea ie(irilor #alfabet de ie(ire'
iar f (i g sunt dou funcii care caracterizeaz automatul, definite ca aplicaii de tipul
f % $ P
)
#%' - funcia de tranziie #de trecere'
g % $ P
)
#&' - funcia de ie(ire #de rspuns'
unde P
)
este mulimea prilor nrvide ale lui %, respectiv &. %e constat c un automat este de fapt o
structur algebric #deci, funciile f (i g sunt aplicaii ale produsului cartezian a mulimilor % (i $
pe mulimea prilor nevide ale lui %, respectiv &. !v*nd n vedere definiia produsului cartezian a
dou mulimi, rezult c aceste funcii sunt mulimi de perec+i ordonate #s,x', s %, x $.
Dac, s%, x$, |f#s,x'| " , (i |g#s,x'| " ,, automatul ! se nume(te determinist. -n caz contrar, !
se nume(te automat nedeterminist.
Dac, s%, x$, |f#s,x'| " ,, automatul ! se nume(te %-determinist, iar dac |g#s,x'| " ,,
automatul ! se nume(te &-determinist. .n automat determinist este % (i & determinist.
.n automat ! este finit dac mulimile $, %, & aparin*nd automatului sunt finite. Deci, un automat
finit are un alfabet de intrare, un alfabet de ie(ire (i o mulime de stri finite.
.n automat finit se poate imagina ca o cutie neagr #blac/ box' prevzut cu un numr finit de
borne exterioare accesibile (i capabil s posede un numr finit de stri interne #elementele mulimii
%'.
0ig.1., %c+ema bloc general a unui automat finit
s%
.
.
.
.
.
.
2lac/
2ox
z
3
& x
i
$
70 Elemente de teoria automatelor finite
!plic*nd un semnal de intrare #din alfabetul $', la bornele de intrare, sistemul respectiv elaboreaz
un rspuns #element din alfabetul &' (i trece ntr-o nou stare intern. 4spunsul, precum (i starea n
care trece automatul aparin mulimilor f#s,x' (i g#s,x', s fiind starea prezent.
Din cele spuse mai nainte rezult c evoluia n timp a unui automat finit este caracterizat de
mulimea strilor interne #%' (i funciile de tranziie (i de ie(ire. !ceste funcii sunt denumite (i
funcii caracteristice ale automatului.
6.2 Modele de automate finite
Din necesitatea de a evidenia evoluia n timp a automatelor finite s-a pus problema explicitrii
funciilor caracteristice ale acestora. ! rezultat astfel noiunea de model de automat.
Primul model a fost elaborat de 5eal6 n ,788. -n ,781, 5oore a elaborat un alt model destul de
apropiat de primul, put*ndu-se considera ca fiind un caz particular al acestuia (i care are numeroase
aplicaii n te+nic. !ceste modele matematice au primit denumirile de model 5eal6 (i respectiv
model 5oore, fiind n prezent cele mai frecvent utilizate.
Un automat finit Moore este un 9uintuplu ! " #$, %, &, f, g', unde $, %, & reprezint alfabetul de
intrare, mulimea strilor (i respectiv alfabetul de ie(ire, iar f (i g marc+ez funcia de tranziie (i
respectiv de ie(ire, exist*nd urmtoarele expresii explicite pentru funciile caracteristice
s#:,' " f#x#',s#''
z #' " g #s#''
unde x#', s#', z#' sunt simbolul de intrare, de stare (i respectiv simbolul de ie(ire la momentul
t

" ,,;,<,...
5ulimea de valori pe care le poate lua o variabil se nume(te alfabetul variabilei. 0iecare
element al alfabetului se nume(te simbol.
Deci, n cazul automatelor 5oore starea urmtoare este definit de variabila de intrare (i de starea
prezent, n timp ce ie(irea este determinat n prezent numai de starea prezent.
Un automat finit Mealy este un 9uintuplu ! " #$, %, &, f, g' cu funciile caracteristice de forma
s#:,' " f#x#',s#''
z #' " g #x #',s#''
=onform definiiei, n acest caz, ie(irea este determinat at*t de stare c*t (i de intrare, funcia de
tranziie fiind aceea(i ca la automatele 5oore. Deci, deosebirea const numai n caracterul ie(irii,
ie(irea obin*ndu-se la automatele 5eal6 numai n timpul tranziiei.
Din punct de vedere matematic putem lua g#s,x' " g
,
#s', s %, x $ (i rezult de aici c
automatul 5oore este un caz special de automat 5eal6.
De multe ori nu intereseaz ie(irea unui automat ci, n primul r*nd, evoluia intern cu tranziiile
ntre stri. -n acest caz se define(te automatul de stare prin noiunea de semiautomat.
Un semiautomat este un triplet %#!' " #$, %, f', n care $, %, f sunt respectiv alfabetul de intrare,
mulimea strilor (i funcia de tranziie,
f #$ %' P
)
#s'.
Evident, noiunea de semiautomat este mai larg, nglob*nd (i noiunea de automat. .nui automat !
i se poate ata(a un singur semiautomat %#!', dar unui semiautomat, prin adoptarea alfabetului & (i a
funciei g, i se pot ata(a mai multe automate. !stfel, pentru un semiautomat rm*ne esenial
funcionarea intern, automatele ata(ate nefiind unice.
Elemente de teoria automatelor finite 71
Dac se accept ca strile unui automat finit determinist sunt realizabile fizic printr-un bloc numit
memorie, atunci modelul unui automat poate fi reprezentat prin sc+ema bloc urmtoare
0ig.1.; %c+ema bloc a unui automat finit general
Prin 5 s-a simbolizat blocul memorie care determin strile interne ale automatului. De asemenea,
sunt prezentate blocurile care calculeaz funciile de tranziie (i de ie(ire.
%c+ema bloc din 0ig.1.; reprezint un automat 5eal6. Dac lipse(te conexiunea pentru semnalul de
intrare x, #marcat prin >' n blocul de calcul al funciei de ie(ire se obine un automat 5oore. -n
cazul n care lipse(te complet blocul care determin funcia g#s,x', #marcat prin >>', se obine
imaginea unui automat de stare.
=onsiderm situaia unui automat pentru care mulimea strilor este vid % . 4ezult c funcia
de tranziie, f $ P
)
#', nu are sens. 0uncia de rspuns #de ie(ire', g $ P
)
#z' se
reduce la g#s,x' " g#x'.
-n general, un automat pentru care funcia de ie(ire este de forma
g#s#', x#'' " g#x#''
se nume(te automat finit fr memorie sau trivial. -n acest caz funcia de tranziie (i variabilele
intermediare determinate de legtura invers #n sc+ema bloc' nu au nici o influen (i prin urmare
noiunea de stare nu are sens. Deoarece pentru automatele fr memorie ie(irea la un moment dat
este determinat numai de combinaia mrimilor aplicate la intrare n acel moment, astfel de
automate se mai numesc (i combinaionale. !ceste automate sunt realizate fizic prin circuite logice
combinaionale.
2locurile care elaboreaz funciile f#s,x' (i g#s,x' ntr-un automat netrivial #deci cu memorie' sunt
de tip combinaional. !utomatele finite cu memorie sunt realizate fizic prin circuite logice
secveniale care, conform sc+emei bloc prezentate, conin circuite combinaionale (i elemente de
memorie. ?nvers spus, circuitele secveniale de comand sunt descrise prin modelul matematic de
automat finit cu memorie, iar circuitele combinaionale prin modelul de automat finit fr memorie.
6.3 Metode de reprezentare a automatelor finite
=ele mai utilizate reprezentri ale automatelor finite sunt reprezentrile prin graf (i reprezentarea
tabelar. -n ultimul timp se folose(te n reprezentarea automatelor finite (i organigrama sau
diagrama de fluxuri.
Reprezentarea prin graf a automatelor finite
.nui automat finit i se poate ata(a un graf orientat (i marcat. !socierea grafului @ unui automat
finit se face n modul urmtor
a' 5ulimii strilor automatului ! " #$, %, &, f, g' i se ata(eaz mulimea nodurilor grafului;
z&
s $
s $
s $

g #s,x'
s $
f#s,x'
5
72 Elemente de teoria automatelor finite
b' Dac strile s
i
(i s
3
, unde s
i
, s
3
%, sunt legate prin relaia s
3
" f#s
i
,x
i
', x
i
$, atunci
nodul s
i
este legat de nodul s
3
printr-un arc orientat de la s
i
la s
3
. !rcul #s
i
,s
3
' astfel obinut va fi
marcat cu semnalul de intrare care a determinat tranziia ntre strile s
i
(i s
3
.
Pentru cele dou modele de automate, 5oore (i 5eal6, grafurile asociate difer dup modul cum
sunt definite semnalele de ie(ire n graf. !stfel, pentru automatele 5oore se va marca n graf ie(irea
pentru fiecare stare, iar pentru automatele 5eal6, dac z
i
" g #s
i
,x
i
' arcul #s
i
,s
3
' va fi marcat (i cu
ie(irea z
i
.
0ig.1.< - 4eprezentarea prin graf a automatelor 5oore (i 5eal6
Exemplul 6.1: 0ie un automat finit ! " #$,%,&,f,g', cu $ " Ax
,
,x
;
B, % " As
,
,s
;
,s
<
B, & " Az
,
,z
;
B
definit prin urmtoarele tabele pentru funciile de tranziie (i de ie(ire
f %
,
s
;
s
<
g s
,
s
;
s
<
x
,
x
;
%
;
s
<
s
,
s
,
s
<
s
;
x
,
x
;
z
,
z
,
z
;
z
,
z
;
z
,
% stabilim graful ata(at automatului.
%e constat c automatul este de tip 5eal6 #ie(irea depinde (i de intrri nu numai de stare'. @raful
va conine trei noduri (i se construie(te conform algoritmului descris anterior
%e pot distinge arce divergente, convergente (i
reflectate dac acestea sunt privite n raport cu
strile din care pleac (i n care a3ung. @raful se
marc+eaz prin semnalele de intrare care determin
tranziiile ntre stri (i prin semnalele de ie(ire
corespunztoare acestor tranziii. Deci, pentru un
automat 5eal6 ie(irile se obin n timpul tranziiilor
dintre stri. !rcele reflectate indic c acele stri
sunt stabile pentru semnalele respective de intrare,
n timp ce acele stri care nu posed astfel de arce
sunt stri de tranziie instabile.
4eferitor la reprezentarea prin grafuri a unui automat finit mai pot fi definite urmtoarele stri
particulare
- stare tranzitorie - nu are nici un arc convergent, ci cel puin un arc divergent. Din aceast
stare se poate trece n cel puin una din celelalte stri ale automatului, dar ea nu poate fi atins odat
ce a fost prsit.
- stare persistent - nu are arce divergente, ci cel puin un arc convergent. C astfel de stare,
odat ce a fost atins, nu mai poate fi prsit.
- stare izolat - poate avea cel puin un arc reflectat, dar nu are nici arce divergente (i nici
convergente. C astfel de stare nu poate fi nici atins (i nici prsit. !stfel de stri, dac ele apar n
graf, fiind inaccesibile, se elimin.
x
;
> z
,
x
,
> z
,
x
,
> z
;
x
;
> z
;
x
,
> z
,
s
<

s
;

x
;
> z
,
s
,

s
3 x
i
s
3
>z
3
x
i
>z
i
s
i
>z
i
s
i
#5oore'
#5eal6'
Elemente de teoria automatelor finite 73
Exemplul 6.2: % se stabileasc graful ata(at automatului ! " A$,%,&,f,gB, av*nd $ " Ax
,
,x
;
B, % "
As
,
,s
;
,s
<
B, & " Az
,
,z
;
B, (i cu funciile f (i g date prin urmtoarele tabele
f s
,
s
;
s
<
g s
,
s
;
s
<
x
,
x
;
s
;
s
<
s
,
s
,
s
<
s
;
z
,
z
,
z
;
%e observ c automatul este de tip 5oore #ie(irea depinde numai de stare'. @raful ata(at
automatului, conform algoritmului, este
%pre deosebire de graful ata(at automatului 5eal6 din
exemplul anterior, n acest caz arcele se marc+eaz numai
cu semnale de intrare, iar ie(irile corespund strilor
automatului. %e observ c tranziiile identice ntre dou
stri #ex. s
;
s
<
' nu sunt indicate cu arce separate marcate
cu intrrile respective, ci printr-un acela(i arc,
marcat de reuniunea semnalelor corespunztoare de intrare
#x
,
x
;
'.
Reprezentarea automatelor finite prin tabele
.nui automat finit ! " #$,%,&,f,g' i se poate ata(a un tabel D " #$,%,&,f,g' construit astfel
- liniile tabelului corespund strilor automatului,
- coloanele tabelului coresound semnalelor de intrare,
- dac s
i
este o stare a automatului, iar x
3
unul din semnalele de intrare, la intersecia liniei
i cu coloana 3 din tabel se trece funcia de tranziie generat de starea (i intrarea
respectiv f#s
i
,x
3
',
- pentru automatele 5oore se introduce o coloan suplimentar n care se trece funcia
g#s', iar pentru automatele 5eal6 la intersecia liniei i cu coloana 3 se indic (i ie(irea
g#s
i
,x
3
'.
Exemplul 6.3: % se reprezinte prin tabele automatele 5eal6 (i 5oore date n exemplele anterioare.
=onform algoritmului, acestea sunt
5eal6 5oore
x
,
x
;
x
,
x
;
g#s'
s
,
s
;
>z
,
s
,
>z
,
s
,
s
;
s
,
z
,
s
;
s
<
>z
,
s
<
>z
,
s
;
s
<
s
<
z
,
s
<
s
,
>z
;
s
;
>z
,
s
<
s
,
s
;
z
;
Reprezentarea automatelor finite prin organigrame
-n acest caz se utilizeaz simboluri ata(ate mulimii strilor (i mulimii intrrilor precum (i arce
orientate sau neorientate.
%trilor li se ata(eaz un dreptung+i sau un cerc

x
;

x
,
x
,
x
,
x
;
s
<
> z
;
s
;
> z
,
x
;
s
,
> z
,
%i %i
74 Elemente de teoria automatelor finite
%emnalelor de intrare li se ata(eaz blocuri de decizie de forma
!stfel, se poate evidenia operaia de testare a intrrilor respective.
%pecific acestui mod de reprezentare este tocmai testarea succesiv a intrrilor. -n funcie de
semnalele de intrare testate se pot obine mai multe organigrame corespunztoare.
!v*nd n vedere cele dou modele de automate ie(irea se indic fie pe tranziiile dintre stri,
generate de apariia semnalelor la intrri, fie n dreptul strii respective.
Exemplul 6.4: =onsiderm primul exemplu dat #cel al automatului de tip 5eal6'. Presupunem c
ne aflm n starea s
,
(i vom testa succesiv En-,F intrri, deci pe x
,
#u(or este s plecm de la
reprezentarea prin tabele'
Destrile se fac numai pe intrarea x
,
pentru c dac x
,
" G. rezult c x
;
" D! pentru a se realiza
tranziia. !ltfel, dac x
,
" G. (i x
;
" G. nu are loc nici o tranziie (i automatul rm*ne n starea
curent.
Exemplul 6.5: =onsiderm acum automatul 5oore descris prin tabel n al doilea exemplu #de
asemenea considerm c plecm tot din starea s
,
'
x
i
D! G.
x
i
D!
G.

D!> z
,
G.> z
,
x
,
s
,
s
;
s
<
D!> z
,
G.> z
,
x
,
D!> z
,
G.> z
,
x
,
Elemente de teoria automatelor finite 75
6.4 Aplicaii
,. % se reprezinte prin graf automatele finite descrise prin urmtoarele tabele de tranziii (i s se
fac observaiile necesare
a'
x
,
x
;
%/
HH H, ,H ,, z
,
z
;
%H %H %, %; %< HH
%, %I %, %; %< ,H
%; %I %8 %; %< ,,
%< %I %8 %; %< H,
%I %I %8 %; %< ,,
%8 %I %8 %; %< HH
b'
x
%/
H ,
%H %H>H, %I>,,
%, %,>,, %<>,H
%; %;>HH %1>H,
%< %<>HH %<>HH
%I %;>,H %I>HH
%8 %8>HH %H>,,
%1 %,>,, %1>HH
z
,
z
;
z
,
D! G.
x
,
s
,
s
;
s
<
D! G.
x
,
D! G.
x
,
76 Elemente de teoria automatelor finite
;. %e dore(te ca urmtoarea structur logic s funcioneze dup principiile unui automat 5oore.
=e trebuie fcutJ
<. % se decid ce tip de automat #5eal6 sau 5oore' este definit de ctre structura logic av*nd
funciile de ie(ire
z x B x A x AB AB
z x x AB A
,
;
;
;
; , ;
= + + +
= +

#! (i 2 reprezint semnalele secundare, iar x


,
(i x
;
sunt semnalele de intrare'.
4
=K
L
D
! 4
=K
L
D
2
x
z
=KM
Ncc

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