[SCIP] Constraint cutting planes in constraint handlers

Gerald Gamrath gamrath at zib.de
Tue Mar 1 16:36:47 CET 2016


Dear Ahmed,

the logic or, setppc, and varbound constraint handlers have separation 
routines, but these only generates the linear rows representing the 
specific constraints. They do not create 'real' cutting planes.

Remember that a constraint is not directly present in the LP, but it 
will normally create one or more rows to add the constraint (or a 
relaxation of it) to the LP. For linear constraints or their 
specializations (e.g., logic or, setppc, and varbound), the constraint 
can be represented by one linear row.
If constraints have their 'initial' flag set to TRUE when created (which 
is the default), the initial relaxation will be added to the LP when 
building the LP data structure at the root node. Linear constraints and 
specializations are then fully represented in the LP and no separation 
is needed later, anymore.

On the other hand, if 'initial' is set to FALSE or 'removable' to TRUE, 
the row corresponding to a constraint may not be in the LP. The 
separation procedure then checks whether the row would by violated by 
the current LP solution and adds it, if needed. This is similar to the 
concept of lazy constraints used in, e.g., CPLEX.

Best,
Gerald

On 29.02.2016 20:51, Ahmed Ibrahim wrote:
> Hi all,
> I was wondering if any one knows where can I find an explanation of 
> how cutting planes for logic or setppc and varbound constraint 
> handlers are obtained?
>
> Regards,
> Ahmed
>
>
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> http://listserv.zib.de/mailman/listinfo/scip

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


More information about the Scip mailing list