Detailed Description
event handler for tree size estimation and restarts
This event handler plugin provides different methods for approximating the current fraction of the search that has already been completed and for estimating the total tree size at completion. It can trigger restarts of the current run if the current run seems hopeless.
For details about the available approximations of search completion, please see
Anderson, Hendel, Le Bodic, Pfetsch Estimating The Size of Branch-and-Bound Trees under preparation
This code is a largely enriched version of a code that was used for clairvoyant restarts, see
Anderson, Hendel, Le Bodic, Viernickel Clairvoyant Restarts in Branch-and-Bound Search Using Online Tree-Size Estimation AAAI-19: Proceedings of the Thirty-Third AAAI Conference on Artificial Intelligence, 2018
Definition in file event_estim.h.
Go to the source code of this file.
Functions | |
SCIP_RETCODE | SCIPincludeEventHdlrEstim (SCIP *scip) |
SCIP_Real | SCIPgetTreesizeEstimation (SCIP *scip) |
Function Documentation
◆ SCIPincludeEventHdlrEstim()
SCIP_RETCODE SCIPincludeEventHdlrEstim | ( | SCIP * | scip | ) |
creates event handler for tree size estimation
- Parameters
-
scip SCIP data structure
Definition at line 2889 of file event_estim.c.
References BMSclearMemory, createTreeData(), DEFAULT_COEFMONOSSG, DEFAULT_COEFMONOWEIGHT, DEFAULT_COMPLETIONTYPE, DEFAULT_COUNTONLYLEAVES, DEFAULT_ESTIMMETHOD, DEFAULT_HITCOUNTERLIM, DEFAULT_MINNODES, DEFAULT_REGFORESTFILENAME, DEFAULT_REPORTFREQ, DEFAULT_RESTARTACTPRICERS, DEFAULT_RESTARTFACTOR, DEFAULT_RESTARTLIMIT, DEFAULT_RESTARTNONLINEAR, DEFAULT_RESTARTPOLICY, DEFAULT_SHOWSTATS, DEFAULT_SSG_NMAXSUBTREES, DEFAULT_SSG_NMINNODESLASTSPLIT, DEFAULT_TREEPROFILE_ENABLED, DEFAULT_TREEPROFILE_MINNODESPERDEPTH, DEFAULT_USELEAFTS, DISP_DESC, DISP_HEADER, DISP_NAME, DISP_POSITION, DISP_PRIORITY, DISP_STRIPLINE, DISP_WIDTH, ESTIMMETHODS, EVENTHDLR_DESC, EVENTHDLR_NAME, FALSE, freeTreeData(), includeTimeseries(), NULL, SCIP_CALL, SCIP_CALL_TERMINATE, SCIP_DISPSTATUS_AUTO, SCIP_LONGINT_MAX, SCIP_OKAY, SCIP_REAL_MAX, SCIPaddBoolParam(), SCIPaddCharParam(), SCIPaddIntParam(), SCIPaddLongintParam(), SCIPaddRealParam(), SCIPaddStringParam(), SCIPallocMemory, SCIPfreeMemory, SCIPincludeDisp(), SCIPincludeEventhdlrBasic(), SCIPincludeTable(), SCIPsetEventhdlrCopy(), SCIPsetEventhdlrExit(), SCIPsetEventhdlrExitsol(), SCIPsetEventhdlrFree(), SCIPsetEventhdlrInit(), SCIPsetEventhdlrInitsol(), TABLE_DESC, TABLE_EARLIEST_STAGE, TABLE_NAME, TABLE_POSITION, and TRUE.
Referenced by SCIP_DECL_EVENTCOPY(), and SCIPincludeDefaultPlugins().
◆ SCIPgetTreesizeEstimation()
return an estimation of the final tree size
- Parameters
-
scip SCIP data structure
Definition at line 3017 of file event_estim.c.
References ESTIMMETHOD_COMPL, ESTIMMETHOD_ENSMBL, ESTIMMETHOD_GAP, ESTIMMETHOD_LFREQ, ESTIMMETHOD_OPEN, ESTIMMETHOD_SSG, ESTIMMETHOD_TPROF, ESTIMMETHOD_TREEWEIGHT, ESTIMMETHOD_WBE, ESTIMMETHODS, EVENTHDLR_NAME, getEnsembleEstimation(), getEstimCompletion(), NULL, predictTotalSizeTreeProfile(), SCIP_CALL_ABORT, SCIP_Real, SCIPABORT, SCIPerrorMessage, SCIPeventhdlrGetData(), SCIPfindEventhdlr(), SCIPwarningMessage(), timeSeriesEstimate(), treeDataGetWbe(), TSPOS_GAP, TSPOS_LFREQ, TSPOS_NONE, TSPOS_OPEN, TSPOS_SSG, and TSPOS_TREEWEIGHT.
Referenced by printReport(), and shouldApplyRestartEstimation().