Modelos Baseados em Agentes:
Sugarscape
Sumário
1. Introdução
Quase todas as pesquisas de cunho social necessitam de representações simplificadas do problema;
A lógica para desenvolver modelos usando o
computador não é muito diferente da lógica usada para os mais familiares modelos de estatística;
Simulações feitas através de computadores é
largamente adotada na engenharia e nas ciências biológicas, mas é comparativamente recente nas ciências sociais;
Recentemente com o aparecimento dos modelos baseados em agentes isso está sendo mudado.
Introdução
• Classe representa um conjunto de objetos com características afins.
•Uma classe define o comportamento dos objetos, através de métodos, e quais estados ele é capaz de manter, através de atributos.
Exemplo de classe: Os seres humanos. • Objeto é uma instância de uma classe.
•Um objeto é capaz de armazenar estados através de seus
atributos
Exemplo de objetos da classe Humanos: João, Maria.
• Atributos são características de um objeto:
• Rio: nome, bacia a qual pertence,espécies de peixes • O conjunto de valores dos atributos de um determinado objeto é chamado de estado.
• Métodos definem as habilidades dos objetos.
• Bidu é uma objeto da classe Cachorro, portanto tem habilidade para morder, implementada através do método Morder().
.
Orientação a Objetos
O melhor caminho para melhorar a qualidade dos códigos do programa é escolher uma linguagem orientada a objetos.
• Simplifica a tradução do problema em um conjunto de agentes e eventos.
• Agentes se tornam objetos
• Eventos se tornam passos ativados por loops no programa.
.
(Gilbert – Terna, 1999)
O que são Objetos?
• Objetos são um pedaço de código contendo dados e regras que os operam.
• Tudo pode ser transformado em objetos Computacionais. • Um objeto carro tem funções como andar, parar, entre outras. Tem propriedades como número de rodas
(inteiro), cilindradas do motor (Real), se tem ou não ar condicionado (verdadeiro ou falso)
Objetos
O que é ABM?
• “Um modelo baseado em agentes constitui de um
sistema de agentes e das relações entre eles” (Bonabeau,
2002);
• “ABM é um método mais do que uma tecnologia.
Consiste em descrever um sistema da perspectiva de suas unidades constituintes” (Bonabeau, 2002);
• “ABM é um novo paradigma e um dos mais excitantes
desenvolvimentos práticos na modelagem desde a invenção do Banco de dados relacional” (Macau - North, 2005).
O que é um Agente?
Várias definições, cada autor define de uma forma, as mais relevantes são:
• “O termo deveria ser interpretado como ator
ou quem está fazendo alguma coisa”
(Rahman,2007);
•“Coleção de entidades autônomas nas suas tomadas de decisões” (Bonabeau, 2002).
ABM´s Agentes
Características de um Agente:
• Deve ser identificável, um indivíduo discreto com um conjunto de características e regras governando seu comportamento;
• Deve estar situado em um ambiente interagindo com outros agentes;
• Um agente deve ser orientado por objetivos; • Ser autônomo;
• Ser flexível com a habilidade de aprender.
Macal e North (2005)
Autores
• Joshua M. Epstein
• Um pioneiro em modelagem computacional baseada em agente, Josh Epstein tem feito recentemente um trabalho inovador em epidemia e bioterrorismo. Usa a modelagem para estudos de comportamento de
violência e de tabagismo. •Robert Axtell
• Deixou
Brookings no outono de 2007 e,
atualmente, é um professor na George Mason
University, Krasnow Institute for Advanced Study.
• Distribuição espacial de um recurso(s) necessário(s) para a
sobrevivência dos agentes
• O espaço é um grid 2D.
• Para cada célula é permitido conter apenas apenas um
agente.
Vida e Morte no Sugarscape
No começo havia açúcar
• Para cada coordenada do grid existem duas variáveis Nível e
capacidade de açúcar.
• Ambiente consiste de regiões ricas ou não de recursos.
• O posicionamento inicial os agentes é randômico.
Podem ter sorte ou não na sua localização.
• Os agentes nascem dentro do Sugarscape com capacidade de perceber o ambiente (visão).
• Cada movimento custa um certa quantidade de energia. Quantidade que depende da taxa de metabolismo de cada agente.
• O agente morre se queimar toda sua açúcar.
Vida e Morte no Sugarscape
No começo havia açúcar
Vida e Morte no Sugarscape
Regra básica regente no modelo:
• Olhe em sua volta tão longe quanto sua visão permite nas quatro principais direções e identifique a célula desocupada que tem a maior quantidade de açúcar;
• Se o maior valor de açúcar aparecer em múltiplas
células então selecione o mais próximo;
• Mova até a célula
• Cada agente carrega o código genético do seu metabolismo e
do seu nível de visão. (População heterogênea)
• Metabolismo: Quantidade de açúcar queimado por passo
de tempo, ou interação, de 1 a 4. (randômico)
• Nível de visão: Valor da capacidade de visão do agente,
de 1 a 6. (Randômico)
Vida e Morte no Sugarscape
•Cada agente nasce com uma quantidade de açúcar em seu
depósito particular.
• açúcar comida e não queimada é armazenada no depósito.
• Não existe limite de açúcar para o depósito.
• Para cada célula a açúcar se recompõe após o seu consumo pelo agente.
• Quatro regras básicas para esta recomposição.
• a açúcar se regenera instantaneamente para a capacidade máxima.
•G∞
• Se regenera através de uma taxa por unidade de tempo. •Gx
• A sua recomposição depende do nível das células vizinhas. • A açúcar pode crescer com diferentes taxas em diferentes
regiões.
Vida e Morte no Sugarscape
• Se regenera através de uma taxa por unidade de tempo (Gx).
Vida e Morte no Sugarscape
Segunda rodada
• Tendência de permanência dos agentes com baixo metabolismo e alta capacidade de visão.
•Os agentes começaram com medias de visão e metabolismo de 3.5 e 2.5 após 500 interações a seleção incrementou a visão para 4.1 e reduziu a media do metabolismo para 1.8
Vida e Morte no Sugarscape
Seleção Natural
•Alteração nas regras dos agentes:
• MORTE
•Eles devem morrer de acordo com uma idade determinada randomicamente em um intervalo de [a,b]
• Substituição de agentes:
• A cada morte um novo agente nasce com suas características genéticas, metabólicas e de
posição geradas randomicamente.
Vida e Morte no Sugarscape
Saúde e sua distribuição
Vida e Morte no Sugarscape
Migração
A poluição degrada o ambiente no qual os agentes
vivem, reduzindo o bem estar dos mesmos.
Pode ser gerada a partir de:
1. Movimento dos agentes;
2. Colheita do açúcar;
3. Através do consumo do agente;
4. Crescimento da açúcar.
Vida e Morte no Sugarscape
Poluição
Poluentes
• Existem vários tipos de poluentes;
• Cada um com diferentes taxas de produção;
• Podem ser transportados para outras células com coeficientes diferentes;
• Podem ter um coeficiente de crescimento ou de decrescimento;
O que muda nos agentes com a poluição:
• Afeta diretamente os agentes deixando-os • Doentes;
• Degradando a visão;
• Aumentando o metabolismo.
• Ou simplesmente eles não gostam da poluição e tentam evitá-la.
Vida e Morte no Sugarscape
Poluição
Regra da formação da poluição P
αβ:
• “Quando uma quantidade de açúcar é colhida do modelo, um montante de produção de poluente é gerado em quantidade αS”.
• “Quando uma quantidade de açúcar é consumida (metabolizada), a poluição de consumo é produzida de acordo com βm”.
pt = pt-1 + αS + βm
Nova regra de movimento:
• Olhe o mais longe que sua visão permita nas
quatro principais direções e identifique a célula não ocupada com maior taxa de açúcar por poluição; • Selecione o mais perto dentre os selecionados; • Mova para esta célula;
• Colete toda a açúcar desta nova posição.
Vida e Morte no Sugarscape
Poluição
Transporte da poluição:
• É feito por difusão de células com alto níveis para células com baixo nível.
Regra da difusão:
• Para cada período de tempo α, computar o fluxo de poluição – a média do nível de poluição de cada
vizinho.
• Após o fluxo das células este torna-se o seu novo nível de poluição
Fig pag 49
Vida e Morte no Sugarscape
Poluição
• Reprodução;
• regras de reprodução; processos culturais e de combate;
• Comércio no Sugarscape;
• Regras de comércio; redes emergentes de comércio;
• Doenças;
• redes de transmissão de doenças; Respostas do sistema imunológico.
Algoritmos do Sugarscape
Classe Sugarscape
• Os ABM´s são funcionais?
• Modelos computacionais como o Sugarscape podem dar um direcionamento para estudos que antes nunca haviam sido pensados. • Podem-se gerar estudos mais sustentáveis através destes modelos. Tais como um melhor sistema de coleta e de tratamento de resíduo. Tudo isso pode ser visto e analisado a cada iteração
• Quando todas as variáveis estão ligadas (sexo, cultura, crédito, doenças, combate...), os resultados analíticos são muito difíceis de serem analisados. Necessita-se de mais desenvolvimento para um novo e formal método de análise.
• Casos onde existem exponencial no número de commodities são praticamente impossíveis de se resolver computacionalmente.
Conclusões
• Macal, C. M. e North, M. J. (2005). “Tutorial on Agent-Based Modelling and Simulation”, in Kuhl, M.E., Steiger, N.M, Armstrong, F.B and Joines, J. A. (eds.), Proceedings of the 2005 Winter Simulation Conference.
• Bonabeau, E. (2002). “Agent-Based Modelling: Methods and Techniques for Simulating Human Systems”, Proceedings of the National Academy of Sciences of the USA (PNAS).
• Epstein, J. M. and R. Axtell. 1996. “Growing artificial societies: social science from the bottom up”, Cambridge, MA: MIT Press.
•A. Rahman, S. Setayeshi, & M.S. Zafarghandi. “An Analysis to Wealth Distribution Based on Sugarscape Model in an Artificial Society”, International Journal of
Engineering, Vol. 20, Number 3, Tehran, Iran, 2007.
• Gilbert, N. and Terna, P. (1999).“How to build and use agent-based models in social
science.” Mind & Society, 1, forthcoming.