Title: Modelagem orientada a agentes
1Modelagem orientada a agentes
- Professores
- Edson Scalabrin ?Ph.D? Marcos Shmeil
?Ph.D? - Pontifícia Universidade Católica do Paraná (
PUCPR ) - Programa de Pós-Graduação em Informática Aplicada
( PPGIA ) - LAboratório de Sistemas Inteligentes ( LASIN )
- e-mail scalabrin, shm _at_ ppgia.pucpr.br
2Princípios dos sistemas multi-agentes evolução
histórica da área
- Primeiras tentativas
- Idade clássica
- Influência da vida artificial
- Idade moderna
3Princípios dos sistemas multi-agentes
Primeiras tentativas
- Origem EUA
- Os primeiros sistemas exploraram essencialmente a
relação existente entre arquitetura e modo de
raciocínio - Originando dois tipos de controle
- quadro negro Erman et al. 1980,
- BEINGS e CyC Lenat Guha 1990, Atores Hewitt
1977, Open System Hewitt 1991
4Princípios dos sistemas multi-agentes Idade
clássica
- DVMT (Distributed Vehicule Monitoring Test)
- Projeto Massachusetts Lesser e Corkill
1983 - a percepção e o reconhecimento de
situações/configurações distribuídas - Funcionamento
- vários sensores enviam informações aos agentes
de processamento, implementados sob a forma de
quadro negro - Problema
- obter, através dos agentes, um estado coerente
de uma situação de tráfego rodoviário e então
identificar e monitorar os veículos a partir das
informações -- redundantes, contraditórios e
ruidosas -- vindas dos sensores.
5Princípios dos sistemas multi-agentes Idade
clássica
- DVMT
- Contribuição
- foi examinado um grande número de configurações
envolvendo sensores e agentes de processamento - foi analisada a problemática do planejamento
multi-agente a partir de planos parciais - foi definido as bases dos mecanismos de
cooperação e negociação - Influência
- puramente norte americana
6Princípios dos sistemas multi-agentes Idade
clássica
- MACE (1a plataforma Multi-Agente genérica)
- Gasser et al. 1987
- primeira explicação clara a respeito de
- como implementar um sistema de IAD, e
- quais são os componentes essenciais de uma
plataforma genérica para o desenvolvimento de
sistemas deste tipo de sistema.
7Princípios dos sistemas multi-agentes Idade
clássica
- MACE
- Introduziu as trocas de mensagens dos atores nos
sistemas de IAD, mostrado que - é possível implementar um sistema multi-agentea
partir da noção de troca de mensagens - a troca de mensagens não é suficiente
- uma organização social não pode-se reduzir a um
simples mecanismo de comunicação - é necessário uma representação dos outros, de tal
modo que um agente possa raciocinar sobre suas
competências e suas crenças
8Princípios dos sistemas multi-agentes Idade
clássica
- MACE
- Deve-se salientar as diferenças entre
- competência efetiva (i.e. qualidade de quem é
capaz de fazer uma determinada coisa) - habilidade diretamente aplicável (i.e. qualidade
de hábil) - conhecimento que um agente tem sobre sua própria
competência. - Todas as plataformas de desenvolvimento de SMA
são descendentes diretamente ou indiretamente de
MACE.
9Princípios dos sistemas multi-agentes Idade
clássica
- Contract Net Smith 1980
- Origem
- protocolo inicialmente aplicado a uma rede de
sensores acústicos distribuídos - os agentes são inteiramente cooperativos
- a seleção dos eventuais contratantes é baseada
essencialmente sobre - a capacidade de tratamento (cálculo) e
- a carga atual de um agente
10Princípios dos sistemas multi-agentes Idade
clássica
Metáfora Trata-se de um sistema oportunista de
alocação de tarefas baseado no princípio da
negociação de contrato do tipo mercado público, e
a seleção mútua das partes envolvidas.
11Princípios dos sistemas multi-agentes Idade
clássica
Natureza Contract Net organiza o controle de
execução entre um programa emissor (agente
manager), e um ou vários receptores (agentes
contratantes), Procedural call ? Contract Net ?
Data Driven Programming Isto faz do Contract Net,
um dos paradigmas mais importante já desenvolvido
em IAD para a alocação de tarefas
descentralizadas.
12Princípios dos sistemas multi-agentes Idade
clássica
Mecanismo Fases da negociação chamada de
ofertas, análise de respostas, escolha de
um contratante, comprometimento do
contratante.
13Princípios dos sistemas multi-agentes Idade
clássica
- Exemplo de utilização do Contract Net
Em uma chamada de ofertas, o agente manager tenta
"comprar serviços de outros agentes a um preço
(freqüentemente um restrição de tempo) no máximo
igual o especificado na chamada de ofertas. Em
resposta às chamadas de ofertas, os agentes
contratantes potenciais tentam "vender" seus
serviços. A alocação de um contrato (a escolha
da melhor proposta), significa que o agente
manager está "comprando" os serviços dos
contratantes potenciais. A aceitação do
engajamento, significa que o(s) contratante(s)
vendeu(ram) efetivamente seu(s) serviço(s).
14Princípios dos sistemas multi-agentes Idade
clássica
Contract Net é uma generalização da abordagem
cliente/servidor, visto que todo agente pode
assumir ao mesmo tempo o papel cliente e
servidor. Ele resolve o problema de repartição
de tarefas sem utilizar uma zona de memória
comum e ter a necessidade de identificar
precisamente o destinatário da mensagem como no
caso dos sistemas baseados em atores Se nenhum
agente satisfaz os critérios da chamada de
oferta, o contrato não será alocado.
15Princípios dos sistemas multi-agentes Idade
clássica
Limites Ele não apresenta um modelo que permite
levar em conta de modo eficiente a relocação de
tarefas, seja no caso de uma falha qualquer de
sistema ou de um gargalo de estrangulamento.
16Princípios dos sistemas multi-agentes
Influência da vida artificial
- A problemática da vida artificial foi lançada por
Langton (1988), como o estudo da vida tal como
ela poderia ser, e não da vida tal como ela é. - Trata-se de abstrair os princípios subjacentes de
uma organização de seres vivos e de implementar
estes princípios em um ambiente computacional no
intuito de poder estudar e testar estes
princípios.
17Princípios dos sistemas multi-agentes
Influência da vida artificial
- Os principais temas abordados são
- a análise da dinâmica de fenômenos complexos
utilizando equações diferencias não lineares - a evolução de populações através da utilização de
algoritmos genéticos - a implementação de criaturas autônomas capazes
de agir e sobreviver em um ambiente não
inteiramente especificado - o estudo de fenômenos coletivos a partir da
interação de um conjunto de agentes reativos
18Princípios dos sistemas multi-agentes Idade
moderna
- Escola IAD norte americana
- agrupada em torno de Victor Lesser Lesser
Corkill 1983, discípulos de Victor Ed. Durfee
Durfee et al. 1987, Susan Conry Conry et al.
1988 - isolados Les Gasser Gasser 1991, M. Huhns
Huhns 1987, Katia Sycara Sycara 1989. - esta escola ficou, na sua quase totalidade,
restrita a escola cognitiva e as ciências da
organização. - as pesquisas envolvendo agentes reativos é quase
inexistente.
19Princípios dos sistemas multi-agentes Idade
moderna
- Formalização lógica dos agentes racionais
autônomos trabalhando coletivamente ou não - trabalhos iniciados por Cohen e Levesque,
formalizando as intenções e crenças dos agentes a
partir de lógicas modais. - Uma dimensão prática às formalizações de Cohen e
Lesvesque foi dada por Y. Shoham Shoham 1993
e Georgeff Rao Georgeff 1992
20Princípios dos sistemas multi-agentes Idade
moderna
- Formalização lógica ...
- Europa principais nomes
- J. Galliers Galliers 1988, E. Werner Werner
1989, C. Castefranchi e R. Conte Conte et al.
1991, Wooldridge e Jennings Wooldridge
Jennings 1994, Coelho Corrêa Coelho 1993 - Québec
- Chaib-Draa Chaib-Draa 1989
21Princípios dos sistemas multi-agentes Idade
moderna
- Atos da fala e SMA
- standard KQML Finin et al. 1994
- IAD e teoria de jogos
- J. Rosenschein Zlotkin Rosenschein 1992 e
Rosenschein Zlotkin 1994 - Redes de Petri e SMA
- iniciativa essencialmente francesa J. Ferber
Ferber Magin 1994, etc.
22Princípios dos sistemas multi-agentes Idade
moderna
- Linguagens de atores e SMA
- Japão M. Tokoro Maruichi el al. 1990, T.
Ishida Ishida 1989, e A. Yonezawa
Yonezawa 1990 - França P. Carle e J. Ferber Ferber et al.
1993
Trata-se da tentativa de integrar as pesquisas
feitas sobre o paralelismo em geral e as
linguagens de atores aos conceitos e objetivos
dos SMA.
23Princípios dos sistemas multi-agentes Idade
moderna
- Agentes reativos
- R. Brooks, L. Steels, J-L. Deneubourg, J. Ferber
e Drogoul, Y. Demazeau, P. Bourgine.
A abordagem reativa situa-se essencialmente no
contexto da Vida Artificial
24Princípios dos sistemas multi-agentes Domínios
de Aplicação
Resolução distribuída de problemas
Resolução de problemas
Resolução de problemas distribuídos
Técnicas distribuídasde Resolução de problemas
Sistemasmulti-agente
Simulação multi-agente
Construção demundos hipotéticos
Robótica distribuída
Concepção kénéticade programas
25Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Resolução distribuída de problemas
- Características
- é possível efetuar uma tarefa complexa através de
um conjunto de especialistas dispondo de
competências complementares - é a expertise ou o modo de resolução que são
distribuídos, sem que o domínio o seja - Exemplos
- Construção de um carro de corrida, especialistas
- Motores, escolha e teste de pneumáticos, chassis
e suspensão, combustível, gestão da corrida
interface com o piloto.
26Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Resolução distribuída de problemas
- Outros exemplos
- diagnóstico médico
- concepção de produto industrial Iffenecker
Ferber 1992 - aquisição de conhecimentos e diagnóstico de redes
Jennings et al. 1995 - reconhecimento de formas Demazeau et al. 1994
- a compreensão da linguagem natural Sabah 1990
- sistema de controle e monitoramento de uma rede
de telecomunicações Weihmayer Brandau 1990 - etc..
27Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Resolução distribuída de problemas
- Outros exemplos
- Sistema CONDOR (feito por Iffenecker)
- envolvendo especialistas em concepção, montagem,
materiais, planejamento, marketing, etc. - estes especialistas são representados sob a forma
de um conjunto de agentes - todos estes agentes possuem sua própria expertise
e intervêm em diferentes momentos durante a
realização do produto
28Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Particularidades do CONDOR
- a organização geral do sistema assume a forma de
uma arquitetura de quadro negro - a organização representa grupos de trabalhos
- o grupo qualificação
- o grupo decisão
- o grupo laboratório de pesquisa
- estes grupos trabalham utilizando seus próprios
protocolos de automatização de fluxo de
informação, igual o work flow atual.
29Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Outro exemplo, KBS-SHIP
- Trata-se de um sistema dedicado ao monitoramento
e manutenção de equipamentos de um navio
comercial. - O sistema integra vários sistemas especialistas
- pilotagem, carregamento de frete, manutenção dos
equipamentos eletrônicos, diagnóstico de falhas,
etc. - Eles operam sobre uma arquitetura SMA, controlado
por um Expert encarregado da gestão das
comunicações via uma rede Ethernet e da resolução
de conflitos entre agentes.
30Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Outro exemplo, Flavors Paint Shop
- Trata-se de um sistema de controle de processos
industrial, utilizado para pintar caminhões. - Problema
- na saída de uma cadeia de montagem
- os caminhões devem ser pintados de uma cor
particular, em função dos desejos dos clientes - o número de postos de pintura é inferior ao
número de cores disponíveis - isto implica, mudança de configuração dos postos
(consumo elevado de tempo e matéria)
31Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Características do sistema Continuação ...
- cada posto de pintura é um agente
- quando um posto está livre, ele aceita um novo
caminhão a ser pintado (os caminhões são
colocados em uma fila de espera) - as regras de escolha são as seguintes
- pegar o primeiro caminhão da fila que exige a
mesma cor que está disponível no momento - se não há caminhão desta cor, pegar o caminhão
mais prioritário e alocar ao posto a cor exigida - se não há caminhão prioritário, pegar o próximo
da fila e alocar ao posto a cor exigida
32Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Resultados obtidos, comparando com sistema antigo
(centralizado) - redução drástica do custo de manutenção do
sistema - redução (50) das operações de troca de pintura
- economia de um milhão de dólares por ano
- o sistema pode levar em conta, sem maiores
problemas, as falhas de postos de pintura
33Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Resolução distribuída de problemas distribuídos
- Características
- o domínio é distribuído
- os agentes podem ter competências parecidas
- Exemplos
- monitoramento de redes de energia ou de
telecomunicações, - a supervisão é repartida sobre cada um dos nós
- a percepção distribuída (ex. DVMT)
34Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Exemplo Sistema IDEAL (Onera e
Alcatel-Alsthom) - é um sistema SMA dedicado ao monitoramento e
diagnóstico de redes de telecomunicações - IDEAL compreende três tipos de agentes
- supervisor, encarregado de localizar e
diagnosticar falhas - acompanhamento, encarregado de manter a coerência
entre o estado real da rede e a visão dos agentes - operador de manutenção, encarregado de executar
testes e reparar elementos da rede
35Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Características dos agentes (continuação)
- apresentam uma arquitetura de quadro negro
- cada agente tem um conjunto de módulos
- comunicação, que gerencia os protocolos de
comunicação - expert, que contem os conhecimentos relativos a
supervisão da rede - cooperação, que gerencia as tabelas de conhecidos
(acquaintance), a representação de si e os
modelos de diálogo - visualizador, que permite um usuário, através de
uma interface gráfica, acompanhar o funcionamento
do agente e intervir se necessário - controle, que gerencia o conjunto de atividades
dos agentes
36Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Resolução por coordenação
- Problema
- Encontrar uma solução para um problema cujo o
enunciado é bem definido e o conjunto de
informações é inteiramente disponível.
37Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Exemplos
- determinar uma alocação de tarefas para uma
máquina - definir a agenda de um colega
- dar a seqüência de ações a ser executada para
sair de um labirinto ou para disparar um míssil - resolver quebra-cabeça ou demonstrar um teorema
- empilhar cubos ou componentes mecânicos
38Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Exemplo
- Eco-Resolução
- Problema empilhamento de cubos
- Iniciativa o problema é visto como um SMA
- cada cubo é um agente
- os agentes buscam incessantemente satisfazer seus
objetivos - as ligações são restrições que os agentes devem
respeitar
39Princípios dos sistemas multi-agentes Domínios
de Aplicação
Resolução distribuída de problemas
Resolução de problemas
Resolução de problemas distribuídos
Técnicas distribuídasde Resolução de problemas
SistemasMulti-agente
Simulação multi-agente
Construção demundos hipotéticos
Robótica distribuída
Concepção kénéticade programas
40Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Simulação multi-agente
- Utiliza-se a simulação para tentar explicar e
prever fenômenos naturais - física, química,
- biologia, ecologia,
- geografia e
- ciências sociais
- Modelos são dados sob a forma de relações
matemáticas entre variáveis representando
grandezas físicas mesuráveis no mundo real.
41Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Simulação multi-agente
- Exemplo Presa-Predador
- dN1 r1N1 - PN1N2 dN2 aPN1N2 - d2N2
- dt dt
- P coeficiente de destruição (predador)
- N1 e N2 as números de presa e predadores
- a eficiência que os predadores convertem os
alimentos em descendentes - r1 determina a fecundidade das presas
- d2 a taxa de mortalidade dos predadores
42Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Problemas da simulação numérica
- Separabilidade do nível analisado
- os modelos matemáticos ligam unicamente
parâmetros que se situam todos ao mesmo nível de
analise. - Ex. é impossível ligar o tamanho do efetivo as
tomadas de decisões efetuadas pelos indivíduos
Pode-se dizer, que estes níveis de análise são
isolados, à medida que é impossível fazer
corresponder os comportamentos efetuados a um
nível micro as variáveis globais mesuráveis a um
nível macro.
43Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Complexidade e realismo dos parâmetros
- para ser utilizável e corresponder a realidade,
estas equações comportam um grande número de
parâmetros difíceis a estimar e sem realismo - o coeficiente de eficiência a é bastante
pobre - Não é considerado o conjunto de comportamentos
complexos que podem ter um impacto direto sobre a
fecundidade - hierarquia e dominação,
- estratégia sexual,
- utilização do território e
- construção de abrigos.
44Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Carência qualitativa
- O que é feito com a enorme quantidade de
informações qualitativas recolhidas pelos
pesquisadores de campo e pelos naturalistas?
45Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Dificuldade em modelar as ações
- como levar em conta as ações dos indivíduos, bem
como as modificações efetivas do ambiente
decorrente de seus comportamentos ? - Em particular sabendo que, os fenômenos
coletivos são os resultados de um conjunto de
tomadas de decisões individuais, que lavam em
conta os comportamentos dos outros atores do
sistema
46Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Qual é o interesse da simulação SMA?
- é poder levar em conta
- tanto os parâmetros quantitativos
- parâmetros numéricos
- quanto as informações qualitativas
- comportamentos individuais, recorrendo
eventualmente à estratégias de raciocínio
47Princípios dos sistemas multi-agentes Domínios
de Aplicação
- a principal qualidade da modelagem multi-agente,
é a sua capacidade de integração e flexibilidade - é possível integrar na mesma modelagem, equações
diferencias e comportamentos baseados em regras
simbólicas - é fácil integrar modificações, onde cada
enriquecimento do modelo é realizado pela adição
de novas regras de comportamento, agindo a nível
de indivíduo - os indivíduos guardam suas identidades
- é possível acrescentar novos tipos de agentes,
dispondo de seus próprios modelos de
comportamento, que irão interagir com os agentes
já definidos.
48Princípios dos sistemas multi-agentes Domínios
de Aplicação
- continuação ...
- Exemplo modelagem de uma floresta.
- Pode-se introduzir novas espécies animais ou
vegetais e analisar suas interações com aquelas
já modeladas.
- os sistemas multi-agente permitem modelar
situações complexas, onde as estruturas globais
emergem das interações entre os indivíduos, -
- ou seja, fazem surgir estruturas de nível macro a
partir de modelos de nível micro.
49Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Projeto SIMDELTA Cambier et al. 1992
- trata-se de um simulador para sintetizar os
conhecimentos de um conjunto de especialistas em
- ecologia, biologia, antropologia, etc.
- conhecimentos adquiridos após vários anos de
estudos sobre sistema de pesca do delta central
do Nigéria. - Objetivo do projeto modelar informações,
- quantitativas (a evolução das enchentes)
- qualitativas (as técnicas de pesca praticadas)
50Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Características do SIMDELTA
- Permite simular, em mesmo tempo, a dinâmica da
população de peixes, incluindo - fatores biológicos e topologicos na dinâmica da
população -
- Os agentes são
- baldes de peixes
- pescadores
OBS estes fatores afetam a evolução da
população e a tomada de decisão dos pescadores.
51Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Características do SIMDELTA
- A técnica empregada permitiu a definição de três
tipos de agentes - os biótipos, representam porções do ambiente
- os peixes, possuem um comportamento bastante
reativo - os pescadores, comportamento de agentes
cognitivos
52Princípios dos sistemas multi-agentes Domínios
de Aplicação
Ambiente Biótipos Conexões entre biótipos
mudam em função do nível da água.
53Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Características do SIMDELTA
- Para cada biótipo
- uma função de recurso, indica a quantidade de
alimento disponível para uma população de peixes
em função do tempo - Baldes de peixes (agentes)
- representam conjuntos de peixes
- parâmetros estratégicos para a adaptação
- tamanho e número de ovos, processo de migração,
regime, etc.
54Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Características do SIMDELTA
- Cada pescador
- é representado por um agente cognitivo
- seu comportamento é descrito por um sistema
baseado em conhecimentos, envolvendo - uma base de dados, que contem suas crenças e sua
memória de pescador - um sistema de regras, que representa sua
estratégia cognitiva para explorar os biótipos
55Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Teste do SIMDELTA
- Estudo sobre a dinâmica de uma população de
peixes em função de um esforço de pesca cada vez
maior. - A simulação da dinâmica destes peixes é baseada
sobre - o comportamento de peixes de água doce e
- os conhecimentos dos biologistas no tocante a
- reprodução, crescimento, migração e mortalidade
dos peixes
56Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Projeto SIMPOP Bura et al. 1993
- Objetivo modelar a dinâmica de evolução de um
sistema de cidades, em particular - a gênese (formação dos seres)
- o desenvolvimento e a concentração das funções
urbanas em diferentes níveis, durante um longo
período de tempo (/- 2000 anos)
57Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Características do SIMPOP
- O ambiente é representado por um conjunto de
lugares de tamanhos e formas variadas
(essencialmente quadradas e hexagonais). - Estes elementos são caracterizados
- pela sua natureza planícies, montanhas, mares,
pântanos - pelos seus recursos naturais agricultura,
pesca, minerais - pelas vias de comunicação rios, estradas, etc.
58Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Características do SIMPOP
- Os recursos correspondem
- o potencial que uma população pode explorar
- a produtividade dependendo de fatores, tais como
- as possibilidades técnicas ou
- as atividades de um povoado vizinho
59Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Agentes do sistema
- cada lugar é representado por um agente cidade,
que pode ser um povoado ou uma metrópole - as características das cidades são
- número de habitantes,
- riqueza econômica e
- funções (agricultura, economia, indústria,
administração)
60Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Comportamento de um agente cidade
- é dado pela soma dos comportamentos de seus
habitantes - os habitantes são representados por funções
econômicas, correspondendo aos principais grupos
econômicos - Ex. em um povoado a maior parte de sua população
é associada a função agrícola.
61Princípios dos sistemas multi-agentes Domínios
de Aplicação
- Comentários
- As principais entidades do sistema são os agentes
cidade - os agentes cidade são imóveis
- as interações entre estes agentes se dão através
de transferências de - bens, valores monetários, serviços e habitantes
- estas transferências exprimem-se sob a forma de
mecanismos de ofertas e demandas entre cidades. - assim, certas cidades tendem a crescer e vários
fenômenos locais vão reforçar as diferenças entre
elas, de maneira, a formar uma espécie de
hierarquia de cidades, portando sobre seu
tamanho e sua riqueza.