31
SQP/SCP-Methods for Nonlinear Programming: Algorithms, Software, and Applications Klaus Schittkowski Dept. of Mathematics, University of Bayreuth, Germany [email protected], http://www.klaus-schittkowski.de Contents: - available software - SQP and SCP methods for nonlinear programming - industrial case studies (ship design, control of chemical reactors, design of satellite antennas, ...) - a large-scale benchmark problem Nonlinear Programming Software Klaus Schittkowski

- alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

SQP/SCP-Methods for Nonlinear Programming:Algorithms, Software, and Applications

Klaus SchittkowskiDept. of Mathematics, University of Bayreuth, [email protected], http://www.klaus-schittkowski.de

Contents:

- available software- SQP and SCP methods for nonlinear programming- industrial case studies (ship design, control of chemical

reactors, design of satellite antennas, ...)- a large-scale benchmark problem

Nonlinear Programming Software Klaus Schittkowski

Page 2: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Available Software

QL - primal-dual method for quadratic programmingNLPQL - SQP-algorithm for smooth constrained nonlinear pro-

gramming (calls QL)DFNLP - Gauss-Newton/quasi-Newton method for constrained

least squares, L1, L∞ and min-max problems (calls

NLPQL)MODFIT - data fitting in explicit functions, Laplace-functions,

steady-state systems, and systems of ODEs and

DAEs (calls DFNLP)PDEFIT - data fitting in systems of one-dimensional PDEs and

PDAEs (calls DFNLP)PCOMP - modelling language with automatic differentiationSCPIP - sequential convex programming method for large-

scale nonlinear programming (Ch. Zillober)

Nonlinear Programming Software Klaus Schittkowski

Page 3: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Available Software (continued)

EASY-FIT - GUI for data fitting in dynamical systems, database

with 1.200 examples (calls MODFIT, PDEFIT,

PCOMP)

Nonlinear Programming Software Klaus Schittkowski

Page 4: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Nonlinear Optimization

Nonlinear Programming Problem (NLP):

min f(x)

gj(x) = 0 , j = 1, . . . ,me

x ∈ Rn : gj(x) ≤ 0 , j = me + 1, . . . ,m

xl ≤ x ≤ xu

Assumptions:

- all model functions are smooth (twice continuously differentiable)- the problem is highly nonlinear and non-convex- the problem may become very large (n >> 100, 000,m >> 100, 000)

Nonlinear Programming Software Klaus Schittkowski

Page 5: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

SQP Methods (Sequential Quadratic Programming)

Design Goal: Fast local convergence speed (nearly quadratic)

• Efficient and robust in case of highly nonlinear, non-convexproblems, accurate solutions

• Standard tool in very many applications

• SQP methods are easily tuned to special formulations, e.g.,

– very many constraints (active set strategy)

– least squares optimization (Gauss-Newton-type)

– systems of nonlinear equations (Newton’s method)

– linearly constrained optimization

– distributed computing

Nonlinear Programming Software Klaus Schittkowski

Page 6: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Horn Radiators for Satellite Communication

Nonlinear Programming Software Klaus Schittkowski

Page 7: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Horn Radiators (continued)

Nonlinear Programming Software Klaus Schittkowski

Page 8: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Horn Radiators (continued)

Goal: Compute interior geometry of corrugated horn, so that agiven far field distribution of the radio frequency is approximated asaccurately as possible (Astrium AG, Hartwanger, S., Wolf 2000)

Physical Background: Maxwell’s equation for circular horn alongconstant diameter, homogeneous, isotropic media, ideal conductivityetc.

1

ρ

∂ρ

(ρ∂Ψ

∂ρ

)+

1

ρ2

∂2Ψ

∂φ2+

∂2Ψ

∂z2+ k2Ψ = 0

for electric (Ψ = E) or magnetic (Ψ = H) field and suitableboundary conditions

Conclusion: A complete orthogonal system of eigenfunctions canbe derived for each wave guide

Nonlinear Programming Software Klaus Schittkowski

Page 9: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Horn Radiators (continued)

Design Parameters:

Nonlinear Programming Software Klaus Schittkowski

Page 10: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Horn Radiators (continued)

Optimization Problem:

p ∈ Rn :

min∑l2

j=1 (bj2(p) − b

j2)

2 + µ b11(p)2

pl ≤ p ≤ pu

(b1(p)

b2(p)

)=

(S�

11(p) S�12(p)

S�21(p) S�

22(p)

)︸ ︷︷ ︸total scattering matrix

(a1

a2

)

a1 - amplitude of mode exciting the horn (first unity vector)a2 - amplitudes of reflected modes at horn aperture (far field)

bj2 - given amplitudes

µ - weight for return loss

Nonlinear Programming Software Klaus Schittkowski

Page 11: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Horn Radiators (continued)

Numerical Complexity (example):- 70 eigenmodes- 140 × 140 complex entries for two scattering matrices

(E, H or U , I, respectively)- evaluation of double integrals and Bessel functions for each coeff.- 40 slots and ridges, i.e., of 2 · 40 matrices of size 2 · 140 × 140- intermediate matrix manipulations, inverse decompositions

IT F SCV NA I ALPHA DELTA KT-----------------------------------------------------------------1 .16795478D+01 .00D+00 37 0 .00D+00 .00D+00 .37D+002 .14476536D+01 .57D+00 37 1 .10D+01 .00D+00 .31D+013 .11909891D+01 .68D+00 37 2 .10D+00 .00D+00 .43D+01.. ..... .... .. . ....... ........ .....49 .17397940D-02 .40D-02 37 1 .10D+01 .00D+00 .44D-0450 .17219966D-02 .35D-03 37 1 .10D+01 .00D+00 .22D-0551 .17225078D-02 .53D-06 37 1 .10D+01 .00D+00 .13D-07

Nonlinear Programming Software Klaus Schittkowski

Page 12: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Design of SAW (Surface Acoustic Wave) Filters

Goal: Guarantee design goals of electronic filters (Epcos AG,

Bunner, S., van de Braak 2004)

Wave Equation: (∆ − 1

c2

(∂2

∂t2

))φ(x, y) = 0

Nonlinear Programming Software Klaus Schittkowski

Page 13: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Design of SAW (Surface Acoustic Wave) Filters

P-Model: Evaluate cascading matrices, for example

b1

b2i

= P

a1

a2u

,P =

0 1 E

1 0 −E∗−2E 2E∗ 2|E|2 + i(−H{2|E|2} + ωC)

H - Hilbert transformationC - static capacity between two fingersE - excitation defined by

E = −i 0.5√

ωWK · ∫tr

σe(x) exp−ik|x| dx

ω - frequencyW - aperture of IDTK - material constantσe - electric load distribution, k = ω

c

Nonlinear Programming Software Klaus Schittkowski

Page 14: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Design of SAW Filters (continued)

Optimization Problem: Apply NLPQL to

max mini:fuR2

≤fi≤foR2

Ti(x)

Ti(x) ≤ TR1, fu

R1≤ fi ≤ fo

R1x ∈ R

n : Ti(x) ≥ TR2, fu

R2≤ fi ≤ fo

R2Ti(x) ≤ TR3

, fuR3

≤ fi ≤ foR3

xl ≤ x ≤ xu

Nonlinear Programming Software Klaus Schittkowski

Page 15: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Control of a Tubular Reactor

Nonlinear Programming Software Klaus Schittkowski

Page 16: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Control of a Tubular Reactor (continued)

Goal: Yield optimization of large chemical reactors (BASF AG,

Birk, Liepelt, S., Vogel 1999)

1. Steady-state, i.e. no time dependencies

2. Reaction equations modelled by standard simulation package

(SPEEDUP)

3. On-line adaption of reactor control data interactively in case of

changes of prices, demands, production facilities, quality, etc.(about 5,000 ordinary and algebraic differential equations)

4. Evaluation of gradients by numerical differentiation

5. Iterative execution of NLPQL with warm starts

Nonlinear Programming Software Klaus Schittkowski

Page 17: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Control of a Tubular Reactor (continued)

1. CH4 → 12C2H2 + 3

2H2

2. CH4 + O2 → CO + H2O + H2

3. CO + 12O2 → CO2

4. C2H2 → 2C + H2

5. H2 + 12O2 → H2O

6. mC + n2H2 → CmHn

r1(z) = k1e− E1

RT (z)Cα1

1

r2(z) = k2e− E2

RT (z)C1Cα2

2

r3(z) = k3e− E3

RT (z)C6C0.52

r4(z) = k4e− E4

RT (z)Cα2

3

r5(z) = k5e− E5

RT (z)C5C0.52

∂∂z

C1(z) = (−r1(z) − r2(z))/v(z) , C1(0) = C01

∂∂z

C2(z) = (−r2(z) − 0.5r3(z) − 0.5r5(z))/v(z) , C2(0) = C02

∂∂z

C3(z) = (0.5r1(z) − r4(z))/v(z) , C3(0) = 0∂∂z

C4(z) = r3(z)/v(z) , C4(0) = 0∂∂z

C5(z) = (1.5r1(z) + r2(z) + r4(z) − r5(z))/v(z) , C5(0) = 0∂∂z

C7(z) = (r2(z) + r5(z))/v(z) , C7(0) = 0∂∂z

C8(z) = 2(1 − ε)r4(z)/v(z) , C8(0) = 0

Nonlinear Programming Software Klaus Schittkowski

Page 18: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Control of a Tubular Reactor (continued)

Total mass stream: m = mCH4+ mO2

Speed: v(z) = m/(ρ(z)A)

Energy balance: Tz(z) = 1/(ρ(z)v(z)cp(z))∑5

i=1 ri(z)∆Hi

Density: ρ(z) =∑8

j=1 Cj(z)Mj

Heat capacity: cp(z) =

∑8j=1 cpj(z)MjCj(z)∑8

j=1 MjCj(z)

cpj(z) = bj + cjT (z) + djT (z)2

Mass stream: mj(z) = mCj(z)Mj/∑j

i=1 Ci(z)Mi

Nonlinear Programming Software Klaus Schittkowski

Page 19: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

SCP Methods (Sequential Convex Programming)

Design Goal: Convex 1st-order approximation of problem functions

Idea: Insert inverse variables (with or without asymptotes)

depending on sign of partial derivative and linearize

fk(x) = αk0 +

∑+i

βki,0

Ui−xi− ∑−

i

βki,0

xi−Li

gkj (x) = αk

j +∑+

i

βki,j

Ui−xi− ∑−

i

βki,j

xi−Li, j = 1, . . . ,m

∑+i : summation over all indices with positive partial derivatives

(∑−

i vice versa)

Important: Only possible for nonlinear inequality constraints,

equality constraints linearized!

Nonlinear Programming Software Klaus Schittkowski

Page 20: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

SCP Methods (continued)

Justification: Let f(x) and xk > L given with f ′(xk) < 0 and

fk(x) = αk − βk

x − L

for x > L. From f(xk) = fk(xk) and f ′(xk) = f ′k(xk) we get

fk(x) = f(xk) + f ′(xk)(xk − L) − f ′(xk)(xk − L)2

x − L

Conclusion: fk(x) is convex for all x > L

Nonlinear Programming Software Klaus Schittkowski

Page 21: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Approximation by Moving Asymptote

L xk

g(x)g (x)k

x

Nonlinear Programming Software Klaus Schittkowski

Page 22: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

SCP Methods (continued)

Convex Separable Subproblem:

min fk(x)

gkj (x) = 0 , j = 1, . . . ,me

x ∈ Rn : gk

j (x) ≤ 0 , j = me + 1, . . . ,m

Li ≤ xi ≤ Ui , i = 1, . . . , n

Motivation: Mechanical engineering, i.e. statically determinated

structures are linear in reciprocal variables (Fleury 1989, Svanberg

1987, Zillober 1994)

Nonlinear Programming Software Klaus Schittkowski

Page 23: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Example (2-bar-truss)

Design Variables: xi = Eai/li with elasticity modulus E, crosssectional area ai and length li, i = 1, 2

Displacement:

h(x) = |p|(cosψ(s21/x2 + s2

2/x1) − sinψ(s1c1/x2 + s2c2/x1))/γ

Nonlinear Programming Software Klaus Schittkowski

Page 24: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

SCP Methods (continued)

Subproblem Solution:

• Regularization of objective function leads to strictly convex,

separable, often very large NLP (diagonal and positive definite

Hessian)

• Numerical solution by interior point method possible with n × n

or m × m systems of equations

• Exploiting sparsity patterns in systems of linear equations

(Zillober 2002)

Nonlinear Programming Software Klaus Schittkowski

Page 25: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Ship Design

Goal: Minimize the weight of a ship structure (cruise ship Radiance

of the Seas, Meyer Werft)

Nonlinear Programming Software Klaus Schittkowski

Page 26: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Ship Design (continued)

Data and FE-Discretization:length overall - 293,20 m breadth moulded - 32,20 mnumber of decks - 15 draught - 8,15 mtonnage - 90,090 BRZ deadweight - 8,900 tspeed - Over 24 kn total power output - 78.600 HPpassenger capacity - 2,100 crew - 858shell elements - 32,946 beam elements - 33,637load cases - 2 (sagging, hogging) design variables - 415stress constraints - 4,980 (shell thickness)

Nonlinear Programming Software Klaus Schittkowski

Page 27: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Topology Optimization

Power Law Approach:

min uTf

x ∈ Rn, u ∈ R

m : V (x) ≤ pV0

K(x)u = f

0 < x ≤ 1

x - relative densitiesu - displacementsK(x) - stiffness matrixf - external loadsV (x) - volume

K(x) =∑n

i=1 x3i k0

i

Conclusion: Hessian of objective function is dense!

Nonlinear Programming Software Klaus Schittkowski

Page 28: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Topology Optimization (continued)

Test Case: Half beam with varying volume restrictions and filter

radii

Nonlinear Programming Software Klaus Schittkowski

Page 29: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Case Study: Topology Optimization (continued)

Results: Half beam

nx ny n nit f(x) ‖∇xL(x, u)‖ rf600 400 240,000 22 52.63 1.3E-3 8600 400 240,000 26 54.25 6.5E-4 0

1,050 700 735,000 38 54.39 4.6E-4 101,260 840 1,058,400 43 56.55 1.3E-5 0

nx, ny - number of elements in x- and y-directionn - number of optimization variablesnit - number of iterationsf(x) - final objective function value‖∇xL(x, u)‖ - norm of final gradient of Lagrangian functionrf - filter radius

Hardware: SUN Fire V880 (8 processors, 750 MHz)

Nonlinear Programming Software Klaus Schittkowski

Page 30: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Conclusions

State-of-the-Art:

• Constrained and smooth optimization problems can be solved

routinely by SQP and, in special situations, even more efficiently

by SCP methods.

• Very large scale optimization problems with nonlinear constraints

can be solved by SCP methods.

• Optimization became an integrated design tool especially in

mechanical structural optimization.

Nonlinear Programming Software Klaus Schittkowski

Page 31: - alarge-scalebenchmarkproblem reactors ... · Algorithms, Software, and Applications KlausSchittkowski ... Nonlinear Optimization Nonlinear Programming Problem ... 000) NonlinearProgrammingSoftware

Conclusions (continued)

Future Challenges:

1. efficient methods for certain classes of global optimization

problems

2. efficient methods for non-convex mixed-integer nonlinear

optimization

3. integrated design by C++ toolbox

Nonlinear Programming Software Klaus Schittkowski