Succinct Approximations of Distributed Hybrid Behaviors P.S. - - PowerPoint PPT Presentation

succinct approximations of distributed hybrid behaviors
SMART_READER_LITE
LIVE PREVIEW

Succinct Approximations of Distributed Hybrid Behaviors P.S. - - PowerPoint PPT Presentation

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:


slide-1
SLIDE 1

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)

slide-2
SLIDE 2

Hybrid Automata

Hybrid behaviors: Mode-specific continuous dynamics +

discrete mode changes

Standard model: Hybrid Automata

  • Piecewise constant rates
  • Rectangular guards
slide-3
SLIDE 3

3

ρA ρB ρD ρC {x1, x2, x3}

A B D C

ρB (x1, x2, x3) = (2, -3.5, 1) dx1/dt = 2 x1(t) = 2t + x1(0) dx2/dt = -3.5 dx3/dt = 1

Piecewise Constant Rates

g

slide-4
SLIDE 4

4

ρA ρB ρD ρC x ≤ c | x ≥ c | ϕ ∧ ϕ’ g x2 x1

Rectangular Guards

slide-5
SLIDE 5

5

ρA ρB ρD ρC (x1 ≤ 2 ∧ x1 ≥ 1) ∧ (x2 ≤ 3.5 ∧ x2 ≥ 0.5) g x2 x1

Initial Regions

slide-6
SLIDE 6

Highly Expressive

Piecewise constant rates; rectangular guards The control state (mode) reachability

problem is undecidable.

Given qf, Whether there exists a trajectory

(q0, x0) (q1, x1) ……. (qm, xm) such that qm = qf

q0 = initial mode; x0 in initial region.

HKPV’95

slide-7
SLIDE 7

7

(q0, x0) (q1, x1) g ρ(q0) (q2, x2) (q3, x3) (q4, x4)

slide-8
SLIDE 8

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

slide-9
SLIDE 9

9

Hybrid Automata with resets.

dx/dt = 3 dx/dt = -1.5 x > 5 x < 2.8

VF VD

5 2.8

slide-10
SLIDE 10

10

Hybrid Automata with resets.

dx/dt = 3 dx/dt = -1.5 x > 5 x < 2.8

VF VD

5 2.8

x ← [2, 4]

slide-11
SLIDE 11

11

Control Applications

PLANT Digital Controller

Sensors actuators

The reset assumption is untenable.

slide-12
SLIDE 12

12

PLANT Digital Controller

Sensors actuators

[HK’97]: Discrete time assumption. The plant state is observed only at (periodic) discrete time points T0 T1 T2 ….. T i+1 – Ti = Δ

slide-13
SLIDE 13

13

Discrete time behaviors

The discrete time behavior of a hybrid

automaton:

Q : The set of modes q0 q1 …qm is a state sequence iff there exists

a run (q0, v0, ) (q1, v1) … (qm, vm) of the automaton.

The discrete time behavior of Aut is

L(Aut) ⊆ Q* the set of state sequences of Aut.

slide-14
SLIDE 14

[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.

slide-15
SLIDE 15

[AT’04]: The discrete time behavior of an

hybrid automaton is regular even with delays in sensing and actuating (laziness)

slide-16
SLIDE 16

16

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

slide-17
SLIDE 17

17

h h + δh δh k+1 k

If a mode change takes place at t = k is then xi starts evolving at ρ’(xi) at some t’ in [k+ h, k+h + δh] h and δh are fixed rationals.

slide-18
SLIDE 18

18

Global Hybrid Automata

PLANT Digital Controller

Sensors Actuators

? x1 ? x2 ? x3 ρ(x1) ! ρ(x2) ! ρ(x3) !

slide-19
SLIDE 19

19

PLANT

Sensors Actuators

? x1 ? x2 ? x3 ρ(x1) ! ρ(x2) ! ρ(x3) ! p1 p2 p3

Distributed Hybrid Automata

slide-20
SLIDE 20

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

slide-21
SLIDE 21

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)

slide-22
SLIDE 22

22

[(s0

1, v0 1), (s0 2, v0 2), (s0 3, v0 3)]

[ρ(s0

1), ρ(s0 2), ρ(s0 3)]

slide-23
SLIDE 23

23

[(s0

1, v0 1), (s0 2, v0 2), (s0 3, v0 3)]

[(s1

1, v1 1), (s1 2, v1 2), (s1 3, v1 3)]

[(s2

1, v2 1), (s2 2, v2 2), (s2 3, v2 3)]

[ρ(s0

1), ρ(s0 2), ρ(s0 3)]

slide-24
SLIDE 24

24

[(s0

1, v0 1), (s0 2, v0 2), (s0 3, v0 3)]

[(s1

1, v1 1), (s1 2, v1 2), (s1 3, v1 3)]

[(s2

1, v2 1), (s2 2, v2 2), (s2 3, v2 3)]

[ρ(s0

1), ρ(s0 2), ρ(s0 3)]

[(s3

1, v3 1), (s3 2, v3 2), (s3 3, v3 3)]

slide-25
SLIDE 25

25

[(s0

1, v0 1), (s0 2, v0 2), (s0 3, v0 3)]

[(s1

1, v1 1), (s1 2, v1 2), (s1 3, v1 3)]

[(s2

1, v2 1), (s2 2, v2 2), (s2 3, v2 3)]

[ρ(s0

1), ρ(s0 2), ρ(s0 3)]

[(s4

1, v4 1), (s4 2, v4 2), (s4 3, v4 3)]

[(s3

1, v3 1), (s3 2, v3 2), (s3 3, v3 3)]

slide-26
SLIDE 26

26

Discrete time behavior: (Global) state sequences [s0

1, s0 2, s0 3] [s1 1,s1 2,s1 3] [s2 1, s2 2, s2 3] [s3 1, s3 2, s3 3] . . . .

slide-27
SLIDE 27

27

Discrete time behaviors

The discrete time behavior of DHA is

L(DHA) ⊆ (Sp1 × Sp2 × …..× Spn)* the set of global state sequences of DHA.

L(DHA) is regular?

slide-28
SLIDE 28

28

Discrete time behaviors

The discrete time behavior of DHA is

L(DHA) ⊆ (Sp1 × Sp2 × …..× Spn)* the set of global state sequences of DHA.

L(DHA) is regular?

  • Yes. Construct the (syntactic product) AUT
  • f DHA.

AUT will have piecewise constant rates

and rectangular guards. Hence…..

slide-29
SLIDE 29

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

slide-30
SLIDE 30

Global FSA

Syntactic Product Discretization Local discretization

Network of FSAs

Product

Network of HAs

Global HA

slide-31
SLIDE 31

Global FSA

Local discretization

Network of FSAs

Network of HAs

slide-32
SLIDE 32

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) }

slide-33
SLIDE 33

Autx

Autx will keep track of the current value of

x

CTL(x) = p if x ∈ Ctl(p) A move of Autx:

read the current rate of x from AutCTL(x) and

update the current value of x

Can only keep bounded information Quotient the value space of x

slide-34
SLIDE 34

Quotienting the value space of x

vmin vmax

slide-35
SLIDE 35

Quotienting the value space of x

INITx

slide-36
SLIDE 36

Quotienting the value space of x

c c’

c, c’ , ., . ., the constants that appear in some guard

slide-37
SLIDE 37

Quotienting the value space of x

ρ, ρ’ ….. rates of x associated with modes in AUTCTL(x)

|ρ| |ρ’|

Find the largest positive rational that evenly divides all these rationals . Use it to divide [vmin, vmax] into uniform intervals

slide-38
SLIDE 38

Quotienting the value space of x

slide-39
SLIDE 39

Quotionting the value space of x ) (

(

)

A move of Autx: If Autx is in state I and CTL(x) = p and Autp’s state is ρ then Autx moves from I to I’ = ρ(I)

slide-40
SLIDE 40

) (

(

)

I’ = ρ1(I)

I (s1, ρ1) I’

Aut(x1)

(s2, ρ2)

) (

I I’

slide-41
SLIDE 41

I1 (s2, ρ2) I3 (s’2, ρ’2) g (s2, ρ2) (s’2, ρ’2)

(v1, v3) satisfies g for some (v1, v3) in I1 × I3

I2

Aut (p2 )

slide-42
SLIDE 42

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1) 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.

slide-43
SLIDE 43

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-44
SLIDE 44

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-45
SLIDE 45

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-46
SLIDE 46

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-47
SLIDE 47

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-48
SLIDE 48

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-49
SLIDE 49

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-50
SLIDE 50

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-51
SLIDE 51

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1)

slide-52
SLIDE 52

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1) The automata can ‘drift” in time steps.

slide-53
SLIDE 53

Aut(x1) Aut(p3) Aut(x3) Aut(x2) Aut(p2) Aut(p1) Aut ------ The asynchronous product of { Aut(x1), Aut(p1), Aut(x2), Aut(p2), Aut(x3), Aut(p3) } 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

slide-54
SLIDE 54

s10, s20, s30] [ -- , s21, -- ] [ -- , s22, -- ] [ -- , s23, -- ]

A state sequence τ of Aut is complete iff all the FSA make an equal number of moves along τ.

slide-55
SLIDE 55

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

slide-56
SLIDE 56

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

slide-57
SLIDE 57

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

slide-58
SLIDE 58

The main results

Suppose τ is a complete state sequence of

  • Aut. Then f(τ) is a global state sequence
  • f 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.

slide-59
SLIDE 59

Extensions

Laziness Delays in communictions between the

plant and controllers.

Different granularities of time for the

controllers

…….

slide-60
SLIDE 60

The marked graph connection

Can be used to derive partial order reduction verification algorithms.

slide-61
SLIDE 61

61

PLANT

Sensors

? x1 ? x2 ? x3 ρ(x1) ! ρ(x2) ! ρ(x3) ! p1 p2 p3

Communicating hybrid automata: Synchronize on common actions; message passing; shared memory …

slide-62
SLIDE 62

p1 p2 p3 Time-triggered protocol; Each controller is implemented on an ECU Study interplay between plant dynamics and the performance of the computational platform

Plant

slide-63
SLIDE 63

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.