Optimization and Engineering

, Volume 7, Issue 1, pp 5–32 | Cite as

QPSchur: A dual, active-set, Schur-complement method for large-scale and structured convex quadratic programming

  • Roscoe A. Bartlett
  • Lorenz T. BieglerEmail author


We describe an active-set, dual-feasible Schur-complement method for quadratic programming (QP) with positive definite Hessians. The formulation of the QP being solved is general and flexible, and is appropriate for many different application areas. Moreover, the specialized structure of the QP is abstracted away behind a fixed KKT matrix called K o and other problem matrices, which naturally leads to an object-oriented software implementation. Updates to the working set of active inequality constraints are facilitated using a dense Schur complement, which we expect to remain small. Here, the dual Schur complement method requires the projected Hessian to be positive definite for every working set considered by the algorithm. Therefore, this method is not appropriate for all QPs. While the Schur complement approach to linear algebra is very flexible with respect to allowing exploitation of problem structure, it is not as numerically stable as approaches using a QR factorization. However, we show that the use of fixed-precision iterative refinement helps to dramatically improve the numerical stability of this Schur complement algorithm. The use of the object-oriented QP solver implementation is demonstrated on two different application areas with specializations in each area; large-scale model predictive control (MPC) and reduced-space successive quadratic programming (with several different representations for the reduced Hessian). These results demonstrate that the QP solver can exploit application-specific structure in a computationally efficient and fairly robust manner as compared to other QP solver implementations.


Quadratic programming Schur complement Active-set Dual space Object oriented programming 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Bartlett, RA (2001) Object oriented approaches to large-scale nonlinear programming for process systems engineering. PhD thesis, Department of Chemical Engineering, Carnegie Mellon University, Pittsburgh, PAGoogle Scholar
  2. Bartlett RA, Biegler LT, Backstrom J, Gopal V (2002) Quadratic programming algorithms for large-scale model predictive control. J. Process Control 82:775Google Scholar
  3. Bartlett RA, Biegler LT (2003) RSQP++: An object-oriented framework for successive quadratic programming. In Large-scale PDE-Constrained Optimization, Lecture Notes in Computational Science and Engineering 30, Berlin, Springer Verlag, pp 316Google Scholar
  4. Betts JT, Frank PD (1994) A sparse nonlinear optimization algorithm. J. Opt. Theory Appl. 82(3):519–541CrossRefMathSciNetGoogle Scholar
  5. Byrd RH, Nocedal J, Schnabel RB (1994) Representations of quasi-Newton matrices and their use in limited methods. Math. Prog. 63:129–156CrossRefMathSciNetGoogle Scholar
  6. Carlson D (1986) What are Schur complements, anyway? Lin. Alg. Appl. 74:257–275zbMATHGoogle Scholar
  7. Fletcher R (1981) Practical methods of optimization. John Wiley & SonsGoogle Scholar
  8. Gill P, Murray W, Saunders M (1995) User's Guide for QPOPT 1.0: A Fortran Package for Quadratic Programming. Systems Optimization Laboratory, Department of Operations Research, Stanford UniversityGoogle Scholar
  9. Gill PE, Murray W, Saunders MA, Wright MH (1990) A Schur complement method for sparse quadratic programming. In Reliable Numerical Computation, Oxford University Press, pp 113–138Google Scholar
  10. Goldfarb D, Idnani A (1983) A numerically stable dual method for solving strictly convex quadratic programs. Mathematical Programming 27:1–33MathSciNetGoogle Scholar
  11. Golub GH, Van Loan CF (1996) Matrix computations, third edition. Johns Hopkins University PressGoogle Scholar
  12. Nash S, Sofer A (1996) Linear and nonlinear programming. McGraw HillGoogle Scholar
  13. Nocedal J, Wright S (1999) Numerical optimization. Springer, New YorkGoogle Scholar
  14. Powell M (1983) ZQPCVX: A Fortran subroutine for convex quadratic programming. Technical report, Department of Applied Mathematics and Theoretical Physics, Cambridge UniversityGoogle Scholar
  15. Schmid C, Biegler LT (1994) Quadratic programming methods for reduced hessian SQP. Comp. Chem. Eng. 18:817CrossRefGoogle Scholar
  16. Sorensen DC (1977) Updating the Symmetric Indefinite Factorization with Applications in a Modified Newton Method. Technical Report ANL-77-49, Argonne National LaboratoryGoogle Scholar
  17. Vanderbei RJ (1994) An Interior Point code for Quadratic Programming. Technical Report SOR 94-15, Princeton UniversityGoogle Scholar

Copyright information

© Springer Science + Business Media, Inc. 2006

Authors and Affiliations

  1. 1.Sandia National LaboratoriesAlbuquerqueUSA
  2. 2.Department of Chemical EngineeringCarnegie Mellon UniversityPittsburghUSA

Personalised recommendations