Announcing CVX 2.0 beta
We are proud to announce the release of CVX 2.0. We have added some interesting new features, big and small, and are looking forward to seeing our users exploit them!
Some of the highlights include:
- Solve problems using commercial solvers Gurobi and MOSEK
- Support for binary and integer variables
- A new support infrastructure
- The ability to save preferences, like your preferred solver, precision settings, and so forth, between MATLAB sessions, using the
cvx_save_prefs
command - A revamped
cvx_setup
installation script - Support dropped for Matlab 7.4 and earlier
Using Gurobi and MOSEK
MOSEK ApS and Gurobi Optimization are two great companies that provide high-performance, well-supported solvers for convex programming. Both companies have been fantastic about supporting our efforts to connect CVX to their solvers; you’ll hear more our about our work together in the coming weeks. We believe that they will make great choices for use with the models our users wish to solve.
The addition of support for commercial solvers is part of our commercialization strategy for CVX Research. CVX will remain free of charge for all users when paired with the free solvers SDPT3 and SeDuMi; and commercial solver support will be free for all academic users as well. But starting with the final version of CVX 2.0, commercial customers will need to purchase a CVX Professional License to use CVX with Gurobi or MOSEK.
We will share more about product and pricing details over the course of this beta period. But for now, version 2.0 beta includes a built-in, time-limited CVX Professional License. Thus all users, both academic and commercial, are free to use CVX with Gurobi and MOSEK for the duration of the beta period. Simply make sure that Matlab sees mosekopt
and/or gurobi
in its path before you run cvx_setup
.
Mixed integer support
It is now possible to specify that one or more of your variables must assume integer or binary (0/1) values. We call such models mixed integer disciplined convex programs, or MIDCPs. We’ve created an separate post devoted to some of the very real caveats and cautions that come with adding integer support; click here to see it.
A new support infrastructure
CVX has reached a download pace of over 10,000 downloads per year? The acceptance of our software into the research community has truly been amazing—and challenging. Supporting all of our users via email, as we have done for the last 6 years, entirely at our expense, is simply no longer tenable. So we’re creating a new support infrastructure so that we believe will truly help the CVX user community. Please see here for more details.
Support for (very) old versions of Matlab dropped
Version 1.22 of CVX required Matlab version 6.5 or later. Starting with 2.0, we have dropped support for versions 7.4 and older, and now support Matlab only on versions 7.5 or later. We did this to help streamline our development process and to enable us to take advantage of some of the more modern features of the MATLAB language.
Of course, Matlab 7.5 is over five years old now, and we are certain that nearly all of our users are using even newer versions. Nevertheless, if for some reason you absolutely must run CVX on Matlab 7.4 or earlier, you can still download CVX 1.22 from our web site.