[SCIP] Implementing Dual-Decomposition-Based Node Pruning in C++ – Issues Creating a Secondary SCIP Instance in an EventHandler

Stefan Vigerske svigerske at gams.com
Fri May 9 12:00:24 CEST 2025


Hi,

working with a separate SCIP* should work. It should be disconnected 
from the main SCIP* and there is no interaction.
There are a number of plugins in SCIP that work with copies of the main 
SCIP in their execution methon, in particular primal heuristics.

What you describe would better fit into a relaxator than an event 
handler, I think.

Stefan

On 09/05/2025 15:57, Mario Klostermeier wrote:
> Dear SCIP mailing-list members,
> I am currently porting a prototype written in PySCIPOpt to C++.
> The goal is to compute a user-defined dual bound at every node of a MIP search tree via dual decomposition and, when the bound proves the node sub-optimal, prune it immediately.
> In Python I implemented this as an eventhandler that
> 
>    1.  extracts the current node’s variable fixings,
>    2.  builds a smaller decomposed sub-problem,
>    3.  solves that sub-problem in a second SCIP instance,
>    4.  compares the resulting dual bound
>    5.  calls SCIPcutoffNode() if the bound is tight enough.
> The approach works fine in PySCIPOpt, but when I translate it to C++ I repeatedly hit problems as soon as I try to create and solve a second SCIP* subscip inside the event handler of the main SCIP.
> Is it fundamentally impossible to call SCIPsolve() for another instance while the main instance is in its solving loop?
> Any guidance, pointers to relevant examples ,or explanations of SCIP’s restrictions on nested solvers would be greatly appreciated.
> Thank you very much for your time!
> Best regards
> 
> Mario Klostermeier
> 
> 
> 
> Mario Klostermeier
> 
> 
> Mario Klostermeier
> 
> Lehrstuhl für Werkzeugmaschinen und Steuerungen
> Rheinland-Pfälzische Technische Universität Kaiserslautern-Landau
> Gottlieb-Daimler-Straße 42 Raum 279
> 67663 Kaiserslautern
> 
> E-Mail: mkloster at rptu.de<mailto:mkloster at rptu.de>
> Webseite: WSKL - RPTU (uni-kl.de)<https://www.mv.uni-kl.de/wskl>
> [cid:image001.png at 01DBC0D1.2B1A66D0]
> 
> 
> 
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> https://listserv.zib.de/mailman/listinfo/scip



More information about the Scip mailing list