0% found this document useful (0 votes)
34 views13 pages

SQ P Methods

The document discusses sequential quadratic programming (SQP) for solving constrained optimization problems. SQP works by modeling the problem at each point as a quadratic subproblem to find the next point. It also discusses using quasi-Newton methods to approximate the Hessian, as well as penalty and barrier methods for handling constraints.

Uploaded by

Mare Feat Joka
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views13 pages

SQ P Methods

The document discusses sequential quadratic programming (SQP) for solving constrained optimization problems. SQP works by modeling the problem at each point as a quadratic subproblem to find the next point. It also discusses using quasi-Newton methods to approximate the Hessian, as well as penalty and barrier methods for handling constraints.

Uploaded by

Mare Feat Joka
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

4.

Sequential Quadratic Programming (SQP)

To understand the use of SQP in problems with general constraints, we begin by considering the equality-constrained problem, minimize subject to

f (x) cj (x) = 0, j = 1, . . . , m

The idea of SQP is to model this problem at the current point xk by a quadratic subproblem and to use the solution of this subproblem to nd the new point xk+1. SQP is in a way the application of Newtons method to the KKT optimality conditions.

The Lagrangian function for this problem is L(x, ) = f (x) T c(x). We dene the Jacobian of the constraints by A(x) =
T

c(x) = [ c1(x), . . . ,

cm(x)]

(1)

which is an n m matrix and g(x) =

f (x) is an n-vector as before.

Applying the rst order KKT conditions to this problem we obtain

g(x) A(x) =0 c(x)

(2)

This set of nonlinear equations can be solved using Newtons method,

W (x, ) A(x)

A(x)T 0

pk gk + AT k k = p ck
2 xx L(x, )

(3) and the Newton

where the Hessian of the Lagrangian is denoted by W (x, ) = step from the current point is given by xk xk+1 p = + k . p k k+1

(4)

An alternative way of looking at this formulation of the SQP is to dene the following quadratic problem at (xk , k ) minimize subject to

1 T T p Wk p + gk p 2 Ak p + ck = 0

This problem has a unique solution that satises

Wk p + gk AT k = 0 k Ak p + ck = 0
By writing this in matrix form, we see that pk and k can be identied as the solution of the Newton equations we derived previously.

Wk Ak

AT k 0

pk gk = k . c k+1

(5)

This problem is equivalent to (3), but the second set of variables, is now the actual Lagrange multipliers k+1 instead of the Lagrange multiplier step, p. To obtain (3) simply substitute k by (p k ) in (5).

We can extend the SQP method to the general nonlinear optimization problem minimize subject to

f (x) cj (x) = 0, ck (x) 0, j = 1, . . . , m k = 1, . . . , m

To dene the subproblem we now linearize both the inequality and equality constraints and obtain, minimize subject to

1 T T p W k p + gk p 2 cj (x) p + cj (x) = 0, ck (x) p + ck (x) 0,


T T

j = 1, . . . , m k = 1, . . . , m

4.4.1

Quasi-Newton Approximations

Any SQP method relies on a choice of Wk (an approximation of the Hessian of the Lagrangian) in the quadratic model. When Wk is exact, then the SQP becomes the Newton method applied to the optimality conditions. One way to approximate the Lagrangian Hessian would be to use a quasi-Newton approximation, such as the BFGS update formula. We could dene,

sk = xk+1 xk ,

yk =

x L(xk+1 , k+1 )

x L(xk , k+1 ),

(6)

and then compute the new approximation Bk+1 using the same formula used in the unconstrained case. If 2 L is positive denite at the sequence of points xk , the method will converge rapidly, just xx as in the unconstrained case. If, however, 2 L is not positive denite, then using the BFGS xx update may not work well.

To ensure that the update is always well-dened the damped BFGS updating for SQP was devised. Using this scheme, we set

rk = k yk + (1 k )Bk sk ,
where the scalar k is dened as 8 <1 k = 0.8sT Bk sk : T k T Then we can update Bk+1 using,

(7)

if sT yk 0.2sT Bk sk , k k if sT yk < 0.2sT Bk sk . k k (8)

s Bk sk s yk k k

Bk+1

T rk rk Bk sk sT Bk k + T , = Bk sT Bk sk sk r k k

(9)

which is the standard BFGS update formula with yk replaced by rk . This guarantees that the Hessian approximation is positive denite. Note that when k = 1 we have Bk+1 = Bk , and that k = 1 yields an unmodied BFGS update. The modied method thus produces an interpolation between the current Bk and the one corresponding to BFGS. The choice of k ensures that the new approximation stays close enough to the current approximation to guarantee positive deniteness.

A line search SQP algorithm: 1. Choose parameters 0 < < 0.5, 0 < < 1 and the initial point (x0, 0). 2. Initialize the Hessian estimate, say B0 = I . 3. Evaluate f0, g0, c0 and A0. 4. Begin major iteration loop in k: 4.1 If termination criteria are met, then stop. 4.2 Compute pk by solving (3). 4.3 Choose k such that pk is a descent direction for at xk . 4.4 Set k = 1. i. While (xk + k pk , k ) > (xk , k ) + k D(xk , pk ) ii. Set k = k for some 0 < < . 4.5 Set xk+1 = xk + k pk . 4.6 Evaluate fk+1, gk+1, ck+1 and Ak+1. 4.7 Compute k+1 by solving

k+1

h i1 T = Ak+1Ak+1 Ak+1gk+1

4.8 Set sk = k pk , yk = xL(xk+1, k+1) xL(xk , k+1). 4.9 Obtain Bk+1 by updating Bk using a quasi-Newton formula. 5. End major iteration loop. [1]
7

4.5

Penalty and Barrier Methods

One of the ways of replacing a constrained optimization problem with an unconstrained one is by adding a penalty function to the objective function that increases depending on the value of the constraints. There two main types of penalization methods: penalty functions impose a penalty for violating a constrain, and barrier methods other imposes a penalty for reaching the boundary of an inequality constraint.

4.5.1

The Quadratic Penalty Method

This is the simplest type of penalty function. The new objective function will be the original one plus a term for each constraint, which is positive when the current point violates the constraint and zero otherwise. Consider the equality-constrained problem: minimize subject to

f (x) c(x) = 0

where c(x) is an m-dimensional vector whose j -th component is cj (x). We assume that all functions are twice continuously dierentiable. We require a penalty for constraint violation to be a continuous function with the following properties

(x) = 0 (x) > 0

if x is feasible otherwise,

The new objective function is

(x, ) = f (x) + (x),


were is positive and is called the penalty parameter. The quadratic penalty function is dened as

(10)

X 2 T (x, ) = f (x) + hi(x) = f (x) + h(x) h(x) 2 i=1 2

(11)

10

Algorithm: 1. Check termination conditions. if xk satises the optimality conditions, he algorithm terminates successfully. 2. Minimize the penalty function. With xk as the starting point, execute an algorithm to solve the unconstrained subproblem minimize w.r.t. and let the solution of this subproblem be xk+1. 3. Increase the penalty parameter. Set k+1 to a larger value than k , set k = k + 1 and return to 1.

(x, k ) x

11

4.6

The Logarithmic Barrier Method

Penalty function methods generate infeasible points and are therefore not suitable when feasibility has to be strictly maintained. This might be the case if the objective function is undened or ill-dened outside the feasible region. The method is analogous to the external penalty method: it creates a sequence of unconstrained modied dierentiable functions whose unconstrained minima converge to the optimum solution of the constrained problem in the limit. Consider the inequality-constrained problem: minimize subject to

f (x) c(x) 0

where c(x) is an m-dimensional vector whose i-th component is cj (x). Again, we assume that all functions are twice continuously dierentiable. The logarithmic barrier function adds a penalty that tends to innity as x approaches infeasibility. The function is dened as

(x, ) = f (x)

m X i=1

log (cj (x)) ,

(12)

where the positive scalar is called the barrier parameter.


12

References
[1] J. N. Nocedal and S. J. Wright. Numerical Optimization, chapters 12, 18. Prentice Hall, 1999.

13

You might also like