OOQP is an object-oriented C++ package, based on a primal-dual
interior-point method, for solving convex quadratic programming
problems (QPs). It contains code that can be used "out of the box" to
solve a variety of structured QPs, including general sparse QPs, QPs
arising from support vector machines, Huber regression problems, and
QPs with bound constraints.
OOQP also can be used as a framework can be used to design efficient
solvers for new classes of structured QPs. Its design allows for easy
substitution of the linear algebra modules, allowing different
standard linear algebra packages to be tried.
Updated 3/9/2008
Authors
Links
- PCx: Interior-point
code for linear programming.
- Online documentation for
HCL: The Hilbert Class Library (Mark Gockenbach and Bill Symes).
- Overview of
rSQP++: ReducedSpaceSQP (postscript) (Roscoe Bartlett). An
object-oriented package implementing SQP methods for nonlinear programming.
- PETSc:
Portable, Extensible Toolkit for Scientific Computation (Satish Balay,
Lois Curfman McInnes, Bill Gropp, Barry Smith).
Tools for linear algebra and PDE calculations on advanced
computer architectures.
-
HSL Archive,
which contains the MA27 and MA57 codes that are used in
different implementations of OOQP to solve the
symmetric indefinite systems that arise at each interior-point iteration.
Downloads
If you would like a copy of OOQP, go to the OOQP
Request Form and fill it out. This will give you access to the
OOQP download page.
Having downloaded the tarball, consult the file INSTALL in the OOQP
directory. The contents of this file are also listed here.
The file OOQP/doc/index.html in your unpacked distribution contains
links to comprehensive information on installation of the various
instantiations of OOQP. Point your browser to this file by typing an
entry of the following form in the navigator URL window:
file:/complete-path-to-directory/OOQP/doc/index.html
Updates
See the log of changes for the various releases.
Auxiliary Software
If you wish to use OOQP's solvers for general sparse QP, you will need
to obtain a copy of MA27 from the
HSL Archive
before proceeding. Complete instructions are given in the INSTALL file for OOQP.
If you wish to install the Matlab interface to OOQP's solvers, you may
run into compatibility problems with Mex, Matlab, and your operating
system. We have prepared precompiled Mex files for operating systems
such as Solaris and Linux, which you can obtain by
.
(Before these files will be sent to you, you are required
to download MA27 from the HSL Archive
site; OOQP's authors will be notified when you have done so.)
Copyright
OOQP is copyrighted to the University of Chicago. Here is the Copyright Statement.
Documentation
Acknowledgments
Additional coding and maintenance for releases 0.99.10 through 0.99.21 was performed by Vanitha Suresh.
We acknowledge the contributions of various users who have reported bugs.
Support
Development of OOQP was supported by
- The Department of Energy, Office of Advanced Scientific Computing
Research
- The National Science Foundation Grants CDA-9726385 and
ACI-0082065, and 0196485. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.