agentes inteligentes com java robison cris brito robison@utfpr.edu.br

Post on 22-Apr-2015

115 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

AGENTESINTELIGENTESCOM

JAVARobison Cris Britorobison@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

Visão que o mundo tem dos Agentes Inteligentes!

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.

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

Tipos de Agentes

• Agentes Reativos

• Agentes Cognitivos

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

Agente Reativo

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

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

Agente Cognitivo

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.

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.

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.

Exemplo de Aplicativo

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

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”

Ferramenta para trabalhar com AgentSpeak(L)

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

Matriz

Arquiteturas de Sistemas Multiagentes

Hierarquia

Arquiteturas de Sistemas Multiagentes

Federação

Arquiteturas de Sistemas Multiagentes

Congregação

Arquiteturas de Sistemas Multiagentes

Coalisão

Arquiteturas de Sistemas Multiagentes

Hologarquia

Arquiteturas de Sistemas Multiagentes

Composição

Arquiteturas de Sistemas Multiagentes

Sociedade

Arquiteturas de Sistemas Multiagentes

Ferramenta para Organização Social

Moise+

Organização em XML

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

Por que Java?

Por que Java

• Java is Everywhere

• Portabilidade

• Segurança

• Java – Independente de Plataforma

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

Estudo de CasoRobocup

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…”

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".

Simulador• Pode ser baixado do site:

http://www.robocup.org/

• Software Livre para plataforma Linux

Arquitetura do Robocup

• Servidor Robocup

• Monitor

• Times

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

Posicionamento no campo

105 metros

68metros

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))

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 ))

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

• ......

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

• 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

Robocup na prática

Robocup Small Size Robot League

Humanoid League

O Futuro dos Agentes Distribuídos na

Humanidade

Antes, Hoje, Amanhã! E depois??

respirocyte

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

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

Computadores pequenos

• E-Book

• Nailtop

• Nano computadores

Lei de Moore

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

Wearable Computer

M2M

One Laptop Per Children (OLPC)

e para o futuro ...

DúvidasDúvidas

??

AGENTESINTELIGENTES

COM

JAVA

Robison Cris Britorobison@utfpr.edu.br

Muito Obrigado!Thank You!

¡ Muchas Gracias !Danke Schön!

top related