Padrões de projeto para Sistemas Multiagentes

Post on 02-Jan-2016

47 views 4 download

description

Padrões de projeto para Sistemas Multiagentes. Allan Lima adsl@cin.ufpe.br. 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

Transcript of Padrões de projeto para Sistemas Multiagentes

PADRÕES DE PROJETO PARA SISTEMAS MULTIAGENTESAllan Lima

adsl@cin.ufpe.br

Contexto

Flexibilidade Legibilidade Reuso ...

Protocolos Mobilidade Tarefas ...

Padrões de Projeto SMA

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?

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

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

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

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.

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

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

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

EXEMPLOS DE IMPLEMENTAÇÃO DOS PADRÕES

Itinerary

Itinerary

Meeting

Meeting

Master-Slave

Master-Slave

Master-Slave

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.

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/

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

Obrigado!

PADRÕES DE PROJETO PARA SISTEMAS MULTIAGENTESAllan Lima

adsl@cin.ufpe.br