Você está na página 1de 18

Mquinas de Estados Finitos (MEF)

Prof. Flvio Rogrio Uber flavio.uber@gmail.com Material original Prof. !"elma Elita #olan$i %o&es
Prof. MSc. Thelma Elita Colanzi Lopes 1

MEF ) Mquina de Estados Finitos

Mquinas de estados finitos s*o mquinas abstratas que ca&turam &artes essenciais de algumas mquinas concretas (mquinas de vender refrigerantes+ rel,gios digitais+ &rocedimentos de editores de te-tos+ etc) (./E/R0+ 1223). Uma MEF &ode estar em a&enas um de seus estados num determinado momento. Em res&osta a uma entrada a mquina gera uma sa4da e muda de estado+ tanto a sa4da como o &r,-imo estado s*o fun56es do estado atual e da entrada. (*o+ &ortanto+ a&ro&riadas &ara descrever sistemas que &odem estar em um con7unto finito de estados e &odem ir de um estado &ara outro como conseq89ncia de um evento+ modelado &or um s4mbolo de entrada.
Prof'. M(c. !"elma Elita #olan$i %o&es 2

MEF ) Mquina de Estados Finitos

E-istem+ basicamente+ dois ti&os de mquinas de estados finitos os transdutores e os recon"ecedores de linguagens.
:s

transdutores s*o mquinas com entrada e sa4da; :s recon"ecedores geram a&enas duas sa4das &oss4veis (aceita5*o ou re7ei5*o da entrada).

Uma MEF tem mem,ria limitada e e-clusivamente organi$ada em torno do conceito de estado. 0&lica56es &oss4veis &ara MEFs &rotocolos de comunica5*o+ es&ecifica5*o de linguagens+ sistema de monitoramento "os&italar+ de controle metrovirio+ de trfego areo+ etc...

Prof'. M(c. !"elma Elita #olan$i %o&es

Um e-em&lo clssico

Problema do "omem que tem um lobo+ um coel"o e um re&ol"o e &recisa atravess)los &ara a margem esquerda de um rio res&eitando as regras da cadeia alimentar. /nforma5*o a ser re&resentada

: que est na margem direita ("+ l+ c+ r);

Estado <"+ l+ r= > est*o na margem direita o "omem+ o lobo e o re&ol"o.

(eq89ncia de movimenta56es (s > atravessa so$in"o+ l > atravessa com o lobo+ c > atravessa com o coel"o e r > atravessa com o re&ol"o).

Palavra csr > c o "omem leva o coel"o da ?ir Esq+ s o "omem volta so$in"o da Esq ?ir+ r o "omem leva o re&ol"o da ?ir Esq. @ote que s4mbolos em &osi56es 4m&ares indicam movimentos da ?ir Esq+ assim como s4mbolos em &osi56es &ares indicam movimentos da Esq ?ir.
Prof'. M(c. !"elma Elita #olan$i %o&es 4

E-em&lo #lssico ) MEF


c <"+ l+ c+ r= c < l+ r= s s l <r= c c c <"+ l+ r= r r l <l= c <"+ l+ c= r <c=
5

<"+ c+ r= r < = c c <"+ c= s s l

Prof'. M(c. !"elma Elita #olan$i %o&es

MEF determin4stica
Uma MEF M determin4stica formalmente definida &or uma tu&la (A+ (+ (2+ B+ F) onde A alfabeto de entrada ( con7unto finito n*o va$io de estados (2 estado inicial

B fun5*o de transi5*o+ B ( - A (+ uma fun5*o total F con7unto de estados finais+ F (


Prof'. M(c. !"elma Elita #olan$i %o&es 6

Re&resenta5*o Matemtica

( D <q2+ qE+ q1+ qF= (2 D q2 A D <2+ E= F D <q2=

(q2+ 2) D q1

B (q2+ E) D qE B (qE+ 2) D qF B (qE+ E) D q2

B (q1+ 2) D q2 B (q1+ E) D qF B (qF+ 2) D qE B (qF+ E) D q1

E-em&lo de &alavras de entrada &oss4veis 2E2+ EE2+ 2E2E+ E2E2+ EE

Re&resenta5*o Crfica
E q2 E qE

!abela de !ransi5*o de Estados


Entrada
Estados

2 q1 qF q2 qE

E qE q2 qF q1
7

q2 qE q1 qF

E q1 E qF

MEF determin4stica

0 fun5*o de transi5*o B determina a mudan5a de estado da MEF. Essa fun5*o ma&eia cada &ar (estado+ s4mbolo) &ara um estado. Esse fato+ que cada &ar (estado+ s4mbolo) leva a um nico estado que caracteri$a o determinismo. Determinismo: a &artir de um estado inicial s, &oss4vel atingir um Gnico camin"o &ara uma dada &alavra de entrada.
Prof'. M(c. !"elma Elita #olan$i %o&es 8

MEF determin4stica

@o e-em&lo do slide H a fun5*o de transi5*o n*o total. Para tornar B uma fun5*o total+ &ode)se criar um estado t (tragdia) e fa$er B(e+a)Dt se n*o e-istir transi5*o de e &ara algum estado sob a. @este caso t re&resenta um estado de erro+ e muitas ve$es esses estados s*o omitidos &ara mel"orar a legibilidade do diagrama de estados.
Prof'. M(c. !"elma Elita #olan$i %o&es 9

?iagrama de !ransi5*o de Estados (?!E)


Um diagrama de transi5*o de estados a forma de re&resenta5*o grfica de MEFs. 0 MEF &ode ser re&resentada &or meio de um diagrama de flu-o+ sendo que cada &onto de &arada no flu-o re&resenta um estado. ?!E um grafo de estados (vrtices) e eventos (arestas). @os mtodos ItradicionaisJ da Engen"aria de (oftKare+ ele &ode ser usado como com&lemento das formas de documenta5*o e &ro7eto de um sistema de informa5*o+ voltado &ara sistemas e decis6es de tem&o real.
Prof'. M(c. !"elma Elita #olan$i %o&es 10

Elementos do ?iagrama de !ransi5*o de Estados (?!E)


E.

Estado #ondi5*o ou situa5*o durante a vida de um ob7eto na qual ele satisfa$ algumas condi56es+ e-ecuta algumas atividades ou es&era &or eventos.

Partes estveis no com&ortamento do &rocesso. E-em&los aguardando sen"a+ acelerando+ ocioso+ aquecendo mistura qu4mica+ &edido autori$ado;

E.

Evento qualquer acontecimento que &rovoca uma transi5*o de estados.

Pode ser um sinal e-terno ao sistema ou um sinal emitido &elo sistema &or (a) o transcurso de um &er4odo determinado de tem&o ou (b) a satisfa5*o de uma condi5*o &r)determinada. E-em&lo fone fora do ganc"o+ fone no ganc"o+ sen"a digitada+ sen"a correta+ etc.;
Prof'. M(c. !"elma Elita #olan$i %o&es 11

Elementos do ?iagrama de !ransi5*o de Estados (?!E)


E.

1.

!ransi5*o : relacionamento entre dois estados+ indicando uma &assagem do EL estado &ara o segundo 1L estado mediante a ocorr9ncia de um determinado evento e+ em certos casos+ uma condi5*o; 05*o o&era5*o instantMnea associada a um evento.

Pode ser sa4da do sistema (e- mensagem+ sinal) ou clculo interno (e- incremento de um contador).
Prof'. M(c. !"elma Elita #olan$i %o&es 12

@ota5*o &ara o ?!E


E. 1. F. N.

Estados c4rculos rotulados com o nome do estado !ransi5*o seta ligando dois estados e rotulada com o s4mbolo do alfabeto que fa$ com que transi5*o aconte5a. Estado inicial indicado &or uma seta c"egando nesse estado Estado Final marcado com c4rculos du&los.

F I E 1

a F

Prof'. M(c. !"elma Elita #olan$i %o&es

13

#onstru5*o de um ?!E
E. 1. F.

%iste todos os estados+ eventos e condi56es+ a &artir da descri5*o do sistema; ?esen"e os estados; ?esen"e as transi56es dos estados. :u comece &elo estado inicial e v montando o ?!E seguindo a seq89ncia l,gica de o&era5*o do sistema.

Prof'. M(c. !"elma Elita #olan$i %o&es

14

#onstru5*o de um ?!E
.erifica5*o da consist9ncia Foram definidos todos os estados e transi56esO !odos os estados &odem ser atingidosO !odos os estados t9m sa4daO Em cada estado+ o sistema reage adequadamente a todas as condi56es &oss4veisO

Prof'. M(c. !"elma Elita #olan$i %o&es

15

E-erc4cio
Fa5a uma MEF &ara o &roblema dos missionrios e canibais E) !r9s missionrios e tr9s canibais devem atravessar um rio. 1) Para isso+ dis&6em de uma canoa que &ode trans&ortar no m-imo duas &essoas de cada ve$. F) ?urante a travessia+ se o nGmero de canibais for maior que o de missionrios em qualquer uma das margens+ os canibais comem os missionrios. ?eterminar um &lano &ara travessia em que nen"um missionrio se7a devorado.

Prof'. M(c. !"elma Elita #olan$i %o&es

16

E-erc4cio
0 banda PU1P tem um concerto que come5a daqui a EQ minutos e todos &recisam cru$ar a &onte &ara c"egar l. !odos os N &artici&antes est*o do mesmo lado da &onte. .oc9 deve a7ud)los a &assar de um lado &ara o outro. R noite. (, " uma lanterna e s, &odem atravessar 1 &essoas &or ve$. Sualquer &essoa que &asse+ uma ou duas+ deve &assar com a lanterna na m*o. 0 lanterna deve ser levada de um lado &ara o outro+ n*o &ode ser 7ogada+ etc. #ada membro da banda tem um tem&o diferente &ara &assar de um lado &ara o outro. : &ar deve andar 7unto+ no tem&o do menos velo$ Tono ) E minuto &ara &assar; Edge ) 1 minutos &ara &assar; 0dam ) H minutos &ara &assar; %arrU ) E2 minutos &ara &assar. Por e-em&lo se o Tono e o %arrU &assarem 7untos+ vai demorar E2 minutos &ara eles c"egarem do outro lado. (e o %arrU retornar com a lanterna+ 12 minutos ter*o &assados e voc9 fal"ou no teste. Fa5a a re&resenta5*o grfica e a tabela de transi5*o de estados da MEF que resolve este &roblema.
17

Prof'. M(c. !"elma Elita #olan$i %o&es

Tibliografia

./E/R0+ @eKton Vos. Introduo aos fundamentos da computao: linguagens e mquinas. (*o Paulo Pioneira !"omson %earning+ 1223.

Prof'. M(c. !"elma Elita #olan$i %o&es

18

Você também pode gostar