[Scip] Heuristic Frequency
Timo Berthold
berthold at zib.de
Wed Apr 3 08:43:40 MEST 2013
Hi Vivek,
the frequency of calling heuristics is w.r.t. the depth of nodes, not the
number of nodes. Hence, the heuristic gets called at nodes in depth 0, 12,
24, ...
If you are doing a DFS that starts with a long dive, you will see
heuristic calls at the root, node 13, node 25,... . If, however, the tree
can always be pruned at depth at latest 11, the root node call will be the
only one.
Also, how did you check that it was invoked at a certain depth? Did you
add some printf's or are you referring to the display character of the
heuristic being print as a first character of a SCIP output line? The
latter one only happens when an inmproving solution is found. This can of
course be quite arbitrary (in particular when your heuristic found the
optimum at the root, it will never happen again).
Best regards
Timo
> Hello,
>
> I have set the following attributes of a heuristic:
>
> #define HEUR_PRIORITY 10000
> #define HEUR_FREQ 12
> #define HEUR_FREQOFS 0
> #define HEUR_MAXDEPTH 100000
> #define HEUR_TIMING SCIP_HEURTIMING_AFTERNODE
> #define HEUR_USESSUBSCIP FALSE
>
> Heuristic is correctly invoked after the root node processing.
>
> And in some models, it's invoked at node 13, node 25, etc., correctly but
> in some cases, it's not invoked. What criteria decides whether the
> heuristic should be invoked or not?
>
> Regards,
> Vivek.
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> http://listserv.zib.de/mailman/listinfo/scip
>
More information about the Scip
mailing list