Exemplos de Sistemas-Multi-Agente
Professor
Edson Emílio Scalabrin
PUCPR / PPGIA
e-mail: [email protected]
Origem dos Sistemas Multi-Agente
• EUA
• Explorava-se essencialmente a relação
existente entre arquitetura e modo de
raciocínio
• Deu origem a dois tipos de controle :
– quadro negro [Erman et al. 1980],
– BEINGS e CyC [Lenat & Guha 1990],
Atores [Hewitt 1977],
Open System [Hewitt 1991]
PUCPR/PPGIA/Edson Emílio
Scalabrin
2
Exemplo de Sistema Multi-Agente
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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
3
Exemplo de ...
continuação
– Contribuições do projeto DVMT:
• examinou-se um grande número de configurações
envolvendo sensores e agentes de processamento
• analisou-se a problemática do planejamento multi-agente
a partir de planos parciais
• definiu-se as bases dos mecanismos de cooperação e
negociação
– Influência :
• puramente norte americana
PUCPR/PPGIA/Edson Emílio
Scalabrin
4
Exemplo de Plataforma Multi-Agente
MACE
[Gasser et al. 1987]
– 1a plataforma multi-agente genérica
– 1a explicação clara a respeito de :
• como implementar um sistema de Inteligência
Artificial Distribuída, e
• quais são os componentes essenciais de uma
plataforma genérica.
PUCPR/PPGIA/Edson Emílio
Scalabrin
5
Exemplo de Plataforma ...
continuação
Introdução das trocas de mensagens dos
atores mostrou que :
– é possível implementar um sistema multi-agente
a 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
PUCPR/PPGIA/Edson Emílio
Scalabrin
6
Exemplo de Plataforma ...
continuação
Introdução das 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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
7
Exemplo de Protocolo de Negociação
Contract-Net
[Smith 1980]
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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
8
Exemplo de Protocolo ...
continuação
Origem :
– o protocolo CNET foi inicialmente aplicado a uma
rede de sensores acústicos distribuídos
– os agentes eram inteiramente cooperativos
– a seleção dos eventuais contratantes era baseada
essencialmente :
• na capacidade de processamento (cálculo) e
• na carga atual de um agente
PUCPR/PPGIA/Edson Emílio
Scalabrin
9
Exemplo de Protocolo ...
continuação
Natureza
– o protocolo CNET organiza o controle de
execução entre um programa :
• emissor de uma mensagem (agente “manager”) e
• um ou vários receptores (agentes “contractors”)
– procedural call  contract net  data driven
programming
O CNET é um dos paradigmas mais importante já desenvolvido
em IAD para a alocação dinâmica de tarefas.
PUCPR/PPGIA/Edson Emílio
Scalabrin
10
Exemplo de Protocolo ...
Chama de
ofertas
continuação
Envio de
propostas
Fases da
Negociação
Análise e
Seleção de
proposta
Fechamento
do contrato
PUCPR/PPGIA/Edson Emílio
Scalabrin
11
Exemplo de Protocolo ...
continuação
Mensagem: ChamaDeOfertas
Mensagem: Proposta
Para : *
De : Explorador-25
Contrato : Perfurar-25-234
DescriçãoDeTarefa :
TipoDeTarefa : Perfurar
QualidadesRequeridas :
DeveTer : SistemaPerfuração
DevePoder : PerfurarSoloMole
FormatoDaProposta :
Posição: <Lat, Long>
QualidadesPerfuração:
{TipoDeSolo : Performance}
DataExpiração :
20 junho 2193 13:06:46
Fim ChamaDeOfertas
Para : Explorador-25
De : Perfurador-18
Contrato : Perfurar-25-234
DescriçãoProposta :
Posição: <47N, 17W>
QualidadesPerfuração :
{areia : 0,5 argila : 0,3 Xisto : 0,8}
Fim Proposta
PUCPR/PPGIA/Edson Emílio
Scalabrin
12
Exemplo de Protocolo ...
continuação
Interpretação dos tipos de mensagens :
– 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.
– propostas : os agentes contratantes potenciais tentam
"vender" seus serviços.
– alocação de um contrato (a escolha da melhor proposta) :
o agente manager está "comprando" os serviços dos
contratantes potenciais.
– aceitação do engajamento : o(s) contratante(s) vendeu(ram)
efetivamente seu(s) serviço(s).
PUCPR/PPGIA/Edson Emílio
Scalabrin
13
Exemplo de Protocolo ...
continuação
Comentários ...
– O CNET é uma generalização da abordagem
cliente/servidor
– O CNET resolve o problema de distribuição de
tarefas :
• sem utilizar uma zona de memória comum e
• sem a necessidade de identificar precisamente o
destinatário da mensagem como por exemplo nos
sistemas baseados em atores
Se nenhum agente satisfaz os critérios da chamada de oferta,
o contrato não é alocado.
PUCPR/PPGIA/Edson Emílio
Scalabrin
14
Exemplo de Protocolo ...
continuação
Limites
– O CNET não apresenta um modelo que permite
levar em conta de modo eficiente a relocação de
tarefas, seja no caso :
• de falha de sistema ou
• de problema de estrangulamento.
PUCPR/PPGIA/Edson Emílio
Scalabrin
15
Sistemas Multi-agente :
Domínios de Aplicação
Resolução distribuída
de problemas
Sistemas
multi-agente
Resolução de
problemas
Resolução de
problemas distribuídos
Simulação
multi-agente
Técnicas distribuídas
de Resolução de
problemas
Construção de
mundos hipotéticos
Robótica distribuída
Concepção kénética
de programas
PUCPR/PPGIA/Edson Emílio
Scalabrin
16
Sistemas Multi-Agente :
Resolução distribuída de problemas
Características :
– é possível efetuar uma tarefa complexa através de
um conjunto de especialistas que dispõem de
competências complementares
– é a expertise ou o modo de resolução que é
distribuído, 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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
17
Exemplo de Resolução distribuída ...
Sistema CONDOR:
[Iffenecker & Ferber 1992]
– envolvendo especialistas em concepção, montagem,
materiais, planejamento, marketing, etc.
– os especialistas são representados sob a forma de um
conjunto de agentes
– os agentes possuem sua própria expertise e intervêm
em diferentes momentos durante a realização do
produto
PUCPR/PPGIA/Edson Emílio
Scalabrin
18
Exemplo de Resolução distribuída ...
continuação
Organização do CONDOR :
– o sistema assume a forma de uma arquitetura de quadro
negro ;
– representa grupos de trabalhos :
• o grupo “qualidade” ;
• o grupo “decisão” ;
• o grupo “laboratório de pesquisa” ;
– cada grupo trabalha utilizando seu próprio protocolo de
automatização de fluxo de informação, igual o “work
flow” atual.
PUCPR/PPGIA/Edson Emílio
Scalabrin
19
Exemplo de Resolução distribuída ...
continuação
KBS-SHIP :
– 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 os
agentes.
PUCPR/PPGIA/Edson Emílio
Scalabrin
20
Exemplo de Resolução distribuída ...
continuação
Flavors Paint Shop :
– um sistema de controle de processos industrial utilizado
para pintar caminhões.
– Problema : na saída de uma linha de montagem
• os caminhões devem ser pintados de uma dada cor e
em função dos desejos dos clientes
• o número de postos de pintura é inferior ao número de
cores disponíveis
• a mudança de configuração dos postos eleva o
consumo de matéria e de tempo
PUCPR/PPGIA/Edson Emílio
Scalabrin
21
Exemplo de Resolução distribuída ...
continuação
Características do sistema Flavors Paint Shop :
– cada posto de pintura é um agente
– quando um posto está livre, ele aceita um novo caminhão para ser
pintado (os caminhões são colocados em uma fila de espera)
– regras de escolha:
• pegar o primeiro caminhão da fila que requer 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 requerida
• se não há caminhão prioritário, pegar o próximo da fila e alocar ao
posto a cor requerida
PUCPR/PPGIA/Edson Emílio
Scalabrin
22
Exemplo de Resolução distribuída ...
continuação
Resultados do sistema Flavors Paint Shop :
–
–
–
–
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
PUCPR/PPGIA/Edson Emílio
Scalabrin
23
Sistemas Multi-Agente :
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 é dsitribuída sobre cada um dos nós
– a percepção distribuída (ex. DVMT)
PUCPR/PPGIA/Edson Emílio
Scalabrin
24
Exemplo de resolução distribuída de problemas ...
continuação
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
PUCPR/PPGIA/Edson Emílio
Scalabrin
25
Exemplo de resolução distribuída de problemas ...
continuação
Características dos agentes do IDEAL :
– 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 ao 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
PUCPR/PPGIA/Edson Emílio
Scalabrin
26
Sistemas Multi-Agente :
Resolução por coordenação
Problema :
– Encontrar uma solução para um problema cujo
enunciado é bem definido e o conjunto de
informações é inteiramente disponível.
PUCPR/PPGIA/Edson Emílio
Scalabrin
27
Exemplo de resolução ...
• 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
PUCPR/PPGIA/Edson Emílio
Scalabrin
28
Exemplo de resolução ...
continuação
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 relações são restrições que os agentes devem
respeitar
PUCPR/PPGIA/Edson Emílio
Scalabrin
29
Sistemas Multi-Agente :
Simulação multi-agente
Características e Utilização
– utiliza-se a simulação para tentar explicar e prever
fenômenos naturais :
•
•
•
•
física, química,
biologia, ecologia,
geografia e
ciências sociais
– os modelos são dados sob a forma de relações
matemáticas entre variáveis que representam grandezas
físicas mesuráveis no mundo real.
PUCPR/PPGIA/Edson Emílio
Scalabrin
30
Exemplo simulação ...
continuação
Presa-Predador
• dN1 = r1N1 - PN1N2
dt
• P:
• N1 e N2 :
• a:
• r1 :
• d2 :
dN2 = aPN1N2 - d2N2
dt
coeficiente de destruição (predador)
as números de presa e predadores
eficiência que os predadores convertem
os alimentos em descendentes
determina a fecundidade das presas
a taxa de mortalidade dos predadores
PUCPR/PPGIA/Edson Emílio
Scalabrin
31
Exemplo simulação ...
continuação
Problemas da simulação apenas numérica
– os modelos matemáticos ligam unicamente parâmetros
que se situam todos ao mesmo nível de análise.
– 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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
32
Exemplo simulação ...
continuação
Complexidade e realismo dos parâmetros na
simulação apenas numérica
– para ser utilizável e corresponder a realidade, as 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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
33
Exemplo simulação ...
continuaçã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 resultam de um conjunto de
tomadas de decisões individuais, que lavam em conta
os comportamentos dos outros atores do sistema
PUCPR/PPGIA/Edson Emílio
Scalabrin
34
Exemplo simulação ...
continuação
Qual é o interesse da simulação multi-agente?
É 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
PUCPR/PPGIA/Edson Emílio
Scalabrin
35
Exemplo simulação ...
continuação
Vantagens da modelagem multi-agente
– é 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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
36
Exemplo simulaçã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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
37
Exemplo simulação ...
continuação
Projeto SIMDELTA
[Cambier et al. 1992]
– 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)
PUCPR/PPGIA/Edson Emílio
Scalabrin
38
Exemplo simulação ...
continuaçã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 ;
OBS : estes fatores afetam a evolução da população e a tomada
de decisão dos pescadores.
• Os agentes são:
– baldes de peixes
– pescadores
PUCPR/PPGIA/Edson Emílio
Scalabrin
39
Exemplo simulação ...
continuação
Definição dos agentes SIMDELTA
– os biotipos
• representam porções do ambiente
– os peixes
• possuem um comportamento bastante reativo
– os pescadores
• comportamento de agentes cognitivos
PUCPR/PPGIA/Edson Emílio
Scalabrin
40
Exemplo simulação ...
continuação
Ambiente = Biotipos
Conexões entre biótipos mudam
em função do nível das águas
PUCPR/PPGIA/Edson Emílio
Scalabrin
41
Exemplo simulação ...
continuação
Para cada biotipo :
– 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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
42
Exemplo simulação ...
continuação
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 biotipos
PUCPR/PPGIA/Edson Emílio
Scalabrin
43
Exemplo simulação ...
continuação
Testes feitos sobre SIMDELTA
• estudo sobre a dinâmica de uma população de peixes em
função de um esforço de pesca cada vez maior.
• dados para a simulação :
– o comportamento de peixes de água doce e
– os conhecimentos dos biologistas a respeito da
reprodução, crescimento, migração e mortalidade
dos peixes
PUCPR/PPGIA/Edson Emílio
Scalabrin
44
Exemplo simulação ...
continuaçã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) e
 o desenvolvimento e a concentração das funções urbanas
em diferentes níveis, durante um período de tempo
(+/- 2000 anos)
PUCPR/PPGIA/Edson Emílio
Scalabrin
45
Exemplo simulação ...
continuaçã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.
– os recursos correspondem o potencial que uma população
tem para explorar a produtividade levando em conta as
possibilidades técnicas ou as atividades de um povoado vizinho
PUCPR/PPGIA/Edson Emílio
Scalabrin
46
Exemplo simulação ...
continuação
Agentes do SIMPOP
– cada lugar é representado por um agente
“cidade”, que pode ser um povoado ou uma
metrópole
– as características das cidades
• número de habitantes,
• riqueza econômica e
• funções (agricultura, economia, indústria,
administração).
PUCPR/PPGIA/Edson Emílio
Scalabrin
47
Exemplo simulação ...
continuaçã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.
PUCPR/PPGIA/Edson Emílio
Scalabrin
48
Exemplo simulação ...
continuaçã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 ;
– as transferências se exprimem sob a forma de mecanismos de
ofertas e demandas entre as cidades ;
– certas cidades tendem a crescer e vários fenômenos locais vão
reforçar as diferenças entre elas, de tal maneira, a formar uma
espécie de “hierarquia” de cidades (seu tamanho e sua riqueza).
PUCPR/PPGIA/Edson Emílio
Scalabrin
49
Download

continuação