Lecture Notes On Optimization Techniques
Lecture Notes On Optimization Techniques
1 INTRODUCTION 1
4 Linear Programming 27
5 Nonlinear Programming 49
iii
iv CONTENTS
PREFACE to this edition
Notes on Optimization was published in 1971 as part of the Van Nostrand Reinhold Notes on Sys-
tem Sciences, edited by George L. Turin. Our aim was to publish short, accessible treatments of
graduate-level material in inexpensive books (the price of a book in the series was about five dol-
lars). The effort was successful for several years. Van Nostrand Reinhold was then purchased by a
conglomerate which cancelled Notes on System Sciences because it was not sufficiently profitable.
Books have since become expensive. However, the World Wide Web has again made it possible to
publish cheaply.
Notes on Optimization has been out of print for 20 years. However, several people have been
using it as a text or as a reference in a course. They have urged me to re-publish it. The idea of
making it freely available over the Web was attractive because it reaffirmed the original aim. The
only obstacle was to retype the manuscript in LaTex. I thank Kate Klohe for doing just that.
I would appreciate knowing if you find any mistakes in the book, or if you have suggestions for
(small) changes that would improve it.
v
vi CONTENTS
PREFACE
These Notes were developed for a ten-week course I have taught for the past three years to first-year
graduate students of the University of California at Berkeley. My objective has been to present,
in a compact and unified manner, the main concepts and techniques of mathematical programming
and optimal control to students having diverse technical backgrounds. A reasonable knowledge of
advanced calculus (up to the Implicit Function Theorem), linear algebra (linear independence, basis,
matrix inverse), and linear differential equations (transition matrix, adjoint solution) is sufficient for
the reader to follow the Notes.
The treatment of the topics presented here is deep. Although the coverage is not encyclopedic,
an understanding of this material should enable the reader to follow much of the recent technical
literature on nonlinear programming, (deterministic) optimal control, and mathematical economics.
The examples and exercises given in the text form an integral part of the Notes and most readers will
need to attend to them before continuing further. To facilitate the use of these Notes as a textbook,
I have incurred the cost of some repetition in order to make almost all chapters self-contained.
However, Chapter V must be read before Chapter VI, and Chapter VII before Chapter VIII.
The selection of topics, as well as their presentation, has been influenced by many of my students
and colleagues, who have read and criticized earlier drafts. I would especially like to acknowledge
the help of Professors M. Athans, A. Cohen, C.A. Desoer, J-P. Jacob, E. Polak, and Mr. M. Ripper. I
also want to thank Mrs. Billie Vrtiak for her marvelous typing in spite of starting from a not terribly
legible handwritten manuscript. Finally, I want to thank Professor G.L. Turin for his encouraging
and patient editorship.
vii
viii CONTENTS
Chapter 1
INTRODUCTION
In this chapter, we present our model of the optimal decision-making problem, illustrate decision-
making situations by a few examples, and briefly introduce two more general models which we
cannot discuss further in these Notes.
When these conditions are satisfied, the decisions can be ranked according to whether they incur
greater or lesser cost. An optimal decision is then any decision which incurs the least cost among
the set of permissible decisions.
In order to model a decision-making situation in mathematical terms, certain further requirements
must be satisfied, namely,
1. The set of all decisions can be adequately represented as a subset of a vector space with each
vector representing a decision, and
1
2 CHAPTER 1. INTRODUCTION
defined as follows: every year, each u (undergraduate) must take eight courses, one of which is a
seminar and the rest of which are lecture courses, whereas each g (graduate) must take two seminars
and five lecture courses. A seminar cannot have more than 20 students and a lecture course cannot
have more than 40 students. The University has a faculty of 1000. The Weary Old Radicals (WORs)
have a contract with the University which stipulates that every junior faculty member (there are 750
of these) shall be required to teach six lecture courses and two seminars each year, whereas every
senior faculty member (there are 250 of these) shall teach three lecture courses and three seminars
each year. The Regents of Touch rate Tough’s President at α points per u and β points per g “pro-
cessed” by the University. Subject to the agreements with the TUGs and WORs how many u’s and
g’s should the President admit to maximize his rating?
Example 3: (See Figure 1.1.) An engineer is asked to construct a road (broken line) connection
point a to point b. The current profile of the ground is given by the solid line. The only requirement
is that the final road should not have a slope exceeding 0.001. If it costs $c per cubic foot to excavate
or fill the ground, how should he design the road to meet the specifications at minimum cost?
Example 4: Mr. Shell is the manager of an economy which produces one output, wine. There
are two factors of production, capital and labor. If K(t) and L(t) respectively are the capital stock
used and the labor employed at time t, then the rate of output of wine W (t) at time is given by the
production function
As Manager, Mr. Shell allocates some of the output rate W (t) to the consumption rate C(t), and
the remainder I(t) to investment in capital goods. (Obviously, W , C, I, and K are being measured
in a common currency.) Thus, W (t) = C(t) + I(t) = (1 − s(t))W (t) where s(t) = I(t)/W (t)
. b
a .
Figure 1.1: Admissable set of example.
∈ [0, 1] is the fraction of output which is saved and invested. Suppose that the capital stock decays
exponentially with time at a rate δ > 0, so that the net rate of growth of capital is given by the
following equation:
d
K̇(t) = K(t) (1.1)
dt
= −δK(t) + s(t)W (t)
= −δK(t) + s(t)F (K(t), L(t)).
L̇(t) = βL(t).
(1.2)
Suppose that the production function F exhibits constant returns to scale, i.e., F (λK, λL) =
λF (K, L) for all λ > 0. If we define the relevant variable in terms of per capita of labor, w =
W/L, c = C/L, k = K/l, and if we let f (k) = F (k, l), then we see that F (K, L)−LF (K/L, 1) =
Lf (k), whence the consumption per capita of labor becomes c(t) = (l − s(t))f (k(t)). Using these
definitions and equations (1.1) and (1.2) it is easy to see that K(t) satisfies the differential equation
(1.3).
where µ = (δ + β). The first term of the right-hand side in (3) is the increase in the capital-to-labor
ratio due to investment whereas the second terms is the decrease due to depreciation and increase in
the labor force.
Suppose there is a planning horizon time T , and at time 0 Mr. Shell starts with capital-to-labor
RT
ratio ko . If “welfare” over the planning period [0, T ] is identified with total consumption 0 c(t)dt,
what should Mr. Shell’s savings policy s(t), 0 ≤ t ≤ T , be so as to maximize welfare? What
savings policy maximizes welfare subject to the additional restriction that the capital-to-labor ratio
R ∞ consumption is discounted at rate α > 0 and if time horizon
at time T should be at least kT ? If future
is ∞, the welfare function becomes 0 e− αt c(t)dt. What is the optimum policy corresponding to
this criterion?
These examples illustrate the kinds of decision-making problems which can be formulated math-
ematically so as to be amenable to solutions by the theory presented in these Notes. We must always
remember that a mathematical formulation is inevitably an abstraction and the gain in precision may
have occurred at a great loss of realism. For instance, Example 2 is caricature (see also a faintly re-
lated but more more elaborate formulation in Bruno [1970]), whereas Example 4 is light-years away
from reality. In the latter case, the value of the mathematical exercise is greater the more insensitive
are the optimum savings policies with respect to the simplifying assumptions of the mathematical
model. (In connection with this example and related models see the critique by Koopmans [1967].)
In the examples above, the set of permissible decisions is represented by the set of all points
in some vector space which satisfy certain constraints. Thus, in the first example, a permissible
decision is any two-dimensional vector (α, p) satisfying the constraints 0 < α < 12 and 0 <
p. In the second example, any vector (u, g) with u ≥ 0, g ≥ 0, constrained by the number
of faculty and the agreements with the TUGs and WORs is a permissible decision. In the last
example, a permissible decision is any real-valued function s(t), 0 ≤ t ≤ T , constrained by
0 ≤ s(t) ≤ 1. (It is of mathematical but not conceptual interest to note that in this case a decision
is represented by a vector in a function space which is infinite-dimensional.) More concisely then,
these Notes are concerned with optimizing (i.e. maximizing or minimizing) a real-valued function
over a vector space subject to constraints. The constraints themselves are presented in terms of
functional inequalities or equalities.
4 CHAPTER 1. INTRODUCTION
At this point, it is important to realize that the distinction between the function which is to be
optimized and the functions which describe the constraints, although convenient for presenting the
mathematical theory, may be quite artificial in practice. For instance, suppose we have to choose
the durations of various traffic lights in a section of a city so as to achieve optimum traffic flow.
Let us suppose that we know the transportation needs of all the people in this section. Before we
can begin to suggest a design, we need a criterion to determine what is meant by “optimum traffic
flow.” More abstractly, we need a criterion by which we can compare different decisions, which in
this case are different patterns of traffic-light durations. One way of doing this is to assign as cost to
each decision the total amount of time taken to make all the trips within this section. An alternative
and equally plausible goal may be to minimize the maximum waiting time (that is the total time
spent at stop lights) in each trip. Now it may happen that these two objective functions may be
inconsistent in the sense that they may give rise to different orderings of the permissible decisions.
Indeed, it may be the case that the optimum decision according to the first criterion may be lead to
very long waiting times for a few trips, so that this decision is far from optimum according to the
second criterion. We can then redefine the problem as minimizing the first cost function (total time
for trips) subject to the constraint that the waiting time for any trip is less than some reasonable
bound (say one minute). In this way, the second goal (minimum waiting time) has been modified
and reintroduced as a constraint. This interchangeability of goal and constraints also appears at a
deeper level in much of the mathematical theory. We will see that in most of the results the objective
function and the functions describing the constraints are treated in the same manner.
random nature and modeled as stochastic processes. After this, just as in the case of the portfolio-
selection problem, we can formulate a decision problem in such a way as to take into account these
random disturbances.
If the uncertainties are modelled stochastically as in the example above, then in many cases
the techniques presented in these Notes can be usefully applied to the resulting optimal decision
problem. To do justice to these decision-making situations, however, it is necessary to give great
attention to the various ways in which the uncertainties can be modelled mathematically. We also
need to worry about finding equivalent but simpler formulations. For instance, it is of great signif-
icance to know that, given appropriate conditions, an optimal decision problem under uncertainty
is equivalent to another optimal decision problem under complete information. (This result, known
as the Certainty-Equivalence principle in economics has been extended and baptized the Separation
Theorem in the control literature. See Wonham [1968].) Unfortunately, to be able to deal with
these models, we need a good background in Statistics and Probability Theory besides the material
presented in these Notes. We can only refer the reader to the extensive literature on Statistical De-
cision Theory (Savage [1954], Blackwell and Girshick [1954]) and on Stochastic Optimal Control
(Meditch [1969], Kushner [1971]).
In this chapter we study in detail the first example of Chapter 1. We first establish some notation
which will be in force throughout these Notes. Then we study our example. This will generalize
to a canonical problem, the properties of whose solution are stated as a theorem. Some additional
properties are mentioned in the last section.
2.1 Notation
2.1.1
All vectors are column vectors, with two consistent exceptions mentioned in 2.1.3 and 2.1.5 below
and some other minor and convenient exceptions in the text. Prime denotes transpose so that if
x ∈ Rn then x0 is the row vector x0 = (x1 , . . . , xn ), and x = (x1 , . . . , xn )0 . Vectors are normally
denoted by lower case letters, the ith component of a vector x ∈ Rn is denoted xi , and different
vectors denoted by the same symbol are distinguished by superscripts as in xj and xk . 0 denotes
both the zero vector and the real number zero, but no confusion will result.
Thus if x = (x1 , . . . , xn )0 and y = (y1 , . . . , yn )0√then x0 y = x1 y1 + . . . + xn yn as in ordinary
matrix multiplication. If x ∈ Rn we define |x| = + x0 x.
2.1.2
If x = (x1 , . . . , xn )0 and y = (y1 , . . . , yn )0 then x ≥ y means xi ≥ yi , i = 1, . . . , n. In particular if
x ∈ Rn , then x ≥ 0, if xi ≥ 0, i = 1, . . . , n.
2.1.3
Matrices are normally denoted by capital letters. If A is an m × n matrix, then Aj denotes the jth
column of A, and Ai denotes the ith row of A. Note that Ai is a row vector. Aji denotes the entry
of A in the ith row and jth column; this entry is sometimes also denoted by the lower case letter
aij , and then we also write A = {aij }. I denotes the identity matrix; its size will be clear from the
context. If confusion is likely, we write In to denote the n × n identity matrix.
7
8 CHAPTER 2. OPTIMIZATION OVER AN OPEN SET
2.1.4
If f : Rn → Rm is a function, its ith component is written fi , i = 1, . . . , m. Note that fi : Rn → R.
Sometimes we describe a function by specifying a rule to calculate f (x) for every x. In this case
we write f : x 7→ f (x). For example, if A is an m × n matrix, we can write F : x 7→ Ax to denote
the function f : Rn → Rm whose value at a point x ∈ Rn is Ax.
2.1.5
If f : Rn 7→ R is a differentiable function, the derivative of f at x̂ is the row vector ((∂f /∂x1 )(x̂), . . . , (∂f /∂xn )(x̂)).
This derivative is denoted by (∂f /∂x)(x̂) or fx (x̂) or ∂f /∂x|x=x̂ or fx |x=x̂ , and if the argument x̂
is clear from the context it may be dropped. The column vector (fx (x̂))0 is also denoted ∇x f (x̂),
and is called the gradient of f at x̂. If f : (x, y) 7→ f (x, y) is a differentiable function from
Rn × Rm into R, the partial derivative of f with respect to x at the point (x̂, ŷ) is the n-dimensional
row vector fx (x̂, ŷ) = (∂f /∂x)(x̂, ŷ) = ((∂f /∂x1 )(x̂, ŷ), . . . , (∂f /∂xn )(x̂, ŷ)), and similarly
fy (x̂, ŷ) = (∂f /∂y)(x̂, ŷ) = ((∂f /∂y1 )(x̂, ŷ), . . . , (∂f /∂ym )(x̂, ŷ)). Finally, if f : Rn → Rm is
a differentiable function with components f1 , . . . , fm , then its derivative at x̂ is the m × n matrix
f1x (x̂)
∂f ..
(x̂) = fx x̂ = .
∂x
fmx (x̂)
∂f1
(x̂) . . . ∂f1
∂xn (x̂)
∂x1.
=
.. ..
.
...
∂fm ∂fm
∂x1 (x̂) ∂xn (x̂)
2.1.6
If f : Rn → R is twice differentiable, its second derivative at x̂ is the n×n matrix (∂ 2 f /∂x∂x)(x̂) =
fxx (x̂) where (fxx (x̂))ji = (∂ 2 f /∂xj ∂xi )(x̂). Thus, in terms of the notation in Section 2.1.5 above,
fxx (x̂) = (∂/∂x)(fx )0 (x̂).
2.2 Example
We consider in detail the first example of Chapter 1. Define the following variables and functions:
Since it is not profitable to produce more than can be sold we must have:
v = f (α, p),
m = amount (in pounds) of mary-john purchased, and
t = amount (in pounds) of tobacco purchased.
Evidently,
m = αv, and
t = (l − α)v.
Let
The revenue is
The set of admissible decisions is Ω, where Ω = {(α, p)|0 < α < 12 , 0 < p < ∞}. Formally, we
have the the following decision problem:
(α∗ , p∗ ) ∈ Ω and
(2.1)
N (α∗ , p∗ ) ≥ N (α, p) for all (α, p) ∈ Ω.
We are going to establish some properties of (a∗ , p∗ ). First of all we note that Ω is an open subset
of R2 . Hence there exits ε > 0 such that
In turn (2.2) implies that for every vector h = (h1 , h2 )0 in R2 there exists η > 0 (η of course
depends on h) such that
1
2
(α∗ , p∗ ) + δ(h1 , h2 )
.
Ω (a∗ , p∗ )
δh
h
|
p
N (α∗ , p∗ )
∗ ∗ ∗ ∗
N (α∗ + δh1 , p∗ + δh2 ) = +δ[ ∂N
∂α (δ , p )h1 + ∂p (α , p )h2 ]
∂N
(2.5)
+o(δ),
where
oδ
δ → 0 as δ → 0. (2.6)
0 ≥ δ[ ∂N ∗ ∗ ∗ ∗
∂α (α , p )h1 + ∂p (α , p )h2 ] + o(δ).
∂N
0 ≥ [ ∂N ∗ ∗ ∗ ∗ o(δ)
∂α (α , p )h1 + ∂p (α , p )h2 ] +
∂N (2.7)
δ .
0 ≥ [ ∂N ∗ ∗ ∗ ∗
∂α (α , p )h1 + ∂p (α , p )h2 ].
∂N
(2.8)
Thus, using the facts that N is differentiable, (α∗ , p∗ ) is optimal, and δ is open, we have concluded
that the inequality (2.9) holds for every vector h ∈ R2 . Clearly this is possible only if
∗ ∗ ∗ ∗
∂p (α , p ) = 0.
∂N
∂α (α , p ) = 0,
∂N
(2.9)
Before evaluating the usefulness of property (2.8), let us prove a direct generalization.
2.3. THE MAIN RESULT AND ITS CONSEQUENCES 11
Maximize f (x)
(2.10)
subject to x ∈ Ω.
Then
∂f ∗
∂x (x ) = 0. (2.11)
In turn, (2.12) implies that for every vector h ∈ Rn there exits η > 0 (η depending on h) such that
where
→ 0 as δ → 0
o(δ)
δ
(2.16)
0 ≥ δ ∂f ∗
∂x (x )h + o(δ)
0≥ ∂f ∗ o(δ)
∂x (x )h + δ
(2.17)
Letting δ approach zero in (2.17) and taking (2.16) into account, we see that
0≥ ∂f ∗
∂x (x )h,
(2.18)
Since the inequality (2.18) must hold for every h ∈ Rn , we must have
0= ∂f ∗
∂x (x ),
Table 2.1
Does there exist At how many points
an optimal deci- in Ω is 2.2.2 Further
Case sion for 2.2.1? satisfied? Consequences
1 Yes Exactly one point, x∗ is the
say x∗ unique optimal
2 Yes More than one point
3 No None
4 No Exactly one point
5 No More than one point
2.3.2 Consequences.
Let us evaluate the usefulness of (2.11) and its special case (2.18). Equation (2.11) gives us n
equations which must be satisfied at any optimal decision x∗ = (x∗1 , . . . , x∗n )0 .
These are
∂f ∗ ∂f ∗ ∂f ∗
∂x1 (x ) = 0, ∂x2 (x ) = 0, . . . , ∂xn (x ) =0 (2.19)
Thus, every optimal decision must be a solution of these n simultaneous equations of n variables, so
that the search for an optimal decision from Ω is reduced to searching among the solutions of (2.19).
In practice this may be a very difficult problem since these may be nonlinear equations and it may
be necessary to use a digital computer. However, in these Notes we shall not be overly concerned
with numerical solution techniques (but see 2.4.6 below).
The theorem may also have conceptual significance. We return to the example and recall the
N = R − C. Suppose that R and C are differentiable, in which case (2.18) implies that at every
optimal decision (α∗ , p∗ )
∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗
∂p (α , p ) = ∂p (α , p ),
∂R ∂C
∂α (α , p ) = ∂α (α , p ),
∂R ∂C
or, in the language of economic analysis, marginal revenue = marginal cost. We have obtained an
important economic insight.
-1 1 -1 1
Case 4 Case 5
2.4.2 Existence.
If the set of permissible decisions Ω is a closed and bounded subset of Rn , and if f is continuous,
then it follows by the Weierstrass Theorem that there exists an optimal decision. But if Ω is closed
we cannot assert that the derivative of f vanishes at the optimum. Indeed, in the third figure above,
if Ω = [−1, 1], then +1 is the optimal decision but the derivative is positive at that point.
and letting δ approach zero we conclude that h0 fxx (x∗ )h ≤ 0 for all h ∈ Rn . This means that
fxx (x∗ ) is a negative semi-definite matrix. Thus, if we have a twice differentiable objective function,
we get an additional necessary condition.
This requires a one-dimensional search. Another choice is to let di = di−1 if f (xi + di−1 5x
f (xi )) > f (xi ); otherwise let di = 1/k di−1 where k is the smallest positive integer such that
f (xi + 1/k di−1 5x f (xi )) > f (xi ). To start the process we let d−1 > 0 be arbitrary.
Exercise: Let f be continuous differentiable. Let {di } be produced by either of these choices and
let
{xi } be the resulting sequence. Then
For other numerical procedures the reader is referred to Zangwill [1969] or Polak [1971].
Chapter 3
We first study a simple example and examine the properties of an optimal decision. This will
generalize to a canonical problem, and the properties of its optimal decisions are stated in the form
of a theorem. Additional properties are summarized in Section 3 and a numerical scheme is applied
to determine the optimal design of resistive networks.
3.1 Example
We want to find the rectangle of maximum area inscribed in an ellipse defined by
x2 y2
f1 (x, y) = a2 + b2 = α. (3.1)
The main difference between problem (3.2) and the decisions studied in the last chapter is that
the set of permissible decisions Ω is not an open set. Hence, if (x∗ , y ∗ ) is an optimal decision we
cannot assert that f0 (x∗ , y ∗ ) ≥ f0 (x, y) for all (x, y) in an open set containing (x∗ , y ∗ ). Returning
to problem (3.2), suppose (x∗ , y ∗ ) is an optimal decision. Clearly then either x∗ 6= 0 or y ∗ 6= 0. Let
us suppose y ∗ 6= 0. Then from figure 3.1 it is evident that there exist (i)ε > 0, (ii) an open set V
containing (x∗ , y ∗ ), and (iii) a differentiable function g : (x∗ − ε, x∗ + ε) → V such that
In particular this implies that y ∗ = g(x∗ ), and that f1 (x, g(x)) = α whenever |x − x∗ | < ε. Since
1
Note that y ∗ 6= 0 implies f1y (x∗ , Y ∗ ) 6= 0, so that this assertion follows from the Implicit Function Theorem. The
assertion is false if y ∗ = 0. In the present case let 0 < ε ≤ a − x∗ and g(x) = +b[α − (x/a)2 ]1/2 .
15
16 CHAPTER 3. OPTIMIZATION WITH EQUALITY CONSTRAINTS
Tangent plane to
Ω at (x∗ , y ∗ )
(f1x , f1y )
y∗ - V
g(x)
( | )
x∗ x
Ω
(x∗ , y ∗ ) = (x∗ , g(x∗ )) is optimum for (3.2), it follows that x∗ is an optimal solution for (3.4):
But the constraint set in (3.4) is an open set (in R1 ) and the objective function fˆ0 is differentiable,
so that by Theorem 2.3.1, fˆ0x (x∗ ) = 0, which we can also express as
Using the fact that f1 (x, g(x)) ≡ α for |x − x∗ | < ε, we see that
Thus an optimal decision (x∗ , y ∗ ) must satisfy the two equations f1 (x∗ , y ∗ ) = α and (3.6). Solving
these yields
+ +
x∗ = − (α/2)
1/2
a , y∗ = − (α/2)
1/2
b.
3.2. GENERAL CASE 17
+
Evidently there are two optimal decisions, (x∗ , y ∗ ) = − (α/2)
1/2 (a, b), and the maximum area is
which means that at an optimal decision the gradient of the objective function f0 is normal to the
plane tangent to the constraint set Ω.
Finally we note that
λ∗ = ∂m
∂α . (3.11)
Maximize f0 (x)
(3.12)
subject to fi (x) = αi , i = 1, . . . , m.
Suppose that at x∗ the derivatives fix (x∗ ), i = 1, . . . , m, are linearly independent. Then there exists
a vector λ∗ = (λ∗1 , . . . , λ∗m )0 such that
(λ∗ )0 = ∂m
∂α (3.14)
Proof. Since fix (x∗ ), i = 1, . . . , m, are linearly independent, then by re-labeling the coordinates of
x if necessary, we can assume that the m × m matrix [(∂fi /∂xj )(x∗ )], 1 ≤ i, j ≤ m, is nonsingular.
By the Implicit Function Theorem (see Fleming [1965]) it follows that there exist (i) ε > 0, (ii) an
18 CHAPTER 3. OPTIMIZATION WITH EQUALITY CONSTRAINTS
iff
But U is an open subset of Rn−m and fˆ0 is a differentiable function on U (since f0 and g are
differentiable), so that by Theorem 2.3.1 , fˆ0u (u∗ ) = 0, which we can also express using the chain
rule for derivatives as
(f0w (x∗ ), f0u (x∗ )) = (λ∗ )0 (fw (x∗ ), fu (x∗ )). (3.21)
f0x (x∗ ) = (λ∗ )0 fx (x∗ ) = λ∗1 f1x (x∗ ) + . . . + λ∗m fmx (x∗ ),
3.2. GENERAL CASE 19
x1 , . . . , x m
g(xm+1 , . . . , xn )
(x∗1 , . . . , x∗m ) .x . ∗ V
Ω=
{x|f i (x) = αi }
i = 1, . . . , m
xm+1
U
. . (xm+1 , . . . , xn )
(x∗m+1 , . . . , x∗n )
xn
2
fw wα∗ + fu u∗α = I,
so that
In (3.25), if we substitute from (3.20) and (3.24), we obtain (3.14) and the theorem is proved. ♦
The hypothesis of linear independence of {fix (x∗ )|1 ≤ i ≤ m} guarantees that the tangent plane
through Ω at x∗ is described by
Condition (3.13) is therefore equivalent to saying that at an optimal decision x∗ , the gradient of the
objective function 5x f0 (x∗ ) is normal to the tangent surface (3.12).
where
−1
λ̃0 = f0w fwx̃ , (3.27)
and if ũ is optimal, 5u fˆ0 (ũ) = 0 which, together with (3.27) is equation (3.13). We shall use (3.27)
and (3.28) in the last section.
3.3. REMARKS AND EXTENSIONS 21
Minimize
subject to sin(x21 + x22 ) (3.29)
π 2 2
2 (x1 + x2 ) = 1.
gu
. Lww Lwu ...
fˆ0uu (u∗ ) = [gu0 ..I] Luw Luu
I (w∗ , u∗ )
where
X
m
gu (u∗ ) = −[fw (x∗ )]−1 fu (x∗ ), L(x) = f0 (x) − λ∗i fi (x).
i=1
22 CHAPTER 3. OPTIMIZATION WITH EQUALITY CONSTRAINTS
Aj = 0 and A0 e = v (3.30)
Next we suppose that each branch k contains a (possibly nonlinear)resistive element with the form
shown in Figure 3.3, so that
where vrk is the voltage across the resistor. Here jsk , vsk are the source current and voltage in the
kth branch, and gk is the characteristic of the resistor. Using the obvious vector notation js ∈ Rb ,
vs ∈ Rb for the sources, vr ∈ Rb for the resistor voltages, and g = (g1 , . . . , gb )0 , we can rewrite
(3.30) as (3.31):
Although (3.30) implies that the current (jk −j s k) through the kth resistor depends only on the
voltage vrk = (vk −v sk ) across itself, no essential simplification is achieved. Hence, in (3.31) we
shall assume that gk is a function of vr . This allows us to include coupled resistors and voltage-
controlled current sources. Furthermore, let us suppose that there are ` design parameters p =
(p1 , . . . , p` )0 which are under our control, so that (3.31) is replaced by (3.32):
jsk
jk − jsk
jk vrk
-
o + vsk- +
o
+ vk -
Ag(A0 e − vs , p) = is , (3.34)
where we have defined is = Ajs . The network design problem can then be stated as finding p, vs , is
so as to minimize some specified function f0 (e, p, vs , is ). Formally, we have the optimization prob-
lem (3.34):
Minimize f0 (e, p, vs , is )
(3.35)
subject to Ag(A0 e − vs , p) − is = 0.
We shall apply the algorithm 3.3.4 to this problem. To do this we make the following assumption.
Assumption: (a) f0 is differentiable. (b) g is differentiable and the n×n matrix A(∂g/∂v)(v, p)A0
is nonsingular for all v ∈ Rb , p ∈ R` . (c) The network N described by (3.33) is determinate i.e.,
for every value of (p, vs , is ) there is a unique e = E(p, vs , is ) satisfying (3.33).
In terms of the notation of 3.3.4, if we let x = (e, p, vs , is ), then assumption (b) allows us to
identify w = e, and u = (p, vs , is ). Also let f (x) = f (e, p, vs , is ) = Ag(A0 e−v s , p) − is . Now the
crucial part in the algorithm is to obtain λk at some point xk . To this end let x̃ = (ẽ, p̃, ṽs , ĩs ) be a
fixed point. Then the corresponding λ = λ̃ is given by (see (3.27))
where ṽr = A0 ẽ − ṽs , and G(ṽr , p̃) = (∂g/∂vr )(ṽr , p̃). Therefore, λ̃ is the solution (unique by
assumption (b)) of the following linear equation:
Now (3.36) has the following extremely interesting physical interpretation. If we compare (3.33)
with (3.36) we see immediately that λ̃ is the node-to-datum response voltages of a linear network
N (ṽr , p̃) driven by the current sources f0e 0 (x̃). Furthermore, this network has the same graph as
the original network (since they have the same incidence matrix); moreover, its branch admittance
matrix, G0 (ṽr , p̃), is the transpose of the incremental branch admittance matrix (evaluated at (ṽr , p̃))
of the original network N . For this reason, N (ṽr , p̃) is called the adjoint network (of N ) at (ṽr , p̃).
24 CHAPTER 3. OPTIMIZATION WITH EQUALITY CONSTRAINTS
Once we have obtained λ̃ we can obtain 5u fˆ0 (ũ) using (3.28). Elementary calculations yield
(3.37):
∂g 0
fˆ0p
0 (ũ)
[ ∂p (ṽr , p̃)]0 A0 f0p (x̃)
0
5u fˆ0 (ũ) = fˆ0v s
0 (x̃)
(ũ) = G0 (ṽr , p̃)A0 λ̃ + f0v s
(3.38)
fˆ0is (ũ)
0 0 (x̃)
−I f0is
Step 1. Select u0 = (p0 , vs0 , i0s ) arbitrary. Solve (3.33) to obtain e0 = E(p0 , vs0 , i0s ). Let k = 0 and
go to Step 2.
Step 2. Calculate vrk = A0 ek − vsk . calculate f0e 0 (xk ). Calculate the node-to-datum response λk of
with the transpose of the matrix giving rise to the adjective “adjoint.”
Exercise: [DC biasing of transistor circuits (see Dowell and Rohrer [1971]).] Let N be a transistor
circuit, and let (3.33) model the dc behavior of this circuit. Suppose that is is fixed, vsj for j ∈ J
are variable, and vsj for j ∈
/ J are fixed. For each choice of vsj , j ∈ J, we obtain the vector e and
hence the branch voltage vector v = A0 e. Some of the components vt , t ∈ T , will correspond to
bias voltages for the transistors in the network, and we wish to choose vsj , j ∈ J, so that vt is as
close as possible to a desired bias voltage vtd , t ∈ T . If we choose nonnegative numbers αt , with
relative magnitudes reflecting the importance of the different transistors then we can formulate the
criterion
Note the minus sign in the expression uk − dk 5u fˆ0 (uk ). Remember we are minimizing f0 , which is equivalent to
3
maximizing (−f0 ).
3.3. REMARKS AND EXTENSIONS 25
X
f0 (e) = αt |vt −v dt |2 .
t∈T
In the first section we study in detail Example 2 of Chapter I, and then we define the general linear
programming problem. In the second section we present the duality theory for linear program-
ming and use it to obtain some sensitivity results. In Section 3 we present the Simplex algorithm
which is the main procedure used to solve linear programming problems. In section 4 we apply
the results of Sections 2 and 3 to study the linear programming theory of competitive economy.
Additional miscellaneous comments are collected in the last section. For a detailed and readily ac-
cessible treatment of the material presented in this chapter see the companion volume in this Series
(Sakarovitch [1971]).
2g+u
20 ≤ 2250 or 2g + u ≤ 45, 000
and
5g+7u
40 ≤ 5250 or 5g + 7u ≤ 210, 000 .
27
28 CHAPTER 4. LINEAR PROGRAMMING
Since negative g or u is meaningless, there are also the constraints g ≥ 0, u ≥ 0. Formally then the
President faces the following decision problem:
Maximize αg + βu
subject to 2g + u ≤ 45, 000
(4.1)
5g + 7u ≤ 210, 000
g ≥ 0, u ≥ 0 .
It is convenient to use a more general notation. So let x = (g, u)0 , c = (α, β)0 , b = (45000, 210000, 0, 0)0
and let A be the 4×2 matrix
2 1
5 7
A= −1
.
0
0 −1
Maximize c0 x
(4.2)
subject to Ax ≤ b .
Let Ai , 1 ≤ i ≤ 4, denote the rows of A. Then the set Ω of all vectors x which satisfy the constraints
in (4.2) is given by Ω = {x|Ai x ≤ bi , 1 ≤ i ≤ 4} and is the polygon OP QR in Figure 4.1.
For each choice x, the President receives the payoff c0 x. Therefore, the surface of constant payoff
k say, is the hyperplane π(k) = {x|c0 x = k}. These hyperplanes for different values of k are
parallel to one another since they have the same normal c. Furthermore, as k increases π(k) moves
in the direction c. (Obviously we are assuming in this discussion that c 6= 0.) Evidently an optimal
decision is any point x∗ ∈ Ω which lies on a hyperplane π(k) which is farthest along the direction
c. We can rephrase this by saying that x∗ ∈ Ω is an optimal decision if and only if the plane π ∗
through x∗ does not intersect the interior of Ω, and futhermore at x∗ the direction c points away
from Ω. From this condition we can immediately draw two very important conclusions: (i) at least
one of the vertices of Ω is an optimal decision, and (ii) x∗ yields a higher payoff than all points
in the cone K ∗ consisting of all rays starting at x∗ and passing through Ω, since K ∗ lies “below”
π ∗ . The first conclusion is the foundation of the powerful Simplex algorithm which we present in
Section 3. Here we pursue consequences of the second conclusion. For the situation depicted in
Figure 4.1 we can see that x∗ = Q is an optimal decision and the cone K ∗ is shown in Figure 4.2.
Now x∗ satisfies Ax x∗ = b1 , A2 x∗ = b2 , and A3 x∗ < b3 , A4 x∗ < b4 , so that K ∗ is given by
K ∗ = {x∗ + h|A1 h ≤ 0 , A2 h ≤ 0} .
x2
-
π(k) = {x|c0 x = k}
π∗ direction of
-
- increasing
payoff k
-
-
Q = x∗
-
-
c ⊥ π∗
A2 ⊥ P Q
-
-
{x|A2 x = b2 }
A1 ⊥ QR
- x1
A3 O R
{x|A1 x = b1 }
, A4
Maximize c0 x
subject to Ai x ≤ bi , 1 ≤ i ≤ k .
For any x satisfying the constraints, let I(x) ⊂ {1, . . . , n} be such that Ai (x) = bi , i ∈ I(x), Ai x <
/ I(x). Suppose x∗ satisfies the constraints. Show that x∗ is optimal if an only if
bi , i ∈
x∗ = Q
K∗
A2 c
A1 π∗
A3
O R
A4
1. x∗ = Q is optimal iff c lies between A1 and A2 iff c0 = λ∗1 A1 + λ∗2 A2 for some λ∗1 ≥ 0, λ∗2 ≥
0,
2. x∗ ∈ QP is optimal iff c lies along A2 iff c0 = λ∗2 A2 for some λ∗2 ≥ 0,
3. x∗ = P is optimal iff c lies between A3 and A2 iff c0 = λ∗2 A2 + λ∗3 A3 for some λ∗2 ≥ 0, λ∗3 ≥
0, etc.
For purposes of application it is useful to separate those constraints which are of the form xi ≥ 0,
from the rest, and to reformulate (4.5) accordingly We leave this as an exercise.
Exercise 2: Show that (4.5) is equivalent to (4.6), below. (Here Ai = (ai1 , ai2 ).) x∗ ∈ Ω is optimal
iff there exist λ∗1 ≥ 0 , λ∗2 ≥ 0 such that
Maximize c1 x1 + c2 x2 + . . . + cn xn
subject to
ail x1 + ai2 x2 + . . . + ain xn ≤ bi , l ≤ i ≤ k ,
ail x1 + . . . . . . . . . + ain xn ≥ bi , k + 1 ≤ i ≤ ` ,
ail x1 + . . . . . . . . . + ain xn = bi , ` + 1 ≤ i ≤ m ,
and
xj ≥ 0 , 1≤j≤p,
xj ≥ 0 , p + 1 ≤ j ≤ q; (4.7)
xj arbitary , q + 1 ≤ j ≤ n ,
X
n
Maximize cj xj
j=1
Xn
(4.8)
subject to aij xj ≤ bi , 1≤i≤m,
j=1
xj ≥ 0 , 1≤j≤n
X
n
Maximize cj xj
j=1
Xn
(4.9)
subject to aij xj = bi , 1≤i≤m,
j=1
xj ≥ 0 , 1≤j≤n.
Although (4.7) appears to be more general than (4.8) and (4.9), such is not the case.
Proposition: Every LP of the form (4.7) can be transformed into an equivalent LP of the form (4.8).
Proof.
P P
Step 1: Replace each inequality constraint aij xj ≥ bi by (−aij )xj ≤ (−bi ).
P
Step 2: ReplaceP
P each equality constraint aij xj = bi by two inequality constraints:
aij xj ≤ bi , (−aij )xj ≤ (−bi ).
Step 3: Replace each variable xj which is constrained xj ≤ 0 by a variable yj = −xj constrained
yj ≥ 0 and then replace aij xj by (−aij )yj for every i and cj xj by (−cj )yj .
32 CHAPTER 4. LINEAR PROGRAMMING
Step 4: Replace each variable xj which is not constrained in sign by a pair of variables
yj −z j = xj constrained yj ≥ 0, zj ≥ 0 and then replace aij xj by aij yj + (−aij )zj for every i and
cj xj by cj yj + (−cj )zj . Evidently the resulting LP has the form (4.8) and is equivalent to the
original one. ♦
Proposition: Every LP of the form (4.7) can be transformed into an equivalent LP of the from (4.9)
Proof. P
Step
P 1: Replace each inequality constraint aij xj ≤ bi by the equality constraint
aij xj + yi = bi where yi is an additionalPvariable constrained yi ≥ 0.
Step 2: Replace each inequality constraint
P aij xj ≥ bi by the equality constraint
aij xj − yi = bi where yi is an additional variable constrained by yi ≥ 0. (The new variables
added in these steps are called slack variables.)
Step 3, Step 4: Repeat these steps from the previous proposition. Evidently the new LP has the
form (4.9) and is equivalent to the original one. ♦
below. (4.10) is called the primal problem and (4.11) is called the dual problem.
Maximize c1 x1 + . . . + cn xn
(4.10)
subject to ai1 x1 + . . . + ain xn ≤ bi , 1 ≤ i ≤ m
xj ≥ 0 , 1 ≤ j ≤ n .
Maximize λ1 b1 + . . . + λm bm
(4.11)
subject to λ1 a1j + . . . + λm amj ≥ cj , 1 ≤ j ≤ n
λi ≥ 0 , 1 ≤ i ≤ m .
Definition: Let Ωp = {x ∈ Rn |Ax ≤ b, x ≥ 0} be the set of all points satisfying the constraints
of the primal problem. Similarly let Ωd = {λ ∈ Rm |λ0 A ≥ c0 , λ ≥ 0}. A point x ∈ Ωp (λ ∈ Ωd ) is
said to be a feasible solution or feasible decision for the primal (dual).
The next result is trivial.
Lemma 1: (Weak duality) Let x ∈ Ωp , λ ∈ Ωd . Then
c0 x ≤ λ0 Ax ≤ λ0 b. (4.12)
Proof: x ≥ 0 and λ0 A − c0 ≥ 0 implies (λ0 A−c0 )x ≥ 0 giving the first inequality. b−Ax ≥ 0 and
λ0 ≥ 0 implies λ0 (b−Ax) ≥ 0 giving the second inequality. ♦
Corollary 1: If x∗ ∈ Ω and λ∗ ∈ Ωd such that c0 x∗ = (λ∗ )0 b, then x∗ is optimal for (4.10) and λ∗ is
optimal for (4.11).
Theorem 1: (Strong duality) Suppose Ωp 6= φ and Ωd 6= φ. Then there exists x∗ which is optimum
for (4.10) and λ∗ which is optimum for (4.11). Furthermore, c0 x∗ = (λ∗ )0 b.
Proof: Because of the Corollary 1 it is enough to prove the last statement, i.e., we must show that
there exist x ≥ 0, λ ≥ 0, such that Ax ≤ b, A0 λ ≥ c and b0 λ−c0 x ≤ 0. By introducing slack
variables y ∈ Rm , µ ∈ Rm , r ∈ R, this is equivalent to the existence of x ≥ 0, y ≥ 0, λ ≥ 0, µ ≤
0, r ≤ 0 such that
x
A Im y b
A0 −I n λ = c
−c0 b0 1 µ 0
r
A0 ξ − cθ ≤ 0 , ξ ≤ 0 ,
Aw = bθ ≤ 0 , −w ≤ 0 , (4.13)
θ≤0
implies
b0 ξ + c0 w ≤ 0. (4.14)
34 CHAPTER 4. LINEAR PROGRAMMING
Case (i): Suppose (w, ξ, θ) satisfies (4.13) and θ < 0. Then (ξ/θ) ∈ Ωd , (w/−θ) ∈ Ωp , so that by
Lemma 1 c0 w/(−θ) ≤ b0 ξ/θ, which is equivalent to (4.14) since θ < 0.
Case (ii): Suppose (w, ξ, θ) satisfies (4.13) and θ = 0, so that −A0 ξ ≥ 0, −ξ ≥ 0, Aw ≤ 0, w ≥ 0.
By hypothesis, there exist x ∈ Ωp , λ ∈ Ωd . Hence, −b0 ξ = b0 (−ξ) ≥ (Ax)0 (−ξ) = x0 (−A0 ξ) ≥ 0,
and c0 w ≤ (A0 λ)0 w = λ0 (Aw) ≤ 0. So that b0 ξ + c0 w ≤ 0. ♦
The existence part of the above result can be strengthened.
Theorem 2: (i) Suppose Ωp 6= φ. Then there exists an optimum decision for the primal LP iff
Ωd 6= φ.
(ii) Suppose Ωd 6= φ. Then there exists an optimum decision for the dual LP iff Ωp 6= φ.
Proof Because of the symmetry of the primal and dual it is enough to prove only (i). The
sufficiency part of (i) follows from Theorem 1, so that only the necessity remains. Suppose, in
contradiction, that Ωd = φ. We will show that sup {c0 x|x ∈ Ωp } = +∞. Now, Ωd = φ means
there does not exist λ ≥ 0 such that A0 λ ≥ c. Equivalently, there does not exist λ ≥ 0, µ ≤ 0 such
that
λ
|
A0 −In − − − = c
|
µ
By Farkas’ Lemma there exists w ∈ Rn such that Aw ≤ 0, −w ≤ 0, and c0 w > 0. By hypothesis,
Ωp 6= φ, so there exists x ≥ 0 such that Ax ≤ b. but then for any θ > 0, A(x + θw) ≤ b,
(x + θw) ≥ 0, so that (x + θw) ∈ Ωp . Also, c0 (x + θw) = c0 x + θc0 w. Evidently then, sup
{c0 x|x ∈ Ωp } = +∞ so that there is no optimal decision for the primal. ♦
Remark: In Theorem 2(i), the hypothesis that Ωp 6= φ is essential. Consider the following exercise.
Exercise 3: Exhibit a pair of primal and dual problems such that neither has a feasible solution.
Theorem 3: (Optimality condition) x∗ ∈ Ωp is optimal if and only if there exists λ∗ ∈ Ωd such that
X
m
aij x∗j < bi implies λ∗i = 0 ,
j=1
and (4.15)
Xm
λ∗i aij < cj implies x∗j = 0 .
i=1
Theorem 4: (Saddle point) x∗ ≥ 0 is optimal for the primal if and only if there exists λ∗ ≥ 0 such
that
Maximize c1 x1 + . . . + cn xn
subject to ail x1 + . . . + ain xn = bi , 1 ≤ i ≤ m , (4.19)
xj ≥ 0 , 1 ≤ j ≤ n .
Minimize λ1 b1 + . . . + λm bm
(4.20)
subject to λ1 a1j + . . . + λm amj ≥ cj , 1≤j≤n .
Note that in (4.20) the λi are unrestricted in sign. Again (4.19) is called the primal and (4.20) the
dual. We let Ωp , Ωd denote the set of all x, λ satisfying the constraints of (4.19), (4.20) respectively.
Exercise 5: Prove Theorems 1 and 2 with Ωp and Ωd interpreted as above. (Hint. Replace (4.19)
by the equivalent LP: maximize c0 x, subject to Ax ≤ b, (−A)x ≤ (−b), x ≥ 0. This is now of the
form (4.10). Apply Theorems 1 and 2.)
Exercise 6: Show that x∗ ∈ Ωp is optimal iff there exists λ∗ ∈ Ωd such that
X
m
x∗j > 0 implies λ∗i aij = cj .
i=1
where L is defined in (4.18). (Note that, unlike (4.17), λ is not restricted in sign.)
Exercise 8: Formulate a dual for (4.7), and obtain the result analogous to Exercise 5.
36 CHAPTER 4. LINEAR PROGRAMMING
M (b, c) = max {c0 x|x ∈ Ωp (b)} = min {λ0 b|λ ∈ Ωd (c)} . (4.21)
For 1 ≤ i ≤ m, ε ∈ R, b ∈ Rm denote
We define in the usual way the right and left hand partial derivatives of M at a point (b̂, ĉ) ∈ B × C
as follows:
∂M + 1
∂bi (b̂, ĉ) = lim ε {M (b̂(i, ε), ĉ) − M (b̂, ĉ)} ,
ε→0
ε>0
∂M − 1
∂bi (b̂, ĉ) = lim ε {M (b̂, ĉ) − M (b̂(i, −ε), ĉ)} ,
ε→0
ε>0
∂M + 1
∂cj (b̂, ĉ) = lim ε {M (b̂, ĉ(j, ε)) − M (b̂, ĉ} ,
ε→0
ε>0
∂M − 1
∂cj (b̂, ĉ) = lim ε {M (b̂, ĉ − M (b̂, ĉ(j, −ε))} ,
ε→0
ε>0
◦ ◦
Let B , C denote the interiors of B, C respectively.
◦ ◦
Theorem 5: At each (b̂, ĉ) ∈B × C , the partial derivatives given above exist. Furthermore, if
x̂ ∈ Ωp (b̂), λ̂ ∈ Ωd (ĉ) are optimal, then
∂M + ∂M −
∂bi (b̂, ĉ) ≤ λ̂i ≤ ∂bi (b̂, ĉ) , 1≤i≤m, (4.22)
4.3. THE SIMPLEX ALGORITHM 37
∂M + ∂M −
∂cj (b̂, ĉ) ≥ x̂j ≥ ∂cj (b̂, ĉ) , 1≤j≤n, (4.23)
Proof: We first show (4.22), (4.23) assuming that the partial derivatives exist. By strong duality
M (b̂, ĉ) = λ̂0 b̂, and by weak duality M (b̂(i, ε), ĉ) ≤ λ̂0 b̂(i, ε), so that
1 1 0
ε {M (b̂(i, ε), ĉ) − M (b̂, ĉ)} ≤ ε λ̂ {b̂(i, ε) − b̂}λ̂i , for ε > 0,
1 1 0
ε {M (b̂, ĉ) − M (b̂(i, −ε), ĉ)} ≥ ε λ̂ {b̂ − b̂(i, −ε)} = λ̂i , for ε > 0.
Taking limits as ε → 0, ε > 0, gives (4.22).
On the other hand, M (b̂, ĉ) = ĉ0 x̂, and M (b̂, ĉ(j, ε)) ≥ (ĉ(j, ε))0 x̂, so that
1
− M (b̂, ĉ)} ≥ 1ε {ĉ(j, ε)0 − ĉ}0 x̂ = x̂j , for ε > 0,
ε {M (b̂, ĉ(j, ε))
1 1 0
ε {M (b̂, ĉ) − M (b̂, ĉ(j, −ε))} ≤ ε {ĉ − ĉ(j, −ε)} x̂ = x̂j , for ε > 0,
which give (4.23) as ε → 0, ε > 0.
Finally, the existence of the right and left partial derivatives follows from Exercises 8, 9 below. ♦
We recall some fundamental definitions from convex analysis.
Definition: X ⊂ Rn is said to be convex if x, y ∈ X and 0 ≤ θ ≤ 1 implies (θx + (1 − θ)y) ∈ X.
Definition: Let X ⊂ Rn and f : X → R. (i) f is said to be convex if X is convex, and x, y ∈ X,
0 ≤ θ ≤ 1 implies f (θx + (1 − θ)y) ≤ θf (x) + (1 − θ)f (y). (ii) f is said to be concave if −f is
convex, i.e., x, y ∈ X, 0 ≤ θ ≤ 1 implies f (θx + (1 − θ)y) ≥ θf (x) + (1 − θ)f (y).
Exercise 8: (a) Show that Ωp , Ωd , and the sets B ⊂ Rm , C ⊂ Rn defined above are convex sets.
(b) Show that for fixed c ∈ C, M (·, c) : B → R is concave and for fixed b ∈ B, M (b, ·) : C → R
is convex.
Exercise 9: Let X ⊂ Rn , and f : X → R be convex. Show that at each point x̂ in the interior of
X, the left and right hand partial derivatives of f exist. (Hint: First show that for
ε2 > ε1 > 0 > δ1 > δ2 ,(1/ε2 ){f (x̂(i, ε2 )) − f (x̂)} ≥ (1/ε1 ){f (x̂(i, ε1 )) − f (x̂))} ≥
(1/δ1 ){f (x̂(i, δ1 )) − f (x̂))} ≥ (1/δ2 ){f (x̂(i, δ2 )) − f (x̂)}. Then the result follows immediately.)
Remark 1: Clearly if (∂M/∂bi )(b̂) exists, then we have equality in (4.22), and then this result
compares with 3.14).
Remark 2: We can also show without difficulty that M (·, c) and M (b, ·) are piecewise linear (more
accurately, linear plus constant) functions on B and C respectively. This is useful in some
computational problems.
Remark 3: The variables of the dual problem are called Lagrange variables or dual variables or
shadow-prices. The reason behind the last name will be clear in Section 4.
As mentioned in 4.1 the algorithm rests upon the observations that if an optimal exists, then at least
one vertex of the feasible set Ωp is an optimal solution. Since Ωp has only finitely many vertices (see
Corollary 1 below), we only have to investigate a finite set. The practicability of this investigation
depends on the ease with which we can characterize the vertices of Ωp . This is done in Lemma 1.
In the following we let Aj denote the jth column of A, i.e., Aj = (a1j , . . . , amj )0 . We begin with
a precise definition of a vertex.
X X X
Az(θ) = zj (θ)Aj = x∗j Aj + θ γj Aj
j∈I(x∗ ) j∈I(x∗ ) j∈I(x∗ )
=b+θ·0=b.
Since x∗j > 0 for j ∈ I(x∗ ), it follows that z(θ) ≥ 0 when
n ∗ o
xj ∗)
|θ| ≤ min |γ |
j ∈ I(x = θ ∗ say .
j
Again, if {Aj |j ∈ I(z(θ0 ))} is linearly independent, then we let z ∗ = z(θ0 ) and we are done.
Otherwise we repeat the procedure above with z(θ0 ). Clearly, in a finite number of steps we will
find an optimal decision z ∗ which is also vertex. ♦
At this point we abandon the geometric term “vertex” and how to established LP terminology.
Definition: (i) z is said to be a basic feasible solution if z ∈ Ωp , and {Aj |j ∈ I(z)} is linearly
independent. The set I(z) is then called the basis at z, and xj , j ∈ I(z), are called the basic
variables at z. xj , j 6∈ I(z) are called the non-basic variables at z.
Definition: A basic feasible solution z is said to be non-degenerate if I(z) has m elements.
Notation: Let z be a non-degenerate basic feasible solution, and let j1 < j2 < . . . < jm
. . .
constitute I(z). Let D(z) denote the m × m non-singular matrix D(z) = [Aj1 ..Aj2 .. . . . ..Ajm ], let
c(z) denote the m-dimensional column vector c(z) = (cj1 , . . . , cjm )0 and define λ(z) by λ0 (z) =
c0 (z)[D(z)]−1 . We call λ(z) the shadow-price vector at z.
Lemma 3: Let z be a non-degenerate basic feasible solution. Then z is optimal if and only if
Proof: By Exercise 6 of Section 2.2, z is optimal iff there exists λ such that
But since z is non-degenerate, (4.26) holds iff λ = λ(z) and then (4.27) is the same as (4.25). ♦
zjk+1 = θ , j = ĵ (4.28)
k
zj = 0 , j=6 ĵ and j 6∈ I(z) .
By Lemma 5 below, z k+1 is a basic feasible solution with c0 z k+1 > c0 z k . Set k = k + 1 and return
to Step 2.
Lemma 4: If γ k ≤ 0, sup {c0 x|x ∈ Ωp } = ∞.
Proof: Define z(θ) by
zj − θγjk , j ∈ I(z)
zj (θ) = θ , j = ĵ (4.29)
zj = 0 , j∈6 I(z) and j 6= ĵ .
X
First of all, since γ k ≤ 0 it follows that z(θ) ≥ 0 for θ ≥ 0. Next, Az(θ) = Az − θ γjk Aj +
j∈I(z)
θA = Az by definition of
ĵ
γk. Hence, z(θ) ∈ Ωp for θ ≥ 0. Finally,
0 0 k k
c0 z(θ) = c z − θc (z )γ + θcĵ
= c0 z + θ{cĵ − c0 (z k )[D(z k )]−1 Aĵ } (4.30)
= c0 z + θ{cĵ − λ0 (z k )Aĵ }i .
S
I(z k+1 ) ⊂ (I(z) − {j̃}) {ĵ} , (4.31)
so that it is enough to prove that Aj̃ is independent of {Aj |j ∈ I(z), j 6= j̃}. But if this is not the
case, we must have γj̃k = 0, giving a contradiction. Finally if we compare (4.28) and (4.29), we see
from (4.30) that
Corollary 2: In a finite number of steps Phase II will obtain an optimal solution or will determine
that sup{c0 x|x ∈ Ωp } = ∞.
Corollary 3: Suppose Phase II terminates at an optimal basic feasible solution z ∗ . Then γ(z ∗ ) is an
optimal solution of the dual of (4.24).
Exercise 2: Prove Corollaries 2 and 3.
Remark 1: By the non-degeneracy assumption, I(z k+1 ) has m elements, so that in (4.31) we must
have equality. We see then that D(z k+1 ) is obtained from D(z k ) by replacing the column Aj by
4.3. THE SIMPLEX ALGORITHM 41
. . . . . .
the column Aĵ . More precisely if D(z k ) = [Aj1 .. . . . ..Aji−1 ..Aj̃ ..Aji+1 .. . . . ..Ajm ] and if
. . . . . . . . .
jk < ĵ < jk+1 then D(z k+1 ) = [Aj1 .. . . . ..Aji−1 ..Aji+1 .. . . . ..Ajk ..Aĵ ..Ajk+1 .. . . . ..Ajm ]. Let E be the
. . . . . .
matrix E = [Aj1 .. . . . ..Aji−1 ..Aĵ ..Aji+1 .. . . . ..Ajm ]. Then [D(z k+1 )]−1 = P E −1 where the matrix P
X m
permutes the columns of D(z k+1 ) such that E = D(z k+1 )P . Next, if A =ĵ γj` Aj` , it is easy
`=1
to check that E −1 = M [D(z k )]−1 where
−γ j1
1 1 .
γj̃
..
1
M =
1
γj̃
1 .
. . 1
−γ jm
γj̃
↑
ith column
Then [D(z k+1 )]−1 = P M [D(z k )]−1 , so that these inverses can be easily computed.
Remark 2: The similarity between Step 2 of Phase II and Step 2 of the algorithm in 3.3.4 is
striking. The basic variables at z k correspond to the variables wk and non-basic variables
correspond to uk . For each j 6∈ I(z k ) we can interpret the number cj − λ0 (z k )Aj to be the net
increase in the objective value per unit increase in the jth component of z k . This net increase is due
to the direct increase cj minus the indirect decrease λ0 (z k )Aj due to the compensating changes in
the basic variables necessary to maintain feasibility. The analogous quantity in 3.3.4 is
(∂f0 /∂uj )(xk ) − (λk )0 (∂f /∂uj )(xk ).
Remark 3: By eliminating any dependent equations in (4.24) we can guarantee that the matrix A
has rank n. Hence at any degenerate basic feasible solution z k we can always find I(z ¯ k ) ⊃ I(z k )
¯ ¯
such that I(z ) has m elements and {Aj |j ∈ I(z )} is a linearly independent set. We can apply
k k
¯ k ) instead of I(z k ). But then in Step 4 it may turn out that θ = 0 so that
Phase II using I(z
¯ k ) is not unique, so that we have to try various
z k+1 = z k . The reason for this is that I(z
¯
alternatives for I(z ) until we find one for which θ > 0. In this way the non-degeneracy
k
X
m
Maximize − yi
(4.32)
i=1
subject to ail x1 + . . . + ain xn + yi = bi , 1 ≤ i ≤ m ,
xj ≥ 0 , y i ≥ 0 , 1 ≤ j ≤ n , 1 ≤ i ≤ m .
42 CHAPTER 4. LINEAR PROGRAMMING
Go to step 2.
Step 2. Note that (x0 , y 0 ) = (0, b) is a basic feasible solution of (4.32). Apply phase II to (4.32)
starting with this solution. Phase II must terminate in an optimum based feasible solution (x∗ , y ∗ )
Xm
since the value of the objective function in (4.32) lies between − bi and 0. Go to Step 3.
i=1
y∗
Step 3. If = 0, x∗ y∗
is a basic feasible solution for (4.24). If 6= 0, by Exercise 3 below, (4.24)
has no feasible solution.
Exercise 3: Show that (4.24) has a feasible solution iff y ∗ = 0.
(iii) If the firm conducts all the activities simultaneously with the jth activity at level xj ≥ 0, 1 ≤ j ≤
n, then it transforms the input vector x1 A1 + . . . + xn An into the output vector x1 B 1 + . . . + xn B n .
With these assumptions we know all the transformations technically possible as soon as we spec-
ify the matrices A and B. Which of these possible transformations will actually take place depends
upon their relative profitability and availability of inputs. We study this next.
For ∆ = 0, (4.34) becomes the dual of (4.35) so that by the strong duality theorem, M (0) = (r ∗ )0 q ∗ .
Hence p∗ , q ∗ , r ∗ are in equilibrium iff
c0 x − (q ∗ )0 ∆ ≤ M (0) = (r ∗ )0 q ∗ , (4.36)
whenever x is feasible for (4.35). By weak duality if x is feasible for (4.35) and q is feasible for
(4.34),
c0 x − (q ∗ )0 ∆ ≤ q 0 (r ∗ = ∆) − (q ∗ )0 ∆ , (4.37)
Remark 1: We have shown that (p∗ , q ∗ , r ∗ are in long-term equilibrium iff q ∗ is an optimum
solution to the dual (namely (4.34)) of (4.38):
Maximize c0 x
subject to Ax ≤ r ∗ (4.38)
x≥0.
This relation between p∗ , q ∗ , r ∗ has a very nice economic interpretation. Recall that c = B 0 p∗ , i.e.,
cj = p∗1 b1j + p∗2 b2j + . . . + p∗k bkj . Now bij is the amount of the ith output produced by operating the
jth activity at a unit level xj = 1. Hence, cj is the revenue per unit level operation of the jth activity
so that c0 x is the revenue when the n activities are operated at levels x. On the other hand if the jth
activity is operated at level xj = 1, it uses an amount aij of the ith input. If the ith input is valued at
X
m
a∗i , then the input cost of operating at xj = 1, is qi aij , so that the input cost of operating the n
i=1
activities at levels x is (A0 q ∗ )0 = (q ∗ )0 Ax. Thus, if x∗ is the optimum activity levels for (4.38) then
the output revenue is c0 x∗ and the input cost is (q ∗ )0 Ax∗ . But from (4.16), (q ∗ )0 (Ax∗ − r ∗ ) = 0 so
that
c0 x∗ = (q ∗ )0 r ∗ , (4.39)
i.e., at the optimum activity levels, in equilibrium, total revenues = total cost of input supplies. In
fact, we can say even more. From (4.15) we see that if x= astj > 0 then
X
m
cj = qi∗ aij ,
i=1
i.e., at the optimum, the revenue of an activity operated at a positive level = input cost of that activity.
Also if
X
m
cj < qi∗ aij ,
i=1
then x∗j= 0, i.e., if the revenue of an activity is less than its input cost, then at the optimum it is
operated at zero level. Finally, again from (4.15), if an equilibrium the optimum ith input supply ri∗
is greater than the optimum demand for the ith input,
4.4. LP THEORY OF A FIRM IN A COMPETITIVE ECONOMY 45
X
n
ri∗ > aij x∗j ,
j=1
then qi∗ = 0, i.e., the equilibrium price of an input which is in excess supply must be zero, in other
words it must be a free good.
that (λ, r(i)) is in long term equilibrium, and he will plan to produce an optimum amount, say y(i).
Here i = 1, 2, . . . , I, where I is the total number of firms. We know that r(i) and y(i) depend on
λ, so that we explicitly write r(i, λ), y(i, λ). We also recall that (see (4.38))
Now the ith manager can buy r(i) from only two sources: outputs from other firms, and the con-
sumers who collectively own ω. Similarly, the ith manager can sell his planned output y(i) either as
input supplies to other firms or to the consumers. Thus, the net supply offered for sale to consumers
is S(λ), where
X
J X
I X
i
S(λ) = ω(j) + y(i, λ) − r(i, λ) . (4.41)
j=1 i=1 i=1
We note two important facts. First of all, from (4.40), (4.41) we immediately conclude that
X
J
λ0 S(λ) = λ0 ω(j) , (4.42)
j=1
that is the value of the supply offered to consumers is equal to the value of the commodities (and
labor) which they own. The second point is that there is no reason to expect that S(λ) ≥ 0.
Now we come to the second building block of equilibrium theory. The value of the jth consumer’s
possessions is λ0 ω(j). The theory assumes that he will plan to buy a set of commodities d(j) =
(d1 (j), . . . , dh (j)) ≥ 0 so as to maximize his satisfaction subject to the constraint λ0 d(j) = λ0 ω(j).
Here also d(j) will depend on λ, so we write d(j, λ). If we add up the buying plans of all the
consumers we obtain the total demand
X
J
D(λ) = d(j, λ) ≥ 0 , (4.43)
j=1
X
J
λ0 D(λ) = λ0 ω(j) . (4.44)
j=1
The most basic question of equilibrium theory is to determine conditions under which there exists a
price vector λE such that the economy is in equilibrium, i.e., S(λE ) = D(λE ), because if such an
equilibrium price λE exists, then at that price the production plans of all the firms and the buying
plan of all the consumers can be realized. Unfortunately we must stop at this point since we cannot
proceed further without introducing some more convex analysis and the fixed point theorem. For
a simple treatment the reader is referred to (Dorfman, Samuelson, and Solow [1958], Chapter 13).
For a much more general mathematical treatment see (Nikaido [1968], Chapter V).
Maximize f0 (x)
(4.45)
subject to Ax ≤ b, x ≥ 0 .
This is not a LP since f0 is not linear. However, the following exercise shows how to transform
(4.45) into an equivalent LP.
Exercise 1: Show that (4.45) is equivalent to (4.46) below, in the sense that x∗ is optimal for (4.45)
iff (x∗ , y ∗ ) = (x∗ , f0 (x∗ )) is optimal for (4.46).
Maximize y
subject to Ax ≤ b, x ≤ 0 (4.46)
y ≤ (ci )0 x , 1 ≤ i ≤ k .
X
n
Maximize ci (xi )
j=1
(4.47)
subject to Ax ≤ b, x ≤ 0 ,
where ci : R → R are concave, piecewise-linear functions of the kind shown in Figure 4.3.
The above-given assumption of the concavity of the ci is crucial. In the next exercise, the inter-
pretation of “equivalent” is purposely left ambiguous.
Exercise 3: Construct an example of the kind (4.47), where the ci are piecewise linear (but not
concave), and such that there is no equivalent LP.
It turns out however, that even if the ci are not concave, an elementary modification of the Simplex
algorithm can be given to obtain a “local” optimal decision. See (Miller [1963]).
ci (xi )
.
.
.
xi
Maximize f0 (x)
(5.1)
subject to (x) ≤ 0 , i = 1, . . . , m,
49
50 CHAPTER 5. NONLINEAR PROGRAMMING
Maximize y
(5.2)
subject to fi (x) ≤ 0, 1 ≤ i ≤ m, and y − f0 (x) ≤ 0 .
Returning to problem (5.1), we are interested in obtaining conditions which any optimal decision
must satisfy. The argument parallels very closely that developed in Exercise 1 of 4.1 and Exercise 1
of 4.2. The basic idea is to linearize the functions fi in a neighborhood of an optimal decision x∗ .
Definition: Let x be a feasible solution, and let I(x) ⊂ {1, . . . , m} be such that fi (x) = 0 for
ı ∈ I(x), fi (x) < 0 for i 6∈ I(x). (The set I(x) is called the set of active constraints at x.)
Definition: (i) Let x ∈ Ω. A vector h ∈ Rn is said to be an admissible direction for Ω at x if there
exists a sequence xk , k = 1, 2, . . . , in Ω and a sequence of numbers εk , k = 1, . . . , with εk > 0
for all k such that
lim x = x ,
k
k→∞
1
lim εk
(xk − x) = h .
k→∞
(ii) Let C(Ω, x) = {h|h is an admissible direction for Ω at x}. C(Ω, x) is called the tangent cone
of Ω at x. Let K(Ω, x) = {x + h|h ∈ C(Ω, x)}. (See Figures 5.1 and 5.2 and compare them with
Figures 4.1 and 4.2.)
If we take xk = x and εk = 1 for all k, we see that 0 ∈ C(Ω, x) so that the tangent cone is always
nonempty. Two more properties are stated below.
Exercise 2: (i) Show that C(Ω, x) is a cone, i.e., if h ∈ C(Ω, x) and θ ≥ 0, then θh ∈ C(Ω, x).
(ii) Show that C(Ω, x) is a closed subset of Rn . (Hint for (ii): For m = 1, 2, . . . , let hm and
{xmk , εmk > 0}∞ k=1 be such that x
mk → x and (1/εmk )(xmk − x) → hm as k → ∞. Suppose
In the definition of C(Ω, x) we made no use of the particular functional description of Ω. The
following elementary result is more interesting in this light and should be compared with (2.18) in
Chapter 2 and Exercise 1 of 4.1.
direction of
increasing
{x|f3 (x) = 0} payoff
π(k) =
{x|f0 (x) = k}
P
Q
x∗
{x|f2 (x) = 0}
{x|f1 (x) = 0}
Ω
R
,
Figure 5.1: Ω = P QR
1
k ∗
lim x = x , lim εk
(xk − x∗ ) = h . (5.4)
k→∞ k→∞
1
lim εk
|xk − x∗ | = |h| . (5.5)
k→∞
x∗
K(Ω, x∗ )
-
-
-
- - 0
C(Ω, x∗ )
-
-
-
The basic problem that remains is to characterize the set C(Ω, x∗ ) in terms of the derivatives of the
functions fi . Then we can apply Farkas’ Lemma just as in Exercise 1 of 4.2.
Since xk ∈ Ω, fi (xk ) ≤ 0, and if i ∈ I(x∗ ), fi (x∗ ) = 0, so that fi (xk ) ≤ fi (x∗ ). Following the
proof of Lemma 1 we can conclude that 0 ≥ fix (x∗ )h. ♦
Theorem 1: (Kuhn and Tucker [1951]) Let x∗ be an optimum solution of (5.1), and suppose that
CQ is satisfied at x∗ . Then there exist λ∗i ≥ 0, for i ∈ I(x∗ ), such that
X
f0x (x∗ ) = λ∗i fix (x∗ ) (5.8)
i∈I(x∗ )
Proof: By Lemma 1 and the definition of CQ it follows that f0x (x∗ )h ≤ 0 whenever fix (x∗ )h ≤ 0
for all i ∈ I(x∗ ). By the Farkas’ Lemma of 4.2.1 it follows that there exist λ∗i ≥ 0 for i ∈ I(x∗ )
such that (5.8) holds. ♦
In the original formulation of the decision problem we often have equality constraints of the form
rj (x) = 0, which get replaced by rj (x) ≤ 0, −rj (x) ≤ 0 to give the form (5.1). It is convenient in
application to separate the equality constraints from the rest. Theorem 1 can then be expressed as
Theorem 2.
Maximize f0 (x)
subject to fi (x) ≤ 0 , i = 1, . . . , m, (5.9)
rj (x) = 0 , j = 1, . . . , k .
Let x∗ be an optimum decision and suppose that CQ is satisfied at x∗ . Then there exist λ∗i ≥ 0, i =
1, . . . , m, and µ∗j , j = 1, . . . , k such that
X
m X
k
f0x (x∗ ) = λ∗i fix (x∗ ) + µ∗j rjx (x∗ ) , (5.10)
i=1 j=1
and
An alternative form of Theorem 1 will prove useful for computational purposes (see Section 4).
Theorem 3: Consider (5.9), and suppose that CQ is satisfied at an optimal solution x∗ . Define
ψ : Rn → R by
ψ(h) = max {−f0x (x∗ )h, f1 (x∗ ) + f1x (x∗ )h, . . . , fm (x∗ ) + fmx (x∗ )h} ,
Minimize ψ(h)
subject to −ψ(h) − f0x (x∗ )h ≤ 0,
(5.12)
−ψ(h) + fi (x∗ ) + fix (x∗ )h ≤ 0 , 1 ≤ i ≤ m
−1 ≤ hi ≤ 1 , i = 1, . . . , n .
Then h = 0 is an optimal solution of (5.12).
Exercise 5: Prove Theorem 3. (Note that by Exercise 1 of 4.5, (5.12) can be transformed into a
LP.)
Remark: For problem (5.9) define the Lagrangian function L:
X
m X
k
(x1 , . . . , xn ; λ1 , . . . , λm ; µ1 , . . . , µk ) 7→ f0 (x) − λi fi (x) − µj rj (x).
i=1 j=1
Then Theorem 2 is equivalent to the following statement: if CQ is satisfied and x∗ is optimal, then
there exist λ∗ ≥ 0 and µ∗ such that Lx (x∗ , λ∗ , µ∗ ) = 0 and L(x∗ , λ∗ , µ∗ ) ≤ L(x∗ , λ, µ) for all
λ ≥ 0, µ.
There is a very important special case when the necessary conditions of Theorem 1 are also
sufficient. But first we need some elementary properties of convex functions which are stated as an
exercise. Some additional properties which we will use later are also collected here.
Recall the definition of convex and concave functions in 4.2.3.
X
f0 (x) ≤ f0 (x∗ ) + λ∗i fix (x∗ )(x − x∗ ) . (5.13)
i∈I(x∗ )
Finally, for i 6∈ I(x∗ ) we have fi (x∗ ) < 0, so that fi (xk ) < 0 for sufficiently large k. Thus we
have also shown that xk ∈ Ω for sufficiently large k, and so by definition (h + δh∗ ) ∈ C(Ω, x∗ ).
Since δ > 0 can be arbitrarily small, and since C(Ω, x∗ ) is a closed set by Exercise 2, it follows that
h ∈ C(Ω, x∗ ). ♦
Exercise 9: Suppose x∗ ∈ Ω and suppose there exists x̂ ∈ Rn such that for each i ∈ I(x∗ ), either
fi (x∗ ) < 0 and fi is convex, or fi (x̂) ≤ 0 and fi is affine. Then CQ is satisfied at x∗ . (Hint: Show
that h∗ = x̂ − x∗ satisfies the hypothesis of Lemma 3.)
Lemma 4: Suppose x∗ ∈ Ω and suppose there exists h∗ ∈ Rn such that fix (x∗ )h∗ ≤ 0 for
i ∈ I(x∗ ), and {fix (x∗ )|i ∈ I(x∗ ), fix (x∗ )h∗ = 0} is a linearly independent set. Then CQ is
satisfied at x∗ .
Proof: Let h ∈ Rn be such that fix (x∗ )h ≤ 0 for all i ∈ I(x∗ ). Let δ > 0. We will show that
(h + δh∗ ) ∈ C(Ω, x∗ ). Let Jδ = {i|i ∈ I(x∗ ), fix (x∗ )(h + δh∗ ) = 0}, consist of p elements.
Clearly Jδ ⊂ J = {i|i ∈ I(x∗ ), fi x(x∗ )h∗ = 0}, so that {fix (x∗ , u∗ )|i ∈ Jδ } is linearly
independent. By the Implicit Function Theorem, there exist ρ > 0, an open set V ⊂ Rn containing
x∗ = (w∗ , u∗ ), and a differentiable function g : U → Rp , where U = {u ∈ Rn−p ||u − u∗ | < ρ},
such that
iff
u ∈ U, and w = g(u) .
0 = fix (x∗ )(h + δh∗ ) = fiw (x∗ )(ξ + δξ ∗ ) + fiu (x∗ )(η + δη ∗ ) . (5.15)
Also, for i ∈ Jδ , 0 = fi (g(u), u) for u ∈ U so that 0 = fiw (x∗ )gu (u∗ ) + fiu (x∗ ), and hence
If we compare (5.15) and (5.16) and recall that {fiw (x∗ )|i ∈ Jδ } is a basis in Rp we can conclude
that (ξ + δξ ∗ ) = gu (u∗ )(η + δη ∗ ) so that (1/εk )(xk − x∗ ) converges to (h + hδh∗ ).
It remains to show that xk ∈ Ω for sufficiently large k. First of all, for i ∈ Jδ , fi (xk ) =
fi (g(uk ), uk ) = 0, whereas for i 6∈ Jδ , i ∈ I(x∗ ),
and since fi (x∗ ) = 0 whereas fix (x∗ )(h + δh∗ ) < 0, we can conclude that fi (xk ) < 0 for suffi-
ciently large k. Thus, xk ∈ Ω for sufficiently large k. Hence, (h + δh∗ ) ∈ C(Ω, x∗ ).
To finish the proof we note that δ > 0 can be made arbitrarily small, and C(Ω, x∗ ) is closed by
Exercise 2, so that h ∈ C(Ω, x∗ ). ♦
The next lemma applies to the formulation (5.9). Its proof is left as an exercise since it is very
similar to the proof of Lemma 4.
Lemma 5: Suppose x∗ is feasible for S (5.9) and suppose there exists h∗ ∈ Rn such that the set
{fix (x )|i ∈ I(x ), fix (x )h = 0} {rjx (x )|j = 1, . . . , k} is linearly independent, and fix (x∗ )h∗ ≤
∗ ∗ ∗ ∗ ∗
and define
Minimize m(λ)
(5.19)
subject to λ ≥ 0 .
Lemma 2: (Weak duality) If x is feasible for (5.17), i.e., x ∈ Ω(b̂), and if λ ≥ 0, then
Hence
Thus, we have
and since M (b̂) is independent of λ, if we take the infimum with respect to λ ≥ 0 in the right-hand
inequality we get (5.20). ♦
The basic problem of Duality Theory is to determine conditions under which M (b̂) = m in ∗
Definition: A pair (x̂, λ̂) with x̂ ∈ X, and λ̂ ≤ 0 is said to satisfy the optimality conditions if
5.2. DUALITY THEORY 59
λ̂i = 0 when fi (x̂) < b̂i , equivalently, λ̂0 (f (x̂) − b̂) = 0. (5.23)
λ̂ ≥ 0 is said to be an optimal price vector if there is x̂ ∈ X such that (x̂, λ̂) satisfy the optimality
condition. Note that in this case x̂ ∈ Ω(b̂) by virtue of (5.22).
The next result is equivalent to Theorem 4(ii) of Section 1 if X = Rn , and fi , 0 ≤ i ≤ m, are
differentiable.
Theorem 1: (Sufficiency) If (x̂, λ̂) satisfy the optimality conditions, then x̂ is an optimal solution to
the primal, λ̂ is an optimal solution to the dual, and M (b̂) = m∗ .
Proof: Let x ∈ Ω(b̂), so that λ̂0 (f (x) − b̂) ≤ 0. Then
so that x̂ is optimal for the primal, and hence by definition f0 (x̂) = M (b̂). Also
hence
Since (5.24) holds for all x ∈ Ω(b) and x̃ ∈ Ω(b̃) it follows that
M (θb + (1 − θ)b̂) ≥ sup {f0 (θx + (1 − θ)x̃)|x ∈ Ω(b), x̃ ∈ Ω(b̃)}
≥ sup{f0 (x)|x ∈ Ω(b)} + (1 − θ) sup {f0 (x̃)|x̃ ∈ Ω(b̃)}
= θM (b) + (1 − θ)M (b̃). ♦
S
Definition: Let X ⊂ Rn and let g : X → R {∞, −∞}. A vector λ ∈ Rn is said to be a
supergradient (subgradient) of g at x̂ ∈ X if
g(x) ≤ g(x̂) + λ0 (x − x̂) for x ∈ X.
(g(x) ≥ g(x̂) + λ0 (x − x̂) for x ∈ X.)
(See Figure 5-3.)
M (b) M (b)
M (b̂) .
.b 6∈MB(b̂) .
b̂ b b̂ b
M is not stable at b̂ M is stable at b̂
M (b)
M (b̂) + λ0 (b − b̂)
-
-
.
-
-
-
b̂ b
, λ is a supergradient at b̂
S
Definition: The function M : B → R {∞} is said to be stable at b̂ ∈ B if there exists a real
number K such that
M (b) ≤ M (b̂) + K|b − b̂| for b ∈ B .
(In words, M is stable at b̂ if M does not increase infinitely steeply in a neighborhood of b̂. See
Figure 5.3.)
A more geometric way of thinking about subgradients is the following. Define the subset A ⊂
R1+m by
5.2. DUALITY THEORY 61
Thus A is the set lying ”below” the graph of M . We call A the hypograph1 of M . Since M is
concave it follows immediately that A is convex (in fact these are equivalent statements).
X
m X
m
λ0 r̂ + λi b̂i ≥ λ0 r + λi bi for all (r, b) ∈ A . (5.25)
i=1 i=1
P P
(In words, A lies below the hyperplane π̂ = {(r, b)|λ0 r+ λi bi = λ0 r̂+ λi bi }.) The supporting
hyperplane is said to be non-vertical if λ0 6= 0. See Figure 5.4.
Exercise 2: Show that if b̂ ∈ B, b̃ ≥ b̂, and r̃ ≤ M (b̂), then b̃ ∈ B, M (b̃), and (r̃, b̃) ∈ A.
Exercise 3: Assume that b̂ ∈ B, and M (b̂) < ∞. Show that (i) if λ = (λ1 , . . . , λm )0 is a
supergradient of M at b̂ then λ ≥ 0, and (1, −λ1 , . . . , −λm )0 defines a non-vertical hyperplane
supporting A at (M (b̂), b̂), (ii) if (λ0 , −λ1 , . . . , −λm )0 defines a hyperplane supporting A at
(M (b̂), b̂) then λ0 ≥ 0, λi ≥ 0 for 1 ≤ i ≤ m; futhermore, if the hyperplane is non-vertical then
((λ1 /λ0 , . . . , (λm /λ0 ))0 is a supergradient of M at b̂.
We will prove only one part of the next crucial result. The reader who is familiar with the
Separation Theorem of convex sets should be able to construct a proof for the second part based
on Figure 5.4, or see the Appendix at the end of this Chapter.
Lemma 4: (Gale [1967]) M is stable at b̂ iff M has a supergradient at b̂. Proof: (Sufficiency only)
Let λ be a supergradient at b̂, then
so that λ̂0 (f (x̂) − b̂) ≥ 0. But then λ̂0 (b̂ − f (x̂)) = 0, giving (5.23). Next let x ∈ X. Then
(f0 (x), f (x)) ∈ A, hence again by Exercise 3
Since f0 (x̂) = M (b̂), and λ̂0 (f (x̂) − b̂) = 0, we can rewrite the inequality above as
1
From the Greek “hypo” meaning below or under. This neologism contrasts with the epigraph of a function which is
the set lying above the graph of the function.
62 CHAPTER 5. NONLINEAR PROGRAMMING
M (b)
M (b̂) . A
b
b̂
No non-vertical hyperplane supporting A at (M (b̂), b̂)
M (b)
π̂
M (b̂)
(λ0 , . . . , λm )
.
A
b̂ b
π̂ is a non-vertical hyperplane supporting A at (M (b̂), b̂)
Hence
M (b) = sup{f0 (x)|x ∈ Ω(b)} ≤ M (b̂) + λ̂0 (b − b̂) ,
so that λ̂0 is a supergradient of M at b̂. ♦
Lemma 6: Suppose that b̂ ∈ B, and M (b̂) < ∞. Then λ̂ is a supergradient of M at b̂ iff λ̂ is an
optimal solution of the dual (5.19) and m(λ̂) = M (b̂).
Proof: Let λ̂ be a supergradient of M at b̂. Let x ∈ X. By Exercises 2 and 3
5.2. DUALITY THEORY 63
Hence,
M (b) = sup{f0 (x)|x ∈ Ω(b)} ≤ M (b̂) + λ̂0 (b − b̂) ,
so that λ̂ is a supergradient. ♦
We can now summarize our results as follows.
Theorem 2: (Duality) Suppose b̂ ∈ B, M (b̂) < ∞, and M is stable at b̂. Then
(i) there exists an optimal solution λ̂ for the dual, and m(λ̂) = M (b̂),
(ii) λ̂ is optimal for the dual iff λ̂ is a supergradient of M at b̂,
(iii) if λ̂ is any optimal solution for the dual, then x̂ is optimal for the primal iff (x̂, λ̂) satisfy the
optimality conditions of (5.21), (5.22), and (5.23).
Proof: (i) follows from Lemmas 4,6. (ii) is implied by Lemma 6. The “if” part of (iii) follows from
Theorem 1, whereas the “only if” part of (iii) follows from Lemma 5. ♦
Corollary 1: Under the hypothesis of Theorem 2, if λ̂ is an optimal solution to the dual then
(∂M + /∂bi )(b̂) ≤ λ̂i ≤ (∂M − /∂bi )(b̂).
Exercise 4: Prove Corollary 1. (Hint: See Theorem 5 of 4.2.3.)
The proof rests on the Separation Theorem for convex sets, and only depends on the fact that M
is concave, M (b̂) < ∞ without loss of generality, and b̂ is the interior of B. For details see the
Appendix.
Much of duality theory can be given an economic interpretation similar to that in Section 4.4.
Thus, we can think of x as the vector of n activity levels, f0 (x) the corresponding revenue, X as
constraints due to physical or long-term limitations, b as the vector of current resource supplies,
and finally f (x) the amount of these resources used up at activity levels x. The various convexity
conditions are generalizations of the economic hypothesis of non-increasing returns-to-scale. The
primal problem (5.17) is the short-term decision problem faced by the firm. Next, if the current
resources can be bought or sold at prices λ̂ = (λ1 , . . . , λm )0 , the firm faces the decision problem
(5.18). If for a price system λ̂, an optimal solution of (5.17) also is an optimal solution for (5.18),
then we can interpret λ̂ as a system of equilibrium prices just as in 4.2. Assuming the realistic
condition b̂ ∈ B, M (b̂) < ∞ we can see from Theorem 2 and its Corollary 1 that there exists
an equilibrium price system iff (∂M + /∂bi )(b̂) < ∞, 1 ≤ i ≤ m; if we interpret (∂M + /∂bi )(b̂)
as the marginal revenue of the ith resource, we can say that equilibrium prices exist iff marginal
productivities of every (variable) resource is finite. These ideas are developed in (Gale [1967]).
M (b)
M (b̂) .
A
b̂ b
Figure 5.5: If M is not concave there may be no supporting hyperplane at (M (b̂), b̂).
Referring to Figure 5.3 or Figure 5.4, and comparing with Figure 5.5 it is evident that if M is not
concave or, equivalently, if its hypograph A is not convex, there may be no hyperplane supporting A
at (M (b̂), b̂). This is the reason why duality theory requires the often restrictive convexity hypoth-
esis on X and fi . It is possible to obtain the duality theorem under conditions slightly weaker than
convexity but since these conditions are not easily verifiable we do not pursue this direction any fur-
ther (see Luenberger [1968]). A much more promising development has recently taken place. The
basic idea involved is to consider supporting A at (M (b̂), b̂) by (non-vertical) surfaces π̂ more gen-
eral than hyperplanes; see Figure 5.6. Instead of (5.18) we would then have more general problem
of the form (5.26):
where F : Rm → R is chosen so that π̂ (in Figure 5.6) is the graph of the function b 7→ M (b̂) −
F (b − b̂). Usually F is chosen from a class of functions φ parameterized by µ = (µ1 , . . . , µk ) ≥ 0.
Then for each fixed µ ≥ 0 we have (5.27) instead of (5.26):
M (b) π̂
M (b̂) .
A
b̂ b
If we let
ψ(µ) =sup{f0 (x) − φ(µ; f (x) − b̂)|x ∈ X} .
then the dual problem is
Minimize ψ(µ)
subject to µ ≥ 0 ,
5.2.3 Applications.
Decentralized resource allocation.
Parts (i) and (iii) of Theorem 2 make duality theory attractive for computation purposes. In particular
from Theorem 2 (iii), if we have an optimal dual solution λ̂ then the optimal primal solutions are
those optimal solutions of (5.18) for λ = λ̂ which also satisfy the feasibility condition (5.22) and
66 CHAPTER 5. NONLINEAR PROGRAMMING
the “complementary slackness” condition (5.23). This is useful because generally speaking (5.18)
is easier to solve than (5.17) since (5.18) has fewer constraints.
Consider a decision problem in a large system (e.g., a multi-divisional firm). The system is
made up of k sub-systems (divisions), and the decision variable of the ith sub-system is a vector
xi ∈ Rni , 1 ≤ i ≤ k. The sub-system has individual constraints of the form xi ∈ X i where xi is
a convex set. Furthermore, the sub-systems share some resources in common and this limitation is
expressed as f 1 (x1 ) + . . . + f k (xk ) ≤ b̂ where f i : Rni → Rm are convex functions and b̂ ∈ Rm
is the vector of available common resources. Suppose that the objective function of the large system
is additive, i.e. it is the form f01 (x1 ) + . . . + f0k (xk ) where f0i : Rni → R are concave functions.
Thus we have the decision problem (5.28):
X
k
Maximize f0i (xi )
i=1
subject to xi ∈ X i , 1 ≤ i ≤ k, (5.28)
Xk
f i (xi ) ≤ b̂ .
i=1
Xk
Maximize f0i (xi ) − λ0 f i (xi ) − λ0 ( f i (xi ) − b̂)
i=1
subject to xi ∈ X i , 1 ≤ i ≤ k ,
X
k
If we let mi (λ) = sup{f0i (xi ) − λ0 f i (xi )|xi ∈ X i }, and m(λ) = mi (λ) + λ0 b̂, then the dual
i=1
problem is
Minimize m(λ) ,
(5.30)
subject to λ ≥ 0 .
Note that (5.29) may be much easier to solve than (5.28) because, first of all, (5.29) involves fewer
constraints, but perhaps more importantly the decision problems in (5.29) are decentralized whereas
in (5.28) all the decision variables x1 , . . . , xk are coupled together; in fact, if k is very large it may
be practically impossible to solve (5.28) whereas (5.29) may be trivial if the dimensions of xi are
small.
Assuming that (5.28) has an optimal solution and the stability condition is satisfied, we need to
find an optimal dual solution so that we can use Theorem 2(iii). For simplicity suppose that the
f0i , 1 ≤ i ≤ k, are strictly concave, and also suppose that (5.29) has an optimal solution for every
λ ≥ 0. Then by Exercise 8 of Section 1, for each λ ≥ 0 there is a unique optimal solution of (5.29),
say xi (λ). Consider the following algorithm.
5.2. DUALITY THEORY 67
(t)
qi (t + 1) − qi (t) = βi (qis − qi (t)) + ψi−1 qvi−1 − ψi qvii(t)
i (5.32)
+αi zi (t) − ηi vi , t = 1, . . . , T and i = 1, . . . , N.
68 CHAPTER 5. NONLINEAR PROGRAMMING
direction of flow
0 1 i−1 i i+1 N N +1
q0 q1 qi−1 qi qi+1 qN
si si−a si si+1 sN
Here, vi = volume of water in area i measured in liters, ψi = volume of water which flows from
area i to are i + 1 in each period measured in liters. αi is the rate of decay of BOD per interval. This
decay occurs by combination of BOD and DO. βi is the rate of generation of DO. The increase in
DO is due to various natural oxygen-producing biochemical reactions in the stream and the increase
is proportional to (q s − qi ) where q s is the saturation level of DO in the stream. Finally, ηi is the
DO requirement in the bottom sludge. The vi , ψi , αi , ηi , q s are parameters of the stream and are
assumed known. They may vary with the time interval t. Also z0 (t), q0 (t) which are the concen-
trations immediately upstream from area 1 are assumed known. Finally, the initial concentrations
zi (1), qi (1), i = 1, . . . , N are assumed known.
Now suppose that the waste treatment facility in area i removes in interval t a fraction πi (t) of
the concentration si (t) of BOD. Then (5.31) is replaced by
We now turn to the costs associated with waste treatment and pollution. The cost of waste treat-
ment can be readily identified. In period t the ith facility treats mi (t) liters of effluent with a BOD
concentration si (t) mg/liter of which the facility removes a fraction πi (t). Hence, the cost in period
t will be fi (πi (t), si (t), mi (t)) where the function must be monotonically increasing in all of its
arguments. We further assume that f is convex.
The costs associated with increased amounts of BOD and reduced amounts of DO are much
more difficult to quantify since the stream is used by many institutions for a variety of purposes
(e.g., agricultural, industrial, municipal, recreational), and the disutility caused by a decrease in
the water quality varies with the user. Therefore, instead of attempting to quantify these costs let
us suppose that some minimum water quality standards are set. Let q be the minimum acceptable
DO concentration and let z̄ be the maximum permissible BOD concentration. Then we face the
5.2. DUALITY THEORY 69
following NP:
X
N X
T
Maximize − fi (πi (t), si (t), mi (t))
i=1 t=1
subject to (5.32), (5.33), and (5.34)
−qi (t) ≤ −q , i = 1, . . . , N ; t = 1, . . . , T,
zi (t) ≤ z̄ , i = 1, . . . , N ; t = 1, . . . , T,
0 ≤ πi (t) ≤ 1 , i = 1, . . . , N ; t = 1, . . . , T.
Suppose that all the treatment facilities are in the control of a single public agency. Then assuming
that the agency is required to maintain the standards (q, z̄) and it does this at a minimum cost it will
solve the NP (5.34) and arrive at an optimal solution. Let the minimum cost be m(q, z̄). But if
there is no such centralized agency, then the individual polluters may not (and usually do not) have
any incentive to cooperate among themselves to achieve these standards. Furthermore, it does not
make sense to enforce legally a minimum standard qi (t) ≥ q, zi (t) ≤ z̄ on every polluter since the
pollution levels in the ith area depend upon the pollution levels on all the other areas lying upstream.
On the other hand, it may be economically and politically acceptable to tax individual polluters in
proportion to the amount of pollutants discharged by the individual. The question we now pose
is whether there exist tax rates such that if each individual polluter minimizes its own total cost
(i.e., cost of waste treatment + tax on remaining pollutants), then the resulting water quality will be
acceptable and, furthermore, the resulting amount of waste treatment is carried out at the minimum
expenditure of resources (i.e., will be an optimal solution of (5.34)).
It should be clear from the duality theory that the answer is in the affirmative. To see this let
wi (t) = (zi (t), −qi (t))0 , let w(t) = (w1 (t), . . . , wN (t)), and let w = (w(1), . . . , w(t)). Then we
can solve (5.32) and (5.33) for w and obtain
w = b + Ar , (5.35)
where the matrix A and the vector b depend upon the known parameters and initial conditions, and
r is the NT-dimensional vector with components (1 − πi (t))si (t)mi (t). Note that the coefficients
of the matrix must be non-negative because an increase in any component of r cannot decrease the
BOD levels and cannot increase the DO levels. Using (5.35) we can rewrite (5.34) as follows:
XX
Maximize − fi (πi (t), si (t), mi (t))
i t
(5.36)
subject to b + Ar ≤ w̄ ,
0 ≤ πi (t) ≤ 1 , i = 1, . . . , N ; t = 1, . . . , T,
where the 2N T -dimensional vector w̄ has its components equal to −q or z̄ in the obvious manner.
By the duality theorem there exists a 2N T -dimensional vector λ∗ ≥ 0, and an optimal solution
πi∗ (t), i = 1, . . . , N, t = 1, . . . , T , of the problem:
XX
Maximize − fi (πi (t), si (t), mi (t)) − λ∗0 (b + Ar − w)
i t (5.37)
subject to 0 ≤ πi (t) ≤ 1, i = 1, . . . , N ; t = 1, . . . , T ,
such that {πi∗ (t)} is also an optimal solution of (5.36) and, furthermore, the optimal values of (5.36)
and (5.37) are equal. If we let p∗ = A0 λ∗ ≥ 0, and we write the components of p∗ as p∗i (t) to match
70 CHAPTER 5. NONLINEAR PROGRAMMING
with the components (1 − πi (t))si (t)mi (t) of r we can see that (5.37) is equivalent to the set of N T
problems:
Maximize − fi (πi (t), si (t), mi (t)) − p∗i (t)(1 − πi (t))si (t)mi (t)
0 ≤ πi (t) ≤ 1 , (5.38)
i = 1, . . . , N ; t = 1, . . . , T .
Thus, p∗i (t) is optimum tax per mg of BOD in area i during period t.
Before we leave this example let us note that the optimum dual variable or shadow price λ∗
plays an important role in a larger framework. We noted earlier that the quality standard (q, z̄)
was somewhat arbitrary. Now suppose it is proposed to change the standard in the ith area during
period t to q + ∆qi (t) and z̄ + ∆zi (t). If the corresponding components of λ∗ are λq∗
i (t) and λi (t),
z∗
then the change in the minimum cost necessary to achieve the new standard will be approximately
λq∗
i (t)∆qi (t) + λi (t)∆zi (t). This estimate can now serve as a basis in making a benefits/cost
z∗
µ 0 x = 0 , λ0 y = 0 . (5.43)
Suppose we try to solve (5.41) and (5.42) by Phase I of the Simplex algorithm (see 4.3.2). Then we
must apply Phase II to the LP:
X
m X
n
Maximize − zi − ξj
i=1 j=1
5.4. COMPUTATIONAL METHOD 71
subject to
Ax + Im y +z =b
(5.44)
−P x − A0 λ + In µ + ξ = −c
x ≥ 0, y ≥ 0, λ ≥ 0, µ ≥ 0, z ≥ 0, ξ ≥ 0,
starting with a basic feasible solution z = b, ξ = −c. (We have assumed, without loss of generality,
that b ≥ 0 and −c ≥ 0.) If (5.41) and (5.42) have a solution then the maximum value in (5.44) is 0.
We have the following result.
Lemma 1: If (5.41), (5.42), and (5.43) have a solution, then there is an optimal basic feasible solution
of (5.44) which is also a solution f (5.41), (5.42), and (5.43).
Proof: Let x̂, ŷ, λ̂, µ̂ be a solution of (5.41), (5.42), and (5.43). Then x̂, ŷ, λ̂, µ̂, ẑ = 0, ξˆ = 0 is
an optimal solution of (5.44). Furthermore, from (5.42) and (5.43) we see that at most (n + m)
components of (x̂, ŷ, λ̂, µ̂) are non-zero. But then a repetition of the proof of Lemma 1 of 4.3.1 will
also prove this lemma. ♦
This lemma suggests that we can apply the Simplex algorithm of 4.3.2 to solve (5.44), starting
with the basic feasible solution z = b, ξ = −c, in order to obtain a solution of (5.41), (5.42), and
(5.43). However, Step 2 of the Simplex algorithm must be modified as follows to satisfy (5.43):
If a variable xj is currently in the basis, do not consider µj as a candidate for entry into the basis;
if a variable yi is currently in the basis, do not consider λi as a candidate for entry into the basis. If
it not possible to remove the zi and ξj from the basis, stop.
The above algorithm is due to Wolfe [1959]. The behavior of the algorithm is summarized below.
Theorem 2: Suppose P is positive definite. The algorithm will stop in a finite number of steps at an
optimal basic feasible solution (x̂, ŷ, λ̂, µ̂, ẑ, ξ̂) of (5.44). If ẑ = 0 and ξˆ = 0 then (x̂, ŷ, λ̂, µ̂) solve
(5.41), (5.42), and (5.43) and x̂ is an optimal solution of (5.39). If ẑ 6= 0 or ξ̂ 6= 0, then there is no
solution to (5.41), (5.42), (5.43), and there is no feasible solution of (5.39).
For a proof of this result as well as for a generalization of the algorithm which permits positive
semi-definite P see (Cannon, Cullum, and Polak [1970], p. 159 ff).
Maximize f0 (x)
(5.45)
subject to fi (x) ≤ 0, i = 1, . . . , m ,
Minimize ψ(x̂)(h)
subject to − ψ(x̂)(h) − f0x (x̂)h ≤ 0 ,
(5.46)
−ψ(x̂)(h) + fi (x̂)fix h ≤ 0 ,
1 ≤ i ≤ m , −1 ≤ hj ≤ 1 , 1 ≤ j ≤ n .
72 CHAPTER 5. NONLINEAR PROGRAMMING
Ω
f3 = 0
Call h(x̂) an optimum solution of (5.46) and let h0 (x̂) = ψ(x̂)(h(x̂)) be the minimum value at-
tained. (Note that by Exercise 1 of 4.5.1 (5.46) can be solved as an LP.)
The following algorithm is due to Topkis and Veinott [1967].
Step 1. Find x0 ∈ Ω, set k = 0, and go to Step 2.
Step 2. Solve (5.46) for x̂ = xk and obtain h0 (xk ), h(xk ). If h0 (xk ) = 0, stop, otherwise go to Step
3.
Step 3. Compute an optimum solution µ(xk ) to the one-dimensional problem,
and go to Step 4.
Step 4. Set xk+1 = xk + µ(xk )h(xk ), set k = k + 1 and return to Step 2.
The performance of the algorithm is summarized below.
Theorem 1: Suppose that the set
is compact, and has a non-empty interior, which is dense in Ω(x0 ). Let x∗ be any limit point of
the sequence x0 , x1 , . . . , xk , . . . , generated by the algorithm. Then the Kuhn-Tucker conditions are
satisfied at x∗ .
For a proof of this result and for more efficient algorithms the reader is referred to (Polak [1971]).
Remark: If h0 (xk ) < 0 in Step 2, then the direction h(xk ) satisfies f0x (xk )h(xk ) > 0, and fi (xk )+
fix (xK )h(xk ) < 0, 1 ≤ i ≤ m. For this reason h(xk ) is called a (desirable) feasible direction.
(See Figure 5.8.)
5.5. APPENDIX 73
5.5 Appendix
The proofs of Lemmas 4,7 of Section 2 are based on the following extremely important theorem
(see Rockafeller [1970]).
Separation theorem for convex sets. Let F, G be convex subsets of Rn such that the relative interiors
of F, G are disjoint. Then there exists λ ∈ Rn , λ 6= 0, and θ ∈ R such that
λ0 g ≤ θ for all g ∈ G
λ0 f ≥ θ for all f ∈ F .
From the definition of F , and the fact that (λ0 , . . . , λm ) 6= 0, it can be verified that (5.49) can hold
X m Xm
only if λ0 > 0. Also from (5.49) we can see that λi b̂i ≥ θ, whereas from (5.48) λi b̂i ≤ θ,
i=1 i=1
X
m
so that λi b̂i = θ. But then from (5.48) we get
i=1
X
m X
m
λi
1
M (b) − M (b̂) ≤ λ0 [θ − λ i bi ] = (− )(bi − b̂). ♦
λ0
i=1 i=1
Proof of Lemma 7: Since b̂ is in the interior of B, there exists ε > 0 such that
X
m
λ0 r + λi b̂i ≤ θ , for (r, b) ∈ G . (5.51)
i=1
From (5.49), and the fact that (λ0 , . . . , λm ) 6= 0 we can see that (5.50) and (5.51) imply λ0 > 0.
From (5.50),(5.51) we get
X
m
λ0 M (b̂) + λi b̂i = θ ,
i=1
In this chapter we apply the results of the last two chapters to situations where decisions have to be
made sequentially over time. A very important class of problems where such situations arise is in
the control of dynamical systems. In the first section we give two examples, and in Section 2 we
derive the main result.
6.1 Examples
The trajectory of a vertical sounding rocket is controlled by adjusting the rate of fuel ejection which
generates the thrust force. Specifically suppose that the equations of motion are given by (6.1).
where x1 (t) is the height of the rocket from the ground at time t, x2 (t) is the (vertical) speed at
time t, x3 (t) is the weight of the rocket (= weight of remaining fuel) at time t. The “dot” denotes
differentiation with respect to t. These equations can be derived from the force equations under the
assumption that there are four forces acting on the rocket, namely: inertia = x3 ẍ1 = x3 ẋ2 ; drag
force = CD ρ(x1 )x22 where CD is constant, ρ(x1 ) is a friction coefficient depending on atmospheric
density which is a function of x1 ; gravitational force = gx3 with g assumed constant; and thrust
force CT ẋ3 , assumed proportional to rate of fuel ejection. See Figure 6.1. The decision variable at
time t is u(t), the rate of fuel ejection. At time 0 we assume that (x1 (0), x2 (0), x3 (0)) = (0, 0, M );
that is, the rocket is on the ground, at rest, with initial fuel of weight M . At a prescribed final time
tf , it is desired that the rocket be at a position as high above the ground as possible. Thus, the
75
76 CHAPTER 6. DISCRETE-TIME OPTIMAL CONTROL
Maximize x1 (tf )
subject to ẋ(t) = f (x(t), u(t)), 0 ≤ t ≤ tf
(6.2)
x(0) = (0, 0, M )
u(t) ≥ 0, x3 (t) ≥ 0, 0 ≤ t ≤ tf ,
where x = (x1 , x2 , x3 )0 , f : R3+1 → R3 is the right-hand side of (6.1). The constraint inequalities
u(t) ≥ 0 and x3 (t) ≥ 0 are obvious physical constraints.
x3 ẍ1 = inertia
CR ẋ3 = thrust
The decision problem (6.2) differs from those considered so far in that the decision variables,
which are functions u : [0, tf ] → R, cannot be represented as vectors in a finite-dimensional
space. We shall treat such problems in great generality in the succeeding chapters. For the moment
we assume that for computational or practical reasons it is necessary to approximate or restrict
the permissible function u(·) to be constant over the intervals [0, t1 ), [t1 , t2 ), . . . , [tN −1 , tf ), where
t1 , t2 , . . . , tN −1 are fixed a priori. But then if we let u(i) be the constant value of u(·) over [ti , ti+1 ),
we can reformulate (6.2) as (6.3):
Maximize x1 (tN )(tN = tf )
subject to x(ti+1 ) = g(i, x(ti ), u(i)), i = 0, 1, . . . , N − 1
(6.3)
x(t0 ) = x(0) = (0, 0, M )
u(i) ≥ 0, x3 (ti ) ≥ 0, i = 0, 1, . . . , N .
In (6.3) g(i, x(t1 ), u(i)) is the state of the rocket at time ti+1 when it is in state x(ti ) at time ti and
u(t) ≡ u(i) for ti ≤ t < ti+1 .
As another example consider a simple inventory problem where time enters discretely in a natural
fashion. The Squeezme Toothpaste Company wants to plan its production and inventory schedule
for the coming month. It is assumed that the demand on the ith day, 0 ≤ i ≤ 30, is d1 (i) for
6.2. MAIN RESULT 77
their orange brand and d2 (i) for their green brand. To meet unexpected demand it is necessary that
the inventory stock of either brand should not fall below s > 0. If we let s(i) = (s1 (i), s2 (i))0
denote the stock at the beginning of the ith day, and m(i) = (m1 (i), m2 (i))0 denote the amounts
manufactured on the ith day, then clearly
where d(i) = (d1 (i), d2 (i))0 . Suppose that the initial stock is ŝ, and the cost of storing inventory s
for one day is c(s) whereas the cost of manufacturing amount m is b(m). The the cost-minimization
decision problem can be formalized as (6.4):
30
X
Maximize (c(s(i)) + b(m(i)))
i=0
subject to s(i + 1) = s(i) + m(i) − d(i), 0 ≤ i ≤ 29 (6.4)
s(0) = ŝ
s(i) ≥ (s, s)0 , m(i) ≥ 0, 0 ≤ i ≤ 30 .
Before we formulate the general problem let us note that (6.3) and (6.4) are in the form of non-
linear programming problems. The reason for treating these problems separately is because of their
practical importance, and because the conditions of optimality take on a special form.
X
N −1
Maximize f0 (i, x(i), u(i))
i=0
subject to
dynamics : x(i + 1) − x(i) = f (i, x(i), u(i)), i = 0, . . . , N − 1 , (6.5)
initial condition: q0 (x(0) ≤ 0, g0 (x(0)) = 0 ,
final condition: qN (x(N )) ≤ 0, gN (x(N )) = 0 ,
state-space constraint: qi (x(i)) ≤ 0, i = 1, . . . , N − 1 ,
control constraint: hi (u(i)) ≤ 0, i = 0, . . . , N − 1 .
−1
(N −1
X
N X
= f0 (i, x(i), u(i)) − (p(i + 1))0 (x(i + 1) − x(i) − f (i, x(i), u(i)))+
i=0 i=0
−1
)
X
N X
N
i 0 0 0 N 0 i 0
(λ ) qi (x(i)) + (α ) g0 (x(0)) + (α ) gN (x(N )) + (γ ) hi (u(i)) .
i=0 i=0
Suppose that CQ is satisfied for (6.5), and x∗ (0), . . . , x∗ (N ); u∗ (0), . . . , u∗ (N − 1), is an optimal
solution. Then by Theorem 2 of 5.1.2, there exist p∗ (i) in Rn for 1 ≤ i ≤ N, λi∗ ≥ 0 in Rmi for
0 ≤ i ≤ N, αi∗ in R`i for i = 0, N, and γ i∗ ≥ 0 in Rsi for 0 ≤ i ≤ N − 1, such that
(A) the derivative of L evaluated at these points vanishes,
and
(B) λi∗ qi (x∗ (i)) = 0 for 0 ≤ i ≤ N , γ i∗ hi (u∗ (i)) = 0 for 0 ≤ i ≤ N − 1 .
We explore condition (A) by taking various partial derivatives.
Differentiating L with respect to x(0) gives
f0x (0, x∗ (0), u∗ (0)) − {−(p∗ (1))0 − (p∗ (1))0 [fx (0, x∗ (0), u∗ (0))]
+(λ0∗ )0 [q0x (x∗ (0))] + (α0∗ )0 [g0x (x∗ (0))]} = 0 ,
or
[f0u (i, x∗ (i), u∗ (i))]0 + [fu (i, x∗ (i), u∗ (i))]0 p∗ (i + l) − [hiu (u∗ (i))]0 γ i∗ = 0 . (6.10)
control constraint:
i = 0, . . . , N − 1 [f0u (i, x∗ (i), u∗ (i))]0 + [fu (i, x∗ (i)u∗ (i))]0 . γ i∗ ≥ 0
0
hi (u∗ (i)) ≤ 0 p∗ (i1 ) = [hiu (u∗ (i))]0 γ i∗ (γ i∗ ) hi (u∗ (i) = 0
79
80 CHAPTER 6. DISCRETE-TIME OPTIMAL CONTROL
p∗ (i) − p∗ (i + 1) = [Hx (i, x∗ (i), u∗ (i), u∗ (i), p∗ (i + 1))]0 − [qix (x∗ (i))]0 λi∗ ,
0≤i≤N −1 ,
Remark 2: If we linearize the dynamic equations about the optimal solution we obtain
δx(i + 1) − δx(i) = [fx (i, x∗ (i), u∗ (i))]δx(i) + [fu (i, x∗ (i, x∗ , (i), u∗ (i))]δu(i) ,
Since the homogeneous part of the linear difference equations (6.6), (6.8) is (6.13), we call (6.6),
(6.8) the adjoint equations, and the p∗ (i) are called adjoint variables.
Remark 3: If the f0 (i, ·, ·) are concave and the remaining function in (6.5) are linear, then CQ is
satisfied, and the necessary conditions of Table 6.1 are also sufficient. Furthermore, in this case we
see from (6.13) that u∗ (i) is an optimal solution of
For this reason the result is sometimes called the maximum principle.
Remark 4: The conditions (6.7), (6.9) are called transversality conditions for the following reason.
Suppose q0 ≡ 0, qN ≡ 0, so that the initial and final conditions read g0 (x(0)) = 0, gN (x(N )) = 0,
which describe surfaces in Rn . Conditions (6.7), (6.9) become respectively p∗ (0) = [g0x (x∗ (0))]0 α0∗ , p∗ (N ) =
[gN x (x(N ))]0 αN∗ which means that p∗ (0) and p∗ (N ) are respectively orthogonal or transversal to
the initial and final surfaces. Furthermore, we note that in this case the initial and final conditions
specify (`0 + `n ) conditions whereas the transversality conditions specify (n − `0 ) + (n − `n ) condi-
tions. Thus, we have a total of 2n boundary conditions for the 2n-dimensional system of difference
equations (6.5), (6.12); but note that these 2n boundary conditions are mixed, i.e., some of them
refer to the initial time 0 and the rest refer to the final time.
6.2. MAIN RESULT 81
X −1 N −1
1X
N
Maximize 1
2 x(i)0 Qx(i) + u(i)0 P u(i)
2
i=0 i=0
subject to x(i + 1) − x(i) = Ax(i) + Bu(i), 0 ≤ i ≤ N − 1
x(0) = x̂(0),
u(i) ∈ Rp , 0 ≤ i ≤ N − 1 ,
where x(i) ∈ Rn , A and B are constant matrices, x̂(0) is fixed, Q = Q0 is positive semi-definite,
and P = P 0 is positive definite, show that the optimal solution is unique and can be obtained by
solving a 2n-dimensional linear difference equation with mixed boundary conditions.
can be transformed into a linear programming problem. Here x̂(0), x̂(N ) are fixed, A and B are as
in Exercise 1.
82 CHAPTER 6. DISCRETE-TIME OPTIMAL CONTROL
Chapter 7
We will investigate decision problems similar to those studied in the last chapter with one (math-
ematically) crucial difference. A choice of control has to be made at each instant of time t where
t varies continuously over a finite interval. The evolution in time of the state of the systems to be
controlled is governed by a differential equation of the form:
where x(t) ∈ Rn and u(t) ∈ Rp are respectively the state and control of the system at time t.
To understand the main ideas and techniques of analysis it will prove profitable to study the linear
case first. The general nonlinear case is deferred to the next chapter. In Section 1 we present the
general linear problem and study the case where the initial and final conditions are particularly
simple. In Section 2 we study more general boundary conditions.
Here A(·) and B(·) are n × n- and n × p-matrix valued functions of time; we assume that they are
piecewise continuous functions. The control u(·) is constrained to take values in a fixed set Ω ⊂ Rp ,
and to be piecewise continuous.
Definition: A piecewise continuous function u : [t0 , ∞) → Ω will be called an admissible control.
U denotes the set of all admissible controls.
Let c ∈ Rn , x0 ∈ Rn be fixed and let tf ≥ t0 be a fixed time. We are concerned with the
83
84 CHAPTER 7. CONTINUOUS-TIME LINEAR OPTIMAL CONTROL
∂t (t, τ ) = A(t)Φ(t, τ ) ,
∂Φ
Exercise 1: (i) Assuming that Ω is convex, show that U is a convex set. (ii) Assuming that U is
convex show that K(t2 , t1 , z) is a convex set. (It is a deep result that K(t2 , t1 , z) is convex even if
Ω is not convex (see Neustadt [1963]), provided we include in U any measurable function
u : [t0 , ∞) → Ω.)
Definition: Let K ⊂ Rn , and let x∗ ∈ K. We say that c is the outward normal to a hyperplane
supporting K at x∗ if c 6= 0, and
c0 x∗ ≥ c0 x for all x ∈ K .
The next result gives a geometric characterization of the optimal solutions of (2).
Lemma 2: Suppose c 6= 0. Let u∗ (·) ∈ U and let x∗ (t) = φ(t, t0 , x0 , u∗ ). Then u∗ is an optimal
solution of (2) iff
(i) x∗ (tf ) is on the boundary of K = K(tf , t0 , x0 ), and
(ii) c is the outward normal to a hyperplane supporting K at x∗ . (See Figure 7.1.)
Proof: Clearly (i) is implied by (ii) because if x∗ (tf ) is in the interior of K there is δ > 0 such
that (x∗ (tf ) + δc) ∈ K; but then
7.1. THE LINEAR OPTIMAL CONTROL PROBLEM 85
x3
c
x∗ (tf )
c x2
K
π ∗ = {x|c0 x = c0 x∗ (tf )}
x1
Rt
(p∗ (tf ))0 [Φ(tf , t0 )x0 + t0f Φ(tf , τ )B(τ )u∗ (τ )dτ ]
Rt
≥ (p∗ (tf ))0 [Φ(tf , t0 )x0 + t0f Φ(tf , τ )B(τ )u(τ )dτ ] ,
which is equivalent to (7.6).
R tf ∗ 0 ∗
t0R (p (tf )) Φ(tf , τ )B(τ )u (τ )dτ (7.6)
≥ t0f (p∗ (tf ))0 Φ(tf , τ )B(τ )u(τ )dτ
t
86 CHAPTER 7. CONTINUOUS-TIME LINEAR OPTIMAL CONTROL
Now by properties of the adjoint equation we know that p∗ (t))0 = (p∗ (tf ))0 Φ(tf , t) so that (7.6) is
equivalent to (7.7),
R tf ∗ 0 ∗
R tf ∗ 0
t0 (p (τ )) B(τ )u (τ )dτ ≥ t0 (p (τ )) B(τ )u(τ )dτ, (7.7)
(p∗ (t))0 B(t)u∗ (t) < (p∗ (t))0 B(t)v, for |t − t∗ | < δ . (7.8)
Define ũ(·) ∈ U by
v |t − t∗ | < δ, t ∈ [t0 , tf ]
ũ(t) =
u∗ (t) otherwise .
Corollary 1: For t0 ≤ t1 ≤ t2 ≤ tf ,
(p∗ (t2 ))x∗ (t2 ) ≥ (p∗ (t2 ))0 x for all x ∈ K(t2 , t1 , x∗ (t1 )). (7.9)
and we define M by
M (t, x, p) = sup{H(t, x, u, p)|u ∈ Ω},
then (7.5) can be rewritten as
Exercise 3: (i) Show that m(t) = M (t, x∗ (t), p∗ (t)) is a Lipschitz function of t. (ii) If A(t), B(t)
are constant, show that m(t) is constant. (Hint: Show that (dm/dt) ≡ 0.)
The next two exercises show how we can obtain important qualitative properties of an optimal
control.
Exercise 4: Suppose that Ω is bounded and closed. Show that there exists an optimal control u∗ (·)
such that u∗ (t) belongs to the boundary of Ω for all t.
Exercise 5: Suppose Ω = [α, β], so that B(t) is an n × 1 matrix. Suppose that A(t) ≡ A and
B(t) ≡ B are constant matrices and A has n real eigenvalues. Show that there is an optimal
control u∗ (·) and t0 ≤ t1 ≤ t2 ≤ . . . ≤ tn ≤ tf such that u∗ (t) ≡ α or β on [ti , ti+1 ), 0 ≤ i ≤ n.
(Hint: first show that (p∗ (t))0 B = γ1 exp(δ1 t) + . . . + γn exp(δn (t)) for some γi , δi in R.)
Exercise 6: Assume that K(tf , t0 , x0 ) is convex (see remark in Exercise 1 above). Let
f0 : Rn → R be a differentiable function and suppose that the objective function in (7.2) is
f0 (x(tf )) instead of c0 x(tf ). Suppose u∗ (·) is an optimal control. Show that u∗ (·) satisfies the
maximum principle (7.10) where p∗ (·) is the solution of the adjoint equation (7.3) with the final
condition
Also show that this condition is sufficient for optimality if f0 is concave. (Hint: Use Lemma 1 of
5.1.1 to show that if u∗ (·) is optimal, then f0x (x∗ (tf )(x∗ (tf ) − x) ≤ for all x ∈ K(tf , t0 , x0 ).)
Maximize c0 x(tf )
subject to
dynamics: ẋ(t) = A(t)x(t) + B(t)u(t), t0 ≤ t ≤ tf ,
initial condition: G0 x(t0 ) = b0 , (7.11)
final condition: Gf x(tf ) = bf ,
control constraint: u(·) ∈ U , i.e., u : [t0 , t{ ] → ⊗ and
u(·)piecewise continuous.
T 0 = {z ∈ Rn |G0 z = b0 } ,
T f = {z ∈ Rn |Gf z = bf } .
Rn Rn Rn Rn
p∗ (t2 )
K(tf , t0 , x0 )
p∗ (t 1) x∗ (t2 ) p∗ (tf ) = c
x0 = x∗ (t 0) = K(t0 , t0 , x0 ) x∗ (tf )
x∗ (t1 ) K(t2 , t0 , x0 )
K(t1 , t0 , x0 )
t0 t1 t2 tf
CHAPTER 7. CONTINUOUS-TIME LINEAR OPTIMAL CONTROL
7.2. MORE GENERAL BOUNDARY CONDITIONS 89
p0 (z − z ∗ ) = 0 for all z ∈ T 0 .
Similarly if z ∗ ∈ T f , p ⊥ T f (z ∗ ) if
p0 (z − z ∗ ) = 0 for all z ∈ T f .
Definition: Let X(tf ) = {Φ(tf , t0 )z + w|z ∈ T 0 , w ∈ K(tf , t0 , 0)}.
Exercise 1: X(tf ) = {Φ(tf , t0 , z, u)|z ∈ T 0 , u(·) ∈ U}.
Lemma 1: Let x∗ (t0 ) ∈ T 0 and u∗ (·) ∈ U . Let x∗ (t) = φ(t, t0 , x∗ (t0 ), u∗ ), and suppose that
x∗ (tf ) ∈ T f .
(i) Suppose the Ω is convex. If u∗ (·) is optimal, there exist p̂0 ∈ R, p̂0 ≥ 0 and p̂ ∈ Rn , not both
zero, such that
(p̂0 c + p̂)0 x∗ (tf ) ≥ (p̂0 c + p̂)0 x for all x ∈ X(tf ) , (7.12)
p̂0 r + p̂0x ≥ p̂0 c0 x∗ (tf ) + p̂0 x∗ (tf ) for all r > c0 x∗ (tf ), x ∈ T f ,
or
But {x − x∗ (tf )|x ∈ T f } = {z|Gf z = 0} is a subspace of Rn , so that (7.21) can hold only if
which is the same as (7.13). Finally (7.12) always implies (7.14), because by the definition of X(tf )
and Exercise 1, {Φ(tf , t0 )(z − x∗ (t0 )) + x∗ (tf )} ∈ X(tf ) for all z ∈ T 0 , so that from (7.12) we
get
Remark 1: If it is possible to choose p̂0 > 0 then p̂0 = 1, p̂ = (p̂/p̂0 ) will also satisfy (7.12),
(7.13), and (7.14). In particular, in part (ii) of the Lemma we may assume p̂0 = 1.
Remark 2: it would be natural to conjecture that in part (i) p̂0 may be chosen > 0. But in Figure
7.3 below, we illustrate a 2-dimensional situation where T 0 = {x0 }, T f is the vertical line, and
T f ∩ X(tf ) consists of just one vector. It follows that the control u∗ (·) ∈ U for which
x∗ (tf ) = φ(tf , t0 , x0 , u∗ ) ∈ T f is optimal for any c. Clearly then for some c (in particular for the
c in Figure 7.3) we are forced to set p̂0 = 0. In higher dimensions the reasons may be more
complicated, but basically if T f is “tangent” to X(tf ) we may be forced to set p̂0 = 0 (see
Exercise 2 below). Finally, we note that part (i) is not too useful if p̂0 = 0, since then (7.12), (7.13),
and (7.14) hold for any vector c whatsoever. Intuitively p̂0 = 0 means that it is so difficult to satisfy
the initial and final boundary conditions in (7.11) that optimization becomes a secondary matter.
Remark 3: In (i) the convexity of Ω is only used to guarantee that K(tf , t0 , 0) is convex. But it is
known that K(tf , t0 , 0) is convex even if Ω is not (see Neustadt [1963]).
Exercise 2: Suppose there exists z in the interior of X(tf ) such that z ∈ T f . Then in part (i) we
must have p̂0 > 0.
Theorem 1: Let x∗ (t0 ) ∈ T 0 and u∗ (·) ∈ U . Let x∗ (t) = φ(t, t0 , x∗ (t0 ), u∗ ) and suppose that
x∗ (tf ) ∈ T f .
(i) Suppose that Ω is convex. If u∗ (·) is optimal for (7.11), then there exist a number p∗0 ≥ 0, and a
function p∗ : [t0 , tf ] → Rn , not both identically zero, satisfying
[Here
Proof: A repetition of a part of the argument in the proof of Theorem 1 of Section 1 show that if p∗
satisfies (7.22), then (7.25) is equivalent to (7.26):
(p∗ (tf ))0 x∗ (tf ) ≥ (p∗ (tf ))0 x for all x ∈ K(tf , t0 , x∗ (t0 )) . (7.26)
(i) Suppose u∗ (·) is optimal and Ω is convex. Then by Lemma 1 there exist p̂ ≥ 0, p̂ ∈ Rn , not
both zero, such that (7.12), (7.13) and (7.14) are satisfied. Let p∗0 = p̂0 and let p∗ (·) be the solution
of (7.22) with the final condition
Then (7.14) and (7.13) are respectively equivalent to (7.23) and (7.24), whereas since K(tf , t0 , x∗ (t0 )) ⊂
X(tf ), (7.26) is implied by (7.12).
(ii) Suppose p∗0 > 0 and (7.22), (7.23), (7.24), and (7.26) are satisfied. Let p̂0 = p∗0 and p̂ =
p∗ (tf ) − p∗0 c, so that (7.24) becomes equivalent to (7.13). Next if x ∈ X(tf ) we have
t
K(tf , t0 , x0 ) = X(tf )
f
. x (t ) = X(t ) T T
∗
f
f
Tf
c
x0 = T 0
But by (7.23) the first term on the right vanishes, and since (w+φ(tf , t0 )x∗ (t0 )) ∈ K(tf , t0 , x∗ (t0 )),
it follows from (7.26) that the second term is bounded by (p∗ (tf ))0 x∗ (tf ). Thus
Exercise 3: Suppose that the control constraint set is Ω(t) which varies continuously with t, and
we require that u(t) ∈ Ω(t) for all t. Show that Theorem 1 also holds for this case where, in (7.25),
M (t, x, p) =sup{H(t, x, v, p)|v ∈ Ω(t)}.
Exercise 4: How would you use Exercise 3 to solve Example 3 of Chapter 1?
94 CHAPTER 7. CONTINUOUS-TIME LINEAR OPTIMAL CONTROL
Chapter 8
We now present a sweeping generalization of the problem studied in the last chapter. Unfortunately
we are forced to omit the proofs of the results since they require a level of mathematical sophis-
tication beyond the scope of these Notes. However, it is possible to convey the main ideas of the
proofs at an intuitive level and we shall do so. (For complete proofs see (Lee and Markus [1967]
or Pontryagin, et al., [1962].) The principal result, which is a direct generalization of Theorem 1 of
7.2 is presented in Section 1. An alternative form of the objective function is discussed in Section
2. Section 3 deals with the minimum-time problem and Section 4 considers the important special
case of linear systems with quadratic cost. Finally, in Section 5 we discuss the so-called singular
case and also analyze Example 4 of Chapter 1.
95
96 CHAPTER 8. CONINUOUS-TIME OPTIMAL CONTROL
2. except for a finite subset D ⊂ [t0 , tf ], the functions f, fx , fu are continuous on [t0 , tf ]×Rn ×
Rp , and
3. for every finite α, there exist finite number β and γ such that
Theorem 1: For every z ∈ Rn , for every t1 ∈ [t0 , tf ], and every piecewise continuous function
u(·) : [t0 , tf ] → Rp , there exists a unique solution
∂t (t, t1 , z, u, (·))
∂Φ
= [ ∂f
∂x (t, x, (t), u(t))]Φ(t, t1 , z, u(·)), t1 ≤ t ≤ tf ,
1. m is a nonnegative integer,
S
2. t0 < t1 < t2 < . . . tm < tf , and ti 6∈ D ∗ D, i = 1, . . . , m (recall that D is the set of
discontinuity points of f ),
3. `i ≥ 0, i = 1, . . . , m, and
4. ui ∈ Ω, i = 1, . . . , m.
8.1. MAIN RESULTS 97
Let ε(π) T> 0 be such that for 0 ≤ ε ≤ ε(π) we have [ti − ε`i , ti ] ⊂ [t0 , tf ] for all i, and
[ti −ε`i , ti ] [tj −ε`j , tj ] = φ for i 6= j. Then for 0 ≤ ε ≤ ε(π),the perturbed control u(π,ε) (·) ∈ U
corresponding to π is defined by
ui for all t ∈ [ti − ε`i , ti ] , i = 1, . . . , m
u(π,ε) (t) =
u∗ (t) otherwise .
Definition: Any vector ξ ∈ Rn is said to be a perturbation for x∗0 , and a function x(ξ,ε) defined for
ε > 0 is said to be a perturbed initial condition if
and
lim 1
− x∗0 ) = ξ .
ε→0 ε (x(ξ,ε)
Now let x∗ (t) = φ(t, t0 , x∗0 , u∗ (·)) and let xε (t) = φ(t, t0 , x(ξ,ε) , u(π,ε) (·)). Let Φ(t2 , t1 ) =
Φ(t2 , t1 , x∗ (t1 ), u∗ (·)). The following lemma gives an estimate of x∗ (t) − xε (t). The proof of the
lemma is a straightforward exercise in estimating differences of solutions to differential equations,
and it is omitted (see for example (Lee and Markus [1967])).
Lemma 1: lim |xε (t) − x∗ (t) − εh(π,ε) (t)| = 0 for t ∈ [t0 , t1 ], where h(π,ε) (·) is given by
ε→0
Remark: By Lemma 1 (x∗ (t)+εh(π,ξ) ) belongs to the set K(t, t0 , x(ξ,ε) ) up to an error of order o(ε).
In particular for ξ = 0, the set x∗ (t) + Q(t) can serve as an approximation to the set K(t, t0 , x∗0 ).
More precisely we have the following result which we leave as an exercise.
98 CHAPTER 8. CONINUOUS-TIME OPTIMAL CONTROL
u
u1
u(πε) (·)
u∗ (·)
u3
u2
ε`1 ε`2 ε`3
| | | | | | |
t1 t2 t3 tf
t0
x
x∗ (·)
xε (·)
x( ξ, ε)
εhπξ
| | | |
t1 t2 t3 tf
Exercise 1: (Recall the definition of the tangent cone in 5.1.1.) Show that
Maximize ψ(x(tf ))
subject to
dynamics: ẋ(t) = f (t, x(t), u(t)) , t0 ≤ t ≤ tf ,
initial condition: x(t0 ) = x∗0 , (8.3)
final condition: x(tf ) ∈ Rn ,
control constraint: u(·) ∈ U , i.e., u : [t0 , tf ] → Ω and
u(·) piecewise continuous ,
where we have moved the origin to x∗ (t). The situation is depicted in Figure 8.2.
K̂(ε)
Ĉ(ε) o(ε)
K(t1 , t0 , x∗ ) − {x∗ (t)}
εh
h
0
δε C(t)
Let Ĉ(ε) be the cross-section of C(t) by a plane orthogonal to h and passing through εh. Let
K̂(ε) be the cross-section of K(t, t0 , x∗0 ) − {x∗ (t0 )} by the same plane. We note the following:
(i) by Lemma 1 the distance between Ĉ(ε) and K̂(ε) is of the order o(ε);
(ii) since h is in the interior of C(t), the minimum distance between εh and Ĉ(ε) is δε where
δ > 0 is independent of ε.
Hence for ε > 0 sufficiently small εh must be trapped inside the set K̂(ε).
(This would constitute a proof except that for the argument to work we need to show that there
are no “holes” in K̂(ε) through which εh can “escape.” The complications in a rigorous proof arise
precisely from this drawback in our plausibility argument.) ♦
∗ ∗
Lemmas 1 and 2 give us a characterization of K(t, t0 , x0 ) in a neighborhood of x (t) when we
perturb the control u∗ (·) leaving the initial condition fixed. Lemma 3 extends Lemma 2 to the case
when we also allow the initial condition to vary over a fixed surface in a neighborhood of x∗0 .
Let g0 : Rn → R`0 be a differentiable function such that the `0 × n matrix gx0 (x) has rank
`0 for all x. Let b0 ∈ Rn be fixed and let T 0 = {x|g0 (x) − b0 }. Suppose that x∗0 ∈ T 0 and let
T 0 (x∗0 ) = {ξ|gx0 (x∗0 )ξ = 0}. Thus, T 0 (x∗0 ) + {x∗0 } is the plane through x∗0 tangent to the surface
T 0 . The proof of Lemma 3 is similar to that of Lemma 2 and is omitted also.
Lemma 3: Let h belong to the interior of the cone {C(t)+Φ(t, t0 )T 0 (x∗0 )}. For ε ≥ 0 let h(ε) ∈ Rn
1
be such that lim h(ε) = 0, and lim ( )h(ε) = h. Then for ε > 0 sufficiently small there exists
ε→0 ε
x0 (ε) ∈ T 0 such that
We can now prove the main result of this chapter. We keep all the notation introduced above.
Further, let gf : Rn → R`f be a differentiable function such that gxf (x) has rank `f for all x.
Let bf ∈ Rn be fixed and let T f = {x|gf (x) − bf }. Finally, if x∗ (tf ) ∈ T f let T f (x∗ (tf )) =
{ξ|gxf (x∗ (tf ))ξ = 0}.
Maximize ψ(x(tf ))
subject to
dynamics: ẋ(t) = f (t, x(t), u(t)) , t0 ≤ t ≤ tf ,
initial conditions: g0 (x(t0 )) = b0 , (8.12)
final conditions: gf (x(tf )) = bf ,
control constraint: u(·) ∈ U , i.e., u : [t0 , tf ] → Ω and
u(·) piecewise continuous .
Let u∗ (·) ∈ U , let x∗0 ∈ T 0 and let x∗ (t) = φ(t, t0 , x∗0 , u∗ (·)) be the corresponding trajectory.
Suppose that x∗ (tf ) ∈ T f , and suppose that (u∗ (·), x∗0 ) is optimal. Then there exist a number
p∗0 ≥ 0, and a function p∗ : [t0 , tf ] → Rn , not both identically zero, satisfying
final condition: (p∗ (tf ) − p∗0 ∇ψ(x∗ (tf )))⊥T f (x∗ (tf )) . (8.15)
holds for all t ∈ [t0 , tf ] except possibly for a finite set. [Here H(t, x, p, u) = p0 f (t, x, u, ), M (t, x, p) =
sup{H(t, x, v, p)|v ∈ Ω}].
Now by assumption gxf (x∗ (tf ) has maximum rank. Since gxf (x∗ (tf ))h = 0 it follows that the
Implicit Function Theorem that for ε > 0 sufficiently small there exists h(ε) ∈ Rn such that
and, moreover, h(ε) → 0, (1/ε)h(ε) → h as ε → 0. From (8.18) and Lemma 3 it follows that for
ε > 0 sufficiently small there exists x0 (ε) ∈ T 0 and uε (·) ∈ U such that
Hence we can conclude from (8.20) that the pair (x0 (ε), uε (·)) satisfies the initial and final condi-
tions, and the corresponding value of the objective function is
ψ(x∗ (tf ) + h(ε)) = ψ(x∗ (tf )) + ε)ψx (x∗ (tf ))h + o(ε) ;
for ε > 0 sufficiently small, thereby contradicting the optimality of (u∗ (·), x∗0 ).
Step 3. By the separation theorem for convex sets there exist p̂0 ∈ R, p̂1 ∈ Rn , not both zero, such
that
Arguing in exactly the same fashion as in the proof of Lemma 1 of 7.2 we can conclude that (8.21)
is equivalent to the following conditions:
p̂0 ≥ 0 ,
(8.22)
p̂1 ⊥T f (x∗ (tf )) ,
and
If we let p̂∗0 = p̂0 and p∗ (tf ) = p̂0 ∇ψ(x∗ (tf )) + p̂1 then (8.22), (8.23), and (8.24) translate respec-
tively into (8.15), (8.14), and (8.17). ♦
8.2. INTEGRAL OBJECTIVE FUNCTION 103
Z tf
Maximize f0 (t, x(t), u(t))dt
t0
subject to
dynamics: ẋ(t) = f (t, x, (t), u(t)), , t0 ≤ t ≤ tf ,
(8.27)
initial condition: g0 (x(t0 )) = b0 ,
final condition: gf (x(t)f )) = bf ,
control constraint: u(·) ∈ U ,
final-time constraint: tf ∈ (t0 , ∞) .
We analyze (8.27) by converting the variable time interval [t0 , tf ] into a fixed-time interval [0, 1].
This change of time-scale is achieved by regarding t as a new state variable and selecting a new
time variable s which ranges over [0, 1]. The equation for t is
dt(s)
ds = α(s) , 0 ≤ s ≤ 1 ,
t(0) = t0 .
Here α(s) is a new control variable constrained by α(s) ∈ (0, ∞). Now if x(·) is the solution of
and if we define
Conversely from the solution z(·) of (8.29) we can obtain the solution x(·) of (8.28) by
x(t) = z(s(t)) , t0 ≤ t ≤ tf ,
where s(·) : [t0 , tf ] → [0, 1] is the functional inverse of s(t); in fact, s(·) is the solution of the
differential equation ṡ(t) = 1/α(s(t)), s(t0 ) = 0.
8.3. VARIABLE FINAL TIME 105
With these ideas in mind it is natural to consider the fixed-final-time optimal control problem
(8.30), where the state vector (t, z) ∈ R1+m , and the control (α, v) ∈ R1+p :
Z 1
Maximize f0 (t(s), z(s), v(s))α(s)ds
0
subject to
dynamics: (ż(s), ṫ(s)) = (f (t(s), z(s), v(s))α(s), α(s)),
(8.30)
initial constraint: g0 (z(0)) = b0 , t(0) = t0 ,
final constraint: gf (z(1)) = bf , t(1) ∈ R ,
control constraint: (v(s), α(s)) ∈ Ω × (0, ∞)
for 0 ≤ s ≤ 1 and v(·), α(·) piecewise continuous.
The relation between problems (8.27) and (8.30) is established in the following result.
Lemma 1: (i) Let x∗0 ∈ T 0 , u∗ (·) ∈ U, t∗f ∈ (t0 , ∞) and let x∗ (t) = φ(t, t0 , x∗0 , u∗ (·)) be the
corresponding trajectory. Suppose that x∗ (t∗f ) ∈ T f , and suppose that (u∗ (·), x∗0 , t∗f ) is optimal for
(8.27). Define z0∗ , v ∗ (·), and α∗ (·) by
z0∗ = x∗0
v (s) = u∗ (t0 + s(t∗f − t0 )) , 0 ≤ s ≤ 1 ,
∗
x∗0 = z0∗ ,
u∗ (t) = v ∗ (s∗ (t)) , t0 ≤ t ≤ t∗f ,
t∗f = t∗ (1) ,
where s∗ (·) is functional inverse of t∗ (·). Then (u∗ (·), z0∗ , t∗f ) is optimal for (8.27).
H̃(t, x∗ (t), p̃∗ (t), u∗ (t)) = M̃ (t, x∗ (t), p̃∗ (t)) , (8.34)
holds for all t ∈ [t0 , tf ] except possibly for a finite set. Furthermore, t∗f must be such that
Finally, if f0 and f do not explicitly depend on t, then M̂ (t, x∗ (t), p̃∗ (t)) ≡ 0.
Proof: By Lemma 1, z0∗ = x∗0 , v ∗ (s) = u∗ (t0 + s(t∗f − t0 )) and α∗ (s) = (t∗f − t0 ) for 0 ≤ s ≤ 1
constitute an optimal solution for (8.30). The resulting trajectory is
z ∗ (s) = x∗ (t0 + s(t∗f − t0 )), t∗ (s) = t0 + s(t∗f − t0 ), 0 ≤ s ≤ 1 , so that in particular
z ∗ (1) = x∗ (t∗f ).
By Theorem 1 of Section 2, there exists a function λ̃∗ = (λ∗0 , λ∗ , λ∗n+1 ) : [0, 1] → R1+n+1 , not
identically zero, and with λ∗0 (s) ≡ constant and λ∗0 (s) ≥ 0, satisfying
λ̇∗0 (t) 0
λ̇∗ (t) {[ ∂f0 (t∗ (s), z ∗ (s), v ∗ (s))]0 λ∗ (s)
0
= −
∂z
adjoint equation:
+[ ∂f ∗
(t (s), z ∗ (s), v ∗ (s))]0 λ∗ (s)}α∗ (s)
(8.36)
λ̇∗ (t) ∂f ∂z
∗ ∗ ∗ 0 ∗
n+1 {[ ∂t (t (s), z (s), v (s))] λ0 (s)
0
+[ ∂t (t (s), z ∗ (s), v ∗ (s))]0 λ∗ (s)}α∗ (s)
∂f ∗
p∗0 (t) = λ∗0 (s∗ (t)), p∗ (t) = λ∗ (s∗ (t)), t0 ≤ t ≤ t∗f . (8.40)
First of all, p̃∗ is not identically zero. Because if p̃∗ ≡ 0, then from (8.40) we have (λ∗0 , λ∗ ) ≡ 0 and
then from (8.36), λ∗n+1 ≡ constant, but from (8.38), λ∗n+1 (1) = 0 so that we would have λ̃∗ ≡ 0
8.3. VARIABLE FINAL TIME 107
which is a contradiction. It is trivial to verify that p̃∗ (·) satisfies (8.31), and, on the other hand (8.37)
and (8.38) respectively imply (8.32) and (8.33). Next, (8.39) is equivalent to
where m = mass, σ = coefficient of friction, u = applied force, and x = position of the particle. For
simplicity we suppose that x ∈ R, u ∈ R and u(t) constrained by |u(t)| ≤ 1. Starting with an
initial condition x(0) = x01 , ẋ(0) = x02 we wish to find an admissible control which brings the
particle to the state x = 0, ẋ = 0 in minimum time.
ẋ1 (t) 0 1 x1 (t) 0
= + u(t) , (8.47)
ẋ2 (t) 0 −α x2 (t) b
where α = (σ/m) > 0 and b = (1/m) > 0. The control constraint set is Ω = [−1, 1].
Suppose that u∗ (·) is optimal and x∗ (·) is the corresponding trajectory. By Theorem 2 there exists
a non-zero solution p∗ (·) of
ṗ∗1 (t) 0 0 p∗1 (t)
=− (8.48)
ṗ∗2 (t) 1 −α p∗2 (t)
such that (8.44), (8.45), and (8.46) hold. Now the transition matrix function of the homogeneous
part of (8.47) is
1
1 α (1 − e−α(t−τ ) )
Φ(t, τ ) = ,
0 e−α(t−τ )
and
1 ∗
p∗2 (t) = α p1 (0) + eαt (− α1 p∗1 (0) + p∗2 (0)) . (8.49)
H(x∗ (t), p∗ (t), v) = (p∗1 (t) − αp∗2 (t))x∗2 (t) + bp∗2 (t)v
= eαt (p∗1 (0) − αp∗2 (0))x∗2 (t) + pb∗2 (t)v ,
8.3. VARIABLE FINAL TIME 109
Furthermore, since the right-hand side of (8.47) does not depend on t explicitly we must also have
eαt (p∗1 (0) − αp∗2 (0))x∗2 (t) + bp∗2 (t)u∗ (t) ≡ constant. (8.51)
We now proceed to analyze the consequences of (8.49) and (8.50). First of all since p∗1 (t) ≡
p∗1 (0), p∗2 (·)
can have three qualitatively different forms.
Case 1. −p∗1 (0) + αp∗2 (0) > 0: Evidently then, from (8.49) we see that p∗2 (t) must be a strictly
monotonically increasing function so that from (8.50) u∗ (·) can behave in one of two ways:
either
∗ −1 for t < t̂ and p∗2 (t) < 0 for t < t̂,
u (t) =
+1 for t > t̂ and p∗2 (t) > 0 for t > t̂,
or
Case 2. −p∗1 (0) + αp∗2 (0) < 0 : Evidently u∗ (·) can behave in one of two ways:
either
∗ +1 for t < t̂ and p∗2 (t) > 0 for t < t̂,
u (t) =
−1 for t > t̂ and p∗2 (t) < 0 for t > t̂,
or
Case 3. −p∗1 (0) + αp∗2 (0) = 0 : In this case p∗2 (t) ≡ (1/α)p∗1 (0). Also since p∗ (t) 6≡ 0, we must
have in this case p∗1 (0) 6= 0. Hence u∗ (·) we can behave in one of two ways:
either
1 ∗
u∗ (t) ≡ +1 and p∗2 (t) ≡ α p1 (0) >0,
or
1 ∗
u∗ (t) ≡ −1 and p∗2 (t) ≡ α p1 (0) <0,
110 CHAPTER 8. CONINUOUS-TIME OPTIMAL CONTROL
Thus, the optimal control u∗ is always equal to +1 or -1 and it can switch at most once between
these two values. The optimal control is given by
Thus the search for the optimal control reduces to finding p∗1 (0), p∗2 (0) such that the solution of the
differential equation
ẋ = x2
(8.52)
ẋ2 = −αx2 + b sgn[ α1 p∗1 (0) + eαt (− α1 p∗1 (0) + p∗2 (0))] ,
for some t∗f > 0; and then t∗f is the minimum time.
There are at least two ways of solving the two-point boundary value problem (8.52), (8.53), and
(8.54). One way is to guess at the value of p∗ (0) and then integrate (8.52) and (8.53) forward in time
and check if (8.54) is satisfied. If (8.54) is not satisfied then modify p∗ (0) and repeat. An alternative
is to guess at the value of p∗ (0) and then integrate (8.52) and (8.54) backward in time and check of
(8.53) is satisfied. The latter approach is more advantageous because we know that any trajectory
obtained by this procedure is optimal for initial conditions which lie on the trajectory. Let us follow
this procedure.
Suppose we choose p∗ (0) such that −p∗1 (0) = αp∗2 (0) = 0 and p∗2 (0) > 0. Then we must have
∗
u (t) ≡ 1. Integrating (8.52) and (8.54) backward in time give us a trajectory ξ(t) where
with
ξ1 (0) − ξ2 (0) = 0 .
This gives
eαt −1
ξ1 (t) = αb (−t + α ) , ξ2 (t) = α (1
b
− eαt ) ,
ξ1
u∗ ≡ −1
B D
u∗ ≡ 1
C
O ξ2
E u∗ ≡ 1
u∗ ≡ −1 A
F
Next suppose p∗ (0) is such that −p∗1 (0) + αp∗2 (0) > 0, and p∗2 (0) < 0. Then [(1/α)p∗1 (0) +
eαt (−(1/α)p∗1 (0) + p∗2 (0))] will have a negative value for t ∈ (0, t̂) and a positive value for t ∈
(t̂, ∞). Hence, if we integrate (8.52), (8.54) backwards in time we get trajectory ξ(t) where
˙ = −ξ2 (t)
ξ(t)
˙ξ2 (t) = αξ2 (t)+ −b for t < t̂
b for t > t̂ ,
with ξ1 (0) = 0, ξ2 (0) = 0. This give us the curve OCD. Finally if p∗ (0) is such that −p∗1 (0) +
αp∗2 (0) < 0, and p∗2 (0) < 0, then u∗ (t) = 1 for t < t̂ and u∗ (t) = −1 for t > t̂, and we get the
curve OEF .
We see then that the optimal control u∗ (·) has the following characterizing properties:
∗ 1 if x∗ (t) is above BOA or on OA
u (t) =
−1 if x∗ (t) is below BOA or on OB .
Hence we can synthesize the optimal control in feedback from: u∗ (t) = ψ(x∗ (t)) where the
B u∗ ≡ −1 x2
u∗ ≡ 1
x1
u∗ ≡ −1 O
u∗ ≡ 1A
In (8.56) we assume that P (t) is an n × n symmetric, positive semi-definite matrix whereas Q(t) is
a p × p symmetric, positive definite matrix. Gf is a given `f × n matrix, and x0 ∈ Rn , bf ∈ R`f
are given vectors. T is a fixed final time.
We apply Theorem 1 of Section 2, so that we must search for a number p∗0 ≥ 0 and a function
∗
p : [0, T ] → Rn , not both zero, such that
and
Next we claim that if the system is controllable then p∗0 6= 0, because if p∗0 = 0 then from (8.56)
we can see that
but then from (8.61) we get p∗ (T ) = 0. Hence if p∗0 = 0, then we must have p̃∗ (t) ≡ 0 which is a
contradiction. Thus, under the controllability assumption, p∗0 > 0, and hence the optimal control is
given by (8.59). Now if p∗0 > 0 it is trivial that p̂∗ (t) = (1, (p∗ (t)/p∗0 )) will satisfy all the necessary
conditions so that we can assume that p∗0 = 1. The optimal trajectory and the optimal control is
obtained by solving the following two-point boundary value problem:
For further details regarding the solution of this boundary value problem and for related topics see
(See and Markus [1967]).
Assumption (8.62) says that the marginal product of capital is positive and this marginal product
decreases with increasing capital. Assumption (8.63) is mainly for technical convenience and can
be dispensed with without difficulty.
Now suppose that s∗ : [0, T ] → [0, 1] is an optimal savings policy and let k∗ (t), 0 ≤ t ≤ T ,
be the corresponding trajectory of the capital-to-labor ratio. Then by Theorem 1 of Section 2, there
exist a number p∗0 ≥ 0, and a function p∗ : [0, T ] → R, not both identically zero, such that
ṗ∗ (t) = −p∗0 (1 − s∗ (t))fk (k∗ (t)) − p∗ (t)[s∗ (t)fk (k∗ (t)) − µ] (8.64)
p∗ (T ) = 0 , (8.65)
and the maximum principle holds. First of all, if p∗0 = 0 then from (8.64) and (8.65) we must also
have p∗ (t) ≡ 0. Hence we must have p∗0 > 0 and then by replacing (p∗0 , p∗ ) by (1/p∗0 )(p∗0 , p∗ ) we
can assume without losing generality that p∗0 = 1, so that (8.64) simplifies to
ṗ∗ (t) = −1(1 − s∗ (t))fk (k∗ (t)) − p∗ (t)[s∗ (t)fk (k∗ (t)) − µ] . (8.66)
H(t, k∗ (t), p∗ (t), s) = (1 − s)f (k∗ (t)) + p∗ (t)[sf (k∗ (t)) − µk∗ (t)]
The behavior of the solutions of (8.68) is depicted in the (k, p)−, (k, t)− and (p, t)−planes in
Figure 8.5. Here kG , kH are the solutions of fk (kG ) − µ = 0 and f (kM ) − µk = 0. Such solutions
exist and are unique by virtue of the assumptions (8.62) and (8.63). Futhermore, we note from
< < >
(8.62) that kG < kM , and fk (k) − µ > 0 according as k > kG whereas f (k) − µk < 0 according
<
as k > kM . (See Figure 8.6.)
8.5. THE SINGULAR CASE 115
p fk < µ k
fk > µ
kM
l
f > µk f < µk
k t
kG kM
so
or
and hence,
s∗ (t) = µ f (k
kG
G)
for t ∈ I . (8.70)
116 CHAPTER 8. CONINUOUS-TIME OPTIMAL CONTROL
f µk
f (k)
line of slope µ
k
kG kM
Thus in the singular case the optimal solution is characterized by (8.69) and (8.70), as in Figure 8.8.
We can now assemble separate cases to obtain the optimal control. First of all, from the final
condition (8.65) we know that for t close to T, p∗ (t) < 1 so that we are in Case 2. We face two
possibilities: Either (A)
p∗ (t) < 1 for all t < [0, T ]
and then s∗ (t) = 0, k∗ (t) = k0 e−µt , for 0 ≤ t ≤ T , or (B)
there exists t2 ∈ (0, T ) such that p∗ (t2 ) = 1 and p∗ (t) < 1 for t2 < t ≤ T .
We then have three possibilities depending on the value of k∗ (t2 ):
(Bi) k∗ (t2 ) < kG : then ṗ∗ (t2 ) < 0 so that p∗ (t) > 1 for t < t2 and we are in Case 1 so that
s∗ (t) = 1 for t < t2 . In particular we must have k0 < kG .
(Bii) k∗ (t2 ) > kG : then ṗ∗ (2 ) > 0 but then p∗ (t2 + ε) > 1 for ε > 0 sufficiently small and since
p∗ (T ) = 0 there must exist t3 ∈ (t2 , T ) such that p∗ (t3 ) = 1. This contradicts the definition of t2
so that this possibility cannot arise.
(Biii) k∗ (t2 ) − kG : then we can have a singular arc in some interval (t1 , t2 ) so that p∗ (t) =
1, k∗ (t) = kG , and s∗ (t) = µ(kG /f (kG )) for t ∈ (t1 , t2 ). For t < t1 we either have p∗ (t) >
1, s∗ (t) > 1 if k0 < kG , or we have p∗ (t) < 1, s∗ (t) = 0 if k > kG .
The various possibilities are illustrated in Figure 8.9.
The capital-to-labor ratio kG is called the golden mean and the singular solution is called the
golden path. The reason for this term is contained in the following exercise.
Exercise 1: A capital-to-labor ratio k̂ is said to be sustainable if there exists ŝ ∈ [0, 1] such that
ŝf (k̂) − µk̂ = 0. Show that kG is the unique sustainable capital-to-labor ratio which maximizes
sustainable consumption (1 − s)f (k).
8.6. BIBLIOGRAPHICAL REMARKS 117
p k
k t
kG
p k
1 . kG
k t
kG
p∗ p∗
1 1
t t
s∗ T t2 T
s∗
1 1
t t
T t2 T
k∗ k∗
t t
T t2 T
Case (A) Case (Bi)
p∗ p∗
. . . .
t t
t1 t2 T t1 t2 T
s∗ s∗
1
µkG
f (kG )
t t
k∗ k∗
kG . . . .
k0
t t
Case (Biii)
Dynamic programing
9.1 Discrete-time DP
We consider a problem formulation similar to that of Chapter VI. However, for notational conve-
nience we neglect final conditions and state-space constraints.
X
N −1
Maximize f0 (i, x(i), u(i)) + Φ(x(N ))
i=0
subject to (9.1)
dynamics: x(i + 1) = f (i, x(i), u(i)) , i = 0, 1, . . . , N − 1 ,
initial condition: x(0) = x0 ,
control constraint: u(i) ∈ Ωi , i = 0, 1, . . . , N − 1 .
In (9.1), the state x(i) and the control u(i) belong to arbitrary sets X and U respectively. X and U
may be finite sets, or finite-dimensional vector spaces (as in the previous chapters), or even infinite-
dimensional spaces. x0 ∈ X is fixed. The Ωi are fixed subsets of U . Finally f0 (i, ·, ·) : X × U →
R, Φ : X → R, f (i, ·, ·) : X × U → X are fixed functions.
121
122 CHAPTER 9. DYNAMIC PROGRAMING
The main idea underlying DP involves embedding the optimal control problem (9.1), in which
the system starts in state x0 at time 0, into a family of optimal control problems with the same
dynamics, objective function, and control constraint as in (9.1) but with different initial states and
initial times. More precisely, for each x ∈ X and k between ) and N − 1, consider the following
problem:
X
N −1
Maximize f0 (i, x(i), u(i)) + Φ(x(N )) ,
i=k
subject to (9.2)
dynamics: x(i + 1) = f (i, x(i), u(i)), i = k, k + 1, . . . , N − 1,
initial condition: x(k) = x,
control constraint: u(i) ∈ Ωi , i = k, k + 1, ·, N − 1 .
Since the initial time k and initial state x are the only parameters in the problem above, we will
sometimes use the index (9.2)k,x to distinguish between different problems. We begin with an
elementary but crucial observation.
Lemma 1: Suppose u∗ (k), . . . , u∗ (N − 1) is an optimal control for (9.2)k,x , and let x∗ (k) =
x, x∗ (k + 1), . . . , x∗ (N ) be the corresponding optimal trajectory. Then for any `, k ≤ ` ≤ N −
1, u∗ (`), . . . , u∗ (N − 1) is an optimal control for (9.2)`,x∗ (`) .
Proof: Suppose not. Then there exists a control û(`), û(` + 1), . . . , û(N − 1), with corresponding
trajectory x̂(`) = x∗ (`), x̂(` + 1), . . . , x̂(N ), such that
X
N −1
f0 (i, x̂(i), û(i)) + Φ(x̂(N ))
i=` (9.3)
X
N −1
∗ ∗ ∗
> f0 (i, x (i), u (i)) + Φ(x (N )) .
i=`
X
N −1
f0 (i, x̃(i), ũ(i)) + Φ(x̃(n))
i=k
X
`−1 X
N −1
= f0 (i, x∗ (i), u∗ (i)) + f0 (i, x̂(i), û(i)) + Φ(x̂(N ))
i=k i=`
X
N −1
> f0 (i, x∗ (i), u∗ (i)) + Φ(x∗ (N )) ,
i=k
9.1. DISCRETE-TIME DP 123
by (9.3), so that u∗ (k), . . . , u∗ (N − 1) cannot be optimal for 9.2)k , x, contradicting the hypothesis.
(end theorem)
From now on we assume that an optimal solution to (9.2)k,x exists for all 0 ≤ k ≤ N − 1, and all
x ∈ X. Let V (k, x) be the maximum value of (9.2)k,x . We call V the (maximum) value function.
Theorem 1: Define V (N, ·) by (V (N, x) = Φ(x). V (k, x) satisfies the backward recursion equa-
tion
Proof: Let x ∈ X, let u∗ (k), . . . , u∗ (N − 1) be an optimal control for (9.2)k,x , and let x∗ (k) =
x, . . . , x∗ (N ) be the corresponding trajectory be x(k) = x, . . . , x(N ). We have
X
N −1
f0 (i, x∗ (i), u∗ (i)) + Φ(x∗ (N ))
i=k (9.5)
X
N −1
≥ f0 (i, x(i), u(i)) + Φ(x(N )) .
i=k
X
N −1
f0 (i, x(i), u(i)) + Φ(x(N )) = f0 (k, x, u(k))
i=k
XN
+{ f0 (i, x(i), u(i)) + Φ(x(N )) ≤ f0 (k, x, u, (k)) + V (k + 1, f (k, x, u(k))} ,
i=k+1
with equality if and only if u(k + 1), . . . , u(N − 1) is optimal for (9.2)k+1,x(k+1) . Combining these
two facts we get
Then ψ(k, ·), k = 0, . . . , N − 1 is an optimal feedback control, i.e., for any k, x the control
u∗ (k), . . . , u∗ (N − 1) defined by u∗ (`) = ψ(`, x∗ (`)), k ≤ ` ≤ N − 1, where
124 CHAPTER 9. DYNAMIC PROGRAMING
• Exercise 1: An instructor is preparing to lead his class for a long hike. He assumes that each
person can take up to W pounds in his knapsack. There are N possible items to choose from.
Each unit of item i weighs wi pounds. The instructor assigns a number Ui > 0 for each
unit of item i. These numbers represent the relative utility of that item during the hike. How
many units of each item should be placed in each knapsack so as to maximize total utility?
Formulate this problem by DP.
9.2 Continuous-time DP
We consider a continuous-time version of (9.2):
Rt
Maximize 0 f f0 (t, x(t), u(t))dt + Φ(x(tf ))
subject to
dynamics: ẋ(t) = f (t, x(t), u(t)) , t0 ≤ t ≤ tf (9.6)
initial condition: x(0) = x0 ,
control constraint: u : [t0 , tf ] → Ω and u(·) piecewise continuous.
and
Dividing by ∆ > 0 and letting ∆ approach zero we get the Hamilton-Jacobi- Bellman partial
differentiable equation for the value function:
∂V
∂t (t, x) + Max{f0 (t, x, u) + ∂x (t, x)f (t, x, u)|u
∂V
∈ Ω} = 0. (9.9)
Then ψ is an optimal feedback control for the problem (9.6), and V is the value function.
Proof: Let t ∈ [t0 , tf ] and x ∈ Rn . Let û : [t, tf ] → Ω be any piecewise continuous control and
let x̂(τ ) be the solution of
·
x̂ (τ ) = f (τ, x̂(τ ), û(τ )) , t ≤ τ ≤ tf , (9.11)
x̂(t) = x .
Note that the hypothesis concerning ψ guarantees a solution of (9.12). Let u∗ (τ ) = ψ(τ, x∗ , (τ )), t ≤
τ ≤ tf . To show that ψ is an optimal feedback control we must show that
Z tf
f0 (tτ, x∗ (τ ), u∗ (τ ))dτ + Φ(x∗ (τ ))
Z ttf (9.13)
≤ f0 (τ, x∗ (τ ), û(τ ))dτ + Φ(x̂(tf )) .
t
using (9.9). From (9.14), (9.15), (9.8) and the fact that x∗ (t) = x̂(t) = x we conclude that
Z tf
V (t, x) = Φ(x∗ (tf )) + f0 (τ, x∗ (τ ), u∗ (τ ))
Z ttf
≥ Φ(x̂(tf )) + f0 (τ, x̂(τ ), û(τ ))dτ
t
so that (9.13) is proved. It also follows that V is the maximum value function. ♦
• Exercise 1: Obtain the value function and the optimal feedback control for the linear regula-
tory problem:
Z
Minimize 12 x0 (T )P (T )x(t) + 12 T0 {x0 (t)P (t)x(t)
+u0 (t)Q(t)u(t)}dt
subject to
dynamics: ẋ(t) = A(t)x(t) + B(t)u(t) , 0 ≤ t ≤ T ,
initial condition: x(0) = x0 ,
control constraint: u(t) ∈ Rp ,
where P (t) = P 0 (t) is positive semi-definite, and Q(t) = Q0 (t) is positive definite. [Hint:
Obtain the partial differential equation satisfied by V (t, x) and try a solution of the form
V (t, x) = x0 R(t)x where R is unknown.]
[1] J.J. Arrow and L. Hurwicz. Decentralization and Computation in Resource in resource Allo-
cation. Essays in Economics and Econometrics. University of North Carolina Press, 1960. in
Pfouts R.W. (ed.).
[3] A.V. Balakrishnan and L.W. Neustadt. Computing Methods in Optimization Problems. Aca-
demic Press, 1964.
[4] K. Banerjee. Generalized Lagrange Multipliers in Dynamic Programming. PhD thesis, Col-
lege of Engineering, University of California, Berkeley, 1971.
[6] R.E. Bellman and S.E. Dreyfus. Applied Dynamic Programming. Princeton University Press,
1962.
[7] D. Blackwell and M.A. Girshick. Theory of Games and Statistical Decisions. John Wiley,
1954.
[8] J.E. Bruns. The function of operations research specilists in large urban schools. IEEE Trans.
on Systems Science and Cybernetics, SSC-6(4), 1970.
[9] A.E. Bryson and Y.C. Ho. Applied Optimal Control. Blaisdell, 1969.
[10] J.D. Cannon, C.D. Cullum, and E. Polak. Theory of Optimal Control and Mathematical Pro-
gramming. McGraw-Hill, 1970.
[11] G. Dantzig. Linear Programming and Extensions. Princeton University Press, 1963.
[12] C.A. Desoer. Notes for a Second Course on Linear Systems. Van Nostrand Reinhold, 1970.
[13] S.W. Director and R.A. Rohrer. On the design of resistance n-port networks by digital com-
puter. IEEE Trans. on Circuit Theory, CT-16(3), 1969a.
[14] S.W. Director and R.A. Rohrer. The generalized adjoint network and network sensitivities.
IEEE Trans. on Circuit Theory, CT-16(3), 1969b.
[15] S.W. Director and R.A. Rohrer. Automated network design–the frequency-domain case. IEEE
Trans. on Circuit Theory, CT-16(3), 1969c.
127
128 BIBLIOGRAPHY
[16] R. Dorfman and H.D. Jacoby. A Model of Public Decisions Illustrated by a Water Pollution
Policy Problem. Public Expenditures and Policy Analysis. Markham Publishing Co, 1970. in
Haveman, R.H. and Margolis, J. (eds.).
[17] R. Dorfman, P.A. Samuelson, and R.M.Solow. Linear Programming and Economic Analysis.
McGraw-Hill, 1958.
[18] R.I. Dowell and R.A. Rohrer. Automated design of biasing circuits. IEEE Trans. on Circuit
Theory, CT-18(1), 1971.
[19] Dowles Foundation Monograph. The Economic Theory of Teams. John Wiley, 1971. to appear.
[21] C.R. Frank. Production Theory and Indivisible Commodities. Princeton University Press,
1969.
[22] D. Gale. A geometric duality theorem with economic applications. Review of Economic
Studies, XXXIV(1), 1967.
[24] A.M. Geoffrion. Primal resource directive approaches for optimizing nonlinear decomposable
programs. Operations Research, 18, 1970b.
[25] F.J. Gould. Extensions of lagrange multipliers in nonlinear programming. SIAM J. Apl. Math,
17, 1969.
[26] J.J. Greenberg and W.P. Pierskalla. Surrogate mathematical programming. Operations Re-
search, 18, 1970.
[27] H.J.Kushner. Introduction to Stochastic Control. Holt, Rinehart, and Winston, 1971.
[28] R.A. Howard. Dynamic Programming and Markov Processes. MIT Press, 1960.
[30] D.H. Jacobson, M.M. Lele, and J.L. Speyes. New necessary condtions of optimality for prob-
lems with state-variable inequality constraints. J. Math. Analysis and Applications, 1971. to
appear.
[31] D.H. Jacobson and D.Q. Mayne. Differential Dynamic Programming. American Elsevier
Publishing Co., 1970.
[32] S. Karlin. Mathematical Methods and Theory in Games, Programming, and Economics, vol-
ume 1. Addison-Wesley, 1959.
[33] H.J. Kelley. Method of Gradients. Optimization Techniques. Academic Press, 1962. in Leit-
mann, G.(ed.).
BIBLIOGRAPHY 129
[34] J.H. Kelley, R.E. Kopp, and H.G. Mayer. Singular Extremals. Topics in Optimization. Aca-
demic Press, 1970. in Leitman, G. (ed.).
[35] D.A. Kendrick, H.S. Rao, and C.H. Wells. Water quality regulation with multiple polluters. In
Proc. 1971 Jt. Autom. Control Conf., Washington U., St. Louis, August 11-13 1971.
[36] T.C. Koopmans. Objectives, constraints, and outcomes in optimal growth models. Economet-
rica, 35(1), 1967.
[37] H.W. Kuhn and A.W. Tucker. Nonlinear programming. In Proc. Second Berkeley Symp. on
Math. Statistics and Probability. University of California Press, Berkeley, 1951.
[38] R.E. Larson. State Increment Dynamic Programming. American Elsevier Publishing Co.,
1968.
[39] L.S. Lasdon, S.K. Mitter, and A.D. Waren. The conjugate gradient method for optimal control
problems. IEEE Trans. on Automatic Control, AC-12(1), 1967.
[40] E.B. Lee and L. Markus. Foundation of Optimal Control Theory. John Wiley, 1967.
[41] R. Luce and H. Raiffa. Games and Decisions. John Wiley, 1957.
[42] D.G. Luenberger. Quasi-convex programming. Siam J. Applied Math, 16, 1968.
[44] S.R. McReynolds. The successive sweep method and dynamic programming. J. Math. Analy-
sis and Applications, 19, 1967.
[45] J.S. Meditch. Stochastic Optimal Linear Estimation and Control. McGraw-Hill, 1969.
[46] M.D. Mesarovic, D. Macho, and Y. Takahara. Theory of Hierarchical, Multi-level Systems.
Academic Press, 1970.
[47] C.E. Miller. The Simplex Method for Local Separable Programming. Recent Advance Pro-
gramming. McGraw-Hill, 1963. in Graves, R.L. and Wolfe, P. (eds.).
[48] L.W. Neustadt. The existence of optimal controls in the absence of convexity conditions. J.
Math. Analysis and Applications, 7, 1963.
[49] L.W. Neustadt. A general theory of extremals. J. Computer and System Sciences, 3(1), 1969.
[50] H. Nikaido. Convex Structures and Economic Theory. Academic Press, 1968.
[53] L.S. Pontryagin, R.V. Boltyanski, R.V. Gamkrelidze, and E.F.Mischenko. The Mathematical
Theory of Optimal Processes. Interscience, 1962.
130 BIBLIOGRAPHY
[57] K. Shell. Essays in the Theory of Optimal Economic Growth. MIT Press, 1967.
[58] R.M. Solow. The economist’s approach to pollution and its control. Science, 173(3996), 1971.
[59] D.M. Topkis and A. Veinnott Jr. On the convergence of some feasible directions algorithms
for nonlinear programming. SIAM J. on Control, 5(2), 1967.
[61] P. Wolfe. The simplex method for quadratic programming. Econometrica, 27, 1959.
[62] W.M. Wonham. On the seperation theorem of optimal control. SIAM J. on Control, 6(2), 1968.
131
132 INDEX
Primal problem, 33