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

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

Sistemas Multiagentes

Apresentações semelhantes


Apresentação em tema: "Sistemas Multiagentes"— Transcrição da apresentação:

1 Sistemas Multiagentes
Luis Otavio Alvares (II-UFRGS)

2 Sistemas Multiagentes Reativos
Características Modelos Ambientes Exemplos

3 Motivação para o estudo de SMA Reativos
Precisamos de agentes complexos para realizar tarefas complexas ou podemos realizar uma tarefa complexa através de interações de muitos agentes simples? exemplo clássico: colônia de formigas

4 Características dos agentes reativos
não há representação explícita do ambiente nem de outros agentes não há memória das ações (histórico) organização etológica comportamento simples do tipo estímulo-resposta comunicação através do ambiente pela propagação de sinais

5 Modelos de SMA Reativos
Funcionalidade Emergente (Luc Steels) Eco-resolução (Jacques Ferber) PACO (Yves Demazeau)

6 Modelo da Funcionalidade Emergente
- Baseado na arquitetuta de subsunção (subsumption architecture, Brooks 86) - Cada módulo é um autômato de estado finito - Realização de vários robôs reais

7 Exemplo: robôs mineradores (Steels)
Um conjunto de robôs deve procurar e coletar minerais e levá-los para a base central.

8 Comportamento do Robô 1- Evitar obstáculo
2- Se perceber a base central e estiver carregado, descarregar 3- Se perceber um mineral e não estiver carregado, pegá-lo 4- Realizar movimento aleatório

9 Projeto do robô

10 Comportamento do robô 2 1- Evitar obstáculo
2- Se perceber a base central e estiver carregado, descarregar 3- Se perceber um mineral e não estiver carregado, pegá-lo 4- Se estiver carregado, seguir maior gradiente 5- Realizar movimento aleatório

11 Projeto do robô 2

12 Obervações: O robô 2 não apresenta nenhuma forma de cooperação
Não permite retornar ao local da jazida de mineral Como melhorar isto?

13 Robô 3 1- Evitar obstáculo
2- Se perceber a base central e estiver carregado, descarregar 3- Se perceber um mineral e não estiver carregado, pegá-lo 4- Se estiver carregado, seguir maior gradiente, deixando uma pista 5- Se encontrar uma pista e estiver descarregado, seguir na direção do menor gradiente 6- Realizar movimento aleatório

14

15 Interpretação dos resultados:
O Robô 3 possui um mecanismo simples de manutenção e compartilhamento de informação, utilizando o ambiente Como memória 64 robôs - melhor resultado (1.113 ciclos) média ciclos maior nro robôs => maior chance de encontrar o minerais mecanismo de criação de pistas: espécie de catalizador variações entre populações próximas: pelo que acontece quando os depósitos ficam esgotados

16 Robô 4 1- Evitar obstáculo
2- Se perceber a base central e estiver carregado, descarregar 3- Se perceber um mineral e não estiver carregado, pegá-lo 4- Se estiver carregado, seguir maior gradiente deixando uma pista 5- Se encontrar uma pista e estiver descarregado, seguir na direção do menor gradiente, retirando a pista 6- Realizar movimento aleatório

17

18 Interpretação dos resultados
Perda evidente de desempenho para população > 70 robôs O que perde em eficiência, ganha em predição (não há grandes variações entre populações próximas) Perda de eficiência: após um robô ter deixado o mineral na base, há forte probabilidade de outro robô ter encontrado a pista e a ter seguido, retirando a pista. Em vez de um mecanismo de compartilhamento de informação obtivemos um mecanismo de transferência de informação

19 Robô 5 1- Evitar obstáculo
2- Se perceber a base central e estiver carregado, descarregar 3- Se perceber um mineral e não estiver carregado, pegá-lo 4- Se estiver carregado, seguir maior gradiente deixando duas pistas 5- Se encontrar uma pista e estiver descarregado, seguir na direção do menor gradiente, retirando uma pista 6- Realizar movimento aleatório

20

21 Interpretação do resultado
média: ciclos mínimo: ciclos melhor solução para população < 85 robôs problema para mais de 85 robôs: - deformação das pistas: um robô que retorna se encontra comoutros que vão para o mineral - verdadeiros bloqueios, engarrafamentos, próximo à base central

22 Modelo da Eco-Resolução (Jacques Ferber)

23 Eco-Resolução Técnica de resoluç ão de problemas
Um problema é decomposto em um conjunto de eco-agentes Cada eco-agente possui um objetivo (atingir um estado de satisfação) e dois comportamentos gerais: - de satisfação: procura atingir seu estado de satisfação - de fuga: de outro agente que o está “agredindo”

24 Exemplo: PENGI Agre e Chapman: inviável com algoritmo de planejamento

25 PENGUI: Comportamento dos agentes
ABELHAS: - estado de satisfação: matar o pingüim - comportamento de satisfação: ir em direção ao pingüim PINGÜIM: - estado de satisfação: não haver mais diamantes a pegar - comportamento de satisfação: ir em direção ao diamante mais próximo - comportamento de fuga: ir para uma casa o mais longe possível das abelhas. Ou para a mais próxima, se há um cubo de gelo adjacente, na direção da abelha

26 PENGUI (cont.) Comportamento “inteligente”
- parece que o pingüim é inteligente, pois muitas vezes mata a abelha com cubos de gelo - não há nenhuma atividade de “caça às abelhas” - nós é que consideramos em tudo uma intencionalidade, que muitas vezes não existe

27 Exemplo: Quebra-cabeça de 8

28 Abordagem clássica - abordagem clássica: orientada a estados
(algorimo A* e variantes) - limitada

29 Exemplo: Quebra-cabeça de 8 (cont.)
- mudança de enfoque para abordagem orientada a agentes - cada peça será um agente - a escolha do movimento de uma peça (agente)será baseada: - na distância do seu objetivo - na distância do “branco” - ordem de resolução:

30 Exemplo: Quebra-cabeça de 8 (cont.)
- comportamento de satisfação: ir para a casa mais próxima do objetivo. Se houver duas casas eqüidistantes, ir para a mais próxima do branco - comportamento de fuga: ir para o seu objetivo, se for adjacente. Senão, ir para a casa mais próxima do branco. Se houver duas casas eqüidistantes, ir para a mais próxima do seu objetivo. Restrições: não ir para a casa que é o do agressor e não ir para a casa que é o objetivo do antecessor do agressor na ordem de preenchimento.

31 Problema do canto

32 Exemplo: Quebra-cabeça de 8 (cont.)
- resultados experimentais até 899 peças (30x30) (Drogoul 93) - validade para qualquer tamanho de jogo - validade mesmo para tabuleiro retangular

33 Modelo PACO (Y. Demazeau)
Em vez de considerar a solução de um problema como o resultado da minimização de uma função global de energia simplesmente expresse o problema como o estado de equilíbrio de um conjunto de agentes que interagem entre si e com o ambiente através de forças

34 Modelo PACO (cont.) Técnica de resolução de problemas
Um problema é definido como um conjunto de agentes que tentam encontrar um estado de equilíbrio Os agentes são caracterizados por campos: - de percepção (o que ele percebe do ambiente) - de comunicação (agentes que o influenciarão na execução de uma ação ) - de força (agentes sobre os quais ele pode agir)

35 Modelo PACO (cont.) O comportamento do agente é baseado num ciclo:
regulagem e aquisição - definição dos campos de percepção e comunicação processamento - cálculo das forças exercidas sobre o agente regulagem e ação - cálculo da nova posição do agente

36 Exemplo: Generalização Cartográfica
Processo de abstração usado quando a escala do mapa é reduzida. Envolve modificação dos dados de modo que possam ser representados em um espaço menor, preservando da melhor forma possível os aspectos geométricos e descritivos. A maioria dos mapas em pequenas e médias escalas são obtidos por generalização de grandes escalas.

37 Generalização Cartográfica
Processo de abstração usado quando a escala do mapa é reduzida. Envolve modificação dos dados de modo que possam ser representados em um espaço menor, preservando da melhor forma possível os aspectos geométricos e descritivos. A maioria dos mapas em pequenas e médias escalas são obtidos por generalização de grandes escalas. ex: França - mapa básico: 1/25.000 generalizados: 1/50.000 1/

38 Generalização Cartográfica
Dificuldade: escolher como representar um número suficiente de objetos geográficos numa superfície reduzida, usando símbolos que preservem a identificabilidade do objeto Numerosas modificações nos dados são necessárias. Exemplo:

39 Generalização Cartográfica

40 Generalização Cartográfica
Fatores que influenciam a generalização: Escala Objetivo do mapa Simbolização Meio de saída

41 Generalização Cartográfica
Automatização abordagem algorítmica sistemas baseados em conhecimento problema: independência de contexto solução: sistemas multiagentes reativos

42 O modelo proposto entradas: dados oriundos de um BD Geográfico (classe do objeto, coordenadas, etc…) -características da saída desejada processamento: baseado num modelo de forças eletrostáticas de atração e repulsão saída: mapa

43 O Modelo Proposto importância do objeto (massa) Agentes:
cada ponto, representado no BD por suas coordenadas, corresponde a um agente no modelo Pré-ordem: importância do objeto (massa) Grupo natural: agentes associados a um mesmo ponto geográfico Grupo artificial: agentes com topologia comum

44 O Modelo Proposto Interações: baseadas em forças
Força de repulsão entre agentes Força de acompanhamento integral Força de acompanhamento proporcional Força de retorno à posição original Troca de simbologia

45 O Modelo Proposto

46 O Modelo Proposto

47 Resultados Obtidos

48 Outros exemplos de SMA Reativos
Aplauso MMAS

49 Francis Van Aeken (LEIBNIZ-IMAG) Luis Otavio Alvares (UFRGS)
Third Iberoamerican Workshop on DAI MAS Synthesising Applause Using Multi-Agent Systems Francis Van Aeken (LEIBNIZ-IMAG) Luis Otavio Alvares (UFRGS)

50 Sumário Música e IA / SMA Aplauso Palma simples Síntese estocástica
Síntese com SMA

51 Música e IA / MAS a música tem sólidos fundamentos matemáticos e científicos musicalidade x inteligência: a música toca a essência do ser humano e é pouco compreendida é fácil construir programas para produzir “música correta” , mas a saída destes programas é pobre na qualidade difícil de definir denominada musicalidade Como no caso da inteligência, os computadores estão longe de igualar o ser humano em competência musical orquestra, conjunto x agentes: um grupo de agentes em interação

52 Aplauso Aplauso x música: é som produzido por alguém utilizando as mãos como instrumento. Envolve ritmo, pode ser sincronizado,... componentes do aplauso O instrumento O executor O conjunto A peça Tipos de aplauso: musical, em sala, em auditório

53 Palma simples

54 Síntese Estocástica Fácil de implementar Resultados
como pipoca estourando

55 MAS Synthesis Agente simples: bate palmas com um período fixo
Múltiplos agentes Uma coleção de agentes reativos simples: para cada agente a duração e os valores médios para amplitude, “pitch” e período são determinados aleatoriamente resultado: surpreendentemente natural

56 Síntese c/ SMA : múltiplos agentes sincronizados
Modelo: sincronização por escuta blackboard ajuste: calcula o período médio de cada par de palmas encontrado calcula o atraso médio entre a palma corrente e a última palma de cada par ajusta o período médio e o timeAtNextClap usando o período médio e o atraso

57 Síntese c/ SMA : múltiplos agentes sincronizados
Resultados muito satisfatórios: os agentes sincronizam-se facilmente em período e fase timing of multiple synchronising agents

58 Síntese c/ SMA : múltiplos agentes sincronizados
Modelo: agentes ouvem apenas os 2 vizinhos mesmo algoritmo – exceto que só os dois vizinhos são percebidos

59 Síntese c/ SMA : múltiplos agentes sincronizados
Resultados: Difícil de sincronizar – sincronização local e não global timing of multiple myopic synchronising agents

60 Ambientes de desenvolvimento de SMA Reativos

61 Ambientes de desenvolvimento de SMAR
SIEME - Simulateur Evenementiel Multi-Entités [Magnin 96] Totalmente integrado ao sistema de programação Smalltalk Toda a especificação é realizada diretamente em Smalltalk, utilizando classes pré-definidas. Utilizado na simulação de robôs móveis

62 O Sistema de simulação Swarm: Uma ferramenta para construir simulações Multiagentes
Nelson Minar, Roger Burkhart, Chris Langton Instituto Santa Fé - Novo México

63 Abordagem computacional para sistemas complexos
Histórico Principais elementos Orientação à objetos Arquitetura do sistema Bibliotecas

64 Abordagem computacional para sistemas complexos
Construção de software complicada Pesquisadores escrevem o software Software muito específico Duplicação de esforços Software construído sem métodos da engenharia de software

65 Swarm - Histórico Iniciou em Chris Langton - Instituto Santa Fé - Novo México. Objetivo: Criação de um conjunto de fer-ramentas para a construção de simuladores. Versão beta em 95. Versão 1.0 em 1997 Futuro: 95/NT - Cliente servidor - Paralelismo

66 Simulação de eventos discretos multi-agentes
Coleção de agentes independentes interagindo através de eventos Pode ser utilizado em diversas áreas Unidade básica: agente Agente: entidade que pode gerar eventos que afetam a si mesmos e a outros agentes Ex: ecologia: coiotes, coelhos e cenouras

67 Tipos de agentes

68 Swarm - Schedule Schedule- define os processos que ocorrerão em um intervalo de tempo É uma estrutura que combina as ações em uma ordem específica Exemplo de ações: a) Coelhos comem cenouras b) Coelhos escondem-se dos coiotes c) Coiotes comem coelhos

69 Exemplo: Ecologia

70 Swarm Componente fundamental: Objeto swarm
Um agente é modelado a partir do objeto básico swarm Um agente pode ser constituído de uma coleção de agentes (estrutura hierárquica) Conjunto de agentes + schedule de ativi-dades Podem ser criados e destruídos durante a simulação

71 Simulação de eventos discretos

72 Hierarquia

73 Tecnologia orientada a objetos
Implementado em Objective C Classes: representam tipo de agentes Objetos: um agente específico Os agentes derivam da classe swarm

74 Métodos: comportamentos do agente.
Ex: Coelhos escondem-se dos coiotes

75 Sistema Swarm- Framework
Bibliotecas de classes defobj,collection,random,tkobj (uso geral) activity,objectbase,simtools (específicas)

76 Observação da simulação “Probe”
Capacidade de que cada objeto possa ser observado Os estados podem ser lidos ou alterados e os métodos chamados de uma forma genérica, sem requerer código do usuário Probes são utilizadas para fazer com que ferramentas de análise funcionem de forma genérica

77 Probe

78 Probes e GUI Probes podem ser utilizadas para a comunicação em tempo real com o objeto através de uma janela.

79 Arquitetura do sistema

80 Estrutura da simulação
Modelo swarm “habitado” por grupo de agentes schedule de atividades Normalmente “vivem”em um ambiente (agente) No swarm não existe um ambiente pré-definido

81 Estrutura da simulação

82 Bibliotecas de simulação
objectbase Contém classes base para criação de agentes. activity Contém o mecanismo de simulação (controle de tempo, dependência de tempo entre eventos). Estrutura de dados do “schedule”. Eventos simultâneos (ordem arbitrária, randômica, ou paralelismo). simtools Dados estatísticos, análise, gráficos, etc.

83 Bibliotecas específicas
space Suporte a espaços bi-dimensionais ga Suporte a algoritmos genéticos neuro Suporte a redes neurais

84 Swarm (conclusão) Possibilidade de criação de sistemas com-plexos
Simplifica a construção de modelos Possibilita que os pesquisadores se concentrem nas especificidades de seus próprios domínios Exemplos de áreas de aplicação: química, economia, física, antropologia, ecologia, ciências políticas

85 sistema SIMULA [Frozza 97]
Desenvolvido para fins didáticos objetivo: diminuir o esforço de programação para desenvolver sistemas multiagentes reativos definição de aplicação: - tipos de agentes - comportamento dos agentes - disposição inicial dos agentes no ambiente

86 Simula (cont.)

87 Simula (cont.) Regras de Comportamento
pré-condição: condição para execução do comportamento ação: comportamento a ser executado pós-condição: atualização de variáveis prioridade: ordem para execução das regras


Carregar ppt "Sistemas Multiagentes"

Apresentações semelhantes


Anúncios Google