OPTI Toolbox Wiki

If you are interested in optimization, use MATLAB and like free stuff, OPTI could be for you. See the What Is OPTI section for details on solving linear, nonlinear, continuous and discrete optimization problems using MATLAB!

To get right into it, jump to the downloads page!


Version 2.22 has just been released with minor updates. Changes include:

  • Added suggestion to rethrow errors when function testing (V. Pericoli)
  • Fixed handling of very large QP problems (skips non-convex checks)
  • Fixed excessive memory when checking of symmetric/tril/triu Hessians by using builtin MATLAB routines (H. Mittelmann)
  • [API Change] Changed symbset interface to now only accept optiset options via 'optiOpts' field.

Apologies while our Wiki was down. Something went wrong with one of the add-ins (BlogIt) and it took a while to track and fix.

OPTI Downloads should be available again.

Version 2.21 has just been released with minor updates. Changes include:

  • Rebuilt all solvers against MKL v11.3 R3
  • Fixed bug when nleq cannot accept x0 = zeros(n,1) during function testing (B. Duarte)
  • Fixed bug where fixed binary variables were written as normal binary variables in MPS files
  • Fixed bug where binary variables were not handled correctly by intlinprog
  • Fixed bug where SNLE problems not handled correctly by MATLAB solvers
  • Increased precision in writing MPS files
  • Updated coinRead to correctly identify binary variables

Version 2.20 has just been released with minor updates. Changes include:

  • The toolbox now only supports 64bit MATLAB[1] (mexw32 binaries no longer supplied)
  • Rebuilt all solvers against MKL v11.3 R2
  • Rebuilt all solvers in R2013a with Visual Studio 2015 & Intel XE 2016
  • Added primal and dual bounds to SCIP return arguments
  • Updated CLP to 1.16.10
  • Updated CBC to 2.9.8
  • Updated IPOPT to 3.12.4
  • Updated BONMIN to 1.8.4
  • Updated NOMAD to 3.7.2
  • Updated SCIP to 3.2.1 (note even more sensitive to unbounded problems now)
  • Updated RMathlib to 3.2.4
  • Updated CppAD source to 20160321
  • Updated VSBuilder to support Visual Studio 2015 and Intel XE 2016
  • Fixed bug plotting 1D maximization problems
  • Fixed bug in opti_scipasl returning the wrong status code and message (F. Bastos)
  • Improved compatibility with R2016a

[1] Older (Open Source) versions of OPTI that support 32bit MATLAB can be downloaded from Dropbox .

Version 2.16 has just been released with minor updates. Changes include:

  • Updated CBC to v2.9.5
  • Updated BONMIN to v1.8.3
  • Updated SCIP to v3.2.0 (note change in return codes if using scip directly)
  • Fixed bug when nlcon cannot accept x0 = zeros(n,1) during function testing (A. Khalid)
  • Minor bug fixes

I've had a few questions regarding White Box optimization using solvers like SCIP and BARON, so I have written a Wiki page explaining how they work with OPTI. Grab a cup of coffee and have a read.

Version 2.15 has just been released with several updates.

Changes include:

Updates

  • checkSolver has been renamed to optiSolver, same API.
  • Rebuilt all solvers against MKL v11.2 R3 and Visual Studio 2013
  • Updated and tidied supplied documentation, mostly on this Wiki now.
  • Updated CLP to v1.16.6
  • Updated CBC to v2.9.4
  • Updated IPOPT to v3.12.3
  • Updated BONMIN to v1.8.2
  • Updated SCIP to v3.1.1
  • Updated RMathlib to v3.2.0
  • Updated CppAD Source to 20150429

New Functionality

  • Added ability to set SCIP options. Check scipset in MATLAB, and this example.

Bug Fixes

  • Fixed bug in convBonmin when supplying options from another solver (G.Tsoukalas)
  • Fixed bug in >=R2014b when plotting OPTI plots with bounds
  • Fixed bug in >=R2014b when plotting quadratic constraints
  • Fixed bug with bintprog no longer available in R2014b
  • Fixed bug with orange line in data fitting plots in R2014b

I have created a new repository on GitHub for OPTI: https://github.com/jonathancurrie/OPTI

The repository will contain the latest version of the toolbox as I push my updates to it. However it will not contain the most recent MEX files - you must download the official toolbox version to get these (or compile them yourself).

Version 2.12 has just been released with minor updates. Changes include:

  • Added warning to problems which did not solve correctly.
  • Updated CLP to v1.16.5, removed Aboca support (MATLAB does not play with Intel XE 2015)
  • Updated CBC to v2.9.3
  • Updated IPOPT to v3.12.1
  • Updated BONMIN to 1.8.1
  • Re-added CLP to be able to solve QPs (earlier bug appears fixed)
  • Rebuilt all solvers against MKL v11.2 R2

Note the development of new features in OPTI has effectively ended with this release. I will continue to maintain OPTI, and answer questions, but I simply don't have the time to write new functionality (goodbye being a student!).

In the near future the OPTI source will be moving to Github. Keep an eye on the announcements.

Version 2.11 has just been released with minor updates. Changes include:

  • Rebuilt all solvers against MKL v11.2 R0
  • Added SymBuilder Examples page
  • Added extra error information to SCIP function processing
  • Fixed bug in SCNLE sparse test (thanks Stephen)
  • Fixed bug in confidence bound plotting with unsorted xdata
  • Fixed bug in DNLS problems with initialT ignored for single sampling rate problems