introdução aos sistemas multiagentes patricia tedesco 1
TRANSCRIPT
1
Introdução aos Sistemas Multiagentes Patricia Tedesco
Ao fim da aula de hoje a gente deve...Relembrar o conceito de Agente
InteligentesRever suas Várias ArquiteturasDefinir o que é um Sistema
MultiagentesEntender quais as principais
questões a tratar no projeto de SMA
RECORDAR É VIVER....
4
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, auto-falante, 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
5
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
6
Agentes: Arquiteturas
De forma bem simplificada, um agente pode ser visto como um mapeamento: ◦seqüência perceptiva => ação
sensoresAgente
atuadores
a m
b i
e n
t e
Raciocinadormodelo do ambiente
Agente sensores
atuadores
Como está o mundo agora?
Que ação devo escolher agora? Regras “condição-ação”a
m b
i e
n t
e
Agente Reativo
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
Desvantagem: pouca autonomia◦ não tem objetivo, não encadeia regras
Ambientes: determinista e pequeno◦ Ex. Tamagotchi
sensores
Agente
Como está o mundo agora?
Regras “condição-ação”
estado: como o mundo era antes
como o mundo evolui
atuadores
Que devo fazer agora?a m
b i
e n
t e
impacto de minhas ações
sensoresAgente
Como está o mundo agora?
Objetivos
como o mundo evolui
atuadores
Que devo fazer agora?
a m
b i
e n
t e
impacto de minhas açõesComo ele ficará se faço isto?
estado: como o mundo era antes
Agente cognitivo - baseado em objetivo
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)
Ambiente: sem restrição Desvantagem: não tem adaptabilidade Ex. motorista recifense
◦ Segurança e velocidade – conflito!
ambiente
sensores
atuadores
Agente
Como está o mundo agora?
Que ação devo escolher agora?Função de Utilidade
qual é o impacto de minhas ações
como o mundo evolui
Este novo mundo é melhor?
Como ele ficará se faço isto?
estado: como o mundo era antes
Agente que aprende
Ambiente: sem restrição Vantagem: tem adaptabilidade (aprende) Ex. motorista sem o mapa da cidade
sensores
atuadores
Agente
Gerador de problemas
crítico
elemento de aprendizagem
avaliação
objetivos de aprendizagem
elemento de execução (agente)
trocas
conhecimento
a m
b i
e n
t e
t
t+1
t
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üidadeInterconexãoDelegaçãoInteligê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????
17
INTELIGÊNCIA COLETIVA
IA Distribuída
Um Cenário...
19
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
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.
21
IA Distribuída: dois tipos de sistemasResoluçã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, ...
1
53
4
8
6
7
2
1
5
3
4
8
6
7
2F 1
53
4
8
6
7
2
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
Ambiente
Esfera de Influência
Organização
Agentes
Interação
Recurso
Definindo SMA
Um SMA é um sistema que possui os seguintes elementos:◦ Um ambiente, E◦ Um conjunto de objetos O◦ Um conjunto de Agentes, A (AO)◦ 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 sub-partes;As interações são complexasNã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 flexibilidadeAumento da Segurança
TÁ... MAS COMO PROJETAR SMA?
Duas Formas de Projeto
Organização
Agentes
InteraçãoRestrições e Objetivos
Emergência dePropriedades
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 SMAEngenharia de Software
◦Sistemas Complexos InteraçãoComputaçã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 SMAComputação Ubíqua
◦Autonomia e Cooperação entre Aplicações e Dispositivos
◦Já ouviram falar de Ambient Intelligence?
Web SemânticaComputaçã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 SMANã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!!!!
52
Então... Na verdade... Estamos na fronteira...
InteligênciaArtificial
Engenhariade Software
SistemasDistribuídos
Agentes