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