[Clp] Incorrect solution for LP problem

Kish Shen kisshen at cisco.com
Wed Oct 22 21:44:38 EDT 2014


Hi John and Ted,

Thanks for your replies. I had wondered if the problem is with the file, 
but I forgot to mention that in my posting, as I was in a rush.

Some context: I did some checking on this failing test, and it seems
the test has been in our system for 10 years, pre-dating our interfacing 
to CBC. It is so long ago that it is difficult to be absolutely certain, 
but I think the LP file was generated by XPRESS,
which suggest that XPRESS, at least at the time (2oo4) was generating 
objectives without a name for LP format files.

Cheers,

Kish


On 22/10/2014 23:49, Ted Ralphs wrote:
> I am the guilty party who made the changes to CoinLpIO. I was extending the
> reader so that it recognizes multiple objectives. I am also not an expert
> on the LP format, but what is wrong here is that the objective does not
> have a name. If you change it to:
>
> Minimize
>    obj: C1
>
> then it should work as expected. If there is only one objective, It is
> supposed to assign the default name of "obj" and looking at the code, it
> seems it should still be doing that. However, it is throwing an error. I
> will debug it and let you know.
>
> Cheers,
>
> Ted
>
> On Wed, Oct 22, 2014 at 2:46 PM, John Forrest <john.forrest at fastercoin.com>
> wrote:
>
>> Kish,
>>
>> Seems to be a change to CoinLpIO - objective is being ignored - something
>> to do with no objective name possibly.  Coding has changed for CoinlpIO but
>> I am not an expert.  Will look at it tomorrow morning, unless whoever made
>> changes to CoinLpIO fixes problem before then.
>>
>> John
>>
>>
>> On 22/10/14 18:28, Kish Shen wrote:
>>
>>> Hi,
>>>
>>> I updated CBC yesterday (for dealing with handling of messages via
>>> message handlers -- thanks John!), but this CBC is failing one of our
>>> existing tests. It looks like the problem is in CLP, as CLP seems to be
>>> returning an incorrect objective value for the following LP problem:
>>>
>>> \Problem name: eclipse3
>>>
>>> Minimize
>>>    C1
>>>
>>> Subject To
>>> R1: C1 + C2 >= 7
>>> R2: - C2 + C1 = 0
>>>
>>> Bounds
>>> C1 free
>>> C2 free
>>>
>>> End
>>>
>>> The objective should be 3.5, but 0.0 is returned.
>>>
>>> I have been able to reproduce this problem using the clp executable --
>>> by import(ing) the LP file and then solve.
>>>
>>> This is from CBC 2.8 that I downloaded yesterday. The problem was not in
>>> the earlier CBC 2.8 that I was using, which was probably downloaded about a
>>> year ago.
>>>
>>> Is this a problem in CLP, or am I doing something wrong?
>>>
>>> Thanks in advance for any help/information!
>>>
>>> Cheers,
>>>
>>> Kish
>>> _______________________________________________
>>> Clp mailing list
>>> Clp at list.coin-or.org
>>> http://list.coin-or.org/mailman/listinfo/clp
>>>
>>>
>>>
>> _______________________________________________
>> Clp mailing list
>> Clp at list.coin-or.org
>> http://list.coin-or.org/mailman/listinfo/clp
>>
>
>
>
>
>
> _______________________________________________
> Clp mailing list
> Clp at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/clp
>



More information about the Clp mailing list