Using Multarget, a Matlab toolbox for solving Multi-target ... - CiteSeerX

5 downloads 0 Views 91KB Size Report
Oct 29, 2003 - Multarget implements the technique of solving Multi-target linear quadratic control problem using the technique suggested in [1].
Using Multarget, a Matlab toolbox for solving Multi-target linear quadratic control problem L. Faybusovich, T. Mouktonglang. Department of Mathematics, University of Notre Dame, Notre Dame, IN 46556 USA October 29, 2003

1

Introduction

Multarget implements the technique of solving Multi-target linear quadratic control problem using the technique suggested in [1]. The implementation is being done on Matlab. It also requires SeDumi [2], a matlab toolbox for optimization over a symmetric cones. The technique suggested in [1] shows that a multi-target linear-quadratic control problem can be reduced to the classical tracking problem where the target is a convex combination of the original ones. Finding coefficients in this convex combination is reduced to solving a second-order cone programming problem which can be easily solved using modern interior point algorithms.

2

General Information, Input data and Output Solution

Multarget is composed of six M-files. In ”data.m”,a user must provide a pair of (i) (i) stabilizable matrices (A, B), T −time and targets yi = (ys , yc ) ∈ Ln2 [0, T ] × l L2 [0, T ] for all i = 1, ..., m. (i) (i) Targets yi are composed of two components; state ys and control yc . Each component is stored in a two dimension array which keep the values of targets for every fixed time interval. Hence, if GRD is the number of points functions evaluated per unit time, then Num = T × GRD is the total number of points functions evaluated. The number of GRD is fixed in Multarget, but it can be changed in the data.m file. To run the program, it requires SeDumi installed, and having all six M-files in the same folder. Information about downloading and installing SeDumi can be found at ’http://fewcal.uvt.nl/sturm/index.html’. To execute, the user has to be working on the folder where all Multarget.m are located or set path to the particular folder (for more information about set path, see Matlab help) 1

and simply type ”multarget”. Optimal value and coefficients (see [1] for more details) are printed at the end of the program. Graph of optimal control is plotted where x-axis is a grid number. Remark All six M-files are combined into one single zipped file, multitarget.zip . In order to unzip the file, an unzipped software is required.

3

Brief formulation of the problem

Denote by Ln2 [0, T ] the vector space of square integrable functions f : [0, T ] → IRn . Let H = Ln2 [0, T ] × Ll2 [0, T ], T > 0, and Z

=

{(α, β) ∈ H : α is absolutely continuous on [0, T ], α(t) ˙ = Aα(t) + Bβ(t), t ∈ [0, T ], α(0) = 0}.

Here A (respectively, B) is an n by n (respectively, n by l)matrix. Observe that Z T h(α1 , β1 ), (α2 , β2 )i = [α1T (t)α2 (t) + β1T (t)β2 (t)]dt, 0

(αi , βi ) ∈ H, i = 1, 2 Consider the following Multi-target linear quadratic control problem: Z max (

i∈[1,m]

0

T

h i (α − ys(i) )T (α − ys(i) ) + (β − yc(i) )T (β − yc(i) ) dt) → min

(1)

α˙ = Aα + Bβ, α(0) = 0 where

" yi =

(i)

ys (i) yc

# ∈ H, f or i = 1, ..., m

are given targets. According to [FM] (1) can be reduced to a (finite dimensional) quadratic cone programming problem as follows: · k

t → min, ¸ Bµ − βi k2 ≤ t, i = 1, 2, . . . , m, νi µ ∈ IRm .

2

(2) (3) (4)

where µ = (µ1 , ...µm ),t are decision variables, νi = kπZ ⊥ yi k is the norm of the orthogonal projection of the vector yi onto the orthogonal complement Z ⊥ of Z in H, B is a lower triangular matrix obtained with the Cholesky factorization of Γ = (hπZ yi , πZ yj i) for i, j = 1, ..., m, πZ yi is the orthogonal projection of yi onto Z and βi = Bei , the i-th column of B. (For detail of the reduction and calculation of the projections see [1]) Let µ∗ = (µ∗1 , ...µ∗m ),t∗ be a optimal solution to the problem (2) - (4). Then the optimal solution to (1), y ∗ = (α∗ , β ∗ ) is of the form y∗ =

m X

µ∗i πZ yi

i=1 ∗

with optimal value t . The problem (2) - (4) is finite dimensional quadratic cone programming problem. It can be easily solved by Sedumi, A Matlab toolbox for Optimization over symmetric cones. In order to solve the problem (2) - (4) using sedumi, we have to rewrite the problem (2) - (4) into the dual standard form, bT y → min

(5)

c − AT y ∈ K where a quadratic cone K = {(x1 , x2 ) ∈ R × Rn−1 : x1 ≥ |x2 |2 }. In our situation, we have m quadratic cones and each one of them has dimension of m + 2. Let   1   0  0    b =  .  ∈ Rm+1 , c =  −βi  ∈ Rm+2  ..  νi 0   −1 0...0   AT =  ... −B  ∈ Mm+2×m+1 , 0

0...0

then problem (2) - (4) is equivalent to (5). Remark This is a tentative version for solving Multi-target linear quadratic control problem. It was tested on small to mid size problems, and gave good approximations to the optimal solutions and optimal values. The limitation of the program heavily depends on speed of a computer and available memory.

References [1] L. Faybusovich, T.Mouktonglang, Multi-Target Linear-Quadratic Cntrol Problem and Second-Order Cone Programming, Preprint (2002). 3

[2] J.F. Sturm, Using SeDuMi 1.02, a MATLAB Toolbox for Optimization Over Symmetric Cones, Optimization Methods and Software, vol 1112(1999), p.p. 625-653.

4