Tutorials : Monday September 14th, 2009
The following tutorials are planned for Monday morning September 14, 2009 just before the start
of the 2009 European Social Simulation Association conference, in Guildford UK.
The tutorials are free, but participants must be registered to attend the conference.
The tutorials will only run if there are sufficient participants, so if you are interested in attending one, you must email Lu Yang
to note your intention to attend and the title of the tutorial by 1st September.
If you do not, there is a risk that the tutorial will be cancelled due to insufficient participants.
All the tutorials run in parallel, from 9.00 to 12:30, so that it is only possible to attend one.
Social Simulation on the Grid
Tutor: Gary Polhill, Macaulay Land Use Research Institute
The vision of eScience is to facilitate large-scale science using Grid technologies. One obvious way for those studying social simulations to benefit from the Grid is making multiple runs with a model to explore parameter space and stochastic variation on a scale not usually possible for individual researchers due to lack of computing resource. However, running social simulations using eScience infrastructure is a non-trivial task. The pre-requisite software for simulations (e.g. Swarm) can be complex to install and configure, and Grid resources are provisioned with a specific OS configuration and software portfolio. In the JISC ENGAGE-funded project SwarmCloud, we have used virtualization to enable a customised virtual image ('simulationBox') to run simulations using Swarm, RePast and MASON on Grid resource providers such as the UK's National Grid Service, Amazon's EC2, and Flexiscale. Virtualization is also a useful way to provide an executable resource for others to use your modelling software without having to concern themselves with complex installations of prerequisite libraries. In this tutorial, we will introduce the Grid and virtualization, before giving a demonstration of the simulationBox virtual image. A concluding panel discussion will give you the opportunity to discuss accessing and using Grid facilities with the speakers.
Heterogeneous and multi-agent modelling
Tutor: Shu-Heng Chen, National Chengchi University, Taiwan
The workshop will give a general review of the development of models of heterogeneous interacting agents (or agent-based economic models). First, we shall start with the motivation of modeling with heterogeneous agents. In particular, we give a review of the literature in behavioral economics, experimental economics and neuroeconomics which inspires the modeling of heterogeneous agents in economics. In this regard, economic models with heterogeneous agents can be considered as a theoretical or computational counterpart of behavioral or experimental studies. Second, we then proceed to the building and the use of agent-based economic models. With regard to the building part, we differentiate two classes of agent-based models based on the complexity of agents, from simple agents to autonomous agents. Applications of both classes will be illustrated in both macroeconomics and financial markets. The econometrics of agent-based models has just recently been developed; we shall highlight some promises and challenges on this front. We then conclude the workshop with some policy applications.
Agent-Based Simulation: A Differential Equation Approach
Tutor: Jim Duggan, National University of Ireland, Galway
System Dynamics (SD) and Agent-Based Modelling (ABM) are normally viewed as being distinct simulation approaches. From a methodology perspective, SD seeks to explain social and organisational phenomena through the identification of feedback structures, and how these interact to produce dynamic behaviour, while ABM focuses on individual behaviour, and how local agent rules and interactions give rise to complex, system-wide behaviour patterns. There are differences also at a technical level, where ABM approaches (e.g. Repast, NetLogo) are code-based, whereas SD tools (Vensim, PowerSim, Stella) are equation-based. However, despite these differences, there are also many similarities between SD and ABM, as both approaches are concerned with complex systems and social simulation, and how models can be used to deliver insight and understanding to decision makers.
This tutorial describes an exploratory equation-oriented agent-based simulation framework (called iSim+) developed at NUI, Galway, Ireland, which allows for a mix of SD and ABM (mostly based on differential equations, but also allows for coding of specialised functions to model discrete state changes), across a range of standard networks (Small World, Scale Free, Lattice, Grid, Random and Fully Connected). It will present a number of case studies, including Market Dynamics and the classic SIR model of contagion spread. As a learning outcome, attendees should appreciate a closer link between aggregate and individual models, and so bridge the gap between SD and ABM, and deterministic and stochastic simulations.
From Basic Discrete Event Simulation via Object-oriented to Agent-based Discrete Event Simulation
Tutor: Gerd Wagner, Brandenburg University of Technology at Cottbus, Germany
In the area of simulation technology, Discrete Event Simulation (DES) represents a fundamental paradigm for simulating both discrete and mixed discrete-continuous systems in a natural way. Following the development of programming languages, the DES paradigm has been implemented in many different ways, using various programming concepts, at different levels of abstraction. While traditional imperative programming concepts and languages (such as Fortran and C) have been used in the past, modern simulation technologies are largely based on object-oriented concepts and languages (such as C++ and Java). Today, in programming language research, agent-oriented programming concepts have been proposed as an extension of the object-oriented approach, mainly for programming complex distributed systems. It remains to be seen if these new programming concepts are also useful for simulation. While general purpose programming languages are based on general computation concepts, which are often rather low-level, a general purpose DES language must be based on a foundational ontology (of objects and events) that supports the faithful modeling of real-world systems.
Traditionally, in the science of modeling and simulation, there was a preference for abstract models of complex systems, such as in the prominent system dynamics approach. These kinds of models abstract away from the structure and interactions of individual entities in a complex system. Instead, they are based on averaging and uniformity assumptions, as they are typical for mathematical modeling. Today, in many scientific areas, notably in social sciences, economics and biology, there is a kind of movement away from abstract models of complex systems towards “individual-based” models. These kinds of models, depending on their requirements for representing cognitive agents, can be implemented with object-oriented or agent-oriented programming concepts in a natural way.
The main goal of this tutorial is to show that the DES paradigm provides a foundation for individual-based modeling and simulation, and that it accommodates both object-oriented and agent-based simulation languages and technologies. The tutorial starts from the basics of DES (events, global state variables, state transitions), and then explores how the basic DES paradigm can be extended by addressing the following questions:
- How to use rules for processing events and specifying their effects on the system state and their resulting events
- How to use objects and collections on top of basic DES
- How to add the concepts of space and physical objects, and basic physics simulation
- What are the basic cognitive features of agents and how can they be supported on top of DES
- How to use rules for specifying the behavior of agents
Throughout the tutorial practical examples are used and executed using the AOR Simulation framework. The participants are encouraged to experiment with simulation models and run them on their own computer. The required simulation software can be downloaded from here and will also be provided on-site.