[Scip] SCIPcreateVar - initial

Tobias Achterberg achterberg at zib.de
Fri Apr 15 14:26:07 MEST 2011


There already is a function to do both checks at once, namely SCIPprobAllColsInLP().

So please change the condition to

   if( stored && SCIPprobAllColsInLP(transprob, set, lp) )


This is equivalent, but nicer.


Tobias


Stefan Vigerske wrote:
> Hi,
>
> thanks for the bugreport.
>
> Here is a workaround:
> Go to solve.c and search for
> /* if the solution was accepted, the root node can be cut off by bounding */
> if( stored&&  set->nactivepricers == 0 )
>
> Then change the second line to
> if( stored&&  set->nactivepricers == 0&&  transprob->ncolvars ==
> SCIPlpGetNCols(lp) )
>
> What happens is that SCIP checks whether the initial solution of the LP
> is feasible. Since it is feasible and there are no active pricers, it
> also thinks that it is optimal and cuts off the root node.
> Unfortunately, the problem variable pricer does not count as real pricer
> and SCIP misses that not all variables are in the LP yet.
>
> Stefan
>
> PS: This is bug 127 in Bugzilla.
>
>
> Am 14.04.2011 20:03, schrieb Mathieu Larose:
>> Hi,
>>
>> Here is a small LP:
>>
>> min 99 * var1 + var2
>> s.a
>> var1 + var2 = 1
>> 0<= var1<= 1
>> 0<= var2<= 1
>>
>> Clearly, the optimal solution is var1 = 0, var2 = 1.
>>
>> Depending if variables are flagged as "initial" or "not initial", SCIP does
>> not always find the optimal solution.
>>
>>
>> Case 1: Both variables are flagged as "initial".
>>
>> Optimal solution found: var1 = 0, var2 = 1.
>>
>>
>> Case 2: Both variables are flagged as "not initial".
>>
>> Optimal solution found: var1 = 0, var2 = 1.
>>
>>
>> Case 3: var1 is flagged as "initial" and var2 is flagged as "not initial".
>>
>> Optimal solution found: var1 = 1, var2 = 0.
>>
>>
>> Why does Case 3 find a suboptimal solution?
>>
>> (Test case is in attachment)
>>
>> Regards,
>> Mathieu
>>
>>
>>
>>
>> _______________________________________________
>> 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


More information about the Scip mailing list