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]