planejamento e solucionamento de problemas distribuídos

23
Planejamento e Solucionamento de Problemas Distribuídos Sistemas Multiagente Ewerton Felipe Miglioranza 1 Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Upload: herve

Post on 11-Jan-2016

20 views

Category:

Documents


0 download

DESCRIPTION

Planejamento e Solucionamento de Problemas Distribuídos. Sistemas Multiagente Ewerton Felipe Miglioranza. Ênfase. Trabalho em conjunto. Quando um agente sozinho não consegue realizar ou realiza de forma menos eficiente uma tarefa. Recursos distribuidos. Requer coerência e competência. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Planejamento e Solucionamento de Problemas Distribuídos

Planejamento e Solucionamento de Problemas Distribuídos

Sistemas MultiagenteEwerton Felipe Miglioranza

1Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Page 2: Planejamento e Solucionamento de Problemas Distribuídos

Ênfase

• Trabalho em conjunto.• Quando um agente sozinho não consegue

realizar ou realiza de forma menos eficiente uma tarefa.

• Recursos distribuidos.• Requer coerência e competência.• Coerência: vontade de trabalhar em conjunto

(normalmente assumido previamente).• Competência: saber trabalhar em conjunto

(principal foco - querer não é poder!).2Sistemas Multiagente - Planejamento e

Solucionamento de Problemas Distribuídos

Page 3: Planejamento e Solucionamento de Problemas Distribuídos

Motivação

• Busca por uma solução: agentes em conjunto buscam uma solucao geral partindo de sub-problemas.

• Busca por um planejamento: como decompor um problema em subproblemas, alocação de subproblemas, troca de soluções e finalmente como reagrupar as soluções.

• Exemplos: Torre de Hanói, sensoreamento distribuído (tráfego, aeroportos), sistemas de entregas distribuídos.

3Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Page 4: Planejamento e Solucionamento de Problemas Distribuídos

Estratégias

• Compartilhamento de tarefas (Task Sharing).

• Compartilhamento de resultados (Result Sharing).

• Planejamento distribuído (Distributed Planning).

4Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Page 5: Planejamento e Solucionamento de Problemas Distribuídos

Task Sharing• Idéia: um agente com muitas tarefas pede ajuda para

outros com poucas ou nenhuma.• Passos:

- Decomposição: gerar lista de possíveis tarefas ou subdividir um problema para repassar.- Alocação: designar as sub-tarefas para os agentes apropriados.- Realização: cada agente completa sua tarefa, o que pode incluir nova decomposição (recursivamente).- Síntese dos resultados: o agente devolve a solução do sub-problema repassado para que a solução final possa ser composta.

5Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Page 6: Planejamento e Solucionamento de Problemas Distribuídos

Exemplo Torre de Hanói

• Decomposição: mover o maior disco para a estaca de destino (decomposição recursiva).

• Alocação: qualquer agente disponível.• Realização: executar a decomposição

recursiva.• Síntese dos resultados: o agente recebe os

resultados para compor uma sequência de movimentos e retornar a solução.

6Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Page 7: Planejamento e Solucionamento de Problemas Distribuídos

Task Sharing

• Prós:- Simples.- Funciona bem em sistemas homogêneos.

• Contras:- Encotrar agentes livres e capazes de

realizar uma sub-tarefa.- Em geral complexidade alta.- Problema se o ambiente muda enquanto

um agente espera a resposta.

7Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Page 8: Planejamento e Solucionamento de Problemas Distribuídos

Result Sharing• Idéia: vários agentes compartilham seus resultados a fim de

otimizar suas soluções:

- Confiança: resultados independentes de uma mesma tarefa podem ser trocados a fim de aumentar a confiança das soluções.Ex: um grupo de alunos que recebe um mesmo exercício.

- Completude: cada agente formula um resultado para as tarefas as quais fora designado, e esses resultados juntos cobrem uma área mais completa do problema geral.Ex: monitoramento de veículos distribuído.

8Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Page 9: Planejamento e Solucionamento de Problemas Distribuídos

Result Sharing• Idéia: vários agentes compartilham seus resultados para

otimizar:

- Precisão: para refinar um resultado, um agente precisa saber mais sobre as soluções encontradas pelos outros agentes.Ex: Aplicação de engenharia concorrente.

- Tempo: mesmo que um agente possa resolver uma grande tarefa sozinho, resolver sub-tarefas paralelamente pode ser mais rápido.

9Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos

Page 10: Planejamento e Solucionamento de Problemas Distribuídos

Result Sharing

• Falar é fácil...- Excesso de comunicação.- Como saber o que fazer com os resultados compartilhados?- Muitos resultados para analizar. Como selecionar?

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 10

Page 11: Planejamento e Solucionamento de Problemas Distribuídos

Result Sharing - Alternativas

• Cooperação por funcionalidade:- Idéia usada pelo monitoramento de veículos distribuídos.- Tratar resultados parciais obtidos com formulação de tentativas (heurísticas) e trocas interativas.- Problema: Distração (todos tentando resolver a mesma parte do problema).

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 11

Page 12: Planejamento e Solucionamento de Problemas Distribuídos

Result Sharing - Alternativas• Repositórios compartilhados e busca negociada:

- Ter um repositório central, guardando todas as respostas aos sub-problemas encontradas pelos agentes.- Diminui a troca de mensagens.

• Problemas:- Um agente não sabe o que pode acontecer ao fazer uma escolha.- Um agente pode relaxar restrições, tornando soluções descartadas em soluções possíveis.- Torna o domínio do problema mais complexo (negociação).

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 12

Page 13: Planejamento e Solucionamento de Problemas Distribuídos

Result Sharing - Alternativas• Busca heurística de restrições:

- Usar heurísticas para resolver dependências mais fáceis.- Evitar desperdícios com backtracking.

• Organização estrutural:- Organizar agentes em grupos de comunicação (interesses).- Reduz a troca de mensagens.Problemas:

- Separar os agentes.- Buscas podem se tornar complexas.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 13

Page 14: Planejamento e Solucionamento de Problemas Distribuídos

Result Sharing - Alternativas• Estratégias de comunicação:

- Decidir qual o melhor momento para a troca de mensagens (Ex: DVM).- Garantir que a mensagem foi recebida:

- Repetição da mensagem.- Usar heurísticas para determinar as mudanças

na base.

• Estrutura das tarefas:- Captar relações intrínsecas ao problema.- Dependente do problema.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 14

Page 15: Planejamento e Solucionamento de Problemas Distribuídos

Distributed Planning

• Generalização do solucionamento distribuído.• Problema passa a ser gerar um plano.

• Planejamento centralizado para planos distribuídos.

• Planejamento distribuído para planos centralizados.

• Planejamento distribuído para planos distribuídos.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 15

Page 16: Planejamento e Solucionamento de Problemas Distribuídos

Distributed Planning• Planejamento centralizado para planos

distribuídos:- Execuções são planejadas sequencialmente.- Um agente pode separar o problema em threads.

• Problemas:- Dificuldade em dividir um problema (número de agentes vs. tamanho do subproblema).- Planejamento sequencial.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 16

Page 17: Planejamento e Solucionamento de Problemas Distribuídos

Distributed Planning

• Planejamento distribuído para planos distribuídos:- Versão mais complexa.- Plano não está representado inteiramente no sistema (distribuído).

- Plan Merging.- Interative Plan Formation.- Negotiation.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 17

Page 18: Planejamento e Solucionamento de Problemas Distribuídos

Distributed Planning

• Plan Merging:- Agente inicia um plano individual.- Agentes resolvem conflitos mudando seus planos.- Funciona paralelamente (planejamento e execução).

• Problemas:- Sincronização.- Pode demorar para convergir.- Dependências locais.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 18

Page 19: Planejamento e Solucionamento de Problemas Distribuídos

Distributed Planning• Interative Plan Formation:

- Agente constroi um conjunto de planos que satisfaçam seu objetivo.- Processo consiste em realizar uma busca de como esses conjuntos podem ser unidos.

• Negotiation- Trata da escolha do agente que deve mudar seu plano.- Trata de assegurar a honestidade de um agente.- Diversos meios...

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 19

Page 20: Planejamento e Solucionamento de Problemas Distribuídos

Distributed Planning - Execução• Execução:

- Temos um plano, mas e se um agente falhar?

• Post-Planing Coordination:- Planos alternativos (planos de contingência).- Problema de muitos planos.

• Pre-Planing Coordination:- Assegurar previamente que qualquer ação tomada pelo agente faça-o ficar em coordenação com os outros.- Agente pode trabalhar em qualquer parte do problema que se encaixe em suas responsabilidades.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 20

Page 21: Planejamento e Solucionamento de Problemas Distribuídos

Distributed Planning - Execução• Execução:

- Temos um plano, mas e se um agente falhar?

• Interleaved Planning, Coordination and Execution:- Intercalar planejamento, coordenação e execução.- Garantir que o planejamento e a coordenação sejam revistos continuamente.

• Runtime Plan Coordination Without Communication:- Inferir planos de outros agentes através da observação. - Utilizar racionalidade.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 21

Page 22: Planejamento e Solucionamento de Problemas Distribuídos

Conclusões

• Várias ferramentas e técnicas bem estudadas.

• Atualmente um dos principais desafios é saber como e onde aplicar essas ferramentas.

• Desenvolver estratégias de planejamento distribuídos ainda envolve muita “arte”.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 22

Page 23: Planejamento e Solucionamento de Problemas Distribuídos

Referências

• Multiagent Systems - A Modern Approach to Distributed Artificial Intelligence. Gerhard Weiss.

Sistemas Multiagente - Planejamento e Solucionamento de Problemas Distribuídos 23