[Scip] How to modify the objective function value of a variable within the pricing loop ?

Behrouz Babaki bhrzslm at gmail.com
Thu Sep 12 17:11:57 CEST 2013


Dear SCIP community,

In my branch-and-price implementation in SCIP, I have a number of
continuous variables that I have to modify multiple times. This should
happen once every number of times that the pricing function is called. So,
these variables are meant to be modified several times while the
(progressively growing) LP is being solved.

The modification involves changing the objective function values as well as
variable bounds. I know that I can change the bounds using
SCIPchgVarLb(...) and SCIPchgVarUb(...). However, I don't know how to
change the objective function value while in SCIP_STAGE_SOLVING, especially
when the lp has not been solved to optimality yet.

So far, the only safe way that I have found for doing so is to fix all
these variables to zero, and create another set with different objective
function coefficients and different bounds within the pricing function.
Also, By setting these variables as removable and reducing "lp/colagelimit"
I hope that they are removed from the LP soon enough after they are fixed
to zero.

My question is that whether there is a better way for modifying the
objective function values without having to remove and re-create the
variables?

Behrouz
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://listserv.zib.de/pipermail/scip/attachments/20130912/c2a597cf/attachment.html


More information about the Scip mailing list