<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Dear Matheus,<br>
    <br>
    if you create your constraints as linear constraints, and not as
    rows, you cannot add them with SCIPaddRowProbing, but should rather
    use SCIPaddConsNode and provide the probing node as the node to add
    the constraint to.<br>
    <br>
    I would recommend to have a look at the multi-aggregated branching
    rule (src/scip/branch_multaggr.c), which does something very similar
    to what you want to do.<br>
    <br>
    Best,<br>
    Gerald<br>
    <br>
    <div class="moz-cite-prefix">On 21.03.2018 00:26, Matheus Ota wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAL0UnZ09oFiSgnAVC2E2Wy_i1-Td=MZrrPh8NeJYRVaqvNZORQ@mail.gmail.com">
      <div dir="ltr">
        <div>Hi,<br>
          <br>
        </div>
        <div>Thanks for the fast reply! I followed what you said, but I
          guess I'm doing something wrong, can you help me to figure it
          out?<br>
          <br>
        </div>
        <div>So first I enclosed the part of the code that I want to
          compute the lower bounds in SCIPstartProbing(scip) and
          SCIPendProbing(scip).<br>
          <br>
        </div>
        <div>Then I call SCIPnewProbingNode(scip), create the
          constraint1 and add it with SCIPaddRowProbing(scip,
          constraint1). I then solve the probing node with
          SCIPsolveProbingLP(scip, -1, &lperror, &cutoff), get
          the lower bound with SCIPgetLPObjval(scip) and got back to the
          parent with SCIPbacktrackProbing(scip, 1).<br>
          <br>
        </div>
        <div>This same process is then repeated imposing constraint2 in
          the problem.<br>
          <br>
        </div>
        <div>Can you tell me if this is the right way to do it? The code
          is not working as it was before adding the branching rule and
          I'm having some difficulties in understanding how to use the
          probing mode correctly.<br>
          <br>
        </div>
        <div>Thanks again,<br>
        </div>
        <div>Matheus</div>
        <br>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">2018-03-20 5:52 GMT-03:00 Gregor Hendel
          <span dir="ltr"><<a href="mailto:hendel@zib.de"
              target="_blank" moz-do-not-send="true">hendel@zib.de</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"> Dear Matheus,<br>
              <br>
              this sounds like an application of the SCIP probing mode,
              which allows to explore some tentative children before
              branching. Please have a look at the documentation of the
              probing mode:<br>
              <br>
              <a class="m_3923750445048037240moz-txt-link-freetext"
                href="http://scip.zib.de/doc-5.0.1/html/group__PublicProbingMethods.php"
                target="_blank" moz-do-not-send="true">http://scip.zib.de/doc-5.0.1/<wbr>html/group__<wbr>PublicProbingMethods.php</a><br>
              <br>
              Probing mode supports local constraints at the tentative
              node, and solve the corresponding LP relaxation.<br>
              <br>
              You can then retrieve the LP solution objective using
              SCIPgetLPObjval(), see also<br>
              <br>
              <a class="m_3923750445048037240moz-txt-link-freetext"
                href="http://scip.zib.de/doc-5.0.1/html/group__PublicLPMethods.php"
                target="_blank" moz-do-not-send="true">http://scip.zib.de/doc-5.0.1/<wbr>html/group__PublicLPMethods.<wbr>php</a><br>
              <br>
              for further information.<br>
              <br>
              Happy probing,<br>
              Gregor
              <div>
                <div class="h5"><br>
                  <br>
                  <br>
                  <div class="m_3923750445048037240moz-cite-prefix">Am
                    19.03.2018 um 21:45 schrieb Matheus Ota:<br>
                  </div>
                </div>
              </div>
              <blockquote type="cite">
                <div>
                  <div class="h5">
                    <div dir="ltr">
                      <div>
                        <div>
                          <div>Hi,<br>
                            <br>
                          </div>
                          Im trying to use SCIP to implement a
                          Branch-Cut-and-Price for the VRP. For now Im
                          focusing only on the Branch-and-Cut part,
                          using the CVRPSEP package (<a
href="http://econ.au.dk/research/researcher-websites/jens-lysgaard/cvrpsep/"
                            target="_blank" moz-do-not-send="true">http://econ.au.dk/research/<wbr>researcher-websites/jens-<wbr>lysgaard/cvrpsep/</a>).
                          I already added the cuts and my program is
                          able to solve some simple instances, in order
                          to increase its performance I need to
                          implement custom branching rules. <br>
                          <br>
                        </div>
                        The branching rule works this way: it first
                        select a few subsets of the set of vertexes in
                        the graph and impose a few constraints on them.
                        It then computes the lower bound (solving the
                        relaxation) for each child node and uses these
                        values to choose the node to branch on. Could
                        you please give me some information about of how
                        I can get the lower bound on the branching rule
                        callback? Or maybe a better way of doing this or
                        something similar?<br>
                        <br>
                      </div>
                      <div>Thanks,<br>
                      </div>
                      <div>Matheus <br>
                      </div>
                    </div>
                    <br>
                    <fieldset
                      class="m_3923750445048037240mimeAttachmentHeader"></fieldset>
                    <br>
                  </div>
                </div>
                <pre>______________________________<wbr>_________________
Scip mailing list
<a class="m_3923750445048037240moz-txt-link-abbreviated" href="mailto:Scip@zib.de" target="_blank" moz-do-not-send="true">Scip@zib.de</a>
<a class="m_3923750445048037240moz-txt-link-freetext" href="https://listserv.zib.de/mailman/listinfo/scip" target="_blank" moz-do-not-send="true">https://listserv.zib.de/<wbr>mailman/listinfo/scip</a>
</pre>
              </blockquote>
              <br>
            </div>
            <br>
            ______________________________<wbr>_________________<br>
            Scip mailing list<br>
            <a href="mailto:Scip@zib.de" moz-do-not-send="true">Scip@zib.de</a><br>
            <a href="https://listserv.zib.de/mailman/listinfo/scip"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://listserv.zib.de/<wbr>mailman/listinfo/scip</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <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>