Large-Scale Nonlinear Optimization with Inexact Step Computations

Similar documents
Inexact Newton Methods and Nonlinear Constrained Optimization

An Inexact Newton Method for Nonlinear Constrained Optimization

An Inexact Newton Method for Optimization

PDE-Constrained and Nonsmooth Optimization

Recent Adaptive Methods for Nonlinear Optimization

Infeasibility Detection and an Inexact Active-Set Method for Large-Scale Nonlinear Optimization

An Inexact Sequential Quadratic Optimization Method for Nonlinear Optimization

On the Implementation of an Interior-Point Algorithm for Nonlinear Optimization with Inexact Step Computations

1. Introduction. We consider nonlinear optimization problems of the form. f(x) ce (x) = 0 c I (x) 0,

A Note on the Implementation of an Interior-Point Algorithm for Nonlinear Optimization with Inexact Step Computations

Constrained Nonlinear Optimization Algorithms

5 Handling Constraints

Numerical Methods for PDE-Constrained Optimization

Trust-Region SQP Methods with Inexact Linear System Solves for Large-Scale Optimization

A New Penalty-SQP Method

Hot-Starting NLP Solvers

An Inexact Newton Method for Nonconvex Equality Constrained Optimization

A note on the implementation of an interior-point algorithm for nonlinear optimization with inexact step computations

A Trust Funnel Algorithm for Nonconvex Equality Constrained Optimization with O(ɛ 3/2 ) Complexity


MS&E 318 (CME 338) Large-Scale Numerical Optimization

Part 5: Penalty and augmented Lagrangian methods for equality constrained optimization. Nick Gould (RAL)

A Penalty-Interior-Point Algorithm for Nonlinear Constrained Optimization

What s New in Active-Set Methods for Nonlinear Optimization?

Algorithms for Constrained Optimization

A SHIFTED PRIMAL-DUAL PENALTY-BARRIER METHOD FOR NONLINEAR OPTIMIZATION

Lecture 11 and 12: Penalty methods and augmented Lagrangian methods for nonlinear programming

Quiz Discussion. IE417: Nonlinear Programming: Lecture 12. Motivation. Why do we care? Jeff Linderoth. 16th March 2006

Survey of NLP Algorithms. L. T. Biegler Chemical Engineering Department Carnegie Mellon University Pittsburgh, PA

1. Introduction. In this paper we discuss an algorithm for equality constrained optimization problems of the form. f(x) s.t.

minimize x subject to (x 2)(x 4) u,

Numerical Methods I Solving Nonlinear Equations

A Trust-Funnel Algorithm for Nonlinear Programming

Nonlinear Optimization Solvers

2.3 Linear Programming

A Penalty-Interior-Point Algorithm for Nonlinear Constrained Optimization

A Primal-Dual Augmented Lagrangian Penalty-Interior-Point Filter Line Search Algorithm

Interior Methods for Mathematical Programs with Complementarity Constraints

A Line search Multigrid Method for Large-Scale Nonlinear Optimization

1 Computing with constraints

Written Examination

Bindel, Spring 2017 Numerical Analysis (CS 4220) Notes for So far, we have considered unconstrained optimization problems.

Feasible Interior Methods Using Slacks for Nonlinear Optimization

A null-space primal-dual interior-point algorithm for nonlinear optimization with nice convergence properties

An Interior Algorithm for Nonlinear Optimization That Combines Line Search and Trust Region Steps

Algorithms for constrained local optimization

MS&E 318 (CME 338) Large-Scale Numerical Optimization

AM 205: lecture 19. Last time: Conditions for optimality Today: Newton s method for optimization, survey of optimization methods

AN INTERIOR-POINT METHOD FOR NONLINEAR OPTIMIZATION PROBLEMS WITH LOCATABLE AND SEPARABLE NONSMOOTHNESS

Lecture 13: Constrained optimization

Some Recent Advances in Mixed-Integer Nonlinear Programming

Optimization. Escuela de Ingeniería Informática de Oviedo. (Dpto. de Matemáticas-UniOvi) Numerical Computation Optimization 1 / 30

Nonmonotone Trust Region Methods for Nonlinear Equality Constrained Optimization without a Penalty Function

A trust region method based on interior point techniques for nonlinear programming

arxiv: v1 [math.na] 8 Jun 2018

Interior Point Methods. We ll discuss linear programming first, followed by three nonlinear problems. Algorithms for Linear Programming Problems

A PROJECTED HESSIAN GAUSS-NEWTON ALGORITHM FOR SOLVING SYSTEMS OF NONLINEAR EQUATIONS AND INEQUALITIES

Algorithms for Nonsmooth Optimization

ISM206 Lecture Optimization of Nonlinear Objective with Linear Constraints

A SHIFTED PRIMAL-DUAL INTERIOR METHOD FOR NONLINEAR OPTIMIZATION

IPAM Summer School Optimization methods for machine learning. Jorge Nocedal

INTERIOR-POINT METHODS FOR NONCONVEX NONLINEAR PROGRAMMING: CONVERGENCE ANALYSIS AND COMPUTATIONAL PERFORMANCE

Interior-Point Methods as Inexact Newton Methods. Silvia Bonettini Università di Modena e Reggio Emilia Italy

10 Numerical methods for constrained problems

IP-PCG An interior point algorithm for nonlinear constrained optimization

4TE3/6TE3. Algorithms for. Continuous Optimization

AN AUGMENTED LAGRANGIAN AFFINE SCALING METHOD FOR NONLINEAR PROGRAMMING

CS 542G: Robustifying Newton, Constraints, Nonlinear Least Squares

POWER SYSTEMS in general are currently operating

A GLOBALLY CONVERGENT STABILIZED SQP METHOD

Proximal Newton Method. Ryan Tibshirani Convex Optimization /36-725

A Regularized Interior-Point Method for Constrained Nonlinear Least Squares

AM 205: lecture 19. Last time: Conditions for optimality, Newton s method for optimization Today: survey of optimization methods

Stochastic Optimization Algorithms Beyond SG

An Introduction to Algebraic Multigrid (AMG) Algorithms Derrick Cerwinsky and Craig C. Douglas 1/84

Lectures 9 and 10: Constrained optimization problems and their optimality conditions

Suppose that the approximate solutions of Eq. (1) satisfy the condition (3). Then (1) if η = 0 in the algorithm Trust Region, then lim inf.

Implicitly and Explicitly Constrained Optimization Problems for Training of Recurrent Neural Networks

A DECOMPOSITION PROCEDURE BASED ON APPROXIMATE NEWTON DIRECTIONS

CONVERGENCE ANALYSIS OF AN INTERIOR-POINT METHOD FOR NONCONVEX NONLINEAR PROGRAMMING

LINEAR AND NONLINEAR PROGRAMMING

Optimization and Root Finding. Kurt Hornik

arxiv: v2 [math.oc] 11 Jan 2018

Higher-Order Methods

Lecture 3. Optimization Problems and Iterative Algorithms

Preprint ANL/MCS-P , Dec 2002 (Revised Nov 2003, Mar 2004) Mathematics and Computer Science Division Argonne National Laboratory

Multidisciplinary System Design Optimization (MSDO)

IBM Research Report. Line Search Filter Methods for Nonlinear Programming: Motivation and Global Convergence

Numerical Methods for Large-Scale Nonlinear Systems

A globally and quadratically convergent primal dual augmented Lagrangian algorithm for equality constrained optimization

Derivative-Based Numerical Method for Penalty-Barrier Nonlinear Programming

Infeasibility Detection in Nonlinear Optimization

REPORTS IN INFORMATICS

j=1 r 1 x 1 x n. r m r j (x) r j r j (x) r j (x). r j x k

LAGRANGIAN TRANSFORMATION IN CONVEX OPTIMIZATION

Chapter 3 Numerical Methods

A GLOBALLY CONVERGENT STABILIZED SQP METHOD: SUPERLINEAR CONVERGENCE

Coordinate descent. Geoff Gordon & Ryan Tibshirani Optimization /

ALADIN An Algorithm for Distributed Non-Convex Optimization and Control

Introduction. New Nonsmooth Trust Region Method for Unconstraint Locally Lipschitz Optimization Problems

Transcription:

Large-Scale Nonlinear Optimization with Inexact Step Computations Andreas Wächter IBM T.J. Watson Research Center Yorktown Heights, New York andreasw@us.ibm.com IPAM Workshop on Numerical Methods for Continuous Optimization October 14, 2010 (joint with Frank Curtis, Johannes Huber, and Olaf Schenk) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 1 / 41

Nonlinear Optimization min x R n f (x) s.t. c(x) = 0 d(x) 0 x f (x) : R n R c(x) : R n R m d(x) : R n R p Variables Objective function Equality constraints Inequality constraints Functions f (x), c(x), d(x) are smooth (C 2 ); sparse derivatives Want to find local solution Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 2 / 41

Nonlinear Optimization min x R n f (x) s.t. c(x) = 0 d(x) 0 x f (x) : R n R c(x) : R n R m d(x) : R n R p Variables Objective function Equality constraints Inequality constraints Functions f (x), c(x), d(x) are smooth (C 2 ); sparse derivatives Want to find local solution Barrier method: p min f (x) µ ln(s (i) ) x R n,s R p i=1 s.t. c(x) = 0 d(x) + s = 0 Solve sequence of barrier problems In following, concentrate on NLPs only with equality constraints (fixed µ) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 2 / 41

Motivation Example PDE constrained optimization problem: 3D inverse problem [Haber et al.] All-at-once approach Finite difference discretization on regular grid N = 32 in each dimension Size of NLP: 229,376 variables 196,608 equality and 65,536 inequality constraints Using Ipopt with Pardiso linear solver (direct factorization) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 3 / 41

Motivation Example PDE constrained optimization problem: 3D inverse problem [Haber et al.] All-at-once approach Finite difference discretization on regular grid N = 32 in each dimension Size of NLP: 229,376 variables 196,608 equality and 65,536 inequality constraints Using Ipopt with Pardiso linear solver (direct factorization) About 15 hours for first iteration! Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 3 / 41

Motivation Example PDE constrained optimization problem: 3D inverse problem [Haber et al.] All-at-once approach Finite difference discretization on regular grid N = 32 in each dimension Size of NLP: 229,376 variables 196,608 equality and 65,536 inequality constraints Using Ipopt with Pardiso linear solver (direct factorization) About 15 hours for first iteration! # nonzeros in sparse step computation matrix: 6,329,867 # nonzeros in factor: 2,503,219,440 Fill-in factor: 395 (!) Want to be able to use iterative linear solver Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 3 / 41

Motivation Example PDE constrained optimization problem: 3D inverse problem [Haber et al.] All-at-once approach Finite difference discretization on regular grid N = 32 in each dimension Size of NLP: 229,376 variables 196,608 equality and 65,536 inequality constraints Using Ipopt with Pardiso linear solver (direct factorization) About 15 hours for first iteration! # nonzeros in sparse step computation matrix: 6,329,867 # nonzeros in factor: 2,503,219,440 Fill-in factor: 395 (!) Want to be able to use iterative linear solver Looking for other applications with large fill-in (ideas?) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 3 / 41

Outline Newton s method for F(x) = 0 with inexact step computation NLP algorithm with inexact step computation Global convergence result Numerical experiments (3D PDE problems) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 4 / 41

Newton s Method min x R n NLP f (x) s.t. c(x) = 0 Optimality Conditions f (x) + c(x)y = 0 c(x) = 0 Apply Newton s Method [ ]( ) ( ) Wk c(x k ) xk f (xk ) + c(x c(x k ) T = k )y k 0 y k c(x k ) W k = xx L(x k, y k ) Hessian of Lagrangian (or approximation) L(x, y) = f (x) + y T c(x) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 5 / 41

Newton s Method min x R n NLP f (x) s.t. c(x) = 0 Optimality Conditions f (x) + c(x)y = 0 c(x) = 0 Apply Newton s Method [ ]( ) ( ) Wk c(x k ) xk f (xk ) + c(x c(x k ) T = k )y k 0 y k c(x k ) W k = xx L(x k, y k ) Hessian of Lagrangian (or approximation) L(x, y) = f (x) + y T c(x) Simple approach: Consider as root finding problem F(z) = 0 (with z = (x, y)) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 5 / 41

Basic Line Search Algorithm for F(z) = 0 Given: Starting point z 0 ; set k 0 1 Solve linear system to compute search direction F(z k ) T z k = F(z k ) 2 Perform backtracking line search to determine step sizeαk (0, 1] satisfying Armijo condition (η (0, 1)): φ(z k +α k z k ) φ(z k ) +ηα k Dφ(z k ; z k ) Here: Merit functionφ(z) = F(z) 2 2 3 Update iterates zk+1 = z k +α k z k 4 Increase k k + 1 and go back to Step 1. Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 6 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k = 2 F(z k ) 2 2< 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k = 2 F(z k ) 2 2< 0 Proof outline: 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k = 2 F(z k ) 2 2< 0 Proof outline: 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) 2 Therefore step sizeαk ᾱ>0 bounded away from 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k = 2 F(z k ) 2 2< 0 Proof outline: 3 Then 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) 2 Therefore step sizeαk ᾱ>0 bounded away from 0 k φ(z k+1) φ(z 0 ) = (φ(z i+1 ) φ(z i )) i=0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k = 2 F(z k ) 2 2< 0 Proof outline: 3 Then 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) 2 Therefore step sizeαk ᾱ>0 bounded away from 0 k φ(z k+1) φ(z 0 ) = (φ(z i+1 ) φ(z i )) k ηα i Dφ(z i ; z i ) i=0 i=0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k = 2 F(z k ) 2 2< 0 Proof outline: 3 Then 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) 2 Therefore step sizeαk ᾱ>0 bounded away from 0 k φ(z k+1) φ(z 0 ) = (φ(z i+1 ) φ(z i )) k ηα i Dφ(z i ; z i ) i=0 i=0 2ηᾱ k F(z i ) 2 2 i=0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k = 2 F(z k ) 2 2< 0 Proof outline: 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) 2 Therefore step sizeαk ᾱ>0 bounded away from 0 3 Then k L φ(z k+1) φ(z 0 ) = (φ(z i+1 ) φ(z i )) k ηα i Dφ(z i ; z i ) i=0 i=0 2ηᾱ k F(z i ) 2 2 i=0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Step computation F(z k ) T z k = F(z k ) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k = 2 F(z k ) 2 2< 0 Proof outline: 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) 2 Therefore step sizeαk ᾱ>0 bounded away from 0 3 Then k L φ(z k+1) φ(z 0 ) = (φ(z i+1 ) φ(z i )) k ηα i Dφ(z i ; z i ) i=0 4 Therefore: limk F(z k ) = 0 i=0 2ηᾱ k F(z i ) 2 2 i=0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Inexact step computation [Dembo, Eisenstat, Steihaug (1982)] F(z k ) T z k = F(z k ) + r k ( r k κ F(z k ) 2, κ (0, 1)) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k 2 F(z k ) 2 2 + 2F(z k ) T r k Proof outline: 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) 2 Therefore step sizeαk ᾱ>0 bounded away from 0 3 Then k L φ(z k+1) φ(z 0 ) = (φ(z i+1 ) φ(z i )) k ηα i Dφ(z i ; z i ) i=0 4 Therefore: limk F(z k ) = 0 i=0 2ηᾱ k F(z i ) 2 2 i=0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Simple Global Convergence Proof Inexact step computation [Dembo, Eisenstat, Steihaug (1982)] F(z k ) T z k = F(z k ) + r k ( r k κ F(z k ) 2, κ (0, 1)) Merit functionφ(z) = F(z) 2 2 Dφ(z k ; z k ) = 2F(z k ) T F(z k ) T z k 2(1 κ) F(z k ) 2 2 Proof outline: 1 Show zk are bounded (e.g., if F(z k ) and F(z k ) 1 bounded) 2 Therefore step sizeαk ᾱ>0 bounded away from 0 3 Then k L φ(z k+1) φ(z 0 ) = (φ(z i+1 ) φ(z i )) k ηα i Dφ(z i ; z i ) i=0 4 Therefore: limk F(z k ) = 0 i=0 2ηᾱ k (1 κ) F(z i ) 2 2 i=0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 7 / 41

Discussion Root finding algorithm F(z) = 0 can easily incorporate inexactness of linear solver Natural consistency between step computation and merit function Can be used for solving PDEs Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 8 / 41

Discussion Root finding algorithm F(z) = 0 can easily incorporate inexactness of linear solver Natural consistency between step computation and merit function Can be used for solving PDEs Requires F(z k ) 1 is uniformly bounded F(z k ) = Violated, e.g, if c(x k ) loses rank [ Wk ] c(x k ) c(x k ) T 0 In barrier approach, this also corresponds to violation of LICQ Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 8 / 41

Discussion Root finding algorithm F(z) = 0 can easily incorporate inexactness of linear solver Natural consistency between step computation and merit function Can be used for solving PDEs Requires F(z k ) 1 is uniformly bounded F(z k ) = Violated, e.g, if c(x k ) loses rank [ Wk ] c(x k ) c(x k ) T 0 In barrier approach, this also corresponds to violation of LICQ Maximizers and stationary points also satisfy F(z) = 0 Would like to encourage convergence to minimizers Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 8 / 41

Merit Function For Optimization Classical penalty function:φ ν (x) = f (x) +ν c(x) For ν sufficiently large: x local solution of NLP x local minimizer ofφ ν (x) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 9 / 41

Merit Function For Optimization Classical penalty function:φ ν (x) = f (x) +ν c(x) For ν sufficiently large: x local solution of NLP Algorithm: x local minimizer ofφ ν (x) 1 Solve linear system to compute search direction [ ]( ) ( ) Wk c(x k ) xk f (xk ) + c(x c(x k ) T = k )y k 0 y k c(x k ) 2 Perform backtracking line search to determine step sizeαk with φ(x k +α k x k ) φ(x k )+ηα k Dφ(x k ; x k ) [Need Dφ(x k ; x k )<0!] 3 Update iterates (xk+1, y k+1 ) = (x k, y k ) +α k ( x k, y k ) 4 Increase k k + 1 and go back to Step 1. Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 9 / 41

Ensuring Descent If c(x k ) T x k + c(x k ) = 0 then Dφ νk (x k ; x k ) = f (x k ) T x k ν k c(x k ) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 10 / 41

Ensuring Descent If c(x k ) T x k + c(x k ) = 0 then Dφ νk (x k ; x k ) = f (x k ) T x k ν k c(x k ) To guarantee Dφ νk (x k ; x k )<0: Before line search, possibly increase ν Careful: Need to avoidν! Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 10 / 41

Ensuring Descent If c(x k ) T x k + c(x k ) = 0 then Dφ νk (x k ; x k ) = f (x k ) T x k ν k c(x k ) To guarantee Dφ νk (x k ; x k )<0: Before line search, possibly increase ν Careful: Need to avoidν! One option: Convexify local model [ ]( ) ( ) Wk +δi c(x k ) xk f (xk ) + c(x c(x k ) T = k )y k 0 y k c(x k ) Make sure that v T (W k +δi )v> 0 for all v with c(x k ) T v = 0 (δ 0) Can be verified by looking at inertia (requires factorization) E.g., in Ipopt : Chooseδ 0 so that inertia is as desired Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 10 / 41

Simple Convergence Proof Show first (based on strongish assumptions): Steps x k are bounded Step sizeα k ᾱ>0 bounded away from 0 ν k = ν for large k Dφ ν (x k ; x k ) θ OptCond k (θ>0) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 11 / 41

Simple Convergence Proof Show first (based on strongish assumptions): Steps x k are bounded Step sizeα k ᾱ>0 bounded away from 0 ν k = ν for large k Dφ ν (x k ; x k ) θ OptCond k (θ>0) Then, as before, using Armijo condition: L φ ν (x k+1 ) φ ν (x 0 ) k = (φ ν (x i+1 ) φ ν (x i )) i=0 k ηα i Dφ ν (x i ; x i ) k ηᾱθ OptCont i i=0 i=0 Therefore: lim k OptCont k = 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 11 / 41

Discussion of Convergence Required for this convergence proof: Dφνk (x k ; x k )<0 νk = ν for large k Steps xk are bounded Step sizeαk ᾱ>0 bounded away from 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 12 / 41

Discussion of Convergence Required for this convergence proof: Dφνk (x k ; x k )<0 νk = ν for large k Steps xk are bounded Step sizeαk ᾱ>0 bounded away from 0 Standard algorithm/proof fails if Inertia cannot be computed iterative linear solver Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 12 / 41

Discussion of Convergence Required for this convergence proof: Dφνk (x k ; x k )<0 νk = ν for large k Steps xk are bounded Step sizeαk ᾱ>0 bounded away from 0 Standard algorithm/proof fails if Inertia cannot be computed iterative linear solver Step does not satisfy linear system exactly iterative linear solver Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 12 / 41

Discussion of Convergence Required for this convergence proof: Dφνk (x k ; x k )<0 νk = ν for large k Steps xk are bounded Step sizeαk ᾱ>0 bounded away from 0 Standard algorithm/proof fails if Inertia cannot be computed iterative linear solver Step does not satisfy linear system exactly iterative linear solver Constraint gradients become linearly dependent strong assumption Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 12 / 41

Discussion of Convergence Required for this convergence proof: Dφνk (x k ; x k )<0 νk = ν for large k Steps xk are bounded Step sizeαk ᾱ>0 bounded away from 0 Standard algorithm/proof fails if Inertia cannot be computed iterative linear solver Step does not satisfy linear system exactly iterative linear solver Constraint gradients become linearly dependent strong assumption For barrier methods: The fraction-to-the-boundary rule leads toα k 0 fundamental problem for line-search barrier methods [W., Biegler, 2000] Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 12 / 41

Goal Devise an algorithm that can work with an iterative linear solver can deal with rank-deficient constraint Jacobian overcomes convergence problems of line-search barrier methods Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 13 / 41

Goal Devise an algorithm that can work with an iterative linear solver can deal with rank-deficient constraint Jacobian overcomes convergence problems of line-search barrier methods Main ingredients: Step decomposition helps to bound step (no need to assume full rank of c(xk )) handle nonconvexity Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 13 / 41

Goal Devise an algorithm that can work with an iterative linear solver can deal with rank-deficient constraint Jacobian overcomes convergence problems of line-search barrier methods Main ingredients: Step decomposition helps to bound step (no need to assume full rank of c(xk )) handle nonconvexity Termination test of linear solver based on model of merit function consistency between inexact solution and merit function does not ignore optimization nature of problem Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 13 / 41

Useful Equivalence [ W k c(x k ) c(x k ) T 0 ]( ) ( ) xk f (xk ) + c(x = k )y k y k c(x k ) 1 min 2 xt k W k x k + f (x k ) T x k s.t. c(x k ) T x k + c(x k ) = 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 14 / 41

Step Decomposition min 1 2 xt k W k x k + f (x k ) T x k s.t. c(x k ) T x k + c(x k ) = 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 15 / 41

Step Decomposition min 1 2 xt k W k x k + f (x k ) T x k s.t. c(x k ) T x k + c(x k ) = 0 x k = n k + t k Normal step nk c(x k ) T n k + c(x k ) = 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 15 / 41

Step Decomposition min 1 2 xt k W k x k + f (x k ) T x k s.t. c(x k ) T x k + c(x k ) = 0 x k = n k + t k Normal step nk Tangential step tk 1 ( T min t 2 tt W k t + Wk T n k + f (x k )) t s.t. c(x k ) T t = 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 15 / 41

Inexact Steps (Normal Component) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 16 / 41

Inexact Steps (Normal Component) Normal component c(x k ) T n k + c(x k ) = 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 16 / 41

Inexact Steps (Normal Component) Normal component min n c(x k ) T n + c(x k ) 2 2 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 16 / 41

Inexact Steps (Normal Component) Normal component min n c(x k ) T n + c(x k ) 2 2 s.t. n 2 ω c(x k )c(x k ) 2 (ω> 0 fixed, usually large) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 16 / 41

Inexact Steps (Normal Component) min n c(x k ) T n + c(x k ) 2 2 s.t. n 2 ω c(x k )c(x k ) 2 Trust-region subproblem Controls size of normal component Trust region inactive ifω [σmin ( c(x k ))] 1 c(xk )c(x k ) goes to zero if x k converges to minimizer of c(x) 2 2 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 17 / 41

Inexact Steps (Normal Component) min n c(x k ) T n + c(x k ) 2 2 s.t. n 2 ω c(x k )c(x k ) 2 Trust-region subproblem Controls size of normal component Trust region inactive ifω [σmin ( c(x k ))] 1 c(xk )c(x k ) goes to zero if x k converges to minimizer of c(x) 2 2 Inexact: Make at least as much progress as steepest descent step Cauchy step n C Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 17 / 41

Inexact Steps (Normal Component) min n c(x k ) T n + c(x k ) 2 2 s.t. n 2 ω c(x k )c(x k ) 2 Trust-region subproblem Controls size of normal component Trust region inactive ifω [σmin ( c(x k ))] 1 c(xk )c(x k ) goes to zero if x k converges to minimizer of c(x) 2 2 Inexact: Make at least as much progress as steepest descent step Cauchy step n C In practice: [ ]( ) ( ) I c(x k ) δ 0 Shortest norm solution: c(x k ) T 0 n N = c(x k ) (solve only approximately) Choose combination of n C and n N satisfying trust region giving best objective Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 17 / 41

Inexact Steps (Tangential Component) Tangential component 1 ( T min t 2 tt W k t + Wk T n k + f (x k )) t s.t. c(x k ) T t = 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 18 / 41

Inexact Steps (Tangential Component) Tangential component [ ]( ) ( ) W k c(x k ) tk f (xk ) + c(x c(x k ) T = k )y k + W k n k 0 y k 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 18 / 41

Inexact Tangential Component [ ]( ) ( ) W k c(x k ) tk f (xk ) + c(x c(x k ) T = k )y k + W k n k 0 y k 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 19 / 41

Inexact Tangential Component [ ]( ) ( ) W k c(x k ) tk f (xk ) + c(x c(x k ) T = k )y k + W k n k 0 y k 0 Rewrite using x k = n k + t k Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 19 / 41

Inexact Tangential Component [ ]( ) ( ) W k c(x k ) xk f (xk ) + c(x c(x k ) T = k )y k 0 y k c(x k ) T n k Rewrite using x k = n k + t k Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 19 / 41

Inexact Tangential Component [ ) ( ) ( ) W k c(x k ) ]( x k f (xk ) + c(x c(x k ) T = k )y k ρ 0 y k c(x k ) T + k n k r k Rewrite using x k = n k + t k ( x k current inexact solution) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 19 / 41

Inexact Tangential Component [ ) ( ) ( ) W k c(x k ) ]( x k f (xk ) + c(x c(x k ) T = k )y k ρ 0 y k c(x k ) T + k n k r k Rewrite using x k = n k + t k ( x k current inexact solution) Require: (simplified) 1 Residual ( ) f (xk ) + c(x ρ k κ k )y k c(x k ) T κ (0, 1) n k Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 19 / 41

Inexact Tangential Component [ ) ( ) ( ) W k c(x k ) ]( x k f (xk ) + c(x c(x k ) T = k )y k ρ 0 y k c(x k ) T + k n k r k Rewrite using x k = n k + t k ( x k current inexact solution) Require: (simplified) 1 Residual ( ) f (xk ) + c(x ρ k κ k )y k c(x k ) T κ (0, 1) n k 2 Tangential component condition: Satisfy at least one of T t k Wk t k θ t k 2 θ>0 t k ψ n k ψ> 0 Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 19 / 41

Inexact Tangential Component [ ) ( ) ( ) W k c(x k ) ]( x k f (xk ) + c(x c(x k ) T = k )y k ρ 0 y k c(x k ) T + k n k r k Rewrite using x k = n k + t k ( x k current inexact solution) Require: (simplified) 1 Residual ( ) f (xk ) + c(x ρ k κ k )y k c(x k ) T κ (0, 1) n k 2 Tangential component condition: Satisfy at least one of T t k Wk t k θ t k 2 θ>0 t k ψ n k ψ> 0 Update W k W k +δi if both violated Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 19 / 41

Model Reduction Condition Merit function: φ νk (x) = f (x) +ν k c(x) Linear model: m νk (x k, x) = f (x k ) + f (x k ) T x +ν k c(x k ) + c(x k ) T x Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 20 / 41

Model Reduction Condition Merit function: φ νk (x) = f (x) +ν k c(x) Linear model: m νk (x k, x) = f (x k ) + f (x k ) T x +ν k c(x k ) + c(x k ) T x Predicted reduction: m νk (x k ; x) = m νk (x k, 0) m νk (x k, x) Can show Dφ νk (x k ; x) m νk (x k ; x) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 20 / 41

Model Reduction Condition Merit function: φ νk (x) = f (x) +ν k c(x) Linear model: m νk (x k, x) = f (x k ) + f (x k ) T x +ν k c(x k ) + c(x k ) T x Predicted reduction: m νk (x k ; x) = m νk (x k, 0) m νk (x k, x) Can show Dφ νk (x k ; x) m νk (x k ; x) Require: m νk (x k ; x k ) is sufficiently positive, (= guarantee direction of descent for currentν k ) or Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 20 / 41

Model Reduction Condition Merit function: φ νk (x) = f (x) +ν k c(x) Linear model: m νk (x k, x) = f (x k ) + f (x k ) T x +ν k c(x k ) + c(x k ) T x Predicted reduction: m νk (x k ; x) = m νk (x k, 0) m νk (x k, x) Can show Dφ νk (x k ; x) m νk (x k ; x) Require: m νk (x k ; x k ) is sufficiently positive, (= guarantee direction of descent for currentν k ) or c(x k ) c(x k ) c(x k ) T x k is sufficiently positive (= controlled update ofν k to get Dφ νk (x k ; x k )<0) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 20 / 41

Theoretical Convergence Result Assumption f (x), c(x), f (x), c(x) are bounded and Lipschitz continuous, (unmodified) W k are bounded. Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 21 / 41

Theoretical Convergence Result Assumption f (x), c(x), f (x), c(x) are bounded and Lipschitz continuous, (unmodified) W k are bounded. Theorem (Curtis, Nocedal, W, 2009) If all limit points of c(x k ) have full rank thenν k is bounded and ( ) f (xk ) + c(x lim k )y k k c(x k ) = 0. Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 21 / 41

Theoretical Convergence Result Assumption f (x), c(x), f (x), c(x) are bounded and Lipschitz continuous, (unmodified) W k are bounded. Theorem (Curtis, Nocedal, W, 2009) If all limit points of c(x k ) have full rank thenν k is bounded and ( ) f (xk ) + c(x lim k )y k k c(x k ) = 0. Otherwise lim k c(x k )c(x k ) = 0 (stationary for: min 1 2 c(x) 2 2) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 21 / 41

Theoretical Convergence Result Assumption f (x), c(x), f (x), c(x) are bounded and Lipschitz continuous, (unmodified) W k are bounded. Theorem (Curtis, Nocedal, W, 2009) If all limit points of c(x k ) have full rank thenν k is bounded and ( ) f (xk ) + c(x lim k )y k k c(x k ) = 0. Otherwise lim k c(x k )c(x k ) = 0 (stationary for: min 1 2 c(x) 2 2) and ifν k is bounded lim k f (x k ) + c(x k )y k = 0. Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 21 / 41

Theoretical Convergence Result Assumption f (x), c(x), f (x), c(x) are bounded and Lipschitz continuous, (unmodified) W k are bounded. Theorem (Curtis, Nocedal, W, 2009) If all limit points of c(x k ) have full rank thenν k is bounded and ( ) f (xk ) + c(x lim k )y k k c(x k ) = 0. Otherwise lim k c(x k )c(x k ) = 0 (stationary for: min 1 2 c(x) 2 2) and ifν k is bounded lim k f (x k ) + c(x k )y k = 0. Similar result for interior point method with inequalities (Curtis, Schenk, W, 2010) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 21 / 41

Inequality Constraints / Barrier Problem p min f (x) µ ln(s (i) ) x R n,s R p i=1 s.t. c(x) = 0 d(x) + s = 0 (s> 0) W k 0 c(x k ) d(x k ) x k f (x k ) + c(x k )y 0 µs 2 k c k 0 I s + d(x k)y d k k c(x k ) T 0 0 0 y c d(x k ) T k = µs 1 k e c(x k ) I 0 0 yk d d(x k ) + s k Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 22 / 41

Inequality Constraints / Barrier Problem p min f (x) µ ln(s (i) ) x R n,s R p i=1 s.t. c(x) = 0 d(x) + s = 0 (s> 0) W k 0 c(x k ) d(x k ) x k f (x k ) + c(x k )y 0 µi 0 S k S 1 k c + d(x k)y d k c(x k ) T k s k 0 0 0 y c d(x k ) T k = µe c(x k ) S k 0 0 yk d d(x k ) + s k Trick: Scale slack variables: s = Sk 1 s k Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 22 / 41

Inequality Constraints / Barrier Problem p min f (x) µ ln(s (i) ) x R n,s R p i=1 s.t. c(x) = 0 d(x) + s = 0 (s> 0) W k 0 c(x k ) d(x k ) x k f (x k ) + c(x k )y 0 µi 0 S k S 1 k c + d(x k)y d k c(x k ) T k s k 0 0 0 y c d(x k ) T k = µe c(x k ) S k 0 0 yk d d(x k ) + s k Trick: Scale slack variables: s = Sk 1 s k Now all quantities in linear system are uniformly bounded Much of equality-only analysis applies, use same termination tests Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 22 / 41

Inequality Constraints / Barrier Problem p min f (x) µ ln(s (i) ) x R n,s R p i=1 s.t. c(x) = 0 d(x) + s = 0 (s> 0) W k 0 c(x k ) d(x k ) x k f (x k ) + c(x k )y 0 µi 0 S k S 1 k c + d(x k)y d k c(x k ) T k s k 0 0 0 y c d(x k ) T k = µe c(x k ) S k 0 0 yk d d(x k ) + s k Trick: Scale slack variables: s = Sk 1 s k Now all quantities in linear system are uniformly bounded Much of equality-only analysis applies, use same termination tests Special consideration Fraction to boundary: sk +α k s k (1 τ)s k > 0 Slack reset: sk+1 max{s k+1, d(x k+1 )} Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 22 / 41

Some Computational Results Ipopt [W, Laird, Biegler] primal-dual interior point method originally: filter line-search method added inexact algorithm with penalty function Pardiso [Schenk, Gärtner] Parallel Direct Linear Solver includes iterative linear solvers (e.g., SQMR) preconditioner: multi-level incomplete factorization with weighted graph matchings and inverse-based pivoting Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 23 / 41

Some Computational Results Ipopt [W, Laird, Biegler] primal-dual interior point method originally: filter line-search method added inexact algorithm with penalty function Pardiso [Schenk, Gärtner] Parallel Direct Linear Solver includes iterative linear solvers (e.g., SQMR) preconditioner: multi-level incomplete factorization with weighted graph matchings and inverse-based pivoting Experiments: Robustness test with CUTE/COPS collection 684 AMPL models Inexact method solved 85% (original Ipopt 94%) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 23 / 41

Some Computational Results Ipopt [W, Laird, Biegler] primal-dual interior point method originally: filter line-search method added inexact algorithm with penalty function Pardiso [Schenk, Gärtner] Parallel Direct Linear Solver includes iterative linear solvers (e.g., SQMR) preconditioner: multi-level incomplete factorization with weighted graph matchings and inverse-based pivoting Experiments: Robustness test with CUTE/COPS collection 684 AMPL models Inexact method solved 85% (original Ipopt 94%) PDE-constrained optimization problems Implemented in Matlab; finite differences; uniform grids Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 23 / 41

Boundary Control 1 (y(x) y t (x)) 2 dx 2 Ω s.t. (e y(x) y(x)) = 20 in Ω = [0, 1] 3 min y,u y(x) = u(x) on Ω 2.5 u(x) 3.5 on Ω Target profile: y t (x) = 3 + 10x (1) (x (1) 1)x (2) (x (2) 1) sin(2πx (3) ) N # var # eq # ineq # iter CPU sec (per iter) 16 4096 2744 2704 13 2.8144 (0.2165) 32 32768 27000 11536 13 103.65 (7.9731) 64 262144 238328 47632 14 5332.3 (380.88) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 24 / 41

Boundary Control 1 (y(x) y t (x)) 2 dx 2 Ω s.t. (e y(x) y(x)) = 20 in Ω = [0, 1] 3 min y,u y(x) = u(x) on Ω 2.5 u(x) 3.5 on Ω Target profile: y t (x) = 3 + 10x (1) (x (1) 1)x (2) (x (2) 1) sin(2πx (3) ) N # var # eq # ineq # iter CPU sec (per iter) 16 4096 2744 2704 13 2.8144 (0.2165) 32 32768 27000 11536 13 103.65 (7.9731) 64 262144 238328 47632 14 5332.3 (380.88) Original Ipopt with N = 32 requires 238 seconds per iteration Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 24 / 41

Hyperthermia Treatment Planning 1 (y(x) y t (x)) 2 dx 2 Ω s.t. y(x) 10(y(x) 37) = u M(x)u in Ω = [0, 1] 3 min y,u 37.0 y(x) 37.5 on Ω 42.0 y(x) 44.0 in Ω Tumor Ω Controls: u j = a j e iφ j j = 1,...,10 Data: M jk (x) =< E j (x), E k (x)>, E j = sin(jπx 1 x 2 x 3 ) N # var # eq # ineq # iter CPU sec (per iter) 16 4116 2744 2994 68 22.893 (0.3367) 32 32788 27000 13034 51 3055.9 (59.920) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 25 / 41

Hyperthermia Treatment Planning 1 (y(x) y t (x)) 2 dx 2 Ω s.t. y(x) 10(y(x) 37) = u M(x)u in Ω = [0, 1] 3 min y,u 37.0 y(x) 37.5 on Ω 42.0 y(x) 44.0 in Ω Tumor Ω Controls: u j = a j e iφ j j = 1,...,10 Data: M jk (x) =< E j (x), E k (x)>, E j = sin(jπx 1 x 2 x 3 ) N # var # eq # ineq # iter CPU sec (per iter) 16 4116 2744 2994 68 22.893 (0.3367) 32 32788 27000 13034 51 3055.9 (59.920) Original Ipopt with N = 32 requires 408 seconds per iteration Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 25 / 41

Inverse Problem min y,u 1 6 (y i (x) y i,t (x)) 2 dx + 1 (β(u(x) u t (x)) 2 + (u(x) u t (x)) 2) 2 2 i=1 Ω Ω s.t. (e u(x) y i (x)) = q i (x) in Ω = [0, 1] 3, i = 1,...,6 y i (x) n = 0 on Ω, i = 1,...,6 y i (x) dx = 0 i = 1,...,6 Ω 1 u(x) 1 in Ω N # var # eq # ineq # iter CPU sec (per iter) 16 28672 24576 8192 18 206.416 (11.4676) 32 229376 196608 65536 20 1963.64 (98.1820) 64 1835008 1572864 524288 21 134418. (6400.85) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 26 / 41

Inverse Problem min y,u 1 6 (y i (x) y i,t (x)) 2 dx + 1 (β(u(x) u t (x)) 2 + (u(x) u t (x)) 2) 2 2 i=1 Ω Ω s.t. (e u(x) y i (x)) = q i (x) in Ω = [0, 1] 3, i = 1,...,6 y i (x) n = 0 on Ω, i = 1,...,6 y i (x) dx = 0 i = 1,...,6 Ω 1 u(x) 1 in Ω N # var # eq # ineq # iter CPU sec (per iter) 16 28672 24576 8192 18 206.416 (11.4676) 32 229376 196608 65536 20 1963.64 (98.1820) 64 1835008 1572864 524288 21 134418. (6400.85) Original Ipopt with N = 32 requires 15 hours for the first iteration (reduction by factor 550) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 26 / 41

PDE-Constrained Optimization Very active research area Often try to use of preconditioners for original PDE Extremely efficient in solving linear systems for state variables Optimization methods often based on step decomposition Projections into the null space of constraint Jacobian Work with reduced Hessian Those often lead to triple iterative loops Can handle constraints on control variables Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 27 / 41

PDE-Constrained Optimization Very active research area Often try to use of preconditioners for original PDE Extremely efficient in solving linear systems for state variables Optimization methods often based on step decomposition Projections into the null space of constraint Jacobian Work with reduced Hessian Those often lead to triple iterative loops Can handle constraints on control variables Potential difficulty: Inequalities involving state variables If interior-point method is used: Reduced Hessian becomes very ill-conditioned Not clear how to find efficient preconditioner Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 27 / 41

Our Ongoing Work We hope that our approach can make a difference for problems with many state constraints when no efficient PDE preconditioner is known (e.g., some version of Helmholtz equation) Find an interesting problem with many state constraints Utilize standard PDE techniques Discretization using meshes (e.g., finite elements) Adaptive mesh refinement (e.g., [Ziems, Ulbrich]) Scalable distributed-memory parallel implementation If successful, distribute code Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 28 / 41

Example: Server Room Cooling Problem: Heat generating equipment in room must be cooled Want to place/control air conditioners to minimize cooling costs Suggested by Henderson, Lopez, Mello (IBM Research) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 29 / 41

Formulation Of Airflow Problem We assume Air flow has no internal friction (irrotational) Air speed is far below speed of sound (incompressible) Then air flow can be described by velocity potential Φ Air velocity: v(x) = Φ(x) Potential satisfies Laplace s equation Φ(x) = n i=1 2 Φ xi 2 (x) = 0 for x Ω Ω R n : interior of server room without equipment (n = 2, 3) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 30 / 41

Boundary conditions Φ(x) = 0 for x Ω Walls and equipment: No airflow through the surface Φ(x) n = 0 for x Γ wall ( n : outward normal derivative) At AC locations in walls: Controllable fan speed is incoming flow Φ(x) n = v ACi for x Γ ACi At exhausts: Assume hole in the wall ( grounded potential ) Φ(x) = 0 for x Γ Exhj Unique solution Φ H 1 (Ω), continuously dependent on v ACi Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 31 / 41

Optimal Control Problem min ci v ACi s.t. Φ(x) = 0 for x Ω Φ(x) = 0 n for x Γ wall Φ(x) = v ACi n for x Γ ACi Φ(x) = 0 for x Γ Exhj Φ(x) 2 2 vmin 2 v ACi 0 for x Γ hot Objective: Minimize costs of running ACs Constraints: Require minimum air speed at heat sources of equipment (nonconvex) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 32 / 41

Software Finite Element Library: libmesh [Kirk, Peterson, Stogner, Carey] Manages the finite-element mesh Interfaces to mesh generators (we use tetgen [Si, Gärtner] for 3D) Handles refinement of mesh (not yet used) Distributed memory implementation (uses PETSc) Optimization code: Ipopt (inexact algorithm) Variation: Step decomposition only when necessary Using the flexible penalty function [Curtis, Nocedal, 2008] Using distributed memory version of Ipopt [Dash, W] handles linear algebra objects in parallel supports parallel function evaluations not (yet... ) officially released Linear Solver: Pardiso (iterative linear solver) No distributed memory implementation In the future: use PSPIKE [Samel, Sathe, Schenk] Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 33 / 41

3D Server Room Cooling Example 7 servers of different sizes 57 ACs located all around the walls One exhaust in top front Constraint: Minimum air speed at front and back sides of servers Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 34 / 41

Computational Results Problem size (Ω = [0, 10] [0, 5] [0, 3]) h #var #eq #ineq #nnz KKT 0.1 43,816 43,759 4,793 777,139 0.05 323,191 323,134 19,128 5,759,809 Exact algorithm h #iter f (x ) CPU(algo) CPU(eval) fill-in 0.1 54 278.10 1,766.02 341.12 54.1 0.05 75 586.36 179,256.62 3,752.15 117.3 Inexact algorithm h #iter f (x ) CPU(algo) CPU(eval) 0.1 47 278.10 1,697.47 307.47 0.05 54 586.36 28,518.41 2,658.18 (different ACs active for h = 0.1 and h = 0.05) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 35 / 41

Optimal Solution (h = 0.05) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 36 / 41

Optimal Solution (h = 0.05) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 37 / 41

Optimal Solution (h = 0.05) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 38 / 41

Optimal Solution (Active Constraints) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 39 / 41

Future Plans These computations are still preliminary Further improvements: Include temperature into the model Nonlinear PDEs Include adaptive mesh refinement within the optimization Improve preconditioner Perform computations in parallel Function evaluations (libmesh) and Ipopt are already parallel Explore distributed memory iterative linear solver PSPIKE Potentially release code as part of Ipopt distribution Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 40 / 41

Conclusions Nonlinear optimization with inexact step computations Termination tests for iterative linear solver Consider optimization nature Based on model of merit function Theoretical convergence properties under mild assumptions Encouraging results for PDE constrained problems Very good speed up on some examples Promising preliminary results for problem with state constraints A lot left to do (Looking for other NLP applications with large fill-in ideas?) Andreas Wächter (IBM) NLP With Inexact Steps IPAM 2010 41 / 41