nonlinear programming methods for solving optimal … · nonlinear programming methods for solving...

30
NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS Carla Durazzi 1 Dipartimento di Matematica Universit` a di Bologna Piazza di Porta San Donato 5 40126 – Bologna, Italia e-mail: [email protected] Emanuele Galligani Dipartimento di Matematica Universit` a di Modena e Reggio Emilia Via Campi 213/b 41100 – Modena, Italia e-mail: [email protected] Abstract This paper concerns with the problem of solving optimal control prob- lems by means of nonlinear programming methods. The technique employed to obtain a mathematical programming problem from an optimal control problem is explained and the Newton interior–point method, chosen for its solution, is presented with special regard to the choice of the involved pa- rameters. An analysis of the behaviour of the method is reported on four optimal control problems, related to improving water quality in an aeration process and to the study of diffusion convection processes. Key words: Optimal Control, Nonlinear Programming, Newton Interior– Point Method, Finite Difference Approximations. This work was supported by MURST Project “Numerical Analysis: Methods and Mathe- matical Software” and by CNR Research Contribution N. 98.01029.CT01, Italy. 1 Work carried out by INdAM grant at the Department of Mathematics, University of Bologna, Italy 1 Quaderni del Dipartimento di Matematica, Università di Modena e Reggio Emilia, n. 29, November 1999.

Upload: others

Post on 14-Jul-2020

20 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

NONLINEAR PROGRAMMING METHODS FOR

SOLVING OPTIMAL CONTROL PROBLEMS∗

Carla Durazzi1

Dipartimento di MatematicaUniversita di Bologna

Piazza di Porta San Donato 540126 – Bologna, Italia

e-mail: [email protected]

Emanuele GalliganiDipartimento di Matematica

Universita di Modena e Reggio EmiliaVia Campi 213/b

41100 – Modena, Italiae-mail: [email protected]

Abstract

This paper concerns with the problem of solving optimal control prob-lems by means of nonlinear programming methods. The technique employedto obtain a mathematical programming problem from an optimal controlproblem is explained and the Newton interior–point method, chosen for itssolution, is presented with special regard to the choice of the involved pa-rameters. An analysis of the behaviour of the method is reported on fouroptimal control problems, related to improving water quality in an aerationprocess and to the study of diffusion convection processes.

Key words: Optimal Control, Nonlinear Programming, Newton Interior–Point Method, Finite Difference Approximations.

∗This work was supported by MURST Project “Numerical Analysis: Methods and Mathe-

matical Software” and by CNR Research Contribution N. 98.01029.CT01, Italy.1Work carried out by INdAM grant at the Department of Mathematics, University of

Bologna, Italy

1

Quaderni del Dipartimento di Matematica, Università di Modena e Reggio Emilia, n. 29, November 1999.

Page 2: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

1 Introduction

Let us consider an optimal control problem as follows: given a set of ν1 ordinarydifferential equations (state equations)

y(t) = φ(y(t),u(t)) t0 ≤ t ≤ tf (1)

(the ν1–vector y(t) is the state vector and the ν2–vector u(t) is the control orinput vector), an initial state at a given time t0

y(t0) = y0 (2)

an objective cost functional

J(u(t)) = ψ(y(tf )) +

∫ tf

t0ϕ(y(τ), u(τ))dτ (3)

and a set of U of allowable piecewise continuous control vectors u(t), find a controlu∗(t) ∈ U and a corresponding trajectory y∗(t) which transfer the system fromy(t0) to y(tf ) in such a way that the functional J is minimized (or maximized).There is no reason to suppose that such a control exists. Pontryagin maximumprinciple (e.g. see [20, p. 80]) gives a necessary condition to distinguish an optimalcontrol to the other controls that transfer the system from y(t0) to y(tf ).Problems in which the dynamic system is linear and the objective function isquadratic, represent an extremely important special family of optimal controlproblems (Linear–Quadratic (LQ) optimal control problems). In this case theoptimal control can be expressed in linear feedback form solving the Riccatimatrix differential equation.Many computational methods for solving this LQ optimal control problem havebeen investigated. The approaches based on the solution of the correspondingRiccati equation turn out to be the most efficient and reliable ones (e.g. see [3],[6]).Let us consider the approach based on the possibility to transcribe an optimalcontrol problem as a nonlinear programming problem with a special structure(e.g. see [5]).The optimal control problem (1)–(3) can be transformed into a finite dimensionalmathematical programming problem.In details, we consider K + 1 points in [t0, tf ] such that t0 < t1 < ... < tK = tfand u(t) piecewise constant, that is u(i) = u(t), t ∈ [ti, ti+1), i = 0, ..., K −1. Let y(t;y0,u) be the solution of (1)–(2) where the K · ν2 vector u is u =(u(0)T ,u(1)T , ...,u(K − 1)T )T .If we set y(i) = y(ti;y0,u) and yi(t) is the solution of (1) in [ti, ti+1) correspond-ing to u(i) with the initial condition yi(ti) = y(i), then from (1)

2

Page 3: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

y(ti+1) = y(ti) +

∫ ti+1

ti

φ(y(τ),u(τ))dτ (4)

so that

y(i + 1) = y(i) +

∫ ti+1

ti

φ(yi(τ),u(i))dτ

it followsy(i + 1) = y(i) + φ(y(i), u(i))

Analogously (3) becomes

J(u) =K−1∑

i=0

ϕ(y(i), u(i)) + ψ(y(k))

obtaining the mathematical programming problem

minJ(u) (5)

y(i + 1) = y(i) + φ(y(i),u(i))y(0) = y0

(6)

Problem (5)–(6) can also be considered as a discrete–time optimal control prob-lem.When φ is linear, that is φ(y(t),u(t)) = Ay(t) + Bu(t), the solution of system(1) has the expression

y(t) = eA(t−t0)y(t0) +

∫ t

t0eA(t−τ)Bu(τ)dτ

thus the solution yi(t) of (1) in [ti, ti+1) has the form (set hi = ti+1−ti, τ ′ = τ−tiand 0 ≤ t ≤ hi)

yi(t) = eAty(i) +

∫ t

0eA(t−τ ′)Bu(ti + τ ′)dτ ′

= eAty(i) + A−1(eAt − I)Bu(i)

therefore, formula (4) has the expression

y(i + 1) = y(i) +

∫ hi

0φ(y(ti + τ ′),u(ti + τ ′))dτ ′

= y(i) +

∫ hi

0φ(yi(τ

′),u(i))dτ ′

= y(i) +

∫ hi

0(A(eAτ ′

y(i) + A−1(eAτ ′ − I)Bu(i)) + Bu(i))dτ ′

= eAhiy(i) + A−1(eAhi − I)Bu(i)

3

Page 4: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

The discretization of the continuous optimal control problem (1)–(3) can also beperformed in many other ways. The problem (1)–(3) may generate a finite dimen-sional mathematical programming problem without simultaneously giving rise toa discrete optimal control problem. For instance, this would be the case if wefound it necessary to restrict the control u(t) to a sum of Chebyshev polynomialsfor t ∈ [t0, tf ] (e.g. see [23], [13]).Since it is often required, in practice, that the state and the control vectors havephysical meaning, then equality and/or inequality constraints have to be addedto the system (6) so that problem (5)–(6) can be formulated as

minh(z) = 0g(z) ≤ 0

f(z) (7)

where z = (yT ,uT )T . Well known approaches to problem (7) are based onsequential quadratic programming (SQP) method (see ([4], [9] for recent refer-ences); in this paper, we describe the Newton interior–point method for solvingproblem (7) and we analyse the behaviour of the method on four well known dif-ferent optimal control problems related to improving water quality in an aerationprocess and to the study of diffusion convection processes.

2 Framework of the Method

Consider the nonlinear programming problem

minh(z) = 0g(z) ≤ 0

f(z) (8)

with z ∈ IRn, h(z) = (h1(z), ..., hm(z))T and g(z) = (g1(z), ..., gp(z))T . Intro-ducing the slack variables s = (s1, ..., sp) problem (8) is equivalent to

minh(z) = 0

g(z) + s = 0s ≥ 0

f(z) (9)

The Karush–Kuhn–Tucker (KKT) conditions for problem (9) are:

∇f(z) + ∇h(z)λ + ∇g(z)w = 0h(z) = 0

g(z) + s = 0SWe = 0; s ≥ 0; w ≥ 0

4

Page 5: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

with λ = (λ1, ..., λm)T , w = (w1, ..., wp)T , S = diag(s1, ...sp), W = diag(w1, ..., wp),

e = (1, ..., 1)T (p–vector), ∇f(z) indicates the gradient of f(z) and the n×m andn× p matrices ∇h(z) and ∇g(z) indicate the transpose of the jacobian matricesof h(z) and g(z).If we set,

v =

z

λ

w

s

H(v) =

[

H1(v)SWe

]

=

∇f(z) + ∇h(z)λ + ∇g(z)wh(z)

g(z) + s

SWe

then the KKT conditions become

H(v) = 0 (10)

s ≥ 0; w ≥ 0

When we solve the system (10) by Newton method, we set v(0) such that s(0) > 0and w(0) > 0 and we compute

v(k+1) = v(k) + αk∆v(k)

where ∆v(k) is the solution of the linear system

H ′(v(k))∆v = −H(v(k)) (11)

Here ∆v = (∆zT , ∆λT , ∆wT , ∆sT )T and

H ′(v) =

∇2L(z,λ,w) ∇h(z) ∇g(z) 0∇h(z)T 0 0 0∇g(z)T 0 0 I

0 0 S W

L(z,λ,w) = f(z)+λT h(z)+wT g(z) denotes the lagrangean associated with (8),∇2L(z, λ, w) = ∇2f(z) +

∑mi=1 λi∇2hi(z) +

∑pj=1 wi∇2gj(z) its hessian matrix,

∇2f(z), ∇2hi(z) and ∇2gj(z) denote the hessian matrices of f(z), hi(z) (i =1, ..., m) and gj(z) (j = 1, ..., p) respectively, and I is the identity matrix of orderp.We notice that the fourth equation of (11) is

S(k)∆w + W (k)∆s = −S(k)W (k)e

It implies that if s(k)i = 0 (or w

(k)i = 0) for an iteration k, then s

(k)i = 0 (or

w(k)i = 0) for k > k. This means that when the iterates reach the boundary of

the feasible region, they are forced to stick to the boundary.

5

Page 6: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

Let us consider the barrier method for problem (9):

minh(z) = 0

g(z) + s = 0s > 0

f(z) − ρk

p∑

i=1

lnsi (12)

with ρk > 0. The KKT conditions for (12) are

∇f(z) + ∇h(z)λ + ∇g(z)w = 0h(z) = 0

g(z) + s = 0SWe = ρke; s > 0; w > 0

If we set e = (0, ..., 0,eT )T then the KKT conditions for (12) become

H(v) = ρke (13)

s > 0; w > 0

and they can be considered as a perturbation of (10), where the perturbationappears only on the complementarity equation SWe = 0.The perturbation on the complementary equation forces the iterates to be suffi-ciently far from the boundary of the feasible region.

Let us solve the system (10) (i.e. the KKT conditions for (8)) by inexactNewton method ([7], [17, p. 95]). If we assume that σk ∈ (0, 1) is the forcingterm, that σkµke is the residual such that

‖µke‖2 ≤ ‖H(v(k))‖2 (14)

and that v(0) is interior to the feasible region, then the inexact Newton methodis expressed by

v(k+1) = v(k) + αk∆v(k) (15)

where ∆v(k) is the solution of

H ′(v(k))∆v = −H(v(k)) + σkµke (16)

On the other hand, when we solve system (13) (i.e. the KKT conditions for thek–th barrier problem (12)) by means of Newton interior–point method ([12]), we“solve inexactly” the k–th barrier problem by one iteration of Newton methodand we choose the barrier parameter ρk in order to minimize the merit function

Φ(v) = H(v)T H(v) = ‖H(v)‖22 (17)

6

Page 7: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

(with ρ0 prespecified and v(0) feasible). If we set the barrier parameter ρk = σkµk,then we state the Newton interior–point method by formulae (15) and (16) andit can be seen as an inexact Newton method (see [2], [10]).Now the problem is how to choose the parameter µk in order to respect the condi-tion (14) on the residual of inexact Newton method and to guarantee that ∆v(k)

is a descent direction for Φ(v). Furthermore, we should choose the parameter αk

in order to obtain feasible points v(k) and a global convergence to a solution.Before analysing the different choices for the parameters µk and αk, we recallstandard Newton assumptions for problem (8) or (10) (see [12]).Consider the following conditions

A1 Existence: let (z∗T ,λ∗T ,w∗T )T be a solution of (10).

A2 Smoothness: suppose ∇2f(z), ∇2hi(z) (i = 1, ..., m) and ∇2gj(z) (j =1, ..., p) be locally Lipschitz continuous at z∗.

A3 Regularity: let the gradients of the active constraints in the solution belinearly independent. That is ∇h1(z

∗), ...,∇hm(z∗),∇gr(z∗) r ∈ IA, are

linearly independent. Here IA is the set of the indices of the inequalityconstraints which are active in z∗.

A4 Second–Order Sufficient Conditions: suppose the hessian of the lagrangianL(z, λ,w) associated with (8) be positive definite on the subspace M =z | z 6= 0,∇hi(z

∗)T z = 0, i = 1, ..., m; ∇gr(z∗)T z = 0, r ∈ IA.

A5 Strict Complementarity: suppose the positiveness of the multipliers associ-ated to the active constraints in z∗. That is w∗

j − gj(z∗) > 0, j = 1, ..., p.

Suppose the conditions A1 and A2 hold: then the following statements are equiv-alent ([12]):

• Conditions A3–A5 also hold.

• The jacobian matrix H ′(v∗) is nonsingular.

Here v∗ = (z∗T , λ∗T , w∗T , s∗T )T and s∗ = −g(z∗)

3 Choice of the Parameters

In the first we consider the choice of the parameter µk at the iteration k of themethod described by equations (16) and (15). As seen before, this parameter hasto satisfy the criterium of inexact Newton method (14) and has to minimize themerit function Φ(v) defined in (17), that is µk has to satisfy the descent criteriumfor Φ(v)

∇Φ(v(k))T ∆v(k) ≤ 0

7

Page 8: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

where ∆v(k) is the solution of (15).From the definition of Φ(v) (17), from the formula (16) for ∆v = ∆v(k) and since

H(v(k))T e = s(k)T w(k), we have that

∇Φ(v(k))T ∆v(k) = −2‖H(v(k))‖22 + 2σkµk(s

(k)T w(k))

In fact,

∇Φ(v(k))T ∆v(k) = [2∇H(v(k))H(v(k))]T ∆v(k) = 2H(v(k))T H ′(v(k))∆v(k)

= 2H(v(k))T [−H(v(k)) + σkµke]

= −2‖H(v(k))‖22 + 2σkµkH(v(k))T e

We notice that, if

µk ≤ ‖H(v(k))‖22

s(k)T w(k)≤ ‖H(v(k))‖2

2

σk(s(k)T w(k))(18)

then ∇Φ(v(k))T ∆v(k) ≤ 0. Two different choices of µk that satisfies (18) are theone in [12]

µ(1)k =

s(k)T w(k)

p(19)

and from formula (14) with the equality (see [10])

µ(2)k =

‖H(v(k))‖2√p

(20)

We have also thatµ

(1)k ≤ µ

(2)k (21)

In order to prove that the values (19) and (20) of µk satisfy (18) and that in-equality (21) holds, we use the following relations:

s(k)T w(k)

p=

‖S(k)W (k)e‖1

p≤ ‖S(k)W (k)e‖2√

p≤ ‖S(k)W (k)e‖1√

p=

s(k)T w(k)

√p

and‖S(k)W (k)e‖2 ≤ ‖H(v(k))‖2

In fact,

µ(1)k =

s(k)T w(k)

p≤ (

√p‖S(k)W (k)e‖2)

2

p(s(k)T w(k))≤ ‖H(v(k))‖2

2

(s(k)T w(k))

and

µ(2)k =

‖H(v(k))‖2√p

=‖H(v(k))‖2

2√p‖H(v(k))‖2

≤ ‖H(v(k))‖22√

p‖S(k)W (k)e‖2

≤ ‖H(v(k))‖22

(s(k)T w(k))

8

Page 9: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

finally, we have

(s(k)T w(k))

p≤ ‖S(k)W (k)e‖2√

p≤ ‖H(v(k))‖2√

p

The choice µ(1)k is strictly connected with the idea of the adherence to the central

path which is the basis of interior–point methods. Sometimes it happens that the

value of µ(1)k is “too small” when we are far away from a solution. It implies that

the system (13) is “too close” to the system (10) and it can produce stagnation ofthe current solution on the boundary of the feasible region as seen in the previoussection.In this case we propose to use other values for µk, for instance the value µ

(2)k or

any value between µ(1)k and µ

(2)k , to solve “more inexactly” system (10) and to

obtain a different descent direction; we call “safeguards” these values, that areintended to prevent the forcing terms (if the method is seen as inexact Newtonmethod) or the barrier terms (if the method is seen as Newton interior–pointmethod) from becoming too small too quickly.

Moreover, we observe that, if µk belongs to the range [µ(1)k , µ

(2)k ], formula (14) of

inexact Newton method is satisfied ([10]).The choice of the parameter αk has to guarantee the feasibility and the global

convergence of the method.In the case of feasibility, we should choice αk in such a way that v(k) belongs tothe feasible region (i.e. s(k) > 0, w(k) > 0), the point v(k+1) = v(k) + αk∆v(k)

belongs to the feasible region s(k+1) > 0, w(k+1) > 0.In order to satisfy this condition, following [12], let us define two functions of α

ϕ(k)1 (α) = min

i=1,...,p(S(k)(α)W (k)(α)e) − γkτ1(

s(k)(α)Tw(k)(α)

p)

ϕ(k)2 (α) = s(k)(α)

Tw(k)(α) − γkτ2‖H1(v

(k)(α))‖2

where

τ1 =mini=1,...,p (S(0)W (0)e)

(s(0)T w(0)

p )τ2 =

s(0)T w(0)

‖H1(v(0))‖2γk ∈ [

1

2, 1)

and

v(k)(α) =

x(k)(α)λ(k)(α)w(k)(α)s(k)(α)

=

x(k)

λ(k)

w(k)

s(k)

+ α

∆x(k)

∆λ(k)

∆w(k)

∆s(k)

= v(k) + α∆v(k)

9

Page 10: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

with s(0) > 0, w(0) > 0 that imply τ1 > 0 and τ2 > 0.Furthermore, let us consider the domain

Ω(ε) =

v| 0 < ε ≤ Φ(v) ≤ Φ(v(0));

mini=1,...,p(SWe) ≥ τ12 (s

T wp )

sT w ≥ τ12 ‖H1(v)‖2

Let α(1)k and α

(2)k be in (0, 1] such that

ϕ(k)1 (α) ≥ 0 ∀α ∈ (0, α

(1)k ] and ϕ

(k)2 (α) ≥ 0 ∀α ∈ (0, α

(2)k ]

These conditions imply

mini=1,...,p

(S(k)(α)W (k)(α)e) ≥ γkτ1(s(k)(α)

Tw(k)(α)

p) (22)

ands(k)(α)

Tw(k)(α) ≥ γkτ2‖H1(v

(k)(α))‖2 (23)

This means that condition (22) keeps the iterates v(k) sufficiently far from theboundary of the feasible region and condition (23) obliges the sequence

s(k)(α)Tw(k)(α) to converge to zero slower than ‖H1(v

(k)(α))‖2.Regarding to (22), in details, let v(k) ∈ Ω(ε), since

(s(k)T w(k))2 ≥ ‖S(k)W (k)e‖22

and for (23)

s(k)T w(k) ≥ γkτ2‖H1(v(k))‖2 ⇒ (s(k)T w(k))2 ≥ [γkτ2‖H1(v

(k))‖2]2

then we have

2(s(k)T w(k))2 ≥ ‖S(k)W (k)e‖22 + [γkτ2‖H1(v

(k))‖2]2

s(k)T w(k) ≥ 1√2

‖S(k)W (k)e‖22 + [γkτ2‖H1(v(k))‖2]2

≥ min(1,1

2τ2)

‖S(k)W (k)e‖22 + ‖H1(v(k))‖2

2

= min(1,1

2τ2)‖H(v(k))‖2

If H(v(k)) 6= 0 (i.e. ‖H(v(k))‖2 6= 0, or Φ(v(k)) ≥ ε) then s(k)T w(k) > 0. From(22)

s(k)i w

(k)i ≥ γkτ1

ps(k)T w(k) > 0 i = 1, ..., p

thus, if s(k) and w(k) are bounded, we have s(k)i , w

(k)i > 0.

10

Page 11: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

In order to satisfy both conditions (22) and (23), the parameter αk is chosen as

the minimum between α(1)k and α

(2)k .

About the practical computation of α(1)k and α

(2)k we can proceed as follows (see

[10, Theor. 3.1, §4]):

α(1)k = σkµk(1 − τ1γk)/L

(here L = maxi=1,...,p |∆s(k)i ∆w

(k)i − (τ1γk/p)∆s(k)T ∆w(k)| ) and

α(2)k = σkµkp/|∆w(k)T ∆s(k)|

when the objective is quadratic, otherwise we choose α(2)k = α

(1)k , check if this

choice satisfies (23), else we moltiply α(2)k , at most three times, by a factor (0.8)i,

i = 1, 2, 3, to satisfy (23). If it does not happen, we set α(2)k = α

(1)k . Thus we call

αk = min(α(1)k , α

(2)k , 1)

and we determine the value αk from αk by using backtracking line search strate-gies as that of Armijo and Goldstein (e.g. see [8], [18]) or that of Eisenstat andWalker ([11]).We recall here, both the backtracking procedures in pseudocode.In both the cases, we set αk = αk , v(k) = αk∆v(k) , θ ∈ (0, 1) , β ∈ (0, 1

2 ] andσk ∈ (0, 1).For Armijo and Goldstein technique in pseudocode we have

while (Φ(v(k) + v(k)) > Φ(v(k)) + αkβΦ′(v(k))) do∣

αk ← θαk

v(k) ← αk∆v(k)

end

v(k+1) ← v(k) + v(k)

(24)

with

Φ′(v(k)) =d

dαΦ(v(k)(α))|α=0

The “while” condition can be stated as to find αk = θlαk , where l is the smallestnonnegative integer such that

Φ(v(k)(αk)) ≤ Φ(v(k)) + αkβΦ′(v(k)) (25)

then v(k+1) = v(k)(αk).In details, we have:

d

dαΦ(v(k)(α)) =

d

dα‖H(v(k) + α∆v(k))‖2

2

= 2H(v(k) + α∆v(k))T H ′(v(k) + α∆v(k))∆v(k)

= 2H(v(k)(α))T H ′(v(k)(α))∆v(k)

11

Page 12: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

thus

Φ′(v(k)) = 2H(v(k))T H ′(v(k))∆v(k)

= 2H(v(k))T [−H(v(k)) + σkµke]

= −2Φ(v(k)) + 2σkµk [ (H1(v(k)))T (S(k)W (k)e)T ]T

[

0e

]

= −2Φ(v(k)) + 2σkµks(k)T w(k)

since from (18)

µk ≤ ‖H(v(k))‖22

s(k)T w(k)=

Φ(v(k))

s(k)T w(k)

we haveΦ′(v(k)) ≤ −2(1 − σk)Φ(v(k)) < 0

and the condition (25) with the bound for Φ′(v(k)) computed above, implies

Φ(v(k+1)) ≤ [1 − 2αkβ(1 − σk)]Φ(v(k)) (26)

or‖H(v(k+1))‖2 ≤

1 − 2αkβ(1 − σk)‖H(v(k))‖2

Because of the inequality

[1 − 2αkβ(1 − σk)] < [1 − αkβ(1 − σk)]2 (27)

we can also obtain

Φ(v(k+1)) ≤ [1 − αkβ(1 − σk)]2Φ(v(k)) (28)

that suggests to formulate the Eisenstat and Walker backtracking technique asfollows

while (‖H(v(k) + v(k))‖2 > (1 − αkβ(1 − σk))‖H(v(k))‖2) do∣

αk ← θαk

v(k) ← αk∆v(k)

end

v(k+1) ← v(k) + v(k)

(29)

We note that if αk is computed by the Armijo and Goldstein technique andcondition (18) holds, then condition (26) is satisfied and then (from (27)) αk alsosatisfies Eisenstat and Walker backtracking condition (28) (see [11, Prop. 2.1]).

12

Page 13: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

4 A Global Algorithm

A global interior–point (GIP) algorithm for problem (8) can be stated as follows:

Set:

v(0) =

z(0)

λ(0)

w(0)

s(0)

with s(0) > 0, w(0) > 0

θ ∈ (0, 1); β ∈ (0, 12 ] (backtracking parameters)

γ−1 ∈ [12 , 1) (parameter for αk)

Φ(v(0)) = ‖H(v(0))‖22

For k = 0, 1, ... until Φ(v(k)) ≤ εexit

• for some µk ∈ [s(k)T w(k)

p , ‖H(v(k))‖2√p ]

σk ∈ (0, 1)

• ∆v(k) solution of H ′(v(k))∆v = −H(v(k)) + σkµke

• γk ∈ [12 , γk−1]; αk = min(α(1)k , α

(2)k , 1)

• αk = θlαk computed by a backtracking strategy ((24) or (29))

• v(k+1) = v(k) + αk∆v(k)

end

The global convergence of the algorithm is obtained under the following assump-tions which are also stated in [12].

(a) In the set Ω(0), the functions f(z), hi(z), (i = 1, ..., m) and gj(z), (j =1, ..., p) are twice continuously differentiable, H ′

1(v) is Lipschitz continuousand hi(x), (i = 1, ..., m) are linearly independent.

(b) The sequence z(k) is bounded.

13

Page 14: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

(c) The matrix ∇2L + ∇g(z)S−1W∇g(z)T is invertible for v in any com-pact set of Ω(0), where s > 0. Here ∇2L = ∇2f(z) +

∑mi=1 λi∇2hi(z) +

∑pj=1 wi∇2gj(z).

(d) Let I0s = i | 1 ≤ i ≤ p, lim infk→∞ s

(k)i = 0, then the gradients

∇h1(z(k)), ...,∇hm(z(k)),∇gr(z

(k)) r ∈ I0s, are linearly independent for k

“sufficiently” large (i.e., if g(z(k)) − s(k) → 0, for k → ∞, then assumption(d) is equivalent to the regularity assumption A3).

It is possible to show the following theorems.Theorem 1. Under the assumptions (a)–(d) and if v(k) ∈ Ω(ε), ε > 0, then

• v(k) bounded above (Lemma 6.1 in [12])

• (s(k), w(k)) is componentwise bounded away from zero

(i.e. lim infk→∞(s(k)i , w

(k)i ) > 0), (Lemma 6.1 in [12]).

• H ′(v(k))(−1) is bounded (Lemma 6.2 in [12]).

• ∆v(k) is bounded (Corollary 6.1 in [12]).

Theorem 2. Under the assumptions (a)–(d) and if v(k) ∈ Ω(ε), ε > 0, σkbounded away from zero (i.e. lim infk→∞ σk > 0) and µ

(1)k ≤ µk ≤ µ

(2)k then

• αk is bounded away from zero (i.e. lim infk→∞ αk > 0), (Theorem 3.1 in[10]).

Corollary Under the assumptions (a)–(d) and if v(k) ∈ Ω(ε), ε > 0, σk boundedaway from zero and one and αk bounded away from zero ( αk ≤ 1 for definition ofαk), then from the “while” condition in (24) or in (29), we have that Φ(v(k)) (i.e.‖H(v(k))‖2) is a bounded, monotone nonincreasing sequence then it convergesin IR.Theorem 3. ([10, Theor. 3.2]) Let v(k) be generated by the global algorithmwith εexit = 0 and backtracking technique (24); assume that σk is bounded awayfrom zero and one and that ∇Φ(v) is Lipschitz continuous. Then the sequenceH(v(k)) converges to zero (for k → ∞). Furthermore any limit point v∗ satisfiesthe KKT conditions for problem (8).The same theorem holds when the backtracking strategy is (29); The hypothesison the Lipschitz continuity of ∇Φ(v) has to be dropped ([10, Theor. 3.6]).Theorem 4. ([10, Theor. 3.3, Theor. 3.7]) If hypotheses in Theorem 3 aresatisfied and v∗ is a limit point of v(k) such that H ′(v∗) is invertible, then thesequence v(k) converges to v∗ (for k → ∞) and H(v∗) = 0.

14

Page 15: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

5 Computational Experience

In this section, four example problems are included to demonstrate the effective-ness of the method presented in this paper. The first example is a well knownoptimal control problem related to improving water quality by means of in–streamaeration process. The other examples are optimal control problems with linearand weakly nonlinear state equations related to the study of diffusion–convectionprocesses.These classical problems are sufficient to show how much the efficiency of themethod can be increased when we make different choices of the descent directionin the Newton equation, safeguarding the method by a breakdown state andretaining fast local convergence in the final phase of the iteration.

5.1 Optimal In–Stream Aeration

The concentration of dissolved oxygen (DO) in a river has come to be accepted asa criterion of water quality. In–water tests have shown that artificial aeration bymeans of in–stream mechanical or diffuser type aerators can be an economicallyattractive supplent or alternative to advanced wastewater treatment as a meansof improving water quality. (Certain sources of pollution such as agriculturaland storm runoff cannot reasonably be handled by treatment plants, and an in–stream process – such as chemical treatment or supplemental artificial aeration– is the only possible alternative). Once in–stream aeration has been acceptedas a means of improving water quality, there is then the question of when, whereand how much aeration is necessary to achieve the maximum increase in the DOlevel at minimum cost. This is a typical problem of optimal control of distributedparameter systems, in which the system to be controlled is described by a diffusionequation (Streeter–Phelps equation [21]), see for example [16]:

∂C

∂t=

1

A

∂x

(

AE∂C

∂x

)

− V∂C

∂x+ K3(CS − C) + U − K1L

with the initial condition

C(x, 0) = C0(x)

and boundary conditions

C(0, t) = ϕ1(t) C(xf , t) = ϕ2(t)

wherexf= estuary length (ft).C(x, t)= Dissolved Oxygen (DO) concentration (mg/l).

15

Page 16: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

CS(x, t)= DO saturation value (mg/l).A(x, t)= estuary cross section area (sq ft).E(x, t)= tidal dispersion (sq ft /day).V (x)= time averaged velocity of the river (ft/day).K1= Biochemical Oxygen Demand (BOD) oxidation rate (1/day).K3: atmospheric aeration rate (1/day).L(x, t): BOD concentration (mg/l).U(x, t): aeration rate ((mg/l)/day).

The Biochemical Oxygen Demand concentration, as a function of effluentinput, obeys a similar equation

∂L

∂t=

1

A

∂x

(

AE∂L

∂x

)

− V∂L

∂x− K1L + S

The Dissolved Oxygen concentration C(x, t) must satisfy a constraint of theform (state–constraint)

C(x, t) ≤ Cmax 0 ≤ x ≤ xf , 0 ≤ t ≤ tf (30)

In the special case of a stream (no tidal action), assuming the cross sectional areaconstant, the model reduces to

∂C

∂t= −V

∂C

∂x− K3C − K1L + K3CS + U (31)

C(x, 0) = C0(x) (32)

C(0, t) = ϕ1(t) (33)

and

∂L

∂t= −V

∂L

∂x− K1L + S

where S(x, t) = effluent discharge rate ((mg/l)/day).In this paper we consider the following equation for the BOD concentration (J1

is a constant)

L(x, t) =

J1V e−(K1/V )x x < V t

0 x ≥ V t

There are many relevant criterion functionals and the most popular one is themean square. This functional has the advantage that the optimal control problemis a feedback control. The objective function to be minimized is therefore:

16

Page 17: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

0

0.2

0.4

0.6

0.8

0.20.4

0.60.8

1

0

5

10

15

x Axis

t Axis

L(x,t)

Figure 1: Distribution of BOD.

J(U) =

∫ tf

0

∫ xf

0D1(x) (C − CS)2 dxdt + ρ

∫ tf

0

∫ lf

l0D2(x)U2dxdt (34)

where the region of control is [l0, lf ] ⊆ [0, xf ] and tf is the time duration of thecontrol.

Minimizing this objective function over U(x, t) will tend to drive the DOlevel towards the saturation value, while penalizing large control inputs. Thenon negative function D1(x) (dimensionless) and the positive function D2(x) (di-mensionless) are appropriate weighting functions; ρ is a scalar parameter (day2).

The interval 0 ≤ x ≤ xf is divided into N subintervals each of width h, sothat N ·h = xf . The space derivative in the differential equation (31) is replacedby the difference approximant

∂C

∂x= (C(x, t) − C(x − h, t)) /h + O(h) (35)

Equation (31) with (35), applied to the mesh points xi = i · h, i = 1, . . . , N ,produces a system of N first order ordinary differential equations of the form

y(t) = Ay(t) + q(t) + u(t) (36)

wherey(t) is the approximation to the vector solution (C(x1, t), C(x2, t), . . . , C(xN , t))T ;u(t) = (U(x1, t), U(x2, t), . . . , U(xN , t))T ;

q(t) = ((

V1h ϕ1(t) + K3CS(x1, t) − K1L(x1, t)

)

, (K3CS(x2, t) − K1L(x2, t)),

. . . , (K3CS(xN , t) − K1L(xN , t)))T ;

17

Page 18: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

A =

−(

V1h + K3

)

V2h −

(

V2h + K3

)

. . .. . .VNh −

(

VNh + K3

)

with Vi = V (xi), i = 1, 2, . . . , N .The vector solution y(t) of the matrix differential equation (36) is subject to

the initial vector equation

y(0) = (C0(x1), C0(x2), . . . , C0(xN ))T (37)

The matrix A is a strictly diagonally dominant matrix, then it is non singularand the eigenvalues are λi = −(Vi

h +K3) < 0, i = 1, 2, . . . N . Thus, the continuousdynamic system (36) is asymptotically stable [19, p. 65].

Suppose that the fixed–time process (36)–(37) is of K steps duration. Then,the interval 0 ≤ t ≤ tf is divided into K subintervals each of width ∆t, so thatK · ∆t = tf ; we assume that the controls are piecewise constant (i.e. u(t) = uj

for t ∈ [tj , tj+1), j = 0, 1, . . . , K − 1). Using the forward difference method forsolving the matrix differential equation (36), we obtain at the time t = (j + 1)∆tfor any time–level j = 0, 1, . . . , K − 1 the following difference equations

yj+1 − yj

∆t= Ayj + q(tj) + uj

oryj+1 = (I + ∆tA)yj + ∆t q(tj) + ∆t uj (38)

for j = 0, 1, . . . , K − 1, with y0 = y(0).Here yj is the approximation to y(t) for

The eigenvalues of the matrix Ω = I + ∆t A are 1 − ∆t (Vi/h + K3), i =1, . . . , N . Therefore, for ∆t < 2/(V /h + K3) with V = max1≤i≤NVi, thediscrete dynamic system (38) is asymptotically stable [19, p. 71].Set

z =

y1

y2...

yK

u0

u1...

uK−1

, q =

∆t q(t0) + Ωy(0)∆t q(t1)

...∆t q(tK−1)

and

18

Page 19: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

R =

I | −∆tI

−Ω I | . . .. . .

. . . | . . .

−Ω I | −∆tI

then equation (38) can be written in the form

Rz = q (39)

An analogous discrete form for the state–constraints (30) is

Gz ≤ Cmaxe (40)

where G = [I 0] and e = (1 . . . 1)T .For evaluating the double integral in (34) we use the trapezoidal rule to integratewith respect to the space variable, assuming that [l0, lf ] = [x1, xN ], so we obtain

J(u(t)) =

∫ tf

0

1

2h[D1(x0)(ϕ1(t) − CS(x0, t))

2 +

+2

N−1∑

i=1

D1(xi)(C(xi, t) − CS(xi, t))2 + D1(xN )(C(xN , t) − CS(xN , t))2]dt +

∫ tf

0

1

2h[D2(x1)U

2(x1, t) +

+2N−1∑

i=2

D2(xi)U2(xi, t) + D2(xN )U2(xN , t)]dt

then, the rectangular rule to integrate with respect to the time variable and wehave

J =1

2h∆t

K−1∑

j=0

[D1(x0)(ϕ1(tj) − CS(x0, tj))2 +

+N−1∑

i=1

2D1(xi)(C(xi, tj) − CS(xi, tj))2 + D1(xN )(C(xN , tj) − CS(xN , tj))

2] +

+1

2ρh∆t

K−1∑

j=0

[D2(x1)U2(x1, tj) + 2

N−1∑

i=2

D2(xi)U(xi, tj)2 + D2(xN )U2(xN , tj)]

Thus

19

Page 20: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

J =1

2h∆t

K−1∑

j=1

[2D1(x1)(C2(x1, tj) − 2C(x1, tj)CS(x1, tj)) + ...

... + 2D1(xN−1)(C2(xN−1, tj) − 2C(xN−1, tj)CS(xN−1, tj)) +

+D1(xN )(C2(xN , tj) − 2C(xN , tj)CS(xN , tj))] +

+1

2ρh∆t

K−1∑

j=0

[D2(x1)U2(x1, tj) + 2

N−1∑

i=2

D2(xi)U2(xi, tj) + D2(xN )U2(xN , tj)] + γ

(here γ is a constant). If we define

D1 =

2D1(x1). . .

2D1(xN−1)D1(xN )

D2 =

D2(x1). . .

2D2(xN−1)D2(xN )

r =

h∆tD1cS1

h∆tD1cS2...

h∆t D1cS(K−1)

0...0

with cSj = (CS(x1, tj), CS(x2, tj), . . . , CS(xN , tj))T , and

Q =

(

Qy 00 ρQu

)

where

Qy =

h∆tD1

. . .

h∆tD1

0

Qu =

h∆tD2

. . .. . .

h∆tD2

we have that the optimal control problem described by formulae (30)–(33) and(34) has the form of the following quadratic programming problem

minimize f(z) =1

2zT Qz − rT z (41)

20

Page 21: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

subject to Rz − q = 0

Gz − Cmaxe ≤ 0

The matrix R has full row rank K · N . The null spaces of Q and R have only

the zero vector in common, i.e. the matrix

(

QR

)

has maximum rank 2K · N .

Indeed:

rank

(

QR

)

= rank

Qy 00 Qu

R1 R2

= rank

Qy 0R1 R2

0 Qu

= rank

(

Qy RT1 0

0 RT2 Qu

)

Since Qu is a symmetric positive definite matrix and rank (Qy RT1 ) = rank R1 =

K ·N , the matrix

(

Qy RT1 0

0 RT2 Qu

)

has maximum rank 2K ·N , then the matrix(

Q RT

R 0

)

is nonsingular.

Therefore, if there exists a feasible solution to the quadratic programmingproblem (41), then there exists a unique optimal solution [5, §§6.2, 6.3].

In test–problem # 1 the following data are given:

xf = 5 miles tf= 4 daysV (x) ≡ V = 1 mile/day J1= 15K1 = 0.16 day−1 K3 = 0.66 day−1

C0(x) = 6 mg/l CS(x, t) = 6 mg/lϕ1(t) = 6 mg/l Cmax(x) = 7 mg/lD1(x) = 1 D2(x) = 1ρ is varying from 0.1 to 10

We chose:N = 20, h = 5/20 mile = 1/4 mileK = 20, ∆t = 4/20 day = 1/5 day

With these parameters the condition ∆t < 2/(

V /h + K3)

is satisfied.At each iteration of the Newton method a system of 5 · 20 · 20 = 2000 linearequations must be solved.

5.2 Diffusion Convection Processes

A typical “diffusion–convection” process is obtained when a suspended material(effluent, sediment, etc.) is carried along (“convected”) by a flow of fluid while at

21

Page 22: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

the same time its concentration is being attenuated (“diffused”) within the flow.The equation describing this process, written for brevity in its one–dimensionalform, is

Ψt = DΨxx − V Ψx (42)

where Ψ(x, t) describes the concentration of a suspension convected with velocityV and diffusing according to the “diffusion coefficient” D. Of course equation (42)greatly oversimplifies the physical realities of turbulent flow and, in particular,practical difficulty attaches to the measurement of the number D. A usefulmeasure of the degree of “convectiveness” in a problem is the dimensionless Pecletnumber Pe = V ·x/D, where x is some reference distance. In a numerical contexta mesh step size h is associated with a “cell Peclet number” Pe = V · h/D.

In general, we are concerned with a diffusion–convection process which isdescribed by a differential equation of the form:

Ψt = aΨxx + bΨx − cΨ + d + σU (x, t) ∈ [0, 1] × [0, 1] (43)

where Ψ(x, t) is a function of the arguments x (space) and t (time) which charac-terizes the state of the controlled system and U(x, t) is a function which charac-terizes the control actions of the system. The parameters a, b, c are known andconstant with a > 0, c ≥ 0; σ is a constant or a given function of the argumentΨ. The function d is the source term; it may be a function of Ψ(x, t), for exampled(x, t) = x cos

(

π2 x

)

e−t + 3eΨ(x,t).The solution of (43) is usually discussed with respect to the initial condition

Ψ(x, 0) = Ψ0(x) (44)

and the boundary conditions

Ψ(0, t) = g0(t) Ψ(1, t) = g1(t) (45)

where Ψ0(x), g0(x), g1(x) are given functions with Ψ0(0) = g0(0), Ψ0(1) = g1(0).To obtain finite difference approximations of the diffusion–convection problem

(43)–(45), we discretize first only the spatial variable x, leaving the time variablet continuous. The interval 0 ≤ x ≤ 1 is divided into N subintervals each of widthh, so that N · h = 1. The space derivatives in the differential equation (43) arereplaced by the central difference approximants

Ψxx = (Ψ(x − h, t) − 2Ψ(x, t) + Ψ(x + h, t))/h2 + O(h2) (46)

Ψx = (Ψ(x + h, t) − Ψ(x − h, t))/(2h) + O(h2) (47)

22

Page 23: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

Equation (43) with (46), (47), applied to the mesh points xi = i·h, i = 1, . . . N−1,produces a system of N − 1 first order ordinary differential equations of the form

y(t) = Ay(t) + q(t) + Bu(t) (48)

wherey(t) is the approximation to the vector solution (Ψ(x1, t),Ψ(x2, t), . . . ,Ψ(xN−1, t))

T ;

A =

−(

2ah2 + c

) (

ah2 + b

2h

)

(

ah2 − b

2h

)

−(

2ah2 + c

) (

ah2 + b

2h

)

. . .. . .

. . .. . .

. . .(

ah2 + b

2h

)

(

ah2 − b

2h

)

−(

2ah2 + c

)

u(t) = (U(x1, t), U(x2, t), . . . , U(xN−1, t))T ;

q(t) =((

d(x1, t) +(

ah2 − b

2h

)

g0(t))

, d(x2, t), . . . , d(xN−2, t),(

d(xN−1, t) +(

ah2 + b

2h

)

g1(t)))T

andB = diagσ(y1(t)), σ(y2(t)), . . . , σ(yN−1(t))

The vector solution y(t) of the matrix differential equation (48) is subject to theinitial vector condition

y(0) = (Ψ0(x1), Ψ0(x2), . . . , Ψ0(xN−1))T (49)

For each h such that

h < 2a/|b| (50)

the tridiagonal matrix A is irreducibly diagonally dominant [22, p. 23] and es-sentially positive [22, p. 257]. Thus, the matrix A is non singular and anyeigenvalue λi (i = 1, . . . N − 1) of A is different from zero. Besides, the matrixA has a real simple eigenvalue λ1 such that the associated eigenvector z1 is pos-itive and Re(λi) < λ1 for any other eigenvalue λi of A (i = 2, . . . N − 1) [22, p.258]. Now, the matrix −A is an M–matrix with −A−1 > 0 [22, p. 85]. FromAz1 = λ1z1 with z1 > 0, it follows that − 1

λ1z1 = −A−1z1 > 0. Thus, λ1 < 0.

Since Re(λi) < λ1 < 0 (i = 2, . . . N − 1), we have the result that, if the matrix Bhas constant entries, the continuous dynamic system (48) is asymptotically stable

[19, p. 65].

23

Page 24: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

Suppose that the fixed–time process (48)–(49) is of K steps duration. Then,the interval 0 ≤ t ≤ 1 is divided into K subintervals each of width ∆t, so thatK ·∆t = 1; we assume that the controls are piecewise constant (i.e. u(t) = uj fort ∈ (tj , tj+1], j = 0, . . . ,K−1). Using the backward difference implicit method forsolving the matrix differential equation (48), we obtain at the time t = (j+1) ·∆tfor any time–level j = 0, . . . , K − 1 the following difference equations

yj+1 − yj

∆t= Ayj+1 + qj+1 + Buj

or

(I − ∆t A)yj+1 = yj + ∆t qj+1 + ∆tBuj (51)

where B is the (N − 1) × (N − 1) diagonal matrix

B = diag σ(y1j), σ(y2j), . . . , σ(y(N−1)j)

Here, yj is the approximation to the vector (y1(tj), y2(tj), . . . , yN−1(tj))T for

j = 0, . . . , K − 1, with y0 = y(0).Since −A is an M–matrix, the matrix Ω = I − ∆tA is an M–matrix with

(I−∆tA)−1 ≤ −(∆tA)−1 [19, p. 109]. The eigenvalues of the matrix (I−∆tA)−1

are (1−∆t λi)−1. Since Re(λi) < 0, i = 1, . . . , N − 1, the real part of (1−∆t λi)

is greater than unity for all ∆t > 0. Then the discrete dynamic system (51) isasymptotically stable [19, p. 71].

Set z =

y1

y2...

yK

u0

u1...

uK−1

, q =

∆t q1 + y(0)∆t q2

...∆t qK

and

R =

Ω | −∆t B

−I Ω | . . .. . .

. . . | . . .

−I Ω | −∆tB

then equations (51) can be written in the form

Rz = q (52)

24

Page 25: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

An analogous discrete form for the state–constraints (55) is

Gz ≤ Ψmaxe (53)

where G = [I 0] and e = (1 . . . 1)T .We now wish to control the system (43)–(45) in such a way that the objective

function

J(u) =

∫ 1

0

∫ 1

0

(

Ψ2(x, t) + ρU2(x, t))

dxdt +

∫ 1

0Ψ2(x, 1)dx (54)

is minimized (ρ > 0) with the state–constraint

Ψ(x, t) ≤ Ψmax 0 ≤ x ≤ 1, 0 ≤ t ≤ 1 (55)

For evaluating the double integral in (54), we use the rectangular rule to integraterespect to the space variable and, we assume U(x0, t) = 0 ( t ∈ [0, 1]), so that weobtain

J(u(t)) =

∫ 1

0h

N−1∑

i=0

[Ψ2(xi, t) + ρU2(xi, t)]dt +

+hN−1∑

i=0

Ψ2(xi, 1)

then, using again the rectangular rule to integrate respect to the time variable,we have

J = h∆tK−1∑

j=0

[Ψ2(x0, tj) + ρU2(x0, tj) +N−1∑

i=1

(Ψ2(xi, tj) +

+ρU2(xi, tj))] + hΨ2(x0, tK) + hN−1∑

i=1

Ψ2(xi, tK)

= h∆t[K−1∑

j=1

N−1∑

i=1

Ψ2(xi, tj) +K−1∑

j=0

N−1∑

i=1

ρU2(xi, tj)] +

+hN−1∑

i=1

Ψ2(xi, tK) + γ

(here γ is a constant). If we define

Q =

(

Qy 00 ρQu

)

25

Page 26: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

where

Qy =

2h∆t I. . .

2h∆t I2hI

Qu =

2h∆t I. . .

. . .

2h∆t I

we have that the optimal control problem described by formulae (54), (43)–(45)and (55) has the form of the following nonlinear programming problem

minimize f(z) =1

2zT Qz (56)

subject to Rz − q = 0

Gz − Ψmaxe ≤ 0

At each iteration of the Newton method a system of = 5 · K · (N − 1) linearequations must be solved.

In test–problems, the following data are given:# 2 K = 6 N = 41 a = 1 b = 70 c = 8

K = 10 N = 41 a = 1 b = 70 c = 12σ constant d(x, t) independent on Ψ(x, t)

# 3 K = 6 N = 41 a = 1 b = 1 c = 12

σ constant d(x, t) = ν(x, t) − δ expΨ(x,t)

# 4 K = 10 N = 41 a = 1 b = 1 c = 12σ constant d(x, t) = ν(x, t) − δΨ2(x, t)

With these choices, condition (50) is satisfied.For test–problems # 2 – # 4, we always set Ψmax = 2, ρ = 0.5 and Ψ0(x) =xcos

(

π2 x

)

.

5.3 Numerical Results

In this section we report the numerical results obatined on test–problems #1–#4 by the (GIP) Algorithm implemented in Fortran code (double precision) andcarried out on SUN Sparc Station Ultra 30.

The perturbed Newton equation is solved by the routines in [1] and we alwaysuse the Armijo and Goldstein condition for backtracking. In the following, the

vector of the unknowns is v = (yT , uT ,λT , wT , sT )T and we denote with µ(1)k =

s(k)Tw(k)/p, µ

(2)k = ‖H(v(k))‖2/

√p and µ

(M)k a value between µ

(1)k and µ

(2)k .

26

Page 27: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

We choose the following values for the parameters: ϑ = 0.5, β = 10−4,

σk = min(

0.4, 100 · s(k)Tw(k)

)

and we use an approximation for the steplength

αk (see §3). Moreover in tables we adopt the following notationsdp: dimension of the problem.v(0): starting point = (y(0)T

, u(0)T,λ(0)T

, w(0)T, s(0)T

)T . We consider twopossibilities for v(0), v1 = (eT , eT ,eT ,eT , eT )T and v2 = (eT ,eT , eT , 0.1 ·eT , 0.1 ·eT )T , where e = (1, . . . , 1)T .

H0: ‖H(v(0))‖2.it: number of iterations to obtain ‖H‖2 < 10−8. The number in the square

brackets represents the iteration k at which the steplength αk becomes one.s.o.: order of the step in the first iterations.In order to have a solution to compare with the one computed by (GIP), we

solve Problem # 1 and # 2 without the inequality contraints, using the routinesin [1] to obtain the solution z = (yT , uT )T ; this solution also enable us to choosea suitable value for Cmax (or Ψmax). Then, we solve Problem # 1 and # 2(with the equality and inequality constraints) by (GIP), obtaining the solutionz = (yT , uT )T . The last columns in Tables 1 and 2 gives the absolute error forstate and control (‖z − z‖∞).

Table 1: test–problem # 1

ρ v(0) H0 it it s.o. s.o. ECS ECS

(µ(1)k ) (µ

(2)k ) (µ

(1)k ) (µ

(2)k ) (µ

(1)k ) (µ

(2)k )

0.1 v1 1.086D+2 17 [3] 19 [2] 1D–1 1D–1 1D–8 1D–10v2 1.229D+2 42 [34] 22 [3] 1D–2 1D–1 1D–11 1D–9

1 v1 1.086D+2 19 [5] 19 [2] 1D–1 1D–1 1D–8 1D–9v2 1.229D+2 72 [63] 22 [3] 3D–3 1D–2 1D–9 1D–9

10 v1 1.096D+2 22 [8] 19 [2] 1D–2 1D–1 1D–10 1D–10v2 1.238D+2 106 [97] 22 [3] 1D–4 1D–2 1D–10 1D–13

Table 2

# dp v(0) H0 it it s.o. s.o. ESC

(µ(1)k ) (µ

(2)k ) (µ

(1)k ) (µ

(2)k ) (µ

(1)k )

2 1200 v1 1.794D+3 17 [4] 24 [3] 1D–1 1D–1 1D–10v2 1.792D+3 76 [68] 26 [5] 1D–3 1D–2 1D–12

2 2000 v1 1.392D+3 18 [4] 24 [2] 1D–1 1D–1 1D–12v2 1.389D+3 90 [82] 26 [5] 1D–4 1D–3 1D–11

27

Page 28: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

Table 3

# dp δ v(0) H0 it it s.o. s.o.

(µ(1)k ) (µ

(2)k ) (µ

(1)k ) (µ

(2)k )

0.1 v1 1.3861D+3 16 [3] 24 [3] 1D–1 1D–2v2 1.3834D+3 62 [57] 26 [6] 7D–4 9D–4

1 v1 1.388D+3 16 [4] 23 [3] 1D–1 1D–13 1200 v2 1.3853D+3 63 [56] 26 [6] 7D–4 5D–4

10 v1 1.4091D+3 16 [3] 23 [2] 1D–1 2D–1v2 1.4058D+3 63 [56] 25 [6] 8D–4 1D–3

5000 v1 4.09064D+4 15 [3] 25 [1] 4D–1 1D+0v2 4.08943D+4 50 [43] 26 [2] 1D–3 6D–2

1 v1 1.076D+3 17 [5] 23 [2] 1D–1 2D–1v2 1.0725D+3 66 [59] 26 [6] 7D–4 1D–3

10 v1 1.0871D+3 16 [5] fail 1D–1 1D–44 2000 v2 1.083D+3 65 [58] fail 8D–4 5D–4

100 v1 1.2643D+3 17 [3] 29 [3] 2D–1 5D–1v2 1.2556D+3 61 [53] fail 1D–3 6D–4

Table 4: Test–problem # 4

dp δ v(0) it it it s.o. s.o. s.o.

(µ(1)k ) (µ

(M)k ) (µ

(2)k ) (µ

(1)k ) (µ

(M)k ) (µ

(2)k )

1200 10 v2 64 [57] 13 [9] fail 8D–4 1D–2 1D–3

2000 10 v2 65 [58] 12 [10] fail 8D–4 1D–2 5D–4100 v2 61 [53] 11 [10] fail 1D–3 1D–2 6D–4

Tables 1–2 show the different behaviour of the (GIP) algorithm with differentstarting points and different value for µ: when v(0) = v1 the two choices for µ

are almost equivalent even if we obtain less (few) iterations with µ = µ(1)k . On

the other hand, when v(0) = v2 and µ = µ(1)k , the iterate v(k) gets too close to

the boundary and consequently the steplength αk is too small: this causes thealgorithm to perform a large number of iterations before the stop condition. In

the considered tests–problems, few iterations are instead required when µ = µ(2)k .

Moreover from Tables 3–4, it follows that a value µ(M)k (where µ

(1)k < µ

(M)k <

µ(2)k ) is more suitable: in fact µ

(2)k is too large ((GIP) fails) and µ

(1)k is too small

(too iterations for the convergence), while the number of iterations reduces by

28

Page 29: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

the choice µ(M)k .

A relevant conclusion that can be drawn by these experiments is that the(GIP) algorithm leads to satisfactory results on the considered control problems,if we take care of choosing µ in such a way that the steplength αk is sufficientlylarge.

References

[1] Anderson E, et al. LAPACK Users’ Guide. SIAM, Philadelphia, 1992.

[2] Bellavia S. Inexact interior–point method Journal of Optimization Theoryand Applications 1998; 96: 109–121.

[3] Benner P. Computational methods for linear–quadratic optimization. Pro-ceedings of Numerical Methods in Optimization; June 1997; Cortona, Italy.Rendiconti del Circolo Matematico di Palermo 1999; Ser. II, Suppl. 58: 21–56.

[4] Boggs PT, Kearsley AJ, Tolle JW. A practical algorithm for general large

scale nonlinear optimization problems. SIAM Journal on Optimization 1999;9: 755–778.

[5] Canon MD, Cullum CD, Polak E. Theory of Optimal Control and Mathe-

matical Programming. Mc Graw–Hill, New York, 1970.

[6] Choi CH, Laub AJ. Efficient matrix–valued algorithms for solving stiff Ric-

cati differential equations. Proceedings of the 28th Conference on Decisionand Control; December 1989; Tampa, Florida; 885–887.

[7] Dembo RS, Eisenstat SC, Steihaug T. Inexact Newton methods. SIAM Jour-nal on Numerical Analysis 1982; 19: 400–408.

[8] Dennis JE, Schnabel RB. Numerical Methods for Unconstrained Optimiza-

tion and Nonlinear Equations. Prentice–Hall, Englewood Cliffs, 1983.

[9] Dohrmann CR, Robinett RD. Dynamic programming method for constrained

discrete–time optimal control. Journal of Optimization Theory and Applica-tions 1999; 101: 259–283.

[10] Durazzi C. On the Newton interior–point method for nonlinear programming

problems. Journal of Optimization Theory and Applications 2000; 104: 73–90.

[11] Eisenstat SC, Walker HF. Globally convergent inexact Newton methods.SIAM Journal on Optimization 1994; 4: 393–422.

29

Page 30: NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL … · NONLINEAR PROGRAMMING METHODS FOR SOLVING OPTIMAL CONTROL PROBLEMS ... 1Work carried out by INdAM grant at the Department

[12] El–Bakry AS, Tapia RA, Tsuchiya T, Zhang Y. On the formulation and the-

ory of the Newton interior–point method for nonlinear programming. Journalof Optimization Theory and Applications 1996; 89: 507–541.

[13] El–Gindy TM, El–Hawary HM, Salim MS, El–Kady M. A Chebyshev ap-

proximation for solving optimal control problems. Computers & Mathematicswith Applications 1995; 29: 35–45.

[14] Floudas CA. Deterministic Global Optimization in Design, Control and

Computational Chemistry. IMA Proceedings: Large Scale Optimization withApplications. Part II: Optimal Design and Control, Biegler LT, Conn A,Coleman L, Santosa F, (editors) 1997; 93: 129–187.

[15] Hager W, Pardalos PM, (editors). Optimal Control: Theory, Algorithms and

Applications. Kluwer Academic Publishers, 1998.

[16] Hullet W. Optimal estuary aeration: an application of distributed parameter

control theory. Applied Mathematics and Optimization 1974; 1: 20–63.

[17] Kelley CT. Iterative Methods for Linear and Nonlinear Equations. SIAM,Philadelphia, 1995.

[18] Luenberger DG. Linear and Nonlinear Programming. Addison–Wesley,Reading, 1984.

[19] Ortega JM. Numerical Analysis: A Second Course. Academic Press, NewYork, 1972.

[20] Pinch ER. Optimal Control and the Calculus of Variations. Oxford Univer-sity Press, Oxford, 1993.

[21] Streeter HW, Phelps EB. A study of the pollution and natural purification

of the Ohio river. U.S. Public Health Bulletin 1925; n. 146.

[22] Varga RS. Matrix Iterative Analysis. Prentice–Hall, Englewood Cliffs, 1962.

[23] Vlassenbroeck J, Van Dooren R. A Chebyshev technique for solving nonlinear

optimal control problems. IEEE Transactions on Automatic Control 1988; 33:333–340.

30