[Scip] Fwd: Re: Branching decisions not enforced in master problem during a Branch-and-Price implementation

E. van der Veen E.van.der.Veen.7 at student.rug.nl
Thu Oct 9 17:08:42 MEST 2008


Hi,

Thanks for the quick response!

Setting 'enforce=false' indeed prevents the cuts from 
being generated. However, I need these "storage 
constraints" to enforce branching decisions later on 
during the branching. In these "storage constraints" I set 
some of my "branching variables" (which are not in the 
master problem) to 0 or 1 to force some of the variables 
in the master problem to 0 or 1 respectively.
So, turning of the enforcement of these constraints will, 
later on, as I understand it, preclude my branching 
decisions from becoming enforced in the model, and this is 
of course not what I want. Or do is my conclusion about 
this not correct?
As I understand it from your mail consEnfolpSetppc() will 
only be called when the LP solution is infeasible? Does 
this mean that the solution SCIP has found is not feasible 
w.r.t. to my "storage constraints" or that there is no 
solution satisfying both the constraints of the master 
problem and my "storage constraints"?
So, does SCIP try and find a solution satisfying all 
constraints marked as "initial=true" and after that checks 
whether all constraints marked as "initial=false" are 
satisfied, and if not adds cuts to the problem, which will 
enforce the solution satisfying the 
"initial=true"-constraints also satisfying the 
"initial=false"-constraints?

I just downloaded the 1.1 version and look at the example, 
and figure out whether I can figure out what my problem 
is.

Thanks in advance for your response!

Best regards,
Egbert




On Thu, 9 Oct 2008 15:25:22 +0200
  Timo Berthold <berthold at zib.de> wrote:
> Please ignore the other mail, sorry for the double 
>posting...
> 
> Hi Egbert.
> 
> I guess the problem is the following:
> addcut() is called by separateCons() which is called by 
>consSepalpSetppc(), 
> consSepasolSetppc(), and consEnfolpSetppc().
> Setting 'separate=false' prevents the first two methods 
>to be called, but not 
> the latter one.
> 
> The enforcement methods check, e.g., LP solutions for 
>their feasibility w.r.t. 
> a particular constraint. Here, the current LP solutions 
>seems to violate 
> your "storage constraint"and therefore the SetPPC 
>constraint is added to the 
> LP in order to resolve this "infeasibility".
> Therefore, you should try to also set 'enforce=false' 
>(and if I understood 
> your motiviation correctly, 'check=false' and 
>local='true' should be correct 
> as well).
> 
> Maybe you should also have a look at the new Coloring 
>example in SCIP 1.1, 
> what is done there seems to be quite similar to your 
>issues (I especially 
> refer to lines 250--256 of branch_coloring.c).
> 
> Best, Timo
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> http://listserv.zib.de/mailman/listinfo/scip



More information about the Scip mailing list