Time optimal control computation with application to ... - Springer Link

3 downloads 0 Views 648KB Size Report
Computational algorithms for solving time optimal control problems involving ordinary differential equations and a bounded control region have been studied ...
JOURNAL OF OPTIMIZATION THEORY AND APPLICATIONS: VoL 56, No. L JANUARY 1988

Time Optimal Control Computation with Application to Ship Steering K . L. T E O 1 A N D C , C . L I M 2

Communicated by L. Cesari

An e~cient computational scheme for solving a general class of linear time optimal control problems, where the target set is a compact and convex set with nonempty interior in the state space, is presented. The scheme is applied to solve the ship steering control problem, and excellent results are obtained. Abstract.

Key Words. Time optimal control, computational algorithms, control parametrization, ship steering.

1. Introduction

Computational algorithms for solving time optimal control problems involving ordinary differential equations and a bounded control region have been studied together with their convergence properties in Refs 1, 2, 3 and the relevant references cited therein, where the target is taken as a fixed point in Refs. 1, 2 and as a curve in Ref. 2. The methods described in Ref. 1 (and the relevant references cited therein) include the geometrically derived decomposition algorithms and converting the free time problem to a fixed time problem with a parameter. In Ref. 2, a classical two-point boundary-value problem a p p r o a c h is proposed. In Ref. 3, an imptementable algorithm is given for a class of linear time optimal control problems. The algorithm relies on the existence of an u p p e r bound on the optimal cost at each iteration. Such a bound will always exist but is computationally very expensive. For the theoretical aspect of time optimal control problems, we refer the interested reader to Ref. 4.

J Associate Professor, Department of Industrial and System Engineering, National University of Singapore, Kent Ridge, Singapore. 2 Lecturer, Department of Electrical and Electronic Engineering, Universityof Adelaide, South Australia 5001, Australia. 145 0022-3239/88/0100.0145506.00/0 'cO 1988 Plenum Publishing Corporation

146

JOTA: VOL. 56. NO. 1, JANUARY 1988

In this paper, we propose an efficient computational scheme for solving a general class of linear time optimal control problems, where the target is a compact and convex set with nonempty interior in the state space. This problem can be solved by the well-known sequential gradient-restoration type of algorithms originated by Miele (cf. Refs, 5-10). The aim of this paper is to propose an alternative approach for solving this general class of problems. The approach is based on the ideas of the control parametrization technique [see Appendix V of Ref. 11, pp. 289-297], bisection search, and linear programming. As many very efficient linear programming software packages are now available, the algorithm presented in this paper is very efficient computationally. For illustration, we consider a realistic control problem involving ship steering. The ship model, together with its coefficients, is commonly used in simulation studies (see Refs. 12-14). A natural question to ask is: Is it possible to find a control which will bring the ship's heading and its yaw rate to certain acceptable limits in the minimum time? This problem can clearly be solved by the algorithm presented. Further simulation studies show that the ship course changing performance is excellent with this time optimal control scheme.

2. Problem Statement

Consider the following linear differential equation

dx( t)/ dt = A( t)x( t) + B( t)u( t),

(la)

where x =- ( x ~ , . . . , x,) ~ R" and u -= (ul, • • . , urn) ~ R m are, respectively, the state and control vectors, while A(t) and B(t) are, respectively, real continuous n × n and n x m matrices. The initial condition for the differential equation (la) is x(0) -= x °,

(lb)

where x ° is a given vector in R ~, Let

U==-{v=- ( v l , . . . , vm)e Rm: ( Ci)rv ~ bi, i = 1 , . . . , r},

(2)

where C i, i = 1 , . . . , r, are m-vectors, b~, i = 1 , . . . , r, are real numbers, and the superscript T denotes the transpose. A bounded measurable function from [0, oo) into U is called an admissible control. Let ~ be the class of all such admissible controls. For each u E ql, let x(. ; u) be the corresponding solution of the system (1).

JOTA: VOL. 56~ NO. 1, J A N U A R Y 1988

147

To specify our problem, let N be the set of alt those vectors y ~ R ~ such that ( D ; ) T y ~ dj,

j = 1 , . . . , s,

(3)

where D j, j = 1 , . . . , s, are n-vectors. The set N is called the target set. Let @ be the class of reachable controls defined by @ - = { u e 08: x ( r ; u) e N, for some 7>0}. For each u e °8, let ~-, be the minimum time for which x(~-; u ) e N. To continue, let N o and @o be, respectively, the interiors of N and @, defined by

N O=--{y ~ N: ( D ; ) r y < d~,j = t , . . . , s}, ~90 ___{u e 9 : x( ~-; u) e N o for some r > 0}. We are now in a position to state our problem formally as follows: Subject to the dynamical system (1), find a control u * c @ such that r,,~ -< ~'~,

for all u ~ 9.

This problem, which will be referred to as Problem (P), is a time optimal control problem. To solve this time optimal control problem, we need to assume that the following conditions are satisfied: (A1)

there exists a control u* such that r : - - - r~,

for all u e 0 8 ;

let the minimum time %, be written as T*; (A2) let ~ ( t ) --- {x(t; u): u e ~u}; then, the set 8f(t) is expanding, i.e., for ~'> 0, the set 28(t) is contained in the interior of ~(/'), for all 0-< t < ~'. Remark 2.1. Assumption (At) is a standard assumption without which the problem simply cannot be solved. Remark 2.2. Ref. 15, p. 72.

The definition of a set being expanding is taken from

Remark 2.3. From the definition of the target set N, we note that: (i) it is convex and can be considered as a constant set-valued function from [0, co) into R"; (ii) let the set Yg(t) and its interior ~ ° ( t ) be defined by ~ ( t ) -- {x(t): x( t) ~ ~ ( t) c~ N}, ~ ° ( t ) -- {x(t): x( t) ~ ~ ( t) c~ NO};

148

JOTA: VOL 56, NO. 1, JANUARY 1988

then, by Assumption (A1), there exists a time [ > 0 such that at(i') is nonempty; thus, from Assumption (A2), it can be shown that at°(t) is also expanding from t_> [; consequently, G°(t) is nonempty for each t > .?. Remark 2.4. If we choose constant matrices A and B in (la), satisfying the complete controllability condition rank[B, A B , . . . ,

A " IB] = n,

then by virtue of Theorem 17.3 and Corollary 17.1 of Ref. 15, p. 74 and p. 73, it can be shown that Assumption (A2) is valid. Thus, Assumption (A2) is clearly nonempty.

3. Three Subprocedures In this paper, one of our aims is to devise an implementable algorithm for solving the time optimal control problem. The idea is based on the control parametrization technique similar to that given in Appendix V of Ref. 11, pp. 28%297, in conjunction with the bisection search and any standard linear programming package. To be more precise, it depends on the three subprocedures to be discussed in the sequel. To begin, we choose a time Tk > 0. Then, the corresponding control space on [0, Tk] is discretized by the control parametrization technique similar to that given in Appendix V of Ref. 11. More precisely, we approximate each control on [0, Tk] by a zeroth-order spline (i.e., a piecewise constant function) as follows. . oc~ Consider a monotone nondecreasmg sequence {s k P " }p=l of finite subsets of [0, Tk]. For each p, let the nk,p + l points of S k'p, denoted by k.p,, satisfy t~"p, t~", .. ., t,k. k,p = lm,,p

t~op = 0,
0, and let the controls be restricted to ~ k c~ ~4 k'p. Then, a vector o-k'p ~ R ~s is said to be in ~k,v if it satisfies the linear constraints (6) and (7). Now, it is clear that any standard linear programming package, such as the one given in Ref. 16, can be used to check if the set @k,p is empty or not. If @k,p is nonempty, then a control o"k'p can be obtained in a finite number of iterations. On the other hand, if @k,p is empty, the linear programming package can also reveal this information in a finite number of iterations. The next subprocedure is an initialization algorithm. This is required to start the main algorithm to be presented in the next section. Subprocedure2.

To start the main algorithm, we must be able to find a time Tk and a positive integer p, such that x( Tk, o"k'p) ~ N. First, let us introduce some useful notation: 3---- { T > O: x ( T ; u) c N, for some u E ~/},

3.k.p =_{ T ~ 3.: x( T; cr~p) ~ N, for some o"k'p c ~ ~ 5~k'P}. Now, from Remark 2.3, we recall that there exists a time 1~ > 0 such that, for each T > T , x ( T ; u ) ~ N °, for some u ~ / . Thus, by using an argument similar to that given for L e m m a 3 of Ref. 15, pp. 294-295, we can show that, for each Tk > T, there exists a positive integer/~ such that Tk ~ 3.k,v, for all integers p >i/~. Thus, the following simple algorithm can calculate a Tk c 3.k,p in a finite number of iterations.

Step O. Set To = 0; choose T1 > 0 and a positive integer p.

JOTA: VOL. 56, NO. 1, J A N U A R Y 1988

151

Step 1. Use any linear programming package to check if T~ ~ ~-l'P. If T1 ~ j-l,p, stop. Step 2.

Set/'1 = T1 + A and p = 2p; a is a fixed arbitrary constant. Go

to Step 1. Remark 3.3. We observe that Step 1 of this initialization algorithm is Subprocedure 1. We now proceed to Subprocedure 3.

Subprocedure3. To present our main algorithm, we need to compute some subminimum time corresponding to each positive integer p. For this, let us introduce some useful notation. Let { Tk} be a sequence of times, and let s~ p -= O sg p'k. k~0

Then, corresponding to each uP~ ~4p, there exist a unique time Tk and a unique rnp vector

such that

uP(t) = ~ cr~'xjq.k(t), /=1

where

I p'k~- {If "k, l= 1 , . . . , np} is the obvious partition of [0, Tk] as defined for (4), Conversely, for each time Tk and each rnp vector o-v, there exists a unique control u v E sd p. We now propose a simple algorithm to calculate, for each positive integer p, the corresponding minimum time T p'*, with reference to the control set MP~ ~, as follows.

Step O. Choose Tl and a positive integer p such that T1 ~ ~/-1,p. Step 1.

Set To = 0.

Step 2.

Set /'2 = ( 7", + To)/2.

Step 3.

If 7"2c ff2,p, go to Step 4; otherwise, go to Step 5.

Step 4.

Set T~ = T2, and go to Step 2.

Step 5.

Set To = T2, and go to Step 2.

152

JOTA: VOL. 56, NO. 1, J A N U A R Y 1988

In Step 0 of this algorithm, we need to find a time Tk and a positive integer k such that Tk 6 ~-k,p. But this is possible by Subprocedure 2. From Step 1 onward, the algorithm is aimed at finding the minimum time T p'*, with reference to the control set ~P c~ @. Although it is an infinite procedure, the minimum time T p'* can be located to any preassigned degree of accuracy in a finite number of iterations.

4. Main Algorithm

Based on the ideas of these three subprocedures, an implementable algorithm for solving Problem (P) is now presented.

Step O. Set To = 0; use Subprocedure 2 to find a positive integer p and a real number Tl such that 7"1c j l . p ; choose e~ > 0. Step 1. Set T2 = (/'1 + To)/2. Step 2.

If T2~ j-2,p, go to Step 3; otherwise, go to Step 8.

Step 3.

Set T2 = To.

Step 4. If T1 - To> el, go to Step 1. Step 5. Record 7"1. Step 6. Increase p to 2p, and decrease el to e~/2. Step 7. S e t p = 2 p a n d e ~ = e ~ / 2 ; g o t o S t e p

1.

Step 8. Set T2 = T~; go to Step 1. In this algorithm, Steps 1 to 4 are, in fact, the modified version of Subprocedure 3, and Step 5 is its exit. From this exit, a sequence of times { Tk} is generated. This sequence possesses the following three properties: (i) Tk depends on p and e~; (ii) Tk+~ < Tk; (iii) for each k, there exists a positive integer/3 such that Tk ~ j-k,p, for all integers p i>/3. Now, the remaining question is whether {Tk} converges to the true minimum time T* or not. This question is answered in the following theorem. Theorem 4.1.

Tk ~ T* as k ~ oe.

Proof. For an), e > 0, it can be shown from Assumption (A2) that there exists a time T such that the following three properties are valid: (i)

~ > T*;

JOTA: VOL. 56, NO. t, JANUARY 1988

! 53

(ii) T-T*

Suggest Documents