RepastHPC: A HPC Library for Agent- Based Modeling John T. Murphy Decision and Information Sciences Division Computational Postdoctoral Fellow Argonne.

Slides:



Advertisements
Similar presentations
Chapter 13 Review Questions
Advertisements

Agent-based Modeling: A Brief Introduction Louis J. Gross The Institute for Environmental Modeling Departments of Ecology and Evolutionary Biology and.
Using the Crosscutting Concepts As conceptual tools when meeting an unfamiliar problem or phenomenon.
Cellular Automata: Life with Simple Rules
1.Data categorization 2.Information 3.Knowledge 4.Wisdom 5.Social understanding Which of the following requires a firm to expend resources to organize.
G. Folino, A. Forestiero, G. Spezzano Swarming Agents for Discovering Clusters in Spatial Data Second International.
CITS4403 Computational Modelling Agent Based Models.
Chapter 4 DECISION SUPPORT AND ARTIFICIAL INTELLIGENCE
Technical Architectures
Reference: Message Passing Fundamentals.
Games as Systems Administrative Stuff Exercise today Meet at Erik Stemme
Portability Issues. The MPI standard was defined in May of This standardization effort was a response to the many incompatible versions of parallel.
Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University.
Simulation Models as a Research Method Professor Alexander Settles.
Lessons Learned Implementing User-Level Failure Mitigation in MPICH Wesley Bland, Huiwei Lu, Sangmin Seo, Pavan Balaji Argonne National Laboratory User-level.
BUSINESS DRIVEN TECHNOLOGY
Emergent Phenomena & Human Social Systems NIL KILICAY.
The shift from sequential to parallel and distributed computing is of fundamental importance for the advancement of computing practices. Unfortunately,
Course Instructor: Aisha Azeem
Moving forward with Scalable Game Design. The landscape of computer science courses…  Try your vegetables (sneak it in to an existing course)  Required.
Nawaf M Albadia Introduction. Components. Behavior & Characteristics. Classes & Rules. Grid Dimensions. Evolving Cellular Automata using Genetic.
An overview of a few of the methods used in landscape ecology studies.
What is Software Architecture?
THE NEW TEXAS CORE CURRICULUM (OCTOBER 27, 2011).
Modeling and Simulation
ABM: Frameworks Dr Andy Evans. ABM Frameworks What are they? Pieces of software to help people build ABMs. Often offer the functions outlined. Wide range.
Agent Based Modeling and Simulation
Kai Pata Center of Educational Technology, Tallinn University Designing learning experiences for soft competence acquisition: *iCamp: innovative, inclusive,
Repast Simphony Presented by Michael J. North, MBA, Ph. D.
Chapter 12: Simulation and Modeling
Modeling Framework Generally modeling framework is made up of the following components: A set of biophysical modules that simulate biological and physical.
Emerging Infectious Disease: A Computational Multi-agent Model.
Funding provided by NSF CHN Systems BioComplexity Grant.
DEVSView: A DEVS Visualization Tool Wilson Venhola.
Department of Telecommunications MASTER THESIS Nr. 610 INTELLIGENT TRADING AGENT FOR POWER TRADING BASED ON THE REPAST TOOLKIT Ivana Pranjić.
Zhiyong Wang In cooperation with Sisi Zlatanova
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 09. Review Introduction to architectural styles Distributed architectures – Client Server Architecture – Multi-tier.
What are the main differences and commonalities between the IS and DA systems? How information is transferred between tasks: (i) IS it may be often achieved.
A Data Intensive High Performance Simulation & Visualization Framework for Disease Surveillance Arif Ghafoor, David Ebert, Madiha Sahar Ross Maciejewski,
Richard Oliver Legendi AITIA International, Inc. Eötvös Loránd University Eclipse DemoCamps Indigo.
INTERACTIVE ANALYSIS OF COMPUTER CRIMES PRESENTED FOR CS-689 ON 10/12/2000 BY NAGAKALYANA ESKALA.
Storing Organizational Information - Databases
Distributed Database Systems Overview
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
SUPERCOMPUTING CHALLENGE KICKOFF 2015 A Model for Computational Science Investigations Oct 2015 © challenge.org Supercomputing Around.
Modeling Complex Dynamic Systems with StarLogo in the Supercomputing Challenge
Futures Lab: Biology Greenhouse gasses. Carbon-neutral fuels. Cleaning Waste Sites. All of these problems have possible solutions originating in the biology.
Commodity Grid Kits Gregor von Laszewski (ANL), Keith Jackson (LBL) Many state-of-the-art scientific applications, such as climate modeling, astrophysics,
Agent Based Modeling (ABM) in Complex Systems George Kampis ETSU, 2007 Spring Semester.
SICSA student induction day, 2009Slide 1 Social Simulation Tutorial International Symposium on Grid Computing Taipei, Taiwan, 7 th March 2010.
Neural Networks and Machine Learning Applications CSC 563 Prof. Mohamed Batouche Computer Science Department CCIS – King Saud University Riyadh, Saudi.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
Biocomplexity Teacher Workshop May 31 – June 2, 2008 University of Puerto Rico.
The shift from sequential to parallel and distributed computing is of fundamental importance for the advancement of computing practices. Unfortunately,
Ch- 8. Class Diagrams Class diagrams are the most common diagram found in modeling object- oriented systems. Class diagrams are important not only for.
Landscape ecology methods
Visualization in Problem Solving Environments Amit Goel Department of Computer Science Virginia Tech June 14, 1999.
Introduction to Operations Research. MATH Mathematical Modeling 2 Introduction to Operations Research Operations research/management science –Winston:
Computer Simulation of Networks ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
Code Motion for MPI Performance Optimization The most common optimization in MPI applications is to post MPI communication earlier so that the communication.
Agent-Based Modeling in ArcGIS Kevin M. Johnston.
The Performance Evaluation Research Center (PERC) Participating Institutions: Argonne Natl. Lab.Univ. of California, San Diego Lawrence Berkeley Natl.
Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution Structured programming Product SW.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
1 Advanced MPI William D. Gropp Rusty Lusk and Rajeev Thakur Mathematics and Computer Science Division Argonne National Laboratory.
Considering Time in Designing Large-Scale Systems for Scientific Computing Nan-Chen Chen 1 Sarah S. Poon 2 Lavanya Ramakrishnan 2 Cecilia R. Aragon 1,2.
PARALLEL AND DISTRIBUTED PROGRAMMING MODELS U. Jhashuva 1 Asst. Prof Dept. of CSE om.
Invitation to Computer Science 5th Edition
Computer Simulation of Networks
Presentation transcript:

RepastHPC: A HPC Library for Agent- Based Modeling John T. Murphy Decision and Information Sciences Division Computational Postdoctoral Fellow Argonne National Laboratory ALCF: Getting Started, 5-Oct-2011

Acknowledgements  This research used resources of the Argonne Leadership Computing Facility at Argonne National Laboratory, which is supported by the Office of Science of the U.S. Department of Energy under contract DE-AC02-06CH11357  This work was supported by American Recovery and Reinvestment Act (ARRA) funding through the Office of Advanced Scientific Computing Research, Office of Science, U.S. Dept. of Energy, under Contract DE-AC02-06CH  Repast HPC Development Team: –Michael North –Nick Collier –John T. Murphy –DIS CAS2 Team  Thanks to ALCF for letting us present at Getting Started Argonne National Laboratory, Decision and Information Sciences Division 2

RepastHPC  RepastHPC is an implementation for high-performance computing of the Repast (Java) toolkit for Agent-Based Modeling (ABM).  ?????? Argonne National Laboratory, Decision and Information Sciences Division 3

Agent-Based Modeling (ABM)  Agent-Based Modeling is a modeling technique (or paradigm) that begins by defining a population of discrete agents that have: –the ability to perceive aspects of their environment –a collection of behaviors that they take in response to those perceptions  This is particularly useful in social science modeling (for example: economic simulations)  The outcome of interest is usually the characteristics of the global population, which are difficult to predict based only on the rules that govern the behavior of the agents.  Applications in biology and the physical sciences are also easily implemented in this paradigm Argonne National Laboratory, Decision and Information Sciences Division 4

ABM (ctd)  The agents in a population can be highly varied, either in their internal states or in their rules for action. This allows exploration of cases in which common simplifying assumptions of homogeneity can be avoided and more complicated cases tested.  Generally speaking, both the agents’ ability to perceive their environment and their ability to affect it are limited. Hence there is a sense in which decisions are local, and the global phenomena observed can be said to be emergent. Argonne National Laboratory, Decision and Information Sciences Division 5

ANL Decision and Information Sciences Division (DIS): Core Mission  DEVELOP innovative decision support tools, including simulation models, databases, and analytical methodologies that can be used to provide quantitative information to decision makers;  APPLY these tools to the analysis and solution of problems of national, local, and international significance; and  TRANSFER these tools to the community of researchers and end users for their own implementation  See  Agent-Based Modeling is a key tool for this kind of research. Argonne National Laboratory, Decision and Information Sciences Division 6

Repast: Java (Repast Simphony)  The ABM paradigm was so useful for social scientists that they began to generate a large number of models based on it. Very quickly, redundant structures were found, and toolkits that pre-packaged these were created, so that creating a new model did not require re-creating fundamental components.  Repast Simphony is an ABM toolkit that has been developed here at ANL.  Both Repast and Repast HPC are distributed without licensing restrictions and can be used freely both here at ANL and elsewhere. Argonne National Laboratory, Decision and Information Sciences Division 7

Components of an ABM toolkit Repast Simphony  Specify Agent Behaviors (Graphically)  Scheduling Agent Actions  Data Collection/Output  Specify Agent Interactions: –By Space Discrete Continuous –By Networks  Graphic Output of Simulation State Argonne National Laboratory, Decision and Information Sciences Division 8

Components of an ABM toolkit Repast Simphony + ReLogo  Specify Agent Behaviors (Graphically)  Scheduling Agent Actions  Data Collection/Output  Specify Agent Interactions: –By Space Discrete Continuous –By Networks  Graphic Output of Simulation State  Predefined Semantics for –Agents (Turtles) –Landscape (Patches) –Operations on Sets Argonne National Laboratory, Decision and Information Sciences Division 9

The Schelling Model  The ‘first ABM’ was created by Thomas Schelling in the late 1960’s; it showed that highly racially segregated residential areas could arise even when the preference to be with neighbors ‘like’ self was comparatively small. –It was performed by rolling dice and moving nickels and pennies on a checkerboard Argonne National Laboratory, Decision and Information Sciences Division 10

A more immediate problem…   DIS is proactively attempting to deal with this imminent threat… Argonne National Laboratory, Decision and Information Sciences Division 11

Zombies Model  Agents of two kinds: –Humans –Zombies  Humans are initially uninfected, but become infected when attacked by a zombie, and after a time turn into Zombies  Zombies pursue humans; if a zombie is on the same patch as a human, it can infect that human (one per time step)  Humans move away from zombies; zombies move toward humans Argonne National Laboratory, Decision and Information Sciences Division 12

Components of an ABM toolkit Repast Simphony + ReLogo  Specify Agent Behaviors (Graphically)  Scheduling Agent Actions  Data Collection/Output  Specify Agent Interactions: –By Space Discrete Continuous –By Networks  Graphic Output of Simulation State  Predefined Semantics for –Agents (Turtles) –Landscape (Patches) –Operations on Sets Repast HPC  Specify Agent Behaviors (Graphically)  Scheduling Agent Actions  Data Collection/Output  Specify Agent Interactions: –By Space Discrete Continuous –By Networks  Graphic Output of Simulation State Argonne National Laboratory, Decision and Information Sciences Division 13

Components of an ABM toolkit Repast Simphony + ReLogo  Specify Agent Behaviors (Graphically)  Scheduling Agent Actions  Data Collection/Output  Specify Agent Interactions: –By Space Discrete Continuous –By Networks  Graphic Output of Simulation State  Predefined Semantics for –Agents (Turtles) –Landscape (Patches) –Operations on Sets Repast HPC + ReLogo  Specify Agent Behaviors (Graphically)  Scheduling Agent Actions  Data Collection/Output  Specify Agent Interactions: –By Space Discrete Continuous –By Networks  Graphic Output of Simulation State  Predefined Semantics for –Agents (Turtles) –Landscape (Patches) –Operations on Sets Argonne National Laboratory, Decision and Information Sciences Division 14

Repast HPC: A Parallelized ABM System  Repast HPC Automatically provides the following features key in a parallelized ABM: –Synchronization of scheduling of events –Global Data Collection (similar to Repast Simphony) –Automatic management of Agent Interactions Across Processes Argonne National Laboratory, Decision and Information Sciences Division 15

Agent Interactions: Contexts  A Context is a collection of agents that have a structure that determines how they interact.  Two kinds of contexts: Spatial and Network. Argonne National Laboratory, Decision and Information Sciences Division 16

Spatial Contexts  Spatial contexts can be: –2D or 3D –Continuous or Discrete Space –Toroidal or finite (wraparound borders or hard edges)  Repast HPC manages agent interaction by: –Allocating to each process a region of the space –Identifying a ‘buffer zone’ at the boundaries of the processes’ regions  Each process has a copy of the buffer zones (and any agents in them) that adjoin the region of space that it manages  Updating of the buffer zones and the agents in them can be scheduled by the user as needed  *Assumes a relatively even distribution of agents; uneven distributions can become unwieldy Argonne National Laboratory, Decision and Information Sciences Division 17

Network Contexts  Agents can be connected in an arbitrary network that can be independent of the relationship among the processes managing the agents  Copies of ‘adjacent’ agents can be updated in a way similar to the updating of spatial buffer zones  *Assumes that network interactions will be clustered primarily on processes rather than predominantly across them  Given the limitations of spatial and network arrangements, Not All ABMs Can Be Parallelized (and the arrangements can change during the course of the simulation). Argonne National Laboratory, Decision and Information Sciences Division 18

Patterns of Information Flow Automatically Handled by Repast HPC  Agents in both Space and Network –Space is 2D grid, continuous, 100 x 100 with 20 x 20 processes  Agent on Process N1 (‘A’) is at 50, 50  Agent ‘B’ on Process N2 forms a network connection with (‘A’)  At each synchronization, A’s state is sent to Process N2  ‘A’ moves in space to the region controlled by N3 –Process N3 must now export A’s state to Process N2  ‘B’ moves to region controlled by N4 –Process N3 must now export A’s state to Process N4  ‘A’ moves to N4 –Now both are on the same process; no need to export Argonne National Laboratory, Decision and Information Sciences Division 19

How to build a Repast HPC Program  A ‘Package’ used to pack and ship agent information  Code that provides these packages and can translate them back into agents  Agent Logic –Internal State –Actions  Any Data Collection Structures Required  Code to set up the simulation  Code to schedule actions in the simulation  No MPI coding required; all cross-process communication is performed by Repast HPC. Argonne National Laboratory, Decision and Information Sciences Division 20

The Self-Guided Tutorial  The Self-Guided Tutorial shows how to build the Zombies Model and run on the BG/P  As an additional exercise, think how you might vary the model (speed of agents, infection time, etc.); the framework makes these changes simple- even ones that would be mathematically difficult Argonne National Laboratory, Decision and Information Sciences Division 21

Support for Repast HPC  Messages sent to that concern Repast HPC will be forwarded to me, Mike North, and Nick Collier. (You might consider putting ‘Repast HPC’ in the subject  Additional support is available via the repast-interest listserv; visit the Repast website, ) Argonne National Laboratory, Decision and Information Sciences Division 22

Visualization: The Triangles Model Argonne National Laboratory, Decision and Information Sciences Division 23

Argonne National Laboratory, Decision and Information Sciences Division 24

Argonne National Laboratory, Decision and Information Sciences Division 25

Thanks! John Murphy, Argonne National Laboratory, Decision and Information Sciences Division 26