24
DESIGN PATTERNS FOR SELF-ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Embed Size (px)

Citation preview

Page 1: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

DESIGN PATTERNS FOR SELF-ORGANIZING MULTIAGENT SYSTEMSLuca Gardelli, Mirko Viroli e Andrea Omicini

Page 2: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Sumário

Introdução Padrão: Replicação Padrão: Ordenação coletiva Padrão: Evaporação Padrão: Agregação Padrão: Difusão Conclusão

Page 3: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Introdução

Apresenta padrões de projeto simples Baseados em sistemas naturais

Padrões simples podem gerar padrões complexos

Page 4: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Replicação

Mecanismo para aumentar a segurança e robustez Cada célula do corpo humano possui sua

cópia local de DNA

Page 5: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Replicação

Características: Informações não são perdidas em casos de

ataques a agentes Acesso mais rápido a informação

Page 6: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Replicação

Conseqüências: Maior uso de memória Não funciona com outros padrões que

espalham informações pelo sistema Ordenação coletiva Difusão

Page 7: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Replicação

Usos conhecidos: Memória cache

Replica parcialmente a memória RAM para acesso mais rápido

Soluções RAID Replica memória para acesso mais rápido e/ou

recuperação de informação Infra-estruturas de Grids

Redução da latência da rede

Page 8: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Ordenação coletiva

Mecanismo para ordenação de determinados itens de acordo com um critério específico Ordenação de ovos e larvas em colônias de

formigas Coleta de lixo

Page 9: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Ordenação coletiva

Características: Suporta condições imprevisíveis do

ambiente Localização dos clusters não é definida de

antemão

Page 10: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Ordenação coletiva

Conseqüências: Não funciona com outros padrões que

espalham informações pelo sistema Replicação Difusão

Page 11: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Ordenação coletiva

Usos conhecidos: Explorações em robótica para ordenar

ambientes físicos

Page 12: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Evaporação

Mecanismo para redução de quantidade de informações baseadas no tempo Uso de feromônios para marcar atividades

específicas como coleta de alimentos

Page 13: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Evaporação

Características: Capacidade de remover informações

obsoletas ao sistema Informações removidas não podem ser

restauradas

Page 14: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Evaporação

Conseqüências: Não é apresentada nenhuma pelo artigo

Page 15: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Evaporação

Usos conhecidos: Aplicações baseadas em feromônios

digitais Mecanismos de coordenação para veículos não

tripulados

Page 16: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Agregação

Mecanismo de reforço através de agrupação de informações Separadas quantidades de feromônios são

percebidas como uma única quantidade intersa de feromônios

Page 17: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Agregação

Características: Capacidade de agregar informações

separadas de mesma natureza Obtenção de macro informações

Page 18: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Agregação

Conseqüências: Não é apresentada nenhuma pelo artigo

Page 19: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Agregação

Usos conhecidos: Aplicações baseadas em feromônios

digitais Aplicações de e-commerce

Feedback dos consumidores Criação de rankings

Page 20: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Difusão

Mecanismo de distribuição de informações de forma igual entre os nós vizinhos Feromônios tendem a espalhar pelas

localizações vizinhas

Page 21: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Difusão

Características: Obtenção de informações referentes aos

nós vizinhos Evitando falta de informação referente a

vizinhança

Page 22: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Difusão

Conseqüências: Não funciona com outros padrões que

espalham informações pelo sistema Replicação Ordenação coletiva

Page 23: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Padrão: Difusão

Usos conhecidos: Aplicações baseadas em feromônios

digitais Aplicações de e-commerce

Dicas de ‘veja também’ em produtos com características semelhantes

Page 24: DESIGN PATTERNS FOR SELF- ORGANIZING MULTIAGENT SYSTEMS Luca Gardelli, Mirko Viroli e Andrea Omicini

Conclusão

Formalizar padrões simples que permitem a auto-organização em SMA