Autômato finito São máquinas que funcionam sozinhas em resposta a entradas de um dado. É uma outra forma de representação de linguagens formais.
1. FinalidadeDefinidas na teoria dos automatos e depois na teoria da computação,  tem as seguintes finalidades .

  • Tradutores ou Automatos Finitos com saida
    Para cada entrada existem duas saidas possiveis. Uma para sentenças validas e outras para sentenças invalidas da linguagem em questão. Ambas devem ser geradas a partir de gramaticas regulares.

    As saidas podem estar associadas a:  transição ou estado . Dependeendo da associação existem 2 tipos de máquinas: Mealy e Moore.

    Com uma entrada vazia  a Máquina de Mealy não gera saida pois não executa nenhuma transição ( a saida esta associada a transição). Um exemplo de aplicação é o projeto de dialogo entre um programa e o seu usuário. Este dialogo pode se comandado pelo usuario ou pelo programa.
            A saiada depende das entradas e do estado anterior

    A Máquina de Moore gera a palavra correspondente ao estado inicial (a saida esta associada ao estado). Um exemplo de aplicação é o analisador léxico de um compilador.
            A saida depende somente dos estados anteriores

    No caso de entrada vazia as duas máquinas não são equivalentes caso contrario (entrada não vazia) as máquinas são equivalentes ou seja uma simula a outra.

    Aplicações com enfase na WWW : Hipertexto e hipemidia; animação quadro-a-quadro.

  • Reconhecedores de linguagem ou Automatos Finitos. Entradas são simbolos. Ações não são utilizadas
    Tem 2 tipos:
    • Automato finito deterministico para cada entrada há exatamente uma transação para cada entrada possivel.
         
    • Autômato não deterministico - pode ter nenhuma ou mais de uma transação de um determinado estado para uma entrada possivel


2. Elementos de um Autômato finito
  • Estado inicial - estado em o problema se encontra quando começa a ser resolvido. Inicio do contexto.
  • Estado final   - estado em que o problema se encontra quando começa a ser resolvido ou chegou-se a um estado em que não há saida. Ex.: Termina quando tira da tomada.
  • Estados -armazena informações sôbre o passado. Armazena as mudanças desde a entrada em um estado até o momento presente. Representado por um número circulado.
  • Funcionamento - um Autômato finito funciona com a entrada de uma cadeia de letras. Essa cadeia é lida letra por letra até a ultima letra da cadeia. O inicio se dá pela escolha do estado inicial. As letras lidas indicam a sequência de estados a ser seguida. A sequência termina quando a última letra for lida.
  • Entrada - cadeia de caracteres
  • Saidas    - podem se associar a:
                    transições - maquina de Mealy
                    estados     - maquina de Moore
                    Não pode ser lida ou seja não pode ser usada como memória auxiliar.
  • Regras de transição -indica uma mudança de estado. É descrita por uma condição que precisa ser realizada para que a transiçaõ ocorra. Representa seta entre estados.
    Seja o alfabeto {a b} as regras de transição são:
    regra 1. Do estado x e entrada a, vá para o estado y.
    regra 2. Do esatdo x e entrada b, vá para o estado z
    regra 3. Do estado y e entrada a, vá para o estado x.
    regra 4. Do esatdo y e entrada b, vá para o estado x.
    regra 5. Do estado z e qualquer entrada, continue no estado z.
  • Ações       - é a descrição de uma atividade que deve ser realizada em determinado momento.
                       Ação de entrada (no estado) - executa a ação quando entra no estado.
                       Ação de saida : executa ações quando sai do estado. 
3. Representação graficaRegras:
regra 1. Do estado x e entrada a, vá para o estado y.
regra 2. Do esatdo x e entrada b, vá para o estado z
regra 3. Do estado y e entrada a, vá para o estado x.
regra 4. Do esatdo y e entrada b, vá para o estado x.
regra 5. Do estado z e qualquer entrada, continue no estado z.

Ações       - é a descrição de uma atividade que deve ser realizada em determinado momento.
                   Ação de entrada (A2) - executa a ação A2 quando vai para o estado X.
                   Ação de saida : executa ação A4 quando sai do estado.

Na forma de grafos dirigidos das regras descritas:

WDiagramaEstado.jpg

Na forma de tabelas de transição (estado atual x entrada x proximo estado)


Tabela de ações

Ação
Descrição
A1
lista açao A1
A2
lista açao A2
A3
lista açao A3
A4
lista açao A4
A5
lista açao A5
A6
lista açao A6
A7
lista ação A7


4. Definição matemáticaÉ uma quintupla AF=(E,A,I,F,T)

  • E: conjunto finito de estados;
  • A: um alfabeto;
  • I: estado inicial;
  • F: conjunto de estados finais;
  • T: função de transição de estado


    T(E1, Xk) = Ej   => indica para cada estado e cada letra do alfabeto a qual o estado deve seguir.

5. Autômatos finitos x Expressões RegularesUm automato pode ser abordado de 2 maneiras:
A partir de uma linguagem (expr. regular) constroi-se uma máquina de estado para ela ou a partir de uma máquina de estado, deduz-se a linguagem




6. Autômatos Finitos Deterministicos x Tabelas de decisões
Exemplo de definição da regra de impedimento no futebol
Regra 11: Impedimento

O impedimento ocorre quando um jogador da equipe que está atacando tem, entre ele e a linha de fundo, menos de dois jogadores da equipe adversária. Não há impedimento:

  • Quando o jogador em posição irregular estiver em sua própria metade do campo;
  • Em cobranças de lateral;
  • Em cobranças de escanteios;
  • Quando a bola é lançada por um jogador da equipe adversária;
  • Quando o jogador "irregular" está atrás da linha de fundo ou além das linhas limítrofes laterais, portanto, fora da área de jogo;
  • Quando o jogador está atrás da linha da bola;
  • Quando o jogador está na mesma linha do segundo jogador adversário mais próximo da linha de fundo;
  • Quando o jogador "irregular" não interfere na jogada - "impedimento passivo".
Solução
Impedimento = Atacante está no campo de ataque E Bola parte do pé do companheiro de equipe E Há menos de 2 defensores entre atacante e a linha de fundo de ataque E Bola está atrás da linha do atacante

Autômato
WDiagRegraImpedimento.jpg
Covertendo o Autômato para Tabela de Decisão
No momento do passe, para cada jogador atacante:
Atacante está no campo de ataque?
| Bola parte do pé do companheiro de equipe?
| | Há menos de 2 defensores entre atacante e a linha de fundo de ataque?
| | | Bola está atrás da linha do atacante?
1 1 1 1 * impedimento
representação tabular    visao da eletronica    wikipedia    Domain-Specific Languages Arquivo origem: WAutomataFinito.xml.   referencia