real-time solution of bi-level optimal control problems
TRANSCRIPT
Real-Time Solution of Bi-Level Optimal Control Problems
Matthias Knauer∗1, Christof Buskens1, and Peter Lasch1
1 Zentrum fur Technomathematik,Universitat Bremen, D-28359 Bremen, Germany
Bi-level optimal control problems are presented as an extension to classical optimal control problems. Hereby, additionalconstraints for the primary problem are considered, which depend on the optimal solution of a secondary optimal controlproblem. A demanding problem is the numerical complexity, since at any point in time the solution of the optimal controlproblem as well as a complete solution of the secondary problem have to be determined. Hence we deal with two dependentvariables in time. The numerical solution of the bi-level problem is illustrated by an application of a container crane. Jerk andenergy optimal trajectories with free final time are calculated under the terminal condition that the crane system comes to beat rest at a predefined location. In enlargement additional constraints are investigated to ensure that the crane system can bebrought to a rest position by a safety stop at a free but admissible location in minimal time from any state of the trajectory.
1 Introduction
A new concept in high rack warehousing uses container cranes instead of fork lift trucks to pick and put goods [1]. The
trolley of the crane system has to be moved such that a payload which is attached to it by wire ropes reaches a terminal point
without any oscillation remaining. Using a fork construction pallets are loaded or unloaded from the rack. Taking advantage
of the methods of optimal control, as implemented e.g. in NUDOCCCS [2], trajectories can be calculated fulfilling the given
constraints and even optimizing an objective function such as process time or energy consumption.
For application in industrial plants, however, safety requirements demand that at any given point in time the whole system
can be shut down on request into a state free of oscillation as quick as possible. Hence additional trajectories have to be
available on-line for this kind of safety stop maneuver.
2 Bi-Level Optimal Control Problems
During the calculation of the main trajectory it has to be ensured, that the subordinated safety stop trajectories exist. On the
other hand, the initial points of the safety stop trajectories depend on the solution of the main trajectory.
More generally we can formulate the bi-level optimal control problem as an extension to optimal control problems:
minu
tf∫
0
f0(x(t), u(t), ρ(t), t) dt
s.t. x(t) = f(x(t), u(t), ρ(t), t),S(x(t), u(t), ρ(t), t) ≤ 0, t ∈ [0, tf ],ψ(x(0), x(tf )) = 0,
and for each t ∈ [0, tf ] ρ(t) =τf∫0
h(y(τ ; t), v(τ ; t), τ) dτ is the return information depending on the solution y(τ ; t) and
v(τ ; t) of the subordinated problem
minv(·;t)
τf∫
0
g0(x(t), u(t), y(τ ; t), v(τ ; t), τ) dτ
s.t. y(τ ; t) = g(x(t), u(t), y(τ ; t), v(τ ; t), τ),C(x(t), u(t), y(τ ; t), v(τ ; t), τ) ≤ 0, τ ∈ [0, τf ],φ(x(t), u(t), y(0; t), y(τf ; t)) = 0.
Regarding the implementation of solution methods for the bi-level optimal control problem two different types of coupling
both levels may be distinguished: Using the return information ρ(t) of the subordinated problem in the main problem allows
information exchange in both directions. Otherwise only the existence of the solution of the subordinated problem is ensured.
The solution of the subordinated problem has to exist for each t ∈ [0, tf ]. In practical implementations, however, this
constraint can only be taken into account for a discrete number of points in time.
∗ Corresponding author: e-mail: [email protected], Phone: +49 421 218 2413, Fax: +49 421 218 4235
PAMM · Proc. Appl. Math. Mech. 5, 749–750 (2005) / DOI 10.1002/pamm.200510349
© 2005 WILEY-VCH Verlag GmbH & Co. KGaA, Weinheim
© 2005 WILEY-VCH Verlag GmbH & Co. KGaA, Weinheim
3 Solution of Bi-Level Optimal Control Problems
Direct transcription methods transform optimal control problems into finite dimensional non-linear programming problems by
discretization in order to solve them with, e.g., SQP methods. For the container crane a solution can be found by transforming
the bi-level optimal control problem into a classical optimal control problem. Different methods are possible for handling the
subordinated problem:
1. Permanent Evaluation. A straightforward approach would be to solve the subordinated problem at any time when
the return information is needed, similarly to the evaluation of constraints. The subordinated information is considered
immediately, but at the high price of large computational times. By storing the current solutions of the subordinated
problems and using them as initial guesses the computational time can be reduced.
2. Extended Discretization. The control vectors of the main and the subordinated problems can be considered as a large
vector. For i = 1, . . . , n let ui ≈ u(ti) denote the approximation of the control vector u(t) at time ti. The control
vector v(τ ; t) of the subordinated problem to time ti can be discretized over τj as vji ≈ v(τj ; ti), j = 1, . . . , m. Putting
together both vectors allows a simple information exchange between both levels. The complexity, however, raises for
large n.
3. Analytical Evaluation. A quick method for considering the subordinated information is to solve the subordinated
problem analytically if possible. This method works only for very special cases.
4. Subsequent Solution. If no return information of the subordinated problem is considered in the main problem, low
calculation times are obtained by solving the subordinated problem after the solution of the main problem was found.
4 Numerical Solution of Safety Stop Trajectories
The control process for the container crane problem can be formulated as
x = u1, l = u2, d = u1 −g − u2
l· d,
where x(t) is the absolute position of the trolley, l(t) the length of wire rope, d(t) the relative position of the payload with
respect to the trolley, g the acceleration of gravity and u(t) = (u1(t), u2(t)) the control vector. The objective function
I[u] = α1 ·
∫‖u(t)‖2 dt + α2 ·
∫d(t)2 dt + α3 · tf
together with initial values x(0) = 5, x(0) = 0, l(0) = 3, l(0) = 0, d(0) = d(0) = 0, and terminal values x(tf ) =
15, x(tf ) = 0, l(tf) = 5.5, l(tf ) = 0, d(tf ) = d(tf ) = 0 completes the optimal control problem for the container crane.
The numerical solution shown in Fig. 1 was found using the subsequent solution technique. The computational time on a
common PC was 1.25 seconds for the main trajectory and a set of 27 safety stop trajectories.
x(t) + stop
0 1 2 3 4 5 6 7 8 0 2 4 6 8 10 12 14 16 18 20
v(t) + stop
0 1 2 3 4 5 6 7 8 0.0
0.5
1.0
1.5
2.0
2.5
3.0
0 2 4 6 8 10 12 14 16 18 20 0
1
2
3
4
5
6
7
8
0 2 4 6 8 10 12 14 16 18 20 0
1
2
3
4
5
6
7
8
Fig. 1 Solution of main (red) and subordinated problem (green). The graphs on the left show the position and velocity ofthe trolley. A side view of the crane system is shown on the right, where the safety stop was invoked at two different points intime.
References[1] Neue Lagertechnik mit dem TransFaster, Hebezeuge und Fordermittel 42, Berlin, 196–199 (2002).[2] C. Buskens, Optimization Methods and Sensitivity Analysis for Optimal Control Problems with Control and State Constraints (in
German). Ph.D. Thesis. University of Munster (1998).
© 2005 WILEY-VCH Verlag GmbH & Co. KGaA, Weinheim
Section 21 750