Trust-Region Methods for Sequential Quadratic Programming Contents

Trust-Region Methods for Sequential Quadratic Programming Contents

Trust-Region Methods for Sequential Quadratic Programming Cory Cutsail May 17, 2016 Contents 1 Sequential Quadratic Programming 2 1.1 Background . .2 1.2 A Review of Trust Region Methods . .3 1.3 A Review of Quadratic Programming . .3 1.4 A Note on Merit Functions . .3 1.4.1 The Basics of Merit Functions . .3 1.4.2 Penalty Functions . .4 2 Trust Region Methods for Sequential Quadratic Programming 4 2.1 An Interior-Point Method . .4 2.2 Active-Set Methods . .6 2.2.1 Sequential `1 Quadratic Programming . .6 2.2.2 Sequential Linear-Quadratic Programming . .7 2.2.3 Computing the Step and Updating the Penalty Parameter . .7 2.3 Existing SQP Solvers . .7 2.4 Conclusions . .8 1 1 Sequential Quadratic Programming 1.1 Background Sequential quadratic programming is an iterative method for obtaining the solution to nonlinear optimization problems. Nonlinear optimization problems are of the form ( c (x) = 0; i 2 E min f(x) subject to i n x2R ci(x) ≥ 0; i 2 I n where f and ci are smooth scalar functions over A ⊂ R . There are two primary types of iterative methods for nonlinear optimization; interior point methods and active-set methods. The difference between interior point and active set methods can be thought of as a difference in the direction that they approach an optimum x∗ from different areas of the feasible region. An interior point method will typically begin at a point on the interior of the feasible region, whereas an active set method will typically approach x∗ from a point on @A. Depending on the method being used, sequential quadratic programming (SQP) methods can be either active-set or interior point. We will consider each, moving from a general algorithm for SQP to an interior point method, and move on to consider various active set trust-region SQP methods. Note that a quadratic in Rn will be expressed as f(x) = xT Ax + bT x. Sequential quadratic programming methods have a variety of applications in both academic and industrial problem, and are an active area of research in the field of numerical optimization. A particularly interesting set of examples that could use SQP methods involve optimal control. For example1, consider the control IBVP for the wave equation, @2u c2@2u = (1) @t2 @x2 u(x; 0) = 1(x) (2) @u (x; 0) = φ (x) (3) @t 1 u(0; t) = 2(t) (4) u(L; t) = φ2(t) (5) which can be used to model the vibrations of a one-dimensional string. Suppose we want to minimize the time taken to bring the string to rest. This problem can be represented as T 8 Z (1) − (5) 2 2 < min 2(t) + φ2(t) dt subject to @u (6) :u(x; T ) = (x; T ) = 0 0 @t Stated more plainly, we want to minimize the value of a hyperbolic PDE over time, given constraints (1)-(5), which are the physical model of the wave equation, and a terminal boundary condition that states that the mechanical displacement of the \string" and it's velocity are zero at the conclusion of the time interval, T . Avoiding the details of discretization, we can discretize this optimal control problem, converting it to 8 0 ui = 1(xi) N ! > X <> i = i min k (φi )2 + ( i )2 subject to 1 2 2 2 ui = φi i=1 > M 2 :> i φ1(x; T ) = 0 Before we had a problem in continuous time and space; we now see the same problem in discrete time across M equally spaced gridpoints. Gerdt solves this discretized control problem using a BFGS modified SQP algorithm. Although this requires discretization, that we are able solve the control problem for the 1D wave equation using SQP methods is incredibly valuable. This paper won't focus on optimal control problems, but rather the innerworkings of trust region SQP methods. We begin by reviewing trust region methods, touch briefly on penalty methods to focus on penalty/merit functions, and finally begin to discuss various trust-region methods for sequential quadratic programming. 1See [4] 2 1.2 A Review of Trust Region Methods The general trust region method minimizes an unconstrained objective by imposing an artificial constraint on the step length2. Typically this constraint says that the step length is less than some length, or jjpjj < ∆, where p is the step length, ∆ is the maximum step distance (often thought of as the "radius" of the trust region), and jj · jj is some norm defined in Rn. The formulation of the general trust region method appears as T 1 T min mk(p) = fk + g p + p Bkp subject to jjpjj < ∆ n k p2R 2 2 where mk(p) is here a quadratic model of our original function from the Taylor expansion. Error here is O(jjpjj ) 3 [6], so the problem is well conditioned for small p. Bk is the either the exact Hessian or an approximation. Trust region methods, generally, are robust and have desirable convergence properties. Without giving away too much at the beginning, note that we can guarantee local convergence by establishing the equivalence of the trial step and the SQP step. 1.3 A Review of Quadratic Programming The sequential quadratic programming method solves a quadratic programming subproblem for a model function at each iterate. The general quadratic programming problem can be expressed as ( 1 a x = b ; i 2 E min f(x) = xT Gx + cT x subject to i i i n x2R 2 aixi ≤ bi; i 2 I This is notably similar to the formulation of the trust-region subproblem, where the subproblem was expressed as a quadratic in the step length for the model function. E denotes the set of equality constraints, meaning that constraint satisfaction requires that equality holds. I denotes the set of inequality constraints, meaning that as long as the inequality is satisfied, the constraint is satisfied. We can define the active set of constraint indices as i such that aixi = bi; i 2 E [ I, or the set of constraints for which equality holds. This will be useful later in considering active-set SQP methods. Also important to recall is that an optimum for a quadratic programming problem is given by the solution of the system GAT x −c = A 0 λ b where the leftmost matrix is known as the KKT matrix. We can guarantee a solution when Am×n has rank m and G is positive definite. 1.4 A Note on Merit Functions 1.4.1 The Basics of Merit Functions Merit functions ensure that iterative methods for constrained optimization converge to a solution, instead of blowing up or cycling. Because of the number of moving parts, and the fact that SQP methods solve an approximation of the original objective function, merit functions can be invaluable. An example of a merit function in rootfinding might be the sum of squared residuals; when f(xk+1) − f(xk) > f(xk) − f(xk−1), the iterate k + 1 isn't a good one. We can account for this in finding the next iterate by including the residual n 1 X r(x ) = f (x )2 k 2 i k i=1 n where xk is the current iterate and fi is the i−th index of the vector f(x) 2 R . 2Yuan [7] reviews trust region methods and introduces the SQP subproblem 3 error being jf(xk + p) − mk(p)j 3 1.4.2 Penalty Functions Penalty functions are a special type of merit function that allow a constrained optimization problem to violate it's constraints, but account for this in the function approximation. Penalty functions are frequently used in SQP methods. The `1 penalty function is particularly relevant for SQP methods, and is expressed as ! X X − φ1(x; µ) := f(x) + µ jci(x)j + [ci(x)] i2E i2I Where [·]− := maxf0; ·}. Instead of minimizing an objective function subject to a set of constraints, a penalty method puts the constraints inside the objective. Theorem 17.3 from Nocedal and Wright [6] states that if x∗ is a strict ∗ ∗ local minimizer of some nonlinear programming problem, then x is a local minimizer of φ1(x; µ) for all µ > µ , ∗ ∗ µ = max = jjλ jj1. Then a solution to the penalized NLP also yields a local solution to the general NLP, because a I[E movement from the solution yields an increase in the penalty function. We will show an example of a penalized SQP that uses the `1 penalty further on. 2 Trust Region Methods for Sequential Quadratic Programming SQP methods, as previously stated, are used for the minimization of C2 nonlinear objective functions. The standard approximation method is to take the second-order Taylor approximation of the objective function for the model, that is 1 f(x + p) ≈ f + rf T p + pT r2 f p + O(jjx2jj) = m (x) k k 2 xx k k where the model function at iterate k is denoted mk(x). If we include the constraint that jjpjj ≤ ∆, this model function and attempt to minimize the objective function, we get a problem identical to the original trust region problem. This is why trust-region methods are a nice way to solve SQP problems. Also of concern for the SQP problem are the original constraints. Because the constraints may be nonlinear, we may have to linearize the constraints or introduce a penalty for constraint violation. Below we take these things into consideration. The basic SQP method can also be thought of as Newton's method for systems. If the KKT matrix from the section on quadratic programming is non-singular, we have that a unique minimum for the model function is given by the solution of the system r2 L −AT p −∇f xx k k k = k ; Ak 0 λk+1 −ck meaning that the next iterate is identical to the iterate given by applying Newton's method.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    9 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us