CONSTRAINED NONLINEAR PROGRAMMING



Similar documents
Numerisches Rechnen. (für Informatiker) M. Grepl J. Berger & J.T. Frings. Institut für Geometrie und Praktische Mathematik RWTH Aachen

Date: April 12, Contents

2.3 Convex Constrained Optimization Problems

Nonlinear Optimization: Algorithms 3: Interior-point methods

The Steepest Descent Algorithm for Unconstrained Optimization and a Bisection Line-search Method

Nonlinear Programming Methods.S2 Quadratic Programming

SECOND DERIVATIVE TEST FOR CONSTRAINED EXTREMA

Walrasian Demand. u(x) where B(p, w) = {x R n + : p x w}.

In this section, we will consider techniques for solving problems of this type.

24. The Branch and Bound Method

A NEW LOOK AT CONVEX ANALYSIS AND OPTIMIZATION

constraint. Let us penalize ourselves for making the constraint too big. We end up with a

Linear Programming Notes V Problem Transformations

Support Vector Machine (SVM)

1 Introduction. Linear Programming. Questions. A general optimization problem is of the form: choose x to. max f(x) subject to x S. where.

Derivative Free Optimization

Constrained optimization.

Increasing for all. Convex for all. ( ) Increasing for all (remember that the log function is only defined for ). ( ) Concave for all.

Linear Programming Problems

No: Bilkent University. Monotonic Extension. Farhad Husseinov. Discussion Papers. Department of Economics

t := maxγ ν subject to ν {0,1,2,...} and f(x c +γ ν d) f(x c )+cγ ν f (x c ;d).

Duality in General Programs. Ryan Tibshirani Convex Optimization /36-725

Interior Point Methods and Linear Programming

Chapter 4. Duality. 4.1 A Graphical Example

Lecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method

Practical Guide to the Simplex Method of Linear Programming

Summer course on Convex Optimization. Fifth Lecture Interior-Point Methods (1) Michel Baes, K.U.Leuven Bharath Rangarajan, U.

Duality of linear conic problems

1 Solving LPs: The Simplex Algorithm of George Dantzig

Discrete Optimization

CHAPTER 9. Integer Programming

Support Vector Machines

Inner Product Spaces

What is Linear Programming?

Nonlinear Algebraic Equations. Lectures INF2320 p. 1/88

TOPIC 4: DERIVATIVES

Cost Minimization and the Cost Function

(Quasi-)Newton methods

15 Kuhn -Tucker conditions

Lecture 3: Linear methods for classification

Linear Programming. March 14, 2014

Linear Programming in Matrix Form

Linear Programming: Theory and Applications

Lecture 2: August 29. Linear Programming (part I)

The Envelope Theorem 1

Lecture 2: The SVM classifier

Vector and Matrix Norms

Duality in Linear Programming

Further Study on Strong Lagrangian Duality Property for Invex Programs via Penalty Functions 1

Practice with Proofs

Lecture 2. Marginal Functions, Average Functions, Elasticity, the Marginal Principle, and Constrained Optimization

DERIVATIVES AS MATRICES; CHAIN RULE

Dual Methods for Total Variation-Based Image Restoration

Linear Algebra I. Ronald van Luijk, 2012

Nonlinear Algebraic Equations Example

Numerical methods for American options

International Doctoral School Algorithmic Decision Theory: MCDA and MOO

Approximation Algorithms

CONTINUED FRACTIONS AND PELL S EQUATION. Contents 1. Continued Fractions 1 2. Solution to Pell s Equation 9 References 12

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc.

LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS. 1. Dual linear program 2. Duality theory 3. Sensitivity analysis 4. Dual simplex method

. P. 4.3 Basic feasible solutions and vertices of polyhedra. x 1. x 2

Probability Generating Functions

Stochastic Inventory Control

x a x 2 (1 + x 2 ) n.

3. Linear Programming and Polyhedral Combinatorics

Lecture Notes on Elasticity of Substitution

HOMEWORK 5 SOLUTIONS. n!f n (1) lim. ln x n! + xn x. 1 = G n 1 (x). (2) k + 1 n. (n 1)!

4 Lyapunov Stability Theory

Proximal mapping via network optimization

Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach

BANACH AND HILBERT SPACE REVIEW

Interior-Point Algorithms for Quadratic Programming

Lecture 11: 0-1 Quadratic Program and Lower Bounds

Statistical Machine Learning

Solving Linear Programs

Least-Squares Intersection of Lines

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2.

Big Data - Lecture 1 Optimization reminders

Economics 2020a / HBS 4010 / HKS API-111 FALL 2010 Solutions to Practice Problems for Lectures 1 to 4

1 if 1 x 0 1 if 0 x 1

MATH 425, PRACTICE FINAL EXAM SOLUTIONS.

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

MATH 4330/5330, Fourier Analysis Section 11, The Discrete Fourier Transform

Quotient Rings and Field Extensions

Solutions Of Some Non-Linear Programming Problems BIJAN KUMAR PATEL. Master of Science in Mathematics. Prof. ANIL KUMAR

Several Views of Support Vector Machines

THE NUMBER OF GRAPHS AND A RANDOM GRAPH WITH A GIVEN DEGREE SEQUENCE. Alexander Barvinok

Adaptive Online Gradient Descent

1. Prove that the empty set is a subset of every set.

Notes on metric spaces

Separation Properties for Locally Convex Cones

Linear Programming I

A Simple Introduction to Support Vector Machines

PYTHAGOREAN TRIPLES KEITH CONRAD

Undergraduate Notes in Mathematics. Arkansas Tech University Department of Mathematics

1 Norms and Vector Spaces

Applied Algorithm Design Lecture 5

Transcription:

149 CONSTRAINED NONLINEAR PROGRAMMING We now turn to methods for general constrained nonlinear programming. These may be broadly classified into two categories: 1. TRANSFORMATION METHODS: In this approach the constrained nonlinear program is transformed into an unconstrained problem (or more commonly, a series of unconstrained problems) and solved using one (or some variant) of the algorithms we have already seen. Transformation methods may further be classified as (1) Exterior Penalty Function Methods (2) Interior Penalty (or Barrier) Function Methods (3) Augmented Lagrangian (or Multiplier) Methods 2. PRIMAL METHODS: These are methods that work directly on the original problem. We shall look at each of these in turn; we first start with transformation methods.

150 Exterior Penalty Function Methods These methods generate a sequence of infeasible points whose limit is an optimal solution to the original problem. The original constrained problem is transformed into an unconstrained one (or a series of unconstrained problems).the constraints are incorporated into the objective by means of a "penalty parameter" which penalizes any constraint violation. Consider the problem Min f(x) st g j (x) 0, j=1,2,,m, h j (x) = 0, j=1,2,,p, x R n Define a penalty function p as follows: m p(x) = Max{0, g j (x)} α j=1 where α is some positive integer. It is easy to see that If g j (x) 0 then Max{0, g j (x)} = 0 p + h j (x) α j=1 If g j (x) > 0 then Max{0, g j (x)} = g j (x) (violation) Now define the auxiliary function as P(x)= f(x) + µp(x),where µ >> 0. Thus if a constraint is violated, p(x)>0 and a "penalty" of µp(x) is incurred.

151 The (UNCONSTRAINED) problem now is: Minimize P(x)= f(x) + µp(x) st x R n EXAMPLE: Minimize f(x)=x, st g(x)=2-x 0, x R (Note that minimum is at x * =2) Let p(x)= Max[{0,g(x)}] 2, i. e., p(x) = (2 x)2 if x < 2 0 if x 2 If p(x)=0, then the optimal solution to Minimize f(x) + μμ(x) is at x * = - and this is infeasible; so f(x) + μμ(x) = x + μ(2 x) 2 Minimize P(x) = f(x) + μμ(x) has optimum solution x = 2 1 2μ. NNNN: As μ, 2 1 2μ 2 (= x ) µ 2 p µ 1 =0.5 µ 2 =1.5 f+µ 2 p µ 1 =0.5 µ 2 =1.5 p f+µ 1 p µ 1 p -3-2 -1 0 1 2-1 0 1 2 3 Penalty Function Auxiliary Function

152 In general: 1. We convert the constrained problem to an unconstrained one by using the penalty function. 2. The solution to the unconstrained problem can be made arbitrarily close to that of the original one by choosing sufficiently large µ. In practice, if µ is very large, too much emphasis is placed on feasibility. Often, algorithms for unconstrained optimization would stop prematurely because the step sizes required for improvement become very small. Usually, we solve a sequence of problems with successively increasing µ values; the optimal point from one iteration becomes the starting point for the next problem. PROCEDURE: Choose the following initially: 1. a tolerance ε, 2. an increase factor β, 3. a starting point x 1, and 4. an initial µ 1. At Iteration i 1. Solve the problem Minimize f(x)+µ i p(x); st x X (usually R n ). Use x i as the starting point and let the optimal solution be x i+1 2. If µ i p(x i+1 ) ε then STOP; else let µ i+1 =(µ i )β and start iteration (i+1)

153 EXAMPLE: Minimize f(x) = x 1 2 + 2x 2 2 Define the penalty function The unconstrained problem is st g(x) = 1 x 1 x 2 0; x R 2 Minimize x 1 2 + 2x 2 2 + µp(x) p(x) = (1 x 1 x 2 ) 2 if g(x) > 0 0 if g(x) 0 If p(x)=0, then the optimal solution is x * =(0,0) INFEASIBLE! p(x) = (1 x 1 x 2 ) 2, P(x) = x 1 2 + 2x 2 2 + µ [(1 x 1 x 2 ) 2 ], and the necessary conditions for the optimal solution ( P (x)=0) yield the following: P x 1 = 2x 1 + 2μ(1 x 1 x 2 )( 1) = 0, P x 2 = 4x 2 + 2μ(1 x 1 x 2) ( 1) = 0 Thus x 1 = 2μ (2 + 3μ) and x 2 μ = (2 + 3μ) Starting with µ =0.1, β=10 and x 1 =(0,0) and using a tolerance of 0.001 (say), we have the following: Iter. (i) µ i x i+1 g(x i+1 ) µ i p(x i+1 ) 1 2 3 4 5 0.1 1.0 10 100 1000 (0.087, 0.043) (0.4, 0.2) (0.625, 0.3125) (0.6622, 0.3311) (0.666, 0.333) 0.87 0.40 0.0625 0.0067 0.001 0.0757 0.16 0.039 0.00449 0.001 Thus the optimal solution is x * = (2/3, 1/3).

154 INTERIOR PENALTY (BARRIER) FUNCTION METHODS These methods also transform the original problem into an unconstrained one; however the barrier functions prevent the current solution from ever leaving the feasible region. These require that the interior of the feasible sets be nonempty, which is impossible if equality constraints are present. Therefore, they are used with problems having only inequality constraints. A barrier function B is one that is continuous and nonnegative over the interior of {x g(x) 0}, i.e., over the set {x g(x)<0}, and approaches as the boundary is approached from the interior. Let φ(y) 0 if y<0 and lim y 0 φ(y) = m Then B(x) = φ[g j (x)] Usually, m j=1 1 B(x) = j=1 or B(x) = j=1 lll ( g j (x)) g j (x) In both cases, note that lim gj (x) 0 B(x) = The auxiliary function is now f(x) + µb(x) where µ is a SMALL positive number. m

155 Q. Why should µ be SMALL? A. Ideally we would like B(x)=0 if g j (x)<0 and B(x)= if g j (x)=0, so that we never leave the region{x g(x) 0}. However, B(x) is now discontinuous. This causes serious computational problems during the unconstrained optimization. Consider the same problem as the one we looked at with (exterior) penalty functions: Minimize f(x) = x, st x+2 0 Define the barrier function B(x)= -1/(-x+2) So the auxiliary function is f(x) + µb(x) = x - µ/(-x+2), and has its optimum solution at x * =2 + μ, and as µ 0, x * 2. 8 6 4 2 0 µ 2 B B µ 1 B µ 1 =0.5 µ 2 =1.5 2 3 4 5 6 7 8 12 10 8 6 4 2 0 µ f+µ 2 B 1 =0.5 µ 2 =1.5 f+µ 1 B 2 3 4 5 6 7 8 Barrier Function Auxiliary Function Similar to exterior penalty functions we don't just choose one small value for rather we start with some µ 1 and generate a sequence of points.

156 PROCEDURE: Initially choose a tolerance ε, a decrease factor β, an interior starting point x 1, and an initial µ 1. At Iteration i 1. Solve the problem Minimize f(x)+µ i B(x),st x X (usually R n ). Use x i as the starting point and let the optimal solution be x i+1 2. If µ i B(x i+1 ) < ε then STOP; else let µ i+1 =(µ i )β and start iteration (i+1) Consider the previous example once again EXAMPLE: Minimize f(x) = x 1 2 + 2x 2 2 Define the barrier function The unconstrained problem is st g(x) = 1 x 1 x 2 0; x R 2 B(x) = lll g(x) = lll (x 1 + x 2 1) Minimize x 1 2 + 2x 2 2 + µb(x) = x 1 2 + 2x 2 2 - µ lll (x 1 + x 2 1) The necessary conditions for the optimal solution ( f(x)=0) yield the following: x 1 = 2x 1 μ/(x 1 + x 2 1) = 0, x 2 = 4x 2 μ/(x 1 + x 2 1) = 0

157 Solving, we get x 1 = 1 ± 1 + 3μ 3 and x 2 = 1 ± 1 + 3μ 6 Since the negative signs lead to infeasibility, we x 1 = 1+ 1+3μ 3 and x 2 = 1+ 1+3μ 6 Starting with µ =1, β=0.1 and x 1 =(0,0) and using a tolerance of 0.005 (say), we have the following: Iter. (i) µ i x i+1 g(x i+1 ) µ i B(x i+1 ) 1 2 3 4 5 1 0.1 0.01 0.001 0.0001 (1.0, 0.5) (0.714, 0.357) (0.672, 0.336) (0.6672, 0.3336) (0.6666, 0.3333) -0.5-0.071-0.008-0.0008-0.0001 0.693 0.265 0.048 0.0070 0.0009 Thus the optimal solution is x * = (2/3, 1/3).

158 Penalty Function Methods and Lagrange Multipliers Consider the penalty function approach to the problem below Minimize f(x) st g j (x) 0; j = 1,2,,m h j (x) = 0; j = m+1,m+2,,l x k R n. Suppose we use the usual interior penalty function described earlier, with p=2. The auxiliary function that we minimize is then given by P(x) = f(x) + µp(x) = f(x) + µ{ j [Max(0, g j (x))] 2 + j [h j (x)] 2 } = f(x) + { j µ[max(0, g j (x))] 2 + j µ[h j (x)] 2 } The necessary condition for this to have a minimum is that P(x) = f(x) + µ p(x) = 0, i.e., f(x) + j 2µ[Max(0, g j (x)] g j (x) + j 2µ[h j (x)] h j (x) = 0 (1) Suppose that the solution to (1) for a fixed µ (say µ k >0) is given by x k. Let us also designate 2µ k [Max{0, g j (x k )}] = λ j (µ k ); j=1,2,,m (2) 2µ k [h j (x k )] = λ j (µ k ); j=m+1,,l (3) so that for µ=µ k we may rewrite (1) as

159 f(x) + j λ j (µ k ) g j (x) + j λ j (µ k ) h j (x) = 0 (4) Now consider the Lagrangian for the original problem: L(x,λ) = f(x) + j λ j g j (x) + j λ j h j (x) The usual K-K-T necessary conditions yield f(x) + j=1..m {λ j g j (x)} + j=m+1..l {λ j h j (x)} = 0 (5) plus the original constraints, complementary slackness for the inequality constraints and λ j 0 for j=1,,m. Comparing (4) and (5) we can see that when we minimize the auxiliary function using µ=µ k, the λ j (µ k ) values given by (2) and (3) estimate the Lagrange multipliers in (5). In fact it may be shown that as the penalty function method proceeds and µ k and the x k x *, the optimum solution, the values of λ j (µ k ) λ * j, the optimum Lagrange multiplier value for constraint j. Consider our example on page 153 once again. For this problem the Lagrangian is given by L(x,λ) =x 1 2 + 2x 2 2 + λ(1-x 1 -x 2 ). The K-K-T conditions yield L/ x 1 = 2x 1 -λ = 0; L/ x 2 = 4x 2 -λ = 0; λ(1-x 1 -x 2 )=0 Solving these results in x 1 * =2/3; x 2 * =1/3; λ * =4/3; (λ=0 yields an infeasible solution).

Recall that for fixed µ k the optimum value of x k was [2µ k /(2+3µ k ) µ k /(2+3µ k )] T. As we saw, when µ k, these converge to the optimum solution of x * = (2/3,1/3). 160 Now, suppose we use (2) to define λ(µ) = 2µ[Max(0, g j (x k )] = 2µ[1 - {2µ/(2+3µ)} - {µ/(2+3µ)}] (since g j (x k )>0 if µ>0) = 2µ[1 - {3µ/(2+3µ)}] = 4µ/(2+3µ) Then it is readily seen that Lim µ λ(µ) = Lim µ 4µ/(2+3µ) = 4/3 = λ * Similar statements can also be made for the barrier (interior penalty) function approach, e.g., if we use the log-barrier function we have P(x) = f(x) + µ p(x) = f(x) + µ j -log(-g j (x)), so that P(x) = f(x) - j {µ/g j (x)} g j (x) = 0 (6) If (like before) for a fixed µ k we denote the solution by x k and define -µ k /g j (x k ) = λ j (µ k ), then from (6) and (5) we see that λ j (µ k ) approximates λ j. Furthermore, as µ k 0 and the x k x *, it can be shown that λ j (µ k ) λ j * For our example (page 156) -µ k /g j (x k ) =µ k / 1 1+ 1+3μ 3 1+ 1+3μ = 6-2µ k /(1-1 + 3μ k ) 4/3, as µ k 0.

161 Penalty and Barrier function methods have been referred to as SEQUENTIAL UNCONSTRAINED MINIMIZATION TECHNIQUES (SUMT) and studied in detail by Fiacco and McCormick. While they are attractive in the simplicity of the principle on which they are based, they also possess several undesirable properties. When the parameters µ are very large in value, the penalty functions tend to be ill-behaved near the boundary of the constraint set where the optimum points usually lie. Another problem is the choice of appropriate µ 1 and β values. The rate at which µ i change (i.e. the β values) can seriously affect the computational effort to find a solution. Also as µ increases, the Hessian of the unconstrained function often becomes ill-conditioned. Some of these problems are addressed by the so-called "multiplier" methods. Here there is no need for µ to go to infinity, and the unconstrained function is better conditioned with no singularities. Furthermore, they also have faster rates of convergence than SUMT.

162 Ill-Conditioning of the Hessian Matrix Consider the Hessian matrix of the Auxiliary function P(x)=x 1 2 +2x 2 2 +µ(1-x 1 -x 2 ) 2 : H = 2 + 2µ 2µ 2µ 4 + 2µ. Suppose we want to find its eigenvalues by solving H-λI = (2+2µ-λ)*(4+2µ-λ) - 4µ 2 = λ 2 (6+4µ)λ + (8+12µ) = 0 This quadratic equation yields λ = (3 + 2µ ) ± 4µ 2 + 1 Taking the ratio of the largest and the smallest eigenvalue yields (3 + 2µ ) + (3 + 2µ ) 2 4µ + 1 2 4µ + 1. It should be clear that as µ, the limit of the preceding ratio also goes to. This indicates that as the iterations proceed and we start to increase the value of µ, the Hessian of the unconstrained function that we are minimizing becomes increasingly ill-conditioned. This is a common situation and is especially problematic if we are using a method for the unconstrained optimization that requires the use of the Hessian.

163 MULTIPLIER METHODS Consider the problem: Min f(x), st g j (x) 0, j=1,2,...,m. In multiplier methods the auxiliary function is given by m P(x) = f(x) + ½ μ j Max{0, g(x) + θ i j } 2 j=1 where µ j >0 and θ j i 0 are parameters associated with the j th constraint (i iteration no.). This is also often referred to as the AUGMENTED LAGRANGIAN function. Note that if θ j i =0 and µ j =µ, this reduces to the usual exterior penalty function. The basic idea behind multiplier methods is as follows: Let x i be the minimum of the auxiliary function P i (x) at some iteration i. From the optimality conditions we have m P i x i = f x i + μ j MMM 0, g j x i + θ j i g j (x i ) j=1 Now, MMM 0, g j x i + θ j i = θ j i + MMM θ j i, g j x i. So, P i x i = 0 implies m f x i + μ j θ i j g j (x i ) + μ j MMM θ i j, g j x i g j (x i ) = 0 j=1 m j=1 Let us assume for a moment that θ j i are chosen at each iteration i so that they satisfy the following: MMM θ j i, g j x i = 0 (1) It is easily verified that (1) is equivalent to requiring that θ j i 0, g j x i 0 and θ j i g j x i = 0 (2)

164 Therefore as long as (2) is satisfied, we have for the point x i that minimize P i (x) m P i x i = f x i + j=1 μ j θ i j g j (x i ) = 0 (3) If we let μ j θ i j = λ i j and use the fact that µ j >0, then (2) reduces to λ i j 0, g j x i 0 and λ i j g j x i = 0, j (A) and (3) reduces to m f x i + j=1 λ i j g j (x i ) = 0. (B) It is readily seen that (A) and (B) are merely the KARUSH-KUHN-TUCKER necessary conditions for x i to be a solution to the original problem below!! Min f(x), st g j (x) 0, j=1,2,...,m. We may therefore conclude that x i = x and μ j θ i j = μ j θ j = λ j Here x * is the solution to the problem, and λ * j is the optimum Lagrange multiplier associated with constraint j. From the previous discussion it should be clear that at each iteration i, θ j i should be chosen in such a way that MMM θ j i, g j 0, which results in x i x *. Note that x i is obtained here by minimizing the auxiliary function with respect to x.

ALGORITHM: A general algorithmic approach for the multiplier method may now be stated as follows: STEP 0: Set i=0, choose vectors x i, µ and θ i. 165 STEP 1: Set i=i+1. STEP 2: Starting at x i-1, Minimize P i (x) to find x i. STEP 3: Check convergence criteria and go to Step 4 only if the criteria are not satisfied. STEP 4: Modify θ i based on satisfying (1). Also modify µ if necessary and go to Step 2. (Usually θ 0 is set to 0 ) One example of a formula for changing θ i is the following: θ i+1 = θ i + mmm g j x i, θ j i

166 PRIMAL METHODS By a primal method we mean one that works directly on the original constrained problem: Min f(x) st g j (x) 0 j=1,2,...,m. Almost all methods are based on the following general strategy: Let x i be a design at iteration i. A new design x i+1 is found by the expression x i+1 = x i + α i d i, where α i is a step size parameter and d i is a search direction (vector). The direction vector d i is typically determined by an expression of the form: d i = β 0 f x i + β j g j x i j J ε where f and g j are gradient vectors of the objective and constraint functions and J ε is an active set" given by J ε ={j g j (x i )=0}, or more commonly ={j g j (x i )+ε 0, ε >0}. Unlike with transformation methods, it is evident that here the gradient vectors of individual constraint functions need to be evaluated. This is a characteristic of all primal methods.

167 METHOD OF FEASIBLE DIRECTIONS The first class of primal methods we look at are the feasible directions methods, where each x i is within the feasible region. An advantage is that if the process is terminated before reaching the true optimum solution (as is often necessary with large-scale problems) the terminating point is feasible and hence acceptable. The general strategy at iteration i is: (1) Let x i be a feasible point. (2) Choose a direction d i so that a) x i +αd i is feasible at least for some "sufficiently" small α>0, and b) f(x i +αd i ) < f(x i ). (3) Do an unconstrained optimization Min α f(x i +αd i ) to obtain α * =α i and hence x i+1 = x i +α i d i DEFINITION: For the problem Minimize f(x), st x X d ( 0) is called a feasible direction at x' X if δ>0 (x'+αd) X for α [0,δ) X x' X x' d feasible directions not feasible directions

168 Further, if we also have f(x'+αd) < f(x') for all α [0,α'), α' <δ, then d is called an improving feasible direction. Under differentiability, recall that this implies f T (x') d < 0 Let F x' = {d f T (x') d < 0}, and D x' = {d δ>0 (x'+αd) X for all α [0,δ)}, Thus F x' is the set of improving directions at x', and D x' is the set of feasible directions at x'. If x * is a local optimum then F x* D x* = φ as long as a constraint qualification is met. In general, for the problem Minimize f(x), st g j (x) 0, j=1,2,...,m. let J x' ={j g j (x')=0} (Index set of active constraints) We can show that the set of feasible directions at x' is D x' = {d g T j (x') d < 0 for all j J x' } NOTE: If g j (x) is a linear function, then the strict inequality (<) used to define the set D x' above can be relaxed to an inequality ( ).

169 Minimize f(x), st g j (x) 0, j=1,2,,m Geometric Interpretation g j (x * ) g j (x * ) x * d T g j (x * )=0 g j (x)=0 d x * g j (x)=0 d d T g j (x * )<0 d is a feasible direction (i) d is tangent to the constraint boundary (ii) In (ii) d any positive step in this direction is infeasible (however we will often consider this a feasible direction ) FARKAS LEMMA: Given A R m n, b R m, x R n, y R m, the following statements are equivalent to each other: 1. y T A 0 y T b 0 2. z such that Az=b, z 0 y T A 0 y j H j- where H j- is the closed half-space on the side of H j that does not contain A j So y T A 0 y T b 0 simply implies that ( j H j- ) H b- H 1 H 2 H 3 j H j- Suppose H j is the hyperplane through the origin that is orthogonal to A j H b A 1 b A 2 A 3

170 Application to NLP Let b - f(x * ) A j g j (x * ) y d (direction vector), z j λ j for j J x* {j g j (x * )=0} Farkas Lemma then implies that (1) d T g j (x * ) 0 j J x* -d T f(x * ) 0, i.e., d T f(x * ) 0 (2) λ j 0 such that j Jx* λ j g j (x * ) = - f(x * ) are equivalent! Note that (1) indicates that directions satisfying d T g j (x * ) 0 j J x* are feasible directions directions satisfying d T f(x * ) 0 are ascent (non-improving) directions On the other hand (2) indicates the K-K-T conditions. They are equivalent! So at the optimum, there is no feasible direction that is improving - f (x * ) g 3 (x * ) g 1 (x * ) Cone generated by gradients of tight constraints x * g 3 (x)=0 Feasible region g 2 (x)=0 g 1 (x)=0 K-K-T implies that the steepest descent direction is in the cone generated by gradients of tight constraints

171 Similarly for the general NLP problem Minimize f(x) st g j (x) 0, j=1,2,...,m h k (x) = 0, k=1,2,...,p the set of feasible directions is D x' = {d g T j (x') d < 0 j J x', and h T k (x') d = 0 k} ==================================================== In a feasible directions algorithm we have the following: STEP 1 (direction finding) To generate an improving feasible direction from x', we need to find d such that F x' D x' φ, i.e., f T (x') d < 0 and g T j (x') d < 0 for j J x', h T k (x') d = 0 k We therefore solve the subproblem Minimize f T (x') d st g T j (x') d < 0 for j J x' ( 0 for j g j linear) h T k (x') d = 0 for all k, along with some normalizing constraints such as -1 d i 1 for i=1,2,...,n or d 2 = d T d 1. If the objective of this subproblem is negative, we have an improving feasible direction d i.

In practice, the actual subproblem we solve is slightly different since strict inequality (<) constraints are difficult to handle. Let z = Max [ f T (x') d, g T j (x') d for j J x' ]. Then we solve: 172 Minimize z st f T (x') d z g T j (x') d z for j J h T k (x') d = 0 for k=1,2,...,p, -1 d i 1 for i=1,2,...,n If (z *,d * ) is the optimum solution for this then a) z * < 0 d =d * is an improving feasible direction b) z = 0 x * is a Fritz John point (or if a CQ is met, a K-K-T point) (Note that z * can never be greater than 0) STEP 2: (line search for step size) Assuming that z * from the first step is negative, we now solve Min f(x i +αd i ) st g j (x i +αd i ) 0, α 0 This can be rewritten as Min f(x i +αd i ) st 0 α α max where α max = supremum {α g j (x i +αd i ) 0, j=1,2,...,m}. Let the optimum solution to this be at α * =α i. Then we set x i+1 = (x i +αd i ) and return to Step 1.

NOTE: (1) In practice the set J x' is usually defined as J x' ={ j g j (x i )+ε 0}, where the tolerance ε i is referred to as the "constraint thickness," which may be reduced as the algorithm proceeds. (2) This procedure is usually attributed to ZOUTENDIJK EXAMPLE 173 Minimize 2x 1 2 + x 2 2-2x 1 x 2-4x 1-6x 2 st x 1 + x 2 8 For this, we have -x 1 + 2x 2 10 -x 1 0 -x 2 0 (A QP ) g 1 (x) = 1 1, g 2(x) = 1 2, g 3(x) = 1 0, g 0 4(x) = 1, and f(x) = 4x 1 2x 2 4 2x 2 2x 1 6. Let us begin with x 0 = 0 0, with f(x0 )=0 ITERATION 1 Min z J={3,4}. STEP 1 yields Min z st f T (x 1 ) d z d 1 (4x 1-2x 2-4) + d 2 (2x 2-2x 1-6) z g 3 T (x i ) d z -d 1 z g 4 T (x i ) d z -d 2 z -1 d 1, d 2 1 d 1,d 2 [-1,1]

174 i.e., Min z st -4d 1-6d 2 z, -d 1 z, -d 2 z d 1,d 2 [-1,1] yielding z * = -1 (<0), with d * = d 0 = 1 1 STEP 2 (line search): x 0 + αd 0 = 0 0 + α 1 1 = α α Thus α max = {α 2α 8, α 10, -α 0, -α 0} = 4 We therefore solve: Minimize f(x 0 +αd 0 ), st 0 α 4 α = α 0 =4 x 1 = x 0 + α 0 d 0 = 4 4, with f(x1 )= -24. ITERATION 2 J={1}. STEP 1 yields Min z st d 1 (4x 1-2x 2-4) + d 2 (2x 2-2x 1-6) z d 1 + d 2 z -1 d 1, d 2 1 i.e., Min z st 4d 1-6d 2 z, d 1 + d 2 z, d 1,d 2 [-1,1] yielding z * = -4 (<0), with d * = d 1 = 1 0. STEP 2 (line search): x 1 + αd 1 = 4 α + α 1 = 4 4 0 4

175 Thus α max = {α 8-α 8, α-4+8 10, α-4 0, -4 0} = 4 We therefore solve: Minimize 2(4-α) 2 + 4 2 2(4-α)4 4(4-α) 6(4), st 0 α 4. α =α 1 =1 x 2 = x 1 + α 1 d 1 = 3 4, with f(x2 )= -26. ITERATION 3 J={φ}. STEP 1 yields Min z st d 1 (4x 1-2x 2-4) + d 2 (2x 2-2x 1-6) z -1 d 1, d 2 1 i.e., Min z st -4d 2 z, d 1,d 2 [-1,1] yielding z * = -4 (<0), with d * = d 2 = 0 1. STEP 2 (line search): x 2 + αd 2 = 3 4 + α 0 1 = 3 4 + α Thus α max = {α 7+α 8, 5+α 10, -3 0, -4-α 0} = 1 We therefore solve: Minimize f(x 2 +αd 2 ), st 0 α 1 i.e., Minimize 2(3) 2 + (4+α) 2 2(3)(4+α) 4(3) 6(4+α), st 0 α 1 α =α 2 =1 x 3 = x 2 + α 2 d 2 = 3 5, with f(x3 )= -29.

176 ITERATION 4 J={1}. STEP 1 yields Min z st d 1 (4x 1-2x 2-4) + d 2 (2x 2-2x 1-6) z d 1 + d 2 z -1 d 1, d 2 1 i.e., Min z st -2d 1-10d 2 z, d 1 + d 2 z, d 1,d 2 [-1,1] yielding z * = 0, with d * = 0 0. STOP Therefore the optimum solution is given by x = 3 5, with f(x* )= -29. 8 path followed by algorithm 7 6 -x 1 +2 x 2 =10 5 x 3 4 3 x 2 x 1 feasible region 2 x 1 + x 2 =8 1 x 0 1 2 3 4 5 6 7 8

177 GRADIENT PROJECTION METHOD (ROSEN) Recall that the steepest descent direction is - f(x). However, for constrained problems, moving along - f(x) may destroy feasibility. Rosen's method works by projecting - f(x) on to the hyperplane tangent to the set of active constraints. By doing so it tries to improve the objective while simultaneously maintaining feasibility. It uses d=-p f(x) as the search direction, where P is a projection matrix. Properties of P (n n matrix) 1) P T = P and P T P = P (i.e., P is idempotent) 2) P is positive semidefinite 3) P is a projection matrix if, and only if, I-P is also a projection matrix. 4) Let Q=I-P and p= Px 1, q=qx 2 where x 1, x 2 R n. Then (a) p T q= q T p =0 (p and q are orthogonal) (b) Any x R n can be uniquely expressed as x=p+q, where p=px, q=(i-p)x q x 2 x given x, we can find p and q p x 1

178 Consider the simpler case where all constraints are linear. Assume that there are 2 linear constraints intersecting along a line as shown below. P(- f) - f g 1 (I-P)(- f) g 1 (x)=0 g 2 (x)=0 g 2 Obviously, moving along - f would take us outside the feasible region. Say we project - f on to the feasible region using the matrix P. THEOREM: As long as P is a projection matrix and P f 0, d=-p f will be an improving direction. PROOF: f T d = f T (-P f) = - f T P T P f = - P f 2 < 0. (QED) For -P f to also be feasible we must have g 1 T (-P f) and g 2 T (-P f) 0 (by definition ).

179 Say we pick P such that g 1 T (-P f) = g 2 T (-P f) = 0, so that -P f is a feasible direction). Thus if we denote M as the (2 n) matrix where Row 1 is g 1 T and Row 2 is g 2 T, then we have M(-P f)= 0 (*) To find the form of the matrix P, we make use of Property 4(b) to write the vector - f as - f = P(- f) + [I-P](- f) = -P f - [I-P] f Now, - g 1 and - g 2 are both orthogonal to -P f, and so is [I-P](- f). Hence we must have [I-P](- f) = - [I-P] f = λ 1 g 1 + λ 2 g 2 -[I-P] f = M T λ, where λ= λ 1 λ 2 -M[I-P] f = MM T λ -(MM T ) -1 M[I-P] f = (MM T ) -1 MM T λ =λ λ = -{ (MM T ) -1 M f - (MM T ) -1 MP f } λ = -{ (MM T ) -1 M f + (MM T ) -1 M(-P f) } λ = -(MM T ) -1 M f (from (*) above M(-P f)=0 ) Hence we have - f = -P f - [I-P] f = -P f + M T λ = -P f + M T (MM T ) -1 M f i.e., P f = f - M T (MM T ) -1 M f = [I - M T (MM T ) -1 M] f i.e., P = [I - M T (MM T ) -1 M]

180 Question: What if P f(x) = 0? Answer: Then 0 = P f = [I M T (MM T ) -1 M] f = f + M T w, where w = -(MM T ) -1 M f. If w 0, then x satisfies the Karush-Kuhn-Tucker conditions and we may stop; if not, a new projection matrix P could be identified such that d= -P f is an improving feasible direction. In order to identify this matrix P we merely pick any component of w that is negative, and drop the corresponding row from the matrix M. Then we use the usual formula to obtain P. ==================== Now consider the general problem Minimize f(x) st g j (x) 0, j=1,2,...,m h k (x) = 0, k=1,2,...,p The gradient projection algorithm can be generalized to nonlinear constraints by projecting the gradient on to the tangent hyperplane at x (rather than on to the surface of the feasible region itself).

181 STEP 1: SEARCH DIRECTION Let x i be a feasible point and let J be the "active set", i.e., J = {j g j (x i )=0}, or more practically, J = {j g j (x i )+ε 0}. Suppose each j J is approximated using the Taylor series expansion by: g j (x) = g j (x i ) + (x-x i ) g j (x i ). Notice that this approximation is a linear function of x with slope g j (x i ). Let M matrix whose rows are g T j (x i ) for j J (active constraints) and h T k (x i ) for k=1,2,...,p (equality constraints) Let P=[I - M T (MM T ) -1 M] ( projection matrix). If M does not exist, let P=I. Let d i = -P f(x i ). a) If d i =0 and M does not exist STOP b) If d i =0 and M exists find w = u v = -(MMT ) -1 M f(x i ) where u corresponds to g (inequality constraints) and v to h (equality constraints). If u>0 STOP, else delete the row of M corresponding to some u j <0 and return to Step 1. c) If d i 0 go to Step 2.

182 STEP 2. Solve STEP SIZE (Line Search) Minimize 0 α α mmm f x i + αd i where α max = Supremum {α g j (x i +αd i ) 0, h j (x i +αd i ) =0}. Call the optimal solution α * and find x i+1 = x i +α * d i. If all constraints are not linear make a "correction move" to return x into the feasible region. The need for this is shown below. Generally, it could be done by solving g(x)=0 starting at x i+1 using the Newton Raphson approach, or by moving orthogonally from x i+1 etc. x 2 O.F. contours x 2 O.F. contours f g 2 =0 P f f g 1 g 1 =0 P f x i+1 correction move g 1 =0 x 1 x 1 g 1, g 2 are linear constraints NO CORRECTION REQD. g 1 is a nonlinear constraint REQUIRES CORRECTION

183 LINEARIZATION METHODS The general idea of linearization methods is to replace the solution of the NLP by the solution of a series of linear programs which approximate the original NLP. The simplest method is RECURSIVE LP: Transform Min f(x), st g j (x), j=1,2,...,m, into the LP Min {f(x i ) + (x-x i ) T f(x i )} st g j (x i ) + (x-x i ) T g j (x i ) 0, for all j. Thus we start with some initial x i where the objective and constraints (usually only the tight ones) are linearized, and then solve the LP to obtain a new x i+1 and continue... Note that f(x i ) is a constant and x-x i =d implies the problem is equivalent to Min d T f(x i ) st d T g j (x i ) -g j (x i ), for all j. and this is a direction finding LP problem, and x i+1 =x i +d implies that the step size=1.0 EXAMPLE: Min f(x)= 4x 1 x 2 2-12, st g 1 (x) = x 2 1 + x 2 2-25 0, g 2 (x) = -x 2 1 - x 2 2 +10x 1 + 10x 2-34 0 If this is linearized at the point x i =(2,4), then since

f x i 4 4 = = 2x 2 8 ; g 1 x i = 2x 1 = 4 2x 2 8 ; g 2 x i = 2x 1 + 10 2x 2 + 10 = 6 2 it yields the following linear program (VERIFY ) Min f (x) = 4x 1 8x 2 + 4, st g 1 (x) = 4x 1 + 8x 2-45 0, g 2 (x) = 6x 1 + 2x 2-14 0 184 x * f =-30 f=-20 f=-10 f=0 f =0 g 1 =0 g 2 =0 g 1 =0 g 2 =0 The method however has limited application since it does not converge if the local minimum occurs at a point that is not a vertex of the feasible region; in such cases it oscillates between adjacent vertices. To avoid this one may limit the step size (for instance, the Frank-Wolfe method minimizes f between x i and x i +d to get x i+1 ).

185 RECURSIVE QUADRATIC PROGRAMMING (RQP) RQP is similar in logic to RLP, except that it solves a sequence of quadratic programming problems. RQP is a better approach because the second order terms help capture curvature information. Min d T L(x i ) + ½ d T Bd st d T g j (x i ) -g j (x i ) j where B is the Hessian (or an approximation of the Hessian) of the Lagrangian function of the objective function f at the point x i. Notice that this a QP in d with linear constraints. Once the above QP is solved to get d i, we obtain x i by finding an optimum step size along x i +d i and continue. The matrix B is never explicitly computed --- it is usually updated by schemes such as the BFGS approach using information from f(x i ) and f(x i+1 ) only. (Recall the quasi-newton methods for unconstrained optimization)

186 KELLEY'S CUTTING PLANE METHOD One of the better linearization methods is the cutting plane algorithm of J. E. Kelley, developed for convex programming problems. Suppose we have a set of nonlinear constraints g j (x) 0 for j=1,2,...,m that determine the feasible region G. Suppose further that we can find a polyhedral set H that entirely contains the region determined by these constraints, i.e., G H. h 2 =0 h 3 =0 g 3 =0 G g 2 =0 h 4 =0 g 1 =0 H h 1 =0 G: g j (x): nonlinear ffffffff rrrrrr h j (x): linear; hence H is polyhedral In general, a cutting plane algorithm would operate as follows: 1. Solve the problem with linear constraints. 2. If the optimal solution to this problem is feasible in the original (nonlinear) constraints then STOP; it is also optimal for the original problem. 3. Otherwise add an extra linear constraint (i.e., an extra line/hyperplane) so that the current optimum point (for the linear constraints) becomes infeasible for the new problem with the added linear constraint (so we "cut out" part of the infeasibility). Now return to Step 1.

187 JUSTIFICATION Step 1: It is in general easier to solve problems with linear constraints than ones with nonlinear constraints. Step 2: G is determined by g j (x) 0, j=1,...,m, where each g j is convex, while H is determined by h k 0 k, where each h k is linear. G is wholly contained inside the polyhedral set H. Thus every point that satisfies g j (x) 0 automatically satisfies h k (x) 0, but not vice-versa. Thus G places "extra" constraints on the design variables and therefore the optimal solution with G can never be any better than the optimal solution with H. Therefore, if for some region H, the optimal solution x * is also feasible in G, it MUST be optimal for G also. (NOTE: In general, the optimal solution for H at some iteration will not be feasible in G). Step 3: Generating a CUT In Step 2, let g x i = Maximum j J g j x i, where J is the set of violated constraints, J={j g j (x)>0}, i.e., g x i is the value of the most violated constraint at x i. By the Taylor series approximation around x i, g (x) = g x i + x x i T g x i + ½ [x x i ] T H(x )[x x i ] g (x) g x i + x x i T g (x i ), for every x R n (since g is convex).

188 If g x i = 0 then g (x) g x i But since g is violated at x i, g x i > 0. Therefore g (x) > 0 x R n. g is violated for all x, the original problem is infeasible. If g x i 0, then consider the following linear constraint: x x i T g x i g x i i. e., h(x) = g x i + x x i T g x i 0 ( ) (Note that x i, g x i and g x i are all known ) The current point x i is obviously infeasible in this constraint --- since h(x i ) 0 implies that g x i + x i x i T g x i = g x i 0, which contradicts the fact that g is violated at x i, (i.e, g (x i ) >0). So, if we add this extra linear constraint, then the optimal solution would change because the current optimal solution would no longer be feasible for the new LP with the added constraint. Hence ( ) defines a suitable cutting plane. NOTE: If the objective for the original NLP was linear, then at each iteration we merely solve a linear program!

189 An Example (in R 2 ) of how a cutting plane algorithm might proceed. (--------- cutting plane). x h 4 True optimum x * for G h 2 h 5 h 4 x h 2 h 1 G h 1 G H h 3 H h 3 Nonnegativity + 3 linear constraints Nonnegativity + 4 linear constraints h 4 h 6 h 5 h 2 x h 4 h 5 x =x * h 6 h 2 h 1 G h 1 G H h 3 H h 3 Nonnegativity + 5 linear constraints Nonnegativity + 6 linear constraints