a software environment for simultaneous dynamic … · gproms and aspen custom modeler, we prefer...

12
Computers and Chemical Engineering 31 (2007) 931–942 A software environment for simultaneous dynamic optimization Y.-D. Lang, L.T. Biegler Department of Chemical Engineering, Carnegie Mellon University, Pittsburgh, PA 15213, United States Received 15 November 2005; received in revised form 1 August 2006; accepted 20 October 2006 Available online 4 December 2006 Abstract We describe a software environment for dynamic optimization using the simultaneous approach. Over the past few years, there has been significant development in the formulation of simultaneous dynamic optimization problems, using collocation on finite elements, and in the solution of the resulting large-scale nonlinear programming problem, using powerful barrier NLP solvers. Here we describe the background of the simultaneous approach as well as the components that make up the formulation and modeling environment, which we call DynoPC. DynoPC incorporates state-of-the-art NLP and DAE solvers along with a powerful automatic differentiation package. Moreover, it has a number of advanced features including model reduction and moving finite elements. Finally, we describe how DynoPC can be interfaced to other environments using Equation Set Objects (ESO) and the MINLP CAPE-OPEN object. All of these concepts are illustrated with three dynamic optimization examples including a large-scale industrial case study. © 2006 Elsevier Ltd. All rights reserved. Keywords: Nonlinear programming; Collocation on finite elements; Differential–algebraic equations; Dynamic optimization; DynoPC; IPOPT; CAPE-OPEN; ESO 1. Introduction Demand and application of dynamic optimization have spread in various fields of science and engineering. Within chem- ical engineering, many processes and unit operations require dynamic models. For instance, during the last two decades, mod- eling and analysis of batch processes have become widespread in the fine chemical and pharmaceutical industries. Batch processes involving distillation, reaction, and crystallization are common in the chemical industry because of their flexibility, simplicity, and economy, especially to maintain quality and profitability for low volume, high-value products. Continuous processes also require dynamic modeling, for instance, startup and/or shutdown periods and transition from one operation condition to another (e.g., load or grade changes). Moreover, advanced process con- trol strategies for both continuous and batch processes must be analyzed through dynamic simulation. This has made dynamic simulation and optimization more important than ever. In this study, we describe an environment for simultaneous dynamic optimization. A comparison on different strategies for dynamic optimization can be found in Biegler, Cervantes, and Corresponding author. Tel.: +1 412 268 2232; fax: +1 412 268 7139. E-mail address: [email protected] (L.T. Biegler). achter (2002). While sequential optimization capabilities have been developed for commercial dynamic simulators, such as gPROMS and Aspen Custom Modeler, we prefer the simulta- neous dynamic optimization approach as it is often faster than the sequential approach, has more flexibility in handling path inequality constraints and is capable of handling unstable and ill-conditioned problems. Nevertheless, several researchers have noted some disadvantages to the simultaneous approach related to (a) formulation of discretized equations and initialization of large-scale systems of algebraic equations, (b) solution of the resulting large-scale optimization problem and (c) ensuring accurate solutions of state and control profiles. The software environment described here successfully overcomes these dif- ficulties and demonstrates the desirable characteristics of the simultaneous approach. Developed in MS-Windows and called DynoPC, this soft- ware environment has the following features: (a) Automatic set-up facilities for the collocation equations along with integration of DAEs (using DASPK) and match- ing to the collocation equations. (b) A powerful, large-scale NLP solver, IPOPT, to solve resulting large-scale optimization problem. DynoPC also incorporates an efficient automatic differentiation tool to compute exact first and second derivatives. 0098-1354/$ – see front matter © 2006 Elsevier Ltd. All rights reserved. doi:10.1016/j.compchemeng.2006.10.017

Upload: lamnhan

Post on 01-May-2018

221 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

A

drasiSa©

K

1

sidetiiafrp(tas

dd

0d

Computers and Chemical Engineering 31 (2007) 931–942

A software environment for simultaneous dynamic optimization

Y.-D. Lang, L.T. Biegler ∗Department of Chemical Engineering, Carnegie Mellon University, Pittsburgh, PA 15213, United States

Received 15 November 2005; received in revised form 1 August 2006; accepted 20 October 2006Available online 4 December 2006

bstract

We describe a software environment for dynamic optimization using the simultaneous approach. Over the past few years, there has been significantevelopment in the formulation of simultaneous dynamic optimization problems, using collocation on finite elements, and in the solution of theesulting large-scale nonlinear programming problem, using powerful barrier NLP solvers. Here we describe the background of the simultaneouspproach as well as the components that make up the formulation and modeling environment, which we call DynoPC. DynoPC incorporates

tate-of-the-art NLP and DAE solvers along with a powerful automatic differentiation package. Moreover, it has a number of advanced featuresncluding model reduction and moving finite elements. Finally, we describe how DynoPC can be interfaced to other environments using Equationet Objects (ESO) and the MINLP CAPE-OPEN object. All of these concepts are illustrated with three dynamic optimization examples includinglarge-scale industrial case study.2006 Elsevier Ltd. All rights reserved.

l–alge

Wbgntiintotaefis

w

eywords: Nonlinear programming; Collocation on finite elements; Differentia

. Introduction

Demand and application of dynamic optimization havepread in various fields of science and engineering. Within chem-cal engineering, many processes and unit operations requireynamic models. For instance, during the last two decades, mod-ling and analysis of batch processes have become widespread inhe fine chemical and pharmaceutical industries. Batch processesnvolving distillation, reaction, and crystallization are commonn the chemical industry because of their flexibility, simplicity,nd economy, especially to maintain quality and profitabilityor low volume, high-value products. Continuous processes alsoequire dynamic modeling, for instance, startup and/or shutdowneriods and transition from one operation condition to anothere.g., load or grade changes). Moreover, advanced process con-rol strategies for both continuous and batch processes must benalyzed through dynamic simulation. This has made dynamicimulation and optimization more important than ever.

In this study, we describe an environment for simultaneousynamic optimization. A comparison on different strategies forynamic optimization can be found in Biegler, Cervantes, and

∗ Corresponding author. Tel.: +1 412 268 2232; fax: +1 412 268 7139.E-mail address: [email protected] (L.T. Biegler).

(

(

098-1354/$ – see front matter © 2006 Elsevier Ltd. All rights reserved.oi:10.1016/j.compchemeng.2006.10.017

braic equations; Dynamic optimization; DynoPC; IPOPT; CAPE-OPEN; ESO

achter (2002). While sequential optimization capabilities haveeen developed for commercial dynamic simulators, such asPROMS and Aspen Custom Modeler, we prefer the simulta-eous dynamic optimization approach as it is often faster thanhe sequential approach, has more flexibility in handling pathnequality constraints and is capable of handling unstable andll-conditioned problems. Nevertheless, several researchers haveoted some disadvantages to the simultaneous approach relatedo (a) formulation of discretized equations and initializationf large-scale systems of algebraic equations, (b) solution ofhe resulting large-scale optimization problem and (c) ensuringccurate solutions of state and control profiles. The softwarenvironment described here successfully overcomes these dif-culties and demonstrates the desirable characteristics of theimultaneous approach.

Developed in MS-Windows and called DynoPC, this soft-are environment has the following features:

a) Automatic set-up facilities for the collocation equationsalong with integration of DAEs (using DASPK) and match-ing to the collocation equations.

b) A powerful, large-scale NLP solver, IPOPT, to solveresulting large-scale optimization problem. DynoPC alsoincorporates an efficient automatic differentiation tool tocompute exact first and second derivatives.

Page 2: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

9 d Che

(

ftwpCegfiNt

odtotdCassff

2

ntaddy

v

d

wt(fipRe

e

z

wnip

y

u

wtHt

Fr

32 Y.-D. Lang, L.T. Biegler / Computers an

c) Comparison of solution profiles with a DAE integrator andfrequent user interaction to ensure selection and placementof finite elements for accurate collocation profiles. An optionfor moving finite elements is also developed.

Finally, COM and CORBA standards allow interoperabilityor solver interfaces so that compliant objects can be linkedo enjoy a number of capabilities. This study describes twoays that this environment can be interfaced to other modelingackages, with the CO-Tester and gPROMS as the objects. TheO-Tester developed by CO-LaN is currently the simplest mod-ling tool to implement MINLP CAPE-OPEN interfaces, whilePROMS implements ESO interfaces instead. In this study, werst describe how to plug IPOPT into CO-Tester as an optimizer.ext, we explain how DynoPC can be interfaced to gPROMS

hrough an ESO socket.The next section provides a brief review of the simultane-

us approach along with the IPOPT algorithm and its use withynamic optimization problems. Section 3 introduces the struc-ure of DynoPC along with novel features for the placementf finite elements. A small example is also presented to illus-rate the elements and user interface of DynoPC. Section 4iscusses the interface to IPOPT based on the MINLP object inAPE-OPEN and it also introduces the CAPE-OPEN compli-nt interface and also some model reformulation and reductionteps for dynamic optimization. Section 5 then presents two casetudies that demonstrate the advantages of DynoPC and its inter-aces. Finally, Section 6 concludes the paper with remarks foruture work.

. Theory and background

The motivation for this work is the solution of large-scaleonlinear programs that frequently arise from the optimiza-ion of dynamic systems. Dynamic optimization problemsre time dependent and commonly expressed by a set of

ifferential–algebraic equations (DAEs). Let t ∈ [0,tf], z(t) ∈ �nz

enote the differential variables with initial conditions z(0) = z0,(t) ∈ �ny are the algebraic variables, u(t) ∈ �nu denote controlariables and p∈ �np denote time-independent parameters. The

httc

ig. 1. Collocation on finite elements. (The diamonds represent u and y at collocaepresent z at mesh points. Discontinuity of u and y at mesh point is allowed, while c

mical Engineering 31 (2007) 931–942

ynamic optimization problem can be formulated as

minu(t),p

φ(z(tf), y(tf))

s.t. F

(dz

dt, z, y, u, p, t

)= 0, z(0) = z0; Gf(z(tf)) = 0;

z(t) ∈ [zL, zU], y(t) ∈ [yL, yU], u(t) ∈ [uL, uU](1)

here F(·) refers to the DAE system, assumed to be reformulatedo index one, and Gf(·) refers to endpoint constraints. To solve1) we discretize state and control variables using collocation onnite elements, and convert DAEs into a large-scale nonlinearrogramming problem (4) given below. As shown in Fig. 1,adau collocation is used to discretize the differential–algebraicquations into a set of algebraic equations.

Here, we use a monomial basis representation for the differ-ntial profiles:

(t) = zi−1 + (t − ti−1)ncol∑q=1

Ωq

(t − ti−1

hi

)dz

dt i,q(2)

here zi−1 is the value of the differential variable at the begin-ing of element i, hi = (ti − ti−1) is the length of element i, dz/dti,qs the value of its first derivative in element i at the collocationoint q, and Ωq is a polynomial of order ncol.

The control and algebraic variables are approximated by

(t) =ncol∑q=1

ψq

(t − ti−1

hi

)yi,q,

(t) =ncol∑q=1

ψq

(t − ti−1

hi

)ui,q (3)

here yi,q and ui,q represent the values of the algebraic and con-rol variables, respectively, in element i at collocation point q.ere, ψq is a Lagrange polynomial of order ncol. The differen-

ial variables are required to be continuous throughout the time

orizon, while the control and algebraic variables are allowedo have discontinuities at the boundaries of the elements. Fixinghe number and the length of the elements, and the number ofollocation points, and substitution of Eqs. (2) and (3) into (1)

tion points. The triangles represent dz/dt at collocation points and the circlesontinuity of z is kept everywhere.).

Page 3: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

d Che

l

w[�ntdalss

2

pHf

ocoBNc

∇V

at[

wddftffsdApai

acWaIoaC&mhiri

2

mpotabwiCme

tom

A

ww

q

s

p

ce

3

Y.-D. Lang, L.T. Biegler / Computers an

eads to the following NLP:

min f (x)

s.t. c(x) = 0, xL ≤ x ≤ xU(4)

here x∈ �n is the vector of discretized variables x =zi dzi,q/dt yi,q ui,q ]T, i = 1, ne; q = 1, ncol. f (x) : �n →, c(x) : �n → �m and n = nz(ne + 1) + ne[ncol(nz + ny + nu)] +p and m = nz(ne + 1) + ne[ncol(nz + ny)], and ne and ncol arehe numbers of elements and collocation points used foriscretization, respectively. For problems with many statesnd finite elements, it is easy to see that (4) can become veryarge, but the discretized equations also contain considerabletructure, which we exploit to derive an efficient solutiontrategy.

.1. Solving the NLP in full space

The key concept in the IPOPT solver is the use of an interioroint method to convert (4) into an equality constrained problem.ere, the inequality constraints are incorporated into a barrier

unction leading to

minx∈ �

ϕμ(x) = f (x) − μ

[n∑i=1

ln(xi − xiL) +n∑i=1

ln(xiU − xi)

]

s.t. c(x) = 0(5)

Problem (5) is solved repeatedly for a sequence l = 1, . . ., Lf barrier parameters μ = μ� → 0. Under mild conditions, itan be shown that the solutions of (5) converge to the solutionf (4), that is, x(μ�) → x∗. Our previous studies (Wachter &iegler, 2006) have demonstrated the advantages of the IPOPTLP solver for very large problems. To solve (5) we write the

orresponding KKT conditions:

f (x) + A(x)λ− νU + νL = 0, c(x) = 0,

U(xU − x) = μe, VL(x− xL) = μe (6)

nd apply a stabilized Newton method which solves linear sys-ems at iteration k of the form:

Wk +Σ Ak

ATk 0

] [xk

λk

]= −

[∇ϕμ(xk)

c(xk)

](7)

here λ, vU and vL are estimates of the multipliers. VU =iag{vU} and VL = diag{vL}, Ak is the matrix of constraint gra-ients from the DAE model, Wk is the Hessian of the Lagrangeunction, Σ = (Xk − XL)−1VL + (XU − Xk)−1VU (X = diag(x)) ishe barrier term correction and ϕμ(xk) is the barrier functionrom (5). IPOPT incorporates a number of features that promoteast and reliable solution of the NLP. Using a novel filter lineearch function, IPOPT is globally convergent under mild con-itions. Moreover (7) can be poorly conditioned (singular) if the

matrix is ill-conditioned (rank deficient) or if (W +Σ) is not

ositive definite in the null space of AT. Regularizing terms aredded to the diagonals of (7) to treat these cases and IPOPT alsoncorporates a number of scaling options.

oad

mical Engineering 31 (2007) 931–942 933

Finally, both FORTRAN and C++ codes for IPOPT are avail-ble on the COIN-OR server for numerical algorithms under aommon public license (CPL). See http://www.coin-or.org andachter and Biegler (2006) for documentation, comparisons

nd downloading information. A typical user environment forPOPT is through AMPL, which provides exact first and sec-nd derivatives, uses the full space option and solves systemss in (7). Also, for dynamic optimization, the OptimalControl-entre, a MATLAB-based environment (Jockenhovel, Biegler,Wachter, 2003), has successfully solved large dynamic opti-

ization problems with the full space approach. On the otherand, for problems with few degrees of freedom and structuren the A matrix (as in many dynamic optimization problems), aeduced space approach may be desired. This approach is alsomplemented in DynoPC and described next.

.2. Solve NLPs in the reduced space

The linear system (7) can be solved directly with a sparseatrix method or, alternately, we can apply a predefined decom-

osition strategy. This decomposition is useful when the numberf independent variables (e.g., control variables) is much lesshan the number of dependent variables, that is, n − m � n. Inddition, we assume thatAT

k = ∇c(xk)T is full row rank and cane partitioned to form AT

k = [C|N] where C is an m × m matrixith a block lower triangular structure. This block structure is

dentical for every finite element. Therefore, decomposition ofcan be performed in a forward element by element manner,uch as an initial value integrator solves a set of differential

quations.We now choose matrix Zk ∈ �n×(n−m), whose columns span

he null space of ATk , and matrix Yk ∈ �n×m so that the columns

f [Yk|Zk] span the space �n. (Convenient choices for theseatrices are ZT

k = [−NTC−T|I] and YT = [I|0].) This leads to

Tk Zk = 0; xk = qk + pk (8)

here qk:=Ykqk and pk:=Zkpk, qk ∈ �m and pk ∈ �n−m, asell as

˜k = −[ATk Yk]

−1c(xk) = C−1c(xk) (9)

With the solution of qk ∈ �m, pk ∈ �n−m can be solved byubstituting (8) and (9) into (7), and noting (8) to obtain

˜ k:=−[ZTk (Wk +Σ)Zk]

−1(ZTk∇ϕμ(xk) + ZT

k (Wk +Σ)Ykqk)

(10)

If n − m � n and (9) is easy to solve, then the solution of (7)an usually be obtained very efficiently, even for many finitelements.

. DynoPC: a tool for dynamic optimization

The DynoPC package incorporates the concepts of the previ-us section and also minimizes the user’s efforts in formulatingnd solving dynamic optimization problems, either with user-efined models or models created in gPROMS. For DynoPC, the

Page 4: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

934 Y.-D. Lang, L.T. Biegler / Computers and Chemical Engineering 31 (2007) 931–942

f struc

dfaaV

3

dDfiaTletamOt

crmtro

tL1rAw

Ia&eIb

3

idsmreemipttmic

tbdao

Fig. 2. Scheme o

ynamic problem is expressed as a set of (possibly implicit) dif-erential and algebraic equations (DAEs). DynoPC then appliescollection of well developed algorithms for DAE integration,

utomatic differentiation and nonlinear programming along withisual Basic GUI applications in Windows 2000/XP.

.1. Structure of DynoPC

The structure of DynoPC is depicted in Fig. 2. First, a user-efined model is introduced and interpreted. This includes theAE model, initial conditions for the state variables, selection ofnite elements and initial control profiles. State variable profilesre then determined via dynamic simulation with DASPK3.0.his forms the first step to initializing the state at each col-

ocation point. Next, the DAEs are converted into collocationquations by the dae2nlp procedure in DynoPC. The colloca-ion equations are then solved by IPOPT and the state profilesre compared with the ones determined by DASPK. Good agree-ent allows the user to proceed to the dynamic optimization step.therwise, the user may wish to choose to reposition and/or add

o the finite elements and try again.For the solution of the NLP, exact Jacobians and Hessians are

alculated by the automatic differentiation tool, ADOL-C. Theeduced space version of the IPOPT solver is then called and theain loop proceeds iteratively until IPOPT terminates, either

o the optimal solution or with a failure message. Output thatepresents progress of the solver is displayed on three windowsn the screen at each iteration.

DynoPC was developed in several stages and relies onhe research results described in Cuthrell and Biegler (1987),ogsdon and Biegler (1989) and Tanartkit and Biegler (1995,

997) for the formulation of the collocation equations. Cur-ently, the monomial bases given in (2) and (3) are applied.lso, the reduced space SQP strategy (Schmid & Biegler, 1993)as implemented and this has been superceded by reduced space

Htws

ture of DynoPC.

POPT, as described above. For the solution of (9) and the gener-tion of (10) an elemental decomposition is applied (Cervantes

Biegler, 2000). Equipped with these updates, DynoPC hasnjoyed a number of improvements in efficiency and reliability.n particular, a number of problems that could not be solvedefore are now easily converged with IPOPT.

.2. Moving finite elements

Over the last few decades, several methods were developedn order to select the optimal placement of finite elements asecision variables in the NLP. All of the methods developedo far were integrated with the NLP solvers themselves, whichade the algorithms more complicated and less effective. Most

ecently, Tanartkit and Biegler (1997) proposed a bi-level strat-gy in which the solution of an outer problem determines thelement lengths and an inner problem (with a fixed mesh) deter-ines the control and state variables. Taking advantage of the

nterior point method, Cervantes and Biegler (2001) later pro-osed another algorithm that detects active constraints duringhe solution procedure and attempts to force active constraintso be the same at each collocation point within any finite ele-

ent. With a sufficient number of finite elements, this propertys necessary to converge to the solution of the original optimalontrol problem (1).

Optimal determination of finite element values, hi, requireshe addition of the constraint,

∑ihi = tf, which disrupts the

lock lower triangular structure of AT exploited in the elementalecomposition. Instead, to retain this characteristic, we considersimple Moving Finite Element (MFE) method to obtain the

ptimal mesh without changing the algorithms within DynoPC.

ere we modify the original DAE model by introducing an addi-

ional control variable to represent the element length, alongith an additional differential variable and equation. The solver

till considers a fixed element formulation but the added control

Page 5: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

d Che

vw

actqτ

lme

a

t

oudDt

3

cwod

fimFpeisba

to

3

dio

lfisip

Fsddffre

wp

mtsgimd

Y.-D. Lang, L.T. Biegler / Computers an

ariable provides the optimum length of each element explicitlyhen the problem solved.In problem (1), let ua, and za denote the additional control

nd differential variables, respectively, with ua,i assumed to beonstant in an element i. We define τ = τi−1 + (t − ti−1)/ua,i, notehat dz/dt = (1/ua,i)(dz/dτ), for τ ∈ [τi−1,τi], and substitute thisuantity into the DAE model to form: F(1/ua dz/dτ, z, y, u, p,) = 0, z(0) = z0. For normalized time, τ, we denote the fixedength of element i by hi, and define the actual moving ele-ent as:hi = ua,i · hi. Also, we define the additional differential

quation as

dza

dτ= ua

nd represent final time tf by the additional differential variable:

f = za(τf) =∫ τf

0ua · dτ =

ne∑i=1

ua,i · hi =ne∑i=1

hi

This manipulation leads to only a small modification of theriginal dynamic optimization problem. Also we add the bounds,a ∈ [1 − d, 1 + d], where d is a value between 0.2 and 0.4 thatoes not distort the original approximation of the DAE model.ynoPC has a facility to convert the user-defined model (1) into

he MFE model automatically.

.3. Element grouping for control

The approximation of the DAE in the process models by dis-retization favors finer elements from the standpoint of accuracy,hile actual process operations prefer to keep controls constantver longer periods of time. To deal with both issues we intro-uce a method called “Element Grouping for Control” (EGFC).

In order to apply the EDFC method, we assume that the pro-les of the controls are constant within each element. We thenerge adjacent elements into a number of sections, as shown inig. 3. The lengths of each section depend on requirements fromrocess operations. We have the freedom to put any number oflements in each section according to the state variable profiles

n order to satisfy certain accuracy requirements. Within eachection, we force the values of each control in each element toe equal. Therefore, the state profiles can be made arbitrarilyccurate while we still obtain the desired optimal trajectories of

opta

Fig. 3. The concept of eleme

mical Engineering 31 (2007) 931–942 935

he controls that are suitable to implement for the actual processperation.

.4. Optimal control example

To illustrate the functions of DynoPC and the componentsescribed in Fig. 2, we briefly present an overview of the usernput for the modeling and solution of the “Car problem,” a smallptimal control problem given by

min tf

s.t.dx

dt= v, x(0) = 0, x(tf) = 300;

dv

dt= u, v(0) = 0, v(tf) = 0, u(t) ∈ [−2, 1]

(11)

Applying the calculus of variations, problem (11) has an ana-ytical solution with a optimal bang-bang control profile. For therst segment, the control lies at its upper bound with a suddenwitch to its lower bound at 20 time units. The optimal final times 30 time units. Here we consider the numerical solution of thisroblem with DynoPC.

In DynoPC the DAE model for (11) is given by the followingORTRAN subroutine:ubroutine model(nz,ny,nu,np,t,z,dmz,y,u, p,f)ouble precision t, z(nz),dmz(nz), y(ny),u(nu),p(np)ouble precision f(nz + ny)(1) = p(1)*z(2) − dmz(1)(2) = p(1)*u(1) − dmz(2)eturnnd

here the notation is similar to (1) and a time scaling allows(1) to represent tf in (11).

Here the states are z(1) = x and z(2) = v. Also, in the DAEodel, dmz(1) and dmz(2) refer to dx/dt and dv/dt, respec-

ively. The f2c utility then translates this model to C and headertatements are attached to communicate with ADOL-C, a pro-ram for automatic differentiation. The remaining problem datanclude the number of DAEs, collocation points and finite ele-

ents. From (1), the data also include bounds on the controls,ifferential and algebraic states, and parameters, specification

f the objective function as a linear combination of states andarameters, definition of possible final time constraints, and ini-ialization of the states, controls and finite elements. Fig. 4 showstypical screen input for DynoPC.

nt grouping of control.

Page 6: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

936 Y.-D. Lang, L.T. Biegler / Computers and Chemical Engineering 31 (2007) 931–942

ttatii

Istsp

edtTTsfttso

F(

lt

4

Fig. 4. User input data for car problem.

With the specification of the optimization problem, DynoPChen runs a simulation with DASPK, an initial value solver, athe initially specified values for the control and parameter vari-bles. These profiles (dashed lines) are then used to initializehe collocation profiles (solid lines) in (2) and (3) that are usedn the solution of (4). Fig. 5 presents the DynoPC plots for thisnitialization.

Using this set of initialized profiles, DynoPC then calls thePOPT solver and begins the optimization. Both control andtate profiles are presented dynamically, as they evolve fromheir initial to final values. In addition, a number of additionalcreens are presented that provide detailed information on therogress of the optimization.

From the analytic solution, we know that if the number ofqually spaced elements is divisible by three then there is noifficulty to obtain the true solution to (11). However, to showhe influence of the mesh on this problem, we use five elements.he results without and with MFE are shown in Fig. 6(a) and (b).he solution in (a) required twenty IPOPT iterations, while theolution in (b) required nineteen IPOPT iterations. The objectiveunction values (final times) in (a) and (b) are 30.62 and 30.00

ime units, respectively. Note that with the fixed mesh in (a),he solution is clearly suboptimal, while (b) shows a bang-bangolution. From the profiles in Fig. 6, it is obvious that when theptimal solution is determined by the mesh, the MFE method can

mc

Fig. 6. Comparison of results without and with meth

ig. 5. State and control profiles at initial point: (a) simulated with DASPK andb) matched by collocation profiles.

ead to improved solutions that approach the analytic solutiono (11).

. Interfaces for dynamic optimization

This section deals with two interface issues for dynamic opti-ization. First, NLP solvers need generic interfaces in order to

ommunicate with a wide variety of optimization models. This

od MFE: (a) without MFE and (b) with MFE.

Page 7: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

d Chemical Engineering 31 (2007) 931–942 937

iIemScrei

4

ooC2m(adi

CrmmaaemeMpMOCtdIttaH

Fm

tr

4

scaOwrmoal

4

drDimt

Y.-D. Lang, L.T. Biegler / Computers an

s realized here through a CAPE-OPEN compliant interface toPOPT discussed next. In addition, the DynoPC optimizationnvironment can also be interfaced to other modeling environ-ents. In Section 4.2 we describe the link made with Equationet Objects (ESO) to the gPROMS modeling package. Asso-iated with this link is also the possibility of reformulating andeducing general purpose models so that they can be solved morefficiently and reliably as nonlinear programs. This is describedn Section 4.3.

.1. Interface of IPOPT to MINLP in CAPE-OPEN

Computer aided decision making often requires the solutionf optimization problems to ensure systematic improvement ofbjectives. To link optimization models with solver, the GlobalAPE-OPEN project released a specification documentation in002 defining “what should be done” to interface MINLP or NLPodels to solvers. In 2003, CAPE-OPEN Laboratories Network

CO-LaN) further refined the MINLP interface specifications,mong others. It is expected that prospective commercial ven-ors will offer CAPE-OPEN compliant modeling systems tomplement “how to do it”.

This section briefly describes the interface that makes IPOPTAPE-OPEN compliant. That is, IPOPT can now obtain all

equired information from any CAPE-OPEN compliant MINLPodeling system, solve the problem iteratively and find the opti-al solution. As a result, the CAPE-OPEN community can take

dvantage of IPOPT to solve its own optimization models easiernd faster. Through this interface, IPOPT can obtain necessaryxact first and second derivatives to fully exploit the perfor-ance of IPOPT. Moreover, as shown in Fig. 7, IPOPT is well

ncapsulated and has only two interface ports. One connects toINLPSystem created by MINLPSolverManager in CO Wrap-

er. Another connects to the MINLP modeling system throughS-COM. Therefore, it is relatively easy to make IPOPT CAPE-PEN compliant. Finally, to demonstrate CO compliance, theO-Tester is used as a pseudo-MINLP modeling system and

he wrapper from CO-LaN (http://www.colan.org/) makes theemonstration straightforward. Recently, we have shown thatPOPT successfully solves an NLP problem formulated with

he GUI in the CO-Tester, by communicating iteratively withhe pseudo-MINLP modeling system in the CO-Tester. IPOPTlso has its own facilities for error identification and handling.owever, the current development does not feed this informa-

Fig. 7. Scheme of interface making IPOPT CAPE-OPEN compliant.

S

4

mitbtfai

4

ia

ig. 8. Scheme of dynamic optimization with gPROMS via interface and infor-ation flow.

ion back to CAPE OPEN interface yet. For additional detailsefer to Lang and Biegler (2005).

.2. Interface of DynoPC to gPROMS

For large-scale industrial processes, gPROMS has beenhown to be a convenient environment to formulate the pro-ess model as differential and algebraic equations (DAEs). Asn appropriate interface to gPROMS we use the Equation Setbject (ESO) facility through CORBA. Through this interface,e can treat any model in gPROMS in the same way as a sub-

outine model in FORTRAN or C++. The interface connects theodel in gPROMS by ESO through CORBA to our dynamic

ptimization package, DynoPC. Fig. 8 depicts the relationshipsmong them. The arrows represent information flows, and singleine arrows represent just one action.

.3. Model reduction

After the discretization, reformulation and linearizationescribed in Section 2, we need to solve the linear system (7)epeatedly. Prior to these steps, simple reformulations of theAE model reduce the dimension of this linear system and

mprove its conditioning, without compromising the originalodel. In this section we summarize a number of model reduc-

ion techniques that were implemented on the case study inection 5.

.3.1. Eliminate equations by moving to ASSIGNAn equation of the form: vi = const, is an explicit assign-

ent. In addition a number of implicit assignments occur, fornstance in: r(i) = k(i) exp(−E(i)/RT) when the E(i)s are assignedo zero, as was frequently the case in the industrial model givenelow. By moving these explicit and implicit assignment equa-ions into the ASSIGN section, we exclude these constraintsrom our optimization problem and the dimension of our vari-ble space reduces. Usually for larger problems, this reductions quite significant.

.3.2. Remove extraneous terms and intermediate variablesThe industrial case study in Section 5 contains a general-

zed master model that can handle as many as 32 componentsnd 80 reactions in its simulation. But for a specific process,

Page 8: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

938 Y.-D. Lang, L.T. Biegler / Computers and Che

Table 1Numbers of components and reactions in block model of Fig. 11

Name of block

Cooler Loop Reactor Splitter Buffer Mixer

NN

miains

wtcoaw

4

gfiiatp

4

fefaba

4

osw

i

occ

a

rsbtwelusotd

i

f

c

c

c

c

wecct

umber of species 5 21 21 7 7 5umber of reactions 0 46 46 0 0 0

any components and equations may not exist at all. Hence, its important to identify these nonexisting terms (automatically)nd to exclude them from the optimization model. By inspect-ng the model block by block (see Fig. 11), we found that theumbers of components in each block are much less than 32 ashown in Table 1.

In order to decrease the number of the equations in the model,e separate each equation for each component and avoid equa-

ions for absent components. Moreover, all equations for absentomponents are sent to the ASSIGN section to reduce the sizef the model. Finally, a number of intermediate variables thatre added to improve readability in the model are removed asell.

.3.3. Smoothing discontinuitiesTo obtain more accurate discretizations it is often advanta-

eous to smooth jumps in input profiles. Here we introduce arst order lag to smooth a control: Td(du/dt) + u = u, where u

s the original control variable, Td is a suitably large constant,nd u is the smoothed control variable that substitutes for u inhe model. This approximation helps to eliminate some steeprofiles.

.3.4. ScalingIll-conditioning of Jacobian and Hessian matrices can result

rom a number of model characteristics including (a) the pres-nce of many trace components, (b) small cancellation errorsrom a number of model sources and (c) wide ranges of state vari-bles from 10−13 to 106. For these cases, a careful scaling muste implemented. Often a problem specific scaling is superior ton automatic scaling coupled to linear algebra routines.

.4. General NLP model decomposition

For generalized master models, one can often partition theptimization variables into two subspaces, L-space �nL and F-pace �nF . Let v denote the variables spanning the L-space and

denote the variables spanning F-space. If we assume that ws dependent on v, then we can express our NLP as follows:

minv∈RnL

ϕ(v)

s.t. cL(v) = 0, cF(v,w) = 0

As w is dependent on v, it is obvious that the constraintsf cF have no effect on the barrier objective function ϕ(v) and

onstraints cL. Therefore they can be dropped from the NLP andan be determined later.

Partitioning of the variables into v and w is well-knownnd easy to automate following the Sargent–Westerberg algo- {

mical Engineering 31 (2007) 931–942

ithm (Sargent & Westerberg, 1964) for identifying irreducibleets. This approach partitions the variables and equations intolock lower triangular systems. For a sparse, square set of equa-ions one will find that a subset of the equations can be foundhich involves nL equations in nL unknowns. In that case, nL

quations can be solved by themselves for the nL variables,eaving us to solve the remaining nF = N − nL equations in nFnknowns. Decomposition of our large process model into twomaller models significantly accelerates solution of the dynamicptimization problem because the NLP solver only deals withhe subspace �nL . Often, the dimension of the subspace nL isramatically smaller than that of the original space, N.

To illustrate this decomposition method, consider the follow-ng batch reactor example with the following DAEs:

: obj − z2 = 0, c1 :dz1

dt+ y2 · z1 = 0,

2 :dz2

dt+ y3 · z2 = 0, c3 : z1 + z2 + y1 − 1 = 0,

4 : y2 − k1 exp

(−E1

Ru

)= 0,

5 : y3 − k2 exp

(−E2

Ru

)= 0,

6 :dz3

dt− y2 ·H1 + y3 ·H2 = 0

The corresponding incidence matrix is

here each row corresponds to an equation, including thequation to calculate the objective function and each columnorresponds to the variables. After rearranging the rows andolumns, we can obtain precedence orders for problem parti-ioning.

From the new matrix, we can clearly define v =obj, z1, z2, y2, y3} ∈ �nL andw = {z3, y1} ∈ �nF , where nL = 5

Page 9: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

d Che

a

a

wo

5

lTtcT

da

5

nebl2twne

pota

C

ieot

tf(e(rVtf

j − x

w

L

T

(j)/(T

.2+

r

w

K

Kf (m3/kmol hr) = 60 × 29000.0 exp − 7150

Ti + 273.2,

Y.-D. Lang, L.T. Biegler / Computers an

nd nF = 2. The incidence matrix in L-space is as follows:

nd the dynamic optimization problem in L-space is given by

minu(t) obj

s.t. f : obj − z2 = 0, c1 :dz1

dt+ y2 · z1 = 0,

c2 :dz2

dt+ y3 · z2 = 0, c4 : y2 − k1 exp

(−E1

Ru

)= 0,

c5 : y3 − k2 exp

(−E2

Ru

)= 0

ith the variables z3 and y1 solved from c3 and c6 after the aboveptimization problem is completed.

. Case studies

We now consider two large-scale dynamic optimization prob-ems that demonstrate the features and advantages of DynoPC.he first case study deals with the simultaneous formula-

ion along with solution by IPOPT and then demonstrates theombination of the MFE and EGFC methods from Fig. 3.he second case study is drawn from an industrial plant and

emonstrates the effectiveness of the ESO/gPROMS interfaces well as the model reduction steps.

.1. Batch reactive distillation

To demonstrate the features of DynoPC, we have solved aumber of dynamic chemical process optimization problems asxamples, including batch reaction (Tanartkit & Biegler, 1995),atch crystallization (Lang, Cervantes, & Biegler, 1999), cata-yst mixing and batch reactive distillation (Cervantes & Biegler,000). Here we present the batch reactive distillation process

Mi

dxi,jdt

= Vi+1(yi+1,

pi,j (bar) =⎧⎨⎩

10−5 × 133.3 × 10(av1(j)+av2

10−5 exp(av1(j)) + av2(j)

Ti + 273

o show the application of DynoPC with a user-defined modelritten in FORTRAN. Reactive distillation is an attractive alter-ative to conventional processing schemes. When reactions arequilibrium limited, reactive distillation continuously removes

ρ

γ

mical Engineering 31 (2007) 931–942 939

roducts from the reaction zone, which dramatically increase theverall convention. In this batch reactive distillation, we considerhe reversible reaction among acetic acid, ethanol, ethyl acetatend water (Wajge & Reklaitis, 1998):

H3COOH + C2H5OH ⇔ CH3COOC2H5 + H2O

An eight tray (excluding the condenser and reboiler) columns used. The raw material for feed is an equimolar mixture ofthanol, acetic acid, ethyl acetate, and water. At the beginningf the batch, the column was fed with 1.1 mol of mixture on eachray, with 3.1 mol in the condenser and 10.0 mol in reboiler.

The dynamic model of reactive distillation is developed fromotal and component mass balances including liquid holdup (dif-erential equations), and liquid–vapor equilibrium in each trayalgebraic equations). For sake of simplicity, in this case wexclude energy balance equations that lead to an index 2 DAECervantes & Biegler, 2000). Instead, we assume the reboilate and vapor flow rates in the column are constant, that is,(i) = 50 kmol/hr, for all trays and reboiler. Also the pressure in

he column is fixed at 1 bar. The DAE model then consists of theollowing differential and algebraic equations:

dMi

dt= Vi+1 + Li−1 − Vi − Li

i,j) + Li−1(xi−1,j − xi,j) − Vi(yi,j − xi,j) + νjMi

ρiri

piyi,j = pi,jxi,jncc∑j=1

yi,j = 1

⎫⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎬⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎭

[DAE]

here liquid flowrate is given by the weir equation:

i (kmol/hr) ={

1581.139(Mi −ML)1.5

if Mi > ML

0 otherwise

Partial pressure of jth component in ith tray with temperaturei (◦C) is expressed as

i+av3(j))) if j = 4

av3(j) log(Ti + 273.2) + av4(j)(Ti + 273.2)av5(j) otherwise

Reaction rate on ith tray is calculated as

i (kmol/m3 hr) = ρ2i (Kbxi,2xi,3 −Kfxi,1xi,4)

here

b (m3/kmol hr) = 60 × 7380.0 exp

(− 7150

Ti + 273.2

),

( )

i (kmol/m3) = 1∑4j=1

xi,j

γj

,

(kmol/m3) = [15.267 53.931 8.956 15.877

]

Page 10: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

940 Y.-D. Lang, L.T. Biegler / Computers and Chemical Engineering 31 (2007) 931–942

Fig. 9. Scheme of mass balance in ith tray.

Table 2Coefficients for calculating partial vapor pressures

j av1(j) av2(j) av3(j) av4(j) av5(j)

Ethanol (1) 59.796 −6595.0 −5.0474 6.3E−7 2.0Water (2) 73.694 −7258.2 −7.3037 4.1653E−6 2.0EA

lfrγ

Irrwd

efBim

Table 3Comparison of two cases

Number ofvariables

Number ofequations

Number ofiterations

Objective CPUtime (s)a

(a) 3,572 3,562 27 6.801 49.2(

ctl

wdve

eaFvTttmtp

fifptge

ster (3) 66.824 −6227.6 −6.4100 0 6.0cetic acid (4) 7.18807 1416.7 211 – –

As seen in Fig. 9, M and ML denote the liquid holdup and itsower limit, respectively, in the DAE model, x, y denote moleraction of liquid and vapor phase, respectively, L, V denote flowate of vapor and liquid, respectively, T denotes temperature, andand ρ denote the species density and total density, respectively.

n addition, we define Kb and Kf as the backward and forwardate constants with r as the net backward reaction rate for theeversible reaction. Let pi,j denote partial pressure in vapor phasehere subscript i denotes the tray index numbered from the topown and subscript j denotes the species index defined in Table 2.

The reactive distillation model is given by 52 differentialquations and 46 algebraic equations. The detailed problem

ormulation for this problem is discussed in Cervantes andiegler (2000) and Wajge and Reklaitis (1998). The objective

s to maximize the amount of distillate produced within 1 hr byanipulating the reflux ratio as a function of time. After 1 hr, the

sfitm

Fig. 10. Solutions of batch reactive distillation: (a) solved w

b) 3,647 3,643 17 6.825 29.1

a DynoPC ran on Windows 2000 with AMD processor of 1.2 GHz.

oncentration of ethyl acetate in the distillate should be greaterhan or equal to 48%. Therefore, the dynamic optimization prob-em is formulated as

maxφ = z51(tf = 1 hr)

s.t. DAE model of reactive distillation, y47 = z52 − 0.48z51

here z51 is the total distillate flowrate and z52 is the ethyl acetateistillate flowrate. We introduce the algebraic equation and slackariable y47 to simplify the quality constraint, and we add thend-point constraint, y47(tf) ≥ 0.

The optimal solutions are shown in Fig. 10(a). Here, tenqually spaced elements and three collocation points are usednd the resulting NLP has 3,572 variables and 3,562 equations.ollowing the procedure outlined in Section 3, DynoPC con-erged successfully with 27 iterations and 49.2 CPU seconds.he objective increases from an initial value of 2.8 to 6.801 at

he solution. With equally spaced elements we can deduce fromhe control profile that the true optimal trajectory of the control

ight be bang-bang. However, because a fixed mesh was used,he solver could not find the exact optimal control switchingoint.

In order to overcome this issue, we now apply the movingnite element strategy in DynoPC. Applying the approachesrom Section 3, we again solve the batch reactive distillationroblem with MFE and EGFC, and obtain the optimal solu-ion shown in Fig. 10(b) with two groups of elements: the firstroup consists of elements 1–3 and second one is 4–10. As wexpected, the true optimal control policy is bang-bang and the

witching point is at t = 0.3331, which would be impossible tond with our fixed mesh. Moreover, we obtain a better objec-

ive, 6.825 kmol with MFE compared to 6.801 kmol with a fixedesh.

ith fixed mesh and (b) solved with MFE and EGFC.

Page 11: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

Y.-D. Lang, L.T. Biegler / Computers and Chemical Engineering 31 (2007) 931–942 941

shee

mMp

5

osptoKpt

attsosotmcatrrb

st

wmitt

t“a41t1ti3tir

After discretizing and converting the “reduced” DAE modelinto NLP, we chose a starting point with a coarse grid of controlprofiles, and solved the problem with end-point constraints usedfor the new steady state. For this optimization the objective func-

Table 4Statistics of dynamic optimization

Reduced Trimmed

Number of equations ∼300,000 ∼120,000Degrees of freedom 18 18Number of iterations 78 69KKT error 6.668E−7 7.474E−7

Fig. 11. Simulation flow

Table 3 presents the differences of the results and the perfor-ance of the two cases (a) and (b). Note that combining bothFE and EGFC leads us to obtain better solutions, and better

erformance, than with the fixed element case.

.2. Industrial case study with ESO

A continuous industrial process has been investigated forptimal dynamic operation subject to marketing and down-tream demands. As shown in Fig. 11, this process consists of aolymerization reactor operated as a loop reactor, cooler, split-er, buffer, and mixer. Details of the process and the dynamicptimization problem are described in Dunnebier, van Hessem,adam, Klatt, and Schlegel (2004). However, as most of therocess information is proprietary, we concentrate here only onhe performance of the dynamic optimization.

The reactor is coupled to a cooling system with recycle; nodditional heating is required. The polymer produced in the reac-or as well as solvent and nonconverted monomers are fed intohe component splitter. In this unit, the volatile components areeparated and recycled to the reactor via the buffer. The reactor isperated as a loop reactor; that is, the reactions occur in the looptreams during recycling. The fresh monomers, the condensatef the cooling system, and recycled volatile components fromhe splitter are fed into the recycle loop of the reactor via the

ixer. There are standard regulatory control loops in the pro-ess in order to control the liquid levels in the different vesselss well as reactor temperature. In order to model this process,wo reactors are included in the flowsheet: one is for the actualeactor and another represents the loop streams with internaleactions. The flowsheet model also includes cooler, splitter,

uffer, and mixer blocks for the process model.

Here we focus on an optimal process transition from oneteady state to another with fixed transition time. This transi-ion requires initial condition and end-point constraints, along

MOC

t of a polymer process.

ith path constraints such as reactor fluid density, feed rates ofonomer and initiator, condensation rate, solvent concentration

n the reactor and maximum rate of change in reactor tempera-ure. Finally, three control variables are selected in the scenarioo reduce the load from full to half capacity.

For this case study we were given three versions of the model:he “original” one was obtained originally from industry, areduced” one with variable ASSIGNMENTS used in our work,nd a “trimmed” model from the reduction procedure in Section.3. In these three versions the total number of DAEs are 2,041,,648, and 692, respectively. With 55 elements and 3 colloca-ion points in each element, our discretization algorithm requires65 collocation equations for each differential–algebraic equa-ion in the model. That means that the numbers of constraintsn the discretized NLP problem for the three models will be36,765, 271,920, and 114,180, respectively. It is evident thathe trimmed model reduces the size of the NLP significantly; its only 34% as large as the original one and 42% as large as theeduced one.

aximum violation 8.20E−4 8.18E−4bjective function 7.100E−2 7.105E−2PUa (s) 4,230 1,035

a Ran on Windows 2000 with AMD processor of 1.2 GHz.

Page 12: A software environment for simultaneous dynamic … · gPROMS and Aspen Custom Modeler, we prefer the simulta-neous dynamic optimization approach as it is often faster than the sequential

942 Y.-D. Lang, L.T. Biegler / Computers and Chemical Engineering 31 (2007) 931–942

) con

tsmcat

tatat

6

fHtuasaiofEdis

fptsevtipmaco

A

Mtap

R

B

C

C

C

D

J

L

L

L

S

S

T

T

Wpoint filter line search algorithm for large-scale nonlinear programming.

Fig. 12. Optimal solutions: (a

ion was reduced from a value of 0.1679 to 0.0710. A similartudy was done with the “trimmed” model and the benefits ofodel reduction are indicated in Table 4. While both problems

onverged to the same solution, the trimmed model requires onlyquarter of the CPU time as the reduced model, even though

he iteration numbers are similar.In Fig. 12, we plot the optimal trajectories of the three con-

rols and profile of the product quality during the transitionnd a period of time after the transition. The profiles depicthat the product quality is maintained within its specificationsnd the controls achieve a new level and remain constant afterransition.

. Conclusions

We describe the development of a software environmentor dynamic optimization using the simultaneous approach.ere a number of features are added for problem initializa-

ion, model development, moving finite elements and a flexibleser interface. Coupled with automatic discretization featuresnd a powerful NLP solver, IPOPT, this environment demon-trates the effectiveness and reliability of the simultaneouspproach for challenging optimization problems. The result-ng environment, called DynoPC, has a number of links tother packages. First, there is a CAPE-OPEN compliant objector IPOPT to solve dynamic optimization problems. Also, theSO protocol allows interfaces to dynamic process modelseveloped in gPROMS. Finally, interfaced models can also bemproved through automated preprocessing and model reductiontrategies.

To illustrate these developments, we first describe the inter-ace and solution strategy with the help of a small optimal controlroblem. We then consider two challenging dynamic optimiza-ion problems. First, a rigorous reactive batch distillation isolved with moving finite elements, in order to determine thexact bang-bang startup profile. Second, an industrial case studyalidates the interface between gPROMS and DynoPC/IPOPThrough ESO. Here we also simplified the original model tomprove its mathematical properties and formulate a smallerroblem to obtain the optimal solution. With the “trimmed”

odel the CPU time for this model was reduced by 75% from

bout 4,000 to 1,000 CPU seconds. This improvement is espe-ially critical for applications that concentrate on online dynamicptimization of chemical processes.

W

trols and (b) product quality.

cknowledgements

We are grateful to Carl Laird, Andreas Wachter, Wolfgangarquardt, Martin Schlegel and Jitendra Kadam, whose assis-

ance was essential. Special thanks also go to Guido Dunnebiert Bayer AG and Michel Pons at CO-LaN. Finally, financial sup-ort from the EU INCOOP project is gratefully acknowledged.

eferences

iegler, L. T., Cervantes, & Wachter, A. (2002). Advances in simultaneousstrategies for dynamic process optimization. Chemical Engineering Science,57, 575.

ervantes, A. M., & Biegler, L. T. (2000). A stable elemental decomposi-tion for dynamic process optimization. Computational Optimization andApplications, 120, 41–57.

ervantes, & Biegler, L. T. (2001). Optimization strategies for dynamic systems.In C. Floudas, & P. Pardalos (Eds.), Encyclopedia of optimization Vol. 4, (pp.216–227). Kluwer.

uthrell, J. E., & Biegler, L. T. (1987). On the optimization ofdifferential–algebraic process system. AIChE, 33, 1257.

unnebier, G., van Hessem, D., Kadam, J. V., Klatt, K.-U., & Schlegel, M.(2004). Prozessfuehrung und Optimierung von Polymerisationsprozesse.Chemie Ingenieur Technik, 76(6), 703–708.

ockenhovel, T., Biegler, L. T., & Wachter, A. (2003). Dynamic optimization ofthe Tennessee Eastman process using the OptControlCentre. Computers &Chemical Engineering, 27, 1513–1531.

ang, Y.-D., & Biegler, L. T. (2005). “The IPOPT Interface to CAPE-OPEN”,CAPE-OPEN Update Vol. 10, http://www.colan.org/CO%20Update/CO Update 10.html.

ang, Y.-D., Cervantes, A., & Biegler, L. T. (1999). Dynamic optimization of abatch cooling crystallization process. I&EC Research, 38, 1469–1477.

ogsdon, J. S., & Biegler, L. T. (1989). On the accurate solution ofdifferential–algebraic optimization problems. I&EC Research, 28, 1628.

argent, R. W. H., & Westerberg, A. W. (1964). ‘Speed-up’ in chemical engi-neering design. Transactions of the Institution of Chemical Engineers, 42,190–197.

chmid, C., & Biegler, L. T. (1993). Quadratic programming methods forreduced SQP methods. Computers & Chemical Engineering, 18, 817–832.

anartkit, P., & Biegler, L. T. (1995). Stable decomposition for dynamic opti-mization. I&EC Research, 34, 1253.

anartkit, P., & Biegler, L. T. (1997). A nested, simultaneous approach fordynamic optimization problems-II: The outer problem. Computers andChemical Engineering, 21, 1365.

achter, A., & Biegler, L. T. (2006). On the implementation of an interior

Mathematical Programming, 106(1), 25–57.ajge, R., & Reklaitis, G. V. (1998). An optimal campaign structure for mul-

ticomponent batch distillation with reversible reaction. I&EC Research, 37,1910–1916.