Inteligência Artificial:
Sistemas Multiagentes
Luiz Antônio Moro Palazzo
Março de 2010
Sistemas Multiagentes
Módulo Três
Sistemas Multiagentes
2
Roteiro e Objetivos
Sistemas Multiagentes
3
Roteiro
• Objetivos do Módulo
• Revisitando a Noção de Agente
• Sistemas Multiagentes
• Características
• Capacidades
• Desafios
• Coerência
• Conclusões
Sistemas Multiagentes
4
Objetivos do Módulo
• Levar o aluno a entender e utilizar sistemas
multiagentes para a modelagem de
sistemas do mundo real.
• Desenvolver estudos sobre os aspectos
conceituais e formais em sistemas
multiagentes
• Pesquisar as principais ferramentas
empregadas na programação sistemas
multiagentes, ilustrando-as com aplicações
específicas.
Sistemas Multiagentes
5
Revisitando a Noção de Agente
Sistemas Multiagentes
6
Agentes
• São sistemas que podem decidir por si próprios o que
é necessário fazer para satisfazer o objetivo para o
qual foram projetados. Tais sistemas:
• Estão situados em algum ambiente
• Possuem controle parcial sobre o ambiente
• São capazes de ação autônoma
• Exemplos:
• Sistemas de controle: termostato
• Triggers, daemons, etc.
Sistemas Multiagentes
7
Agentes Inteligentes
• Agentes que operam em ambientes
imprevisível, abertos e em constante
mudança, onde há elevada possibilidade de
que ações possam falhar.
• Agentes que são capazes de ação
autônoma flexível, incluindo reatividade,
aprendizado, pró-atividade e habilidade
social.
Sistemas Multiagentes
8
Agentes Inteligentes
Sensores
Atuadores
Sistemas Multiagentes
9
Agentes e Objetos
• Objetos são entidades computacionais que
encapsulam algum estado, são capazes de
executar algumas ações (métodos) sobre
este estado e se comunicam por passagem
de mensagens.
• A programação orientada a objetos pode
ser empregada para implementar agentes,
com algumas modificações.
Sistemas Multiagentes
10
Sistemas Multiagentes
Sistemas Multiagentes
11
O que é um Sistema Multiagente (SMA)?
• ...uma rede fracamente acoplada de
solucionadores de problemas que
interagem para solucionar problemas
que estão além das capacidades ou
conhecimento de cada solucionador
de problemas individualmente.
• Estes solucionadores de problemas
são agentes...
Sistemas Multiagentes
12
Por que Sistemas Multiagentes?
• Problemas reais são muito grandes e
complexos para serem resolvidos por um
único agente
• Agentes individuais são limitados por seu
conhecimento, recursos computacionais e
perspectivas
• Sistemas multiagentes são modulares
• Problemas reais envolvem sistemas
dinâmicos distribuídos
Sistemas Multiagentes
13
Características de SMA

Cada agente possui informação e/ou
capacidades incompletas.

Não há um sistema de controle global.

Dados descentralizados

Computação assíncrona
Sistemas Multiagentes
14
SMA Abertos e Fechados
• Sistemas Abertos
– Os agentes são projetados por diferentes
pessoas com intenções variadas.
• Sistemas Fechados
– Os agentes são tipicamente projetados para
atender um objetivo comum.
Sistemas Multiagentes
15
Desempenho em SMA
– Eficiência computacional
– Confiabilidade
– Estensibilidade
– Robustez
– Mantenibilidade
– Flexibilidade
– Reuso
Sistemas Multiagentes
16
Questões e Desafios - 1
• Como formular, descrever,
decompor, alocar problemas
e sintetizar os resultados em
um grupo de agentes
inteligentes?
Sistemas Multiagentes
17
Questões e Desafios - 2

Sistemas Multiagentes
Como habilitar os agentes a se comunicar
e interagir?

Linguagens e protocolos de comunicação

Interoperação de agentes heterogêneos

Descoberta de agentes úteis previamente
existentes.
18
Questões e Desafios - 3
• Como assegurar que os agentes
irão agir coerentemente nas ações
e tomadas de decisão?
– Qual o efeito de ações locais no
sistema global
– Evitar comportamentos instáveis no
sistema
Sistemas Multiagentes
19
Questões e Desafios - 4
• Como habilitar os agentes individuais
a raciocinar sobre os demais agentes?
– Ações planos e conhecimento
– Ações coordenadas
Sistemas Multiagentes
20
Questões e Desafios - 5
• Como conciliar diferentes visões
e objetivos conflitantes de
diferentes agentes tentando
coordenar ao mesmo tempo o
sistema.
Sistemas Multiagentes
21
Questões e Desafios - 6
• Como é a engenharia dos
sistemas multiagentes?
Sistemas Multiagentes
22
O Objetivo de Coerência
• Coerência é uma propriedade global de
um sistema multiagente
• É medida pela eficiência, qualidade e
consistência da solução global.
Sistemas Multiagentes
23
O Problema da coerência
• Garantir coerência em SMA é muito difícil.
– Por sua própria natureza os SMA NÃO apresentam:
• Perspectiva global
• Dados globais
• Controle global
Sistemas Multiagentes
24
Organizações
• As organizações oferecem frameworks
para a interação de agentes por meio de:
– Papéis
– Comportamentos esperados
– Relações de autoridade
Sistemas Multiagentes
25
Visões Organizacionais
• Em geral:
– Vistas em termos de estrutura (padrões de
informação) e relações de controle.
• Teoria da Organização:
– Um conjunto de agentes com compromissos
mútuos, objetivos e crenças globais
Sistemas Multiagentes
26
Organização Hierárquica
• Um único agente detém toda a autoridade
• A comunicação ocorre verticalmente
Sistemas Multiagentes
27
Comunidade de especialistas
• O agente é um expert na sua atividade.
• A organização é plana.
– Exemplo: arquiteturas blackboard
• Controladas por “regras de ordem”
Sistemas Multiagentes
28
Market-based
• Os agentes competem por recursos através de
leilões e contratos
contractor contractor
contractor
contractor contractor
contractor
contractor contractor
contractor
contractor contractor
contractor
contractor contractor
contractor
contractor contractor
contractor
contractor
contractor
contractor
contractor
contractor
contractor
manager
manager
manager
Sistemas Multiagentes
29
Alocação de tarefas
• Como atribuir responsabilidades e recursos para
melhorar a eficiência e a coerência das soluções?
• Exemplos
– Método Hardwired
– Método Dinâmico
– Método Planejado
Sistemas Multiagentes
30
Alocação de Tarefas - Hardwired
• O projetista toma todas as decisões
– Eficiente
– Típico “projeto de sistema”
– Muito inflexível
Sistemas Multiagentes
31
Alocação de Tarefas - Dinâmica
• Alocação dinâmica de tarefas
– Exemplo - contract net protocol (CNP)
• Gerente
• Contratador
Step 5
notifies
winner
(&
losers)
1 – manager
2
3
4
contractors
send
selects
deliberate
respond
request
with
for
bid
bids
contractor
contractor
manager
contractor
Sistemas Multiagentes
contractor
32
Alocação de Tarefas - Planejada
• O planejamento multiagente deve considerar:
– Restrições que as ações de outros agentes impõem
sobre a ação de cada agente.
– Restrições que os
compromissos assumidos
por um agente impões
sobre suas ações.
– Evolução imprevisível
do mundo, causada pela
ação de outros agentes.
Sistemas Multiagentes
33
Abordagens ao Planejamento
Multiagente
• Coordenação central – controla todos os subplanos
• Esquemas de controle distribuído
– Conhecimento parcial dos planos de outros agentes
• Planejamento Global Negociado
– Compartilhamento de todos os planos
– Ajuste local para a realização de objetivos comuns
• Modelagem Explícita da Equipe de Agentes
– Compromissos cconjuntos
– Crenças, desejos e intenções comuns
Sistemas Multiagentes
34
Conflitos
• A detecção e correção de disparidades e inconsistências é
difícil.
• A principal abordagem para a correção de conflitos tem sido
a negociação:
– Assume agentes auto-interessados, com racionalidade
limitada e informação incompleta.
– Agentes trocam propostas e contra-propostas.
Sistemas Multiagentes
35
Comunicação
• Para melhorar a coerência, um SMA deve planejar o conteúdo,
a quantidade, o tipo e o tempo de cada comunicação.
• Questões em sistemas abertos:
– Interoperabilidade
• KQML, FIPA
• Ontologias
– Localizando outros agentes
• Agentes intermediários
• Brokers
Sistemas Multiagentes
36
Gerenciamento de Recursos
• Abordagens baseadas em pesquisa operacional
– Satisfação de restrições distribuídas
• Assume que todos os agentes estão trabalhando por um
objetivo comum
Sistemas Multiagentes
37
Gerenciamento de Recursos
• Estratégias de Mercado
– Os agentes são auto-interessados
– Controlam recursos escassos
– Problemas:
• Desequilíbrio na distribuição de recursos
entre os agentes,
• Comportamento oscilante ou caótico,
• Agentes egoístas e sem escrúpulos.
Sistemas Multiagentes
38
Conclusões - 1
• Projetar e construir sistemas multiagentes é uma
tarefa difícil:
– Apresenta todos os problemas já conhecidos
dos sistemas distribuídos e concorrentes.
– Dificuldades adicionais surgem da flexibilidade
e complexidade das interações.
Sistemas Multiagentes
39
Conclusões - 2
• Dois principais impedimentos técnicos:
– Inexistência de uma metodologia sistemática para claramente
especificar e estruturar aplicações SMA.
– Inexistência de ferramentas e ambientes de
desenvolvimento de SMA com qualidade industrial.
Sistemas Multiagentes
40
Download

M03 - Sistemas multiagentes