936
Views
4
CrossRef citations to date
0
Altmetric
Research Article

A hybrid direction algorithm for solving optimal control problems

, & | (Reviewing editor)
Article: 1612614 | Received 06 Oct 2018, Accepted 11 Apr 2019, Published online: 20 May 2019

Abstract

In this paper, we present an algorithm for finding an approximate numerical solution for linear optimal control problems. This algorithm is based on the hybrid direction algorithm developed by Bibi and Bentobache [A hybrid direction algorithm for solving linear programs, International Journal of Computer Mathematics, vol. 92, no.1, pp. 201–216, 2015]. We define an optimality estimate and give a necessary and sufficient condition to characterize the optimality of a certain admissible control of the discretized problem, then we give a numerical example to illustrate the proposed approach. Finally, we present some numerical results which show the convergence of the proposed algorithm to the optimal solution of the presented continuous optimal control problem.

PUBLIC INTEREST STATEMENT

The optimal control theory consists in finding a control which optimizes a functional on a domain described by a system of differential equations, with box and terminal constraints on the control. This theory is applied in various fields of the engineering sciences: aeronautics, physics, finance, etc. For example, finding the minimal time necessary for moving a missile from one starting point to a destination point can be modeled as an optimal control problem, where the constraints are given by the motion equations of the missile. In this work, we have proposed a method which finds a numerical solution for the linear optimal control problem. Our method can be used for the simulation of optimal trajectories of control problems which arise in military applications, finance, etc.

1. Introduction

The optimal control theory consists in finding a control which optimizes a functional on a domain described by a system of differential equations, with box and terminal constraints on the control. This theory is applied in various fields of the engineering sciences: aeronautics, physics, finance, etc. Because of the importance of this theory, several researchers have been interested in the development of effective numerical methods for solving this type of problems. In (Gabasov & Kirillova, Citation1980; Gabasov, Kirillova, & Prischepova, Citation1995), the authors developed the adaptive method for solving linear optimal control problems. This method is then generalized for solving general quadratic optimization problems (Bibi, Citation1994, Citation1996; Brahmi & Bibi, Citation2010; Khimoum & Bibi, Citation2019; Kostina & Kostyukova, Citation2001).

In (Bentobache, Citation2013; Bentobache & Bibi, Citation2016; Bibi & Bentobache, Citation2011, Citation2015), the authors proposed a new improvement direction for the adaptive method in order to solve linear programming problems with bounded variables. This direction is called hybrid direction because some of its components take extreme values and the other components take the values of the opposite gradient.

In this paper, we present an algorithm based on this hybrid direction for solving linear optimal control problems. In a similar way to (Bibi & Bentobache, Citation2015), we define an optimality estimate and give a necessary and sufficient condition to characterize the optimality of a certain admissible control of the discretized problem. Then, we describe a numerical algorithm for finding an approximate solution and we present some numerical results in order to show its convergence.

The paper is organized as follows: In Section 2, we present the problem and give some definitions. In Section 3, we present the details of the proposed algorithm and we give a numerical example to illustrate our approach in Section 4. Finally, we conclude this paper and give some perspectives.

2. Optimal control problem

2.1. State of the problem and definitions

Consider the following terminal optimal control problem:

(1) J(u)=cx(t)maxu,(1.1)dxdt=x˙(t)=Ax(t)+bu(t),x(t)=x0,(1.2)Hx(t)=g,(1.3)fu(t)f,tT=[t,t],(1.4)(1)

where J(u) is the quality criterion, AMn×nR is the dynamic matrix of the system, x(t)Rn is the state vector of the system, bRn, HMm×nR is a matrix of rank mn, gRm, u(t)R is a piecewise constant control bounded by f,fR and cRn. The symbol (’) designates the transposition operation.

Definition 1 Any control u=(u(t),tT) satisfying the constraints:

fu(t)f,tT=[t,t],Hx(t)=g,

is called an admissible control of the problem (1).

An admissible control u0=(u0(t),tT) is said to be optimal if

J(u0)=maxuJ(u).

An admissible control uε is said to be ε optimal or suboptimal if

J(u0)J(uε)ε,

where ε0 is an accuracy chosen in advance.

The solution of the problem consists in the determination of an admissible control u0 which, with the trajectory x0, maximizes the quality criterion J(u):

J(u0)=maxuJ(u)=maxucx(t)=cx0(t).

The solution of the system (1.2) is given by

(2) x(t)=F(t)x0+ttF1(τ)bu(τ)dτ,tT,(2)

where F(t),tT, is the solution of the system

F˙(t)=AF(t),F(t)=In,tT,

and the matrix In represents the identity matrix of order n.

By replacing the expression (2) in the system (1.1)(1.3), we find

J(u)=cx(t)=cF(t)x0+ttcF(t)F1(t)bu(t)dt,
HF(t)x0+ttHF(t)F1(t)bu(t)dt=g.

If we set

c(t)=cF(t)F1(t)b,
ϕ(t)=HF(t)F1(t)b,
g0=gHF(t)x0,

then we get the following equivalent problem:

(3) J(u)=cF(t)x0+ttc(t)u(t)dtmaxu,(3.1)ttϕ(t)u(t)dt=g0,(3.2)fu(t)f,tT=[t,t].(3.3)(3)

2.2. Discretization of the initial problem

We choose a subset Th={t,t+h,,th}, where h=ttN and NN. Let the function u(t),tT, be a piecewise constant control such that

u(t)u(τ),t[τ,τ+h[,τTh.

Using this discretization, the problem (3.1)(3.3) becomes:

(4) J(u)=cF(t)x0+τThq(τ)u(τ)maxu,(4.1)τThd(τ)u(τ)=g0,(4.2)fu(τ)f,τTh,(4.3)(4)

where

(5) q(τ)=ττ+hc(s)dsandd(τ)=ττ+hϕ(s)ds.(5)

2.3. Support control

The set TB={τi,i=1,m}Th, is called a support if the corresponding matrix PB=(d(τ),τTB)Mm×m(R) is nonsingular.

The pair {u,TB} formed by the admissible control u and the support TB is called a support control of the problem (4). The latter is said to be nondegenerate if f<u(τ)<f,τTB.

2.4. Increment formula of the functional

Let {u,TB} be a support control and x(t),tT, its corresponding trajectory. Using the support TB, we construct the vector of the potentials νRm and the cocontrol vector E(τ),τTh, as follows:

(6) ν=qBPB1,E(τ)=νd(τ)q(τ),(6)

where qB=(q(τ),τTB), EB=(E(τ),τTB)=0.

Consider another control

u(t)=u(t)+Δu(t),tT,

and the corresponding trajectory

x(t)=x(t)+Δx(t),tT.

Then, the increment of the functional (4.1) is given by

ΔJ(u)=J(u)J(u)=τTNE(τ)Δu(τ),TN=ThTB.

The following theorem gives a necessary and sufficient condition of optimality for an admissible control u of the problem (4).

Theorem 1 (Gabasov et al., Citation1995) The following relationships:

u(τ)=f,ifE(τ)>0,u(τ)=f,ifE(τ)<0,fu(τ)f,ifE(τ)=0,τTN,

are sufficient, and in the case of the nondegeneracy of the support control {u,TB} also necessary, for the optimality of the admissible control u.

3. An iteration of the hybrid direction algorithm

Let {u,TB} be a support control for the problem (4) and η[0,1]. Define the following sets:

TN+={τTN:E(τ)>ηu(τ)f},
TN={τTN:E(τ)<ηu(τ)f},
TNP+={τTN:0<E(τ)ηu(τ)f},
TNP={τTN:ηu(τ)fE(τ)<0},
TNP0={τTN:E(τ)=0},
TNP={τTN:ηu(τ)fE(τ)ηu(τ)f}=TNP+TNPTNP0.

Then

Th=TN+TNTNPTB.

Recall that the suboptimality estimate β(u,TB) is given by the following formula (Gabasov et al., Citation1995):

β(u,TB)=τT+E(τ)(u(τ)f)+τTE(τ)(u(τ)f),

where T+=TN+TNP+ and T=TNTNP.

We call optimality estimate, the quantity γ(η,u,TB) defined by:

(7) τTN+E(τ)(u(τ)f)+τTNE(τ)(u(τ)f)+1ητTNP+TNPE2(τ),ifη>0,β(u,TB),ifη=0.(7)

Theorem 2 (Necessary and sufficient condition of optimality (Bibi & Bentobache, Citation2015))

Let {u,TB} be a support control for the problem (4) and η>0. Then the condition γ(η,u,TB)=0 is sufficient and, in the case of the nondegeneracy of the support control {u,TB} also necessary, for the optimality of the admissible control u.

Let {u,TB} be a starting support control of the problem (4), for which the optimality criterion is not satisfied. An iteration of the hybrid direction algorithm consists in moving from {u,TB} to {u,TB}, where u=u+θ0Δu. This passage is done in two steps:

1. Change of control: uu.

2. Change of support: TBTB.

3.1. Change of control

Let {u,TB} be a support control for the problem (4) and η[0,1]. We compute γ(η,u,TB) with the formula (7). If γ(η,u,TB)=0, then the support control {u,TB} is optimal, otherwise we define the admissible improvement direction Δu(τ) as follows:

(8) Δu(τ)=fu(τ),forτTN+,fu(τ),forτTN,E(τ)η,forτTNP,η0,0,forτTNP,η=0,Δu(τ),forτTB,(8)

where ΔuB=PB1PNΔuN, PN=(d(τ),τTN) and ΔuN=(Δu(τ),τTN). This direction is called a hybrid direction (Bibi & Bentobache, Citation2015). The direction Δu(τ) is an admissible one for the problem (4). Indeed,

τThd(τ)u(τ)=τThd(τ)u(τ)+θ0τThd(τ)Δu(τ)
=τThd(τ)u(τ)+θ0(PNΔuN+PBΔuB)
=τThd(τ)u(τ)+θ0(PNΔuNPBPB1PNΔuN)
=τThd(τ)u(τ)
=g0.

To improve the objective function while remaining within the admissible domain, we compute the step θ0 along the direction Δu(τ):

(9) θ0=min{θ(τ1),1},(9)

where θ(τ1)=min{θ(τ),τTB},

with

(10) θ(τ)=fu(τ)Δu(τ),ifΔu(τ)>0,fu(τ)Δu(τ),ifΔu(τ)<0,,ifΔu(τ)=0.(10)

Then, the new admissible control will be:

(11) uˉ(τ)=u(τ)+θ0Δu(τ),(11)

where Δu(τ) and θ0 are defined by relationships (8) and (9) respectively.

The increment of the objective function is then

ΔJ(u)=θ0τTNE(τ)Δu(τ)
=θ0τTN+E(τ)Δu(τ)θ0τTNE(τ)Δu(τ)θ0τTNp+TNPE(τ)Δu(τ)
=θ0τTN+E(τ)(u(τ)f)+θ0τTNE(τ)(u(τ)f)+θ0τTNp+TNpE2(τ)η
=θ0γ(η,u,TB)0.

So J(uˉ)>J(u), for θ0>0.

Corollary 1 (Bibi & Bentobache, Citation2015)

If θ0=1 and TNP+TNP=, then uˉ is optimal.

3.2. Change of support

If for the support control {uˉ,TB} of the problem (4), we have θ0<1, then we change TB by TˉB using the dual method. For this, we compute the vector ω and the number α0 as follows:

ω(τ)=u(τ)+Δu(τ),τThandα0=ω(τ1)uˉ(τ1).

Then, the new cocontrol will be given by:

Eˉ(τ)=E(τ)+σ0δ(τ),τTh,

where δ(τ) is the dual direction and σ0 the dual step, which are computed as follows:

(12) δ(τ)=0,ifτTB{τ1},1,ifα0>0,τ=τ1,+1,ifα0<0,τ=τ1,δBPB1d(τ),forτTN,δB=(δ(τ),τTB),(12)
(13) σ0=σ(τ0)=minτTNσ(τ),(13)

where

σ(τ)=E(τ)δ(τ),ifE(τ)δ(τ)<0,0,ifE(τ)=0,δ(τ)<0,ω(τ)f,0,ifE(τ)=0,δ(τ)>0,ω(τ)f,+,elsewhere,τTN.

The following new support is then obtained:

TˉB=(TB{τ1}){τ0}.

3.3. Scheme of the hybrid direction algorithm

Let {u,TB} be a support control for the problem (4) and η a real number such that η[0,1]. In order to take into account the specificity of the studied linear optimal control problem, we present in this section a slightly modified version of the algorithm presented in (Bibi & Bentobache, Citation2015). Indeed, if θ0=1 and TNP+TNP, then we reduce the value of the parameter η by setting η=η/2 and we start a new iteration with the new control uˉ. The scheme of the hybrid direction algorithm for solving the linear optimal control problem is described in the following steps:

Algorithm 1

(1) Compute d(τ),q(τ),ν,E(τ) with relationships (5)-(6);

(2) Determine the sets TN+, TN, TNP+ and TNP;

(3) Compute γ(η,u,TB) with the formula (7);

(4) If γ(η,u,TB)=0, then the algorithm stops with {u,TB}, an optimal support control for the discretized problem;

(5) Compute the improvement direction Δu(τ) using the relationship (8);

(6) Compute θ(τ1)=minτTBθ(τ), where θ(τ) is determined by (10);

(7) Compute θ0=min{1,θ(τ1)}, uˉ(τ)=u(τ)+θ0Δu(τ),τTh, and

J(uˉ)=J(u)+θ0γ(η,u,TB);

(8) If θ0=1, then

(8.1)—If TNP+TNP=, then uˉ(τ) is optimal. Stop.

(8.2)—Else, set η=η/2, u(τ)=uˉ(τ), J(u)=J(uˉ) and go to step (2).

(9) Compute the dual direction δ(τ),τTh, using the relationship (12);

(10) Compute the dual step σ0 and determine τ0 using the relationship (13);

(11) Set Eˉ(τ)=E(τ)+σ0δ(τ),τTh, TˉB=(TB{τ1}){τ0};

(12) Set u(τ)=uˉ(τ), TB=TˉB, J(u)=J(uˉ), E(τ)=Eˉ(τ) and go to step (2).

4. Numerical example

Consider the following problem

(14) J(u)=cx(2)maxu,x˙(t)=Ax(t)+bu(t),x(0)=0,Hx(2)=g,1u(t)1,tT=[0,2],(14)

with

A=0100,b=01,H=(1,2),g=12,c=01.

We have

F(t)=1t01,F1(t)=1t01,
c(t)=cF(2)F1(t)b=1,ϕ(t)=HF(2)F1(t)b=t.

Consider the admissible control

u(t)=12,ift[0,1[12,ift[1,2].

The corresponding trajectory is

x(t)=t24t2,ift[0,1[

and

x(t)=t24+t12t2+1,ift[1,2].

We choose h=0.5 and η=1. We take the support control {u,TB} for the problem (14), with TB={1}.

Iteration 1.

PB=132sds=58,PB1=85,qB=132ds=12,
ν=12×85=45,E(τ)=25(τ1),
TN=0,12,32,
TN+={τTN:25(τ1)>u(τ)+1}=,
TNP+={τTN:0<25(τ1)u(τ)+1}=32,
TN={τTN:25(τ1)<u(τ)1}=,
TNP={τTN:u(τ)125(τ1)<0}=0,12.

We compute the optimality estimate:

γ(η,u,TB)=E2(0)+E212+E232=625,

so the control u is not optimal.

Change of control:

We compute Δu(τ)

Δu(τ)=+25,ifτ=0,+15,ifτ=12,+225,ifτ=1,15,ifτ=32.

The step along the direction Δu(τ) is computed as follows:

We have Δu(1)=225, then θ(τ1)=112225=754 and θ0=1.

Hence, the new control is given by:

u(τ)=+910,ifτ=0,+710,ifτ=12,2150,ifτ=1,710,ifτ=32.

We have θ0=1 and TNP+TNP, so we set

η=η/2=1/2,E(τ)=25(τ1),u(τ)=u(τ).

Iteration 2. For this iteration, we have

TN+=32,TN=0,12,TNP=andγ(η,u,TB)=425.

We compute the direction Δu(τ):

Δu(τ)=+110,ifτ=0,+310,ifτ=12,+1150,ifτ=1,310,ifτ=32.

We have Δu(1)=1150, hence θ(τ1)=1+21501150=7111 and θ0=1. So

u(τ)=+1,ifτ=0,+1,ifτ=12,15,ifτ=1,1,ifτ=32.

Since θ0=1 and TNP+TNP=, then the control

u0(τ)=+1,ifτ=0,+1,ifτ=12,15,ifτ=1,1,ifτ=32,

is optimal for the discretized problem, with J(u0)=25. Therefore, the control

u(t)=1,ift[0,1[15,ift[1,32[1,ift[32,2],

is an approximate solution of the original problem (14).

In order to find a good approximate solution for the original continuous problem (14), we have implemented the discretization technique using the Cauchy formula and the hybrid direction algorithm with MTALB2018a. The developed solver was tested on a computer surface pro 2, with 4GO of memory and processor Intel(R) Core(TM) i5-4300U CPU 1.90GHz 2.50GHz, running under Microsoft Window 10 operating system.

The initialization approach proposed in (Bentobache & Bibi, Citation2012) can be used to compute an initial admissible support control, however we have initialized the hybrid direction algorithm with the following obvious admissible control:

u(t)=12,ift[0,1[12,ift[1,2].

In Table , we report numerical results for different values of N, where CPU1, CPU2, IT and J0 represent respectively the cpu time of the discretization phase, the execution time, the number of iterations of the hybrid direction algorithm and the optimal value of the quality criterion of (14). We plot the optimal control in terms of t for N=5000 (Figure ) and we plot the optimal objective values of the linear program (4) corresponding to the problem (14) in terms of N (Figure ).

Note that for large values of N, our method converges to the optimal value of the continuous original problem J=0.4495. Furthermore, we can see from Graph of Figure , that the commutation time is approximately equal to 1.23 sec.

Figure 1. Graph of the optimal control in terms of t for N=5,000.

Figure 1. Graph of the optimal control in terms of t for N=5,000.

Figure 2. Graph of the objective function value in terms of N.

Figure 2. Graph of the objective function value in terms of N.

Table 1. Numerical simulation results for the problem (14)

5. Conclusion

In this paper, we applied the hybrid direction algorithm developed in (Bibi & Bentobache, Citation2015) to find an approximate optimal solution to a linear optimal control problem. A numerical example was given to illustrate the described algorithm, and some numerical simulation results were presented in order to show the convergence of our algorithm to the optimal solution of the continuous problem. In a future work, we will compare the presented approach with classical approaches on practical optimal control problems.

Correction

This article has been republished with minor changes. These changes do not impact the academic content of the article.

Acknowledgements

The authors are indebted to Dr. Mohamed Aliane who supplied them the matlab code of the Cauchy discretization technique and to the anonymous referees whose comments and suggestions have improved the quality of this paper.

Additional information

Funding

The authors received no direct funding for this research.

Notes on contributors

Mohamed Abdelaziz Zaitri

Mohamed Abdelaziz Zaitri received a DES degree in Mathematics from the Higher Normal School of Kouba (2011), Algeria, a master degree (2014) from the University of Bejaia. He is a PhD student at the Department of Operational Research, University of Bejaia, Algeria.

Mohand Ouamer Bibi

Mohand Ouamer Bibi received a DES degree in Mathematical Analysis (1980) from the USTHB University, Algeria, a master degree (1982) and PhD (1986) in Applied Mathematics from the University of Minsk, Belarus. He is a Full Professor at the Department of Operational Research and the leader of the research group “Optimization and Optimal Control” at the LaMOS Research Unit, University of Bejaia, Algeria.

Mohand Bentobache

Mohand Bentobache received his engineering degree in operational research (2002), master degree (2005), PhD (2013) and HDR (2015) in Applied Mathematics from the University of Bejaia, Algeria. He is an Associate Professor at the Department of Technology and the leader of the research group “Numerical Analysis and Optimization” at the Laboratory of LMPA, University of Laghouat, Algeria.

References

  • Bentobache, M. (2013). On mathematical methods of linear and quadratic programming (PhD thesis), University of Bejaia, Bejaia, Algeria.
  • Bentobache, M., & Bibi, M. O. (2012). A two-phase support method for solving linear programs: Numerical experiments. Mathematical Problems in Engineering, 2012. Article ID 482193, doi:10.1155/2012/482193
  • Bentobache, M., & Bibi, M. O. (2016). Numerical methods of linear and quadratic programming. Germany (in French): French Academic Editions.
  • Bibi, M. O. (1994). Optimization of a linear dynamic system with double terminal constraints on the trajectories. Optimization, 30(4), 359–12. doi:10.1080/02331939408843998
  • Bibi, M. O. (1996). Support method for solving a linear-quadratic problem with polyhedral constraints on control. Optimization, 37(2), 139–147. doi:10.1080/02331939608844205
  • Bibi, M. O., & Bentobache, M. (2011). The adaptive method with hybrid direction for solving linear programming problems with bounded variables. Proceedings of COSI’2011 pp. 80–91, 24–27 April, Algeria: University of Guelma.
  • Bibi, M. O., & Bentobache, M. (2015). A hybrid direction algorithm for solving linear programs. International Journal of Computer Mathematics, 92(1), 201–216. doi:10.1080/00207160.2014.890188
  • Brahmi, B., & Bibi, M. O. (2010). Dual support method for solving convex quadratic programs. Optimization, 59(6), 851–872. doi:10.1080/02331930902878341
  • Gabasov, R., & Kirillova, F. M. (1980). Methods of linear programming (Vol. 3). Edition of the Minsk University, Minsk (in Russian).
  • Gabasov, R., Kirillova, F. M., & Prischepova, S. V. (1995). Optimal feedback control. London: Springer-Verlag.
  • Khimoum, N., & Bibi, M. O. (2019). Primal-dual method for solving a linear-quadratic multi-input optimal control problem. Optimization Letters. doi:10.1007/s11590-018-1375-2
  • Kostina, E. A., & Kostyukova, O. I. (2001). An algorithm for solving quadratic programming problems with linear equality and inequality constraints. Computational Mathematics and Mathematical Physics, 41(7), 960–973.