Formal Approaches to Swarm Technologies Technical Briefing Christopher Rouff, Amy Vanderbilt - SAIC Walt Truszkowski, James Rash - NASA GSFC, Code 588.

Slides:



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

ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Formal Modelling of Reactive Agents as an aggregation of Simple Behaviours P.Kefalas Dept. of Computer Science 13 Tsimiski Str Thessaloniki Greece.
Concurrency: introduction1 ©Magee/Kramer 2 nd Edition Concurrency State Models and Java Programs Jeff Magee and Jeff Kramer.
Software Requirements Engineering
Anna Philippou Department of Computer Science University of Cyprus Joint work with Mauricio Toro Department of Comp. Sc. EAFIT University Christina Kassara.
ISBN Chapter 3 Describing Syntax and Semantics.
Software Reliability CIS 640 Adapted from the lecture notes by Doron Pelel (
1 Formal Methods in SE Qaisar Javaid Assistant Professor Lecture 05.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
1 Petri Nets H Plan: –Introduce basics of Petri Net models –Define notation and terminology used –Show examples of Petri Net models u Calaway Park model.
Software Engineering, COMP201 Slide 1 Protocol Engineering Protocol Specification using CFSM model Lecture 30.
Modeling State-Dependent Objects Using Colored Petri Nets
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
Designing Predictable and Robust Systems Tom Henzinger UC Berkeley and EPFL.
Describing Syntax and Semantics
Real-Time System Requirements & Design Specs Shaw - Chapters 3 & 4 Homework #2: 3.3.1, 3.4.1, Add Error states to Fig 4.1 Lecture 4/17.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013.
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
Chapter 14: Artificial Intelligence Invitation to Computer Science, C++ Version, Third Edition.
Concurrency: introduction1 ©Magee/Kramer Concurrency State Models and Java Programs Jeff Magee and Jeff Kramer.
Compositional IS Development Framework Application Domain Application Domain Pre-existing components, legacy systems Extended for CD (ontologies) OAD Methods.
INTELLIGENT AUTOMATION INC. Extending Rational Rose to support MAS design in UML Intelligent Automation Inc. 2 Research Place, Suite 202 Rockville, MD.
Verification of Information Flow Properties in Cyber-Physical Systems Ravi Akella, Bruce McMillin Department of Computer Science Missouri University of.
Zhiyong Wang In cooperation with Sisi Zlatanova
Artificial Intelligence Techniques Internet Applications 1.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
An Introduction to Petri Nets Marjan Sirjani Formal Methods Laboratory University of Tehran.
Scientific Computing By: Fatima Hallak To: Dr. Guy Tel-Zur.
Introduction to Formal Methods Based on Jeannette M. Wing. A Specifier's Introduction to Formal Methods. IEEE Computer, 23(9):8-24, September,
Overview of Formal Methods. Topics Introduction and terminology FM and Software Engineering Applications of FM Propositional and Predicate Logic Program.
Institute e-Austria in Timisoara 1 Author: prep. eng. Calin Jebelean Verification of Communication Protocols using SDL ( )
Software Engineering Research paper presentation Ali Ahmad Formal Approaches to Software Testing Hierarchal GUI Test Case Generation Using Automated Planning.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Dynamic software reconfiguration using control supervisors Ugo Buy 13 June 2005.
Programming Paradigms for Concurrency Pavol Cerny Vasu Singh Thomas Wies Part III – Message Passing Concurrency.
Why building models? n Cannot experience on the real system of interest n Cost n Danger n The real system does not exist Why using simulation? n Reduced.
Integrating UML and Petri Nets Problem with Current Software Engineering Methodology Stochastic Petri nets and their useful properties Translating UML.
Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on.
1 Qualitative Reasoning of Distributed Object Design Nima Kaveh & Wolfgang Emmerich Software Systems Engineering Dept. Computer Science University College.
Fault-Tolerant Parallel and Distributed Computing for Software Engineering Undergraduates Ali Ebnenasir and Jean Mayo {aebnenas, Department.
Major Disciplines in Computer Science Ken Nguyen Department of Information Technology Clayton State University.
Requirements Specification. Welcome to Software Engineering: “Requirements Specification” “Requirements Specification”  Verb?  Noun?  “Specification”
Formal Methods.
Safety-Critical Systems 4 Formal Methods / Modelling
Intelligent Systems Software Assurance Symposium 2004 Bojan Cukic & Yan Liu, Robyn Lutz & Stacy Nelson, Chris Rouff, Johann Schumann, Margaret Smith July.
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 05/06 Universität Dortmund Validation - Formal verification -
Modelling Reactive Systems 4 Professor Muffy Calder Dept. of Computing Science University of Glasgow
Course: COMS-E6125 Professor: Gail E. Kaiser Student: Shanghao Li (sl2967)
November 2003J. B. Wordsworth: J3ISDQR41 Information Systems Development Quality and Risk (4)
CSCI1600: Embedded and Real Time Software Lecture 28: Verification I Steven Reiss, Fall 2015.
Finite State Machines (FSM) OR Finite State Automation (FSA) - are models of the behaviors of a system or a complex object, with a limited number of defined.
Duminda WijesekeraSWSE 623: Introduction1 Introduction to Formal and Semi- formal Methods Based on A Specifier's Introduction to Formal Methods (J. Wing)
Automated Formal Verification of PLC (Programmable Logic Controller) Programs
1 CEN 4020 Software Engineering PPT4: Requirement analysis.
Formal Methods. What Are Formal Methods Formal methods refers to a variety of mathematical modeling techniques that are applicable to computer system.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
Model Checking Early Requirements Specifications in Tropos Presented by Chin-Yi Tsai.
Sub-fields of computer science. Sub-fields of computer science.
An Overview of Requirements Engineering Tools and Methodologies*
SIMULATION SIMULAND PURPOSE TECHNIQUE CREDIBILITY PROGRAMMATICS
Intelligent Systems Software Assurance Symposium 2004
Big Ideas in Computer Science
Advantages of Formal Methods
Artificial Intelligence introduction(2)
Department of Computer Science Abdul Wali Khan University Mardan
An Introduction to Petri Nets
Lecture 4 – Bond Agents What is a software agent? Mobility
Presentation transcript:

Formal Approaches to Swarm Technologies Technical Briefing Christopher Rouff, Amy Vanderbilt - SAIC Walt Truszkowski, James Rash - NASA GSFC, Code 588 Mike Hinchey - NASA GSFC, Code 581 GSFC SAS 2004

1 Problem Future space missions will require cooperation between multiple satellites/rovers Developers are proposing intelligent, autonomous swarms to do new science Swarm-based systems are highly parallel and nondeterministic Testing these systems using current techniques will be difficult to impossible

2SAS 2004 ANTS Mission

3SAS 2004 ANTS MISSION

4SAS 2004 Difficulty of Testing Swarms Emergent properties that may not be known Highly distributed and parallel Large number of interacting entities Worse than exponential growth in interactions Intelligent entities (capabilities increase over time) Total or near total autonomy Very little experience in verification and validation of swarm-based systems

5SAS 2004 Relevance to NASA Many future missions will be intelligent collaborative distributed systems Autonomy and autonomic properties will be necessary to manage and operate these systems Swarms will allow new way for doing science Verifying these missions will be paramount due to complexity and emergent behaviors Need verification techniques for these systems

6SAS 2004 Approach Survey formal approaches for agent-based, multi- agent and swarm-based systems for appropriate swarm-based methods Apply most promising approaches to parts of ANTS Evaluate methods for needed properties Model and outline swarm-based formal method Develop formal method for swarm-based systems Do formal specification of ANTS using new method Prototype support tools

7SAS 2004 Accomplishments Surveyed formal approaches Applied most promising approaches to ANTS Evaluated methods Developed properties for swarm formal method Developed model and outline for a hybrid swarm-based formal method

8SAS 2004 Formal Methods Survey Criteria for Surveying Formal Methods  Emphasis given to formal methods used for: Swarm, multi-agent, or distributed specifications  Evaluated based on: Concurrency support, algorithm support, tool support, formal basis, used in agent-based specifications, used in swarm-based specifications

9SAS 2004 Formal Methods Surveyed Process Algebras  CSP, CCS, Pi-Calculus, I/O Automata Model-Oriented Approaches  Z, B, FSMs, Statecharts, Petri Nets, X-Machines Logics  Temporal, Real Time, BDI, KARO Other Approaches  Artificial Physics, Mathematical Analysis, Game Theory, UML, Hybrid Approaches

10SAS 2004 Specifications CSP – Communicating Sequential Processes WSCCS – Weighted Synchronous Calculus of Communicating Systems Unity logic X-Machines

11SAS 2004 CSP Communicating Sequential Processes  Developed by C.A.R. Hoare  Process Algebra  Processes are recursively defined as an event followed by a process  Use channels for processes to communicate  Channels are guarded by events  Properties of CSP specifications can be proven correct

12SAS 2004 CSP

13SAS 2004 CSP

14SAS 2004 CSP

15SAS 2004 CSP

16SAS 2004 CSP Evaluation  Strengths Specifying inter-process protocols Identifying race conditions Easily translated into model checking language  Weaknesses No mechanism for analyzing emergent behavior

17SAS 2004 WSCCS Weighted Synchronous Calculus of Communicating Systems  Developed by Chris Tofts  Used to model social insects  Uses a state-based approach with frequencies and priorities for transitions  Frequencies and priorities can give you the probability of taking an action

18SAS 2004 WSCCS Agent StateActions leading to the agent statefp Identity Communicating SendMessageWorker502 SendMessageLeader502 SendMessageError11 ReceiveMessageWorker502 ReceiveMessageLeader502 ReceiveMessageError11 Reasoning ReasoningDeliberatve502 ReasoningReactive502 Processing ProcessingSortingAndStorage172 ProcessingGeneration172 ProcessingPrediction172 ProcessingDiagnosis162 ProcessingRecovery162 ProcessingRemediation172

19SAS 2004 WSCCS

20SAS 2004 WSCCS Communicating Reasoning Processing

21SAS 2004 WSCCS Evaluation  Strengths Process algebra strengths Specifies priorities and probabilities of actions Rules for predicting behavior  Weaknesses Ability to track and model goals and other aspects of the spacecraft

22SAS 2004 Unity Logic Developed by Chandy and Misra Syntax similar to Propositional Logic Reason about predicates and states Very good for concurrent systems

23SAS 2004 Unity Logic Assertions [Communicating]ReasoningDeliberatve(Leader)[Reasoning] [Reasoning] SendMessage (Leader,Worker)[Communicating] [Processing] SendMessage (Leader, Worker) [Communicating]

24SAS 2004 Unity Logic Evaluation  Strengths Strengths of logic-based systems A method for reasoning about predicates and the states they imply A method for defining specific mathematical and statistical calculations to be performed  Weaknesses Not rich enough for reasoning about emergent behavior

25SAS 2004 X-Machines Developed by Samuel Eilenberg Based on Finite State Machines Have an internal memory state Transitions are functions:  Input x Memory → Output x Memory

26SAS 2004 X-Machines

27SAS 2004 X-Machines

28SAS 2004 X-Machines Set of states Transition functions

29SAS 2004 X-Machines StartSendMessage Commun. ReceiveMessageCommun. ReasonReasoning ProcessProcessing CommunicatingSendMessage Commun. ReceiveMessageCommun. ReasonReasoning ProcessProcessing ReasoningSendMessage Commun. ReceiveMessageCommun. ReasonReasoning ProcessProcessing ProcessingSendMessage Commun. ReceiveMessageCommun. ReasonReasoning ProcessProcessing Leader States and Transitions

30SAS 2004 X-Machines

31SAS 2004 X-Machines Evaluation  Strengths State-based system with memory Executable  Weaknesses No robust means for reasoning about or predicting behaviors beyond standard propositional logic

32SAS 2004 Model of Formal Method Blending of methods seems to be the best approach for specifying swarm-based systems Blending of priority and probability aspects of WSCCS with memory and transition function aspects of X-Machines as well as logic from Unity Logic is a possibility and is currently being researched

33SAS 2004 Model of Formal Method

34SAS 2004 Future Work Exploring Chaos Theory Modifying WSCCS with different probabilistic methods Blending above methods into a hybrid formal method

35SAS 2004 Next steps Develop formal method for swarm-based systems based on current model Do formal specification of ANTS using new method Prototype support tools

36SAS 2004 Publications Conferences Rouff, C., Vanderbilt, A., Hinchey, M. Truszkowski, W., Rash, J. Properties of a Formal Method for Prediction of Emergent Behaviors in Swarm-based Systems. 2nd IEEE International Conference on Software Engineering and Formal Methods. Beijing, China, September, Rouff, C. Hinchey, M. and Truszkowski, W. Towards a Formal Approach to Swarm Technology. 8th International Conference on Space Operations (SpaceOps 2004). Montreal, Canada, May 17-21, Rouff, C., Vanderbilt, A., Truszkowski, W., Rash, J. and Hinchey, M. Verification of NASA Emergent Systems. First IFIP International Conference on Artificial Intelligence Applications and Innovations. August 23-26, Rouff, C., Vanderbilt, A., Truszkowski, W., Rash, J. and Hinchey, M. Verification of NASA Emergent Systems. Ninth International Conference on Engineering of Complex Computer Systems (ICECCS 2004), Florence, Italy, April 14-16, 2004.

37SAS 2004 Publications Workshops Rouff, C., Vanderbilt, A., Hinchey, M., Truszkowski, W., and Rash, J. Verification of Emergent Behaviors in Swarm-based Systems. Workshop on Engineering of Autonomic Systems. In Proceedings of IEEE International Conference on Engineering of Computer Based Systems (ECBS 2004), Brno, Czech Republic, May 24-27, Rouff, C., Vanderbilt, A., Hinchey, M., Truszkowski, W., and Rash, J. Properties of a Formal Method for Modeling Emergence in Swarm-based Systems. In Proceedings of the Third NASA Goddard Workshop on Formal Approaches to Agent Based Systems. Springer, Lecture Notes in Artificial Intelligence. April Rouff, C., Truszkowski, W., Rash, J. and Hinchey, M. Formal Approaches to Intelligent Swarm Technology. IEEE/NASA Software Engineering Workshop. December 2003.