<html><body>
<p>Mathieu,<br>
<br>
It sounds as if the cut generators you are using have "mustCallAgain" flag set so that they go round and round until no cut is generated. - is that so?<br>
<br>
I have modified code so eventHappened_ will be set - that seems to skip more stuff and I hope it will do the trick for you (and stop a bit faster).<br>
<br>
John<br>
<br>
<img width="16" height="16" src="cid:1__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt="Inactive hide details for Mathieu LACROIX ---08/25/2009 10:25:35 AM---John, Thank you for having updated Cbc. The trunk version"><font color="#424282">Mathieu LACROIX ---08/25/2009 10:25:35 AM---John, Thank you for having updated Cbc. The trunk version stops when time</font><br>
<br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">From:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">Mathieu LACROIX <lacroix@lamsade.dauphine.fr></font></td></tr>
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">To:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">John J Forrest/Watson/IBM@IBMUS</font></td></tr>
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">Cc:</font></td><td width="100%" valign="middle"><img width="1" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">Mathieu Lacroix <lacroix@isima.fr>, cbc@list.coin-or.org, cbc-bounces@list.coin-or.org</font></td></tr>
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">Date:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">08/25/2009 10:25 AM</font></td></tr>
<tr valign="top"><td width="1%"><img width="96" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2" color="#5F5F5F">Subject:</font></td><td width="100%"><img width="1" height="1" src="cid:2__=0ABBFC8EDFC297378f9e8a93df938@us.ibm.com" border="0" alt=""><br>
<font size="2">Re: [Cbc] [CBC] Time limit in Cbc</font></td></tr>
</table>
<hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br>
<br>
<br>
<tt>John,<br>
<br>
Thank you for having updated Cbc. The trunk version stops when time <br>
limit is reached. However, there is another problem.<br>
When the time limit is reached, Cbc stops the cut generation but does <br>
not check if there exist some violated constraints.<br>
Therefore, in some cases, the solution obtained by Cbc is integer and <br>
thus, it is considered as feasible. Unfortunately,<br>
this is not the case in my problem since I have an exponential number of <br>
constraints in my formulation.<br>
<br>
In order to avoid this problem, another cut generation must be done. If <br>
any violated constraint is found, thus, the solution<br>
obtained by Cbc is infeasible, even if it is integer. Is there any <br>
option to force Cbc to compute another cut generation in order<br>
to know if the last solution is feasible for the problem?<br>
<br>
Thank you for your help,<br>
Best regards,<br>
Mathieu<br>
<br>
John J Forrest a écrit :<br>
><br>
> Mathieu,<br>
><br>
> Cbc does check time after each round of cuts and a solve. When I <br>
> played around with a time limit, I found that it was still going into <br>
> heuristics at root node. This could be the problem, especially as the <br>
> time limit check in an expensive heuristic (i.e. one that does a small <br>
> branch and bound) checks the time it has spent against smaller of its <br>
> time limit and overall time limit. It should be checking total time spent.<br>
><br>
> Will put in a few more checks and fix time check at weekend - see if <br>
> that helps.<br>
><br>
> Solution etc looks OK to me.<br>
><br>
> John<br>
><br>
> Inactive hide details for Mathieu Lacroix ---08/19/2009 05:43:05 <br>
> AM---Hello everybody, It is possible to give a time limit to CMathieu <br>
> Lacroix ---08/19/2009 05:43:05 AM---Hello everybody, It is possible to <br>
> give a time limit to Cbc. However, it seems that cbc<br>
><br>
><br>
> From:                  <br>
> Mathieu Lacroix <lacroix@isima.fr><br>
><br>
> To:                  <br>
> cbc@list.coin-or.org<br>
><br>
> Date:                  <br>
> 08/19/2009 05:43 AM<br>
><br>
> Subject:                  <br>
> [Cbc] [CBC] Time limit in Cbc<br>
><br>
> Sent by:                  <br>
> cbc-bounces@list.coin-or.org<br>
><br>
> ------------------------------------------------------------------------<br>
><br>
><br>
><br>
> Hello everybody,<br>
><br>
> It is possible to give a time limit to Cbc. However, it seems that cbc<br>
> checks whether the time limit is reached only before branching. As in my<br>
> problem, the time limit is reached before branching (due to cut<br>
> generation at the root node), is it possible to force cbc to check the<br>
> time limit after each cut generation? And if the time limit is reached,<br>
> how to stop cbc without loosing all the informations (upper bound, lower<br>
> bound and best solution found if any)?<br>
><br>
> Thanks you for any reply,<br>
> Cheers,<br>
><br>
> Mathieu LACROIX<br>
><br>
> -- <br>
> Mathieu LACROIX<br>
> lacroix@lamsade.dauphine.fr<br>
> Laboratoire LAMSADE<br>
> Université Paris-Dauphine<br>
> Place du Maréchal de Lattre de Tassigny<br>
> 75775 Paris cedex 16 - France<br>
> Tel: +33 (0)1 44 05 48 53<br>
> URL: </tt><tt><a href="http://epoc.isima.fr/~lacroix/">http://epoc.isima.fr/~lacroix/</a></tt><tt> <</tt><tt><a href="http://epoc.isima.fr/%7Elacroix/">http://epoc.isima.fr/%7Elacroix/</a></tt><tt>><br>
><br>
><br>
><br>
> _______________________________________________<br>
> Cbc mailing list<br>
> Cbc@list.coin-or.org<br>
> </tt><tt><a href="http://list.coin-or.org/mailman/listinfo/cbc">http://list.coin-or.org/mailman/listinfo/cbc</a></tt><tt><br>
><br>
><br>
> ------------------------------------------------------------------------<br>
><br>
> _______________________________________________<br>
> Cbc mailing list<br>
> Cbc@list.coin-or.org<br>
> </tt><tt><a href="http://list.coin-or.org/mailman/listinfo/cbc">http://list.coin-or.org/mailman/listinfo/cbc</a></tt><tt><br>
> <br>
<br>
<br>
-- <br>
Mathieu LACROIX<br>
lacroix@lamsade.dauphine.fr<br>
Laboratoire LAMSADE<br>
Université Paris-Dauphine<br>
Place du Maréchal de Lattre de Tassigny<br>
75775 Paris cedex 16 - France<br>
Tel: +33 (0)1 44 05 48 53<br>
URL: </tt><tt><a href="http://epoc.isima.fr/~lacroix/">http://epoc.isima.fr/~lacroix/</a></tt><tt><br>
<br>
<br>
</tt><br>
<br>
</body></html>