[Coin-discuss] (no subject)

Laszlo Ladanyi ladanyi at us.ibm.com
Thu Sep 19 14:21:41 EDT 2002


Just a followup on my own post.

When I said "we don't have easy access to cplex" I meant that we at IBM.  
Cplex did donate a license to COIN, just as XPRESS did (thanks very much to
both companies!) and of course at IBM we have access to OSL :-). It is quite
possible that the OsiCpx interface passed every unitTest before, then sometime
a small change in the conversion routines pulled the rug from under the Cplex
interface, and the person who holds the cplex license did not notice it yet.
I'm sure he knows now :-).

--Laci

On Thu, 19 Sep 2002, Laszlo Ladanyi wrote:

> Hi Vivian,
> 
> The behavior you describe is certainly incorrect. Could you run the Osi
> unitTest? That should point to where the error is. We can't run it easily 'cos
> we don't have easy access to cplex.
> 
> The real reason of the problem is cplex's interpretation of sense/rhs/range.
> In the MPS standard range can take negative value *only* if the constraint is
> 'E' (then it's a shift), otherwise range must be non-negative. cplex deviated
> from this (their interpretation is logical: 0 and range are the bounds on the
> surplus variable), and hence we had some translation to do and apparently
> something is messed up. 
> 
> xpress and cplex both take sense/rhs/range triplets, but they interpret them
> differently. So the Osi interface was certain to disagree with one of them. We
> went with the xpress interpretation (that also follows the standard) simply
> because we did the xpress interface first. Unfortunately this means that now
> if someone wants to convert a code from cplex to Osi then simple function name
> replacement will not do in case of ranged rows. 
> 
> But, as I said, there must be something wrong to get what you did, and it
> ought to be fixed.
> 
> --Laci
> 
> On Thu, 19 Sep 2002 Vivian.DeSmedt at aisystems.be wrote:
> 
> > Dear Osi,
> > 
> > This mail just to highlight somthing that look like a conflit between
> >      the Cplex implementation of the Osi interface and
> >      the OsiSolverInterface::convertSenseToBound.
> > 
> > It seems that for Osi
> >      sense = R
> >      rhs = 15
> >      rngvalue = 10
> > 
> > means:
> >      [5, 15] for Osi
> > and
> >      [15, 25] for Cplex implementation of Osi.
> > 
> > It seems that for Osi
> >      sense = R
> >      rhs = 15
> >      rngvalue = -10
> > 
> > means:
> >      [25, 15] for Osi (look a bit strange as interval)
> > and
> >      [5, 15] for Cplex implementation of Osi.
> > 
> > Should we fix something?
> > And is so in which direction. My opinion as a frequent user of Cplex is to
> > go in the direction of changing the convertSenseToBound function but I want
> > to listen about the other user before submitting a patch.
> > 
> > Vivian.
> > 
> > _______________________________________________
> > Coin-discuss mailing list
> > Coin-discuss at www-124.ibm.com
> > http://www-124.ibm.com/developerworks/oss/mailman/listinfo/coin-discuss
> > 
> 
> 





More information about the Coin-discuss mailing list