[SCIP] Exposing Cutting Plane Management

Paulus Max Benedikt max.paulus at inf.ethz.ch
Fri Jun 11 16:40:54 CEST 2021


Dear SCIP community,

thanks for accepting me to the mailing list.
Happy to be on board.

I am using SCIP with PySCIPOpt for research purposes.
I am interested in experimenting with different cutting plane selection routines.
Specifically:
I would like to gain more control over the cutting plane loop and mock up Python functions that can, e.g.

  1.  Call SCIP to compute cuts and add to separation storage
  2.  Pass cut to SCIP to add to the current LP (or only at root node)

Unfortunately, most functions related to cut management appear to be part only of the internal API.
As a running example, take the function sepastoreApplyCut.

My question is what is the best way to go about what I want to achieve.
I have built both SCIP and PySCIPOpt from source.

I can think of several approaches and need help with prioritizing:

  1.  Is it possible to change compilation settings to something like “developer mode” to make everything public?
  2.  What files would I need to change to turn a function like sepastoreApplyCut from internal to public?
  3.  Alternatively, can I just declare and define a new separation storage class or sepastoreApplyCut function, copy the definitions but have this be public?

Alternatively, if turning private functions into public ones fails, are there recommended public functions I could use instead to mirror the functionality I desire?
For example, there is addCons, which I believe is public.
But I am hesitant of transforming a SCIP_CUT to a SCIP_CONS and I also think it is improper to add a cut as a constraint.

I am grateful for any pointers and support and wish everyone a pleasant and sunny weekend.

Best wishes,
Max

P.S I hope the formatting of this email won’t be a mess after sending.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20210611/d21903c4/attachment.html>


More information about the Scip mailing list