<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hi list,<br>
    <br>
    Eddie and I discussed the subject in person some time ago, I just
    repeat the conclusion.<br>
    <br>
    By separating a constraint such as setppc or knapsack instead of an
    LP row, you have more control of the behavior of this constraint
    through the use of its flags. After separating a constraint from
    within a separator, this constraint will be immediately added as a
    row to the LP relaxation, as well, as long as the "separate" flag is
    set to TRUE for the new constraints. <br>
    It is generally good if you can detect a constraint type that is
    more special than just linear, and create the corresponding
    constraint. A knapsack constraint, as an example, has much stronger
    propagation algorithms than its linear equivalent. In the pricing
    context, however, many possible deductions cannot be made on
    constraints that are modifiable. <br>
    <br>
    Contrary to Eddie's assumption, there is no advantage in separating
    constraints instead of rows w.r.t. the primal heuristic behavior.
    Infact, the default primal heuristics of SCIP consider mostly the LP
    relaxation for their decisions, but do not consider specific
    constraint types at all. <br>
    <br>
    Best,<br>
    Gregor<br>
    <br>
    <div class="moz-cite-prefix">Am 19.02.19 um 22:55 schrieb Edward
      Lam:<br>
    </div>
    <blockquote type="cite"
      cite="mid:3BC1BF3A-4E61-4662-B9E4-0ADEAD01D08D@ed-lam.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr"><font color="#000000"><span style="caret-color:
            rgb(0, 0, 0); background-color: rgba(255, 255, 255, 0);">Hi
            all,<br>
            <br>
            I have a constraint handler that is adding setppc
            constraints (not rows/cuts) in the enfolp callback. I expect
            the setppc constraint to then add a row into the LP. It
            appears that sometimes this row is not in the LP (or
            removed) so my separator is adding a duplicate setppc
            constraint.</span></font></div>
      <div dir="ltr"><font color="#000000"><span style="caret-color:
            rgb(0, 0, 0); background-color: rgba(255, 255, 255, 0);"><br>
          </span></font></div>
      <div dir="ltr"><font color="#000000"><span style="caret-color:
            rgb(0, 0, 0); background-color: rgba(255, 255, 255, 0);">This
            also occurs when I tried separating rows directly. Sometimes
            they are not in the LP, so I’m separating the same rows
            again.<br>
            <br>
            Why does this occur? Is there a way to tell SCIP to simply
            add the existing row back into the LP?</span></font></div>
      <div dir="ltr"><font color="#000000"><span style="caret-color:
            rgb(0, 0, 0); background-color: rgba(255, 255, 255, 0);"><br>
          </span></font></div>
      <div dir="ltr"><font color="#000000"><span style="caret-color:
            rgb(0, 0, 0); background-color: rgba(255, 255, 255, 0);">Also,
            is there any benefit to separating constraints vs. rows? I
            assume constraints will improve primal heuristics and
            propagation. Although I’m not sure what can be propagated in
            column generation since setting a variable to 0 will
            regenerate that column and setting it to 1 will prevent
            future better columns from generating.<br>
            <br>
            Thanks in advance.<br>
            <br>
            Cheers<br>
            Eddie</span></font></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>
  </body>
</html>