Hi,<div>Just to update my previous email, I included that condition ( original variavles to be integer) in the CONSCHECK method, and it works fine in the presence of the heuristics.</div><div><br></div><div>Thanks,</div><div>Bahar<br><br>On Tuesday, July 28, 2015, Bahareh Eghtesadi <<a href="mailto:b.eghtesadi@gmail.com">b.eghtesadi@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Dear Benny,<div><br></div><div>Thanks for the reply.<br><div><br></div><div>I have the reformulated variables and another set of binary variables (psi). I have defined the psi variables as binary from the beginning, and I have a branching rule that branches when there is any fractional psi.</div><div>However, the reformulated variables are defined continuous, and I check the integrality of the original variables in the CONSENFOLP method. Is this a wrong place to check that? Should I do it in the <font size="2"><span style="background-color:rgba(255,255,255,0)">CONSCHECK method?</span></font></div><div><font size="2"><span style="background-color:rgba(255,255,255,0)"><br></span></font></div><div>What I learned is the the cutoff bound changes(to 5.29, the current optimal objective value that it returns) in the root node while the objective value in the root node is 3.5. Note that the true optimal objective value is 6.11. I thought it might obtain the cutoffbound from some heuristics. So I disabled the heuristics, and it returns 6.11.</div><div>Is there a reason for happening this? Because this means the heuristic does not notice the conditions in the constraint handler? I am now suspicious that I may need to check the integrality in the CONSCHECK method.</div><div><br></div><div>Best,</div><div>Bahar</div><div><font size="2"><span style="background-color:rgba(255,255,255,0)"></span><span><br></span></font><br>On Tuesday, July 28, 2015, Benjamin Müller <<a href="javascript:_e(%7B%7D,'cvml','benjamin.mueller@zib.de');" target="_blank">benjamin.mueller@zib.de</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
Dear Bahereh,<br>
<br>
so your problem contains only the reformulated (binary) psi
variables? Your problem is that you do not want to accept all
integer psi solutions because they might correspond to a fractional
solution of the original problem? If that is the case, do you
decline such a solution in CONSCHECK? How do you branch in the
CONSENFOLP after you registered that the current solution belongs to
a fractional one in the original space? Do you set the result
pointer to SCIP_BRANCHED?<br>
<br>
<br>
Best,<br>
<br>
Benny<br>
<br>
<br>
<div>On 07/27/2015 03:36 AM, Bahareh
Eghtesadi wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div>
<div>Dear all,<br>
<br>
</div>
I am implementing a b&p algorithm. In my problem, I have a
set of binary variables (beside the decomposition variables)
in my master problem, call them psi, for which I have a
branching rule. In my branching rule, the options for
constructor is:<br>
ObjBranchrule( scip, name, "branchs on Original vars", 50000 ,
-1 , 1.0)<br>
<br>
</div>
I also want to check the integrality of the original
variables(call x). For that, I have a conshdlr with following
options:<br>
<br>
ObjConshdlr(scip, name, "....",-10000 , 50000 , 10000, -1, -1 ,
1 , 0 , FALSE , FALSE , FALSE , FALSE ,
SCIP_PROPTIMING_BEFORELP)<br>
<div>
<div>
<div>
<div>
<div><span style="background-color:rgb(255,255,255);color:rgb(153,153,153)"></span><span style="background-color:rgb(255,255,255);color:rgb(153,153,153)"></span><br>
</div>
<div>In this conshdlr, in the
CONSENFOLP method, I find the values of the original
variables and if they are not integer, I call
SCIPcreateChild.<br>
<br>
</div>
<div>However, in the optimal
solution, all the psi variables are binary, but the
original variables are continuous. The objective
function value is also less than the optimal obj.
value(I already know it).<br>
</div>
<div>I have tried to track down
the b&b tree, and it seems whenever all the binary
variables(psi) are binary, it takes it as the optimal
solution eventhough there are some fractional x. <br>
</div>
<div>I also changed the priority
of the conshdlr to be less than the branching rule's.
Then, the same solution is caught with less number of
nodes(quicker). <br>
<br>
</div>
<div>I am not sure how to check
what happens after the psi s are binary, and why it
doesnt go to the CONSENFOLP method after that. Is
there a reason for happening this?<br>
</div>
<div>I attached the output file
with statistics and the branching statistics.<br>
<br>
</div>
<div>Thanks in advance.<br>
</div>
<div><br>
<br>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
Scip mailing list
<a>Scip@zib.de</a>
<a href="http://listserv.zib.de/mailman/listinfo/scip" target="_blank">http://listserv.zib.de/mailman/listinfo/scip</a>
</pre>
</blockquote>
<br>
<pre cols="72">--
______________________________
Benjamin Müller
Zuse Institute Berlin
Takustr. 7, 14195 Berlin
<a>benjamin.mueller@zib.de</a>
<a href="tel:%2B49%2030%20841%2085-195" value="+493084185195" target="_blank">+49 30 841 85-195</a></pre>
</div>
</blockquote></div>
</div></div>
</blockquote></div><br><br>-- <br><span style="background-color:rgb(255,255,255);color:rgb(153,153,153)">Regards</span><br style="background-color:rgb(255,255,255);color:rgb(153,153,153)"><span style="background-color:rgb(255,255,255);color:rgb(153,153,153)">Bahareh Eghtesadi</span><br><br>