Carregar apresentação
A apresentação está carregando. Por favor, espere
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
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
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
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
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.