utiliza o de t cnicas de verifica o formal para a coordena o de sistemas multi rob s
Download
Skip this Video
Download Presentation
Utilização de Técnicas de Verificação Formal para a Coordenação de Sistemas Multi-Robôs

Loading in 2 Seconds...

play fullscreen
1 / 32

Utilização de Técnicas de Verificação Formal para a Coordenação de Sistemas Multi-Robôs - PowerPoint PPT Presentation


  • 95 Views
  • Uploaded on

Utilização de Técnicas de Verificação Formal para a Coordenação de Sistemas Multi-Robôs. Victor Boeing Ribeiro. 27 de outubro de 2011. Sumário. Conceitos básicos Introdução Modelagem UPPAAL Implementação Expansão do método redução de complexidade Conclusão e perspectivas.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Utilização de Técnicas de Verificação Formal para a Coordenação de Sistemas Multi-Robôs' - beck


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
utiliza o de t cnicas de verifica o formal para a coordena o de sistemas multi rob s

Utilização de Técnicas de Verificação Formal para a Coordenação de Sistemas Multi-Robôs

Victor Boeing Ribeiro

27 de outubro de 2011

slide2

Sumário

  • Conceitos básicos
  • Introdução
  • Modelagem UPPAAL
  • Implementação
  • Expansão do método
  • redução de complexidade
  • Conclusão e perspectivas

Sumário 2/31

slide3

Sistemas a Eventos Discretos

  • Processos não são governados pela variação de variáveis contínuas, mas por eventos– alterações instantâneas, sem estados intermediários
  • Um Autômato Finito Determinístico é formalmente definido pela quíntupla G = (X, Σ, f, x0, Xm), onde:
    • X: conjunto finito de estados
    • Σ: conjunto de eventos (alfabeto)
    • f : X, Σ → X função de transição
    • x0: estado inicial
    • Xm: conjunto de estados finais (marcados)

Conceitos Básicos 3/31

slide4

Autômatos Temporizados

  • Autômatos temporizados são uma extensão de máquinas de estados finitos com variáveis de tempo (timers) e variáveis discretas limitadas
    • Guard (condição)
    • Update (atualização)
    • Sync (canal de sincronização)

Conceitos Básicos 4/31

slide5

Verificação

  • Uso de técnicas matemáticas para provar que uma propriedade é satisfeita ou não, procurando por sequências de eventos que possam violá-la

correções

descrição operacional

Contra exemplo

SISTEMA

Modelagem

Não

VERIFICAÇÃO

especificações

Propriedades esperadas

Propriedade satisfeita

Sim

Conceitos Básicos 5/31

slide6

Objetivos

  • Coordenação da atividade de movimentação de múltiplos robôs dentro de um espaço delimitado e com obstáculos;
    • Desenvolvimento de um coordenador que forneça uma lista de instruções a serem executadas pelos robôs para alcançarem a posição desejada, evitando obstáculos e sincronizando seus movimentos com outros robôs

Introdução 6/31

slide7

Método

  • Modelagem do sistema multi-robôs como sistema a eventos discretos;
  • Verificação intencional de propriedades de alcançabilidade;
  • Geração de um contra-exemplo com a lista de instruções a serem executadas pelos robôs

Introdução 7/31

slide8

Especificações

  • Múltiplos robôs, área limitada e obstáculos;
  • Robôs devem respeitar os limites do cenário, evitar colisões com obstáculos e entre eles;
  • Área de trabalho dividida em células:
    • Células podem estar livres, ocupadas por
    • um robô ou obstáculo
  • Robôs podem executar três tipos de movimentos:
    • Rotação 90o para direita e esquerda
    • Movimento para frente

3

1

2

Introdução 8/31

slide9

Modelagem

2

1

Modelagem 9/31

slide10

Modelagem

start

Initialization

start

Robot

Controller

Moving Forward

Rotating Left

Rotating Right

rotateRight

rotateLeft

mForward

light

encode

encode

Light sensor

Encoder

Modelagem 10/31

slide11

Inicialização

Quando todos os ID’s são encontrados é enviado um sinal broadcast start!

Procura pelo ID dos robôs em cada linha e coluna

Quando um ID é encontrado suas respectivas coordenadas são atualizadas

Modelagem 11/31

slide12

Controle

Espera pelo sinal broadcast start?

Antes de enviar mForward! o Controlador verifica se a próxima célula está livre e se o robô não sairá do cenário.

Pode enviar rotateLeft! E rotateRight! livremente

Modelagem 12/31

slide13

Robô

light?: Libera a célula anterior

encode?: Atualiza a orientação do robô

mForward?: Atualiza a próxima célula e vai para o lugar Moving

rotateLeft? ou rotateRight?: Vai para o lugar Rotating

Modelagem 13/31

slide14

Sensores

Light sensor: envia light!

Encoder: envia encode!

Modelagem 14/31

slide15

Geração de Trace

  • Verificação de fórmulas de alcançabilidade e a geração de contra-exemplos (shortest trace)
  • Filtragem das transições sincronizadas entre controlador e robôs
  • FÓRMULA:
    • A[] not (x[0]==2 and y[0]==3)
  • Control.Idle->Control.Idle { 1, rotateLeft[0]!, 1}
  • Control.Idle->Control.Idle { 1, rotateLeft[0]!, 1}
  • Control.Idle->Control.Idle { 1, mForward[0]!, 1}
  • Control.Idle->Control.Idle { 1, rotateRight[0]!, 1}
  • Control.Idle->Control.Idle { 1, mForward[0]!, 1 }

Implementação15/31

slide16

Arquitetura

Trace generator

Trace executor

Trace

Execution confirmation

Instructions

Operational control

Environment

Information

Sensors

Information

Commands

Robot

Sensors

Motors

Implementação16/31

slide17

Implementação

  • Interface para entrada de valores para posição inicial do robô, orientação e obstáculos
      • Essa informação é gravada no arquivo “xml” que contém o modelo do sistema
  • Posição objetivo do robô
      • Gravada no arquivo “q” que contem a fórmula a ser verificada
  • Acesso ao verificador para cálculo do menor contra-exemplo
  • Envio do trace calculado através de serial Bluetooth

Implementação17/31

slide18

Implementação

Posição inicial

Obstáculos

Posição final

Orientação inicial

Trace calculado

Implementação18/31

slide19

Expansão do método - Objetivos

  • Modelagem do sistema com a linguagem FIACRE
  • Avaliação da possibilidade de execução de ações simultaneamente, por diferentes robôs – aumento da eficiência do sistema
  • Avaliação da complexidade dos modelos gerados
  • Proposta de um método para redução da complexidade

Expansão do Método19/31

slide20

Modelo Sequencial

  • Portas TurnR, TurnL e GoF
  • Controle responsável por gerenciar a matriz
  • Passagem instantânea entre células

Expansão do Método20/31

slide21

Modelo Sequencial

1

2

Expansão do Método21/31

slide22

Modelo Paralelo

  • Portas TurnR, TurnL, GoF, Release e Wait
  • Estado intermediário de movimentação
  • Instruções enviadas alternadamente para os robôs

Expansão do Método22/31

slide23

Modelo Paralelo

1

2

Expansão do Método23/31

slide24

Complexidade

Expansão do Método24/31

slide25

Método para redução de complexidade

  • Desenvolvimento de um método com baixa complexidade e que mantenha o paralelismo no trace gerado
    • Cálculo de um trace sequencial através do modelo de baixa complexidade
    • Algoritmo que avalia quais instruções podem ser executadas simultaneamente

Redução de complexidade 25/31

slide26

Método para redução de complexidade

Redução de complexidade 26/31

slide27

Método para redução de complexidade

1

2

Redução de complexidade 27/31

slide28

Método para redução de complexidade

Redução de complexidade 28/31

slide29

Método para redução de complexidade

Redução de complexidade 29/31

slide30

Conclusão

  • Aumentando a eficiência na geração do trace aumenta-se também o grau de complexidade do modelo
  • Modelo que gera trace com paralelismo não é flexível e é impraticável sua aplicação para sistemas com elevado número de robôs ou células
  • Método para redução de complexidade apresentou um bom resultado, gerando um trace com paralelismo e com um grau de complexidade muito menor

Conclusão e Perspectivas30/31

slide31

Perspectivas

  • Utilização de obstáculos dinâmicos no sistema – portas
  • Abordagem através da Teoria de Controle Supervisório
  • Abordagem através de Autômatos Jogos Temporizados

Conclusão e Perspectivas31/31

obrigado

Obrigado!

Victor Boeing Ribeiro

[email protected]

ad