Hybrid automata Rafael Wisniewski Automation and Control, Dept. of Electronic Systems Aalborg University, Denmark Hybrid Systems October 9th 2009.

Slides:



Advertisements
Similar presentations
Hybrid automata - Abstraction Anders P. Ravn Department of Computer Science, Aalborg University, Denmark Hybrid Systems – PhD School Aalborg University.
Advertisements

Algorithmic Software Verification VII. Computation tree logic and bisimulations.
An Introduction to the Model Verifier verds Wenhui Zhang September 15 th, 2010.
UPPAAL Introduction Chien-Liang Chen.
Hybrid System Verification Synchronous Workshop 2003 A New Verification Algorithm for Planar Differential Inclusions Gordon Pace University of Malta December.
Hybrid Systems Presented by: Arnab De Anand S. An Intuitive Introduction to Hybrid Systems Discrete program with an analog environment. What does it mean?
Timed Automata.
Introduction to Uppaal ITV Multiprogramming & Real-Time Systems Anders P. Ravn Aalborg University May 2009.
Verification of Hybrid Systems An Assessment of Current Techniques Holly Bowen.
Semantic Translation of Simulink/Stateflow Models to Hybrid Automata using Graph Transformations A. Agarwal, Gy. Simon, G. Karsai ISIS, Vanderbilt University.
Possibilistic and probabilistic abstraction-based model checking Michael Huth Computing Imperial College London, United Kingdom.
Finite Automata Section 1.1 CSC 4170 Theory of Computation.
Discrete Abstractions of Hybrid Systems Rajeev Alur, Thomas A. Henzinger, Gerardo Lafferriere and George J. Pappas.
Bisimulation Relation A lecture over E. Hagherdi, P. Tabuada, G. J. Pappas Bisimulation relation for dynamical, control, and hybrid systems Rafael Wisniewski.
EECE Hybrid and Embedded Systems: Computation T. John Koo, Ph.D. Institute for Software Integrated Systems Department of Electrical Engineering and.
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture 4 Context-free grammars Jan Maluszynski, IDA, 2007
Lecture 4&5: Model Checking: A quick introduction Professor Aditya Ghose Director, Decision Systems Lab School of IT and Computer Science University of.
Model Checking for Hybrid Systems Bruce H. Krogh Carnegie Mellon University.
Model Checking Anders P. Ravn Department of Computer Science, Aalborg University, Denmark Hybrid Systems – PhD School Aalborg University January 2007.
The Symbolic Approach to Hybrid Systems Tom Henzinger University of California, Berkeley.
Hybrid Systems a lecture over: Tom Henzinger’s The Theory of Hybrid Automata Anders P. Ravn Aalborg University PhD-reading course November 2005.
ESE601: Hybrid Systems Introduction to verification Spring 2006.
CS5371 Theory of Computation Lecture 4: Automata Theory II (DFA = NFA, Regular Language)
Chess Review October 4, 2006 Alexandria, VA Embedded Systems Education: Vanderbilt Edited and Presented by Janos Sztipanovits ISIS, Vanderbilt University.
Tool Integration of Ptolemy II EE290N Class Project Haiyang Zheng May
Beyond HyTech Presented by: Ben Horowitz and Rupak Majumdar Joint work with Tom Henzinger and Howard Wong-Toi.
Approximation Metrics for Discrete and Continuous Systems Antoine Girard and George J. Pappas VERIMAG Workshop.
ECE/CS 584: Hybrid Automaton Modeling Framework Executions, Reach set, Invariance Lecture 03 Sayan Mitra.
Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013.
1 DISTRIBUTION A. Approved for public release; Distribution unlimited. (Approval AFRL PA # 88ABW , 09 April 2014) Reducing the Wrapping Effect.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Department of Mechanical Engineering The University of Strathclyde, Glasgow Hybrid Systems: Modelling, Analysis and Control Yan Pang Department of Mechanical.
Software Verification 2 Automated Verification Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität and Fraunhofer Institut für.
Mathematical Operational Semantics and Finitary System Behaviour Stefan Milius, Marcello Bonsangue, Robert Myers, Jurriaan Rot.
Reactive systems – general
Hybrid automata and temporal logics
ECE/CS 584: PVS Tutorial Part 1 Lecture 05 Sayan Mitra 1.
1 Bisimulations as a Technique for State Space Reductions.
Lecture 81 Regional Automaton CS 5270 Lecture 8. Lecture 82 What We Need to Do Problem: –We need to analyze the timed behavior of a TTS. –The timed behavior.
Software Verification 2 Automated Verification Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität and Fraunhofer Institut für.
ECE/CS 584: Hybrid Automaton Modeling Framework Invariance, Abstractions, Simulation Lecture 04 Sayan Mitra.
Control Synthesis and Reconfiguration for Hybrid Systems October 2001 Sherif Abdelwahed ISIS Vanderbilt University.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
Copyright 2001, Matt Dwyer, John Hatcliff, and Radu Iosif. The syllabus and all lectures for this course are copyrighted materials and may not be used.
Ukrprog Formal requirement language and its applications A.Letichevsky Glushkov Institute of Cybernetics.
2G1516 Formal Methods2005 Mads Dam IMIT, KTH 1 CCS: Processes and Equivalences Mads Dam Reading: Peled 8.5.
Symbolic Algorithms for Infinite-state Systems Rupak Majumdar (UC Berkeley) Joint work with Luca de Alfaro (UC Santa Cruz) Thomas A. Henzinger (UC Berkeley)
ECE/CS 584: Verification of Embedded Computing Systems Model Checking Timed Automata Sayan Mitra Lecture 09.
ECE/CS 584: Verification of Embedded Computing Systems Timed to Hybrid Automata Sayan Mitra (edited by Yu Wang) Lecture 10.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Model Checking Lecture 2. Model-Checking Problem I |= S System modelSystem property.
Model Checking Lecture 2 Tom Henzinger. Model-Checking Problem I |= S System modelSystem property.
SS 2017 Software Verification Timed Automata
Why Study Automata Theory and Formal Languages?
Introduction Chapter 0.
Formal Methods in software development
CIS Automata and Formal Languages – Pei Wang
Program Synthesis is a Game
Non-Determinism 12CS45 Finite Automata.
Timed Automata Formal Systems Pallab Dasgupta Professor,
ECE/CS 584: Hybrid Automaton Modeling Framework Simulations and Composition Lecture 05 Sayan Mitra.
ECE/CS 584: Verification of Embedded Computing Systems
Thanyapat Sakunkonchak Masahiro Fujita
Formal Methods in software development
Introduction Chapter 0.
Formal Methods in software development
Introduction to verification
Formal Methods in software development
Lecture One: Automata Theory Amjad Ali
Presentation transcript:

Hybrid automata Rafael Wisniewski Automation and Control, Dept. of Electronic Systems Aalborg University, Denmark Hybrid Systems October 9th 2009

Why are we here? "Control Engineers will have to master computer and software technologies to be able to build the systems of the future, and software engineers need to use control concepts to master ever-increasing complexity of computing systems.” (IFAC Newsletter December 2005 No.6)

Hybrid System A dynamical system with a non-trivial interaction of discrete and continuous dynamics autonomous switches jumps controlled switches jump between manifolds (Branicky 1995)

Hybrid Systems in Control (take up of CS ideas …) Hybrid Automata is the Spec. Language Tools for simulation and model checking (Henzinger,Alur,Maler,Dang, …) Bisimulation as abstraction technique (Pappas,Neruda,Koo, …) Industrial Applications

X = {x 1, … x n } - variables, X dotted variables, X’ - primed variables (V, E) – control graph init: V  preds(X) inv: V  preds(X) flow: V  preds(X  X) jump: E  preds(X  X´) event: E   Hybrid Automaton - Syntax. x´ = x-1  .

Q – states, e.g. (v=”Off”,x = 17.5) Q 0 – initial states, Q 0  Q A – labels  – transition relation,  Q  A  Q Labelled Transition System

Transition Semantics of HA X = {x 1, … x n } - variables (V, E) – control graph init: V  pred(X) inv: V  pred(X) flow: V  pred(X  X) jump: E  pred(X  X’) event: E   Q - states – {(v,x) | v  V and inv(v)[X := x]}. Q 0 – initial states - {(v,x)  Q | init(v)[X := x]} A - labels -   R  0 { (v,x) –  (v’,x’) | e  E(v,v’) and event(e) =  and jump(e) [X:= x, X’:=x’]} { (v,x) –  (v,x’) |   R  0 and f: (0,  )  R n s.t. f is diff. and f(0) = x and f(  ) = x’ and flow(v)[X := f(t), X:= f(t)], t  (0,  ) }. x´ = x  

Q - states, {(v,x) | v  V and inv(v)[X := x]} Q 0 – initial states, … A - labels, …  - transition relation,  Q  A  Q Tree Semantics Computation tree:  = q 00 a q 10 q q 1n 1 … q 200 q 201 q 210 q 211 q 13

Q - states, {(v,x) | v  V and inv(v)[X := x]} Q 0 – initial states, … A - labels   R  0  - transition relation,  Q  A  Q Trace Semantics Trajectory:  = where q 0  Q 0 and q i –a i  q i+1, i  0 Live Transition System: (S, L = {  |  infinite from S}) Machine Closed:  finite from S,   prefix(L) Duration of  is sum of time labels. S is non-Zeno: duration of   L diverges, Machine closed (ompare with the two tank example)

Time Abstract Semantics X = {x 1, … x n } - variables (V, E) – control graph init: V  pred(X) inv: V  pred(X) flow: V  pred(X  X) jump: E  pred(X  X’) event: E   Q - states – {(v,x) | v  V and inv(v)[X := x]}. Q 0 – initial states - {(v,x)  Q | init(v)[X := x]} B - labels -   {  } - finite ! { (v,x) –  (v’,x’) | e  E(v,v’) and event(e) =  and jump(e) [X := x]} { (v,x) –   (v,x’) |   R  0 and f: (0,  )  R n s.t. f is diff. and f(0) = x and f(  ) = x’ and flow(v)[X := f(t), X:= f(t)], t  (0,  )}.

Q - states Q 0 – initial states, … A - labels, …  - transition relation,  Q  A  Q Composition of Transition Systems S = S1 || S2 with  : A1  A2  A Q = Q1  Q2 Q 0 = Q1 0  Q2 0 (q1,q2) –a  (q1’,q2’) iff (qi –ai  qi’, i=1,2 and a = a1  a2 is defined Remark p 7 Composition of hybrid automata  :

Classes of Hybrid Automata X = {x 1, … x n } - variables (V, E) – control graph init: V  preds(X) inv: V  preds(X) flow: V  preds(X  X) jump: E  preds(X  X’) event: E  . Rectangular init, inv, flow (x  I flow ), jump (x = (x,y)  I, x’ = (x’,y’), x’  I’,y’=y) Singular – rectangular with I flow a point Timed – singular with I flow = [1,1] n Multirectangular ….

Timed Automaton X = {x 1, … x n } - variables (V, E) – control graph init: V  pred(X) inv: V  pred(X) flow: V  pred(X  X) jump: E  pred(X  X’). Init(v): v = v 0 and X = 0, where v 0  V inv(v): X <= C, where C is rational flow(v): X = 1 jump(e) : A boolean combination of X <= C, X < C and Y = 0, where Y  X’’.

Verification results

Trace Semantics Trajectory:  = where q 0  Q 0 and q i –a i  q i+1, i  0 Q - states – {(v,x) | v  V and inv(v)[X := x]} Q 0 – initial states - {(v,x)  Q | init(v)[X := x]} B - labels -   {  } { (v,x) –  (v’,x’) | e  E(v,v’), event(e) = , jump(e) [X := x]} { (v,x) –   (v,x’) | f(0) = x, f(  ) = x’, flow(v)[X := f(t), X:= f(t)], t  (0,  )}

Symbolic Analysis Q - states Q 0 – initial states, … A - labels, …  - transition relation, A  Q  Q a Theory: T = {p 1, … p n … }, p is a predicate, e.g. pred(X  V) Meaning of p: [p]  Q q 1  q 2 iff p(q 1 ) = p(q 2 ) for all p  T

Symbolic Bisimilarity Computation R R’ pre a (R’)