MIPLIB is a collection of instances of Mixed Integer Programs. Versions of MIPLIB have been around since 1992, and these have been invaluable as we see how we have advanced in solving difficult MIP instances. Some instances that were essentially unsolvable twenty years ago can now be solved in a fraction of a second. We know we are getting better! Of course, there is a downside: maybe we are just getting better at solving MIPLIB instances. For instance, here is an extract from an excellent optimization code to attack MIPLIB:
if (problem == "team10") then { sol_val = 924; } else if (problem == "a1c1s1") then { ...
Now, I don’t claim that any real code cheats this blatantly, but it is inevitable that as codes use benchmarks like MIPLIB, they will become tuned to the issues that come from those instances.
This makes it important that MIPLIB reflect a broad range of issues faced “in the real world”. So it is very good that the MIPLIB people (a group based at ZIB in Berlin, but including people from all over) are updating the library to create MIPLIB 2010. If you have hard or real-life MIP instances, particularly if they are taking 15 minutes to 2 hours with commercial codes, you are welcome to upload those instances for consideration for the new library. The more varied the library, the better our field will be.
There is one other biasing aspect that an update to MIPLIB 2010 does not fix and that is the emphasis on talking about integer programs as MPS files. Once an instance is in an MPS file, it is often extremely difficult to back out the underlying structure. Our constraint programming brethren are happy to talk about formulations with global constraints like alldifferent and to have codes that explicitly take advantage of those structures. I do wonder if we would be better at solving integer programs if we talked about them as higher-level structures (like tour(x1,x2,x3) and matching(x,y) and other common substructures). By limiting ourselves to MPS format, the structures we exploit tend to be those easiest to find, like knapsack and setcovering).
But that is a topic for the future: right now, we need to be sure MIPLIB 2010 is as varied and interesting as it can be!
I did my part and uploaded 3 instances. Let’s see if they make the cut.