Succinct Approximations of Distributed Hybrid Behaviors P.S. Thiagarajan School of Computing, National University of Singapore Joint Work with: Yang Shaofa.

Slides:



Advertisements
Similar presentations
Automatic Verification Book: Chapter 6. How can we check the model? The model is a graph. The specification should refer the the graph representation.
Advertisements

Abbas Edalat Imperial College London Contains joint work with Andre Lieutier (AL) and joint work with Marko Krznaric (MK) Data Types.
CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
1 Model checking. 2 And now... the system How do we model a reactive system with an automaton ? It is convenient to model systems with Transition systems.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
Distributed Markov Chains P S Thiagarajan School of Computing, National University of Singapore Joint work with Madhavan Mukund, Sumit K Jha and Ratul.
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?
Kick-off Meeting, July 28, 2008 ONR MURI: NexGeNetSci Distributed Coordination, Consensus, and Coverage in Networked Dynamic Systems Ali Jadbabaie Electrical.
Timed Automata.
Deterministic Negotiations: Concurrency for Free Javier Esparza Technische Universität München Joint work with Jörg Desel and Philipp Hoffmann.
Engineering Mathematics Class #15 Fourier Series, Integrals, and Transforms (Part 3) Sheng-Fang Huang.
CS 267: Automated Verification Lecture 10: Nested Depth First Search, Counter- Example Generation Revisited, Bit-State Hashing, On-The-Fly Model Checking.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
An Automata-based Approach to Testing Properties in Event Traces H. Hallal, S. Boroday, A. Ulrich, A. Petrenko Sophia Antipolis, France, May 2003.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
1 Formal Models for Stability Analysis : Verifying Average Dwell Time * Sayan Mitra MIT,CSAIL Research Qualifying Exam 20 th December.
Symbolic dynamics of Markov chains P S Thiagarajan School of Computing National University of Singapore Joint work with: Manindra Agrawal, S Akshay, Blaise.
Discrete Abstractions of Hybrid Systems Rajeev Alur, Thomas A. Henzinger, Gerardo Lafferriere and George J. Pappas.
Ordering and Consistent Cuts Presented By Biswanath Panda.
Games, Times, and Probabilities: Value Iteration in Verification and Control Krishnendu Chatterjee Tom Henzinger.
1 Carnegie Mellon UniversitySPINFlavio Lerda SPIN An explicit state model checker.
Validating Streaming XML Documents Luc Segoufin & Victor Vianu Presented by Harel Paz.
Approximate Abstraction for Verification of Continuous and Hybrid Systems Antoine Girard Guest lecture ESE601: Hybrid Systems 03/22/2006
Interfaces for Control Components Rajeev Alur University of Pennsylvania Joint work with Gera Weiss (and many others)
Beyond HyTech Presented by: Ben Horowitz and Rupak Majumdar Joint work with Tom Henzinger and Howard Wong-Toi.
Abstract Verification is traditionally done by determining the truth of a temporal formula (the specification) with respect to a timed transition system.
Numerical Methods for Partial Differential Equations CAAM 452 Spring 2005 Lecture 9 Instructor: Tim Warburton.
Approximation Metrics for Discrete and Continuous Systems Antoine Girard and George J. Pappas VERIMAG Workshop.
Timed UML State Machines Ognyana Hristova Tutor: Priv.-Doz. Dr. Thomas Noll June, 2007.
Abbas Edalat Imperial College London joint work with Marko Krznaric and Andre Lieutier Domain-theoretic Solution of Differential Equations.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Radu Grosu SUNY at Stony Brook Finite Automata as Linear Systems Observability, Reachability and More.
Synthesis for Concurrent Models Anca Muscholl LIAFA, Univ. Paris 7 Dagstuhl, June 2005 joint work with Blaise Genest (Warwick, UK)
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Parallel Computer Architecture and Interconnect 1b.1.
1 Automatic Refinement and Vacuity Detection for Symbolic Trajectory Evaluation Orna Grumberg Technion Haifa, Israel Joint work with Rachel Tzoref.
Streaming Algorithms Piotr Indyk MIT. Data Streams A data stream is a sequence of data that is too large to be stored in available memory Examples: –Network.
Consensus and Its Impossibility in Asynchronous Systems.
1 Interacting Process Classes P.S. Thiagarajan National University of Singapore Joint with: Ankit Goel, Abhik Roychoudhury, Sun Meng To be presented at.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February 10, 2005 Session 9.
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.
1 Black-box conformance testing for real-time systems Stavros Tripakis VERIMAG Joint work with Moez Krichen.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Control Synthesis and Reconfiguration for Hybrid Systems October 2001 Sherif Abdelwahed ISIS Vanderbilt University.
Towards Interoperability Test Generation of Time Dependent Protocols: a Case Study Zhiliang Wang, Jianping Wu, Xia Yin Department of Computer Science Tsinghua.
Lecture #2 How to describe a hybrid system? Formal models for hybrid system João P. Hespanha University of California at Santa Barbara Hybrid Control and.
Impossibility of Distributed Consensus with One Faulty Process By, Michael J.Fischer Nancy A. Lynch Michael S.Paterson.
Global Clock Synchronization in Sensor Networks Qun Li, Member, IEEE, and Daniela Rus, Member, IEEE IEEE Transactions on Computers 2006 Chien-Ku Lai.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Superstabilizing Protocols for Dynamic Distributed Systems Authors: Shlomi Dolev, Ted Herman Presented by: Vikas Motwani CSE 291: Wireless Sensor Networks.
Relational String Verification Using Multi-track Automata.
COMMUNICATING VIA FIREFLIES: GEOGRAPHIC ROUTING ON DUTY-CYCLED SENSORS S. NATH, P. B. GIBBONS IPSN 2007.
Distributed cooperation and coordination using the Max-Sum algorithm
ECE/CS 584: Verification of Embedded Computing Systems Timed to Hybrid Automata Sayan Mitra (edited by Yu Wang) Lecture 10.
Zijian Wang, Eyuphan Bulut, and Boleslaw K. Szymanski Center for Pervasive Computing and Networking and Department of Computer Science Rensselaer Polytechnic.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Autonomous units and their semantics – the parallel case
Stochastic Streams: Sample Complexity vs. Space Complexity
Automatic Verification
Lecture 18: Uniformity Testing Monotonicity Testing
Turnstile Streaming Algorithms Might as Well Be Linear Sketches
CSEP590 – Model Checking and Automated Verification
ECE/CS 584: Verification of Embedded Computing Systems
Discrete Controller Synthesis
An explicit state model checker
Presentation transcript:

Succinct Approximations of Distributed Hybrid Behaviors P.S. Thiagarajan School of Computing, National University of Singapore Joint Work with: Yang Shaofa IIST, UNU, Macau (To be presented at HSCC 2010)

Hybrid Automata Hybrid behaviors: Mode-specific continuous dynamics + discrete mode changes Standard model: Hybrid Automata Piecewise constant rates Rectangular guards

3 AA BB DD CC {x 1, x 2, x 3 } A B D C  B (x1, x2, x3) = (2, -3.5, 1) dx 1 /dt = 2 x 1 (t) = 2t + x 1 (0) dx 2 /dt = -3.5 dx 3 /dt = 1 Piecewise Constant Rates g

4 AA BB DD CC x  c | x  c |    ’ g x2x2 x1x1 Rectangular Guards

5 AA BB DD CC (x 1  2  x 1  1)  (x 2  3.5  x 2  0.5) g x2x2 x1x1 Initial Regions

Highly Expressive Piecewise constant rates; rectangular guards The control state (mode) reachability problem is undecidable.  Given q f, Whether there exists a trajectory (q 0, x 0 ) (q 1, x 1 ) ……. (q m, x m ) such that q m = q f  q 0 = initial mode; x 0 in initial region.  HKPV’95

7 (q 0, x 0 ) (q 1, x 1 ) g  (q 0 ) (q 2, x 2 ) (q 3, x 3 ) (q 4, x 4 )

Two main ways to circumvent undecidability If its rate changes as the result of a mode change,  Reset the value of a variable to a pre- determined region

9 Hybrid Automata with resets. dx/dt = 3 dx/dt = -1.5 x  5 x  2.8 VF VD 5 2.8

10 Hybrid Automata with resets. dx/dt = 3 dx/dt = -1.5 x  5 x  2.8 VF VD x  [2, 4]

11 Control Applications PLANT Digital Controller Sensors actuators The reset assumption is untenable.

12 PLANT Digital Controller Sensors actuators [HK’97]: Discrete time assumption. The plant state is observed only at (periodic) discrete time points T 0 T 1 T 2 ….. T i+1 – T i = 

13 Discrete time behaviors The discrete time behavior of a hybrid automaton:  Q : The set of modes  q 0 q 1 …q m is a state sequence iff there exists a run (q 0, v 0, ) (q 1, v 1 ) … (q m, v m ) of the automaton.  The discrete time behavior of Aut is L(Aut)  Q* the set of state sequences of Aut.

[HK’97]:  The discrete time behavior of (piecewise constant + rectangular guards) an hybrid automaton is regular.  A finite state automaton representing this language can be effectively constructed. Discrete time behavior is an approximation. With fast enough sampling, it is a good approximation.

[AT’04]: The discrete time behavior of an hybrid automaton is regular even with delays in sensing and actuating (laziness)

16 g gg g +  g k-1 k The value of x i reported at t = k is the value at some t’ in [(k-1)+ g, (k-1)+g +  g ] g and  g are fixed rationals

17 h h +  h hh k+1k If a mode change takes place at t = k is then x i starts evolving at  ’(x i ) at some t’ in [k+ h, k+h +  h ] h and  h are fixed rationals.

18 Global Hybrid Automata PLANT Digital Controller Sensors Actuators ? x1 ? x2 ? x3  (x1)   (x2)   (x3) 

19 PLANT Sensors Actuators ? x1 ? x2 ? x3  (x1)   (x2)   (x3)  p 1 p 2 p 3 Distributed Hybrid Automata

No explicit communication between the automata.. However, coordination through the shared memory of the plant’s state space.

The Communictaion graph of DHA Obs(p) --- The set of variables observed by p Ctl(p) --- The set of variables controlled by p Ctl(p)  Ctl(q) =  Nbr(p) = Obs(p)  Ctl(p)

22 [(s 0 1, v 0 1 ), (s 0 2, v 0 2 ), (s 0 3, v 0 3 )] [  (s 0 1 ),  (s 0 2 ),  (s 0 3 )]

23 [(s 0 1, v 0 1 ), (s 0 2, v 0 2 ), (s 0 3, v 0 3 )] [(s 1 1, v 1 1 ), (s 1 2, v 1 2 ), (s 1 3, v 1 3 )] [(s 2 1, v 2 1 ), (s 2 2, v 2 2 ), (s 2 3, v 2 3 )] [  (s 0 1 ),  (s 0 2 ),  (s 0 3 )]

24 [(s 0 1, v 0 1 ), (s 0 2, v 0 2 ), (s 0 3, v 0 3 )] [(s 1 1, v 1 1 ), (s 1 2, v 1 2 ), (s 1 3, v 1 3 )] [(s 2 1, v 2 1 ), (s 2 2, v 2 2 ), (s 2 3, v 2 3 )] [  (s 0 1 ),  (s 0 2 ),  (s 0 3 )] [(s 3 1, v 3 1 ), (s 3 2, v 3 2 ), (s 3 3, v 3 3 )]

25 [(s 0 1, v 0 1 ), (s 0 2, v 0 2 ), (s 0 3, v 0 3 )] [(s 1 1, v 1 1 ), (s 1 2, v 1 2 ), (s 1 3, v 1 3 )] [(s 2 1, v 2 1 ), (s 2 2, v 2 2 ), (s 2 3, v 2 3 )] [  (s 0 1 ),  (s 0 2 ),  (s 0 3 )] [(s 4 1, v 4 1 ), (s 4 2, v 4 2 ), (s 4 3, v 4 3 )] [(s 3 1, v 3 1 ), (s 3 2, v 3 2 ), (s 3 3, v 3 3 )]

26 Discrete time behavior: (Global) state sequences [s 0 1, s 0 2, s 0 3 ] [s 1 1,s 1 2,s 1 3 ] [s 2 1, s 2 2, s 2 3 ] [s 3 1, s 3 2, s 3 3 ]....

27 Discrete time behaviors The discrete time behavior of DHA is L(DHA)  (S p1  S p2  …..  S pn )* the set of global state sequences of DHA. L(DHA) is regular?

28 Discrete time behaviors The discrete time behavior of DHA is L(DHA)  (S p1  S p2  …..  S pn )* the set of global state sequences of DHA. L(DHA) is regular? Yes. Construct the (syntactic product) AUT of DHA. AUT will have piecewise constant rates and rectangular guards. Hence…..

Network of HAs Global HA m ---- the number of component automata in DHA The size of DHA will be linear in m The size of AUT will be exponential in m. Can we do better? Global FSA Syntactic product Discretization

Global FSA Syntactic Product Discretization Local discretization Network of FSAs Product Network of HAs Global HA

Global FSA Local discretization Network of FSAs Network of HAs

Location node Variable node For each node, construct an FSA Each FSA will “read” from all its neighbor FSAs to make its moves. Nbr(p) = Ctl(p)  Obs(p) Nbr(x) = {p | x  Ctl(p)  Obs(p) }

Aut x Aut x will keep track of the current value of x CTL(x) = p if x  Ctl(p) A move of Aut x :  read the current rate of x from Aut CTL(x) and update the current value of x Can only keep bounded information Quotient the value space of x

Quotienting the value space of x v min v max

Quotienting the value space of x INIT x

Quotienting the value space of x cc’ c, c’,.,.., the constants that appear in some guard

Quotienting the value space of x ,  ’ ….. rates of x associated with modes in AUT CTL(x) |||||  ’| Find the largest positive rational that evenly divides all these rationals. Use it to divide [v min, v max] into uniform intervals

Quotienting the value space of x

Quotionting the value space of x ) ( ( ) A move of Aut x : If Aut x is in state I and CTL(x) = p and Aut p ’s state is  then Aut x moves from I to I’ =  (I)

) ( ( ) I’ =  1 (I) I (s 1,  1 ) I’ Aut(x 1 ) (s 2,  2 ) )( I I’

I1 (s 2,  2 ) I3 (s’ 2,  ’ 2 ) g (s 2,  2 ) (s’ 2,  ’ 2 ) (v1, v3) satisfies g for some (v1, v3) in I1  I3 I2 Aut (p 2 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 ) Each automaton will have a parity bit. This bit flips every time the automaton makes a move. Initially all the parities are 0. A variable node automaton makes a move only when its parity is the same as all its neighbors’ A location node automaton makes a move only when its parity is different from all its neighbors.

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 )

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 ) The automata can ‘drift” in time steps.

Aut(x 1 ) Aut(p 3 ) Aut(x 3 )Aut(x 2 ) Aut(p 2 ) Aut(p 1 ) Aut The asynchronous product of { Aut(x 1 ), Aut(p 1 ), Aut(x 2 ), Aut(p 2 ), Aut(x 3 ), Aut(p 3 ) } Each global state of Aut will induce a global state of DHA. [(I1, (s1,  1), I2, (s2,  2), I3, (s3,  3)] [s1, s2, s3] In fact, each complete state sequence of Aut will induce a global state sequence of DHA. f

[s10, s20, s30] [ --, s21, -- ][ --, s22, -- ] [ --, s23, -- ] A state sequence  of Aut is complete iff all the FSA make an equal number of moves along .

[s10, s20, s30] [s11, --, --] [s12, --, --] [s13, --, --]

[s10, s20, s30] [---, ---, s31] [---, ---, s32]

[s10, s20, s30] [ --, s21, -- ][ --, s22, -- ] [ --, s23, -- ] [s11, --, --] [s12, --, --] [s13, --, --] [---, ---, s31] [---, ---, s32] [s10, s20, s30] [s11, s21, s31] [s12, s22, s32] [s13, s23, s33]

The main results Suppose  is a complete state sequence of Aut. Then f(  ) is a global state sequence of DHA. If  is global state sequence of DHA then there exists a complete sequence  of Aut such that f(  ) = . In the absence of deadlocks, every state sequence of Aut can be extended to a complete state sequence.

Extensions Laziness Delays in communictions between the plant and controllers. Different granularities of time for the controllers …….

The marked graph connection Can be used to derive partial order reduction verification algorithms.

61 PLANT Sensors ? x1 ? x2 ? x3  (x1)   (x2)   (x3)  p 1 p 2 p 3 Communicating hybrid automata: Synchronize on common actions; message passing; shared memory …

p 1 p 2 p 3 Time-triggered protocol; Each controller is implemented on an ECU Study interplay between plant dynamics and the performance of the computational platform Plant

Summary The discrete time behavior of distributed hybrid automata can be succinctly represented.  as a network of FSA (communicating as in asynchronous cellular automata).  many extensions possible.  Finite precision assumption can yield stronger results.