<div dir="ltr">O<font face="monospace, monospace">k, so if I understood correctly you've only changed <span style="font-size:12.8px">CoinPresolveDoubleton.cpp, am I right ?</span></font><div><span style="font-size:12.8px"><font face="monospace, monospace"><br></font></span></div><div><span style="font-size:12.8px"><font face="monospace, monospace">Thanks a lot for the quick fix !</font></span></div><div><span style="font-size:12.8px"><font face="monospace, monospace"><br></font></span></div><div><span style="font-size:12.8px"><font face="monospace, monospace">Marco</font></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-09-29 15:41 GMT+02:00 John Forrest <span dir="ltr"><<a href="mailto:john.forrest@fastercoin.com" target="_blank">john.forrest@fastercoin.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>Marco,<br>
      <br>
      Should be fixed.<br>
      <br>
      The dual code correctly thought it should push a variable all the
      way to its upper bound.  Unhappily the upper bound was 1.3.  Then
      a later part of presolve worked out that that was infeasible for
      an integer variable.<br>
      <br>
      The error occurred in CoinPresolveDoubleton which changed bounds
      from 0,infinity to 0,1.3 without checking whether it was integer. 
      I have corrected code so bounds would be 0,1.<span class="HOEnZb"><font color="#888888"><br>
      <br>
      John Forrest</font></span><div><div class="h5"><br>
      <br>
      On 28/09/15 23:46, Haroldo Gambini Santos wrote:<br>
    </div></div></div><div><div class="h5">
    <blockquote type="cite">
      
      Hi Marco,<br>
      <br>
      I found out that the problem is related to a presolving procedure
      which tries to fix bounds using dual information.<br>
      <br>
      A <i>quick and dirty</i> fix is to change in<br>
      <br>
      Osi/src/OsiPresolve.cpp   line    988<br>
      <br>
      if (dual) {<br>
      to <br>
      if ((dual)&&0) {<br>
      <br>
      to temporarily disable this processing...<br>
      <br>
      Hoping that a better fix comes soon,<br>
      <br>
      Cheers,<br>
      <br>
      Haroldo<br>
      <br>
      <div>On 28-09-2015 06:22, mg wrote:<br>
      </div>
      <blockquote type="cite">
        <div dir="ltr"><font face="monospace, monospace">Hi all,</font>
          <div><font face="monospace, monospace">I've found a case where
              preprocess says the problem is infeasible, but if I turn
              preprocess off, the problem is correctly solved.</font></div>
          <div><font face="monospace, monospace"><br>
            </font></div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace">Attached you can find the LP file (m3.lp). To
                reproduce the problem you can use the following code (I
                use callCbc):</font></span></div>
          <div><span style="font-size:12.8px"><br>
            </span></div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace"><span style="white-space:pre-wrap">  </span>OsiClpSolverInterface

                solver;</font></span></div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace"><span style="white-space:pre-wrap">  </span>CbcModel

                model(solver);</font></span></div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace"><span style="white-space:pre-wrap">  </span>model.solver()->readLp("m3.lp");</font></span></div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace"><span style="white-space:pre-wrap">  </span>std::string

                args("-heur off -cuts off -solve");</font></span></div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace"><span style="white-space:pre-wrap">  </span>//

                using these arguments instead it works</font></span></div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace"><span style="white-space:pre-wrap">  </span>//

                std::string args("-heur off -cuts off -preprocess off
                -solve"); </font></span></div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace"><span style="white-space:pre-wrap">  </span>callCbc(args,

                model); </font></span><br>
          </div>
          <div><span style="font-size:12.8px"><font face="monospace,
                monospace"><br>
              </font></span></div>
          <div><font face="monospace, monospace"><span style="font-size:12.8px">The problem happens in both
                2.9.5 </span></font><span style="font-family:monospace,monospace;font-size:12.8px">release</span><span style="font-family:monospace,monospace;font-size:12.8px"> </span><span style="font-size:12.8px;font-family:monospace,monospace">and

              2.9.6 release versions.</span></div>
          <div><span style="font-size:12.8px;font-family:monospace,monospace"><br>
            </span></div>
          <div><span style="font-size:12.8px;font-family:monospace,monospace">Thanks

              in advance,</span></div>
          <div><span style="font-size:12.8px;font-family:monospace,monospace">Marco</span></div>
        </div>
        <br>
        <fieldset></fieldset>
        <br>
        <pre>_______________________________________________
Cbc mailing list
<a href="mailto:Cbc@list.coin-or.org" target="_blank">Cbc@list.coin-or.org</a>
<a href="http://list.coin-or.org/mailman/listinfo/cbc" target="_blank">http://list.coin-or.org/mailman/listinfo/cbc</a>
</pre>
      </blockquote>
      <br>
      <pre cols="72">-- 
==================================================
Haroldo Gambini Santos
D.Sc, Computer Science
Universidade Federal de Ouro Preto
<a href="http://www.decom.ufop.br/haroldo/" target="_blank">http://www.decom.ufop.br/haroldo/</a></pre>
      <br>
      <fieldset></fieldset>
      <br>
      <pre>_______________________________________________
Cbc mailing list
<a href="mailto:Cbc@list.coin-or.org" target="_blank">Cbc@list.coin-or.org</a>
<a href="http://list.coin-or.org/mailman/listinfo/cbc" target="_blank">http://list.coin-or.org/mailman/listinfo/cbc</a>
</pre>
    </blockquote>
    <br>
  </div></div></div>

<br>_______________________________________________<br>
Cbc mailing list<br>
<a href="mailto:Cbc@list.coin-or.org">Cbc@list.coin-or.org</a><br>
<a href="http://list.coin-or.org/mailman/listinfo/cbc" rel="noreferrer" target="_blank">http://list.coin-or.org/mailman/listinfo/cbc</a><br>
<br></blockquote></div><br></div>