Friday, February 25, 2011

Finding multiple optimal solutions of a BILP

It's possible to get CPLEX to return more than one optimal objective value,
using the "solution pool" feature described on page 71 of the CPLEX-for-AMPL
user guide, www.ampl.com/BOOKLETS/amplcplex121userguide.pdf.  By default
CPLEX gives you the incumbent feasible solutions that it found, however,
only one of which is optimal.  I have found the following settings useful
for generating multiple solutions all having the optimal objective value:

  option cplex_options 'poolstub=solfile populate=1 poolintensity=4
poolagap=0';

You might want to experiment with other settings as well.  As explained in
the user guide, you will need to write an AMPL "for" loop to retrieve the
different solutions one by one for display or processing.

No comments:

Post a Comment