[Scip] Upper bound on variables during pricing

Hélène Toussaint helene.toussaint at isima.fr
Tue Mar 19 14:32:05 MET 2013


Hi Gerald,

Thank you for your answer. I enclose the statistics.

Indeed I use propagation to propagate my modifications on the problem 
data and variables. But I have some doubts concerning the scip_prop() 
and scip_active() methods of the constraint handler for branching decisions:

1. Is scip_prop() always called after scip_active() when SCIP enter a node?
2. Why I can't fix variables in scip_active()? If I try then 
SCIPnodeAddBoundinfer() displays an assertion about the nodetype (which 
is equal to 8 in this case)
3. In scip_prop(), what method should I use to set a variable to 0: 
SCIPchgVarUb() or SCIPfixVar()?

Furthermore I have tried to link with cplex instead of soplex. All my 
instances give good results except one which stops with the following 
error message:

"ERROR: (node 2502) unresolved numerical troubles in LP 3348 cannot be 
dealt with"

Is it an error from cplex? How can I see what happens? Debug mode 
doesn't give more information.

Best,
Hélène


Le 19/03/2013 12:48, Gerald Gamrath a écrit :
> Hi Hélène,
>
> you are right, that should not happen. Can you send me the solving 
> statistics, which you get by typing "display statistics" in the 
> interactive shell or calling SCIPprintStatistics()? This should help 
> to identify the plugin which changes the bound.
>
> Besides, you best disable the other propagators, too, if you don't 
> want SCIP to change bounds itself. You can either disable all 
> propagation by setting propagating/maxrounds and 
> propagating/maxroundsroot to 0, but I guess your modifications to the 
> problem data after branching are also done during propagation? In this 
> case, you need to disable all default propagators individually by 
> setting their freqency to -1.
>
> Best,
> Gerald
>
> Am 18.03.2013 11:37, schrieb Hélène Toussaint:
>>
>> Dear all,
>>
>> I use SCIP to code a branch & price algorithm on positive continuous 
>> variables. I branch on instance data (using a constraint handler to 
>> store the branching decisions). When I modify the instance data some 
>> variables become forbidden (I fix their upper bound to 0).
>>
>> I'd like SCIP to not set upper bound on the other variables. As 
>> explained in the FAQ I have marked all constraints containing priced 
>> variables as modifiable and added SCIPsetIntParam(scip, 
>> "propagating/rootredcost/freq", -1). But occasionally there is a 
>> variable with an upper bound equals to 0 although it isn't forbidden 
>> in the current node. How is this possible? Could you please help me 
>> with this issue?
>>
>> Best regards,
>>
>> Hélène
>>
>>
>>
>> _______________________________________________
>> 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/mailman/private/scip/attachments/20130319/303b1af4/attachment.html
-------------- next part --------------
SCIP Status        : problem is solved [optimal solution found]
Total Time         :     401.18
  solving          :     401.18
  presolving       :       0.00 (included in solving)
  reading          :       0.00
  copying          :       0.00 (0 times copied the problem)
Original Problem   :
  Problem name     : BCP_RCPSP
  Variables        : 30 (0 binary, 0 integer, 0 implicit integer, 30 continuous)
  Constraints      : 31 initial, 31 maximal
  Objective sense  : minimize
Presolved Problem  :
  Problem name     : t_BCP_RCPSP
  Variables        : 509 (0 binary, 0 integer, 0 implicit integer, 509 continuous)
  Constraints      : 31 initial, 31 maximal
Presolvers         :   ExecTime  SetupTime  Calls  FixedVars   AggrVars   ChgTypes  ChgBounds   AddHoles    DelCons    AddCons   ChgSides   ChgCoefs
  probing          :       0.00       0.00      0          0          0          0          0          0          0          0          0          0
  pseudoobj        :       0.00       0.00      0          0          0          0          0          0          0          0          0          0
  ConsBranchHdlr   :       0.00       0.00      0          0          0          0          0          0          0          0          0          0
  linear           :       0.00       0.00      0          0          0          0          0          0          0          0          0          0
  ConsCycle        :       0.00       0.00      0          0          0          0          0          0          0          0          0          0
  root node        :          -          -      -          0          -          -         32          -          -          -          -          -
Constraints        :     Number  MaxNumber  #Separate #Propagate    #EnfoLP    #EnfoPS     #Check   #ResProp    Cutoffs    DomReds       Cuts    Applied      Conss   Children
  ConsBranchHdlr   :          0+        42          0      26146          0          0          0          0          0      69258          0          0          0          0
  integral         :          0          0          0          0          1          0          0          0          0          0          0          0          0          0
  linear           :         30         30          1      26147          1          0          0          0          0          0          0          0          0          0
  ConsCycle        :          1          1          0          0       2496          0          0          0          0          0          0          0          0       4990
  countsols        :          0          0          0          0          1          0          0          0          0          0          0          0          0          0
Constraint Timings :  TotalTime  SetupTime   Separate  Propagate     EnfoLP     EnfoPS      Check    ResProp
  ConsBranchHdlr   :       1.52       0.00       0.04       1.48       0.00       0.00       0.00       0.00
  integral         :       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00
  linear           :       0.06       0.00       0.00       0.06       0.00       0.00       0.00       0.00
  ConsCycle        :       1.15       0.00       0.02       0.00       1.13       0.00       0.00       0.00
  countsols        :       0.00       0.00       0.00       0.00       0.00       0.00       0.00       0.00
Propagators        : #Propagate   #ResProp    Cutoffs    DomReds
  probing          :          0          0          0          0
  pseudoobj        :          0          0          0          0
  redcost          :          0          0          0          0
  vbounds          :      28643          0          0          0
Propagator Timings :  TotalTime  SetupTime   Presolve  Propagate    ResProp
  probing          :       0.00       0.00       0.00       0.00       0.00
  pseudoobj        :       0.02       0.00       0.00       0.02       0.00
  redcost          :       0.02       0.00       0.00       0.02       0.00
  vbounds          :       0.02       0.00       0.00       0.02       0.00
Conflict Analysis  :       Time      Calls    Success  Conflicts   Literals    Reconvs ReconvLits   LP Iters
  propagation      :       0.00          0          0          0        0.0          0        0.0          -
  infeasible LP    :       0.00          0          0          0        0.0          0        0.0          0
  bound exceed. LP :       0.00          0          0          0        0.0          0        0.0          0
  strong branching :       0.00          0          0          0        0.0          0        0.0          0
  pseudo solution  :       0.00          0          0          0        0.0          0        0.0          -
  applied globally :          -          -          -          0        0.0          -          -          -
  applied locally  :          -          -          -          0        0.0          -          -          -
Separators         :   ExecTime  SetupTime      Calls    Cutoffs    DomReds       Cuts    Applied      Conss
  cut pool         :       0.00                     0          -          -          0          -          -    (maximal pool size: 0)
Pricers            :   ExecTime  SetupTime      Calls       Vars
  problem variables:       0.09          -       7678      32708
  PricerAntichaine :     395.68       0.00       4837        479
Branching Rules    :   ExecTime  SetupTime   BranchLP  BranchExt   BranchPS    Cutoffs    DomReds       Cuts      Conss   Children
  allfullstrong    :       0.00       0.00          0          0          0          0          0          0          0          0
  fullstrong       :       0.00       0.00          0          0          0          0          0          0          0          0
  inference        :       0.00       0.00          0          0          0          0          0          0          0          0
  leastinf         :       0.00       0.00          0          0          0          0          0          0          0          0
  mostinf          :       0.00       0.00          0          0          0          0          0          0          0          0
  pscost           :       0.00       0.00          0          0          0          0          0          0          0          0
  random           :       0.00       0.00          0          0          0          0          0          0          0          0
  relpscost        :       0.00       0.00          0          0          0          0          0          0          0          0
Primal Heuristics  :   ExecTime  SetupTime      Calls      Found
  LP solutions     :       0.00          -          -          1
  pseudo solutions :       0.00          -          -          0
LP                 :       Time      Calls Iterations  Iter/call   Iter/sec  Time-0-It Calls-0-It
  primal LP        :       0.10       1806       2211       3.72   22110.00       0.07       1212
  dual LP          :       0.48       6041      28647       6.14   59681.25       0.07       1377
  lex dual LP      :       0.00          0          0       0.00          -
  barrier LP       :       0.00          0          0       0.00          -       0.00          0
  diving/probing LP:       0.00          0          0       0.00          -
  strong branching :       0.00          0          0       0.00          -
    (at root node) :          -          0          0       0.00          -
  conflict analysis:       0.00          0          0       0.00          -
B&B Tree           :
  number of runs   :          1
  nodes            :       4358
  nodes (total)    :       4358
  nodes left       :          0
  max depth        :         42
  max depth (total):         42
  backtracks       :       1656 (38.0%)
  delayed cutoffs  :          0
  repropagations   :      15944 (4508 domain reductions, 0 cutoffs)
  avg switch length:       9.32
  switching time   :       1.37
Solution           :
  Solutions found  :          1 (1 improvements(null))
  First Solution   : +5.66666666666667e+001   (in run 1, after 1196 nodes, 94.89 seconds, depth 24, found by <relaxation>)
  Primal Bound     : +5.66666666666667e+001   (in run 1, after 1196 nodes, 94.89 seconds, depth 24, found by <relaxation>)
  Dual Bound       : +5.66666666666667e+001
  Gap              :       0.00 %
  Root Dual Bound  : +5.40000000000000e+001
  Root Iterations  :        276


More information about the Scip mailing list