22
PADRÕES DE PROJETO PARA SISTEMAS MULTIAGENTES Allan Lima [email protected]

Padrões de projeto para Sistemas Multiagentes

Embed Size (px)

DESCRIPTION

Padrões de projeto para Sistemas Multiagentes. Allan Lima [email protected]. Contexto. Padrões de Projeto. SMA. Flexibilidade Legibilidade Reuso. Protocolos Mobilidade Tarefas. Padrões de Projeto + SMA?!. C omplexidade dos SMA Problemas no nível de arquitetura e implementação - PowerPoint PPT Presentation

Citation preview

Page 1: Padrões de projeto para Sistemas  Multiagentes

PADRÕES DE PROJETO PARA SISTEMAS MULTIAGENTESAllan Lima

[email protected]

Page 2: Padrões de projeto para Sistemas  Multiagentes

Contexto

Flexibilidade Legibilidade Reuso ...

Protocolos Mobilidade Tarefas ...

Padrões de Projeto SMA

Page 3: Padrões de projeto para Sistemas  Multiagentes

Padrões de Projeto + SMA?!

Complexidade dos SMA Problemas no nível de arquitetura e

implementação Em todos os sistemas muitos problemas

similares são resolvidos de formas distintas. Por que não criar padrões de projeto

para a catalogar tais soluções?

Page 4: Padrões de projeto para Sistemas  Multiagentes

Roteiro

Visão geral dos Padrões de Projeto para Agentes Classificação Traveling Patterns Task Patterns Interaction Patterns

Exemplos de Padrões Master-Slave Meeting Itinerary

Page 5: Padrões de projeto para Sistemas  Multiagentes

VISÃO GERAL DOS PADRÕES DE PROJETO PARA AGENTES

Page 6: Padrões de projeto para Sistemas  Multiagentes

Classificação

Tipo Descrição

Traveling Trata dos aspectos para gerenciar a mobilidade dos agentes, como roteamento e qualidade do serviço

Task Trata das tarefas e como estas são delegadas para um ou mais agentes

Interaction

Concentram-se na localização e nas forma das interação

Page 7: Padrões de projeto para Sistemas  Multiagentes

Traveling Patterns

Nome Descrição

Itinerary Mantém uma lista de destinos, define o esquema de roteamento, trata casos especiais e sempre fornece o próximo destino para o agente.

Também permite guardar os caminhos evitando refazer os cálculos.

Forwarding

Provê uma forma de direcionar agentes que chegam a um local para outro automaticamente.

Ticket Baseia-se um representação mais complexa de um endereço (ticket), encapsulando informações como permissões e time to live, necessárias para despachar um agente para um local.

Page 8: Padrões de projeto para Sistemas  Multiagentes

Task Patterns

Nome Descrição

Master-Slave

Permite ao agente mestre delegar um tarefa para um agente escravo.

O mestre cria o escravo, que se move ao seu destino, realiza a tarefa e retorna com o resultado para seu mestre.

Plan Adota uma seqüência de passos para organizar múltiplas tarefas e realizá-las seqüencialmente ou de forma paralela por múltiplos agentes

Page 9: Padrões de projeto para Sistemas  Multiagentes

Interation Patterns

Nome Descrição

Meeting

Provê uma forma para dois ou mais agentes iniciar uma interação local. Abstraindo problemas como o de sincronização.

Traz o conceito de meeting place.

Locker Restringe o acesso a um determinado dado de forma temporal. Evitando o aceso a dados que não são necessários ou permitidos no momento.

Ex.: Uma modificação no estoque só pode ser feita no horário comercial.

Menos dados transferidos e integridade para o sistemaProtocolos de comunicação mais complexos

Page 10: Padrões de projeto para Sistemas  Multiagentes

Interation Patterns

Nome Descrição

Messenger Define uma mensagem como um agente, responsável por mover-se até o destinatário e entregar a informação, enquanto o agente que o enviou continua o seu trabalho normalmente

Facilitator Define um serviço de nomes e localização para os agentes.

Permite que a informação seja acessa de forma transparente, sem saber-se onde os agentes a detêm se encontram

Organized Group

Compõe grupos de agentes que viajam juntosFundamental para a colaboração

Page 11: Padrões de projeto para Sistemas  Multiagentes

EXEMPLOS DE IMPLEMENTAÇÃO DOS PADRÕES

Page 12: Padrões de projeto para Sistemas  Multiagentes

Itinerary

Page 13: Padrões de projeto para Sistemas  Multiagentes

Itinerary

Page 14: Padrões de projeto para Sistemas  Multiagentes

Meeting

Page 15: Padrões de projeto para Sistemas  Multiagentes

Meeting

Page 16: Padrões de projeto para Sistemas  Multiagentes

Master-Slave

Page 17: Padrões de projeto para Sistemas  Multiagentes

Master-Slave

Page 18: Padrões de projeto para Sistemas  Multiagentes

Master-Slave

Page 19: Padrões de projeto para Sistemas  Multiagentes

Conclusões/Avaliação Crítica Padrões para agentes podem ser úteis

para resolver diversos problemas específicos com flexibilidade.

Mas não são suficientes para desenvolver um sistema por completo.

Foco na mobilidade. Área pouco explorada, falta de

continuidade das pesquisas e poucos autores.

Page 20: Padrões de projeto para Sistemas  Multiagentes

Para Saber Mais

ARIDOR, Y. & LANGE, D. B. 1998. Agent Design Patterns.

SAUVAGE, S. 2004. Design Patterns for Multiagent Systems.

TVEIT, A. 2001. A Survey of Agent-Oriented Software Engineering.

KENDALL, E. A. et al. 1998. Patterns of Intelligent and Mobile Agents.

Material disponível em: www.cin.ufpe.br/~adsl/mestrado/cadeiras/doa/

Page 21: Padrões de projeto para Sistemas  Multiagentes

DÚVIDAS, CRÍTICAS, SUGESTÕES?

Obrigado!

Page 22: Padrões de projeto para Sistemas  Multiagentes

PADRÕES DE PROJETO PARA SISTEMAS MULTIAGENTESAllan Lima

[email protected]