Making resolutions during the New Year has become something of a tradition. Some are followed, many are not. Here is one resolution I took years ago that has been pretty relevant. I would encourage you to use it as well :
Update your solvers whenever a new version is released.
Like, every time. It’s worth it. Two reasons:
Every major release of mathematical programming solver comes with pretty significant performance improvements. For instance, Gurobi reports 22% average improvements on mixed-integer programming (MIP) and 10% on pure linear programming models between versions 6.5 and 7. CPLEX is usually in the same ballpark of version-to-version improvements. Mosek reports 40% mean improvements for conic quadratic problems between versions 7 and 8. These are pretty significant, especially when compounded over multiple versions. I give a personal example here.
Over the last few years, solver developers have added some pretty significant new functionality. Just for 2016, CPLEX included automatic Benders Decomposition into its 12.7 release, and Gurobi added native support for multiobjective optimization, among others. Before you implement your own customised algorithm, be sure to check what’s new, you could discover that it is now included in a standard release!
Why take some time to write about it?
You’d be surprised how often I see students running models on older workstations or servers using outdated solvers, like CPLEX 12.4 or Gurobi 6.0.5. I sometimes referee papers comparing the authors’ custom algorithms against even older versions.
Here are links on where to find new information about new versions and performance improvements (in alphabetical order). Those usually get presented in scientific conferences as well, the INFORMS Annual Conference in November being the biggest rendez-vous if you want to hear about what’s new.
- CPLEX : you can generally hear about what’s new and relevant on this blog.
- FICO Xpress : it’s a bit hard to find but they sometimes release a webinar about their new features here.
- Gurobi has a very convenient page about what’s in the latest release.
- Mosek : you can find links to copy of slides presented in conferences. They usually talk about their performance improvements there.