<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 9.00.8112.16441">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV>Hi John,</DIV>
<DIV>&nbsp;</DIV>
<DIV>Are you really talking about multiple OPTIMAL answers or multiple 
intermediate solutions and&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; possibly one 
optimal solution?</DIV>
<DIV>&nbsp;</DIV>
<DIV>Thanks.</DIV>
<BLOCKQUOTE 
style="BORDER-LEFT: #000000 2px solid; PADDING-LEFT: 5px; PADDING-RIGHT: 0px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="FONT: 10pt arial; BACKGROUND: #e4e4e4; font-color: black"><B>From:</B> 
  <A title=john.forrest@fastercoin.com 
  href="mailto:john.forrest@fastercoin.com">John Forrest</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=cbc@list.coin-or.org 
  href="mailto:cbc@list.coin-or.org">cbc@list.coin-or.org</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Wednesday, February 29, 2012 12:55 
  AM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [Cbc] Multiple Optimal 
  Solutions</DIV>
  <DIV><BR></DIV>Seeing the discussion of multiple solutions, I have made a few 
  changes <BR>to Cbc/trunk.<BR><BR>I have modified Cbc/examples/driver4.cpp to 
  show how you can print <BR>solutions to preprocessed problem.&nbsp; This 
  example can be used in <BR>Cbc/stable, but then user has to know if they are 
  doing preprocessing as <BR>the test may not be correct.&nbsp; The values of 
  the variables which are <BR>still in the problem are printed correctly with 
  the correct sequence <BR>number (or name).&nbsp; The values of variables which 
  were preprocessed out <BR>are not printed.&nbsp; If the change below to Cbc is 
  satisfactory then, at <BR>greater computational expense, the complete solution 
  could be printed.<BR><BR>Cbc trunk has been altered so that postprocessing can 
  be done several <BR>times on different solutions.&nbsp; As Cbc trunk normally 
  uses Cgl/stable and <BR>as stable code should not be modified too much, I have 
  had to <BR>temporarily make it a conditional compile.&nbsp; So add 
  -DKEEP_POSTPROCESS to <BR>CXXDEFS in configure.&nbsp; When Cgl/trunk migrates 
  to stable, this will not <BR>be necessary.<BR><BR>Multiple solutions can now 
  be printed or printed to file from the <BR>executable.&nbsp; There is a new 
  integer parameter maxSolutions and a new <BR>command nextB(estsolution) which 
  acts like "solution", but works on the <BR>second best solution and then moves 
  all others up.&nbsp; The best solution is <BR>never touched.&nbsp; So 
  -<BR><BR>cbc ...... -solve -solution best.sol -nextbest 2.sol -nextbest 3.sol 
  <BR>-solution best2.sol<BR><BR>would put the best solution to best.sol and 
  best2.sol while the second <BR>best goes to 2.sol and the third best to 
  3.sol.&nbsp; There is no action if <BR>no solution.<BR><BR>This was all a 
  quick fix - I hope it helps.<BR><BR>John 
  Forrest<BR>_______________________________________________<BR>Cbc mailing 
  list<BR><A href="mailto:Cbc@list.coin-or.org">Cbc@list.coin-or.org</A><BR><A 
  href="http://list.coin-or.org/mailman/listinfo/cbc">http://list.coin-or.org/mailman/listinfo/cbc</A></BLOCKQUOTE></BODY></HTML>