Академический Документы
Профессиональный Документы
Культура Документы
Este artigo ou seco contm fontes no fim do texto, mas que no so citadas no corpo do artigo, o que compromete aconfiabilidade d
informaes. (desde junho de 2010)
Por favor, melhore este artigo introduzindo notas de rodap citando as fontes, inserindo-as no corpo do texto quando necessrio.
Esta pgina precisa ser reciclada de acordo com o livro de estilo (desde Fevereiro de 2008).
Sinta-se livre para edit-la para que esta possa atingir um nvel de qualidade superior.
Uma mquina de estados finitos (FSM - do ingls Finite State Machine) ou autmato
finito um modelo matemtico usado para representar programas de
computadoresou circuitos lgicos. O conceito concebido como uma mquina abstrata
que deve estar em um de seus finitos estados. A mquina est em apenas um estado por
vez, este estado chamado de estado atual. Um estado armazena informaes sobre o
passado, isto , ele reflete as mudanas desde a entrada num estado, no incio do
sistema, at o momento presente. Uma transio indica uma mudana de estado e
descrita por uma condio que precisa ser realizada para que a transio ocorra. Uma
ao a descrio de uma atividade que deve ser realizada num determinado momento.
Mquinas de estado finito podem modelar um grande nmero de problemas, entre os
quais a automao de design eletrnico, projeto de protocolo de comunicao, anlise e
outras aplicaes de engenharia. Na biologia e na pesquisa da inteligncia artificial,
mquinas de estado ou hierarquias de mquinas de estado so, por vezes, utilizadas para
descrever sistemas neurolgicos e em lingustica para descrever as gramticas
das linguagens naturais.
ndice
[esconder]
1Conceitos e Vocabulrio
2Representao
o 2.1Diagrama de estados
o 2.2Mquinas de estados UML
o 2.3Mquinas de estados SDL
o 2.4Outros diagramas de estado
3Uso
4Classificao
o 4.1Aceitadores e reconhecedores
4.1.1Estado Inicial
4.1.2Estados de aceitao (ou Estados Finais)
o 4.2Transdutores
o 4.3Determinismo
5Semnticas Alternativas
6Lgica da FSM
7Modelo matemtico
8Implementao
o 8.1Aplicaes de Hardware
o 8.2Aplicaes de Software
9Referncias
10Ligaes externas
Conceitos e Vocabulrio[editar
| editar cdigo-fonte]
Representao[editar
| editar cdigo-fonte]
Estado Atual
Estado A Estado B Estado C
Condio
Condio X
...
...
...
Condio Y
...
Estado C
...
Condio Z
...
...
...
mquinas de Mealy, assim como aes de entrada e sada que esto associadas com os
estados em vez de transies, como em mquinas de Moore.
enviar um evento
receber um evento
iniciar um temporizador
cancelar um temporizador
iniciar uma nova mquina de estado simultnea
deciso
SDL incorpora tipos bsicos de dados chamado Abstract Data Types, uma linguagem de
ao, e uma semntica de execuo, a fim de tornar a mquina de estados finitos
executvel. Um exemplo visto na figura 1.
Uso[editar
| editar cdigo-fonte]
Classificao[editar
| editar cdigo-fonte]
Fig. 4: Representao de uma FSM. Este exemplo mostra uma FSM que determina se um nmero
binrio tem um nmero par ou mpar de 0's, onde S1 um estado de aceitao.
Mquina de Mealy
A FSM utiliza apenas input actions, i.e. a sada depende da entrada e do estado. O
uso de uma FSM de Mealy normalmente leva a uma reduo no nmero de
estados. Por exemplo uma FSM de Mealy implementando o mesmo
comportamento visto no exemplo de Moore (o comportamento depende no modelo
de execuo implementado na FSM e ir funcionar e.g. para uma FSM virtual mas
no para uma FSM de eventos dirigidos). Existem duas input actions(I:): inicie o
motor para fechar a porta se o comando_fechar (sensor_closed na figura 5)
chegar e inicie o motor na direo oposta para abrir a porta se o comando_abrir
(sensor_opened na figura 5) chegar.
Na prtica modelos mistos so muito utilizados.
Mais detalhes sobre as diferenas e usos dos modelos de Moore e Mealy,
incluindo um exemplo executvel, podem ser encontrados na nota tcnica
externa "Modelo de Moore ou Mealy?"(documento em ingls)
Semnticas Alternativas[editar
| editar cdigo-fonte]
Lgica da FSM[editar
| editar cdigo-fonte]
Modelo matemtico[editar
| editar cdigo-fonte]
Gramtica
Linguagem
Reconhecedor
Tipo-0
Irrestrita
--
--
Recursiva
Tipo-1
Tipo-2
Livre de contexto
Livre de contexto
Tipo-3
Regular
Regular
Autmato finito
Implementao[editar
| editar cdigo-fonte]
Referncias[editar
| editar cdigo-fonte]
1. Ir para cima Tiwari, A. (2002). Formal Semantics and Analysis Methods for
Simulink Stateflow Models.
2. Ir para cima Hamon, G. (2005). A Denotational Semantics for Stateflow.
International Conference on Embedded Software (pp. 164172). Jersey
City, NJ: ACM.
3. Ir para cima Harel, D. (1987). A Visual Formalism for Complex Systems.
Science of Computer Programming , 231274.
4. Ir para cima Alur, R., Kanade, A., Ramesh, S., & Shashidhar, K. C. (2008).
Symbolic analysis for improving simulation coverage of Simulink/Stateflow
models. Internation Conference on Embedded Software (pp. 8998).
Atlanta, GA: ACM.
5. Ir para cima Black, Paul E (12 May 2008). "Finite State
Machine". Dictionary of Algorithms and Data Structures U.S. National
Institute of Standards and Technology [S.l.]
6. Ir para cima James Andrew Anderson; Thomas J. Head (2006). Automata
theory with modern applications Cambridge University Press [S.l.]
pp. 105108. ISBN 9780521848879.
7. Ir para cima "FSM: Medvedev".