Scalable Social Simulation
Investigating population-scale phenomena using commodity computing
Alex Voss
School of Computer Science
University of St Andrews
St Andrews, United Kingdom
avoss@cs.st-andrews.ac.uk
Andy Turner
School of Geography
University of Leeds
Leeds, United Kingdom
Jing-Ya You, Eric Yen,
Hsin-Yen Chen, Simon Lin
Academia Sinica Grid Computing
Acadmia Sinica
Taipei, Taiwan
Ji-Ping Lin
Center for Survey Research
Academia Sinica
Taipei, Taiwan
Abstract—Agent-based simulationmodels provide a way to
investigate social phenomena that complement existing social
science methods. Recent advances in computing hardware such
as the wide availability of multi-core CPUs and increased main
memory capacities make it possible to investigate population-
scale phenomena using commodity computeresources. This
paper describes experiences made in the development of an
example model that utilises multiple CPU cores and an
investigation of the scalability of the resulting code. We argue
that commodity compute resources and commoditised simulation
frameworks can now be used to simulate real-world populations
and to use these simulations to investigate social phenomena such
as migration.
Keywords—social simulation; scalability; multi-threading.
I. I NTRODUCTION
Social Simulation is a relatively new social science research
method. It allows social phenomena to be investigated by
studying dynamic processes in computational modelsof
populations. It complements rather than replaces existing social
science research methods as it builds on empirical findings and
theories of social phenomena. Applications of social simulation
range from the study of basic demographic processes to uses in
a range of interdisciplinary research areas such as public health
[1] [2], the study of criminal behaviour [3] or the study of
financial markets [4] to name a few examples.
Social scientists and other professionals such as policy
makers have used various methods in the past to model social
phenomena and generate predictions about them. The simplest
methods extrapolate from empirical data by fitting functions
that approximate the data gathered. A key limitation for such
extrapolations was that the underlying model was static,
defined in terms of mathematical formulas that had to b
manipulated manually [6]. The necessary simplifying
assumptions often meantthat the applicability and the
predictive power of these models were limited. The advent of
computers and their increasing capacity has made it possible
build models that exceedby ordersof magnitude the
complexity of models that could be built and analysed before.
A number of different modeling and simulation approaches
have been developed over time that have different
characteristics in terms of their ability to scale in variou
dimensions, their ability to model dynamic processes with
populations, the cost associated with the creation of a m
and the computational costs of running a simulation. Choosin
the right modeling and simulation approach is a crucial
step in the development of a simulation model that needs to b
taken with the research question and the phenomena of inter
in mind (cf. [6]).
Some simulation models represent a system as a whole in
terms of a set of equations modeling particular variables
interest and their dynamics (cf. [6], esp. chapter 3). These kin
of models are used quite extensively in a number of resea
areas, often constructed using generic packages such as
Matlab™ or Gauss™. The principles of such models are now
being popularised by online tools such as Forio Simulate™ [7
The advantage of such models is that they are deterministic a
that the relationships between different variables are eas
displayed so the model composition and behaviour are easy to
understand. However, the associated weakness is that entitie
the model are treated as homogeneous and relationships
static.
Static microsimulation approaches (cf. [6] chapter 4) were
first attempt to model societies at the level of individuals and
thereby to overcome the limitations of previous approaches in
dealing with heterogeneity in populations. However, they
not suitable to study changing populations over time. Dynami
microsimulation approaches have therefore beendeveloped
The work reported in the paper was carried out as part of the EUAsiaGrid
project and made use of compute resources within the EUAsia VO. The
EUAsiaGrid project was funded by the European Commission as part of its 7
th
Framework Programme under contract number FP7-INFRA-223791.
Contributions by Alex Voss were funded by the Scottish Funding Council.
2010 Sixth IEEE International Conference on e–Science
978-0-7695-4290-4/10 $26.00 © 2010 IEEE
DOI 10.1109/eScience.2010.46
1