Transcript Document

Engineering Emergent
Social Phenomena
Laszlo Gulyas
AITIA International Inc.
[email protected]
Motivation
 Software is not as it used to be.
 Traditional methodologies are aimed at a single, monolithic
program with well-defined and controllable input streams.
 Today’s software is almost always situated in a dynamic
environments.
 Computers are networked, but even on a single computer,
many programs are running simultaneously.
 The software designer/engineer can no longer enumerate or
control the state(s) of the environment.
 More importantly, the expected behavior of the software is
most often not independent of the non-controlled
components.
 For example, the success of an autonomous agent negotiating
a deal on an auction site clearly depends on the performance
of other similar agents, programmed by unknown parties.
 We need methods, techniques and tools for
engineering emergent complex (software) systems.
Engineering from the Bottom-Up
 Example: Generating robust networks
L. Gulyas: “GENERATION OF ROBUST NETWORKS: A BOTTOM-UP MODEL WITH
OPTIMIZATION UNDER BUDGET CONSTRAINTS “, 5th International Workshop on
Emergent Synthesis (IWES’04).
 The problem: generating networks that are robust against random
failures.
 An agent-based model.
 Agents connect to one another aiming to maximize their connectivity.
 Each agent can build a fixed number of links.
 Information about the existing network is costly, the agents optimize
under budget constraints (i.e., only based on information about a limited
number of nodes).
 Generates robust networks under a wide range of conditions.
 The pattern of information access (determined by information pricing) is
pivotal.
Generating robust networks
Gaining Inspiration from
Complex Social Systems
 Complex Social Systems
 IT Tools for Social Science Modeling
 Agent-Based Modeling and Simulation
 Participatory Simulation
 Novel Tools: MASS/FABLES
Gaining Inspiration from
Complex Social Systems
 Complex Social Systems
 IT Tools for Social Science Modeling
 Agent-Based Modeling and Simulation
 Participatory Simulation
 Novel Tools: MASS/FABLES
Social System:
 Complex interaction of
 a high number of
 complex actors.
Statistical Physics versus
Social Sciences
 People are not as simple as molecules, but
molecules are also much more complex than
suggested by thermodynamics…
 Scientific Thinking 
Methodological simplification 
Modeling
On Social Science Methods I.
 Herbert Simon:
“The social sciences are, in fact, the »hard«
sciences.”
 Problems with experiments
 Human subjects
 Unique events.
 Problem Complexity (e.g., in GT)
 The number of actors.
 Interaction/communications topologies.
(Everybody knows it all.)
 Dynamic populations. (Cannot exist.)
 Unlimited rationality.
 Methodology
 Equilibrium versus Trajectory.
On Social Science Methods II.
 Developments in IT technology enables novel
approaches.
 “In Silico” models and experiments
 „If you didn’t grow it, you didn’t explain it.”
(J. M. Epstein)
 Numerical simulations
 Grounded in mathematics.
Gaining Inspiration from
Complex Social Systems
 Complex Social Systems
 IT Tools for Social Science Modeling
 Agent-Based Modeling and Simulation
 Participatory Simulation
 Novel Tools: MASS/FABLES
Agent-Based Modeling (ABM)
 One of the novel (in silico) methods.
 Aims at creating complex (social) behavior “from the
bottom up”.
 Complex interactions of
 A high number of
 (Complex) individuals.
 A generative and
mostly theoretical approach:
 Computational “thought experiments”,
 Existence proofs, etc.
Agent-Based Modeling (ABM)
 Capable of
 Studying trajectories.
 Heterogeneous populations.
 Dynamic populations.
 Bottom-up approach 
cognitive limitations to rationality.
 Explicit modeling of interaction topologies.
 No explicit model for cognitive abilities & interaction
topologies, no model.
Main IT tools for ABM
 Open-Source versus Proprietary.
 Generality versus Ease of Use.
 Component-based versus Custom code.
 Major general-purpose OSS tools:
Swarm
Multi-Agent Modeling Language (MAML)
RePast
Santa Fe Institute, NM, USA
Central European University,
Budapest, Hungary
University of Chicago, Argonne National
Lab, IL, USA
Swarm, 1996
 “Father of all ABM tools”.
 Simulation package.
 Object-oriented, discrete-event design.
 Introduces the main concepts and
“ABM design patterns”.
 Experimental, hard-to-use system.
 Strong user community.
 Major impact in spreading the methodology.
MAML, 1999
 First special-purpose programming language for
ABM.
 Layered over Swarm.
 Thus following the main design and concepts.
 Easier to use system.
 Aspect-Oriented: separation of modeling and
observational concerns.
 Still, unfortunate “borrowing” of many problems from
Swarm. (E.g., installation's “hard way to heaven”.)
RePast, 2001
 Re-designed and re-worked version of Swarm.
 Maintains all the major concepts and patterns.
 Simulation package in Java.
 Easy to use, but still general system.
 Growing user community
 Major impact in showing the ‘maturity’ of ABM
technology.
Gaining Inspiration from
Complex Social Systems
 Complex Social Systems
 IT Tools for Social Science Modeling
 Agent-Based Modeling and Simulation
 Participatory Simulation
 Novel Tools: MASS/FABLES
Experimental Economics
 Controlled laboratory experiments with human
subjects.
 The effect of human cognition on economic behavior.
 Learning and adaptation.
 Social traps (Tragedy of Commons, etc.)
 Typical tools:
 Observation (Videotaping)
 Questionnaires, etc.
 An experimental approach.
Participatory Simulation (PS)
 A computer simulation, in which human subjects
also take part.
 Agent-based simulations are well suited:
 Individuals are explicitly modeled, with
 Strict Agent-Environment and Agent-Agent
boundaries.
 Bridges the theoretical and experimental
approaches. Can help both of them:
 Testing assumptions and results of an ABM.
 Generating specific scenarios (e.g., crowd behavior)
for laboratory experiments.
General Purpose Participatory
Architecture for RePast (GPPAR)
 First toolset for participatory ABM.
 Developed in 2003 at AITIA, Inc., Budapest,
Hungary.
 Supports the transformation of any RePast
model into a participatory simulation.
 Distributed, web-based user interfaces.
Example Application of GPPAR
 Replication of a famous ABM in finance.
 Replication of results is a most important step in science!
 Conversion to a PS.
 Partly as a demonstration of our General-Purpose Participatory
Architecture for RePast (GPPAR).
 Initial Experiments, testing:
 Original results’ sensitivity to human trading strategies.
 Human versus computational economic performance.
 The effect of human learning between runs.
Practices of ABSS
REPLICATION above everything
 Scientific experiments (tests and replicas)
 True (uncontrolled) parallelism is ruled out.
 Probabilistic models:
 Pseudo RNGs
 Control over the seed
 Independent variables, Separate RNGs
 Full specification
 E.g. Standard practice of random choice among
equal maxima.
Practices of ABSS
Generating and Handling of Results
 Statistical nature of results:
 One go is ‘no go’.
 Sensitivity Analysis and Confidence Intervals.
 Parameter Sweep
 Non-Linear Dependencies
 Tricks like Active Non-Linear Tests (ANTs)
Practices of ABSS
Separating Model and Observer(s)
 Basic idea in science,
 but in computational practice it’s only been
around since Swarm (1994)
 Several observers




GUI
Batch1
Batch2
…
 Independence of the Observers’ RNGs from
the Model’s RNGs.
Gaining Inspiration from
Complex Social Systems
 Complex Social Systems
 IT Tools for Social Science Modeling
 Agent-Based Modeling and Simulation
 Participatory Simulation
 Novel Tools: MASS/FABLES
AITIA’s
Multi-Agent Simulation Suite
Participatory Extension (PET)
Multi-Agent Core (MAC)
The FABLES
Simulation Definition Language*
Integrated Modeling Environment**
The Functional Agent-Based
Language for Simulation (FABLES)
 Interactive tools for observation
(in IME – planned).
 Functional definitions for
 relations,
 sets, and
 state-transitions.
 Objects for agents.
 Imperative language for
 Scheduling and
 Agent creation/destruction.
• An executable formalism close to the
language of publications.
• Building on the knowledge of
mathematical calculus.
• Standardization among ABM tools?
Participatory Extension (PET)
Multi-Agent Core (MAC)
The FABLES
Simulation Definition Language*
Integrated Modeling Environment**
Summary
 Towards engineering complex (emergent)
phenomena.
 Inspiration from the practice of agent-based
social simulation.
 Overview of agent-based modeling & simulation
 As a means to engineer emergent phenomena in
complex software systems.
 Older and Novel tools for ABM/S.
Thank you!
Comments are welcome at
[email protected]