Top Banner
Peter Lewis , Jose Luis Fernandez Marquez & Mark Read Self-Awareness in Autonomic Systems Simulation Tools and Existing Platforms for Self-Awareness
34

Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Jan 12, 2015

Download

Technology

By Peter Lewis, Jose Luis Fernandez Marquez & Mark Read
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

Self-Awareness in Autonomic Systems

Simulation Tools and Existing Platforms for Self-Awareness

Page 2: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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

Page 3: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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?

Page 4: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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

Page 5: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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

Page 6: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

Repast [North et al., 2013]

• Open source agent-basedmodeling and simulationplatform.

• It allows– large scale multi-agent

simulations (+1000)

– Visualization.

– Batch mode.

Page 7: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

Repast Features I

• Java classes can be created through a visual interface. It does not requiere 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.

Page 8: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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. Forthcoming]

Page 9: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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.

Page 10: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

The One I [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..)

Page 11: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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.

Page 12: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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.

Page 13: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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/

Page 14: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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/

Page 15: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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/

Page 16: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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/

Page 17: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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/

Page 18: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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?

Page 19: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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]

Page 20: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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]

Page 21: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

Simulating EAE – domain modelling

• Drawing UML diagrams to capture cell behavious, capture assumptions, expose inconsistencies in the literature

• Free of any implementation-specific details, focuses purely on biology

• Forms basis for simulation construction

[Read 2011]

Page 22: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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]

Page 23: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

Simulating EAE – Simulation Platform• The simulation itself is built based on platform model

specification [Read 2011]

Page 24: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

Simulating EAE – Results model

• This is investigationspecific, 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)

[Read 2011]

Page 25: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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

Page 26: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

CoCoRoSim

• Underwater swarm robotics simulation developed by the CoCoRo project

– http://cocoro.uni-graz.at/

• Facilitates controller design whilst hardware is still under construction.

Page 27: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

• Swarm re-configuring itself to form a chain

– Complicated algorithm that could not have been developed on real robots in the first instance

Page 28: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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

Page 29: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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

Page 30: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

Old physics

Page 31: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

New physics

Page 32: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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!

Page 33: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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!

Page 34: Academic Course: 09 Simulation Tools and Existing Platforms for Self-Awareness

Peter Lewis, Jose Luis Fernandez Marquez & Mark Read

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 simulator for DTN protocol evaluation. In Proceedings of the 2nd International Conference on Simulation Tools andTechniques (Simutools '09). ICST (Institute for Computer Sciences, Social-Informatics andTelecommunications 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. Forthcoming] Collier, N.T., and M.J. North, "Parallel agent-based simulation with Repast forHigh Performance Computing" in Simulation: Transactions of the Society for Modeling and SimulationInternational. Forthcoming.

• [Read 2011] – Mark Read. Statistical and Modelling Techniques to Build Confidence in the Invesitgation of Immunology through Agent-Based Simulation. PhD Thesis, the University of York, 2011.