X-Machines for Agent-Based Modeling FLAME Perspectives CHAPMAN & HALL/CRC COMPUTER and INFORMATION SCIENCE SERIES
Total Page:16
File Type:pdf, Size:1020Kb
X-Machines for Agent-Based Modeling FLAME Perspectives CHAPMAN & HALL/CRC COMPUTER and INFORMATION SCIENCE SERIES Series Editor: Sartaj Sahni PUBLISHED TITLES ADVERSARIAL REASONING: COMPUTATIONAL APPROACHES TO READING THE OPPONENT’S MIND Alexander Kott and William M. McEneaney COMPUTER-AIDED GRAPHING AND SIMULATION TOOLS FOR AUTOCAD USERS P. A. Simionescu DELAUNAY MESH GENERATION Siu-Wing Cheng, Tamal Krishna Dey, and Jonathan Richard Shewchuk DISTRIBUTED SENSOR NETWORKS, SECOND EDITION S. Sitharama Iyengar and Richard R. Brooks DISTRIBUTED SYSTEMS: AN ALGORITHMIC APPROACH, SECOND EDITION Sukumar Ghosh ENERGY-AWARE MEMORY MANAGEMENT FOR EMBEDDED MULTIMEDIA SYSTEMS: A COMPUTER-AIDED DESIGN APPROACH Florin Balasa and Dhiraj K. Pradhan ENERGY EFFICIENT HARDWARE-SOFTWARE CO-SYNTHESIS USING RECONFIGURABLE HARDWARE Jingzhao Ou and Viktor K. Prasanna FROM ACTION SYSTEMS TO DISTRIBUTED SYSTEMS: THE REFINEMENT APPROACH Luigia Petre and Emil Sekerinski FUNDAMENTALS OF NATURAL COMPUTING: BASIC CONCEPTS, ALGORITHMS, AND APPLICATIONS Leandro Nunes de Castro HANDBOOK OF ALGORITHMS FOR WIRELESS NETWORKING AND MOBILE COMPUTING Azzedine Boukerche HANDBOOK OF APPROXIMATION ALGORITHMS AND METAHEURISTICS Teofilo F. Gonzalez HANDBOOK OF BIOINSPIRED ALGORITHMS AND APPLICATIONS Stephan Olariu and Albert Y. Zomaya HANDBOOK OF COMPUTATIONAL MOLECULAR BIOLOGY Srinivas Aluru HANDBOOK OF DATA STRUCTURES AND APPLICATIONS Dinesh P. Mehta and Sartaj Sahni PUBLISHED TITLES CONTINUED HANDBOOK OF DYNAMIC SYSTEM MODELING Paul A. Fishwick HANDBOOK OF ENERGY-AWARE AND GREEN COMPUTING Ishfaq Ahmad and Sanjay Ranka HANDBOOK OF GRAPH THEORY, COMBINATORIAL OPTIMIZATION, AND ALGORITHMS Krishnaiyan “KT” Thulasiraman, Subramanian Arumugam, Andreas Brandstädt, and Takao Nishizeki HANDBOOK OF PARALLEL COMPUTING: MODELS, ALGORITHMS AND APPLICATIONS Sanguthevar Rajasekaran and John Reif HANDBOOK OF REAL-TIME AND EMBEDDED SYSTEMS Insup Lee, Joseph Y-T. Leung, and Sang H. Son HANDBOOK OF SCHEDULING: ALGORITHMS, MODELS, AND PERFORMANCE ANALYSIS Joseph Y.-T. Leung HIGH PERFORMANCE COMPUTING IN REMOTE SENSING Antonio J. Plaza and Chein-I Chang HUMAN ACTIVITY RECOGNITION: USING WEARABLE SENSORS AND SMARTPHONES Miguel A. Labrador and Oscar D. Lara Yejas IMPROVING THE PERFORMANCE OF WIRELESS LANs: A PRACTICAL GUIDE Nurul Sarkar INTEGRATION OF SERVICES INTO WORKFLOW APPLICATIONS Paweł Czarnul INTRODUCTION TO NETWORK SECURITY Douglas Jacobson LOCATION-BASED INFORMATION SYSTEMS: DEVELOPING REAL-TIME TRACKING APPLICATIONS Miguel A. Labrador, Alfredo J. Pérez, and Pedro M. Wightman METHODS IN ALGORITHMIC ANALYSIS Vladimir A. Dobrushkin MULTICORE COMPUTING: ALGORITHMS, ARCHITECTURES, AND APPLICATIONS Sanguthevar Rajasekaran, Lance Fiondella, Mohamed Ahmed, and Reda A. Ammar PERFORMANCE ANALYSIS OF QUEUING AND COMPUTER NETWORKS G. R. Dattatreya THE PRACTICAL HANDBOOK OF INTERNET COMPUTING Munindar P. Singh SCALABLE AND SECURE INTERNET SERVICES AND ARCHITECTURE Cheng-Zhong Xu PUBLISHED TITLES CONTINUED SOFTWARE APPLICATION DEVELOPMENT: A VISUAL C++®, MFC, AND STL TUTORIAL Bud Fox, Zhang Wenzu, and Tan May Ling SPECULATIVE EXECUTION IN HIGH PERFORMANCE COMPUTER ARCHITECTURES David Kaeli and Pen-Chung Yew TRUSTWORTHY CYBER-PHYSICAL SYSTEMS ENGINEERING Alexander Romanovsky and Fuyuki Ishikawa VEHICULAR NETWORKS: FROM THEORY TO PRACTICE Stephan Olariu and Michele C. Weigle X-Machines for Agent-Based Modeling: FLAME Perspectives Mariam Kiran X-Machines for Agent-Based Modeling FLAME Perspectives Mariam Kiran CRC Press Taylor & Francis Group 6000 Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742 © 2017 by Taylor & Francis Group, LLC CRC Press is an imprint of Taylor & Francis Group, an Informa business No claim to original U.S. Government works Printed on acid-free paper Version Date: 20170722 International Standard Book Number-13: 978-1-4987-2385-5 (Hardback) This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any future reprint. The Open Access version of this book, available at www.taylorfrancis.com, has been made available under a Creative Commons Attribution-Non Commercial-No Derivatives 4.0 license. For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged. Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identification and explanation without intent to infringe. Visit the Taylor & Francis Web site at http://www.taylorandfrancis.com and the CRC Press Web site at http://www.crcpress.com To my family, FLAME contributors and its users. Contents Foreword xiii Preface xvii List of Figures xix List of Tables xxv FLAME Contributors xxvii 1 Setting the Stage: Complex Systems, Emergence and Evolution 1 1.1 ComplexandAdaptiveSystems . 3 1.2 WhatIsChaos? ......................... 4 1.3 ConstructingArtificialSystems . 5 1.4 ImportanceofEmergence . .. .. .. .. .. .. .. .. 6 1.5 DynamicSystems ........................ 6 1.6 IsThereEvolutionatWork? .................. 7 1.6.1 Adaptation ........................ 8 1.7 Distributing Intelligence? . 9 1.8 Modeling and Simulation . 10 1.8.1 ResearchExamples.................... 12 2 Artificial Agents 17 2.1 IntelligentAgents ........................ 18 2.1.1 “CanMachinesThink?” . 19 2.2 Engineering Self-Organizing Systems . 21 2.2.1 BringintheAgents ................... 22 2.2.2 Characteristics of Agent-Based Models . 23 2.3 Agent-BasedModelingFrameworks . 33 2.4 AdaptiveAgentDesign ..................... 37 2.5 MathematicalFoundations . 38 2.6 ObjectsorAgents? ....................... 39 2.7 InfluenceofOtherResearchAreasonABM . 40 ix x Contents 3 DesigningX-AgentsUsingFLAME 43 3.1 FLAMEandItsX-MachineMethodology . 44 3.1.1 Transition Functions . 47 3.1.2 MemoryandStates ................... 47 3.2 Using Agile Methods to Design Agents . 48 3.2.1 ExtensiontoExtremeProgramming . 51 3.3 Overview:FLAMEVersion1.0 . 51 3.4 Libmboard(FLAMEmessageboardlibrary) . 54 3.4.1 Compiling and Installing Libmboard . 55 3.4.2 FLAME’s Synchronization Points . 57 3.5 FLAME’s Missing Functionality . 58 4 Getting Started with FLAME 61 4.1 SettingUpFLAME ....................... 62 4.1.1 MinGW.......................... 63 4.1.2 GDBGNUDebugger .................. 63 4.1.3 Dotty as an Extra Installation . 64 4.2 MessagingLibrary:Libmboard . 64 4.3 HowtoRunaModel? ...................... 65 4.4 Implementation Details . 65 4.5 UsingGrids ........................... 68 4.6 Integrating with More Libraries . 69 4.7 Writing a Model - Fox and Rabbit Predator Model . 71 4.7.1 Adding Complexity to Models . 72 4.7.2 XML Model Description File . 72 4.7.3 CFunction ........................ 76 4.7.4 Additional Files . 81 4.7.5 0.xml File . 83 4.8 EnhancingtheEnvironment . 84 4.8.1 ConstantVariables.................... 84 4.8.2 Time Rules . 84 5 Agents in Social Science 87 5.1 SugarscapeModel ........................ 92 5.1.1 EvolutionfromBottom-Up . 93 5.1.2 Distribution of Wealth . 94 5.1.3 LocationIsImportant!. 95 5.1.4 FindAgentsaroundMe . 104 5.1.5 Handle Multiple ‘Eaten’ Requests . 105 5.1.6 Change Starting Conditions . 105 5.2 ModelingSocialNetworks . 107 5.2.1 SetUpaRecurringFunction . 112 Contents xi 5.2.2 Assigning Conditions with Functions . 113 5.2.3 Using Dynamic Arrays and Data Structures . 113 5.2.4 CreatingLocalDynamicArrays. 114 5.3 Modeling Pedestrians in Crowds . 114 5.3.1 Calculate Movement toward Other Agents . 116 5.3.2 Entering and Exiting Agents . 118 6 AgentsinEconomicMarketsandGames 121 6.1 Perfect Rationality versus Bounded Rationality . 125 6.2 Modeling Multiple Shopper Behaviors . 126 6.3 LearningFirmsinaCournotModel . 129 6.3.1 Genetic Programming with Agents . 143 6.3.2 Filtering Messages in Advance . 150 6.3.3 ComparingTwoDataStructures . 151 6.4 A Virtual Mall Model: Labor and Goods Market Combined . 152 6.5 ProgrammingGames ...................... 159 6.5.1 Nash Equilibrium . 160 6.5.2 EvolutionaryGameTheory . 161 6.5.3 Evolutionary Stable State . 162 6.5.4 Game Theory versus Evolutionary Game Theory . 162 6.5.5 ContinuousStrategies . 163 6.5.6 Red Queen and Equilibrium . 163 6.6 Learning in an Iterated Prisoner’s Dilemma Game . 164 6.7 Multi-AgentSystemsandGames . 173 7 Agents in Biology 175 7.1 ExampleModels ......................... 176 7.1.1 Molecular Systems Models . 176 7.1.2 TissueandOrganModels . 179 7.1.3 Ecological Models . 182 7.1.4 Industrial Applications of Agent-Based Modeling with FLAME.......................... 183 7.2 Modeling Epithelial Tissue . 184 7.2.1 Merging with Other Toolkits . 185 7.3 Modeling Drosophila Embryo Development . 187 7.3.1 Stochastic Modeling . 188 7.3.2 ConvertingtoanAgent-BasedModel . 188 7.3.3 Find Optimum Model Settings