You are on page 1of 14

Computers chem. Engng, Vol. 13, No. 1/2, pp.

49~2, 1989
Printed in Great Britain. All rights reserved

0098-1354/89 $3.00 + 0.00


Copyright 1989 Pergamon Press plc

SIMULTANEOUS OPTIMIZATION AND SOLUTION


METHODS FOR BATCH REACTOR CONTROL PROFILES
J. E. CUTHRELLt and L. T. BIEGLER
Department of Chemical Engineering, Carnegie-Mellon University, Pittsburgh, PA 15213, U.S.A.

(Received 19 May 1988; received for publication 1 June 1988)


Abstract--Differential-algebraic optimization problems appear frequently in process engineering, especially in process control, reactor design and process identification applications. For fed-batch reactor
systems the optimal control problem is especially difficult because of the presence of singular arcs and
state variable constraints. For problems of this type we propose a simultaneous optimization and solution
strategy based on successive quadratic programming (SQP) and orthogonal collocation on finite elements.
In solving the resulting nonlinear programming (NLP) problem, a number of interesting analogs can be
drawn to more traditional methods based on variational calculus. First, the collocation method has very
desirable stability and accuracy properties. Secondly, it will be shown that NLP optimality conditions have
direct parallels to general variational conditions for optimal control. To demonstrate this strategy, we
consider the optimization of a fed-batch penicillin reactor using a number of cases. For the simplest case,
the results presented here agree well with previously obtained, analytically-based solutions. In addition,
accurate results are presented for more difficult cases where no analytic solution is available.

1. INTRODUCTION

The determination of optimal feed rate profiles is an


important control problem in many biochemical processes. In many cases, these reactors are operated in
fed-batch mode and can have slow rates of production or low yield of a high-valued product. Models of
these systems are often nonlinear in the state variables arrd linear in the feed rate (the control variable).
The high valued final product makes determination
of an optimal control profile important, especially for
product yield maximization. These control profiles
are, however, difficult to obtain since problems of this
type have optimal control profiles that can be
bang/bang and/or have singular arc portions. Additionally, added 'complexities in the form of constraints on both the control and state profiles are also
often present, As a result, problems such as these are
very difficult, if not impossible, to handle with conventional analytical or numerical solution techniques.
In this paper we present a method which can
efficiently solve optimal control problems of this type.
In the proposed method differential-algebraic equation (DAE) models are discretized using orthogonal
collocation on finite elements with continuous
profiles approximated by Lagrange polynomials. The
resulting algebraic collocation equations are then
written as equality constraints in a nonlinear program
(NLP) with the polynomial coefficients becoming
decision variables. Solution of the NLP results in
determination of the optimal control profile and
convergence of the discretized modelling equations

simultaneously. A n u m b e r of similar strategies have


been proposed earlier and have been summarized in
a previous paper (Cuthrell and Biegler, 1987). Here,
however, we concentrate an obtaining solutions to
optimal control problems which have discontinuous
control profiles. These are handled by introducing
locations of the finite element knots as decision
variables where discontinuities can be found.
We begin the development of a strategy for solution of fed-batch reactor optimal control problems by
stating the following general optimization problem.
This problem contains both differential and algebraic
equations with variables and profiles as decisions.
min cP[x, U(t), Z(t)],

(DAOP1)

x,U~t),z(t)

s.t.

g[x, U(t), Z(t)] ~< 0,


c[x, U(t), Z(t)] = 0,
2 ( 0 = F[x, U(t), Z(t), tl

t~[0, 11,

z ( o ) = Zo,

xL <~x <<.X U,
U L <~ U(t) <~ U U,
Z L <~Z ( t ) <~Z U,
where:
= an objective function,
g, c = inequality and equality design constraint
vectors,
x = decision variable vector,
Z ( t ) = state profile vector,
U(t) = control profiles,

tCurrently with Shell Development Co., Houston, Texas.


49

50

J.E. CUTHRELLand L. T. BIEGLER

x L, x U = variable bounds,
U L, U U = control profile bounds,
Z L, Z u = state profile bounds.
The differential-algebraic optimization problem
(DAOP1), as stated, cannot be solved directly by
typical nonlinear programming techniques or optimal
control methods. One cannot optimize continuous
profiles directly with an NLP technique, nor is it
possible to impose bounds and/or general constraints
involving Z ( t ) and U(t). Even when the profiles are
discretized and treated as decision variables, repeated, and often expensive, solution of the DAE
model (probably with a large number of sensitivity
equations) is still required here. Optimal control
methods, on the other hand, will deal with continuous control profiles but normally cannot handle
general algebraic constraints (such as c or g).
In the following sections we present and justify a
method for the solution of (DAOP1), especially for
biochemical reactor problems. In the next section a
form of discretization is presented which converts the
differential equations to a set of algebraic equations.
Here orthogonal collocation is applied to finite elements for the purpose of handling discontinuous
control profiles. Following this, stability and accuracy properties, which normally apply to numerical
integration techniques, will be discussed as they apply
to orthogonal collocation: In addition, an equivalence between the Kuhn-Tucker conditions and
variational conditions will be derived for a wide class
of differential-Mgebraic optimization problems
(DAOPs). The last section deals with the optimization of a fed-batch reactor. In the simplest case it is
seen that solutions are found that compare well with
an analytically-based solution. More complex cases
are then solved and presented which do not have
analytic solutions.

PROGRAMMING PROBLEM

te[0, 11,

(1)

z ( 0 ) = z0.

Here we make use of two polynomial types written in


Lagrange form:
/~

,=02Z'ff)i(t)

where

~ (t -- t~)
Oi(t) = k~=.o,,~, Z tk)'
(2)

uK(t) = 1-I uitpi(t)


t= 1

where

Since chemical engineering problems have states and


controls that represent quantities like temperature or
concentration, using Lagrange polynomials produces
coefficients z, and ui which are physically meaningful
quantities. This becomes useful when providing variable bounds, initializing a profile, or interpreting
solution profiles.
Substitution of (2) and (3) into (1) and discretization of the ODEs using orthogonal collocation yields
the set of algebraic equations:
K

R(ti) = ~.

2)~y(ti) - - F ( X ,

ui, zi, ti) = 0

3=0

i = 1. . . . K,

(4)

with z0 = Z0.
Using the ODE model (4), (DAOP1) becomes:
rain cb(x, ui, zi),

(NLP1)

x,ut,zr

s.t.

g(x, ui, zi)<~O,


c (x, u~, z3 = 0,
K

R(ti) = ~, zff)g(ti) -- F(x, ui, zi, ti) = 0


j=O

i = 1 . . . . . K,
Z0 ~ Z 0 ,

xL<x

<.X U,

Z 1 <~z~ <<,Z U

In this section we focus on discretizing the ordinary


differential equation (ODE) model of (DAOP1):

zr+ E(t) =

zK+ l(ti) = zi.

uL <~ u~ <~ U U,

2. D I S C R E T I Z A T I O N O F DAOP1 T O A N O N L I N E A R

Z(t) = F[x, U(t), Z ( t ) , tl

control vector approximation, u~(t), is a Kth order


(degree < K) polynomial. Also the notation k = 0,i
denotes k starting from zero and k # i. Note that the
Lagrange form polynomial has the desirable property
that [for ZK+ l(t), for example]:

0i(t) = ff] !t - tk).


kX=Xl,i(ti -- tk)
(3)

Zk+l(l),

where the state vector approximation,


is a
(K + 1)th order (degree < K + 1) polynomial and the

With (NLP1) we can now solve very general


differential-algebraic optimization problems once the
points t,, i = 1. . . . . K are chosen. Here the location
of these points corresponds to the shifted roots of an
orthogonal Legendre polynomial of degree K. The
limitation of the formulation in (NLPI) is that all
profiles are assumed to be smooth (i.e. analytic
functions in t). If this is true, then choosing K
sufficiently large will yield accurate solutions. However, in most cases, this assumption does not hold
and the formulation must be extended to finite
elements.
To extend problem (NLP1) to deal with finite
elements we refer to a related paper (Cuthrell and
Biegler, 1987) where advantages of finite elements
and their appropriate placement is discussed. In that
reference, a set of finite element knot placement
equations was solved to position the knots in order

Optimization and solution for batch reactor control


to minimize the approximation error of the state
variable profiles. The problem of control profile
discontinuity was also handled in Cuthrell and
Biegler (1987) by introducing additional finite elements termed super-elements. The breakpoint (or
knot) positions of these elements were included as
additional degrees of freedom so that points of
discontinuity could be found. To simplify the analysis
and reduce the size and difficulty of the NLPs to be
solved, we shall assume that all state profiles can be
approximated to suitable accuracy using relatively
low-order polynomials (e.g. K + 1 < 5) and do not
require finite elements for this purpose. Instead, we
focus on using finite elements only as super-elements,
so that discontinuities of optimal control profiles can
be determined through optimal locations of finite-element knots. F r o m the solutions of the batch reactor
optimi'Tation we shall se~ that this assumption is
justified and that the state variable profiles are quite
accurate.
To preserve the orthogonal properties obtained
with global collocation the domain t~[0, 1] is
mapped !nto ,each finite element through the formula
(with al = a, CONE+ 1 = b):
t =cci+

t(~/+ j --

i=1 ..... NE

for

(t -- tt,kl)
k = Ij (tt01 -- tt~kl)

for i = 1. . . . . N E .
The discretized residual or collocation equations
can be written down immediately from (4) as:
K

R(tti o, A~i) = ~ ztolc~tol(tc,n) - F ( x , utio, zt, o, t[it])

NE,

(6)

The Lagrange polynomials can now be expressed


as:
K

z~+ ~ ( t ) = ~ zto~(~to~(t)
j=0

qS[0~(t) = ~bj(t) = l f I

(t - t[,k])

= ou (tto~ -- tli~])'

0,

j=O

i=l ..... NE,

l = 1 . . . . . K,

(9)

with ztl0j = Z0.


The calculation of the term q~t,jl(ttio)can be simplified
by chain ruling derivatives to obtain:
~)lo3(t[il]) = q~j(tl)/A~,

i = 1. . . . . N E ,
j = 0 . . . . . K,
l = 1 . . . . . K.

And thus (9) is more simply written as:

i=1,

i = 1 . . . . . N E , j = 0 . . . . . K. (5)
It is convenient at this point, in order to save a
considerable amount of rewriting, to define the expression ( i - 1 ) ( K + 1 ) + j by the label i/J]. This
label, [ij] - (i - 1)(K + 1) + j , is not to be confused
with the commonly-used double subscripts for
matrices (e.g. A~ meaning the element in the ith row
and j t h column). F o r an equivalent derivation of
finite-element collocation which uses matrix notation
see Finlayson (1980). Furthermore, the indices i and
j can themselves take on other characters when the
context requires it. F o r example, [ i - lk] becomes
(i-2)(K+l)+k
for some i and k, and [ i l ] =
(i - 1)(K + 1) + 1 for some i. With this convention
(5) becomes:

j = 0 . . . . . K.

(8)

~Ot0](t) = x x

tE[~j,c~,+l].

t~,_ 1)~K+ ~)+~ = et~ + tj(~i + ~ -- ~i )

i = 1. . . . .

utol~tol(t)

j=l

F ( x, ui,o, zt, ~, tt,o) = 0

j=0

The locations of the orthogonal Legendre roots (with


to = 0) are mapped to the points:

t[o~ = ~, + t~(~i + t -- ~i)

u ~ t ) = Y~

K
. . . .
~j(t,)
l~ ~tti~) = L z~,jj~

~,)

51

(7)

.,NE,

/ = 1 . . . . . K.

(10)

with Zcl0j= Z 0.
In (10) the expression dp;(tt) can be easily calculated
offline (see Villadsen and Michelsen, 1978) since it
depends only on the Legendre root locations. Now,
assuming for the moment the variables ct~, x and ut~~
are fixed, (10) is composed of M [ N E ( K ) + 1] equations and M [ N E ( K + 1)] state coefficients. To make
the system well-posed, an additional set of
M(NE
1) equations is written to make the polynomials z ' r + l ( t ) continuous at the interior knots ct~,
i = 2 . . . . . N E . This is done by enforcing:
-

z~+ 1(~i) = z~+11(~,)

i = 2.....

NE,

(11)

"or equivalently:
K

z[,0]= ~zt~

tj3qSj(t=l)

i=2 ..... NE.

(12)

3=0

These equations extrapolate the polynomial z'x-+~(t)


to the endpoint of its element and provide an accurate
"initial condition" for the next element and polynomial z~+~(t). Each overall approximation to the
state profile is therefore a continuous and piecewise
polynomial function of order K + 1. Stated mathematically, zr+ l(t) e P r + 1fq C[a, b] where P~+ l denotes the set of all polynomials of order K + 1
and C[a,b] is the set of continuous functions.
A number of authors construct differentiable and
piecewise polynomial approximations, from zK+ ~(t)e
PK ~f3 C~[a, b], to h i g h ~ order O D E or PDE systems
(Finlayson, 1980; Gardini et al, 1985). However,

52

J.E. CUTHRELLand L. T. BIEGLER

continuous approximations are sufficient for our


case, particularly since our examples have discontinuous control profiles and nondifferentiable state
profiles~
At this point a few additional comments concerning construction of the control profile polynomials
must be made. Recall that these polynomials use only
K coefficients per element and are of lower order than
the state polynomials. As a result these profiles are
constrained or bounded only at collocation points.
Maintaining th~ entire control profile within the
problem constraints is necessary in order to approximate the variational profile better. This can be
attempted in many ways. The simplest way is to
bound the values of each control polynomial at both
ends of the element. This can be done by writing the
equations:
UL ~ uiK(ai) ~ U U

i=1 ..... NE,

UL<~uix(~,+I)<~ U

i = 1 . . . . . NE.

3. P R O P E R T I E S

Recall that since control polynomial coefficients exist


only at collocation points, enforcement of these
bounds can be done by extrapolating the polynomial
to the endpoints of the element. This is easily done by
using:
K

u~i)

= ~ utol~l'j(t = O)

i = 1. . . . .

NE

j=l

and
K

u~i+l)=

~ ulo]~j(t = 1)

i = 1. . . . . NE.

j=l

Adding these constraints affects the shape of the final


control profile and the net effect of these constraints
is to keep the endpoint values of the control profile
from varying widely outside their ranges [U L, U].
Including the ODE model, discretized on finite
elements, the state continuity conditions and bounds
on the control profiles at the knots, the NLP formulation becomes:
min

(NLP2)

cI)(x, ut~l , zti~) ,

x,uId],zpl]~t~

s.t.

g(x, utah, zti~) ~<0,


C (X, U[il], Z[il]) = O,

R(tti~ ) = 0 ,

i=l ..... NE

L = I .....

Z[10] = Z 0 ,
K

Ztio] = ~ zti_ ljl~j(t = 1),

i = 2. . . . . N E

j=0

U L ~< u~(~i) ~< U U,


uL<~u~ai+I)~<uU,

x L ~<'x ~<x U,
U L ~< ut~.,] ~< U U,
Z L ~ Ztil] ~ Z U.

i=l ..... NE

In this formulation the knot positions, ct~,are formulated as decision variables and found by the optimization procedure as points of control profile
discontinuity. As expected, state profiles remain continuous because of the continuity constraints. With
the knot positions as decision variables, we now have
an accurate and efficient strategy to solve very general
and difficult optimal control problems, as long as
orthogonal collocation approximates the state
profiles accurately within each element.
In the next section we will justify the assumption
that the state profiles can be accurately approximated
by discussing both stability and accuracy properties
of orthogonal collocation. Here we show that solving
the differential equations via orthogonal collocation
is equivalent to performing a fully implicit RungeKutta integration at Gaussian roots.

O F T H E N L P STRATEGY

Before applying the NLP strategy to the fed-batch


fermenter example, it is useful to consider a few
properties of the method proposed above. The following subsections therefore address the following
questions:
Given a control profile, can the differential equation model be solved accurately and stably using
orthogonal collocation on finite elements?
How does the DAOP solution found with nonlinear programming compare to a solution that
solves the variational conditions of the optimal
control problem? How do the optimal control
profiles compare?
3. I. Stability and accuracy o f orthogonal collocation

In this section, additional theoretical properties of


orthogonal collocation will be considered. First, we
will see that, under certain conditions, the method of
orthogonal collocation on finite elements is equivalent to performing a fully implicit Runge-Kutta (RK)
integration of the ODEs at Gaussian points. The
conditions required for this are, simply stated, that
collocation be done at Gaussian roots, and that the
elements in the Butcher's block array be specified in
a certain way for the Runge-Kutta method. In
establishing the equivalence between our method and
a RK method, a number of important theoretical
properties, normally associated only with numerical
integration schemes, can immediately be applied.
These properties include stability, symmetry and the
order of the method. The theoretical analysis cited
here is based on the work of Burrage and Butcher
(1979) and Ascher and Bader (1986).
For a numerical integration method to be considered stable, it must result in integrations of an ODE
which differ by no more than the difference in initial
conditions (see Burrage and Butcher, 1979). An integration method is said to be symmetric if it is
invariant (or gives the same solution) under a change

Optimization and solution for batch reactor control


in the direction of integration. The concept of symmetry, which is normally unimportant for integration
of initial-value problems, becomes quite important
when solving boundary-value problems.
To define the stability of a particular ODE method,
a test equation is usually chosen for analysis. For
example, the standard test function:
(13)

j~(t)= 2y(t),

where 2 is a complex number with a nonpositive real


part, is used to define A-stability. It is well-known
that implicit linear multistep methods of orders ~<2
(Dahlquist, 1963) and all fully implicit RK methods
of order 2K (such as orthogonal collocation), where
K is the number of function evaluations required per
step, are A-stable (Ehle, 1968). Simply stated, the
term "A-stable" implies that, for all Re(2) ~<0, these
integration schemes stably integrate (13).
With 2 in (13) replaced by 2(t) the test function is
said to be nonautonornous and the corresponding
stability property is termed AN-stability. For this
case 2(t) is considered a function having values in the
nonpositive complex plane.
Generalizing further, numerical integration
schemes are said to possess B-stability if they stably
integrate the nonlinear autonomous system:
f'(t) = F[y(t)]

if [F(y) -- F(z)]r(y - z) <~0

Vy, z,

and BN-stability if they stably integrate the nonlinear


nonautonornous system:
j~(t) = F[t, y(t)]

if [F(t,y) - F(t, z)]r(y - z) <~0

(14)
Vy, z, t.

The restrictions on the right-hand-sides here merely


imply that F is a monotonic nonincreasing function,
and are necessary for y(t) to approach some steadystate value.
Burrage and Butcher (1979) prove that implicit
(RK) methods which possess a property known as
algebraic stability also possess the properties of A,
AN, B and BN-stability. Or, simply stated, implicit
RK methods which are algebraically stable, will
stably integrate autonomous and nonautonomous,
linear and nonlinear systems which satisfy the above
restrictions. Algebraic stability is thus a stronger
condition than the other types of stability and does
not depend on any particular test function. In fact it
derives from a matrix property that involves only the
values in the Butcher's block array (see Burrage and
Butcher 1979). Although this does not guarantee
stability for all systems of ODEs, it does indicate that
the method is stable for a wider class of problems [i.e.
(14)] than previously shown.
Later, Ascher and Bader (1986), constructed
several fully-implicit, symmetric, algebraically-stable

53

RK schemes and showed that the only equivalent


methods to these are finite-element collocation
methods which use Gaussian roots. An example that
illustrates this equivalence can be found in Cuthrell
(1986). Finally, Ascher and Bader (1986) also showed
that A-stable integration schemes may not be suited
for solving BVPs and that, instead, the stronger
condition of algebraic stability is required. This property is important here because optimal control problems usually require ODE solutions in both the
forward direction (for the model equations) and the
backward direction (for the adjoint equations). In the
next subsection we will see that the method proposed
above solves both equations sets simultaneously by
solving (NLP2).
3,2. Analysis of the optimality conditions

In the previous subsection we were concerned


about the accuracy of the state variable profile with
control profiles specified. Here we consider, instead,
how accurately control profiles are determined with
nonlinear programming. In (NLP2), optimization is
done over the variables x, and the profiles zK+ l(t) and
uK(t ), while the original problem (DAOP1) involves
the variables x and the profiles Z ( t ) and U(t). We
now consider the conditions for the continuous
profile U(t). Since the analysis follows the same lines
for the parameters, x, and the optimality conditions
are similar, we will not be concerned with these
parameters in this subsection.
In order to present a discussion of the accuracy of
the optimal solution, we begin with the following
general DAOP (DAOP2) and write the nonlinear
program resulting from application of orthogonal
collocation. We then write the Kuhn-Tucker conditions for this problem and show that these can be
written as discrete analogs of the variational
conditions of (DAOP2). For this analysis, the
differential-algebraic optimization problem will be
given as:
min 7J[U(b), Z(b)]

U(t),z(t)

+
s.t.

~[Z(t), U(t)l at,

(DAOP2)

c[U(t), z ( t ) ] = o,

g[U(t), Z(t)] ~<O,


Z ( t ) = F[U(t), Z(t)],
gf[Z(b)] <~O,

c:[Z(b)] =

0,

Z ( a ) = Zo.

Now, by approximating the state variable profiles


as continuous, piecewise polynomial functions of
order K + 1 and control variable profiles as piecewise
continuous, polynomial functions of order K, we can

54

J.E. CUTHRELLand L. T. BIEGLER

apply orthogonal collocation on finite elements and


obtain the following nonlinear program:
NE

min q'(z:) + ~
U[tl]'2[il]'~t

degree 2K - 1 or less (see, e.g. Carnahan et al., 1968).


Thus for the quadrature terms in (1 5) we can write the
following relation:

~ w[iAd2)(g[iA,uD])

(NLP3)

i= 1 j~ 1

ZK + l(t[iA) -- F(zt,A, ut0> tt01)= 0,

NE

Icf~ + i

i=l

-- E

~T+ l~X+ I dt
NE

=-E

g (z[o~, u[o~) <<.O,

E 'qol
" ':+
[01~K+l(t[01)
i=lj=l

c(zto ~, uto~) = O,

Integrating by parts yields:

gaze) <. o,

_f,,+l,,

T ,a*
~ g + I'~K+ 1 d t = - 2 Kr+ l(OCi+ 1)ZK+ l(~i+ 1)

cA:) = o,
Z[lol- Zo = 0,
l : ~ =i]0
Z[i0] - z i -K+lk
Zf--

NE
aK+

i=2,.

''

I(~NE+ 1) = O.

To simplify the analysis we include all bounds


among the inequality constraints, g. We also treat
the extrapolation of zr+ l(ty) as a new variable, zf.
Note that the integral in (DAOP2) is now approximated by a Gaussian quadrature formula summed
over all of the elements. Now, on a simple optimal
control problem without algebraic constraints,
Reddien (1 979) showed the equivalence between variational conditions for the optimal control problem
and the optimality conditions for the resulting
nonlinear program. In his analysis, B-spline basis
functions were used on finite elements. Here we
adapt and extend his approach by considering
Lagrange basis polynomials and the more complicated problem given by (DAOP2) and (NLP3).
First, we form the Lagrange function for
(NLP3):
NE

Writing the quadrature formula for the integral on


the right hand side and substitution into (15) yields
the following Lagrange function:
NE

K
T

"

i=lj~l

T
T
+ I%~g(ztol, ut01) + v[olc(,.[o1, ut01)]

+ {~,(z:)+/(g:(z:) + ~fc:(=:)}
NE

i=1
NE+ 1

--

i=2

B',+ 2K+ 1(~i)] ~Z Ki -+1 1(~i) "~- ~ NTE +

1Zf"

To simplify this function we first consider the optimality conditions for the continuity variables zt~01.By
noting that, from (1 1) and (12):
K

z~,-+11(~,) = E =t,-1,loci(t = 1)
j=0

i=lj=l

i = 2 . . . . . NE,

+ 2tol[F(zto1, ut01)- zr+ l(tt01)]


~.

{Tt(zf)+ #~gf(zf)+ vfcf(zf)}

(3L

NE

+ ~T(:tl0]- z0) + 32 ~ T[Z~,o~- zl,-+',(~,,)]

~z[iol

= [7, + 2~+ 1(~,)1 - [?,+1 + 2~+ 1(~,+ 3lq~0 (1)

=0

i=2

+ 7~e+ ~[z:-. ~+ a ue+


.NE

[0~

(12)

we have the following set of equations:

+ Ptolg("tol, ut01)+ vtolc(zto~, ut0~)]


+

~T

L = ~ ~ wt,A[~(ttol) + 2tolF(ttol) + ~t022~+1(/[,~1)

L(zt0~, uto~) = ~. ~ wtol[@(ztol, utol)

j~T+ IZK+ 1 dt.

_~ ~T+ I((~i)ZK + l(~t ) +

,NE.

1)]"

(15)
Note that we have defined the Kuhn-Tucker multipliers (2, p and v) differently than usual, but equivalently, by including the positive quadrature weights,
wt,jl. In addition, we assume that the adjoint variable
profile can be approximated as 2x+ ~(t), a continuous,
piecewise polynomial function of the same order as
zK+l(t) with 2K+~(ti,s~)=2tu 1. Now since -~K+l is a
piecewise polynomial of order K, we can make the
following equivalence by noting that K-point Gaussian quadrature is exact for polynomial integrands of

i=I,...,NE.

Since this system of equations is overdetermined


and has an infinite number of solutions, we force a
solution by making the assignment that Yi+
2r+l(a,) -- 0. With this simplification the Lagrange
function becomes:
NE

L = ~ y. w[,A[4)(ttol) + 2[rlF(ttol)
i=lj=l

T
T
.,
+ ztr~2x+
l(t[02) + #[olg(ztik, ulif) + v[o2c(-lo 2, utiA)]

+ {~(zf) + pfgf(zf) + vfcf(zf)}


+ 21,+ l(~l)rz0 -- 2,:+ l(:~ue+ l)rZs

Optimization and solution for batch reactor control


By noting that wt,jl are nonzero, the remaining
Kuhn-Tucker conditions can now be derived
immediately:
(a)

straints. Here, consider the problem (SCP1) with


purely state variable constraints:
rain

8(ti'Jl) + /\/0F(t['J])|2.

U(t)

) M T D,+ ,(tto )
s.t.

Og
~l-lr

r+lt~,)--2K+l(Ctl)

aufm

Oc
i=2,...,NE;

k auiol )

\ ouiow

fo

~,[Z(t), U(t)] dt,

Z ( t ) = F[Z(t), U(/)]

, Ocs

(c)
(d)

2K+ l(cq) = 0

(e)

2K+l(tt01)- F(zt,j], ut,j3,tM) = 0

The conditions derived by Jacobsen et al. (1971) for


this problem are:
(a)

O~ OF
~+~-~A

=0,
+ 08-~M

A(b)=0,

qf=

(if Z0 not specified);


ztl01= Z0

ArE
z" K +

I(~NE+ 2)'

g(ztv], ulvj) ~ O,
c(zto1, utol) = 0;

(g)

Z(a) = Z 0,

--7:-+',(c<,) = "r+
-' 1(~,) i = 2 . . . . ,NE,

(f)

(SCP1)

g[Z(t)] <<.o.

8~

O~+Ogs

55

Cr(Zf)= 0,

gi(zi) <<.o;
(h)

#f,/xtu~>/0;

(i)

r
_
~t01[g(~t0], ut01)] = 0,

ufgi(zr) = o.
We now see that (a) is a discrete analog of the
adjoint equations which can easily be derived from
standard optimal control theory. They can also be
obtained directly by applying orthogonal collocation
on finite elements to the adjoint equations. Similarly,
(b) is a discrete analog of the variational conditions
on the control profiles while (c) and (d) represent
relationships on the final and initial conditions, respectively, for the adjoint variables. Finally, (e-g) are
simply feasibility conditions for the ODEs and the
problem constraints and the remaining expressions
relate to the optimality conditions for the inequality
constraints.
Note that, except for the conditions on purely state
variable constraints [e.g. g(Z(t)) <~0], all of the above
equations are discrete analogs of the conditions
found in Bryson and Ho (1975) for variational problems. To deal with state variable constraints, variational conditions have traditionally been defined
using higher time derivatives of these constraints in
order to express them as functions of the control.
This approach has often been used in order to
facilitate analytic solution of the optimal control
problem. On the other hand, Jacobson et al. (1971)
derived alternate conditions for state variable con-

(c) g[Z(t)] <~0,


(d)

M(t)rg[Z(t)] =0,

M ( t ) >>-O,

(e)

Z(t) = F[Z(t), U(t)l

Z(a) = Zo,

where M ( t ) and A(t) are adjoint functions for the


constraint g[Z(t)] <~O, and the ODE model, respectively. Note that these variational conditions can now
be related to the Kuhn-Tucker conditions presented
above. Moreover, Kreindler (1982) showed that the
above equations are, in fact, stronger necessary conditions for optimality of (SCP1) than those presented
in Bryson and Ho (1975). Thus, we have shown the
similarity between the solution solved with a nonlinear programming formulation and the corresponding variational conditions of the optimal control
problem, (DAOP2).
Finally, Reddien (1979) showed on a simpler optimal control problem without algebraic constraints
that:
The solution of the discrete approximation of the
necessary conditions converges to the continuous
solution as the level of approximation increases,
i.e. as K ~ ~ . Also, the rate of convergence is of
order 2K /f the functions and F and K + 1
times differentiable in Z and U, and K times
differentiable in t.
Solving a discrete approximation of this problem
using an NLP, is equivalent to solving a discrete
version of the necessary conditions.
Thus, NLP solutions of a discretized problem
approach the actual solution as K ~ oo.
From these conditions one can argue qualitatively
that as the level of approximation increases, solutions
of (NLP3) will also approach the solution for
(DAOP2). However, this will be true only if the state
and control profiles are at least continuous within
each element, i.e. all profile discontinuities are located
at the element breakpoints. Since optimal locations of
these discontinuities are generally unknown a priori,
we must therefore determine their locations by

J. E. CUTHRELLand L. T. BIEGLER

56

including the element breakpoints as degrees of freedom in (NLP3).

_(

mrs
\Km+S ]

4. SOLUTION OF A FED-BATCH FERMENTER


PROBLEM

U
+(1-S/SF)~,

S(0) = 0.0 g 1-1,

Finally, we consider the problem of finding an


optimal time-varying control strategy for a fed-batch
reactor problem. This is a difficult optimal control
problem involving the biosynthesis of penicillin. The
problem solved here has been treated in a series of
papers by Modak et al. (1986), Lim et al. (1986) and
Tayeb and Lim (1986). We first state the problem and
outline some of its features. Next, the technique
proposed above is applied for cases with known
solutions as well as more complex ones.
Consider Fig. 1 which presents a schematic diagram of a fed-batch reactor. Here, the reactor contains biomass (X), substrate (S) and product (P) at
certain concentrations (gl 1) and has volume (V) (1).
The control profile for this system is the feed rate (U)
(g h - 1) of substrate.
The differential-algebraic optimization problem is
stated below in problem (BFP). The model and
associated kinetic parameters were taken from Lim
et al. (1986) (Fig. 2, p. 1415). (BFP) is a difficult
DAOP because of the state profile and control profile
inequality constraints (i.e. profile bounds) and the
linear dependence on the control. For problems linear
in the control, the optimal control profile is either
bang/bang or contains singular control arcs. For
singular arcs, the control profile does not directly
influence the optimality conditions of the Hamiltonian and thus determining U(t) requires additional
conditions that can be difficult to handle. As we shall
see, the solution to (BFP) does in fact have singular
control arcs.
The fed-batch fermenter problem can be stated as:
min qo = --P(T)V(T),

(BFP)

l?(t) = U/Sr

V(O) = 7 l,
S

P(S)=Pmax K p + S ( l + S / K i n ~ '
0 ~ X(t) ~ 40 g 1-~,
O ~ S(t) ~ 100g1-1,
0 4 V ( t ) ~ 101,
0<~ U(t)<~ 5 O g S h -1,
72 ~< T ~ 200 h,
where:
#(X, S) = growth rate of biomass (h -1)
p (S) = production rate of penicillin
(g p g 1X-h-i),
#max = 0.11 h -1
Pmax = 0.0055 g P g-I X-h 1,

Kx = 0.006 g S g - t X,
Kp = 0.0001 g S 1-1,
Kin = 0.1 g S 1-1,

Kd~gr = 0.01 h -1,


Km= 0.0001 g S 1-l,
me = 0.029 g s g 1X - h - l ,

U(t),T

Yx/s = 0.47 g X g - 1S,


s.t.

X(t)=p(X,S)X-

~FV U X ( 0 ) = l . 5 g 1 - 1 ,
P

"(t) = p ( S ) X -- KdevP -- ( ~ F V ) U
P(0) = 0.0 g 1-1,

U(t),Sf

Fig. 1. Diagram of a fed-batch fermenter.

Ye/s = 1.2 g X g -1 S,
S r = 5OOgS1-1.
It is important to point out that two differences
exist between the above formulation and that cited in
Lim et al. (1986). Both differences are due to inconsistencies in the Lim et al. (1986) paper (Modak,
1987). First, the maintenance term in the substrate
equation was changed from 0.029X [cf. (23) p. 1414
Lim et aL, 1986) to 0.029S/(K m + S). Secondly, the
value of 0.004 [cf. (22) ibid.] was corrected to 0.0055
for/)max' It should be noted that the above corrections
must be made (Modak, 1987) in order to reproduce
the results given in Fig. 2 of Lim et al. (1986). For
more details about this fermenter problem the interested reader is also referred to Bajpai and Reuss
(1980, 1981).

Optimization and solution for batch reactor control

57

6O

50
45

50

40

-~ 40

35
5o

~ 30

25-~

20

~_

15 -

2O

10 5

I
20

I
40

I
60

I
80

I
100

I
120

10
0

I
140

I
40

I
60

I
80

11

Time (h)

Fig. 2. Analytically-based control profile.

10
A

4.1. An analytically-based solution of problem (BFP)


The fed-batch fermenter control problem stated in
(BFP) has been solved in Modak et al. (1986) and
Lim et al. (1986). As explained below, this solution
derives from the variational conditions, but also
requires repeated numerical solution of the fermenter
model. We reproduced the solution profiles of this
problem and present them in Figs 2-4. The values for
the points of control profile discontinuity, final
time and the optimal value of the objective function
are 11.21, 28.79 and 124.9 and -87.05, respectively.
These values can be found in Lim et al. (1986),
except the value of the objective function results
from integrating their model with the changes indicated above. Lim et al. (1986) quote an objective
function value of -86.99 (i.e. a penicillin yield of
86.99 g).

35
i_.

30

O~

25

oL

20

40

60

80

100

120

140

10 I,
,..m

9 8 -

6 -i 7-

'=

uo

4-3--

I1_

I
0

20

I
Time (h)

Fig. 3. Analytically-based biomass and product profiles.

_,=
o
>

6
0

I
20

I
100

I
120

I
140

T i m e (h)

Fig. 4. Analytically based substrate and volume profiles.


4.2. Four numerical solutions of problem (BFP)
To demonstrate the method proposed above, four
numerical solutions of (BFP) are presented. Each was
solved using the NLP structure given in (NLP2) and
the SQP algorithm presented in Biegler and Cuthrell
(1985).
Initialization of the NLP starting point was done
as follows. First, a continuous control profile U(t)
was used along with model initial conditions and
initial batch time, T, to integrate the model using the
ODE solver LSODE (Hindmarsh, 1980). Next, the
number of collocation points K and the number and
locations of the finite element knots were chosen. The
collocation point locations were next calculated
based on (6). State profile polynomial coefficients at
the collocation points were then initialized from these
continuous profiles. Polynomial coefficients at the
knots were computed by solving the linear system of
continuity equations (12). Since these equations are
linear, solving them beforehand keeps the optimization algorithm in the feasible subspace of these
constraints.
In Case I, (BFP) as stated above, was solved. Here
the optimal control profile given in Fig. 2 of Lim et al.
(1986) (or Fig. 2 here) was used as the basis for the
starting point. Also three finite elements were used
with the initial breakpoint positions at 11.21 and
28.79 and a final (or batch) time of 124.9. In Case II
a different initial guess for the state and control
profiles was used as the starting point. Here, the
initial control profile was set to U(t)---25.0 and an
arbitrary initial knot distribution and batch time (see
Table 1) were used. In Case III, the problem was

58

J.E. CUTHRELL and L. T. BIEGLER


Table 1. Initial parameters and objective function values
Case
NE/K
o:
To
~o
I
II
III
IV

3/4
3/3
3/4
3/3

11.21, 28.79
20, 50
20, 50
20, 40

124.9
80
80
80

-82.90
- 73.07
- 73.98
134.39

J~

8
"6

40

35

30
25

~ 2o
m o d i f i e d by c h a n g i n g t h e s u b s t r a t e u p p e r b o u n d to
S ( t ) <~25.0. Finally, in C a s e IV a m o r e c o m p l e x
objective f u n c t i o n was used t h a t includes the penicillin yield a n d b a t c h time as well as the cost o f the
feed solution, a n d reflects the n e t profit o f t h e p r o c e s s
p e r batch:
= - 2 . 5 x I O - 2 P ( T ) V ( T ) + 168T

o
u

15

1(3

L_,

U(t) dt.

+ 8.5 x 10 .4

O
10

--

--

40

60

80

I00

120

140

o=

Table 1 lists the n u m b e r o f e l e m e n t s (NE), collocation p o i n t s (K), initial k n o t d i s t r i b u t i o n ~0 for the


a b o v e cases as well as the initial b a t c h time T O a n d
t h e initial objective f u n c t i o n value ~0.
T h e results for the t h r e e cases are p r e s e n t e d in
Table 2 a n d Figs 5-16. In Table 2, N o . iter. refers to
the n u m b e r o f Q P s r e q u i r e d to solve the N L P , K T
e r r o r is the final K u h n - T u c k e r e r r o r a n d T* a n d ~ *
are the o p t i m a l b a t c h time a n d objective f u n c t i o n .
T h e o p t i m a l k n o t d i s t r i b u t i o n is d e n o t e d by c~*. T h e
convention
A(--b)=A
x 10 b has also been
a d o p t e d . In the figures, all c o n t r o l profiles are d r a w n
with solid lines a n d depict p o l y n o m i a l s c o n s t r u c t e d
with the L a g r a n g e f o r m u l a (8). N o t e t h a t t h e c o n t r o l
profile is n o t r e q u i r e d to be c o n t i n u o u s at the k n o t s .
T h e state profiles are d r a w n w i t h b r o k e n lines, if they
are a p p r o x i m a t i o n s a n d solid lines if they were
o b t a i n e d f r o m a n a posteriori i n t e g r a t i o n o f the m o d e l
(using L S O D E ) .

5
2

1
[

20

Time (h)

Fig. 6. Biomass and product profiles for Case I.


6O
50
4O

20

to
I

50

45

k~

40

35

30

25

11
lO

20 15

10

20

I
40

I
I
60
80
Time (h)

[
I 00

I
120

Fig. 5. Control profile for Case I.

t40

6
0

I
20

40

60

80

100

120

140

T i m e (h)

Fig. 7. Substrate and volume profiles for Case I.

Table 2. Results for (BEP)


Case
No. iter.
KT error
I
25~
1.26(-2)
11.46,29.29
II
31 ~
2.05(-2)
29.01,29.38
III
32]
5.88(-2)
21.27,32.60
IV
8
7.02(--8)
18.54, 28.94
~Terminated due to two line search failures.

r~

4"

128.29
126.34
132.14
72.0

- 87.83
-87.79
-87.69
120.95

Optimization and solution for batch reactor control


30 -

50

45

25

40

A
Ic::

35

~
2

30

20

~ z5
o 20
o
,,~ 15
10

g,
0

20

40

100

120

140

11

60
eo
Time (h)

Fig. 8. Control profile for Case II.

40
35

o= 30
~ 25
E

~, lO
o

II1

I
40

I
60

I
80

I
100

I
120

I
140

7
6

....
0

I
20

Time (h)

Fig. 10. Substrate and volume profiles for Case II.

variable profiles, as seen in Figs 6 and 7 satisfy the


model exactly.
To explain this improved solution, even though the
NLP control profile does not exhibit bang/bang
features, we need to consider the approach of Lim
et al. Using variational conditions, they were only
able to predict the correct shape of the control profile
(bang/bang-singular arc). However, a trial and error
search was still required to determine the optimal
switching times, and this may not lead to the exact
optimum. On the other hand, note that the NLP
solutions for Cases I - I I I all have singular arcs (the
last portion of the profile) very similar to Lim's
solution, even though the profiles are somewhat
different before the singular arc is encountered. Because the objective functions are almost identical,
however, this seems to suggest that the optimal
control profile before the singular arc may be
nonunique.
50

45

40

~ 25

4
3

20
,,~ 15
10

2
fl_

38

lO

lO

From the optimal profiles (Figs 5-7) and parameters (Table 2) obtained in Case I it can be seen
that solutions found with the proposed math programming approach are close to the analyticallybased solution. Here slight differences can be seen in
the math programming results. For example, the
control profile is not at its bounds during the first two
feeding periods, the substrate profile attains a slightly
lower peak value, and the biomass profile has a
slightly altered slope after ~ 30 h. However, in both
cases the volume is at its upper bound at final time
and the product profiles are almost identical. Also,
the optimal objective function value, final time value
and knots for the NLP solution differ only by a small
amount: -87.83, 128.29 and 11.46 and 29.29 vs
-87.05, 124.9 and 11.21 and 28.79 from the Lira
solution. This represents an improvement in the objective function over the analytically-based solution.
This improvement is worth noting because the state

59

35
30

1
o

20

40

60

8o

lOO

12o

I
14o

Time (h)

Fig. 9. Biomass and product profiles for Case II.


C.A,C,E.

13/1-2--E

I
20

[
40

I
60

I
80

I
1 O0

I
120

T i m e (h)
Fig. 11. C o n t r o l p r o f i l e f o r Case I I I .

I
140

60

J. E, CUTHRELLand L. T. BIEGLER
40 -

45

35

40

35

30

J=

30
25

2O

ZO

15

t0
5

o
m

10

20

30

40

50

I
60

I
70

I
80

Time (h)

1o

J...~

Fig. 14. Control profile for Case IV.

7 "~

--

o 4

:~

--

I
20

40

60

80

100

120

I
140

Time (h)

Fig. 12. Biomass and product profiles for Case III.


In Cases II and III a starting profile of U(t) = 25.0
is used with initial knots at 20 and 50, In Case II some
similarities can been seen with the results of Case I.
Most importantly the optimal objective function
value of - 8 7 . 7 9 and the final time of 126.34 are very
close to the analytically-based values as well as those
in Case I. Both the biomass and product profiles

compare favorably to the results in Case I, but


differences can be seen in the control and substrate
profiles. The control profile seems to consist of just
two portions with two knots very close together at
29.01 and 29.38. The substrate profile is different in
that only a maximum of about 30 g 1-1 is achieved.
Very small differences between the profiles obtained
with Lagrange polynomials and those found via the
numerical O D E solution with LSODE are also
noticeable and are indicated by the dotted and solid
lines.
Given the results of both Cases I and II it is clear
that the optimum for (BFP) is relatively insensitive to
the first (or bang/bang) part of the control profile. All
three cases, however, have nearly-identical singular
arc portions and the optimal value of the objective
function differs by only 0.04 g. Interestingly, this is
consistent with the results of Lim et al. (1986). In
their optimal solution, the bang/bang portion could

25

40

I._,
20

o=

"~

L.,

35

30

15

25

20

c
oo

.Q

g,
I

-5

o
IO
~
9
b~ e
._~ r

11

lO
~ 9
>o

15

--

O.

30

40

50

60

70

7
6

20

40

60

80

100

120

140

Time (h)
Fig. 13. Substrate and volume profiles for Case I I l .

10

20

80

Time (h)

Fig. 15. Biomass and product profiles for Case IV.

Optimization and solution for batch reactor control


25

i._,
2o
o

15

5~
L

11

61

(1986). Here we easily enforced S(t) <<,25.0 and obtained both good results in terms of the optimal
control profile and the state profile approximation
accuracy.
Finally, in Case IV use of a different objective
function results in an optimal batch time of 72 h (its
lower bound) and optimal knots at 18.54 and 32.60.
Observe again (Figs 14--16) that excelllent results are
obtained in terms of the accuracy of the state profiles,
and a final Kuhn-Tucker error of 7.02 x 10 -s was
obtained. Note that in this case the final volume is not
at its upper bound.
4.3. Comparison o f computation aspects

10

9
3
>

f
I
10

I
20

[
30

I
40

I
50

I
60

I
70

I
80

Time (h)

Fig. 16. Substrate and volume profiles for Case IV.


be replaced by higher substrate concentration as the
initial condition and a "no-feed" portion. In both of
their solutions the singular-arc portions and the
objective function values remain the same.
This relative insensitivity of the objective function
leads to nonunique solutions for the initial part of the
profile as well as to some numerical convergence
difficulties. It is clear that optimal knot positions,
final times and the final control profile vary measurably from the analytically-based results. Tight convergence of the Kuhn-Tucker tolerance was also
difficult to attain; tolerances smaller than 0.01 could
not be obtained before line search failures occurred.
Note that in Case IV much tighter convergence is
attained with a different objective function. However,
both Cases I and II have objective function values
that are noticeable improvements over the Lim et al's
solution and have reasonably accurate state variable
profiles as well.
The problem posed in Case III is different than
those in Cases I and II. Here we have additionally
imposed the state variable constraint S(t) <~25.0 by
simply changing the upper bound S U to 25.0. The
results obtained are presented in Table 2 and Figs
11-13. Good accuracy of the state profile approximation again results with very minor differences obtained between the polynomials and integrated
profiles. Case III illustrates the flexibility of the NLP
method over an analytically-based approach. In the
NLP approach general constraints (not necessarily
limited to the substrate profile constraint we used)
can be imposed with little difficulty. This is not true
of other methods such as that of Modak et al.

The approach presented here for solving discontinuous control problems offers a number of advantages over other methods. Alternate solution
methods for problems of this type couple a DAE
(differential-algebraic) solver to an optimization
routine. The DAE solver integrates the model in an
inner loop while the optimizer functions in an outer
loop to perform the optimization. This approach
can be quite expensive, particularly if a gradient
based optimizer (e.g. SQP) is used. In this case, the
required gradients will likely be obtained through
perturbation of the model, or through sensitivity
equations. On the other hand, Lim et al. (1986)
applied variational conditions to (BFP) and had to
solve a two-point boundary-value problem. Here they
repeatedly used a shooting method coupled with
LSODE to optimize their profile, although this only
had to be done over the final feeding portion of the
batch.
Just as important as the above difficulties, is the
inability of DAE solvers to explicitly handle inequalities, such as profile bounds. In the work of Modak
et al. (1986) and Lim et al. (1986), the bounds on the
control profile were handled implicitly, by knowing
the portions of reaction time over which these bounds
were active. The condition on the tank volume
could, however, be considered an upper bound, but
this was also handled implicitly by setting the
flowrate to zero when the tank was full. For handling
inequality constraints with an ODE (or DAE) solver,
only one other option exists, that of Sargent and
Sullivan (1977). However, even this approach does
not overcome the problem of potentially-expensive
solutions.
Our approach, on the other hand, formulates a
discrete version of (BFP) as an NLP, and the above
difficulties are not encountered. However, two important considerations with our approach involve the
choices of K and N E and solution of the resulting
large-scale nonlinear program. The first problem is
currently handled by a trial and error solution. The
second problem can be remedied by using large-scale
SQP decomposition methods (see Vasantharajan and
Biegler, 1988; Locke et al., 1983). These problems
form the basis for future research.

J. E. CUTHRELLand L. T. BIEGLER

62
5. CONCLUSIONS

This paper presents a general method for solving


optimal control problems that have discontinuous
profiles. The approach uses orthogonal collocation
on finite elements to discretize the differential equation model, and Lagrange polynomials to construct
approximations to the continuous profiles. The resulting algebraic modelling equations are written as
constraints in a nonlinear program with polynomial
coefficients becoming decision variables. The finite
element knot locations are also written as variables in
the NLP so that points of discontinuity can be found.
Two important theoretical properties have been
addressed. First, approximation properties were considered through an equivalence between orthogonal
collocation on finite elements and a fully implicit
R u n g e - K u t t a integration scheme that uses Gaussian
points. As a result, desirable stability and high-order
accuracy properties, normally associated with numerical integration schemes, also hold for the orthogonal
collocation method used here. The topic of accuracy
of optimal control profiles was also addressed. Here
the NLP approach outlined above was shown to be
equivalent to solving discrete approximations of the
variational necessary conditions. Specifically, equivalence was established between the K u h n - T u c k e r conditions of the NLP and the discretized necessary
variational conditions.
Applicability of the method has been demonstrated
by solving a well-known fed-batch fermenter problem. Solutions slightly better than published, analytically-based results were obtained although nonunique solutions also are found due to insensitivity of
the objective function to the initial part of the optimal
control profile. This insensitivity leads to slight variations in the optimal values of the points of control
profile discontinuity, final batch time and the optimal
state and control profile shapes. This occurred even
though objective function values varied by less than
0.05%. Very good accuracy of the model approximations resulted a n d these clearly demonstrate the
effectiveness of using orthogonal collocation and
Lagrange polynomials. In addition the flexibility of
the N L P approach was demonstrated by adding state
variable inequality constraints on the substrate
profile. This was easily done by changing the bounds
on the polynomial coefficients in the NLP. With other
methods that use a variational calculus approach,
imposition of a state profile inequality constraint can
only be done implicitly and is much more difficult.
Acknowledgements--Partial support of tlais work from the
National Science Foundation is gratefully acknowledged. J. E.
Cuthrell was supported by a Shell Foundation Fellowship.
REFERENCES

Ascher U. and G. Bader, Stability of collocation at Gaussian points. SIAM J. Numer. Anal. 23, 412-422 (1986).
Bajpai R. K. and M. Reuss, A mechanistic model for
penicillin production. J. Chem. Technol. Biotechnol. 30,
332-344 (1980).

Bajpai R. K. and M. Reuss, Evaluation of feeding strategies


in carbon-regulated secondary metabolite production
through mathematical modelling. Biotechnol. Bioengng
23, 714-738 (1981).
Biegler L. T. and J. E. Cuthrell, Improved infeasible path
optimization for sequential modular simulators--II. The
optimization algorithm. Comput. ehem Engng 9, 257-267
(1985).
Bryson A. E. and Y.-C. Ho, Applied Optimal Control.
Hemisphere, Washington, D.C. (1975).
Burrage K. and J. C. Butcher, Stability criteria for implicit
Runge Kutta methods. SIAM J. Numer. Analysis 16,
44-57 (1979).
Carnahan B., H. A. Luther and J. O. Wilkes, Applied
Numerical Methods. Wiley, New York (1968).
Cuthrell J. E., On the optimization of differential-algebraic
systems of equations in chemical engineering. Ph.D.
Dissertation, Carnegie Mellon University (1986).
Cuthrell J. E. and L. T. Biegler, On the optimization of
differential-algebraic process systems. AIChE Jl 33,
1257-1270 (1987).
Dahlquist G., Stability questions for some numerical
methods for ordinary differential equations. Proc. Syrup.
Appl. Math. 15, 47 (1963).
Ehle B. L., High order A-stable methods for the numerical solution of differential equations. BIT 8, 276
(1968).
Finlayson B. A., Nonlinear Analysis in Chemical Engineering. McGraw-Hill, New York (1980).
Gardini L., A. Servida, M. Morbidelli and S. Carra, Use of
orthogonal collocation on finite elements with moving
boundaries for fixed bed catalytic reactor simulation.
Compur chem Engng 9, 1-17 (1985).
Hindmarsh A. C., LSODE and LSODI, two new initial
value ordinary differential equation solvers. ACMSIGNUM Newslett. 15, 10-11 (1980).
Jacobsen D. H., M. M. Lele and J. L. Speyer, New necessary
conditions of optimality for control problems with statevariable inequality constraints. J. Math. Analysis Applic.
34, 239-266 (1971).
Kreindler E., Additional necessary conditions for optimal
control with state-variable inequality constraints. JOTA
38, 241-250 (1982).
Lim H. C., Y. J. Tayeb, J. M. Modak and P. Bonte,
Computational algorithms for optimal feed rates for a
class of fed-batch fermentation: numerical results for
penicillin and cell mass production. Biotechnol. Bioengng
28, 1408-1420 (1986).
Locke M. H., R. Edahl and A. W. Westerberg, An improved
successive quadratic programming optimization algorithm for engineering design problems. AIChE J1 29,
871-874 (1983).
Modak J. M., Personal Communication (1987).
Modak J. M., H. C. Lim and Y. J. Tayeb, General
characteristics of optimal feed rate profiles for various
fed-batch fermentation processes. Biotechnol. Bioengng
28, 1394-1407 (1986).
Reddien G. W., Collocation at Gauss points as a discretization in optimal control. SIAMJ. Control Optimization 17,
298-306 (1979).
Sargent R. W. H. and G. R. Sullivan, The development of
an efficient optimal control package. Proe. 8th IFIP Conf.
Optimization Techniques, Pt 2 (1977).
Tayeb Y. J. and H. C. Lim, Optimal glucose feed rates for
fed-batch penicillin fermentation: an efficient algorithm
and computational results. Ann. N Y Acad. Sci. 469,
382-403 (1986).
Vasantharajan S. and L. T. Blegler, Large-scale decomposition for successive quadratic programming. Compur chem
Engng 12, 1087-1101 (1988).
Villadsen J. and M. L. Michelsen, Solution of Differential
Equation Models by Polynomial Approximation. PrenticeHall, Englewood Cliffs, New Jersey (1978).

You might also like