Industry Training: 03 Awareness Simulation


Published on

Industry training slides from the Awareness Slides Factory

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Industry Training: 03 Awareness Simulation

  1. 1. Self-Awareness in Autonomic Systems Simulation Tools and Existing Platforms for Self-Awareness
  2. 2. 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
  3. 3. 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?
  4. 4. 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
  5. 5. Desired features for self-awareness simulators • A good simulator should provide: – Scheduler for simulating multi-agent systems – Networking libraries to analyse the network performance (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
  6. 6. Repast [North et al., 2013] • Open source agent-based modeling and simulation platform. • It allows – large scale multi-agent simulations (+1000) – Visualization. – Batch mode.
  7. 7. Repast Features I • Java classes can be created through a visual interface. It does not require high programming skills. • Automated connections to a variety of optional external tools including R, VisAD, Weka, popular spreadsheets, MATLAB, and iReport. • Modeling and visualization of 2D environments, 3D environments, networks including full integration with the JUNG network modeling library, and geographical spaces including full Geographical Information Systems (GIS) support.
  8. 8. Repast Features II • A fully concurrent multithreaded discrete event scheduler. • Libraries for genetic algorithms, neural networks, regression, random number generation, and specialized mathematics. • Built-in tools for integrating external models. • Fully object-orientation. • Availability of Repast HPC, version for High Performance Computation, that allows to run simulation on clusters or super computers. [Collier et al. , 2012]
  9. 9. Repast - Disadvantages • There is not a network library provided by repast that provides realistic metrics related with network performance (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.
  10. 10. 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..)
  11. 11. 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.
  12. 12. 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.
  13. 13. 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]
  14. 14. 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]
  15. 15. The CoSMoS Method • Platform model: software (architecture) specification for simulation • Implementation-specific abstractions & details added • Emergent properties removed [Andrews et al. 2010]
  16. 16. The CoSMoS Method • Simulation platform: software simulation of complex domain created, in a particular programming language/modeling paradigm [Andrews et al. 2010]
  17. 17. 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]
  18. 18. 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?
  19. 19. 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]
  20. 20. 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]
  21. 21. 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]
  22. 22. 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]
  23. 23. Simulating EAE – Simulation Platform • The simulation itself is built based on platform model specification [Read 2011]
  24. 24. 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)
  25. 25. 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
  26. 26. CoCoRoSim • Underwater swarm robotics simulation developed by the CoCoRo project • Facilitates controller design whilst hardware is still under construction.
  27. 27. • Swarm re-configuring itself to form a chain – Complicated algorithm that could not have been developed on real robots in the first instance
  28. 28. 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
  29. 29. 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
  30. 30. Old physics
  31. 31. New physics
  32. 32. 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!
  33. 33. 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!
  34. 34. 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 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 Repast for 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 the Invesitgation of Immunology through Agent-Based Simulation. PhD Thesis, the University of York, 2011.
  35. 35. Acknowledgment The slides in this presentation were produced with contributions from: Peter Lewis Jose Luis Fernandez Marquez Mark Read