Using commercial solvers in academic research

Over the last two years or so, I’ve ran into a couple of discussions about the use of commercial solvers in academic OR projects. There is often a moderate sense of unease when using commercial MILP solvers in our research. The problem is not the commercial property of the software – at least, not since […]

Closing the (MIP) gap – Part I

MIP Solvers are more powerful than ever. They mainly do two things: (1) find high-quality (optimal) solutions, and (2) proving the optimality of that solution. While in most cases performance is evaluated in terms of time-to-optimality, quite often a high quality solution is found in in only a fraction of the time needed to prove […]

Speedups: comparing against moving targets

[This is post #1 of 2 that were inspired by a tweet from IBM’s Jean-François Puget] Over the course of my studies, I had to develop custom solution methods for very challenging supply chain network design problems. While striving to create better models and solution algorithms, I had to compare the performance of my approach […]

Deterministic behavior of CPLEX: ticks or seconds?

If you are a longtime user of CPLEX, you probably noticed the addition of a number of “ticks” in addition to the displayed wall clock time count in recent versions. According to IBM, it’s a computer-independent measure of how much algorithmic work is required to obtain a provable optimum, independently of the computer on which […]

Tools for teaching Optimization in Business School

Using Operations Research (OR) in the classroom is important to me. I do not teach optimization theory classes, but mostly supply chain, operations management and production planning & control. My students do not learn optimization basics in my class. However, at the beginning of the course, their optimization experience is often limited to a small […]

Can the CPLEX tuning tool help solving hard models?

The CPLEX MIP Solver has had a tuning tool for some time. For those new to the concept, the tuning tool tries different parameter settings and seeks to find good parameters for the solver for a given optimization model. I have tested the tuning tool on 10 relatively difficult-to-solve models. By difficult, I mean models […]

Some experiments with CPLEX automated tuning tool

Tuning strategies to get the most out of a solver seem an important issue to me. I a recent post, I looked at a strategy consisting of emphasizing cutting plane types that were generated by CPLEX using default settings. Following a suggestion from Paul A. Rubin, I decided to give a try with CPLEX’s automated tuning tool. […]

Using more processors does not necessarily lead to reduced run times on CPLEX

This post takes a look at performance variability issues when scaling up the number of processors assigned to the CPLEX MIP solver. I summarize results from a few computational experiments we’ve made. I show that while increasing the number of processor cores  results in quicker runs on average, but the effect on individual instances is […]

Tuning cut strategies: is it worth the effort?

When solving mixed-integer (MIP) models, one of the questions I ask myself (and I have been asked) is how good are the solver’s default parameters parameters for a given class of models. This is a rather natural question to ask when you realize how many parameters a solver has. We are constantly looking at ways […]

The heuristic ‘feel’ of MIP solvers

MIP solvers are now more powerful than ever. Models that were considered very difficult 10 years ago are now routine work. They are solved efficiently, and performance is pretty stable from one instance to another. I also like to use solvers on more difficult models and instances. On large classes of models, you still get a very […]