Hybrid Control of a Mobile Robot

Download Report

Transcript Hybrid Control of a Mobile Robot

Hybrid Systems
a lecture over:
Tom Henzinger’s
The Theory of Hybrid Automata
Anders P. Ravn
Aalborg University
PhD-reading course November 2005
Hybrid System
A dynamical system with a non-trivial interaction of
discrete and continuous dynamics
• autonomous
switches
jumps
•controlled
switches
jump
between manifolds
(Branicky)
Hybrid Automaton - Syntax
X = {x1, … xn} - 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  

x’ = x-1

Labelled Transition Systems
Q – states, e.g. (v=”Off”,x = 17.5)
Q0 – initial states, Q0  Q
A – labels
 – ransition relation, A  QQ
a
a
posta(R) = { q’ | q  R and q 
q’}
a
prea(R) = { q | q’  R and q 
q’}
Transition Semantics of HA
X = {x1, … xn} - 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  

x’ = x-1

Q - states – {(v,x) | v  V and inv(v)[X := x]}
Q0 – 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]}
{ (v,x) –  (v,x’) |   R0 and f: (0,)  Rn s.t. f is diff. and
f(0) = x and f() =. x’ and
.
flow(v)[X := f(t), X:= f(t)], t  (0,) }
Time Abstract Semantics of HA
X = {x1, … xn} - 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  

x’ = x-1

Q - states – {(v,x) | v  V and inv(v)[X := x]}
Q0 – 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,)  Rn s.t. f is diff. and
f(0) = x and f() =. x’ and
.
flow(v)[X := f(t), X:= f(t)], t  (0,)}
Trace Semantics
Q - states, {(v,x) | v  V and inv(v)[X := x]}
Q0 – initial states, …
A - labels, …
a
 - transition relation, A  QQ
Trajectory:  = <(a0,q0)…(ai,qi)…>
where q0  Q0 and qi–aiqi+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
Composition of Transition Systems
Q - states
Q0 – initial states, …
A - labels, …
a
 - transition relation, A  QQ
S = S1 || S2
with
 : A1  A2  A
Q = Q1 Q2
Q0 = Q10  Q20
(q1,q2) –a (q1’,q2’) iff
(qi –ai qi’, i=1,2 and
a = a1a2
Remark p 7
Verification Tasks
• Reachability of (v,x)
– finitary, time-abstract trace inclusion
• Emptiness
– time-abstract trace inclusion
• Trace (finitary) inclusion
• Time-abstract (finitary) trace inclusion
Classes of Hybrid Automata
X = {x1, … xn} - 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  

x’ = x-1

.
• Rectangular init, inv, flow (x  Iflow),
jump (x = x,y I, x’ I’ ,y’=y)
•Singular – rectangular with Iflow a point
• Timed – singular with Iflow = [1,1]n
• Multirectangular …
•Triangular …
• Stopwatch …
Verification results pp. 11-12
Symbolic Analysis
•
•
•
•
Q - states
Q0 – initial states, …
A - labels, …
a - transition relation, A  QQ

Theory: T = {p1, … pn … }, p is a predicate, e.g. pred(X  V)
Meaning of p: [p]  Q
q1  q2
iff
p(q1) = r(q2)
for all p, r  T
Symbolic Bisimilarity Computation
prea
R’
R
Mu-calculus
// fixpoint computation
CTL
Further Work
• Check the theorems and remarks
• Experiment with tools
• Investigate links with equivalences
generated by Rafael’s homotopy (di-paths)
• Compositionality, remarks on p. 7, 10, 17 –
compositional model checking, abstractionrefinement
• Build your own HA Application