MILP-basierte Optimalsteuerung kooperativer Multi-Vehikel

Transcription

MILP-basierte Optimalsteuerung kooperativer Multi-Vehikel
MILP-basierte Optimalsteuerung kooperativer
Multi-Vehikel-Systeme
GMA-Fachausschuss 1.40
„Theoretische Verfahren der Regelungstechnik“
Salzburg, 22.09.2009
y
111
000
000
111
?
x
.
?
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 1
Examples of cooperative multi-robots / multivehicle systems
cooperative fire surveillance
mobile assistance in wireless
sensor networks
source: www.aware-project.net
cooperative robot games
source: www.robocup.org
warehouse automation
www.kivasystems.com
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 2
Cooperating mobile robots / vehicles:
discrete decisions and trajectory planning
Robot team competition:
Tight coupling of
I
robots’ motion dynamics and
I
role distribution,
I
task assignment.
source: www.robocup.org
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 3
Cooperating mobile robots / vehicles:
discrete decisions and trajectory planning
Robot team competition:
Tight coupling of
I
robots’ motion dynamics and
I
role distribution,
I
task assignment.
source: www.robocup.org
Monitoring with unmanned aerial vehicles:
Tight coupling of
I
vehicle specific dynamics and
I
target assignment,
I
waypoint sequencing.
source: www.comets-uavs.org
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 3
Current research topics
I
appropriate modeling of the multi-vehicle system
I
model reduction and abstraction
I
system analysis and optimization
I
planing and control methods for cooperative
multi-vehicle-systems
I
application to heterogeneous hardware and various
scenarios
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 4
Current research topics
I
appropriate modeling of the multi-vehicle system
I
model reduction and abstraction
I
system analysis and optimization
I
planing and control methods for cooperative
multi-vehicle-systems
I
application to heterogeneous hardware and various
scenarios
⇒ optimal control of cooperation
⇒ consistent bridging of the gap between ”exact“ methods
and heuristic approaches
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 4
Modeling Cooperative Multi-Vehicle Systems
MILP-based Optimal Control of Cooperating Multi-Vehicle Systems
Towards On-line MPC
Summary and Outlook
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 5
Problem formulation
single vehicle i:
I
locomotion
ẋi = fiqi (xi (t), ui (t))
I
constraints
giqi (xi (t), ui (t)) ≤ 0
I
allowable sequences of tasks/roles:
r i (bqi i (ts − 0), bqi i (ts + 0)) ≤ 0
bqi i (t) ∈ {0, 1}, qi ∈ {1, ..., Li }
ts ∈ {tk |k = 1, ..., ns }: switching time
v
x
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 6
Problem formulation
cooperative system (i1 , i2 ∈ {1, ..., nv }):
single vehicle i:
I
locomotion
ẋi = fiqi (xi (t), ui (t))
I
collision avoidance
gcoll (xi1 (t), xi2 (t)) ≤ 0
I
constraints
giqi (xi (t), ui (t)) ≤ 0
I
I
allowable sequences of tasks/roles:
underlying geometrical structure
binary variables: bq (t) ∈ {0, 1}
mixed constraints
[bq (t) = 1 ⇒ Cq (xi1 (t), xi2 (t)) ≤ 0]
I
optimal cooperation
Φ(x(t), u(t), b(t)) → min
r i (bqi i (ts − 0), bqi i (ts + 0)) ≤ 0
bqi i (t) ∈ {0, 1}, qi ∈ {1, ..., Li }
ts ∈ {tk |k = 1, ..., ns }: switching time
v
x
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 6
Hybrid automata
H = (V , E , X, U, ini, f, j, i, e)
I Basic components
[Henzinger, 2000]:
finite directed multigraph with
knots in V (states) and edges in E (switches)
X:
set of continuous state variables
U:
set of continuous control variables
ini:
map which assigns an initial condition to each edge
i:
assigns feasible region of state variables to each knot
(inequality, equality constraints)
f:
flow equation or state dynamics for each state
j:
jump conditions at edges
e:
events at edges that occurring at switching times
I Advantages and extensions:
(V , E ):
I
I
I
formal semantics
Extension by hierarchies
Extension by concurrency
abstraction on different levels
modeling of multiple vehicles
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 7
Hybrid Automaton: resulting trajectories
(q1 , q1 ) ∈ E
(q2 , q1 ) ∈ E
q1
q2
f: ẋ = fq2 (x, u, t)
i: gq2 (x, u, t) ≤ 0
f: ẋ = fq1 (x, u, t)
i: gq1 (x, u, t) ≤ 0
(q1 , q2 ) ∈ E
jump conditions and events
x(t)
flow
condition
final condition
x(tf )
ẋ = fq1 ()
ẋ = fqns −1 ()
initial x(t0 )
condition
ẋ = fqns ()
t
t0
ts,1
ts,2
ts,ns −2
switching times
I
rules defining feasible sequences of switches
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 8
ts,ns −1 tf
Example 1: robot soccer
y
111
000
000
111
x
I
two controllable attackers (discrete tasks)
I
one indirect controllable ball (switched
motion dynamics)
I
one reactive defender
⇒ dynamically changing environment
Open issues:
I optimize attackers chances for a considered time horizon
I simultaneous task allocation and trajectory planning
⇒ long term goal: model predictive control
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 9
Example 1: basic hybrid automaton
Game is running
Player 1 dribbles ball
i: dist1,B ≤ εdribble
j: dist1,B ≤ εdribble
e: catch(1)
e: kick(1)
Ball free
j: |xB | ≥ xfield
j: |yB | ≤ ygoal
e: goal
Ball in goal
.
Player 2 dribbles ball
i: dist1,B > εdribble
i: dist2,B > εdribble
e: kick(2)
i: dist2,B ≤ εdribble
i: dist1,D ≥ γ1,D
i: dist2,D ≥ γ2,D
.
j: dist2,B ≤ εdribble
e: catch(2)
i: dist1,2 ≥ γ1,2
i: distD,B ≥ γD,B
i: xB ∈ field
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 10
i: xB ∈ goal
Example 1: basic hybrid automaton
Game is running
Player 1 dribbles ball
f: ẍ1 = f1,B (x1 , ẋ1 , u1 )
f: ẍ2 = f2 (x2 , ẋ2 , u2 )
f: ẍB = f1,B (x1 , ẋ1 , u1 )
i: dist1,B ≤ εdribble
i: g1,B (ẋ1 , u1 ) ≤ 0
i: g2 (ẋ2 , u2 ) ≤ 0
.
Player 2 dribbles ball
f: ẍ1 = f1 (x1 , ẋ1 , u1 )
f: ẍ2 = f2,B (x2 , ẋ2 , u2 )
f: ẍB = f2,B (x2 , ẋ2 , u2 )
i: dist2,B ≤ εdribble
i: g1 (ẋ1 , u1 ) ≤ 0
i: g2,B (ẋ2 , u2 ) ≤ 0
f: ẋD = fD (x1 , x2 , xB )
i: dist1,D ≥ γ1,D
i: dist2,D ≥ γ2,D
j: dist1,B ≤ εdribble
e: catch(1)
e: kick(1)
Ball free
f: ẍ1 = f1 (x1 , ẋ1 , u1 )
f: ẍ2 = f2 (x2 , ẋ2 , u2 )
f: ẋB = fB (xb )
i: dist1,B > εdribble
i: dist2,B > εdribble
i: g1 (ẋ1 , u1 ) ≤ 0
i: g2 (ẋ2 , u2 ) ≤ 0
e: kick(2)
j: dist2,B ≤ εdribble
e: catch(2)
i: dist1,2 ≥ γ1,2
i: distD,B ≥ γD,B
i: xB ∈ field
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 10
j: |xB | ≥ xfield
j: |yB | ≤ ygoal
e: goal
Ball in goal
f:
f:
f:
f:
ẋ1 = 0
ẋ2 = 0
ẋB = 0
ẋD = 0
.
i: g1 (ẋ1 , u1 ) ≤ 0
i: g2 (ẋ2 , u2 ) ≤ 0
i: xB ∈ goal
Modeling Cooperative Multi-Vehicle Systems
MILP-based Optimal Control of Cooperating Multi-Vehicle Systems
Towards On-line MPC
Summary and Outlook
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 11
Control of multi-vehicle / multi-robot systems
non-linear hybrid optimal control:
[Glocker; Barton & Lee, Rantzer... ]
I transformation into finite
MINLP
I
needs initial guesses and bounds
I
maximum principle
I
disjunctive programming
[Sussmann ’99]
[Oldenburg & Marquardt ’06]
in practice:
I
heuristic approaches to cover all
expected situations
(e.g. state machines [RoboCup])
I
very task specific solutions
I
assumptions are just roughly inspired
by physics
high-dimensional mixed-integer NLP
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 12
no optimality
Control of multi-vehicle / multi-robot systems
in practice:
non-linear hybrid optimal control:
[Glocker; Barton & Lee, Rantzer... ]
I transformation into finite
MINLP
I
needs initial guesses and bounds
I
maximum principle
I
disjunctive programming
[Sussmann ’99]
I
heuristic approaches to cover all
expected situations
(e.g. state machines [RoboCup])
I
very task specific solutions
I
assumptions are just roughly inspired
by physics
[Oldenburg & Marquardt ’06]
high-dimensional mixed-integer NLP
m
MILP-based optimal control
no optimality
m
[How ’02, D’Andrea ’05; Bemporad, Stursberg, Engell ...]
I
physics-based approximation
I
numerical robustness and efficiency
of MILP-solvers
I
extension mpMILP for stable MPC
I
globally optimal without need of
guesses
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 12
From HOCP to MILP-based optimal control:
linearization and hybridization
minimize
Zts
ns
Φ=
L(x(t), u(t)) dt)
∑ (ϕs (x(ts ), u(ts ), ts ) +
s=1
ts−1
subject to (∀ i, j, q :)
(dynamics)
ẋi = fiq (xi (t), ui (t))
0 ≤ giq (xi (t), ui (t))
0 ≤ hiq (xi (t))
(mixed constr.)
bq,i,j (t) = 1 ⇒ Cq (xi (t), xj (t)) ≤ 0
ns nv
(logical constraints)
Lq ≤ ∑ ∑
∑ ±bi,q (ts )
q s=1 i=1
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 13
From HOCP to MILP-based optimal control:
linearization and hybridization
minimize
Φ=
minimize
Zts
ns
∑ ψk · (x(k), u(k))T
L(x(t), u(t)) dt)
∑ (ϕs (x(ts ), u(ts ), ts ) +
s=1
k
ts−1
subject to (∀ i, j, q, k :)
subject to (∀ i, j, q :)
(dynamics)
ẋi = fiq (xi (t), ui (t))
0 ≤ giq (xi (t), ui (t))
0 ≤ hiq (xi (t))
(mixed constr.)
bq,i,j (t) = 1 ⇒ Cq (xi (t), xj (t)) ≤ 0
ns nv
(logical constraints)
Lq ≤ ∑ ∑
∑ ±bi,q (ts )
q s=1 i=1
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 13
From HOCP to MILP-based optimal control:
linearization and hybridization
minimize
Φ=
minimize
Zts
ns
∑ ψk · (x(k), u(k))T
L(x(t), u(t)) dt)
∑ (ϕs (x(ts ), u(ts ), ts ) +
s=1
k
ts−1
subject to (∀ i, j, q, k :)
subject to (∀ i, j, q :)
(dynamics)
ẋi = fiq (xi (t), ui (t))
xi (k + 1) − xi (k) =∆t (Aiq xi (k) + Bqi ui (k))
Cig ,q ≤Gig ,q · (xi (k), ui (k))T
0 ≤ giq (xi (t), ui (t))
Cih,q ≤Gih,q · (xi (k))T
0 ≤ hiq (xi (t))
(mixed constr.)
bq,i,j (t) = 1 ⇒ Cq (xi (t), xj (t)) ≤ 0
ns nv
(logical constraints)
Lq ≤ ∑ ∑
∑ ±bi,q (ts )
q s=1 i=1
I linearized difference equation
I fixed sampling time ∆t
I polygonal approximation
I hybridization [e.g. Girard ’07]
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 13
From HOCP to MILP-based optimal control:
linearization and hybridization
minimize
Φ=
minimize
Zts
ns
∑ ψk · (x(k), u(k))T
L(x(t), u(t)) dt)
∑ (ϕs (x(ts ), u(ts ), ts ) +
s=1
k
ts−1
subject to (∀ i, j, q, k :)
subject to (∀ i, j, q :)
(dynamics)
ẋi = fiq (xi (t), ui (t))
xi (k + 1) − xi (k) =∆t (Aiq xi (k) + Bqi ui (k))
Cig ,q ≤Gig ,q · (xi (k), ui (k))T
0 ≤ giq (xi (t), ui (t))
0 ≤ hiq (xi (t))
(mixed constr.)
bq,i,j (t) = 1 ⇒ Cq (xi (t), xj (t)) ≤ 0
Cih,q ≤Gih,q · (xi (k))T
eq (xi (k), xj (k))T
bq,i,j (k) · M ≥C
ns nv
(logical constraints)
Lq ≤ ∑ ∑
∑ ±bi,q (ts )
q s=1 i=1
I big-M formulation
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 13
From HOCP to MILP-based optimal control:
linearization and hybridization
minimize
Φ=
minimize
Zts
ns
∑ ψk · (x(k), u(k))T
L(x(t), u(t)) dt)
∑ (ϕs (x(ts ), u(ts ), ts ) +
s=1
k
ts−1
subject to (∀ i, j, q, k :)
subject to (∀ i, j, q :)
(dynamics)
xi (k + 1) − xi (k) =∆t (Aiq xi (k) + Bqi ui (k))
ẋi = fiq (xi (t), ui (t))
Cig ,q ≤Gig ,q · (xi (k), ui (k))T
0 ≤ giq (xi (t), ui (t))
Cih,q ≤Gih,q · (xi (k))T
0 ≤ hiq (xi (t))
(mixed constr.)
bq,i,j (t) = 1 ⇒ Cq (xi (t), xj (t)) ≤ 0
eq (xi (k), xj (k))T
bq,i,j (k) · M ≥C
ns nv
(logical constraints)
Lq ≤ ∑ ∑
nk nv
eq ≤ ∑
L
∑ ±bi,q (ts )
q k=1 i=1
q s=1 i=1
non-linearity
∑ ∑ ±bi,q (k)
discrete structure
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 13
Objective function Φ(x(t), u(t), b(t))
y
(x2, y2)
For fixed [t0 , tf ] regarding
I
state variables x(k) (e.g. positions, distances),
I
incidence of discrete states b(k) (e.g. goal, ...),
I
control variables u(k) (e.g. energy input, acceleration).
(xB , yB )
11
00
00(x
11
(x1, y1)
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 14
x
D , yD )
Objective function Φ(x(t), u(t), b(t))
y
(x2, y2)
For fixed [t0 , tf ] regarding
(xB , yB )
I
state variables x(k) (e.g. positions, distances),
I
incidence of discrete states b(k) (e.g. goal, ...),
I
control variables u(k) (e.g. energy input, acceleration).
11
00
00(x
11
x
D , yD )
(x1, y1)
I
minimization of energy or “control efforts” for visiting
all waypoints
Z tf
min
?
0
.
?
ux (t)2 + uy (t)2 dt
min ∑k rk · ∆t
(lin. approx.)
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 14
(HOCP)
Numerical results: robot soccer
200
100
100
x(t)
yi(t)
optimal trajectories (x- and y-positions):
200
200
150
0
100
0
50
−100
0
2
4
time [s]
6
8
−100
0
2
4
time [s]
6
8
0
−50
respective optimal control:
40
20
20
−20
−20
ux(t)
0
uy(t)
40
−40
0
−100
−150
0
2
4
time [s]
6
8 −400
−200
−300
2
4
6
8
12 timesteps: 1135 var., 1692 constr.
I
linearized dynamics:
xk+1 = xk + ∆t vk ,
vk+1 = vk + ∆t uk
−100
0
100
200
300
solved with CPLEX in 9 sec.
I
computing time strongly
depends on initial setting
time [s]
I
−200
I
PC with Intel Pentium M processor (1.86 GHz); 1GB RAM
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 15
Example
vehicles
2:
Monitoring
?
with
cooperating
I
vehicle-specific motion dynamics (constraints on
maximum velocities, controls...)
I
certain areas have to be visited during the mission
Extensions:
.
?
I
structured environment,
obstacles
I
required connectivity
I
dense spatial distribution of
many overlapping areas
I
...
⇒ (non-linear) optimal control subject to motion dynamics and
heterogeneous, switched constraints
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 16
Numerical results: cooperative monitoring
optimal trajectories (x- and y-positions):
500
400
300
200
100
respective optimal control:
0
−100
−100
0
100
200
300
400
500
linearized dynamics:
xk+1 = xk + ∆t vk , vk+1 = vk + ∆t uk
I
I
simultaneous waypoint sequencing and
trajectory optimization
I
solved with CPLEX in 70.2 sec.
PC with Intel Pentium M processor (1.86 GHz); 1GB RAM
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 17
Modeling Cooperative Multi-Vehicle Systems
MILP-based Optimal Control of Cooperating Multi-Vehicle Systems
Towards On-line MPC
Summary and Outlook
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 18
Model predictive control for discrete time linear
systems
I
I
studied well for MLD and PWA systems [Bemporad, Morari, ...]
sophisticated implementation: Multi-Parametric Toolbox for Matlab [Kvasnica,
Grieder, Baotić; ETHZ]
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 19
Model predictive control for discrete time linear
systems
I
I
studied well for MLD and PWA systems [Bemporad, Morari, ...]
sophisticated implementation: Multi-Parametric Toolbox for Matlab [Kvasnica,
Grieder, Baotić; ETHZ]
Example 3: Observing multiple targets with cooperating vehicles:
I
multiple cooperating robots
I
multiple (moving) targets
I
a target is observed, if its position is within the
robots observation radius R
maximize amount and duration of observations
⇒ Discrete-valued optimal control problem
subject to motion dynamics and switched
constraints
I
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 19
Results:
MILP-model - MPC with online optimization
Example: 5 robots, 8 targets, 15 timesteps
300
300
200
200
T3
T3
T2
100
100
T1
T1
0
−100
T8
0
−100
T6
−300
−300
−200
T6
T4
−200
−100
0
x
−200
100
200
300
MILP
(k)
(k)
∑ ∑ |ur ,x | + |ur ,y | = 703.46
k
T5
T7
T8
y
y
T2
T5
T7
r
−300
−300
−200
−100
T4
0
x
100
200
300
model predictive control
(k)
(k)
∑ ∑ |ur ,x | + |ur ,y | = 744.02
k
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 20
r
Comparison
MILP-model - Online-MPC-controller
(thanks to J. Kuhn)
Example: 5 robots, 8 targets, 15 timesteps
solving MILP-model:
MPC with online optimization:1
I
full optimal control problem with
15 timesteps
I
15 MPC calls with prediction
horizon of 5 timesteps
I
10366 constraints
I
3060 inequality constraints
1936 variables
I
706 Variables
computing time: 2.39h (!)
(suboptimal solution after 60 s)
I
computing time:
15 · 0.128 s = 1.92 s
I
I
open-loop
closed-loop
1 Matlab MPT-toolbox using CPLEX; running on a PC ( Intel Pentium 4 (3.00GHz), 1GB RAM)
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 21
Modeling Cooperative Multi-Vehicle Systems
MILP-based Optimal Control of Cooperating Multi-Vehicle Systems
Towards On-line MPC
Summary and Outlook
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 22
Summary and outlook
Summary:
I
physics-motivated modeling, analysis and optimization takes account for tight
coupling of discrete states and continuous vehicle trajectories,
I
MILP enables an efficient simultaneous optimization of cooperation and mobility,
I
appropriate for motion dynamics with moderate non-linearity,
I
first promissing results with MPC-approaches,
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 23
Summary and outlook
Summary:
I
physics-motivated modeling, analysis and optimization takes account for tight
coupling of discrete states and continuous vehicle trajectories,
I
MILP enables an efficient simultaneous optimization of cooperation and mobility,
I
appropriate for motion dynamics with moderate non-linearity,
I
first promissing results with MPC-approaches,
Ongoing and related work:
I
manage diskrete structure in multi-parametric computation,
I
extension to more realistic models (e.g. considering uncertainties),
I
beneficial combinations with nonlinear approaches and CLP,
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 23
Vielen Dank für Ihre Aufmerksamkeit!
[email protected]
http://www.sim.tu-darmstadt.de
http://www.gkmm.tu-darmstadt.de
Zugehörige Veröffentlichungen:
I Optimalsteuerung kooperierender Mehrfahrzeugsysteme
Reinl, Glocker, von Stryk; In: at-Automatisierungstechnik, 2009
I Optimal Control of Multi-Vehicle Systems Under Communication Constraints Using Mixed-Integer Linear
Programming
Reinl, von Stryk; In: Proc. 1st Int. Conf. on Robot Communication and Coordination, 2007
I Optimal Control of Cooperative Multi-Robot Systems Using Mixed-Integer Linear Programming
Reinl, von Stryk; In: Proc. RoboMat, 2007
Nonlinear hybrid optimal control
I
various motion dynamics given by
non-linear ODE
I
modeling with hybrid automata
I
transformation to finite NLP with direct
collocation and binary variables
I
solved with large-scale SQP-method
SNOPT
I
Branch-and-bound-techniques
I
benchmark with multiple motorized
traveling salesmen:
non-convex, some N P -hard, sparse,
mixed-integer nonlinear problem
jump conditions and events
x(t)
flow
condition
final condition
x(tf )
ẋ = fq1 ()
ẋ = fqns −1 ()
initial x(t0 )
condition
ẋ = fqns ()
t
t0
ts,1
ts,2
ts,ns −2
ts,ns −1 tf
switching times
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 25
Model
of
Physical
Methodologies
Properties
and
different hybrid automata to model the physics of MRS
low structured
highly structured
simple flow conditions
??
? ?
constraint logic
programming
non−linear physics
mixed−integer linear
optimal control
non−linear hybrid
optimal control
jump conditions and events
x (t)
flow
condition
final condition
x (tf )
ẋ = fq1 ()
ẋ = fqns −1 ()
initial x (t0 )
condition
ẋ = fqns ()
t
t0
ts,1
ts,2
ts,ns −2
ts,ns −1 tf
switching times
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 26
(q1 , q1 ) ∈ E
q1
f: ẋ = fq1 (x, u, t)
i: gq1 (x, u, t) ≤ 0
(q2 , q1 ) ∈ E
q2
f: ẋ = fq2 (x, u, t)
i: gq2 (x, u, t) ≤ 0
(q1 , q2 ) ∈ E
Modeling: hybrid automata
I
transitions:
bs (t + ε) ≤
∑
bp (t)
p∈S ∗
state p1
state s
state p2
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 27
Modeling: hybrid automata
I
transitions:
bs (t + ε) ≤
∑
bp (t)
p∈S ∗
state s
state p1
state p3
state p2
I
hierarchies:
bs (t) =
∑ bp (t)
p∈S
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 27
Modeling: hybrid automata
I
transitions:
bs (t + ε) ≤
∑
bp (t)
p∈S ∗
state s
state p1
state p3
state p2
I
hierarchies:
bs (t) =
∑ bp (t)
p∈S
I
transformation of associated constraints using ’big-M’-method
e.g.:
[bq (t) = 1] ⇔ [c(x(t)) ≥ C ]
[Williams ’96]
is equivalent to
bq (t) · m < C − c(x(t)) ≤ (1 − bq (t))M
[bq ∈ {0, 1}; m ≤ min{c(x) − C }; M ≥ max{c(x) − C } (const.)]
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 27
Example: Farthest Shoot on Goal
“What is the longest possible distance that
a ball may roll towards the goal if at least
one pass is required?”
y
(x2, y2)
(xB , yB )
11
00
00(x
11
x
D , yD )
(x1, y1)
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 28
Example: Farthest Shoot on Goal
“What is the longest possible distance that
a ball may roll towards the goal if at least
one pass is required?”
additional constraint:
N+1
∑ b(2) (k) ≥ 1,
k=1
y
(x2, y2)
(xB , yB )
11
00
00(x
11
x
D , yD )
(x1, y1)
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 28
N+1
∑ b(4) (k) ≥ 1
k=1
Example: Farthest Shoot on Goal
“What is the longest possible distance that
a ball may roll towards the goal if at least
one pass is required?”
additional constraint:
N+1
N+1
∑ b(2) (k) ≥ 1,
k=1
∑ b(4) (k) ≥ 1
k=1
For a fixed time-horizon [t0 , tf ] minimize
y
min{distance + ε · (general requirements)}
(x2, y2)
u
N
(xB , yB )
e.g .
= min{−|xB (tf )| + |yB (tf )| + ε ·
11
00
00(x
11
x
D , yD )
u
[0 < ε 1 constant]
∑
|
(x1, y1)
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 28
|ux,i | + |uy ,i |}
k=1
i∈{1, 2}
{z
guarantees a
unique solution
}
Underlying graph structure
(Communication constraints / Formation control)
I
adjacency funtion Ci , primarily
depending on distance
variables bi1 ,i2 ∈ {0, −1}
Ci1 (xi1 , xi2 ) ≤ 0
[bi1 ,i2 = −1] :⇔
∨ Ci2 (xi2 , xi1 ) ≤ 0
I
nv
bi1 ,i1 := −
∑ bi ,i .
1 2
i2 =1
i2 6=i1
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 29
Underlying graph structure
(Communication constraints / Formation control)
I
adjacency funtion Ci , primarily
depending on distance
variables bi1 ,i2 ∈ {0, −1}
Ci1 (xi1 , xi2 ) ≤ 0
[bi1 ,i2 = −1] :⇔
∨ Ci2 (xi2 , xi1 ) ≤ 0
I
nv
bi1 ,i1 := −
∑ bi ,i .
1 2
i2 =1
i2 6=i1
Laplacian matrix: A = (bi1 ,i2 )
I
A is constant between usually
unknown switching times
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 29
Underlying graph structure
(Communication constraints / Formation control)
I
adjacency funtion Ci , primarily
depending on distance
variables bi1 ,i2 ∈ {0, −1}
Ci1 (xi1 , xi2 ) ≤ 0
[bi1 ,i2 = −1] :⇔
∨ Ci2 (xi2 , xi1 ) ≤ 0
I
properties of the Laplacian:
I
Eigenvalues : 0 = λ1 ≤ λ2 ≤ ... ≤ λn
nv
bi1 ,i1 := −
∑ bi ,i .
1 2
i2 =1
i2 6=i1
Laplacian matrix: A = (bi1 ,i2 )
I
A is constant between usually
unknown switching times
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 29
Underlying graph structure
(Communication constraints / Formation control)
I
adjacency funtion Ci , primarily
depending on distance
variables bi1 ,i2 ∈ {0, −1}
Ci1 (xi1 , xi2 ) ≤ 0
[bi1 ,i2 = −1] :⇔
∨ Ci2 (xi2 , xi1 ) ≤ 0
I
nv
bi1 ,i1 := −
∑ bi ,i .
1 2
i2 =1
i2 6=i1
properties of the Laplacian:
I
Eigenvalues : 0 = λ1 ≤ λ2 ≤ ... ≤ λn
I
The number of times λi = 0 appears is
the number of connected components
in the graph.
Laplacian matrix: A = (bi1 ,i2 )
I
A is constant between usually
unknown switching times
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 29
Underlying graph structure
(Communication constraints / Formation control)
I
adjacency funtion Ci , primarily
depending on distance
variables bi1 ,i2 ∈ {0, −1}
Ci1 (xi1 , xi2 ) ≤ 0
[bi1 ,i2 = −1] :⇔
∨ Ci2 (xi2 , xi1 ) ≤ 0
I
nv
bi1 ,i1 := −
∑ bi ,i .
1 2
i2 =1
i2 6=i1
Laplacian matrix: A = (bi1 ,i2 )
I
A is constant between usually
properties of the Laplacian:
I
Eigenvalues : 0 = λ1 ≤ λ2 ≤ ... ≤ λn
I
The number of times λi = 0 appears is
the number of connected components
in the graph.
Thus...:
λ2 6= 0 ⇔ Graph connected
unknown switching times
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 29
Underlying graph structure
(Communication constraints / Formation control)
I
adjacency funtion Ci , primarily
depending on distance
variables bi1 ,i2 ∈ {0, −1}
Ci1 (xi1 , xi2 ) ≤ 0
[bi1 ,i2 = −1] :⇔
∨ Ci2 (xi2 , xi1 ) ≤ 0
I
properties of the Laplacian:
I
Eigenvalues : 0 = λ1 ≤ λ2 ≤ ... ≤ λn
I
The number of times λi = 0 appears is
the number of connected components
in the graph.
nv
bi1 ,i1 := −
∑ bi ,i .
1 2
i2 =1
i2 6=i1
Thus...:
Laplacian matrix: A = (bi1 ,i2 )
I
λ2 6= 0 ⇔ Graph connected
A is constant between usually
unknown switching times
I
λ2 is called “Fiedler value” or
“algebraic connectivity”
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 29
Monitoring with 4 different vehicles in structured environment
I
2 ground vehicles, 1 ship, 1
aerial vehicle
I
13 timesteps
000000
111111
111111
000000
000000
111111
water
000000
111111
000000
111111
000000
111111
000000
111111
00 111111
11
000000
00 111111
11
000000
000000
111111
000000
111111
1
0
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
building
000000
111111
000000
111111
000000
111111
000000
111111
solid floor
000000
111111
00
11
000000
111111
00
11
000000
111111
00
11
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 30
Monitoring with 4 different vehicles in structured environment
I
2 ground vehicles, 1 ship, 1
aerial vehicle
positions and optimal controls:
200
2
100
13 timesteps
0
ux
x
−100
−1
−200
−300
0
−2
20
40
60
0
80
20
time [s]
400
40
time [s]
60
80
40
60
80
2
300
1
200
uy
000000
111111
111111
000000
000000
111111
water
000000
111111
000000
111111
000000
111111
000000
111111
00 111111
11
000000
00 111111
11
000000
000000
111111
000000
111111
1
0
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
000000
111111
building
000000
111111
000000
111111
000000
111111
000000
111111
solid floor
000000
111111
00
11
000000
111111
00
11
000000
111111
00
11
1
0
100
0
−1
y
I
0
−2
−100
0
I
20
40
time [s]
60
80
0
20
time [s]
solved with CPLEX in 79 min
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 30
Mixed Logical Dynamical (MLD) model of the
Target Observation Problem
Mixed Logical Dynamical (MLD) Framework:
x(k + 1) = Ax(k) + B1 u(k) + B2 δ(k) + B3 z(k)
y (k) = Cx(k) + D1 u(k) + D2 δ(k) + D3 z(k)
E2 δ(k) + E3 z(k) ≤ E1 u(k) + E4 x(k) + E5
x ∈ Rnc × {0, 1}nb , u ∈ Rmc × {0, 1}mb , y ∈ Rpc × {0, 1}pb , δ ∈ {0, 1}rb , z ∈ Rrc
T −1
Objective function:
min
u(0),...,u(T −1)
|PT x(T )| + ∑ |Ru(k)| + |Qx(k)|
k=0
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 31
Ongoing work:
MPC - off-line computation and on-line contol
I
I
I
solving a multi-parametric problem offline
piecewise affine state feedback law u(x0 ) defined on a polyhedral partition
on-line implementation uses a look-up table
©22.09.09 Christian Reinl | TU Darmstadt | Simulation, Systems Optimization, and Robotics | 32

Similar documents