AGENTES INTELIGENTES COM JAVA Robison Cris Brito [email protected].

64
AGENTES INTELIGENTES COM JAVA Robison Cris Brito [email protected]

Transcript of AGENTES INTELIGENTES COM JAVA Robison Cris Brito [email protected].

Page 1: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

AGENTESINTELIGENTESCOM

JAVARobison Cris [email protected]

Page 2: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Agenda

• Agentes• Sistemas Multi-Agentes• BDI• Organização de Agentes• Estudo de Caso – Robocup• O futuro da computação

distribuída• Conclusão

Page 3: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Visão que o mundo tem dos Agentes Inteligentes!

Page 4: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Mas o que é um Agente

“Um agente é uma entidade lógica ou física à qual é atribuída uma certa missão que ela é capaz de cumprir de maneira autônoma e

em coordenação com outros agentes.”

A autonomia significa que um agente existe independente dos demais agentes e, independente também do problema a ser solucionado.

Page 5: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Características de um

Agente• Adaptabilidade = aprender e evoluir

• Situado = percebe mudança no ambiente

• Comportamento Social = interagir com outros agentes

• Mobilidade = migrar de plataforma

Page 6: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Tipos de Agentes

• Agentes Reativos

• Agentes Cognitivos

Page 7: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Agente Reativo

• O conhecimento é implícito no código

• Não possui memória

• Não possui controle planejado das ações

• Sociedades formados por muitos elementos

• Exemplo: Colônia de Formigas

Page 8: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Agente Reativo

Page 9: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Agente Cognitivo

• Considera-se que os agentes possuem um estado mental

• Raciocinam para construir um plano de ações que leva a um objetivo pretendido

• Agentes cognitivos tem autonomia funcional • Possuem representação de conhecimento

explícita no código (conhecimento introspectivo) • As comunidades possuem poucos agentes

Page 10: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Características dos Agentes Cognitivos

• Percepção – perceber informações do mundo• Ação – age com o intuito de atingir um objetivo• Comunicação – para coordenar ações• Representação – representação simbólica do

que acredita ser verdade• Motivação – estado desejado para o ambiente• Deliberação – motivação + estado do ambiente

= deliberaçào• Raciocínio e Aprendizagem – o agente deve

aprender a aprender

Page 11: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Agente Cognitivo

Page 12: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

O Pensamento

Dentre os seguimentos da Inteligência Artificial, alguns são dedicados ao estudo

de arquiteturas de agentes deliberativos baseados em estados mentais. Entre estes estados mentais, destacam-se as crenças,

os desejos e as intenções.

Page 13: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

O Pensamento

Crenças, desejos, expectativa, capacidade,, intenções, temores, dúvidas, ódio, etc. são

exemplos de estados intencionais.

Os estados mentais humanos possuem vínculo com o mundo em que vivemos.

Page 14: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

BDI – Belief, Desire, Intention

Nesse modelo, as decisões são logicamente restritas pelas crenças dos agentes, com

base nessas crenças o agente pode possuir desejos, um conjunto de desejos podem traçar uma meta para que o desejo seja satisfeita, esse conjunto de desejos é a

intenção do agente.

Page 15: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Exemplo de Aplicativo

• Jogador de Truco– Crenças– Desejos– Intenções

Page 16: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Linguagem para programar Agentes em BDI

• AgentSpeak(L)– linguagem é uma extensão natural e

elegante de programação em lógica – tem sido a abordagem predominante na

implementação de agentes inteligentes ou “racionais”

Page 17: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Ferramenta para trabalhar com AgentSpeak(L)

Page 18: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.
Page 19: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.
Page 20: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

E a organização social do agente???

• Assim como nas sociedades humanas, todos os sistemas multi agentes possuem alguma forma de organização, no entanto isto pode ser implícito ou informal.

• Orientam como os membros desta população interagem uns com os outros.

• Estas estruturas organizacionais influenciam as relações de autoridade, o fluxo de informações, a alocação de recursos, os padrões de coordenação e inúmeras outras características sistêmicas

Page 21: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Matriz

Arquiteturas de Sistemas Multiagentes

Page 22: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Hierarquia

Arquiteturas de Sistemas Multiagentes

Page 23: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Federação

Arquiteturas de Sistemas Multiagentes

Page 24: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Congregação

Arquiteturas de Sistemas Multiagentes

Page 25: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Coalisão

Arquiteturas de Sistemas Multiagentes

Page 26: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Hologarquia

Arquiteturas de Sistemas Multiagentes

Page 27: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Composição

Arquiteturas de Sistemas Multiagentes

Page 28: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Sociedade

Arquiteturas de Sistemas Multiagentes

Page 29: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Ferramenta para Organização Social

Moise+

Page 30: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.
Page 31: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Organização em XML

Page 32: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Estrutura de um Sistema Completo

Sistema Cognitivo BDI (Jason)

Agente 1

Sistema Cognitivo BDI (Jason)

Agente 2

Sistema Cognitivo BDI (Jason)

Agente N

.....

.....Percepção Ambiental

Execução de Comandos

(Java)Agente 1

Percepção AmbientalExecução de Comandos

(Java)Agente 1

Percepção AmbientalExecução de Comandos

(Java)Agente 1

Organização Social dos Agentes (Moise+)

Ambiente de Testes e Execução

Page 33: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Por que Java?

Page 34: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.
Page 35: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Por que Java

• Java is Everywhere

• Portabilidade

• Segurança

• Java – Independente de Plataforma

Page 36: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Exemplo de Aplicações Multi Agente

• Controle de Tráfego Aéreo

• Indústria

• Gerência de Negócio

• Interação Ser Humano – Computador

• Ambientes de Aprendizagem

• Entretenimento

• Aplicações Distribuídas

• Simulação Social

Page 37: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Estudo de CasoRobocup

Page 38: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

O que é o RobocupProjeto Internacional com objetivo de promover a Inteligência Artificial

e Robótica.

Envolvem pesquisas em desenvolvimento de agentes autônomos, colaboração multi agente, elaboração de estratégias, pensamento em

tempo real e robótica (sensores).

“… by 2050, develop a team of fully autonomous humanoid robots that can win against the human world champion team in soccer…”

Page 39: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Categorias do Robocup

• Simulation league

• Small-size robot league (f-180)

• Middle-size robot league (f-2000)

• Four-legged robot league

• Humanoid league

This league focuses on the issues of multi-agent cooperation with a hybrid centralized/distributed system.

This is one of the oldest fleet in RoboCupSoccer

All sensors are on-board. Robots can use wireless networking to communicate

Challenges include vision, self-localization, planning, and multi-agent coordination.

Biped autonomous humanoid robots play in "penalty kick" and " 2 vs. 2" matches and "Technical Challenges".

Page 40: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Simulador• Pode ser baixado do site:

http://www.robocup.org/

• Software Livre para plataforma Linux

Page 41: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Arquitetura do Robocup

• Servidor Robocup

• Monitor

• Times

Page 42: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Time desenvolvido (Cliente 1)Formado por um ou mais

Jogadores

Time desenvolvido (Cliente 1)Formado por um ou mais

Jogadores

Time desenvolvido (Cliente 1)Formado por um ou mais

Jogadores

Time desenvolvido (Cliente 1)Formado por um ou mais

Jogadores

Time desenvolvido (Cliente 1)Formado por um ou mais

Jogadores

Time desenvolvido (Cliente 1)Formado por um ou mais

Jogadores

Time desenvolvido (Cliente 1)Formado por um ou mais

Jogadores

Arquitetura do Robocup

Servidor Robocup(sem GUI)

Protocolo: UDP

Robocup Monitor

Page 43: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Posicionamento no campo

105 metros

68metros

Page 44: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

String recebida do Servidor (Percepções)

(see 0 ((goal r) 66.7027 33) ((flag r t) 55.581 3) ((flag p r t) 42.4804 23) ((flag p r c) 53.7587 43) ((flag g r t) 64.7442 30) ((flag g r b) 68.8003 36) ((flag t 0) 3.60555 -33 0 0) ((flag t r 10) 13.1529 -8 0 0) ((flag t r 20) 23.0868 -4 0 0) ((flag t r 30) 33.0606 -3) ((flag t r 40) 43.0465 -2) ((flag t r 50) 53.0377 -2) ((flag r t 30) 60.9036 6) ((flag r t 20) 62.8431 15) ((flag r t 10) 66.2514 24) ((flag r 0) 70.9172 31) ((flag r b 10) 76.611 37) ((flag r b 20) 83.1219 43))

Page 45: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

String recebida do Servidor (Percepções)

(see 0 ((goal r) 66.7027 33) ((flag r t) 55.581 3) ((flag p r t) 42.4804 23) ((flag p r c) 53.7587 43) ((flag g r t) 64.7442 30) ((flag g r b) 68.8003 36) ((flag t 0) 3.60555 -33) ((flag t r 10) 13.1529 -8) ((flag t r 20) 23.0868 -4) ((flag t r 30) 33.0606 -3) ((flag t r 40) 43.0465 -2) ((flag t r 50) 53.0377 -2) ((flag r t 30) 60.9036 6) ((flag r t 20) 62.8431 15) ((flag r t 10) 66.2514 24) ((flag r 0) 70.9172 31) ((flag r b 10) 76.611 37) ((flag r b 20) 83.1219 43) ,,,,,,,,,, ((player 1) 34.33 10 ) ((ball) 1 0 ))

Page 46: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

São necessário definir percepções

• Bola Perto

• Bola Campo Ataque

• Jogador com a Bola

• Jogador mais próximo

• Jogador menos marcado

• Situação do Time

• ......

Page 47: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Enviando mensagens para o servidor

• init -> incluir um jogador no jogo

• move -> movimentar um jogador no campo (antes do jogo começar)

• dash -> fazer o jogador correr

• kick -> chutar a bola

• turn -> girar o jogador

Page 48: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

• Passar Bola para o Jogador .....• Chutar bola para o Gol• Cruzar para área adversária• Tirar Bola da defesa• Posicionar-se• Driblar• Correr com bola• ........

... e definir ações

Page 49: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Robocup na prática

Page 50: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Robocup Small Size Robot League

Page 51: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Humanoid League

Page 52: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

O Futuro dos Agentes Distribuídos na

Humanidade

Page 53: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Antes, Hoje, Amanhã! E depois??

respirocyte

Page 54: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Histórico• Mark Weiser, o pai

– “Over the next twenty years computers will inhabit the most trivial things: clothes labels (to track washing), coffee cups (to alert cleaning staff to moldy cups), light switches (to save energy if no one is in the roomand) and pencils (to digitize everything we draw). In such a world, we must dwell with computers, not just interact with them."

• Ubiquitous Computing• Invisible Computing• Calm Technology• Pervasive Computing

Page 55: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Ocupava 170 m², pesava 30 Ocupava 170 m², pesava 30 toneladas, funcionava com toneladas, funcionava com 18 mil válvulas e 10 mil 18 mil válvulas e 10 mil capacitores, além de capacitores, além de milhares de resistores a relé, milhares de resistores a relé, consumindo uma potência consumindo uma potência de 150 Kwattsde 150 KwattsComo tinha vários Como tinha vários componentes discretos, não componentes discretos, não funcionava por muitos funcionava por muitos minutos seguidos sem que minutos seguidos sem que um deles quebrasseum deles quebrasse

A evolução da computação

Page 56: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Computadores pequenos

• E-Book

• Nailtop

• Nano computadores

Page 57: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Lei de Moore

Page 58: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Fundamento

• Ubiquitous Computing, Invisible Computing....• Pra quê ?• Juntar toda a humanidade em torno de um

ambiente de valor computacional agregado.• Disponibilizar acesso computacional de modo

invisível em todo lugar, o tempo todo.• O computador deixa de ser o foco e torna-se

periférico às nossas atenções.• O computador é utilizado de forma subconsciente

Page 59: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

Wearable Computer

Page 60: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

M2M

Page 61: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

One Laptop Per Children (OLPC)

Page 62: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

e para o futuro ...

Page 63: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

DúvidasDúvidas

??

Page 64: AGENTES INTELIGENTES COM JAVA Robison Cris Brito robison@utfpr.edu.br.

AGENTESINTELIGENTES

COM

JAVA

Robison Cris [email protected]

Muito Obrigado!Thank You!

¡ Muchas Gracias !Danke Schön!