apresentação integração ros e jade

25
Integração de sistemas robóticos com sistemas de agentes Pedro Mathias Nakibar

Upload: pedro-nakibar

Post on 07-Aug-2015

27 views

Category:

Software


1 download

TRANSCRIPT

Integração de sistemas robóticos com sistemas

de agentesPedro Mathias Nakibar

Qual objetivo?

Unir os sistemas!

Robos operados via agentes!

Múltiplos agentes em um robô permite que um rôbo...

...tenha vários usos, para várias funções diferentes

Se moverCarregar pessoasTirar fotos

Mas o quê é um agente?

Historically the concept of Agent-oriented programming and the idea of centering your software around the concept of agent was first used by Yoav Shoham within his Artificial Intelligence studies, in 1990. His agents are specific to his own paradigm as they have just one method, with a single parameter. To quote Yoav Shoham from his paper in 1990 for a basic difference between of AOP against OOP:

...agent-oriented programming (AOP), which can be viewed as a specialization of object-oriented

programming. ...

Diferenças OOP vs AOP

OOP AOP

Basic Unit Object Agent

Parameters defining state of basic unit

unconstrained beliefs, commitments, capabilities, choices...

Process of computation message passing and response methods

message passing and response methods

Types of message unconstrained inform, request, offer, promise, decline...

Constraints on methods none honesty, consistency...

Overview da plataforma JADE

Serviço de Páginas Amarelas

Autoridade na plataforma, único agente com poderes administrativos

E quem é o ROS?

Overview do ROS

O quê é o ROS?

● Framework para escrever software de robos● Coleção de ferramentas bibliotecas e

convenções para simplificar o desenvolvimento de software para robos, em plataformas diferentes

Ferramentas

● Infraestrutura de comunicação● Específicas para cada tipo de robo● Internas do ROS

Infraestrutura de comunicação

Infraestrutura de comunicação

● RPCs● Troca de Mensagens● Gravação e Playback de mensagens● Distributed Parameter System

Resultado da uniãoExperimento TurtleSim

Experimento● Utilizando o TurtleSim foi

possível provar que a proposta de unir as duas plataformas é possível○ TurtleSim é um simulador

de logo dentro do ROS, que auxilia na compreensão das funções internas, sem precisar de investir em um robo real

○ A tartaruga serve como uma abstração virtual de um robo

Processo de desenvolvimento

Primeiro Passo, unir o ROS com o Java

Isso foi feito com o jrosbridge, uma API para comunicação com o ROS

jrosbridgewebsockets

JSON

JADE funciona em cima do JAVA, então é possível utilizar os recursos do JAVA juntamente com os Agentes

jrosbridge

Este agente representa a tartaruga

E como dois agentes podem trocar mensagens...

...temos que podemos fazer um agente terceiro controlar a Tartaruga

jrosbridgeAgente piloto

Considerações finais

● Os agentes podem ser programados para realizarem multiplas funções○ Essa característica ajuda na criação de rôbos

multifunção, já que o poder do que fazer está nas mãos do agente piloto

Fontes● http://en.wikipedia.org/wiki/Agent-oriented_programming● http://www.ros.org/● http://jade.tilab.com/● https://www.iconsmind.com/● http://gundam.wikia.com/ e http://www.gundam-w.jp/