[Scip] Branch on original variables

Bahareh Eghtesadi b.eghtesadi at gmail.com
Wed Mar 18 19:02:25 CET 2015


Hi Stephen,

Thank you for your response.
Actually I have been looking at the Bin Packing example. Here is what I
have done so far: In my branching rule, I choose which pricing variable to
branch on, create two nodes and store the corresponding bounds and other
information in the consdata for each node. In the conshdlr,  in CONSACTIVE
method, I change the bounds stored in the pricer data.
Do I still have to create the constraint of constraint handler in each
node? Because I do not have any constraint in fact, I am using the handlr
to apply changes to my pricer data(bounds). I set the NEEDSCONS flag to
False, and was hoping that it would be enough.
Also, in this case I would not need to check whether the "cons" is active
in my variable pricer. Is this right?
I appreciate your help. This is my first experience with SCIP, and I am
afraid I have oversimplified everything.


Thanks.

On Wed, Mar 18, 2015 at 8:42 AM, Stephen J Maher <maher at zib.de> wrote:

> 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
>>
>>  _______________________________________________
> Scip mailing list
> Scip at zib.de
> http://listserv.zib.de/mailman/listinfo/scip
>



-- 
Regards
Bahareh Eghtesadi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20150318/bbe90c19/attachment.html>


More information about the Scip mailing list