<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hi Sebastian,<br>
    <br>
    since SCIP is MIP solver, it usually doesn't take too much care
    about dual solution values. Thus, I would recommend to solve your
    LPs with SoPlex directly or to change your setup and use SCIP as a
    branch-and-price framework. However, if you would like to stay with
    your current setup you also have to disable propagation:<br>
    <br>
    propagating/maxrounds = 0<br>
    propagating/maxroundsroot = 0<br>
    <br>
    With enabled propagation, only 1163 out of 66789 constraints enter
    the LP relaxation, all others were deleted / deactivated during
    propagation. Thus, you have solved a different problem and, of
    course, the dual multipliers may not match.<br>
    <br>
    Best,<br>
    Jakob <br>
    <br>
    <div class="moz-cite-prefix">Am 11.11.19 um 15:43 schrieb Sebastian
      Schmidt:<br>
    </div>
    <blockquote type="cite"
cite="mid:fa59828a58509bec4e57ea052a5d369b8366a64d.camel@informatik.uni-halle.de">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div>Hi,</div>
      <div><br>
      </div>
      <div>I'm trying to swap from Gurobi to SCIP in my column
        generation based algorithm for MinCostFlow. For this, I need
        SCIP to solve a linear program and generate an accurate dual
        solution. The dual solution that SCIP produces when presolving
        is disabled seems to be accurate, but violates some dual
        constraints.</div>
      <div><br>
      </div>
      <div>I have set the relative gap limit to zero, and the absolute
        to 0.1, half the value of the gcd of my weights and bounds.</div>
      <div><br>
      </div>
      <div>I have implemented column generation by regenerating the LP
        for every round from scratch, so I don't use any more
        functionality of SCIP than LP solving.</div>
      <div><br>
      </div>
      <div>I have a self-implemented abstract layer between the LP
        solver and the LP generator, and I just swapped out the solver.
        Using Gurobi, everything worked fine, so I'm sure there is no
        bug elsewhere.</div>
      <div><br>
      </div>
      <div>Is there any parameter I need to set to make SCIP produce a
        feasible dual solution, besides setting the presolving maxrounds
        to zero?</div>
      <div><br>
      </div>
      <div>In case this is a bug in SCIP, I attached the problem that
        gets solved wrongly. In the code, I set the bounds of all
        variables to >= 0 and <= SCIPinfinity. Also I disabled
        presolving as described above.</div>
      <div>The problem is that the dual of
        Route_choice_constraint_0x5621d4278800 gets set to 193. But by
        the goal function coeffecient of the primal variable
        Route_choice_0x5621d4278800_1 which is 191, it should be bound
        to 191. This variable appears besides in the goal function only
        in constraint Route_choice_constraint_0x5621d4278800. So in the
        dual problem there must be a constraint
        Route_choice_constraint_0x5621d4278800 <= 191.</div>
      <div><br>
      </div>
      <div>Kind Regards,</div>
      <div>Sebastian Schmidt</div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
Scip mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Scip@zib.de">Scip@zib.de</a>
<a class="moz-txt-link-freetext" href="https://listserv.zib.de/mailman/listinfo/scip">https://listserv.zib.de/mailman/listinfo/scip</a>
</pre>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
Jakob Witzig

Zuse Institute Berlin (ZIB)

Division Mathematical Optimization and Scientific Information
Research Group Mathematical Optimization Methods

Takustrasse 7
14195 Berlin

Tel. : +49 (0)30 84185-416
Fax  : +49 (0)30 84185-269
email: <a class="moz-txt-link-abbreviated" href="mailto:witzig@zib.de">witzig@zib.de</a></pre>
  </body>
</html>