<div dir="ltr">Hi everyone,<div><br></div><div>I just wanted to let you know that yesterday, I made new releases 0.92.2 and 0.91.6. These versions fix all reported bugs. Note that version 0.92.2 may break some user applications that were working in 0.92.1. This is because I eliminated the global variable DecompInf, which previously had to be used in some cases. That has now been replaced by a data member "m_infinity" that is available in DecompApp. All the examples in the repository have been fixed and it is relatively easy to fix other existing examples. Let me know if this causes trouble. In case there are older applications depending on stable 0.91, I back ported relevant bug fixes there and made a new release in that series as well. New DipPy binaries for Windows have been uploaded to Pypi (<a href="https://pypi.python.org/pypi/coinor.dippy/1.92.2">https://pypi.python.org/pypi/coinor.dippy/1.92.2</a>)</div><div><br></div><div>Since I didn't previously announce it, I wanted to say a few words about Dip 0.92. In this version, I cleaned up quite a few things in the code internally that are probably not of interest to users, but suffice it to say that the house is in better order now. The features that are probably interesting to users are:</div><div><br></div><div>1. There is now an interface to Gurobi as a subproblem solver. </div><div><br></div><div>2. Selection of the solver for both master LP and IP subproblems is now a run-time choice. You build Dip with whatever solvers are available at compile time and can then select any of them at run-time with the parameters DecompLPSolver and DecompIPSolver. For example, to build with both Gurobi and CPLEX on our cluster at Lehigh, you would do something like</div><div><br></div><div><div>../configure --with-gurobi-incdir=/usr/local/gurobi/linux64/include </div><div> --with-gurobi-lib="-L/usr/local/gurobi/linux64/lib/ -lgurobi60 -lm -lpthread" </div><div> --with-cplex-incdir=/usr/local/cplex/include/ilcplex</div><div> --with-cplex-lib="-L/usr/local/cplex/lib/x86-64_linux/static_pic -lcplex -lpthread -lm" </div><div><br></div></div><div>Cbc and SYMPHONY are automatically built in if the source for those solves has been downloaded (which it is by default with a subversion checkout).</div><div><br></div><div>3. In DipPy, the user can now return a status when solving the subproblem. This allows the user to say whether the subproblem was solved exactly or just using a heuristic (among other things). In the case of an exact solve, for example, if no solutions are returned, then DipPy can now conclude that no columns with negative reduced cost exist. Previously, DipPy implicitly assumed the subproblem solver was a heuristic and used the internal MILP solver to look for more columns whenever the user failed to return any.</div><div><br></div><div>4. Parameters can now be passed directly to the underlying MILP solver. There is a parameter section for each solver, so to pass a parameter directly to Gurobi, for example, you would do something like</div><div><br></div><div>dip --Gurobi:MipGap .05</div><div><br></div><div>and in DipPy</div><div><br></div><div><div>dippyOpts['Gurobi']['MipGap'] = .05</div><div><br></div><div>5. "DECOMP" is now the default parameter section and the "MILP" parameter section has been folded into the DECOMP section, so now it's easier to specify instances on the command line:</div><div><br></div><div>dip --Instance block_milp.lp --BlockFile block_milp.dec</div><div><br></div><div>That's it for now. Enjoy!</div>-- <br><div class="gmail_signature"><div dir="ltr">Dr. Ted Ralphs<br>Professor, Lehigh University<br>(610) 628-1280<br>ted 'at' lehigh 'dot' edu<br><a href="http://coral.ie.lehigh.edu/~ted" target="_blank">coral.ie.lehigh.edu/~ted</a><br></div></div>
</div></div>