[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