utiliza o de t cnicas de verifica o formal para a coordena o de sistemas multi rob s n.
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


Download Now 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

boeing@das.ufsc.br