Originally posted by: oozaltin
Hi,
I implemented a branch callback where I set the lower bound of a binary variable to 1 in one of the branches in the second level of the search tree. However, when I print the upper bound of that variable at every node I observe that in one child of that branch in the third level it is zero !! , and in the other child the upper bound is one.
I use the CPXbranchcallbackbranchbds function of CPLEX Enterprise edition V 12.6, and I set
status = CPXsetintparam (env, CPX_PARAM_MIPCBREDLP, CPX_OFF);
status = CPXsetintparam (env, CPX_PARAM_REDUCE, 1);
status = CPXsetintparam (env, CPX_PARAM_PRELINEAR, 0);
I get the bounds at a node in the branch callback using
status = CPXgetcallbacknodeub(env, cbdata, wherefrom, &ubtree.front(), 0 , NCol-1);
status = CPXgetcallbacknodelb(env, cbdata, wherefrom, &lbtree.front(), 0 , NCol-1);
Can someone explain why this might be happening? I can share the source code if needed. It is just a single file and very easy to compile and run.
Thanks
Osman
#CPLEXOptimizers#DecisionOptimization