[Dip] New releasess

Ted Ralphs ted at lehigh.edu
Fri Nov 13 11:10:24 EST 2015


Hi everyone,

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 (
https://pypi.python.org/pypi/coinor.dippy/1.92.2)

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:

1. There is now an interface to Gurobi as a subproblem solver.

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

../configure --with-gurobi-incdir=/usr/local/gurobi/linux64/include
                   --with-gurobi-lib="-L/usr/local/gurobi/linux64/lib/
-lgurobi60 -lm -lpthread"
                   --with-cplex-incdir=/usr/local/cplex/include/ilcplex

 --with-cplex-lib="-L/usr/local/cplex/lib/x86-64_linux/static_pic -lcplex
-lpthread -lm"

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).

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.

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

dip --Gurobi:MipGap .05

and in DipPy

dippyOpts['Gurobi']['MipGap'] = .05

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:

dip --Instance block_milp.lp --BlockFile block_milp.dec

That's it for now. Enjoy!
-- 
Dr. Ted Ralphs
Professor, Lehigh University
(610) 628-1280
ted 'at' lehigh 'dot' edu
coral.ie.lehigh.edu/~ted
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/dip/attachments/20151113/eca097c7/attachment.html>


More information about the Dip mailing list