<br><font size=2 face="sans-serif">Bozhena,</font>
<br>
<br><font size=2 face="sans-serif">I think it is okay now.</font>
<br>
<br><font size=2 face="sans-serif">John Forrest</font>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>&quot;Bozhena Bidyuk&quot;
&lt;bbidyuk@dcse.com&gt;</b> </font>
<br><font size=1 face="sans-serif">Sent by: coin-lpsolver-bounces@list.coin-or.org</font>
<p><font size=1 face="sans-serif">03/15/2005 06:00 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">&lt;Coin-lpsolver@list.coin-or.org&gt;</font>
<tr>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td valign=top>
<tr>
<td>
<div align=right><font size=1 face="sans-serif">Subject</font></div>
<td valign=top><font size=1 face="sans-serif">[Coin-lpsolver] bug</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></table>
<br>
<br>
<br><font size=2><tt>John,<br>
<br>
I have come across a bug that has caused major memory problems for me.<br>
Could you please fix it for future releases?<br>
<br>
Location: ClpNonLinearCost.hpp<br>
In lines 83-84<br>
<br>
 &nbsp; &nbsp; &nbsp;if (lower[iSequence]&gt;-1.0e20)<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
put++;<br>
 &nbsp; &nbsp; &nbsp;if (upper[iSequence]&lt;1.0e20)<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
put++;<br>
<br>
put is incremented based on bounds 1.0e20 and -1.0e20.<br>
Then arrays are allocated based on precomputed size put:<br>
<br>
 &nbsp;lower_ = new double [put];<br>
 &nbsp;cost_ = new double [put];<br>
<br>
But then in line 101:<br>
<br>
 &nbsp;for (iSequence=0;iSequence&lt;numberTotal1;iSequence++) {<br>
 &nbsp; &nbsp;if (!always4) {<br>
 &nbsp; &nbsp; &nbsp;if (lower[iSequence]&gt;-COIN_DBL_MAX) {<br>
<br>
The lower[iSequence] is compared to -COIN_DLB_MAX=-DBL_MAX=-1.7976931348623158e+308<br>
Needless to say that this causes problems when you have many constraints
that are &quot;unbounded&quot;<br>
with a lower bound value between -1.0e20 and -1.7976931348623158e+308.<br>
(The upper bound is fine:<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
if (upper[iSequence]&lt;1.0e20) {<br>
)<br>
<br>
<br>
Thanks.<br>
<br>
Bozhena<br>
<br>
<br>
<br>
<br>
_______________________________________________<br>
Coin-lpsolver mailing list<br>
Coin-lpsolver@list.coin-or.org<br>
http://list.coin-or.org/mailman/listinfo/coin-lpsolver<br>
</tt></font>
<br>