QPC - Quadratic Programming in C

Contact Details
Dr. Adrian Wills
Phone
+61 2 49216028Fax
+61 2 49216993Office
Callaghan CampusBuilding EA: EA-204
Post
Dr. Adrian WillsSchool of Electrical Engineering and Computer Science
- - -
Funding
Australian Research Council
ARC Discovery ProjectDP0666955
2006-2008
Value: $336,000
Australian Research Council
ARC Discovery ProjectDP0208665
2002-2005
Value: $360,000
Australian Research Council
Discovery ProjectDP0774086
2007-2009
Value: $246,090
University of Newcastle
Near Miss GrantG0189828
2009
Value: $20000
Industry Funding
QPC Software2011
Value: $20,000

This project offers a collection of software routines for solving quadratic programming problems that can be written in this form

The routines are written in C and callable from Matlab using the standard syntax.
Features
- Fast: between 10 and 1000 times faster than the standard solver!
- Uses the standard Matlab syntax, allowing for easy replacement
- Used for research both in industry and by academics: some research applications include
- Biomedical: disease classification using support vector machines
- Finance: portfolio risk management and asset allocation algorithms
- Engineering: advanced control implementation
- Offers several state-of-the-art solvers
Try it Out
- This software works with Matlab under Linux, Mac OS X, and MS Windows.
- In an attempt to help further development, we request that you register your name and email address in order to proceed with the download.
→ Available here: Download
Available routines
QPC includes the following routines:
- qpas: Uses a dual active-set method to solve a general strictly convex quadratic programming problem.
- qpip: Uses a primal-dual interior-point method to solve a general strictly convex quadratic programming problem. Accepts an optional argument to stop on central-path at a user specified fixed point.
- qps_ip: Uses an interior-point method to solve a simply bounded convex quadratic programming problem.
- qps_as: Uses an active-set method to solve a simply bounded convex quadratic programming problem.
- qps_mq: Uses a branch-and-bound method to solve a simply bounded convex quadratic programming problem.
News
- 2009-08-11: QPC will no longer be distributed with source code. Only binaries are available.
- 2009-04-20: SOME binaries (.mexw32, .mexmaci, .mexglx, .mexa64) are now included in the download in the hope that it will work for most users without compiling.
- 2009-04-20: QPC now compiles under Matlab 2009a for Windows using the LCC compiler that comes with Matlab.
- 2008-03-04: BUG: QPC does not compile under Matlab 2007b for Windows using the lcc compiler. It does, however, compile correctly using Microsoft Visual C++, for example. This problem is caused by Mathworks not supporting calls to the lcc version of the LAPACK libraries in Matlab 2007b. I do not know if this problem will be fixed by Mathworks in the new release. I plan to release a new version shortly that includes a binary version of the libraries plus source.
- 2007-09-20: Latest version released; bug fixes for cross platform compilation.
- 2007-05-31: Latest version released now including source code.
- 2007-05-31: The current release of YALMIP now has support for QPC, thanks to Johan Löfberg.
- 2007-05-29: Fixed some bugs, found mainly by Johan Löfberg - Thanks!
- 2006-11-23: Latest version of routines released. Includes bug fixes. See usage for full details.
- 2006-07-12: Latest version of routines released. Includes bug fixes and a faster interior-point method. Also returns Lagrange Multipliers. See usage for full details.
- 2005-09-07: New website released.
Report an unexplored feature (bug)
- If you would like to report a bug then please email me.

