Introdução aos Sistemas
Multiagentes
Patricia Tedesco
1
Ao fim da aula de hoje a gente
deve...
Relembrar o conceito de Agente
Inteligentes
 Rever suas Várias Arquiteturas
 Definir o que é um Sistema Multiagentes
 Entender quais as principais questões a
tratar no projeto de SMA

RECORDAR É VIVER....
O que é um Agente?

Qualquer entidade (humana ou artificial) que:
◦ está imersa ou situada em um ambiente (físico,
virtual/simulado)
◦ percebe seu ambiente através de sensores (ex. câmeras,
microfone, teclado, finger, ...)
◦ age sobre ele através de atuadores (ex. vídeo, autofalante, impressora, braços, ftp, ...)
◦ possui objetivos próprios
 explícitos ou implícitos
◦ escolhe suas ações em função das suas percepções para
atingir seus objetivos
4
Como descrever um Agente?

Pode ser descrito em termos de seu PAGE:
◦
◦
◦
◦
◦
P – percepções
A – ações
G – (goals) objetivos
E – (environment) ambiente
e outros agentes – nos sistemas multi-agentes
5
Agentes: Arquiteturas
De forma bem simplificada, um agente pode
ser visto como um mapeamento:
◦ seqüência perceptiva => ação
ambiente

sensores
Raciocinador
Agente
modelo do
ambiente
atuadores
6
Agente Reativo
Agente
ambiente
sensores
Como está o mundo agora?
Que ação devo escolher agora?
Regras
“condição-ação”
atuadores

Vantagens e desvantagens
◦ Regras condição-ação: representação inteligível, modular e eficiente
 ex. Se velocidade > 60 então multar
◦ Não pode armazenar uma seqüência perceptiva, pouca autonomia

Ambientes:
◦ Reflexo imprescindível em ambientes dinâmicos
◦ Acessível, episódico, pequeno
Agente reativo com estado interno
Agente
sensores
estado: como o mundo era antes
ambiente
Como está o mundo agora?
como o mundo evolui
impacto de minhas ações
Que devo fazer agora?
atuadores

Desvantagem: pouca autonomia
◦ não tem objetivo, não encadeia regras

Ambientes: determinista e pequeno
◦ Ex. Tamagotchi
Regras
“condição-ação”
Agente cognitivo baseado em objetivo
ambiente
sensores
Agente
estado: como o mundo era antes
Como está o mundo agora?
como o mundo evolui
Como ele ficará se faço isto?
impacto de minhas ações
Que devo fazer agora?
Objetivos
atuadores

Vantagens e desvantagens:
◦ Mais complicado e ineficiente, porém mais flexível, autônomo
◦ Não trata objetivos conflitantes

Ambientes: determinista
◦ ex.: xeque-mate no xadrez
Agente otimizador (utility based)
Agente
sensores
estado: como o mundo era antes
Como está o mundo agora?
ambiente
Como ele ficará se faço isto?
Este novo mundo é melhor?
Que ação devo escolher agora?
atuadores



Ambiente: sem restrição
Desvantagem: não tem adaptabilidade
Ex. motorista recifense
◦ Segurança e velocidade – conflito!
como o mundo evolui
qual é o impacto de
minhas ações
Função de Utilidade
Agente que aprende
sensores
t+1
crítico
avaliação
t
ambiente
Agente
trocas
elemento de
elemento de
execução (agente) conhecimento aprendizagem
t
atuadores



Ambiente: sem restrição
Vantagem: tem adaptabilidade (aprende)
Ex. motorista sem o mapa da cidade
objetivos de
aprendizagem
Gerador de
problemas
EM RESUMO...
IA e Agentes
IA cresceu muito nos anos 70 modelando a inteligência
individual.
 Advento das redes de computadores modificou as
necessidades!
 Inteligência como a integração dos processos de
raciocinar, decidir, aprender e planejar.
 O Modelo de Agente aparece então como catalisador...

De fato...
Mundo onde informações e conhecimentos crescem
(e mudam) rápido demais!
 Atualmente, a Computação tem a ver com...

◦
◦
◦
◦
Acesso a informações relevantes
Identificação de oportunidades
Ação no momento preciso
Manipulação de grandes volumes de informação
Assim, os sistemas da gente
precisam de...
Ubiqüidade
 Interconexão
 Delegação
 Inteligência
 Orientação ao Usuário!!!!

No Entanto...

o aumento da complexidade trouxe...
◦
◦
◦
◦
◦

Inteligência
Sistemas que podem agir por nós
Que operam independentemente
Que sabem representar os nossos interesses
E, por fim... Que podem cooperar e chegar a acordos!
Masss... Como fazer????
IA Distribuída
INTELIGÊNCIA
COLETIVA
17
Um Cenário...
Inteligência Coletiva

Porque pensar a inteligência/racionalidade como
propriedade de um único indivíduo?

Não existe inteligência ...
◦
◦
◦
◦

Em um time de futebol?
Em um formigueiro?
Em uma empresa (ex. correios)?
Na sociedade?
Solução: IA Distribuída
◦ Agentes simples que juntos resolvem problemas complexos tendo ou
não consciência do objetivo global
◦ Proposta por Marvin Minsky e em franca expansão...
◦ o próprio ambiente pode ser modelado como um agente
19
A IA Distribuída

Grupo de Entidades que podem
Interagir
◦ Cooperando para resolver
problemas
◦ Coordenando Esforços
◦ Negociando Acordos

Tudo isto de acordo com...
◦ Organização
◦ Protocolos de Interação

Metáfora de inteligência é o
Comportamento Social.
IA Distribuída:
dois tipos de sistemas

Resolução distribuída de problemas
◦ consciência do objetivo global e divisão clara de tarefas
◦ Exemplos: Robótica clássica, Busca na Web, Gerência de sistemas
distribuídos, ...

Sistemas Multi-agentes
◦ não consciência do objetivo global e nem divisão clara de tarefas
◦ Exemplos: n-puzzle, futebol de robôs, balanceamento de carga,
robótica, ...
3
7
4
3
5
7
8
1
4
2
6
5
8
2
1
1
2
3
6
4
5
6
7
8
21
Duas noções fundamentais...

Resolução Distribuída de Problemas (RDP)
envolve:
◦ Um grupo de especialistas
◦ Habilidades Complementares
◦ Organização Fixa

Sistemas Multiagentes (SMA)...
◦ Agentes podem preexistir
◦ Organização varia em tempo de execução
Um Sistema Multiagente
Interação
Organização
Agentes
Recurso
Esfera de
Influência
Ambiente
Definindo SMA

Um SMA é um sistema que possui os seguintes
elementos:
◦
◦
◦
◦
◦
◦
Um ambiente, E
Um conjunto de objetos O
Um conjunto de Agentes, A (AO)
Um conjunto de relações R, que liga objetos
Um conjunto de operações Op
Operadores que representam os resultados das operações
em Op e as reações do ambiente a eles.
Trocando em miúdos...

Um Sistema Multiagentes ...
◦ Consiste de uma coleção de componentes
autônomos, com objetivos particulares
◦ Que se interrelacionam
 De acordo com uma Organização
 Interagindo, negociando e coordenando esforços para
resolver tarefas
Mas... Por que mesmo distribuir?
Porque o problema é fisicamente distribuído.
 Porque o problema é heterogêneo.
 Porque o problema só pode ser resolvido pela
integração de pontos de vista locais.
 Porque precisamos de adaptação a mudanças
estruturais...

É boa idéia quando...
Precisamos manter a autonomia das subpartes;
 As interações são complexas
 Não é possível descrever o Problema a
priori.

As vantagens...
Maior rapidez na solução dos problemas
 Diminuição do overhead de comunicação
 Maior flexibilidade
 Aumento da Segurança

TÁ... MAS COMO
PROJETAR SMA?
Duas Formas de Projeto
Organização
Emergência de
Propriedades
Interação
Agentes
Restrições
e Objetivos
O que nos leva a dois níveis de
considerações
Como construir os agentes
individualmente?
 Como fazê-los trabalhar juntos de
maneira coerente?

O que, por sua vez, levanta as
seguintes questões fundamentais...

Como a cooperação pode emergir?
◦ Como identificar que precisa e com quem
cooperar?
Como os agentes podem identificar
Conflitos e negociar?
 Como os agentes podem coordenar
esforços?
 Como os agentes podem se comunicar?

Considerações no Projeto de SMA

Três Grandes Grupos...
◦ Aspectos Fundamentais
 Como podemos garantir compatibilidade de ações?
◦ Aspectos Arquiteturais
 Características a serem providas pela arquitetura
◦ Aspectos Ambientais
 Como é o ambiente onde funciona o SMA?
E mais um importante... A Estrutura

Padrão de Relações entre os agentes e sua
distribuição de habilidades
◦ Cobertura: as habilidades necessárias para resolver
problemas devem ser possuídas por pelo menos
um agente;
◦ Conectividade:Agentes devem interagir de forma
que suas habilidades possam ser integradas
DENTRO DOS
ASPECTOS
FUNDAMENTAIS...
Comunicação

Habilita os agentes a intercambiar informações.
◦ Percepção
◦ Ação

Modelada sobre a comunicação humana
◦ Atos de Fala
◦ Blackboard

Tem esforços de padronização!
Organização
Conjunto de Compromisso Globais, Crenças e
intenções comuns aos agentes que querem atingir
um objetivo comum.
 Definem...

◦ Um conjunto de diretrizes...
◦ Uma política de interação.

Muitos exemplos!
◦ O CIn
◦ Sua Família
Negociação

Esforço para solução de conflitos e
cooperação
◦ Grupo de agentes “self-interested” que
consegue chegar a uma decisão conjunta.

Envolve..
◦ Linguagem
◦ Protocolo – ex. Contract Net
◦ Processo de Decisão
Coordenação
Fundamental para o trabalho conjunto.
 Um SMA pressupõe coordenação entre seus agentes!
Porque...

◦
◦
◦
◦
Há dependências entre as ações
Nenhum indivíduo pode resolver o problema sozinho
Deve-se respeitar as restrições globais
Deve-se garantir a harmonia na execução conjunta de
tarefas!
Coordenação... II

Então coordenação é...
◦ O processo pelo qual um agente raciocina sobre suas ações
locais e as de outros agentes para garantir que a comunidade
funcione coerentemente.

Visa garantir que...
◦
◦
◦
◦
Todas as partes necessárias existam na sociedade.
Interação que possibilite a execução das atividades.
Que todos atuem consistentemente
Que tudo seja feito com dos recursos disponíveis
Coordenação... III

Para coordenar com sucesso é preciso...
◦ Uma estrutura...
◦ Flexibilidade nas interações
 Comunicação!
 Negociação!
◦ Conhecimento e raciocínio
 Para reconhecer interações potenciais entre planos de
ação!
Então... O fundamental é...

Interagir!!!
◦
◦
◦
◦
◦
◦
Com quem?
Quando?
Qual o conteúdo?
Como? Que processos e recursos?
Por que?
Como estabelecer a compreensão mútua?
Em resumo... No “PAGE” dos SMA a
gente deve...
Considerar o que queremos realizar..
 O que precisaremos perceber?
 Que decisões de que tipo serão
tomadas? Por quem? Quando?
 Como se dá a comunicação entre os
agentes?

Design de SMA

Quando partir para SMA?
◦ Quando o ambiente é aberto;
◦ Quando os agentes são a metáfora natural.
◦ Quando há distribuição de dados, controle ou
expertise.
◦ Quando estamos lidando com sistemas legados.
Problemas no Desenvolvimento de
Agentes
Superestimativas do potencial dos agentes.
 Dogmatismo a respeito dos agentes.
 Não está claro porque usar agentes.
 Construção de soluções genéricas para
problemas específicos.
 Desenvolver SMA é desenvolver Software...
 SMA é software “multithreaded”.

E mais Problemas...






Seu projeto não explora concorrência.
Você resolve adotar sua arquitetura.
Seus agentes usam IA demais.
Os agentes estão em todos os lugares.
Não tem agentes suficientes.
A Interação é caótica...
Algumas aplicações “Diretas” de
SMA

Engenharia de Software
◦ Sistemas Complexos

Interação
Computação “Self-Interested”
◦ Aplicação de mecanismos da Economia em
Computação

Grid Computing
◦ Não lembra Solução Cooperativa de
Problemas?
Algumas aplicações “Diretas” de
SMA

Computação Ubíqua
◦ Autonomia e Cooperação entre Aplicações e
Dispositivos
◦ Já ouviram falar de Ambient Intelligence?
Web Semântica
 Computação Autonômica

◦ Sistemas que se configuram, gerenciam e se
adaptam a novos ambientes não lembram
agentes?
O que levanta as seguintes questões
fundamentais...

Como a cooperação pode emergir?
◦ Como identificar que precisa e com quem
cooperar?
Como os agentes podem identificar
Conflitos e negociar?
 Como os agentes podem coordenar
esforços?
 Como os agentes podem se comunicar?

Objeções a SMA

Não é a mesma coisa que SD?
◦ Sincronização e Coordenação Dinâmicas
◦ Agentes têm interesses próprios!!!

Não é IA?
◦ SMA têm características de CC e de ES!
◦ Em SMA, o aspecto social é fundamental!
Objeções a SMA... II

Não é só teoria dos Jogos?
◦ TJ muitas vezes desconsiderou a computação...
◦ Hipóteses da TJ são questionadas em SMA

O que eu vou fazer com Ciência Social?
◦ Ambas servem como ferramentas uma para outra.
◦ Mas são bem diferentes!!!!
Então... Na verdade... Estamos na fronteira...
Inteligência
Artificial
Engenharia
de Software
Agentes
Sistemas
Distribuídos
52
Download

PPT