1 / 37

Resolução Distribuída de Problemas e Planejamento Multiagente

Resolução Distribuída de Problemas e Planejamento Multiagente. Pablo Sampaio e Talita Menezes. Tópicos. Introdução Resolução Distribuída de Problemas Planejamento Clássico e Planejamento Multiagente Planejamento Centralizado de Planos Distribuídos

coral
Download Presentation

Resolução Distribuída de Problemas e Planejamento Multiagente

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Resolução Distribuída de Problemas e Planejamento Multiagente Pablo Sampaio e Talita Menezes

  2. Tópicos • Introdução • Resolução Distribuída de Problemas • Planejamento Clássico e Planejamento Multiagente • Planejamento Centralizado de Planos Distribuídos • Planejamento Distribuído de Planos Centralizados • Planejamento Distribuído de Planos Distribuídos • Execução de Planos Distribuídos • Conclusão

  3. 1. Introdução • Foco da aula • Agentes trabalhando em conjunto para resolver um problema comum • Motivações • Acelerar a obtenção da solução • Ex.: agentes em diferentes máquinas • Distribuição inerente ao problema • Ex.: monitoramento de uma grande área geográfica • Resultados finais serão distribuídos entre múltiplos agentes • Ex.: correios

  4. 2. Resolução Distribuída de Problemas • Visão otimista de sistemas multiagentes • Agentes benevolentes • Objetivos comuns (ou complementares) • Exige dos agentes • Coerência: agentes querem trabalhar juntos • Competência: agentes sabem trabalhar em conjunto • O problema comum pode ser construir um plano • Planejamento multiagente como caso especial de Resolução Distribuída de Problemas (RDP)

  5. 2. Resolução Distribuída de Problemas • Duas principais classes de estratégias usadas • Divisão de Tarefas (task sharing): um agente com muitas tarefas repassa tarefas ou sub-tarefas a outros agentes • Compartilhamento de Resultados (result sharing): agentes compartilham os resultados obtidos da resolução de uma sub-tarefa

  6. 2.1 Divisão de Tarefas • A solução é obtida hierarquicamente pela divisão de uma tarefa complexa em tarefas menores • Principais etapas: • Decomposição das tarefas: um agente gera o conjunto de sub-tarefas a ser dividido entre os agentes • Alocação das tarefas: atribuição de sub-tarefas aos agentes apropriados • Resolução da tarefa: o agente pode executar a tarefa diretamente ou fazer uma nova divisão de tarefas • Síntese do resultado: integração dos resultados parciais gerados pelos agentes

  7. 2.1 Divisão de Tarefas • Exemplo: agentes precisam encontrar figuras escondidas numa região • Decomposição: dividir a região ou as figuras para a busca • Alocação: cada agente cuida de uma área ou figura • Execução: buscar quaisquer figuras na região destinada a ele, ou buscar em toda a região uma figura específica • Síntese: cada agente apresenta as figuras encontradas

  8. 2.1 Divisão de Tarefas • É difícil construir um agente competente em qualquer tipo de tarefa • Os agentes possuem diferentes habilidades • Sistemas heterogêneos • Habilidades devem ser consideradas na divisão de tarefas ! • Escalar agentes sob-demanda, de acordo com sua especialidade • Uma aboragem seria manter uma tabela de serviços • Problema: e se o agente já estiver ocupado ?

  9. 2.1 Divisão de Tarefas Adaptações do Contract-Net • Contratação via broadcast: • Envia uma proposta contendo a especificação do problema • Apenas os agentes capazes de resolver e que estiverem em disponibilidade respodem • Novas tentativas • Quando nenhum agente responder, o contratante anuncia novamente após um certo tempo • Revisão do anúncio • Propostas contém restrições sobre os possíveis (requisitos de eligibilidade) • Requisitos podem ser relaxados • Decomposições alternativas • Divide diferentemente o problema original

  10. 2.1 Divisão de Tarefas • Nem sempre é possível criar sub-tarefas totalmente independentes • Ex.: Engenharia de produtos • Uma abordagem • Um gerente acompanha o andamento das sub-tarefas • Cabe ao gerente solucionar dependências, repassando os resultados das tarefas • Problema - Interdependências podem se tornar aparentes somente após iniciada a resolução da tarefa • Necessidade de compartilhar resultados parciais

  11. 2.2 Compartilhamento de Resultados • Agentes compartilham informações relevantes para resolução dos sub-problemas • Resultados parciais podem ser trocados entre os agente de modo a resolver problemas de interdependência • Compartilhamento pode ser: • Pró-ativo: agente envia informação por acreditar que essa informação auxiliará outro agente • Reativo: agente envia informação como resposta a uma solicitação

  12. 2.2 Compartilhamento de Resultados • Retorno em relação à performance do grupo: • Confiança • Diferentes agentes chegando ao mesmo resultado • Completude • Resultados de sub-problemas cobrem o problema como um todo • Precisão • Para refinar sua solução, um agente precisa saber mais sobre a solução de outros agentes • Rapidez • O reaproveitamento de resultados parciais de outros agentes pode agilizar a solução de uma sub-problema

  13. 2.2 Compartilhamento de Resultados • Problema: possibilidade de overhead de comunicação • Limitando a comunicação • Repositórios Compartilhados • Diversas alternativas de soluções parciais • Busca Heurística Distribuída com Restrições • Acesso às informações (recursos) de maneira controlada • Estruturação organizacional • Define papéis, responsabilidades, etc • Apenas agentes de papéis relacionados se comunicam

  14. 3. Relembrando Planejamento • Planejamento: elaboração de uma seqüência de ações para alcançar um objetivo • Planejamento Clássico • Mundo simples: completamente observável, determinístico, finito, estático, discreto • Considera um único agente • Natureza indiferente ao agente

  15. 3. Planejamento Clássico • STRIPS • Linguagem usada para representar problemas de planejamento • Estados • Proposições lógicas • Hipótese do mundo fechado • Objetivos • Conjunção de literais básicos positivos • Ações • Pré-condições • Efeitos: literais verdadeiros (adicionados) e falsos (removidos)

  16. B C A F D E 3. Planejamento Clássico • Algoritmos • Podem ser aplicados algoritmos de busca • Geração de planos de ordem total: ações em ordem rigidamente definida • POP (Planejador de Ordem Parcial) • Não é imposta nenhuma ordem entre ações independentes • Precedência para ações em conflito • O resultado é um grafo dos planos possíveis z

  17. 3. Planejamento Multiagente • Mecanismo de coordenação que permite organizar as interações (futuras) entre agentes de maneira a alcançar um objetivo comum • Pode ser visto como caso especial de RDP • O problema a ser solucionado é criar é um plano • Estende o planejamento clássico para domínios onde vários agentes podem planejar e/ou agir juntos • Ambiente mais complexo: parcialmente observável, estocástico, dinâmico

  18. 3. Planejamento Multiagente • Elaboração de um Plano Conjunto composto de ações para cada agente • A execução de todas as partes do Plano Conjunto leva a sociedade a atingir seu objetivo comum • Distribuição pode estar presente • No Planejamento (elaboração do plano) • No Plano (tarefas a serem executadas)

  19. 3. Planejamento Multiagente • Elaboração do Plano Conjunto: • Planejamento Centralizado de Planos Distribuídos • Planejamento Distribuído de Planos Centralizados • Planejamento Distribuído de Planos Distribuídos

  20. 4. Planejamento Centralizado de Planos Distribuídos • Um agente coordenador planeja e os demais executam • O agente coordenador é responsável por • Criar um plano conjunto • Identificar ações independentes • Dividir em sub-planos • Distribuir tarefas entre os agentes • Gerenciar a execução do plano • Sincronização, para evitar conflitos • Caso especial de Divisão de Tarefas, porém com o uso de técnicas de planejamento clássico na etapa de decomposição

  21. B C F A D E 4. PCPD – Algoritmo • Dada a descrição STRIPS do mundo, gerar plano de ordem parcial • Decompor em sub-planos, minimizando relações de ordem entre os sub-planos • Decomposição 1: • Decomposição 2: • A decomposição 1 é preferível ! Sub-plano 1: B < C < F Sub-plano 2: A < D < E Outras restrições: B < E Sub-plano 1: B < D < E Sub-plano 2: A < C < F Outras restrições: B < C e A < D

  22. 4. PCPD – Algoritmo • Inserir ações de sincronização nos pontos de dependência dos planos • Alocar sub-planos aos agentes. Se não for possível, retornar para passo 2 ou 1 • Inicia a execução e monitora o progresso Sub-plano 1: B < send(condE) < C < F Sub-plano 2: A < D < wait(condE) < E Agente1 ← Sub-plano 1: B < send(condE) < C < F Agente2 ← Sub-plano 2: A < D < wait(condE) < E

  23. 4. PCPD - Avaliação • Vantagens • Simplicidade na geração do plano • Problemas de coordenação resolvidos a priori • Desvantagens • Dependência do coordenador para realização do plano • Confiabilidade do coordenador • Supõe coordenador onisciente

  24. 5. Planejamento Distribuído de Planos Centralizados • O planejamento se realiza de maneira distribuída, resultando num único plano centralizado • Divisão de Tarefas • O problema é divido e repassado a agentes especialistas • Os agentes geram planos parciais em paralelo para os sub-problemas • Os agentes interagem trocando planos parciais • Planos parciais podem ser passados seqüencialmente • Planos podem ser unidos num único plano global usando técnicas de result sharing

  25. 5. PDPC – Exemplos • Atletismo: vários especialistas planejam a preparação de um atleta • Nutricionista planeja a dieta do atleta • Treinador faz planos de treinamento e decide a estratégia durante a prova • Manufatura (exemplo computacional) • Um especialista em geometria analisa a peça a ser manufaturada e gera um plano abstrato • Um planejador geral recebe esse plano e acrescenta as operações de máquina necessárias • O plano é passado para um especialista em montagem que vai garantir que a execução do plano

  26. 5. PDPC – Avaliação • Vantagens • Utiliza as habilidades dos especialistas para construção dos sub-planos • Problemas de coordenação podem ser resolvidos antes da execução • Desvantagens • Necessidade de intensa comunicação durante o planejamento • A decomposição adequada do problema pode ser complicada

  27. 6. Planejamento Distribuído de Planos Distribuídos • Tanto o processo de planejamento quanto os resultados são distribuídos • Não existe um plano global da tarefa em nenhum ponto do sistema • Agentes fazem seus planos individuais procurando evitar conflitos entre si • O grande problema é manter a compatibilidade entre os planos individuais • Agentes podem comunicar planos e objetivos

  28. 6. PDPD – Avaliação • Vantagens • Tratamento homogêneo entre os agentes • Agentes agem conforme suas habilidades e interesses • Desvantagens • Maior complexidade (implementação, avaliação, ...) • Necessidade de intensa comunicação durante o planejamento e execução

  29. 6. PDPD – Técnicas • Técnicas para Planejamento Distribuído de Planos Distribuídos: • Fusão de planos • Construção iterativa de planos • Negociação de planejadores distribuídos

  30. 6.1 PDPD – Fusão de Planos • Mecanismo centralizado de coordenação • Cada agente, individualmente, formula planos individuais • Necessidade de garantir que esses planos podem ser executados separadamente sem conflitos • Duas fases: • Reachability analisis: dados os estados iniciais possíveis e as ações aplicáveis, identifica os estados do mundo que podem ser alcançados • Identifica estados indesejáveis do mundo e insere restrições entre os planos para evitar estes estados

  31. 6.1 PDPD – Fusão de Planos Algoritmo de Georgeff (1983) • A partir de um conjunto de planos iniciais  gera planos para vários agentes de forma que não haja conflitos entre eles. • Utiliza uma versão aumentada do formalismo STRIPS • Cada ação definida a partir de: • Nome, pré-condições e efeitos (como em STRIPS) • Georgeff + Lista de fatos que devem ser verdadeiros durante a execução da ação (during list)

  32. 6.2 PDPD – Construção Iterativa de Planos • Problema das abordagens anteriores: às vezes, decisões locais dependem das decisões de outros agentes • Exemplo: Agent1 vai empurrar o bloco junto com Agent2 • Uma solução: cada agente, ao invés de propor um único plano, propõe um conjunto de planos alternativos • Espaço de Planos x Plano Único • O processo de planejamento consiste, então, em uma busca pelos planos (dentre os propostos) que podem ser combinados • Várias técnicas para isso…

  33. 6.3 PDPD – Negociação em Planejamento Distribuído • Nas técnicas anteriores, a resolução de conflitos entre agentes se dá de maneira arbitrária • Qual agente vai esperar por qual? • Solução: agentes negociam esse tipo de resolução • Protocolo comum: processo de decisão usado para determinar suas posições, concessões e critérios • Heurística: dar preferência ao agente mais restringido • Exemplo: controle de tráfego aéreo (Steeb e Camarata) • Sistemas de aviões em rota de colisão analisam suas possibilidades • O que tivesse mais opções alternativas mudaria de direção

  34. 7. Execução de Planos Distribuídos • Necessidade de monitoramento da execução do plano (coordenação) • Técnicas de Coordenação pós-planejamento: • Planejamento de Contingência: planos alternativos • Monitoramento e Replanejamento: repete o ciclo planejar-coordenar-executar • Técnicas de Coordenação pré-planejamento: • Leis de sociabilidade: proibe certar ações em certos contextos • Coordenação de planos em tempo de execução sem comunicação • Coordenação de planos baseada em observações

  35. 7. Planejamento, Coordenação e Execução Intercalados • Planejar continuamente quando: • Aspectos do mundo podem mudar dinamicamente • Aspectos do mundo são revelados incrementalmente • Limitações de tempo fazem com que a execução comece antes do plano ter sido totalmente gerado • Planejamento Global Parcial • Agentes fazem planos locais parciais: detalhado e abstrato • Planos parciais abstratos são compartilhados e objetivos globais parciais são indentificados • Execução: alterações maiores nos planos locais podem levar a um replanejamento • Realocação de tarefas desproporcionais

  36. 8. Conclusão • Há várias técnicas e ferramentas para Planejamento Multiagente • A maioria derivada de técnicas de RDP • Desafio é entender quando aplicar cada técnica • Potenciais aplicações para PMA: • Ambientes multirobôs • Tarefas militares • Logística • Manufatura • Design de peças/produtos

  37. 8. Referências • Wooldridge, M. J.: An Introduction to MultiAgent Systems. John Wiley and Sons, 2002. • Weis, G.: Multiagent Systems – A Modern Approach to Distributed Artificial Intelligence • Russel, S. Norvig, P.: Inteligência Artifical (segunda edição) • A Multiagent Planning Architecture, http://www.ai.sri.com/~wilkins/mpa/ • CODA, http://www.ai.sri.com/~coda/ • Ferber, J.: Multi-Agent Systems – An Introduction to Distributed Artificial Intelligence • Mardhana, E.: Overview of Distributed Collaborative Planning: Concepts and Applications

More Related