[Coin-discuss] BCP compute_lower_bound
Matthew Galati
magh at lehigh.edu
Wed Nov 26 13:39:38 EST 2003
I have a question pertaining to the logical flow in BCP. If a user wants
to write a branch and price application, it seems, there should be a
valid default implementation of compute_lower_bound. When doing column
generation you can determine a valid lower bound by checking if there
are any new columns with negative reduced cost. If one exists, then we
cannot use the current LP solution as a valid lower bound and we should
just return the old_lower_bound (unless we want to do something smart,
e.g. Farley, Vanderbeck, etc. - but this can be left to the user to
implement). If no columns exist with negative reduced cost, then the LP
solution does give a valid lower bound.
In BCP, as far as I can tell, it seems that compute_lower_bound is
called *before* the call to generation of variables
(generate_vars_in_lp). The default checks the col_gen status to see if
columns are going to be generated. Given the order, the status will
always be that columns will be generated. Hence, the default simply
returns old_lower_bound. However, the initial lower bound is -inf.
Therefore, it seems, the lower bound used to prune is always -inf??
This, of course, can be gotten around by forcing the user to derive
compute_lower_bound. In this function, the user would need to look for
new variables with negative reduced cost. However, this is exactly the
work that needs to be done in generate_vars_in_lp (which the user must
derive). So, it seems to me, that BCP should be calling
generate_vars_in_lp before compute_lower_bound. This would allow for a
good default implementation of compute_lower_bound, as well as putting
the work of doing variable generation back into its proper function:
generate_vars_in_lp.
It is possible that there is some interaction when doing full branch
price AND cut that makes this impossible. Am I missing something?
Thanks,
Matt
--
Matthew Galati
ISE Lehigh University
IBM Service Parts Solutions
610.758.4042 (Office)
610.882.0779 (Home)
magh at lehigh.edu, magal11 at us.ibm.com
http://sagan.ie.lehigh.edu/mgalati/
More information about the Coin-discuss
mailing list