Agent-based Model and NetLogo 成功大學數學系 陳旻宏 Agent-based model An agent-based model (ABM) is a class of computational models for simulating the actions and interactions of autonomous agents . It combines elements of game theory, complex systems, emergence, computational sociology, multi-agent systems, and evolutionary programming. Monte Carlo Methods are used to introduce randomness. http://en.wikipedia.org/wiki/Agent-based_model From the lower (micro) level of systems to a higher (macro) level: The models simulate the simultaneous operations and interactions of multiple agents, in an attempt to re-create and predict the appearance of complex phenomena. Simple behavioral rules generate complex behavior. This principle, known as K.I.S.S. ("Keep it simple, stupid") is extensively adopted in the modeling community. Bounded rational: Individual agents are typically presumed to be acting in what they perceive as their own interests, such as reproduction, economic benefit, or social status using heuristics or simple decision-making rules. ABM agents may experience "learning", adaptation, and reproduction. Models of Segregation 謝林實驗 Thomas Schelling提出的種族隔離的動態模型 (Models of Segregation),以棋盤作為住宅,兩種不同硬幣分別對映黑人 白人, 給定原則決定是否遷移:一種是種族歧視,只要相鄰格 子有不同膚色的人, 就會想搬家; 另一種則是不希望自己是少 數;若在住家附近自己是少數,則會想搬家。結果發現,固然 種族歧視會造成種族隔離的現象,不希望自己是少數的傾向也 會造成種族隔離的現象。 建議閱讀: 隱藏的邏輯:掌握群眾行為的不敗公式 by 布侃南 The Social Atom:Why the Rich Get Richer, Cheaters Get Caught, and Your Neighbor Usually Looks Like You by Mark Buchanan 初始分佈 因偏好而產生的 Segregation NetLogo NetLogo is an agent-based programming language and integrated modeling environment. NetLogo was designed, in the spirit of the Logo programming language, to be "low threshold and no ceiling". It teaches programming concepts using agents in the form of turtles, patches, and the observer. http://en.wikipedia.org/wiki/NetLogo NetLogo Examples Fireflies (Biology): Synchronization of the flashing of fireflies. Wolf-sheep predation (Biology): predator-prey ecosystems. Segregation (Social Science): PD Basic Evolutionary (Social Science/Prisoner's Dilemma) Virus on a Network (Network): the spread of a virus through a network. http://ccl.northwestern.edu/netlogo/models/