15 June 2010ABM Workshop -Leeds Salem Adra and Phil McMinn Automated Discovery of Emergent Misbehaviour in Agent-Based Models.

Slides:



Advertisements
Similar presentations
Approaches, Tools, and Applications Islam A. El-Shaarawy Shoubra Faculty of Eng.
Advertisements

SETTINGS AS COMPLEX ADAPTIVE SYSTEMS AN INTRODUCTION TO COMPLEXITY SCIENCE FOR HEALTH PROMOTION PROFESSIONALS Nastaran Keshavarz Mohammadi Don Nutbeam,
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 1: Introduction.
Towards Self-Testing in Autonomic Computing Systems Tariq M. King, Djuradj Babich, Jonatan Alava, and Peter J. Clarke Software Testing Research Group Florida.
Lecture # 2 : Process Models
Object-Oriented Software Development CS 3331 Fall 2009.
May 2, May 2, 2015May 2, 2015May 2, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University, Azusa, CA.
IMS1805 Systems Analysis Topic 3: Doing Analysis (continued from previous weeks)
University of Sheffield Modelling Tissue Development Rod Smallwood, Mike Holcombe, Sheila Mac Neil, Rod Hose, Richard Clayton.
Using the Semantic Web to Construct an Ontology- Based Repository for Software Patterns Scott Henninger Computer Science and Engineering University of.
Adding Organizations and Roles as Primitives to the JADE Framework NORMAS’08 Normative Multi Agent Systems, Matteo Baldoni 1, Valerio Genovese 1, Roberto.
Chapter 4 DECISION SUPPORT AND ARTIFICIAL INTELLIGENCE
Introduction To System Analysis and Design
Developing MAS The GAIA Methodology A Brief Summary by António Castro and Prof. Eugénio Oliveira.
Agent-Based Modelling Piper Jackson PhD Candidate Software Technology Lab School of Computing Science Simon Fraser University.
Genetic Algorithms Learning Machines for knowledge discovery.
CS 425/625 Software Engineering Software Testing
Software Design by Dr. Eitan Hadar Web:
Strategic Directions in Real- Time & Embedded Systems Aatash Patel 18 th September, 2001.
The Re-engineering and Reuse of Software
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Checking and understanding Simulation Behaviour Bruce Edmonds Centre for Policy Modelling Manchester Metropolitan University.
Agent Based Modeling and Simulation
1 Autonomic Computing An Introduction Guenter Kickinger.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
Design Science Method By Temtim Assefa.
P systems: A Modelling Language Marian Gheorghe Department of Computer Science University of Sheffield Unconventional Programming Paradigms; Sept’04.
Complexity and Emergence in Robotics Systems Design Professor George Rzevski The Open University and Magenta Corporation SERENDIPITY SYNDICATE 1 : Talk.
Zhiyong Wang In cooperation with Sisi Zlatanova
© Yilmaz “Agent-Directed Simulation – Course Outline” 1 Course Outline Dr. Levent Yilmaz M&SNet: Auburn M&S Laboratory Computer Science &
Swarm Computing Applications in Software Engineering By Chaitanya.
Computer Programming I An Introduction to the art and science of programming with C++
Development of Indicators for Integrated System Validation Leena Norros & Maaria Nuutinen & Paula Savioja VTT Industrial Systems: Work, Organisation and.
F uture & E merging T echnologies in the I nformation S ociety T echnologies programme of E uropean C ommission F uture & E merging T echnologies in the.
Slide 1 Mixed Model Production lines  2000 C.S.Kanagaraj Mixed Model Production Lines C.S.Kanagaraj ( Kana + Garage ) IEM 5303.
Future & Emerging Technologies in the Information Society Technologies programme of European Commission Future & Emerging Technologies in the Information.
Richard Oliver Legendi AITIA International, Inc. Eötvös Loránd University Eclipse DemoCamps Indigo.
Testing Vs. Inspection Research Paper Diala T. Gammoh, Ph.D. Student Dr. Damla Turgut, Ph.D. University of Central Florida, Orlando Florida
NAVEEN AGENT BASED SOFTWARE DEVELOPMENT. WHAT IS AN AGENT? A computer system capable of flexible, autonomous (problem-solving) action, situated in dynamic,
June 05 David A. Gaitros Jean Muhammad Introduction to OOD and UML Dr. Jean Muhammad.
The roots of innovation Future and Emerging Technologies (FET) Future and Emerging Technologies (FET) The roots of innovation Proactive initiative on:
Agent-based methods for translational cancer multilevel modelling Sylvia Nagl PhD Cancer Systems Science & Biomedical Informatics UCL Cancer Institute.
1 Introduction to Software Engineering Lecture 1.
Introduction to Spatial Microsimulation Dr Kirk Harland.
Systems Biology ___ Toward System-level Understanding of Biological Systems Hou-Haifeng.
Agent Based Modeling (ABM) in Complex Systems George Kampis ETSU, 2007 Spring Semester.
SICSA student induction day, 2009Slide 1 Social Simulation Tutorial International Symposium on Grid Computing Taipei, Taiwan, 7 th March 2010.
Bio-Networking: Biology Inspired Approach for Development of Adaptive Network Applications 21 May 2005Ognen Paunovski Bio-Networking: Biology Inspired.
Complex Systems Concepts
Riga Technical University Department of System Theory and Design Usage of Multi-Agent Paradigm in Multi-Robot Systems Integration Assistant professor Egons.
Software Design Process
1 From Conceptual Models to Simulation Models Takashi Iba* Yoshiaki Matsuzawa** Nozomu Aoyama** * Faculty of Policy Management, Keio University ** Graduate.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
08120: Programming 2: SoftwareTesting and Debugging Dr Mike Brayshaw.
Real-Time Systems, Events, Triggers. Real-Time Systems A system that has operational deadlines from event to system response A system whose correctness.
CSI 1340 Introduction to Computer Science II Chapter 1 Software Engineering Principles.
Artificial Intelligence: Research and Collaborative Possibilities a presentation by: Dr. Ernest L. McDuffie, Assistant Professor Department of Computer.
The article collection PRIS F7 Fredrik Kilander. Content “On agent-based software engineering” Nick Jennings, 1999 “An agent-based approach for building.
QUALITY MANAGEMENT IN HUMAN RESOURCE. Quote, “… "Outstanding leaders go out of the way to boost the self-esteem of their personnel. If people believe in.
December 3, 2014AISC-CODISCO 2014, revised Nov From Agent-based models to network analysis (and return): the policy-making perspective Magda Fontana.
Surface Defect Inspection: an Artificial Immune Approach Dr. Hong Zheng and Dr. Saeid Nahavandi School of Engineering and Technology.
Implementing Dynamic Data Assimilation in the Social Sciences Andy Evans Centre for Spatial Analysis and Policy With: Jon Ward, Mathematics; Nick Malleson,
1 AGENT-BASED MODELING OF THE TRAGEDY OF THE COMMONS by Güven Demirel.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
March 1, 2016Introduction to Artificial Intelligence Lecture 11: Machine Evolution 1 Let’s look at… Machine Evolution.
Object-Oriented Software Engineering Using UML, Patterns, and Java,
Magda Fontana Pietro Terna
CSc4730/6730 Scientific Visualization
Dept. of Computation, UMIST
Presentation transcript:

15 June 2010ABM Workshop -Leeds Salem Adra and Phil McMinn Automated Discovery of Emergent Misbehaviour in Agent-Based Models

15 June 2010ABM Workshop -Leeds Outline Background: Agent-Based modelling Agent-Based modelling Applications Testing Agent-Based Models: Motivations and Challenges Automated Discovery of Emergent Misbehaviour: Our Vision Testing Strategies

15 June 2010ABM Workshop -Leeds Background What is Agent-Based computational modelling? Increasingly popular modelling paradigm Main Idea: Simulates the interactions of autonomous entities (agents) with each other and their local environment to predict higher level emergent patterns Bottom-up procedure The focus goes into the individual interacting units Benefits: Deeper understanding of the interacting agents and their emergent behaviour

15 June 2010ABM Workshop -Leeds Background Example of some Agent-Based Modelling Frameworks: FLAME (C Based) MASON (Java Based) RePast (Java Based) Swarm (Objective C)

15 June 2010ABM Workshop -Leeds Background Agent-Based Models Examples The Epitheliome Project: (Part of the Physiome Project, a worldwide public domain effort to provide a computational framework for understanding human physiology) Goal: Modelling the Emergent Behaviour of Epithelial Cells Benefits: Better Understanding of Cell Proliferation and self-organisation Capability to explore the roles of a single parameter in a complex biological system Helps in the development of reconstruction methods for artificial human skin

15 June 2010ABM Workshop -Leeds Background Prediction and validation about Epithelial scratch wound healing process Agent-Based Models Examples

15 June 2010ABM Workshop -Leeds Background Modelling of cardiac cells and tissues Agent-Based Models Examples

15 June 2010ABM Workshop -Leeds Background Macroeconomic Policy Modelling Agent-Based Models Examples

15 June 2010ABM Workshop -Leeds Background Social Insects: Pharaohs Ant Agent-Based Models Examples

15 June 2010ABM Workshop -Leeds Testing Agent-Based Models Motivation: ABM are increasingly used to make predictions that can affect organisations and even society Hidden errors lurking in such models can be very costly E.g. In the banking sector, losses made by NatWest, Barclays and Deutsche Morgan Grenfell totalling tens of millions of pounds were blamed on decisions that involved economic model errors The correctness of such models and their thorough testing is vital No Formal Testing Technique for ABM has yet been established

15 June 2010ABM Workshop -Leeds Agents vs. Objects “Object-oriented programmers often fail to see anything novel or new in the idea of agents. … While there are obvious similarities, there are also significant differences between agents and objects.” N. R. Jennings, K. Sycara, and M. Wooldridge, “A roadmap of agent research and development,” Journal of Autonomous Agents and Multi-Agent Systems, vol. 1, no. 1, pp. 7–38, Testing Agent-Based Models

15 June 2010ABM Workshop -Leeds Agent vs. Objects: Sources: (1)James J. Odell: "Objects and Agents Compared", in Journal of Object Technology, vol. 1, no. 1, May-June 2002, pp (2)Parunak, H. Van Dyke, "Go to the Ant": Engineering Principles from Natural Agent Systems, Annals of Operations Research, 75, 1997, pp Evolution of Programming Approaches Testing Agent-Based Models

15 June 2010ABM Workshop -Leeds Agents vs. Objects: Main Differences: AUTONOMY and FLEXIBILITY ObjectsAgents Behaviour controlled by external entitiesSelf-governed (goals and rules) Always Say “Yes” - “No” is an errorAllowed to Say “No” Predictive behaviour (Static Functionality – which facilitates inheritance) Unpredictable - Behave differently in different scenarios (can learn from experience and evolve) Some examples of differences between Objects and Agents Testing Agent-Based Models

15 June 2010ABM Workshop -Leeds Testing Agent-Based Models Challenges: ABM are hard to test Models often built to predict previously unseen emergent behaviour Modellers themselves are not sure what to expect Main purpose for modelling in the 1 st place Model Complexity Simulating interactions of thousands and millions of agents is common Tracing back certain model behaviour to certain agent or event is very hard

15 June 2010ABM Workshop -Leeds Errors and Artefacts in Agent-Based Modelling Galan et al. (2009), Journal of Artificial Societies and Social Simulation vol. 12, no. 1 Testing Agent-Based Models

15 June 2010ABM Workshop -Leeds Without visual inspection this bug would have not been caught Most modelling work involve batch processing tasks (i.e. no visualisation) Testing Agent-Based Models

15 June 2010ABM Workshop -Leeds Some Suggested Informal Validation Solutions: 1.Application of an ABM to extreme scenarios 2.Re-implementing an ABM using: different programming languages, programming paradigms agent-based modelling frameworks Testing Agent-Based Models

15 June 2010ABM Workshop -Leeds The Misbehaviour Project: Project’s Aim: Automated Discovery of Emergent Misbehaviour (ADEM) Develop testing techniques and frameworks for agent-based software that can lead to the detection of systems’ Emergent Misbehaviour Towards Formalising ABM testing Testing Agent-Based Models

15 June 2010ABM Workshop -Leeds Approach: Automated Testing Framework composed of 2 main steps Step 1- Learn and Build up an abstract model of the ABM to be tested Formulate fitness functions (simpler for task oriented ABMs) and constraints that define the model’s normal behaviour) Tools: Daikon (invariant detection), statistical and visual analysis methods Step 2- Search-Based Testing Process (using a black box approach) Search for scenarios, parameters or settings that might force the ABM to uncover “Misbehaviour” or bring it close to an extreme behaviour (i.e. violating a fitness functions and/or constraint) Tools: Metaheuristic techniques (e.g. GAs, Memetic Algorithms, … etc) Towards Formalising ABM testing Testing Agent-Based Models

15 June 2010ABM Workshop -Leeds ADEM Procedure Testing Agent-Based Models Learn Model (DAIKON) Misbehaviour Detected? Found Bug No Yes Produce new Behaviour (GAs) Max Iterations Reached? Start End No No Bug Found Yes

15 June 2010ABM Workshop -Leeds Case Studies: Cancer Research and BT 1 - Learn real model (i.e. invariants, agent’s properties and normal behaviour) 2 - Produce buggy models out of the real models How? Mutation Testing: Introduction of artificial bugs 3 – Apply ADEM Procedure: Repeat until Misbehaviour Found or maximum iterations reached IF any Misbehaviour already detected or any Invariant violated Task accomplished ELSE Deploy metaheuristics to search for Misbehaviour END

15 June 2010ABM Workshop -Leeds The End. Thank You.