A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Cooperação e Coordenação em SMA

Apresentações semelhantes


Apresentação em tema: "Cooperação e Coordenação em SMA"— Transcrição da apresentação:

1 Cooperação e Coordenação em SMA
Agentes Autônomos CIn – Centro de Informática Universidades Federal de Pernambuco

2 Roteiro Agentes Trabalhando Juntos Coordenação em SMA
Resolução Cooperativa de Problemas Distribuídos Compartilhamento de Tarefas e Resultados Compartilhamento de Tarefas Usando Contract-Net Funcionamento do Contract-Net Coordenação em SMA O Que é Coordenação Quando Ações Devem Ser Coordenadas Relações Entre Ações Algumas Formas de Coordenação

3 Agentes Trabalhando Juntos
Como desenvolver agentes que podem trabalhar juntos de maneira eficiente? O conceito de cooperação de SD é suficiente? Não ! Agentes devem agir de maneira “estratégica”: agentes heterogêneos, interesses próprios (diferentes objetivos), etc. Autonomia dos agentes ! Agentes que trabalham juntos devem compartilhar Tarefas, Informações e Coordenar Atividades

4 Resolução Cooperativa de Problemas Distribuídos
Agentes com diferentes habilidades trabalhando juntos de maneira a resolver problemas que estão além das suas capacidades individuais Assume existência de agentes benevolentes: Sempre compartilham mesmos objetivos (não há espaço para conflitos) Ajudam sempre que necessário No entanto, a área de sistemas multi-agentes estuda sociedade de agentes autônomos, com interesses próprios ! Pergunta chave: por que e como agentes cooperam?

5 Resolução Cooperativa de Problemas Distribuídos
Decomposição do problema Decomposição hierárquica até atingir granularidade desejada Escolher mecanismo de decomposição Capacidade dos agentes deve ser conhecida Solução do sub-problema Sub-problemas resolvidos individualmente Agentes podem compartilhar informações Síntese da solução Soluções individuais integradas hierarquicamente em apenas uma

6 Compartilhamento de Tarefas e Resultados
Problema decomposto em sub-problemas menores alocados para agentes diferentes Alocação das tarefas depende da arquitetura dos agentes: Caso mais simples: agentes com mesmas habilidades e sem autonomia Estabelecimento de acordos: agentes com habilidades distintas e autônomos Agentes compartilhando informações relevantes para resolução de sub-problemas Pró-ativa: Agente envia informação por acreditar que essa informação auxiliará outro agente Reativa:Agente envia informação como resposta a uma solicitação

7 Exemplo: Construção de Edifício
Construtor Analisador de solo Solicita análise de solo para construção apropriada das fundações Carregador de material

8 Exemplo: Construção de Edifício
Construtor Analisador de solo Resultado da análise de solo Carregador de material

9 Exemplo: Construção de Edifício
Construtor Analisador de solo Solicita material Carregador de material

10 Exemplo: Construção de Edifício
Construtor Analisador de solo Entrega material Carregador de material

11 Compartilhamento de Tarefas Usando Contract-Net
Protocolo de alto nível voltado para obtenção de uma estratégia de cooperação eficiente Desenvolvido por R. G. Smith em 1979 e baseado em protocolos de mercado público Visa o compartilhamento de tarefas entre vários agentes Composto por 4 etapas: Anuncio da tarefa, encaminhamento de proposta, análise das propostas e emissão do “contrato”

12 Funcionamento do Contract-Net
(1) Agente reconhece existência de tarefa que não pode desempenhar sozinho

13 Funcionamento do Contract-Net
(2) Agente anuncia a tarefa para os demais agentes

14 Funcionamento do Contract-Net
(2) Agentes enviam suas propostas

15 Funcionamento do Contract-Net
(3) Propostas recebidas são analisadas e a melhor é escolhida (4) Uma proposta é escolhida e o contrato é emitido

16 Coordenação em SMA O que acontece quando agentes possuem ações inter-dependentes? Necessário gerenciar inter-dependências ! Mecanismos de coordenação são essenciais quando agente possuem atividades que interagem entre si Exemplos de atividades: Duas pessoas tentando sair de uma sala por uma porta estreita Funcionário precisa de assinatura de gerente para enviar um documento Aluno A encontra artigo de interesse de B e encaminha-o (atividade pró-ativa)

17 Então, O Que é Coordenação?
Quando agentes trabalham juntos é necessário gerenciar algumas tarefas complementares Tarefas de coordenação: Fazem parte do sistema organizacional e possibilitam a execução das tarefas produtivas Então, coordenação é o conjunto de tarefas suplementares que devem ser executadas em um SMA, as quais não seriam necessárias caso existisse apenas um único agente

18 Quando Ações Devem Ser Coordenadas?
Informações e resultados disponíveis apenas através de outros agentes Ex.: Agente construtor precisa que alguém lhe forneça material Recursos limitados Tempo, espaço, dinheiro, ferramentas ... Otimização de custos Eliminação de tarefas desnecessárias e redundantes Agentes com objetivos inter-dependentes cooperando entre si Ex.: Dois agentes trabalhando no mundo dos blocos (sem competição!)

19 Relações Entre Ações Algumas ações quando executadas simultaneamente podem levar a conflitos ou aumento da performance Relações negativas: impossibilitam a execução de algumas ações Incompatibilidade de objetivos, limitação de recursos Relações positivas: favorecem ações fazendo com que uma se beneficie de outra Maior eficiências do que se ações fossem executadas independentemente Em SMA, coordenação acontece em tempo de execução Agentes devem reconhecer relações e tratá-las quando elas ocorrem

20 Relações Entre Ações Relações Entre Ações Relações Negativas
Relações Positivas Conflito de Recursos Incompatibilidade de Objetivos Relação de Igualdade Relação de Favor Relações de Conseqüência Recursos Consumíveis Recursos Não Consumíveis

21 Algumas Formas de Coordenação
Coordenação via Sincronização Maneira mais simples e limitada de coordenação (originária de SD) Descreve precisamente a seqüência de ações concorrentes Coordenação via Planejamento Fases de elaboração de planos e execução do plano escolhido Limitados com relação a eventos não previstos e situações muito complexas Coordenação Reativa Não existe fase de planejamento, fazem uso do ciclo percepção-ação do agente Adequadas para situações onde é difícil prever o que irá acontecer

22 Sincronização de Ações
Definir a relação de tempo existente entre as ações de modo que: Sejam executadas na ordem correta Produzam o resultado esperado Deve ser aplicada quando o objetivo é prover coerência e evitar interferência entre ações Situações típicas: Sincronização de movimentos Ex.: dois agentes andando de bicicleta Sincronização para acesso a recurso Ex.: controle de acesso a uma máquina

23 Coordenação via Planejamento
Problema de planejamento em SMA é mais complexo do que o caso tradicional Ações de vários agentes devem ser levadas em consideração Maior necessidade de replanejamento Maior interdependência entre ações, dificultando ordenamento das ações, etc... Em SMA, planejamento pode se quebrado em 3 fases: Elaboração de planos, sincronização/coordenação e execução de planos

24 Modos de Planejamento Planejamento centralizado para múltiplos agentes
Único agente responsável por elaborar plano Coordenação centralizada para planos parciais Tarefa de elaboração de plano distribuída Único agente responsável for sincronizar/coordenar sub-planos Coordenação distribuída para planos parciais Cada agente deverá ter a iniciativa de sincronizar seu sub-plano com os demais agentes

25 Planejamento Centralizado Para Múltiplos Agentes
Apenas um agente capaz de planejar e organizar ações para todos os agentes Demais agentes são simplesmente executores de planos Construção do plano composta por 3 etapas: Encontrar um plano parcial geral Determinar pontos do plano que podem ser executados em paralelo (Identificação de sub-planos) Incluir pontos de sincronização Alocar os sub-planos para os demais agentes

26 Planejamento Centralizado Para Múltiplos Agentes
Coordenador do plano Plano Plano Plano Plano Executor Executor Executor Executor

27 Coordenação Centralizada Para Planos Parciais
Apenas a etapa de coordenação é centralizada Cada agente desenvolve seu próprio plano parcial e o encaminha para o coordenador Coordenador tenta sintetizar todos os sub-planos em um único plano coerente Identificar conflitos e eliminá-los via ordenação de ações ou inclusão pontos de sincronização Coordenador capaz de identificar tanto relações positivas quando negativas

28 Coordenação Centralizada Para Planos Parciais
Coordenador Plano parcial Plano coordenado Obj. A Obj. D Obj. B Obj. C Planejador/ Executor Planejador/ Executor Planejador/ Executor Planejador/ Executor

29 Coordenação Distribuída Para Planos Parciais
Não existe o papel de coordenador em nenhuma das etapas Cada agente planeja individualmente as ações que deseja executar de acordo com seus objetivos Maior dificuldade é identificar relações entre as ações que compõem os diversos sub-planos Agentes devem trocar informações sobre os seus planos e objetivos

30 Coordenação Distribuída Para Planos Parciais
V. Lesser e E. Durfee desenvolveram o modelo Partial Global Planning (PGP) PGP é uma estrutura contendo informações sobre os planos do agente, seu objetivos, custos associados, resultados esperados, etc. Agentes trocam PGP e tentam identificar: Agentes cujos objetivos façam parte de um objetivo de grupo Planos que possam ser combinados

31 Coordenação Distribuída Para Planos Parciais
Obj. C Obj. A Pedidos, informações e planos parciais Executor/ Planejador Executor/ Planejador Obj. B Executor/ Planejador

32 Coordenação Reativa Baseado na idéia de que é mais fácil agir diretamente, sem planejar antes ! Solução baseada em agentes reativos: Agentes simples, situados, trabalham no “presente” Não possuem representação do ambiente Reação depende da apenas da sua percepção do ambiente! Solução aparentemente simplista, porém muitos agentes reativos trabalhando juntos possuem grande capacidade Exemplos de técnicas para coordenação reativa: Campos Vetoriais para determinar movimentação de agentes móveis Marcas no ambiente para coordenar ações dos agentes

33 Ex.: Movimentação de Grupo de Agentes Reativos
Craig Reynolds (1987) propôs: Comportamento baseado em regras de posicionamento observadas por todos os membros da sociedade Especificam distância mínima, direção e velocidade dos agentes Gera comportamento similar a de pássaros migratórios Comportamento coletivo emergente ! Facilmente extensível para outras situações ! Seguir líder, dispersão, distribuição sobre território, etc. Steering behaviours: Fórmulas matemática determinam movimentação dos agentes

34 Marcação do Ambiente Idéia é utilizar o ambiente como uma forma de comunicação flexível, robusta e simples Uma Marca é um sinal ou “impressão” no ambiente Podem ser adicionadas, removidas ou lidas pelos agentes Também podem “desaparecer” com o passar do tempo Importante: Em coordenação reativa, adicionar agentes aleatoriamente não necessariamente aumenta a performance do sistema!

35 Exemplo: Montagem de uma Moto
R1 R2 Roda Traseira Motor Quadro Roda Dianteira

36 Exemplo: Montagem de uma Moto
Regra pegarPeça se não estou carregando nada e estou em frente de um depósito de peças pegar o que está na minha frente então ir para ponto de montagem Regra buscarMotor e estou no ponto de montagem e percebo a roda dianteira no ponto de montagem então ir para depósito de motor

37 Exemplo: Montagem de uma Moto
Solução com um único agente é bastante simples Com mais de um agente pode ocorrer o caso da mesma peça ser adicionada duas vezes Solução? Fazer com que agentes possam ver o que os demais estão fazendo! Funciona? Mais ou menos ... Agente R1 teria que saber se Agente R2 tem realmente a intenção de levar a peça para o ponto de montagem Não é facilmente extensível, se houver n agentes, deve-se saber o que os outros n-1 agentes estão fazendo !

38 Exemplo: Montagem de uma Moto
Solução 2: Marcar no ambiente aquilo que agentes estão fazendo no ponto de montagem Necessita apenas pequena alteração nas regras ! Regra buscarMotor se não estou carregando nada e estou no ponto de montagem e percebo a roda dianteira no ponto de montagem ou uma marca buscarRodaDianteira então ir para depósito de motor e colocar marca buscarMotor

39 Outros Tipos de Mecanismos de Coordenação
Intenções Conjuntas Conhecer as intenções dos demais agentes ajuda a coordenar ações Agentes em uma tarefa cooperativa assumem um compromisso com o grupo Devem também existir convenções sociais (guias) associadas Especificam quando um compromisso pode ser quebrado Como um agente deve se comportar perante os demais Modelagem Mútua Mecanismo de coordenação onde comunicação não é necessária Agentes possuem um modelo dos demais agentes (crenças, intenções, etc.)

40 Outros Tipos de Mecanismos de Coordenação
Normas e Leis Sociais Convenções sobre as quais o agente pode regular seu comportamento Uma norma especifica um padrão de comportamento a ser seguido. Ex.: fazer fila para entrar no cinema (Não furar fila !) Leis Sociais são normas, mas as quais estão associadas punições. Ex.: uma pessoa pode ir para cadeia por assalto a banco ! Simplifica processo de tomada de decisão Dita curso de ações a serem seguidas em determinadas situações Podem ser especificadas em tempo de projeto ou emergir a partir do próprio sistema

41 Seleção Dinâmica de Mecanismos de Coordenação
Mecanismos de coordenação vistos possuem propriedades e características distintas sendo adequados para diferentes situações Diferem principalmente quanto: Nível de coordenação a ser preestabelecida em tempo de desenvolvimento Tempo e esforço necessários para estabelecer coordenação em tempo de execução Grau de sucesso e surgimento de comportamento coordenado em determina situação

42 Seleção Dinâmica de Mecanismos de Coordenação
Não há um mecanismo de coordenação universalmente melhor ! Seria importente permitir que agentes fossem capaz de selecionar qual mecanismo usar em determinada situação: Para tarefas importantes, melhor adotar mecanismo que tem alta possibilidade de sucesso mesmo custando caro Para tarefas não muito importante, pode-se fazer o contrário ! Existem estudos que visam permitir a seleção de mecanismos de coordenação em tempo de execução Excelente-Toledo e Jennings Bastante útil quando lida-se com ambientes dinâmicos, abertos e heterogêneos

43 Bibliografia Jacques Ferber, Multi-Agent Systems – An Introduction to Distributed Artificial Intelligence Michael Wooldridge, Na Introduction to MultiAgent Systems Excelent-Toledo, Jennings, The Dynamic Selection of Coordination Mechanisms


Carregar ppt "Cooperação e Coordenação em SMA"

Apresentações semelhantes


Anúncios Google