Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: [email protected].

87
Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: [email protected]

Transcript of Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: [email protected].

Page 1: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Sistemas

Multiagentes

Luis Otavio Alvares (II-UFRGS)

e-mail: [email protected]

Page 2: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Sistemas Multiagentes Reativos

• Características• Modelos• Ambientes• Exemplos

Page 3: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Motivação para o estudo de SMA Reativos

• Precisamos de agentes complexos para realizar tarefas complexas ou podemos realizar uma tarefa complexa através de interações de muitos agentes simples?

• exemplo clássico: colônia de formigas

Page 4: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Características dos agentes reativos

• não há representação explícita do ambiente nem de outros agentes

• não há memória das ações (histórico)• organização etológica• comportamento simples do tipo estímulo-

resposta• comunicação através do ambiente pela

propagação de sinais

Page 5: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Modelos de SMA Reativos

• Funcionalidade Emergente (Luc Steels)

• Eco-resolução (Jacques Ferber)

• PACO (Yves Demazeau)

Page 6: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Modelo da Funcionalidade Emergente

- Baseado na arquitetuta de subsunção (subsumption architecture, Brooks 86)

Módulo superior

Módulo inferior

- Cada módulo é um autômato de estado finito

- Realização de vários robôs reais

Page 7: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Exemplo: robôs mineradores (Steels)

Um conjunto de robôs deve procurar e coletar minerais e levá-los para a base central.

Page 8: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Comportamento do Robô

1- Evitar obstáculo2- Se perceber a base central e estiver carregado, descarregar3- Se perceber um mineral e não estiver carregado, pegá-lo4- Realizar movimento aleatório

Page 9: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Projeto do robô

Page 10: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Comportamento do robô 2

1- Evitar obstáculo2- Se perceber a base central e estiver carregado, descarregar3- Se perceber um mineral e não estiver carregado, pegá-lo4- Se estiver carregado, seguir maior gradiente5- Realizar movimento aleatório

Page 11: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Projeto do robô 2

Page 12: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Obervações:

• O robô 2 não apresenta nenhuma forma de cooperação

• Não permite retornar ao local da jazida de mineral

• Como melhorar isto?

Page 13: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Robô 3

1- Evitar obstáculo2- Se perceber a base central e estiver carregado, descarregar3- Se perceber um mineral e não estiver carregado, pegá-lo4- Se estiver carregado, seguir maior gradiente, deixando uma pista5- Se encontrar uma pista e estiver descarregado, seguir na direção do menor gradiente6- Realizar movimento aleatório

Page 14: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.
Page 15: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Interpretação dos resultados:

O Robô 3 possui um mecanismo simples de manutenção e compartilhamento de informação, utilizando o ambienteComo memória

64 robôs - melhor resultado (1.113 ciclos)média - 3.351 ciclos

maior nro robôs => maior chance de encontrar o minerais

mecanismo de criação de pistas: espécie de catalizador

variações entre populações próximas: pelo que acontece quando os depósitos ficam esgotados

Page 16: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Robô 4

1- Evitar obstáculo2- Se perceber a base central e estiver carregado, descarregar3- Se perceber um mineral e não estiver carregado, pegá-lo4- Se estiver carregado, seguir maior gradiente deixando uma pista5- Se encontrar uma pista e estiver descarregado, seguir na direção do menor gradiente, retirando a pista6- Realizar movimento aleatório

Page 17: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.
Page 18: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Interpretação dos resultados

• Perda evidente de desempenho para população > 70 robôs

• O que perde em eficiência, ganha em predição (não há grandes variações entre populações próximas)

• Perda de eficiência: após um robô ter deixado o mineral na base, há forte probabilidade de outro robô ter encontrado a pista e a ter seguido, retirando a pista.

• Em vez de um mecanismo de compartilhamento de informação obtivemos um mecanismo de transferência de informação

Page 19: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Robô 5

1- Evitar obstáculo2- Se perceber a base central e estiver carregado, descarregar3- Se perceber um mineral e não estiver carregado, pegá-lo4- Se estiver carregado, seguir maior gradiente deixando duas pistas5- Se encontrar uma pista e estiver descarregado, seguir na direção do menor gradiente, retirando uma pista6- Realizar movimento aleatório

Page 20: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.
Page 21: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Interpretação do resultado

média: 3.519 ciclosmínimo: 1.075 ciclosmelhor solução para população < 85 robôs

problema para mais de 85 robôs:- deformação das pistas: um robô que retorna se encontra comoutros que vão para o mineral

- verdadeiros bloqueios, engarrafamentos, próximo à base central

Page 22: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Modelo da Eco-Resolução(Jacques Ferber)

Page 23: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Eco-Resolução

Técnica de resoluç ão de problemas

Um problema é decomposto em um conjunto de eco-agentes

Cada eco-agente possui um objetivo (atingir um estado de satisfação) e dois comportamentos gerais:- de satisfação: procura atingir seu estado de satisfação- de fuga: de outro agente que o está “agredindo”

Page 24: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Exemplo: PENGI

Agre e Chapman: inviável com algoritmo de planejamento

Page 25: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

PENGUI: Comportamento dos agentes

ABELHAS:- estado de satisfação: matar o pingüim- comportamento de satisfação: ir em direção ao pingüim

PINGÜIM:- estado de satisfação: não haver mais diamantes a pegar- comportamento de satisfação: ir em direção ao diamante mais próximo- comportamento de fuga: ir para uma casa o mais longe possível das abelhas. Ou para a mais próxima, se há um cubo de gelo adjacente, na direção da abelha

Page 26: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

PENGUI (cont.)

Comportamento “inteligente”

- parece que o pingüim é inteligente, pois muitas vezes mata a abelha com cubos de gelo

- não há nenhuma atividade de “caça às abelhas”

- nós é que consideramos em tudo uma intencionalidade, que muitas vezes não existe

Page 27: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Exemplo: Quebra-cabeça de 8

Page 28: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Abordagem clássica

- abordagem clássica: orientada a estados (algorimo A* e variantes) - limitada

Page 29: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Exemplo: Quebra-cabeça de 8 (cont.)

- mudança de enfoque para abordagem orientada a agentes

- cada peça será um agente

- a escolha do movimento de uma peça (agente)será baseada:- na distância do seu objetivo- na distância do “branco”

- ordem de resolução:

Page 30: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Exemplo: Quebra-cabeça de 8 (cont.)

- comportamento de satisfação: ir para a casa mais próxima do objetivo. Se houver duas casas eqüidistantes, ir para a mais próxima do branco- comportamento de fuga: ir para o seu objetivo, se for adjacente. Senão, ir para a casa mais próxima do branco. Se houver duas casas eqüidistantes, ir para a mais próxima do seu objetivo. Restrições: não ir para a casa que é o do agressor e não ir para a casa que é o objetivo do antecessor do agressor na ordem de preenchimento.

Page 31: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Problema do canto

H

A M

D B C E

N

F O G

J K I L

H

A M

D B C E

N

F O G

J K I L

H

A M

D B C

E N

F O G

J K I L

H

A M

D B C

E

N

F

O

G

J K I L

H

A

M

D B C

E

N

F

O

G

J K I L

Movimento deSatisfação

Movimento de Fuga

Movimento Inválido

Restrição a umMovimento Inválido

Page 32: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Exemplo: Quebra-cabeça de 8 (cont.)

- resultados experimentais até 899 peças (30x30) (Drogoul 93)

- validade para qualquer tamanho de jogo

- validade mesmo para tabuleiro retangular

Page 33: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Modelo PACO (Y. Demazeau)

Em vez de considerar a solução de um problema como o resultado da minimização de uma função global deenergia

simplesmente expresse o problema como

o estado de equilíbrio de um conjunto de agentesque interagem entre si e com o ambiente através deforças

Page 34: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Modelo PACO (cont.)

Técnica de resolução de problemas

Um problema é definido como um conjunto de agentesque tentam encontrar um estado de equilíbrio

Os agentes são caracterizados por campos:- de percepção (o que ele percebe do ambiente)- de comunicação (agentes que o influenciarão na

execução de uma ação )- de força (agentes sobre os quais ele pode agir)

Page 35: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Modelo PACO (cont.)

O comportamento do agente é baseado num ciclo:

regulagem e aquisição- definição dos campos de percepção e comunicação

processamento- cálculo das forças exercidas sobre o agente

regulagem e ação - cálculo da nova posição do agente

Page 36: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Exemplo: Generalização Cartográfica

Processo de abstração usado quando a escala do mapa é reduzida.

Envolve modificação dos dados de modo quepossam ser representados em um espaço menor,preservando da melhor forma possível os aspectos geométricos e descritivos.

A maioria dos mapas em pequenas e médiasescalas são obtidos por generalização degrandes escalas.

Page 37: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Generalização Cartográfica

Processo de abstração usado quando a escala do mapa é reduzida.

A maioria dos mapas em pequenas e médias escalas são obtidos por generalização de grandes escalas.

ex: França - mapa básico: 1/25.000 generalizados: 1/50.000

1/100.000

Envolve modificação dos dados de modo que possam ser representados em um espaço menor, preservando da melhor forma possível os aspectos geométricos e descritivos.

Page 38: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Generalização Cartográfica

• Dificuldade: escolher como representar um número suficiente de objetos geográficos numa superfície reduzida, usando símbolos que preservem a identificabilidade do objeto

• Numerosas modificações nos dados são necessárias. Exemplo:

Page 39: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Generalização Cartográfica

Page 40: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Generalização Cartográfica

Fatores que influenciam a generalização:

•Escala•Objetivo do mapa•Simbolização•Meio de saída

Page 41: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Generalização Cartográfica

Automatização

• abordagem algorítmica• sistemas baseados em conhecimento

problema: independência de contexto

solução: sistemas multiagentes reativos

Page 42: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

O modelo proposto

• entradas: - dados oriundos de um BD Geográfico (classe do objeto, coordenadas, etc…)-características da saída desejada

• processamento: baseado num modelo de forças eletrostáticas de atração e repulsão

• saída: mapa

Page 43: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

O Modelo Proposto

Agentes: cada ponto, representado no BD por suas

coordenadas, corresponde a um agente no modelo

Pré-ordem: importância do objeto (massa)

Grupo natural: agentes associados a um mesmoponto geográfico

Grupo artificial: agentes com topologia comum

Page 44: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

O Modelo Proposto

Interações: baseadas em forças

• Força de repulsão entre agentes• Força de acompanhamento integral• Força de acompanhamento proporcional• Força de retorno à posição original• Troca de simbologia

Page 45: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

O Modelo Proposto

Page 46: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

O Modelo Proposto

Page 47: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Resultados Obtidos

Page 48: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Outros exemplos de SMA Reativos

• Aplauso

• MMAS

Page 49: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Third Iberoamerican Workshop on DAI MAS - 2000

Synthesising Applause Using Multi-

Agent Systems

Francis Van Aeken (LEIBNIZ-IMAG)

Luis Otavio Alvares (UFRGS)

Page 50: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Sumário

• Música e IA / SMA

• Aplauso

• Palma simples

• Síntese estocástica

• Síntese com SMA

Page 51: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Música e IA / MAS

• a música tem sólidos fundamentos matemáticos e científicos

• musicalidade x inteligência: – a música toca a essência do ser humano e é pouco

compreendida– é fácil construir programas para produzir “música correta” , mas

a saída destes programas é pobre na qualidade difícil de definir denominada musicalidade

– Como no caso da inteligência, os computadores estão longe de igualar o ser humano em competência musical

• orquestra, conjunto x agentes: um grupo de agentes em interação

Page 52: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Aplauso

• Aplauso x música: é som produzido por alguém utilizando as mãos como instrumento. Envolve ritmo, pode ser sincronizado,...

• componentes do aplauso• O instrumento• O executor• O conjunto• A peça

• Tipos de aplauso: musical, em sala, em auditório

Page 53: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Palma simples

Page 54: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Síntese Estocástica

• Fácil de implementar

• Resultados– como pipoca estourando

Page 55: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

MAS Synthesis

• Agente simples: bate palmas com um período fixo

• Múltiplos agentes– Uma coleção de agentes reativos simples:

para cada agente a duração e os valores médios para amplitude, “pitch” e período são determinados aleatoriamente

– resultado: surpreendentemente natural

Time

ID A

ge

nt

Page 56: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Síntese c/ SMA : múltiplos agentes sincronizados

• Modelo: – sincronização por escuta – blackboard– ajuste:

• calcula o período médio de cada par de palmas encontrado• calcula o atraso médio entre a palma corrente e a última

palma de cada par• ajusta o período médio e o timeAtNextClap usando o período

médio e o atraso

Page 57: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Síntese c/ SMA : múltiplos agentes sincronizados

Resultados– muito satisfatórios: os agentes sincronizam-se

facilmente em período e fase

Time

ID A

ge

nt

timing of multiple synchronising agents

Page 58: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Síntese c/ SMA : múltiplos agentes sincronizados

Modelo: – agentes ouvem apenas os 2 vizinhos

– mesmo algoritmo – exceto que só os dois vizinhos são percebidos

Page 59: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Síntese c/ SMA : múltiplos agentes sincronizados

Resultados:– Difícil de sincronizar – sincronização local e não

global

Time

ID A

ge

nt

timing of multiple myopic synchronising agents

Page 60: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Ambientes de desenvolvimento de SMA Reativos

Page 61: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Ambientes de desenvolvimento de SMAR

SIEME - Simulateur Evenementiel Multi-Entités [Magnin 96]

Totalmente integrado ao sistema de programação Smalltalk

Utilizado na simulação de robôs móveis

Toda a especificação é realizada diretamente em Smalltalk,utilizando classes pré-definidas.

Page 62: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

O Sistema de simulação Swarm: Uma ferramenta para construir simulações

Multiagentes

Nelson Minar, Roger Burkhart, Chris Langton

Instituto Santa Fé - Novo México

Page 63: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

• Abordagem computacional para sistemas complexos

• Histórico

• Principais elementos

• Orientação à objetos

• Arquitetura do sistema

• Bibliotecas

Page 64: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Abordagem computacional para sistemas complexos

• Construção de software complicada

• Pesquisadores escrevem o software

• Software muito específico

• Duplicação de esforços

• Software construído sem métodos da engenharia de software

Page 65: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Swarm - Histórico

• Iniciou em 1994 - Chris Langton - Instituto Santa Fé - Novo México.

• Objetivo: Criação de um conjunto de fer-ramentas para a construção de simuladores.

• Versão beta em 95. Versão 1.0 em 1997

• Futuro: 95/NT - Cliente servidor - Paralelismo

Page 66: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Simulação de eventos discretos multi-agentes

• Coleção de agentes independentes interagindo através de eventos

• Pode ser utilizado em diversas áreas

• Unidade básica: agente

• Agente: entidade que pode gerar eventos que afetam a si mesmos e a outros agentes

• Ex: ecologia: coiotes, coelhos e cenouras

Page 67: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Tipos de agentes

Page 68: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Swarm - Schedule

• Schedule- define os processos que ocorrerão em um intervalo de tempo

• É uma estrutura que combina as ações em uma ordem específica

• Exemplo de ações:

a) Coelhos comem cenouras

b) Coelhos escondem-se dos coiotes

c) Coiotes comem coelhos

Page 69: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Exemplo: Ecologia

Page 70: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Swarm

• Componente fundamental: Objeto swarm• Um agente é modelado a partir do objeto

básico swarm• Um agente pode ser constituído de uma

coleção de agentes (estrutura hierárquica)• Conjunto de agentes + schedule de ativi-

dades• Podem ser criados e destruídos durante a

simulação

Page 71: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Simulação de eventos discretos

Page 72: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Hierarquia

Page 73: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Tecnologia orientada a objetos

• Implementado em Objective C

• Classes: representam tipo de agentes

• Objetos: um agente específico

Os agentes derivam da classe swarm

Page 74: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

• Métodos: comportamentos do agente.

Ex: Coelhos escondem-se dos coiotes

Page 75: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Sistema Swarm- Framework

• Bibliotecas de classes

defobj,collection,random,tkobj (uso geral)

activity,objectbase,simtools (específicas)

Page 76: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Observação da simulação“Probe”

• Capacidade de que cada objeto possa ser observado

• Os estados podem ser lidos ou alterados e os métodos chamados de uma forma genérica, sem requerer código do usuário

• Probes são utilizadas para fazer com que ferramentas de análise funcionem de forma genérica

Page 77: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Probe

Page 78: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Probes e GUI

• Probes podem ser utilizadas para a comunicação em tempo real com o objeto através de uma janela.

Page 79: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Arquitetura do sistema

Page 80: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Estrutura da simulação

• Modelo– swarm “habitado” por grupo de agentes– schedule de atividades– Normalmente “vivem”em um ambiente

(agente)– No swarm não existe um ambiente pré-

definido

Page 81: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Estrutura da simulação

Page 82: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Bibliotecas de simulação

• objectbase– Contém classes base para criação de agentes.

• activity– Contém o mecanismo de simulação (controle de

tempo, dependência de tempo entre eventos).

– Estrutura de dados do “schedule”.

– Eventos simultâneos (ordem arbitrária, randômica, ou paralelismo).

• simtools– Dados estatísticos, análise, gráficos, etc.

Page 83: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Bibliotecas específicas

• space– Suporte a espaços bi-dimensionais

• ga– Suporte a algoritmos genéticos

• neuro– Suporte a redes neurais

Page 84: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Swarm (conclusão)

• Possibilidade de criação de sistemas com-plexos

• Simplifica a construção de modelos

• Possibilita que os pesquisadores se concentrem nas especificidades de seus próprios domínios

• Exemplos de áreas de aplicação: química, economia, física, antropologia, ecologia, ciências políticas

Page 85: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

sistema SIMULA [Frozza 97]

Desenvolvido para fins didáticos

objetivo: diminuir o esforço de programação para desenvolver sistemas multiagentes reativos

definição de aplicação:- tipos de agentes- comportamento dos agentes- disposição inicial dos agentes no ambiente

Page 86: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Simula (cont.)

Especificar os

tipos de agentes

Especificar a disposição

dos agentes no ambiente

Especificar as regras

de comportamento

dos agentes

Gerar código com

definições do usuário

Processar resolução

do problema

USUÁRIO

Solução do

Problema

código

gerado

comportamentos

pré-definidos

Page 87: Sistemas Multiagentes Luis Otavio Alvares (II-UFRGS) e-mail: alvares@inf.ufrgs.br.

Simula (cont.)

Regras de Comportamento

pré-condição: condição para execução do comportamentoação: comportamento a ser executadopós-condição: atualização de variáveisprioridade: ordem para execução das regras