sepa.c File Reference Detailed Descriptionmethods and datastructures for separators Definition in file sepa.c. #include <assert.h> #include <string.h> #include "scip/def.h" #include "scip/set.h" #include "scip/stat.h" #include "scip/clock.h" #include "scip/paramset.h" #include "scip/sepastore.h" #include "scip/scip.h" #include "scip/sepa.h" #include "scip/pub_message.h" #include "scip/pub_misc.h" #include "scip/struct_sepa.h" Go to the source code of this file. Function Documentation
comparison method for sorting separators w.r.t. to their name Definition at line 49 of file sepa.c. References SCIPsepaGetName().
method to call, when the priority of a separator was changed Definition at line 56 of file sepa.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPparamGetData(), SCIPparamGetInt(), and SCIPsetSepaPriority().
copies the given separator to a new scip
Definition at line 70 of file sepa.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPdebugMessage, and SCIPsepaGetName(). Referenced by SCIPsetCopyPlugins().
creates a separator
Definition at line 88 of file sepa.c. References BMSallocMemory, BMSduplicateMemoryArray, FALSE, NULL, paramname, SCIP_ALLOC, SCIP_CALL, SCIP_CLOCKTYPE_DEFAULT, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPclockCreate(), SCIPsetAddBoolParam(), SCIPsetAddIntParam(), SCIPsetAddRealParam(), SCIPsnprintf(), and TRUE. Referenced by SCIPincludeSepa(), and SCIPincludeSepaBasic().
calls destructor and frees memory of separator
Definition at line 180 of file sepa.c. References BMSfreeMemory, BMSfreeMemoryArray, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree().
initializes separator
Definition at line 206 of file sepa.c. References FALSE, SCIP_Sepa::initialized, SCIP_Sepa::lastsepanode, SCIP_Sepa::lpwasdelayed, SCIP_Sepa::name, SCIP_Sepa::ncalls, SCIP_Sepa::ncallsatnode, SCIP_Sepa::nconssfound, SCIP_Sepa::ncutoffs, SCIP_Sepa::ncutsapplied, SCIP_Sepa::ncutsfound, SCIP_Sepa::ncutsfoundatnode, SCIP_Sepa::ndomredsfound, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockReset(), SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIP_Sepa::sepaclock, SCIP_Sepa::setuptime, SCIP_Sepa::solwasdelayed, and TRUE. Referenced by SCIPsetIncludeExternalCode().
calls exit method of separator
Definition at line 254 of file sepa.c. References FALSE, SCIP_Sepa::initialized, SCIP_Sepa::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIP_Sepa::setuptime. Referenced by SCIPsetInitPlugins().
informs separator that the branch and bound process is being started
Definition at line 284 of file sepa.c. References FALSE, SCIP_Sepa::lpwasdelayed, NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIP_Sepa::setuptime, and SCIP_Sepa::solwasdelayed. Referenced by SCIPsetExitprePlugins().
informs separator that the branch and bound process data is being freed
Definition at line 311 of file sepa.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Sepa::setuptime. Referenced by SCIPsetInitsolPlugins().
calls LP separation method of separator
Definition at line 335 of file sepa.c. References SCIP_Sepa::delay, SCIP_Sepa::freq, SCIP_Sepa::lastsepanode, SCIP_Sepa::lpwasdelayed, MAX, SCIP_Sepa::maxbounddist, SCIP_Stat::nactiveconss, SCIP_Sepa::name, SCIP_Stat::nboundchgs, SCIP_Sepa::ncalls, SCIP_Sepa::ncallsatnode, SCIP_Sepa::nconssfound, SCIP_Sepa::ncutoffs, SCIP_Sepa::ncutsfound, SCIP_Sepa::ncutsfoundatnode, SCIP_Sepa::ndomredsfound, SCIP_Stat::nholechgs, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, SCIP_Stat::ntotalnodes, NULL, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_NEWROUND, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPclockStart(), SCIPclockStop(), SCIPdebugMessage, SCIPerrorMessage, SCIPsepastoreGetNCuts(), SCIPsetIsLE(), and SCIP_Sepa::sepaclock. Referenced by separationRoundLP().
calls primal solution separation method of separator
Definition at line 441 of file sepa.c. References SCIP_Sepa::delay, SCIP_Sepa::freq, SCIP_Sepa::lastsepanode, MAX, SCIP_Stat::nactiveconss, SCIP_Sepa::name, SCIP_Stat::nboundchgs, SCIP_Sepa::ncalls, SCIP_Sepa::ncallsatnode, SCIP_Sepa::nconssfound, SCIP_Sepa::ncutoffs, SCIP_Sepa::ncutsfound, SCIP_Sepa::ncutsfoundatnode, SCIP_Sepa::ndomredsfound, SCIP_Stat::nholechgs, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, SCIP_Stat::ntotalnodes, NULL, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_NEWROUND, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPclockStart(), SCIPclockStop(), SCIPdebugMessage, SCIPerrorMessage, SCIPsepastoreGetNCuts(), SCIP_Sepa::sepaclock, and SCIP_Sepa::solwasdelayed. Referenced by separationRoundSol().
gets user data of separator
Definition at line 544 of file sepa.c. References NULL, and SCIP_Sepa::sepadata. Referenced by freeSubscip(), SCIP_DECL_SEPACOPY(), SCIP_DECL_SEPAEXECLP(), SCIP_DECL_SEPAEXECSOL(), SCIP_DECL_SEPAEXIT(), SCIP_DECL_SEPAEXITSOL(), SCIP_DECL_SEPAFREE(), SCIP_DECL_SEPAINIT(), SCIP_DECL_SEPAINITSOL(), SCIPfindObjSepa(), SCIPgetObjSepa(), SCIPsetBasePointClosecuts(), and separateCuts().
sets user data of separator; user has to free old data in advance!
Definition at line 554 of file sepa.c. References NULL, and SCIP_Sepa::sepadata. Referenced by SCIP_DECL_SEPAFREE().
sets copy method of separator
Definition at line 567 of file sepa.c. References NULL. Referenced by SCIPsetSepaCopy().
sets destructor method of separator
Definition at line 578 of file sepa.c. References NULL. Referenced by SCIPsetSepaFree().
sets initialization method of separator
Definition at line 589 of file sepa.c. References NULL. Referenced by SCIPsetSepaInit().
sets deinitialization method of separator
Definition at line 600 of file sepa.c. References NULL. Referenced by SCIPsetSepaExit().
sets solving process initialization method of separator
Definition at line 611 of file sepa.c. References NULL. Referenced by SCIPsetSepaInitsol().
sets solving process deinitialization method of separator
Definition at line 622 of file sepa.c. References NULL. Referenced by SCIPsetSepaExitsol().
gets name of separator
Definition at line 633 of file sepa.c. References SCIP_Sepa::name, and NULL. Referenced by generateDisjCutSOS1(), paramsetSetSeparatingAggressive(), paramsetSetSeparatingDefault(), paramsetSetSeparatingOff(), printSeparatorStatistics(), process(), SCIP_DECL_DIALOGEXEC(), SCIP_DECL_SEPACOPY(), SCIP_DECL_SEPAEXECLP(), SCIP_DECL_SEPAEXITSOL(), SCIP_DECL_SEPAFREE(), SCIP_DECL_SORTPTRCOMP(), SCIPincludeDialogDefaultFix(), SCIPincludeDialogDefaultSet(), SCIPparamsetSetToSubscipsOff(), SCIPsepaCopyInclude(), SCIPsetBasePointClosecuts(), SCIPsetSortRelaxs(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), separationRoundLP(), and separationRoundSol().
gets description of separator
Definition at line 643 of file sepa.c. References SCIP_Sepa::desc, and NULL. Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().
gets priority of separator
Definition at line 653 of file sepa.c. References NULL, and SCIP_Sepa::priority. Referenced by SCIP_DECL_DIALOGEXEC(), separationRoundLP(), and separationRoundSol(). sets priority of separator
Definition at line 663 of file sepa.c. References FALSE, NULL, and SCIP_Sepa::priority. Referenced by SCIPsetSepaPriority().
gets frequency of separator
Definition at line 677 of file sepa.c. References SCIP_Sepa::freq, and NULL. Referenced by SCIP_DECL_DIALOGEXEC().
sets frequency of separator
Definition at line 687 of file sepa.c. References SCIP_Sepa::freq, and NULL. get maximal bound distance at which the separator is called
Definition at line 698 of file sepa.c. References SCIP_Sepa::maxbounddist, and NULL. Referenced by SCIP_DECL_DIALOGEXEC(). does the separator use a secondary SCIP instance?
Definition at line 708 of file sepa.c. References NULL, and SCIP_Sepa::usessubscip. Referenced by SCIPparamsetSetToSubscipsOff(). enables or disables all clocks of
Definition at line 718 of file sepa.c. References NULL, SCIPclockEnableOrDisable(), SCIP_Sepa::sepaclock, and SCIP_Sepa::setuptime. Referenced by SCIPsetSetReoptimizationParams(). gets time in seconds used in this separator for setting up for next stages
Definition at line 730 of file sepa.c. References NULL, SCIPclockGetTime(), and SCIP_Sepa::setuptime. Referenced by printSeparatorStatistics(). gets time in seconds used in this separator
Definition at line 740 of file sepa.c. References NULL, SCIPclockGetTime(), and SCIP_Sepa::sepaclock. Referenced by printSeparatorStatistics(), and SCIP_DECL_SEPAEXECLP().
gets the total number of times, the separator was called
Definition at line 750 of file sepa.c. References SCIP_Sepa::ncalls, and NULL. Referenced by printSeparatorStatistics(), and separateCuts().
gets the number of times, the separator was called at the current node
Definition at line 760 of file sepa.c. References SCIP_Sepa::ncallsatnode, and NULL. Referenced by SCIP_DECL_SEPAEXECLP(), and separateCuts().
gets total number of times, the separator detected a cutoff
Definition at line 770 of file sepa.c. References SCIP_Sepa::ncutoffs, and NULL. Referenced by printSeparatorStatistics().
gets the total number of cutting planes found by this separator
Definition at line 780 of file sepa.c. References SCIP_Sepa::ncutsfound, and NULL. Referenced by printSeparatorStatistics(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), and separateSupLiftedMinimalCoverInequality().
gets the total number of cutting planes applied to lp
Definition at line 790 of file sepa.c. References SCIP_Sepa::ncutsapplied, and NULL. Referenced by printSeparatorStatistics().
increase count of applied cuts
Definition at line 800 of file sepa.c. References SCIP_Sepa::ncutsapplied, and NULL. Referenced by sepastoreApplyCut().
increase count of found cuts
Definition at line 810 of file sepa.c. References SCIP_Sepa::ncutsfound, and NULL. Referenced by SCIPcutpoolSeparate().
increase count of found cuts at current node
Definition at line 820 of file sepa.c. References SCIP_Sepa::ncutsfoundatnode, and NULL. Referenced by SCIPcutpoolSeparate().
gets the number of cutting planes found by this separator at the current node
Definition at line 830 of file sepa.c. References SCIP_Sepa::ncutsfoundatnode, and NULL.
gets total number of additional constraints added by this separator
Definition at line 840 of file sepa.c. References SCIP_Sepa::nconssfound, and NULL. Referenced by printSeparatorStatistics().
gets total number of domain reductions found by this separator
Definition at line 850 of file sepa.c. References SCIP_Sepa::ndomredsfound, and NULL. Referenced by printSeparatorStatistics(). should separator be delayed, if other separators found cuts?
Definition at line 860 of file sepa.c. References SCIP_Sepa::delay, and NULL. Referenced by SCIP_DECL_DIALOGEXEC(). was separation of the LP solution delayed at the last call?
Definition at line 870 of file sepa.c. References SCIP_Sepa::lpwasdelayed, and NULL. Referenced by SCIP_DECL_SEPAEXECLP(), separateCuts(), and separationRoundLP(). was separation of the primal solution delayed at the last call?
Definition at line 880 of file sepa.c. References NULL, and SCIP_Sepa::solwasdelayed. Referenced by separationRoundSol(). is separator initialized?
Definition at line 890 of file sepa.c. References SCIP_Sepa::initialized, and NULL. Referenced by SCIPsetFindRelax(). |