General Nonlinear Programming (NLP) Software

1 / 36

General Nonlinear Programming (NLP) Software - PowerPoint PPT Presentation

General Nonlinear Programming (NLP) Software. CAS 737 / CES 735 Kristin Davies Hamid Ghaffari Alberto Olvera-Salazar Voicu Chis January 12, 2006. Outline. Intro to NLP Examination of: IPOPT PENNON CONOPT LOQO KNITRO Comparison of Computational Results Conclusions.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

PowerPoint Slideshow about 'General Nonlinear Programming (NLP) Software' - carlota

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

General Nonlinear Programming (NLP) Software

CAS 737 / CES 735

Kristin Davies

Hamid Ghaffari

Alberto Olvera-Salazar

Voicu Chis

January 12, 2006

Outline
• Intro to NLP
• Examination of:
• IPOPT
• PENNON
• CONOPT
• LOQO
• KNITRO
• Comparison of Computational Results
• Conclusions
Intro to NLP

The general problem:

(NLP)

• Either the objective function or some of the constraints may be nonlinear
Intro to NLP (cont’d…)
• Recall:
• The feasible region of any LP is a convex set
• if the LP has an optimal solution, there is an extreme point of the feasible set that is optimal
• However:
• even if the feasible region of an NLP is a convex set, the optimal solution might not be an extreme point of the feasible region
Intro to NLP (cont’d…)
• Some Major approaches for NLP
• Interior Point Methods
• Use a log-barrier function
• Penalty and Augmented Lagrange Methods
• Use the idea of penalty to transform a constrained problem into a sequence of unconstrained problems.
• Use a basic Descent algorithm.
• Solves a quadratic approximation at every iteration.
IPOPT SOLVER (Interior Point OPTimizer)
• Creators
• Andreas Wachter and L.T. Biegler at CMU (~2002)
• Aims
• Solver for Large-Scale Nonlinear Optimization problems
• Applications
• General Nonlinear optimization
• Process Engineering, DAE/PDE Systems, Process Design and Operations, Nonlinear Model Predictive control, Design Under Uncertainty
IPOPT SOLVER (Interior Point OPTimizer)
• Input Format
• Can be linked to Fortran and C code MATLAB and AMPL.
• Language / OS
• Linux/UNIX platforms and Windows
• Commercial/Free
• Released as open source code under the Common Public License (CPL).
• It is available from the COIN-OR repository
IPOPT SOLVER (Interior Point OPTimizer)
• Key Claims
• Global Convergence by using a Line Search.
• Find a KKT point
• Point that Minimizes Infeasibility (locally)
• Exploits Exact Second Derivatives
• AMPL (automatic differentiation)
• If not Available use QN approx (BFGS)
• Sparsity of the KKT matrix.
• IPOPT has a version to solve problems with MPEC Constraints. (IPOPT-C)

The bounds are replaced by a logarithmic Barrier term. The method solves a sequence of barrier problems for decreasing values of ml

IPOPT SOLVER (Interior Point OPTimizer)
• Algorithm
• Interior Point method with a novel line search filter.
• Optimization Problem
IPOPT SOLVER (Interior Point OPTimizer)
• Algorithm
• (For a fixed value of )
• Solve the Barrier Problem
• Search Direction (Primal-Dual IP)
• Use a Newton method to solve the primal dual equations.
• Hessian Approximation (BFGS update)
• Line Search (Filter Method)
• Feasibility Restoration Phase
IPOPT SOLVER (Interior Point OPTimizer)
• Optimization Problem

Outer

Loop

• The bounds are replaced by a logarithmic Barrier term.
• The method solves a sequence of barrier problems for decreasing values of
IPOPT SOLVER (Interior Point OPTimizer)

Algorithm (For a fixed value of )

• Solve the Barrier Problem
• Search Direction (Primal-Dual IP)
• Use a Newton method to solve the primal dual equations
• Hessian Approximation (BFGS update)

Barrier

NLP

Optimality conditions

At a Newton's iteration (xk,lk,vk)

At a Newton's iteration (xk,lk,vk)

Algorithm Core: Solution of this Linear system

IPOPT SOLVER (Interior Point OPTimizer)

Inner

Loop

If

IPOPT SOLVER (Interior Point OPTimizer)
• Algorithm (For a fixed value of )
• Line Search (Filter Method)
• A trial point is accepted if improves feasibility or if improves the barrier function
• Assumes Newton directions are “Good” especially when using Exact 2nd Derivatives
IPOPT SOLVER (Interior Point OPTimizer)
• Line Search - Feasibility Restoration Phase
• When a new trial point does not provides sufficient improvement.

Restore Feasibility

Minimize constraint

violation

Force Unique Solution

Find closest feasible point.

The interior Point method for NLPs has been extended to handle complementarity problems. (Raghunathan et al. 2003).

is relaxed as

IPOPT SOLVER (Interior Point OPTimizer)

• The complexity of the problem increases when complementarity conditions are introduced from:
IPOPT SOLVER (Interior Point OPTimizer)
• IPOPT 3x. Is now programmed in C++.
• Is the primary NLP Solver in an undergoing project for MINLP with IBM.
• References
• Ipopt homepage: http://www.coin-or.org/Ipopt/ipopt-fortran.html
• A. Wächter and L. T. Biegler, On the Implementation of a Primal-Dual Interior Point Filter Line Search Algorithm for Large-Scale Nonlinear Programming, Research Report, IBM T. J. Watson Research Center, Yorktown, USA, (March 2004 - accepted for publication in Mathematical Programming)
• Creators
• Michal Kocvara & Michael Stingl (~2001)
• Aims
• NLP, Semidefinite Programming (SDP), Linear & Bilinear Matrix Inequalities (LMI & BMI), Second Order Conic Programming (SOCP)
• Applications
• General purpose nonlinear optimization, systems of equations, control theory, economics & finance, structural optimization, engineering
SDP (SemiDefinite Programming)
• Minimization of a linear function subject to the constraint that an affine combination of symmetric matrices is positive semidefinite

Linear Matrix Inequality (LMI)

defines a convex constraint on x

SDP (SemiDefinite Programming)

-always an optimal point on the boundary

-boundary consists of

piecewise algebraic

surfaces

SOCP (Second-Order Conic Programming)
• Minimization of a linear function subject to a second-order cone constraint
• Called a second-order cone constraint since the unit second-order cone of dimension k is defined as:

Which is called the

or Lorentz cone

• Input Format
• MATLAB function, routine called from C or Fortran, stand-alone program with AMPL
• Language
• Fortran 77
• Commercial/Free
• Variety of licenses ranging from

Academic – single user (\$460 CDN) to Commercial – company (\$40,500 CDN)

• Key Claims
• 1st available code for combo NLP, LMI, & BMI constraints
• Aimed at (very) large-scale problems
• Efficient treatment of different sparsity patterns in problem data
• Robust with respect to feasibility of initial guess
• Particularly efficient for large convex problems
• Algorithm
• Generalized version of the Augmented Langrangian method (originally by Ben-Tal & Zibulevsky)

Augmented Problem

Augmented Lagrangian

The Algorithm

• Consider only inequality constraints from (NLP)
• Based on choice of a penalty function, φg, that penalizes the inequality constraints
• Penalty function must satisfy multiple properties such that the original (NLP) has the same solution as the following “augmented” problem:

(NLPφ)

[3] Kocvara & Stingl

The Algorithm (Cont’d…)

• The Lagrangian of (NLPφ) can be viewed as a (generalized) augmented Lagrangian of (NLP):

Inequality constraint

Penalty parameter

Lagrange multiplier

Penalty function

[3] Kocvara & Stingl

The Algorithm STEPS

[3] Kocvara & Stingl

The Algorithm STEPS

• Initialization
• Calculate initial multiplier values
• Initial p= , typically between 10 - 10000

[3] Kocvara & Stingl

The Algorithm STEPS

• (Approximate) Unconstrained Minimization
• Performed either by Newton with Line Search, or by Trust Region
• Stopping criteria:

[3] Kocvara & Stingl

The Algorithm STEPS

• Update of Multipliers
• Restricted in order to satisfy:

with a positive

• If left-side violated, let
• If right side violate, let

[3] Kocvara & Stingl

The Algorithm STEPS

• Update of Penalty Parameter
• No update during first 3 iterations
• Afterwards, updated by a constant factor dependent on initial penalty parameter
• Penalty update is stopped if peps (10-6) is reached

[3] Kocvara & Stingl

The Algorithm

• Choice of Penalty Function
• Most efficient penalty function for convex NLP is the quadratic-logarithmic function:

[4] Ben-Tal & Zibulevsky

The Algorithm

• Overall Stopping Criteria

[3] Kocvara & Stingl

• Assumptions / Warnings
• More tuning for nonconvex problems is still required
• Slower at solving linear SDP problems since algorithm is generalized
• References
• Kocvara, Michal & Michael Stingl. PENNON: A Code for Convex and Semidefinite Programming. Optimization Methods and Software, 8(3):317-333, 2003.
• Kocvara, Michal & Michael Stingl. PENNON-AMPL User’s Guide. www.penopt.com . August 2003.
• Ben-Tal, Aharon & Michael Zibulevsky. Penalty/Barrier Multiplier Methods for Convex Programming Problems. Siam J. Optim., 7(2):347-366, 1997.
• Pennon Homepage. www.penopt.com/pennon.html Available online January 2007.