[Coin-bcpdiscuss] Re: Coin-bcpdiscuss Digest, Vol 18, Issue 1

Laszlo Ladanyi ladanyi at us.ibm.com
Thu Dec 13 22:45:01 EST 2007


Well, BCP copies out the dual vector from the underlying solver. It is 
possible that something is messed up, but I find it unlikely. A possible 
reason is that if you have variables out of basis at a bound that is not 
zero (e.g., upper bounded variable at its upper bound) then the sum of the 
duals is not the same as Z_LP. Could you check whether this is the case?

Thanks,
--Laci

On Sun, 9 Dec 2007, Daniel Fleischman wrote:

>> My other problem is still there. I retrieve the dual vector as follows:
>> In compute_lower_bound, I receive the current LP solution in the
>> argument lpres (of type const BCP_lp_result&). I retrieve the dual
>> vector through:
>> 	const double* pi = lpres.pi();
>> In this way, in the second iteration, I get the same dual vector
>> (pi[.]=1.0 for all cuts) as in iteration 1, although the LP primal
>> solution (Z_LP) has a lower value. And I believe that for a set covering
>> problem with all column costs = 1, we should have
>> 	sum(pi[.]) = Z_LP = sum(x[.])
>> But in my case, in iteration 2, I have
>> 	sum(pi[.]) <> Z_LP = sum(x[.])
>> Any thoughts on this one?
>
>
>
> I am sorry I've reopened this old thread, but I am having exactly the same
> problem, and can't get through it. Can anyone help me, with this one? I am
> completely lost, it seems like BCP simply doesn't give me the right dual
> vector.
>
> Thank you in advance,
> Daniel Fleischman.
>



More information about the Coin-bcpdiscuss mailing list