Self-Awareness in Autonomic Systems Simulation Tools and Existing Platforms for Self-Awareness
Jan 12, 2015
Self-Awareness in Autonomic Systems
Simulation Tools and Existing Platforms for Self-Awareness
Outline• Why simulate?• Simulating Natural Systems• Desired features for self-awareness simulators• Existing simulators
– Repast– The ONE
• Existing platforms– The CoSMoS Method
• Simulation to help develop algorithms• Summary• References
Why simulate?
• To understand natural systems
– Simulate our hypotheses of how system works, to recreate it
– Identify those components of natural systems responsible for interesting phenomenon
– Experiments problematic to perform in real world and comparison between different approaches.
– Cost, time, ethics?
Simulating Natural Systems
• Natural systems exhibit properties that engineers wish to capture in engineered systems– E.g. Self-organization, decentralized control,
decentralized memory, cognition, robust operation in noisy and hazardous environments, etc.
– Not clear what is responsible for property in natural system
– Try to identify and understand through simulation
Desired features for self-awareness simulators
• A good simulator should provide:– Scheduler for simulating multi-agent systems
– Networking libraries to analyse the networkperformance (bandwidth usage, collisions, etc..)
– Visualization (2D or 3D)
– Different mobility patterns
– Be executable on a high performance computer(clusters or super computers)
– Good support& documentation
Repast [North et al., 2013]
• Open source agent-basedmodeling and simulationplatform.
• It allows– large scale multi-agent
simulations (+1000)
– Visualization.
– Batch mode.
Repast Features I
• Java classes can be created through a visual interface. It does not require high programmingskills.
• Automated connections to a variety of optionalexternal tools including R, VisAD, Weka, popular spreadsheets, MATLAB, and iReport.
• Modeling and visualization of 2D environments, 3D environments, networks including full integrationwith the JUNG network modeling library, andgeographical spaces including full GeographicalInformation Systems (GIS) support.
Repast Features II
• A fully concurrent multithreaded discrete eventscheduler.
• Libraries for genetic algorithms, neural networks, regression, random number generation, andspecialized mathematics.
• Built-in tools for integrating external models.
• Fully object-orientation.
• Availability of Repast HPC, version for HighPerformance Computation, that allows to runsimulation on clusters or super computers. [Collier et al. , 2012]
Repast - Disadvantages
• There is not a network library provided by repastthat provides realistic metrics related with networkperformance (e.g. Collisions, bandwidth usage, etc…)
• Lack of libraries of mobility patterns.
• It is not easy to import real traces taken from a GPS and map them on real maps.
• It is not easy to simulate real scenario, such us, a building or a city, where the mobility of the agents is determined by the environment.
The One [Karanen et al. 2009]
• The ONE is a simulation environment that is capable of:– Generating node movement using different
movement models.– Using real Google maps.– Importing mobility data from real traces. – Creating simulations with different types of
nodes (e.g. People, cars, public displays,etc..).– Assigning more than one communication
interface per each device (e.g. Blue tooth, wi-fi, etc..)
– Monitoring collisions, and bandwidth usage.– Reporting quality of the network (e.g.
Message delivered, dropped, etc..)
The One - disadvantages
• Lack of a good documentation, and set of examples.
• It use requires good JAVA programming skill.
• Even though The One allows to simulate real scenario using Google maps. They are not directly imported, paths for cars, buses, pedestrians, or trams must be imported separately.
Simulators for simulating natural systems
• There are many simulations available (more than covered here)
• None of them fully satisfy all desired features for realistic large scale simulations
• Simulator has different goals:– Repast – observe emergent behaviour in no realistic scenarios– The ONE – Simulate realistic scenarios using realistic mobility
traces.
• Each simulator can be used at different development phases.
• Lack of simulators that combine realistic mobility patterns, networks connections, and high performance computing.
The CoSMoS Method
• Method for understanding complex domains through simulation– Multiple stages in creation of simulation &
subsequent experimentation
• Help ‘ensure’ simulations are fair representations of domain (which is itself poorly understood)
• Capture assumptions and abstractions made in creation of simulation
• Separation of modeler and domain expert concerns
[Andrews et al. 2010]http://www.cosmos-research.org/
The CoSMoS Method• Domain model; non-executable representation of
domain, created with domain expert• Captures ‘relevant’ aspects of domain,
components and emergent properties• Free of implementation concerns
[Andrews et al. 2010]
http://www.cosmos-research.org/
The CoSMoS Method• Platform model: software (architecture)
specification for simulation• Implementation-specific abstractions & details
added• Emergent properties removed
[Andrews et al. 2010]
http://www.cosmos-research.org/
The CoSMoS Method• Simulation platform: software simulation of
complex domain created, in a particular programming language/modeling paradigm
[Andrews et al. 2010]
http://www.cosmos-research.org/
The CoSMoS Method• Results model: results of experimentation performed
on the simulation
• Contrasted with real-world results, where they exist
• Used to create predictions of how complex domain works
[Andrews et al. 2010]
http://www.cosmos-research.org/
The CoSMoS Method
• Makes simulation of complex systems more rigorous
– Are interesting simulation behaviors really representative of domain, are they simulation artifacts, bugs, or the result of incorrect/inappropriate abstraction?
• Simulations are very abstract, what do simulation results mean in terms of the real-world complex domain?
CoSMoS in Action – Simulating EAE
• CoSMoS approach used to understand immune system phenomenon
• EAE – experimental autoimmune encephalomyelitis
– Autoimmune disease model for MS in mice
– Mice induced into autoimmunity spontaneously recover!
[Read 2011]
Simulating EAE
• Disease severity measured on 5 points scale– 0 = no signs of ill health
– 5 = mouse dies
• After immunization at day zero, mice get various degrees of paralysis, but then recover
• Why? [Read 2011]
Simulating EAE – domain modelling
• Drawing UML diagrams to capture cell behaviour, capture assumptions, expose inconsistencies in the literature
• Free of any implementation-specific details, focuses purely on biology
• Forms basis for simulation construction
[Read 2011]
Simulating EAE – platform model
• Derived from domain model, provides implementation specific details.
• E.g., how do cells move? How is space represented?
• (cells are agents)
• (chemicals are
Concentrations)[Read 2011]
Simulating EAE – Simulation Platform• The simulation itself is built based on platform model
specification [Read 2011]
Simulating EAE – Results model
• This is investigation specific, the experiments you want to do with your simulation.
• E.g., how exactly interfering with regulation that mediates recovery from disease impacts disease
• (left – healthy, right, regulation ameliorated)
Simulation to aid Controller Design
• Simulation also used to prototype ideas for control systems.
• Quickly scope out potential solutions
• Evaluation made easier, and more detailed
– Easier to create metrics in simulation than to (for example) record underwater robots position in 3D space
– More rigorous statistics, can take many samples
CoCoRoSim
• Underwater swarm robotics simulation developed by the CoCoRo project
http://cocoro.uni-graz.at/
• Facilitates controller design whilst hardware is still under construction.
• Swarm re-configuring itself to form a chain
– Complicated algorithm that could not have been developed on real robots in the first instance
Beware the Reality Gap
• Simulation ≠ real world
– Beware of overfitting controllers/systems to simulations, their physics models are rarely perfectly accurate
– Simulated controllers rarely work in real world first time
– The real world is noisy, contains unpredictable elements, and (robots) can be prone to failure
Reality gap example – incorrect physics
• CoCoRoSim physics model was discovered to have some odd behaviour…
• Two examples follow, the first demonstrating the issue, the second demonstrating the new physics engine
• In both videos, AUV spins to terminal rotational velocity, then engines are cut and AUV decelerates
Old physics
New physics
What happened?
• Old physics engine had no independent translational and rotational movement. AUVs on “rails”
• New engine decouples
this
Controllers made/evolved
on “rails” wouldn’t work
well in real world!
Summary• Simulations aid in understanding natural systems,
and in developing engineered solutions• There are many existing simulations available,
you don’t have to create your own• Simulating natural systems is difficult, because
the natural system is often poorly understood. – However, there are frameworks to help the simulation
endeavor
• Simulation for designing engineered systems can greatly aid development– But be aware of the reality gap!
References
• [Andrews et al. 2010] Paul S. Andrews, Fiona A. C. Polack, Adam T. Sampson, Susan Step-ney, and Jon Timmis. The CoSMoS Process Version 0.1: A Process for the Modelling and Simulation of Complex Systems. Technical Report YCS-2010-453, Department of Computer Science, the University of York, 2010.
• [Karanen et al. 2009] Ari Keränen, Jörg Ott, and Teemu Kärkkäinen. 2009. The ONE simulatorfor DTN protocol evaluation. In Proceedings of the 2nd International Conference onSimulation Tools and Techniques (Simutools '09). ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), ICST, Brussels, Belgium, Belgium, , Article 55 , 10 pages
• [North et al., 2013] North, M.J., N.T. Collier, J. Ozik, E. Tatara, M. Altaweel, C.M. Macal, M. Bragen, and P. Sydelko, "Complex Adaptive Systems Modeling with Repast Simphony," Complex Adaptive Systems Modeling, Springer, Heidelberg, FRG (2013).
• [Collier et al. , 2012] Collier, N.T., and M.J. North, "Parallel agent-based simulation with Repastfor High Performance Computing" in Simulation: Transactions of the Society for Modeling and Simulation International, 2012.
• [Read 2011] – Mark Read. Statistical and Modelling Techniques to Build Confidence in theInvesitgation of Immunology through Agent-Based Simulation. PhD Thesis, the University of York, 2011.
Acknowledgment
The slides in this presentation were produced with contributions from:
Peter Lewis
Jose Luis Fernandez Marquez
Mark Read