[Scip] Branch on original variables

Stephen J Maher maher at zib.de
Wed Mar 18 13:42:05 CET 2015


Hi Bahareh,

Branching on original variables can be performed similar to the way used 
for branching on constraints, i.e. Ryan-Foster branching.

In order to implement this type of branching you will need to write your 
own constraint handler, branching rule and modify the variable pricer. 
The constraint handler will take some reference to the original variable 
and selected bounds as input and determine which master problem 
variables satisfy this constraint based on given variable bounds. In 
your branching rule, you will decide what original variable to branch 
on, create two branching nodes and then add a constraint of your 
constraint handler to each with appropriate bounds. In your variable 
pricer, it is then necessary to check whether any constraints of this 
type exist at the current node and apply the appropriate variable bounds 
on the original variables.

An example of Ryan-Foster branching is given in the Bin Packing example 
included with SCIP. It should be possible to use this as a guide for 
your own rule branching on original variables.

Cheers,

Stephen

On 13/03/15 07:14, Bahareh Eghtesadi wrote:
> Hi all,
>
> I am tying to implement a branch and price algorithm. I want to branch
> on the original variables that are not present in the master problem,
> and then change their bound in the pricing problems. But I am not sure
> how to do this. I think I can't use SCIPbranchvar directly from
> mybranchrule. If I use a constraint handler, I wouldn't make a
> constraint of that type (because there is no such constraint), then how
> can I include it in my branchrule?
>
>
> Thanks in advance.
>
>
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> http://listserv.zib.de/mailman/listinfo/scip
>


More information about the Scip mailing list