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 QQ
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 - R0
{ (v,x) – (v’,x’) | e E(v,v’) and
event(e) = and jump(e) [X := x]}
{ (v,x) – (v,x’) | R0 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’) | R0 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 QQ
Trajectory: = <(a0,q0)…(ai,qi)…>
where q0 Q0 and qi–aiqi+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 QQ
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 = a1a2
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 QQ
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