int user_start_heurs(void *user, double *ub, double *ub_estimate)
The user invokes heuristics and generates the initial global upper bound and also perhaps an upper bound estimate. This is the last place where the user can do things before the branch and cut algorithm starts. She might do some preprocessing, in addition to generating the upper bound.
void *user | IN | Pointer to the user-defined data structure. |
double *ub | OUT | Pointer to the global upper bound. Initially, the upper bound is set to either -MAXDOUBLE or the bound read in from the parameter file, and should be changed by the user only if a better valid upper bound is found. |
double *ub_estimate | OUT | Pointer to an estimate of the global upper bound. This is useful if the BEST_ESTIMATE diving strategy is used (see the treemanager parameter diving_strategy) |
USER_ERROR | Error. This error is probably not fatal. |
USER_SUCCESS | User executed function successfully. |
USER_DEFAULT | No action (someday, there may be a default MIP heuristic here). |