[Coin-symphony] naming cuts
Ted Ralphs
tkralphs at lehigh.edu
Sat May 27 23:03:07 EDT 2006
Anureet Saxena wrote:
> I am using SYMPHONY for experimenting with a class of cutting planes. I
> generate these cutting planes using the COIN/Cgl framework and add these in the
> generate_cgl_cuts function of SYMPHONY/src/LP/lp_solver.c .
> I would like to know if there is a way in which I can give a name (or any kind
> of identification) to these cuts, which can be used in successive rounds to
> identify them among other constraints in the incumbent LP relaxation. Also, I
> would like these names to persist in case the cut is removed from the working
> formulation, kept in a cut-pool and re-added later.
The answer is "yes," but with some caveats. Each cut does have a "type"
by which it is identified (there is a "type" field in the structure
called "cut_data" in BB_types.h). You could define a new type that would
allow you to identify your cuts from among the others, but you would
also have to then modify either the user_unpack_cuts() or
unpack_cuts_u() to allow SYMPHONY to handle the new type of cut.
Currently, all CGL cuts are of type "EXPLICIT_ROW," so it should be
relatively easy to just duplicate the implementation for this cut type
in unpack_cuts_u(). Alternatively, you could just add a field to the
cut_data structure in BB_types.h, which SYMPHONY would ignore, but you
could use to identify your cuts. If you need more help, please feel free
to post another e-mail and I'll provide some more details. Hope this helps!
Cheers,
Ted
--
Dr. Ted Ralphs
Assistant Professor
Industrial and Systems Engineering
Lehigh University
(610)758-4784
tkralphs at lehigh.edu
www.lehigh.edu/~tkr2
More information about the Symphony
mailing list