<br><font size=2 face="sans-serif">Jean-Sebastien,</font>
<br>
<br><font size=2 face="sans-serif">Life is not so simple. &nbsp;The original
MPSX standard used markers in the COLUMNS section but most modern codes
find UI and BV to be more elegant and intuitive. &nbsp;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 &lt;js@jeannot.org&gt;</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 &lt;jjforre@us.ibm.com&gt; wrote:<br>
<br>
&gt; I have modified CoinMpsIO.cpp. &nbsp;I can't remember whether we have
had<br>
&gt; the discussion about the correct range of integer variables. <br>
<br>
(I do not remember seeing a discussion about this either.)<br>
<br>
&gt; I have modified the code so it reduces integer bounds to be between<br>
&gt; -INT_MAX and +INT_MAX. If anyone has other suggestions I can fix but
I<br>
&gt; 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 &nbsp; &nbsp; C0000002 &nbsp;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>