Modelos Baseados em Agentes Simulação Multi-Agente Prof. André Campos Aula #19 DIMAp/UFRN
Simulação Simular = reproduzir um fenômeno afim de Testar hipóteses (pesquisa) Prever possíveis cenários (suporte à decisão) Monitorar sistemas (suporte de serviços) Servir de laboratório virtual (educativa) Entreter (entretenimento) Simulação voltada à pesquisa Simulação para entretenimento Simulação para suporte à decisão Simulação educativa Simulação para suporte de serviços Usuários especialistas Usuários não-especialistas DIMAp/UFRN
Modelo de simulação Para reproduzir um fenômeno precisamos ter uma idéia do que e como ele funciona, ou seja um “modelo”. Toda simulação se baseia em uma teoria conceitual de como “enxergamos” o fenômeno. Toda simulação deve “responder” a um objetivo específico “To an observer B, an object A* is a model of an object A to the extent that B can use A* to answer questions that interest him about A” (Minsky 1968) DIMAp/UFRN
Tipos de modelos Modelos determinísticos Modelos estocásticos Introdução de probabilidades (Simulação de Monte-Carlo) Utilização de algoritmos de geração de números aleatórios Modelo em seu estado inicial Evolução através do tempo (simulação) Modelo em seu estado final Modelo em seu estado inicial Evolução através do tempo (simulação) Modelo em seu estado final 2 Modelo em seu estado final 1 Modelo em seu estado final N DIMAp/UFRN
Tipos de simulação Simulação contínua Simulação discreta Evolução contínua do estado do modelo ao longo do tempo Equações diferenciais, matrizes de transição, etc. Simulação discreta Evolução abrupta do estado do modelo em passos de tempo Algoritmos comportamentais e e Simulação contínua Simulação discreta t t DIMAp/UFRN
Simulação contínua Teorias matemáticas Inconveniências Ex.: Lotka-Volterra (1926): Presa-predador P = coeficiente de predação N1 e N2 = efetivo das populações a = eficiência com a qual os predadores convertem comida em descendência r1 = taxa de fecundidade das presas d2 = taxa de mortalidade dos predadores Inconveniências Dificuldade nas representações micro-macro e espaciais Não permite representar a emergência de comportamentos DIMAp/UFRN
Simulação discreta Maior flexibilidade nas representações Mais custosa em tempo Dirigida por passos de tempo, eventos ou ambos e Baseada em tempo e Baseada em eventos t t t DIMAp/UFRN
Simulação Multi-Agente Modelos baseados em agentes (entidades autônomas, concorrentes, etc.) Outros termos similares Simulação baseada em indivíduos Modelagem baseada em agentes Simulação comportamental Decomposição Modelagem Simulação Sistema real Realidade Artificial Baseada em agentes DIMAp/UFRN
Representações Ambiente Tempo Entidades Contínuo / discreto 2D / 3D Limitado / cíclico Gestão dos limites Tempo Escala de tempo: virtual / real Entidades Objetos (ent. passivas) / agentes (ent. ativas) DIMAp/UFRN
Gerência dos agentes Concorrência Paralela – threads Mais realista, mas com problemas de sincronização Utilização de abordagens clássicas de programação paralela (semáforos) Gerenciamento otimista vs. pessimista Seqüencial (gerenciador) Mais simples, mas precisa ser gerenciado “tamanho” das ações com o tempo virtual. A B C D ... A B C D ... DIMAp/UFRN
Exemplo de gerenciamento Ger. números aleat. Utilisa Relógio virtual Núcleo de sincronização Lista de eventos Eventos Escalona 0..n Modifica Cria Ativa 1..n Entidade ativa Entidade DIMAp/UFRN
Resolução de conflitos Gestão de conflitos na ativação dos agentes ? ? Lista de eventos Evento na segunda lista de eventos Evento com maior prioridade Gestão de conflitos na execução dos eventos DIMAp/UFRN