<br><font size=2 face="sans-serif">Jean-Sebastien,</font>
<br>
<br><font size=2 face="sans-serif">Life is not so simple. The original
MPSX standard used markers in the COLUMNS section but most modern codes
find UI and BV to be more elegant and intuitive. But UI has to have
some value as blank would mean 0.0.</font>
<br>
<br><font size=2 face="sans-serif">I think there has to be some arbitrary
value as doubles can only go up to 1.0e17 before adding 1.0 makes no difference
- and that would completely mess up any algorithm.</font>
<br>
<br><font size=2 face="sans-serif">I could go back to markers but it is
not logical to mix the two types and it would look ugly.</font>
<br>
<br><font size=2 face="sans-serif">There has been discussion on replacing
MPS format and that is probably the correct place to get it right.</font>
<br>
<br><font size=2 face="sans-serif">John Forrest</font>
<br>
<br>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>Jean-Sebastien Roy <js@jeannot.org></b>
</font>
<br><font size=1 face="sans-serif">Sent by: coin-lpsolver-admin@www-124.southbury.usf.ibm.com</font>
<p><font size=1 face="sans-serif">11/17/2003 02:18 PM</font>
<td width=59%>
<table width=100%>
<tr>
<td>
<div align=right><font size=1 face="sans-serif">To</font></div>
<td valign=top><font size=1 face="sans-serif">John J Forrest/Watson/IBM@IBMUS</font>
<tr>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td valign=top><font size=1 face="sans-serif">coin-lpsolver@www-124.southbury.usf.ibm.com</font>
<tr>
<td>
<div align=right><font size=1 face="sans-serif">Subject</font></div>
<td valign=top><font size=1 face="sans-serif">Re: [Coin-lpsolver] Problem
when writting mps files with integer constraints</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></table>
<br>
<br>
<br><font size=2><tt>On Mon, 17 Nov 2003 06:13:43 -0500<br>
John J Forrest <jjforre@us.ibm.com> wrote:<br>
<br>
> I have modified CoinMpsIO.cpp. I can't remember whether we have
had<br>
> the discussion about the correct range of integer variables. <br>
<br>
(I do not remember seeing a discussion about this either.)<br>
<br>
> I have modified the code so it reduces integer bounds to be between<br>
> -INT_MAX and +INT_MAX. If anyone has other suggestions I can fix but
I<br>
> refuse to allow integer variables to go up to DBL_MAX!<br>
<br>
Thanks for the fix !<br>
<br>
While it seems reasonable not to allow integer variables up to DBL_MAX<br>
(at least internaly), the resulting MPS file is quite strange with a<br>
bound line: UI BOUND C0000002 2.147484e+09<br>
that introduce an articifial, implementation dependent (and which should<br>
even be platform dependent) constant (2.147484e+09).<br>
double floats can represent exact integers larger than that so even this<br>
constant seems arbitrary to me.<br>
Moreover, DBL_MAX is more a way to write +inf in the code than it is a<br>
true bound (which is reflected by the absence of this value in the MPS<br>
files : DBL_MAX upper bounded variables appears as unbound).<br>
I'm absolutely no expert like you are about LP, but may adding such a<br>
bound introduce scaling problems when solving the relaxed problem ?<br>
FInally, introducing an arbitrary upper bound makes<br>
analysing and manipulating (scaling for example) MPS files quite<br>
difficult.<br>
<br>
Wouldn't it be simpler to output the exact model input by the user, with<br>
unbound, integer variables, even if internally, all these variables are<br>
constrained to some platform dependent suitable range ?<br>
<br>
Regards,<br>
<br>
js<br>
_______________________________________________<br>
Coin-lpsolver mailing list<br>
Coin-lpsolver@www-124.ibm.com<br>
http://www-124.ibm.com/developerworks/oss/mailman/listinfo/coin-lpsolver<br>
</tt></font>
<br>