|
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Detailed Descriptiondisjunctive cut separator We separate disjunctive cuts for two term disjunctions of the form Definition in file sepa_disjunctive.c. #include <assert.h>#include <string.h>#include <ctype.h>#include "scip/sepa_disjunctive.h"#include "scip/cons_sos1.h"Go to the source code of this file.
Macro Definition Documentation
Definition at line 37 of file sepa_disjunctive.c. Referenced by SCIP_DECL_SEPACOPY(), SCIP_DECL_SEPAEXECLP(), SCIP_DECL_SEPAFREE(), and SCIPincludeSepaDisjunctive().
Definition at line 38 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
priority for separation Definition at line 39 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
frequency for separating cuts; zero means to separate only in the root node Definition at line 40 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
maximal relative distance from the current node's dual bound to primal bound compared to best node's dual bound for applying separation. Definition at line 41 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
does the separator use a secondary SCIP instance? Definition at line 44 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
should separation method be delayed, if other separators found cuts? Definition at line 45 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
maximal rank of a cut that could not be scaled to integral coefficients (-1: unlimited) Definition at line 47 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
maximal rank of a cut that could be scaled to integral coefficients (-1: unlimited) Definition at line 48 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
maximal valid range max(|weights|)/min(|weights|) of row weights Definition at line 49 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
node depth of separating cuts (-1: no limit) Definition at line 51 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
maximal number of separation rounds in a branching node (-1: no limit) Definition at line 52 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
maximal number of separation rounds in the root node (-1: no limit) Definition at line 53 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
maximal number of cuts investigated per iteration in a branching node Definition at line 54 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
maximal number of cuts investigated per iteration in the root node Definition at line 55 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive().
delay separation if number of conflict graph edges is larger than predefined value (-1: no limit) Definition at line 56 of file sepa_disjunctive.c. Referenced by SCIPincludeSepaDisjunctive(). Function Documentation
gets rank of variable corresponding to row of
Definition at line 78 of file sepa_disjunctive.c. References NULL, REALABS, SCIP_Real, SCIPisGT(), and SCIProwGetRank(). Referenced by SCIP_DECL_SEPAEXECLP().
gets the nonbasic coefficients of a simplex row
Definition at line 124 of file sepa_disjunctive.c. References NULL, SCIP_BASESTAT_LOWER, SCIP_BASESTAT_UPPER, SCIP_OKAY, SCIPcolGetBasisStatus(), SCIPgetRowLPActivity(), SCIPisFeasZero(), SCIProwGetBasisStatus(), SCIProwGetLhs(), and SCIProwGetRhs(). Referenced by SCIP_DECL_SEPAEXECLP().
computes a disjunctive cut inequality based on two simplex taubleau rows
Definition at line 181 of file sepa_disjunctive.c. References FALSE, MAX, MIN, NULL, SCIP_BASESTAT_BASIC, SCIP_BASESTAT_LOWER, SCIP_BASESTAT_UPPER, SCIP_BASESTAT_ZERO, SCIP_CALL, SCIP_Longint, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_Real, SCIPaddVarToRow(), SCIPcacheRowExtensions(), SCIPcolGetBasisStatus(), SCIPcolGetLb(), SCIPcolGetLPPos(), SCIPcolGetUb(), SCIPcolGetVar(), SCIPcreateEmptyRowSepa(), SCIPepsilon(), SCIPflushRowExtensions(), SCIPgetDepth(), SCIPgetMaxDepth(), SCIPgetNLPs(), SCIPgetRowLPActivity(), SCIPinfinity(), SCIPisFeasPositive(), SCIPisFeasZero(), SCIPisNegative(), SCIPmakeRowIntegral(), SCIProwGetBasisStatus(), SCIProwGetCols(), SCIProwGetConstant(), SCIProwGetLhs(), SCIProwGetNNonz(), SCIProwGetRhs(), SCIProwGetVals(), SCIProwIsInLP(), SCIPsepaGetName(), SCIPsnprintf(), SCIPsumepsilon(), and TRUE. Referenced by SCIP_DECL_SEPAEXECLP().
copy method for separator plugins (called when SCIP copies plugins) Definition at line 385 of file sepa_disjunctive.c. References NULL, SCIP_CALL, SCIP_OKAY, SCIPincludeSepaDisjunctive(), SCIPsepaGetName(), and SEPA_NAME.
destructor of separator to free user data (called when SCIP is exiting) Definition at line 400 of file sepa_disjunctive.c. References NULL, SCIP_OKAY, SCIPfreeMemory, SCIPsepaGetData(), SCIPsepaGetName(), SCIPsepaSetData(), and SEPA_NAME.
solving process initialization method of separator Definition at line 420 of file sepa_disjunctive.c. References NULL, SCIP_OKAY, SCIPfindConshdlr(), and SCIPsepaGetData().
LP solution separation method for disjunctive cuts Definition at line 435 of file sepa_disjunctive.c. References FALSE, generateDisjCutSOS1(), getSimplexCoefficients(), getVarRank(), MAX, MIN, NULL, REALABS, SCIP_BASESTAT_BASIC, SCIP_BASESTAT_LOWER, SCIP_BASESTAT_UPPER, SCIP_BASESTAT_ZERO, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_LPSOLSTAT_OPTIMAL, SCIP_OKAY, SCIP_Real, SCIP_SEPARATED, SCIPaddCut(), SCIPallocBufferArray, SCIPceil(), SCIPcolGetBasisStatus(), SCIPcolGetLPPos(), SCIPcolGetPrimsol(), SCIPconshdlrGetNConss(), SCIPdebug, SCIPdebugMessage, SCIPdigraphGetNArcs(), SCIPdigraphGetNSuccessors(), SCIPdigraphGetSuccessors(), SCIPfreeBufferArrayNull, SCIPgetConflictgraphSOS1(), SCIPgetDepth(), SCIPgetLPBasisInd(), SCIPgetLPBInvARow(), SCIPgetLPBInvRow(), SCIPgetLPColsData(), SCIPgetLPRowsData(), SCIPgetLPSolstat(), SCIPgetNCutsFound(), SCIPgetNSOS1Vars(), SCIPgetSolVal(), SCIPisCutEfficacious(), SCIPisFeasGT(), SCIPisFeasZero(), SCIPisInfinity(), SCIPisLPSolBasic(), SCIPisStopped(), SCIPnodeGetVarSOS1(), SCIPprintRow(), SCIPreleaseRow(), SCIProwChgRank(), SCIProwGetCols(), SCIProwGetLhs(), SCIProwGetNNonz(), SCIProwGetVals(), SCIProwIsInLP(), SCIPsepaGetData(), SCIPsepaGetName(), SCIPsepaGetNCallsAtNode(), SCIPsepaWasLPDelayed(), SCIPsortDownRealInt(), SCIPvarGetCol(), SCIPvarIsActive(), SEPA_NAME, and TRUE.
creates the disjunctive cut separator and includes it in SCIP
Definition at line 807 of file sepa_disjunctive.c. References DEFAULT_MAXCONFSDELAY, DEFAULT_MAXDEPTH, DEFAULT_MAXINVCUTS, DEFAULT_MAXINVCUTSROOT, DEFAULT_MAXRANK, DEFAULT_MAXRANKINTEGRAL, DEFAULT_MAXROUNDS, DEFAULT_MAXROUNDSROOT, DEFAULT_MAXWEIGHTRANGE, FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_REAL_MAX, SCIPaddIntParam(), SCIPaddRealParam(), SCIPallocMemory, SCIPincludeSepaBasic(), SCIPsetSepaCopy(), SCIPsetSepaFree(), SCIPsetSepaInitsol(), SEPA_DELAY, SEPA_DESC, SEPA_FREQ, SEPA_MAXBOUNDDIST, SEPA_NAME, SEPA_PRIORITY, SEPA_USESSUBSCIP, and TRUE. Referenced by SCIP_DECL_SEPACOPY(), and SCIPincludeDefaultPlugins(). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||