SDPT3 version 4.0 — a MATLAB software for semidefinite-quadratic-linear programming

Kim-Chuan Toh , Michael J. Todd, and Reha H. Tutuncu

The last major update on the software was in Feb 2009. It implemented an infeasible path-following algorithm (sqlp.m) for solving SQLP — conic optimization problems involving semidefinite, second-order and linear cone constraints. It also has a path-following algorithm (HSDsqlp.m) for solving a 3-parameter homogeneous self-dual reformulation of SQLP.


  • K.C. Toh, M.J. Todd, and R.H. Tutuncu, SDPT3 — a Matlab software package for semidefinite programming, Optimization Methods and Software, 11 (1999), pp. 545–581.
  • R.H Tutuncu, K.C. Toh, and M.J. Todd, Solving semidefinite-quadratic-linear programs using SDPT3, Mathematical Programming Ser. B, 95 (2003), pp. 189–217.

  • Copyright: This version of SDPT3 is distributed under the GNU General Public License 2.0. For commercial applications that may be incompatible with this license, please contact the authors to discuss alternatives.
  • SDPT3 is currently used as one of the main computational engines in optimization modeling languages such as CVX and YALMIP.
  • Download
    Please read. Welcome to SDPT3-4.0! The software is built for MATLAB version 7.4 or later releases, it may not work for earlier versions. The software requires a few Mex files for execution. You can generate the Mex files as follows:

    • Firstly, unpack the software:
    • Run Matlab in the directory SDPT3-4.0
    • In Matlab command window, type:
      >> Installmex(1)
    • After that, to see whether you have installed SDPT3 correctly, type:
      >> startup
      >> sqlpdemo
    • By now, SDPT3 is ready for you to use.
  • User’s guide (pdf)