<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Dear Albert,<br>
    <br>
    changing the upper bound to 0 to enforce your decision is correct.
    However, your consactive method should only mark the constraint to
    be repropagated; afterwards, propagation will be called where you
    should adjust the bounds. Since the bound is only changed at the
    current node, SCIP will automatically undo this when the current
    subtree is left and re-install the bound when it is re-entered. In
    the latter case, you thus only need to propagate variables added in
    the meantime.<br>
    <br>
    For more details, see
    <a class="moz-txt-link-freetext" href="https://scip.zib.de/doc-6.0.2/html/FAQ.php#pricerandnodedata">https://scip.zib.de/doc-6.0.2/html/FAQ.php#pricerandnodedata</a> or have
    a look at the binpacking example.<br>
    <br>
    Best,<br>
    Gerald<br>
    <br>
    <div class="moz-cite-prefix">Am 09.01.20 um 10:45 schrieb
      Schrotenboer, Albert:<br>
    </div>
    <blockquote type="cite"
cite="mid:CALr_SJm58B7cRt0ECRU+a1rUfx0sHpSK1kyC1YAecke3uSn__w@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div class="gmail_default"
          style="font-family:arial,helvetica,sans-serif">Dear SCIP
          Community,</div>
        <div class="gmail_default"
          style="font-family:arial,helvetica,sans-serif"><br>
        </div>
        <div class="gmail_default"
          style="font-family:arial,helvetica,sans-serif">I am solving a
          basic VRP with branch & price, and have a question
          regarding a branching rule I've implemented (Actually, I
          forgot how to do it...) I branch on x_{ij} arcs, which I
          identify with my branchrule object. To handle this information
          down the b&b tree, I use a constraint handler with the
          following virtual methods implemented:<br>
        </div>
        <div class="gmail_default"
          style="font-family:arial,helvetica,sans-serif"><br>
        </div>
        <div class="gmail_default"
          style="font-family:arial,helvetica,sans-serif">SCIP_DECL_CONSTRANS(ObjConshdlrOwn::scip_trans)
          <br>
        </div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">      To
            transform the info, nothing special</span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif"></span><span
            class="gmail_default"
            style="font-family:arial,helvetica,sans-serif"></span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">SCIP_DECL_CONSACTIVE(ObjConshdlrOwn::scip_active)</span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">      Here I
            search which of my generated routes should be fixed to zero
            corresponding to my branching information. (I also do the
            appropriate adaptations in my pricing based on the
            branching). I fix my variables by the following routines:</span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif"><br>
          </span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">if
            (SCIPvarGetUbLocal(var) > 0.01)<br>
                  SCIP_CALL(SCIPchgVarUb(scip,
            (*d_varConsInfo).v_path[r].d_var, 0.0) );  <br>
          </span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif"><br>
          </span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">This all
            works nicely (when I do not run in debug mode). When I run
            in Debug mode, however, an assert is collapsing when SCIP
            alters the path of the tree (when it backtracks a few
            nodes), saying that:</span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">JRP:
            src/scip/tree.c:1803: SCIPnodeAddBoundinfer: Assertion
            `(SCIP_NODETYPE)node->nodetype == SCIP_NODETYPE_FOCUSNODE
            || (SCIP_NODETYPE)node->nodetype ==
            SCIP_NODETYPE_PROBINGNODE ||
            (SCIP_NODETYPE)node->nodetype == SCIP_NODETYPE_CHILD ||
            (SCIP_NODETYPE)node->nodetype ==
            SCIP_NODETYPE_REFOCUSNODE || node->depth == 0' failed.<br>
          </span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif"><br>
          </span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">My question
            is, therefore, the following: Is changing the UB to enforce
            variables to 0 the correct way to go? In addition, am I
            required to implement the deactive virtual method as well,
            to change the upper bounds back to what they were? <br>
          </span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif"><br>
          </span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">Kind regards,</span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif">Albert<br>
          </span></div>
        <div><span class="gmail_default"
            style="font-family:arial,helvetica,sans-serif"><br>
          </span></div>
        <div>
          <div>-- <br>
            <div dir="ltr" class="gmail_signature"
              data-smartmail="gmail_signature">
              <div dir="ltr">
                <div>
                  <div dir="ltr">
                    <div>
                      <div dir="ltr">
                        <div>
                          <div dir="ltr">
                            <div dir="ltr">
                              <div dir="ltr">
                                <div dir="ltr">
                                  <div
style="color:rgb(0,0,0);font-size:10pt;letter-spacing:normal;line-height:12pt;margin-bottom:0px;margin-top:0px">
                                    <p class="MsoNormal"><span
                                        style="color:rgb(102,102,102)">Albert
                                        Schrotenboer</span></p>
                                    <p class="MsoNormal"><span
                                        style="color:rgb(102,102,102)">Postdoctoral
                                        Researcher<br>
                                      </span></p>
                                    <p class="MsoNormal"><span
                                        style="color:rgb(102,102,102)">Faculty
                                        of Economics and Business</span></p>
                                    <p class="MsoNormal"><span
                                        style="color:rgb(102,102,102)"></span><font
                                        color="rgb(34, 34, 34)"><span
                                          style="color:rgb(102,102,102)">University
                                          of Groningen</span></font><font
                                        color="rgb(34, 34, 34)"><span
                                          style="color:rgb(102,102,102)"><br>
                                        </span></font></p>
                                    <p class="MsoNormal"><font
                                        color="rgb(34, 34, 34)"><span
                                          style="color:rgb(102,102,102)">P.O.
                                          Box 800, 9700 AV Groningen</span>
                                      </font></p>
                                  </div>
                                </div>
                              </div>
                            </div>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </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>