dec_generalmastersetpart.cpp
Go to the documentation of this file.
39 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
56 #define DEC_FREQCALLROUND 1 /** frequency the detector gets called in detection loop ,ie it is called in round r if and only if minCallRound <= r <= maxCallRound AND (r - minCallRound) mod freqCallRound == 0 */
59 #define DEC_FREQCALLROUNDORIGINAL 1 /** frequency the detector gets called in detection loop while detecting the original problem */
60 #define DEC_MAXCALLROUNDORIGINAL 0 /** last round the detector gets called while detecting the original problem */
61 #define DEC_MINCALLROUNDORIGINAL 0 /** first round the detector gets called while detecting the original problem */
67 #define DEC_SKIP FALSE /**< should detector be skipped if other detectors found decompositions */
68 #define DEC_USEFULRECALL FALSE /**< is it useful to call this detector on a descendant of the propagated partialdec */
131 else if( GCGconsGetType(scip, cons) != logicor && GCGconsGetType(scip, cons) != setcovering && GCGconsGetType(scip, cons) != setpacking )
187 partialdecdetectiondata->newpartialdecs[0]->addClockTime(SCIPgetClockTime(scip, temporaryClock));
277 DECincludeDetector(scip, DEC_DETECTORNAME, DEC_DECCHAR, DEC_DESC, DEC_FREQCALLROUND, DEC_MAXCALLROUND, DEC_MINCALLROUND, DEC_FREQCALLROUNDORIGINAL, DEC_MAXCALLROUNDORIGINAL, DEC_MINCALLROUNDORIGINAL, DEC_PRIORITY, DEC_ENABLED, DEC_ENABLEDFINISHING, DEC_ENABLEDPOSTPROCESSING, DEC_SKIP, DEC_USEFULRECALL, detectordata, freeGeneralmastersetpart, initGeneralmastersetpart, exitGeneralmastersetpart, propagatePartialdecGeneralmastersetpart, finishPartialdecGeneralmastersetpart, detectorPostprocessPartialdecGeneralmastersetpart, setParamAggressiveGeneralmastersetpart, setParamDefaultGeneralmastersetpart, setParamFastGeneralmastersetpart));
const char * DECdetectorGetName(DEC_DETECTOR *detector)
returns the name of the provided detector
Definition: cons_decomp.cpp:2618
#define finishPartialdecGeneralmastersetpart
Definition: dec_generalmastersetpart.cpp:197
GCG interface methods.
#define detectorPostprocessPartialdecGeneralmastersetpart
Definition: dec_generalmastersetpart.cpp:198
std::vector< int >::const_iterator fixConsToMaster(std::vector< int >::const_iterator itr)
fixes a constraint to the master constraints
Definition: class_partialdecomp.cpp:4938
void addDetectorChainInfo(const char *decinfo)
add information about the detector chain
Definition: class_partialdecomp.cpp:315
std::vector< int > & getOpenconssVec()
Gets a vector containing constraint ids not assigned yet as vector.
Definition: class_partialdecomp.cpp:4253
constraint handler for structure detection
SCIP_RETCODE GCGconsGetVars(SCIP *scip, SCIP_CONS *cons, SCIP_VAR **vars, int nvars)
Definition: scip_misc.c:490
SCIP_RETCODE SCIPincludeDetectorGeneralmastersetpart(SCIP *scip)
Definition: dec_generalmastersetpart.cpp:268
static DEC_DECL_SETPARAMDEFAULT(setParamDefaultGeneralmastersetpart)
Definition: dec_generalmastersetpart.cpp:230
various SCIP helper methods
bool sort()
sorts the vars and conss data structures by their indices
Definition: class_partialdecomp.cpp:5445
generalmastersetpart detector
#define DEC_FREQCALLROUNDORIGINAL
Definition: dec_generalmastersetpart.cpp:59
static DEC_DECL_SETPARAMAGGRESSIVE(setParamAggressiveGeneralmastersetpart)
Definition: dec_generalmastersetpart.cpp:201
SCIP_RETCODE GCGconsGetVals(SCIP *scip, SCIP_CONS *cons, SCIP_Real *vals, int nvals)
Definition: scip_misc.c:621
#define DEC_ENABLEDPOSTPROCESSING
Definition: dec_generalmastersetpart.cpp:66
SCIP_RETCODE DECincludeDetector(SCIP *scip, const char *name, const char decchar, const char *description, int freqCallRound, int maxCallRound, int minCallRound, int freqCallRoundOriginal, int maxCallRoundOriginal, int minCallRoundOriginal, int priority, SCIP_Bool enabled, SCIP_Bool enabledFinishing, SCIP_Bool enabledPostprocessing, SCIP_Bool skip, SCIP_Bool usefulRecall, DEC_DETECTORDATA *detectordata, DEC_DECL_FREEDETECTOR((*freeDetector)), DEC_DECL_INITDETECTOR((*initDetector)), DEC_DECL_EXITDETECTOR((*exitDetector)), DEC_DECL_PROPAGATEPARTIALDEC((*propagatePartialdecDetector)), DEC_DECL_FINISHPARTIALDEC((*finishPartialdecDetector)), DEC_DECL_POSTPROCESSPARTIALDEC((*postprocessPartialdecDetector)), DEC_DECL_SETPARAMAGGRESSIVE((*setParamAggressiveDetector)), DEC_DECL_SETPARAMDEFAULT((*setParamDefaultDetector)),)
Definition: cons_decomp.cpp:3041
static DEC_DECL_PROPAGATEPARTIALDEC(propagatePartialdecGeneralmastersetpart)
Definition: dec_generalmastersetpart.cpp:102
Definition: dec_compgreedily.cpp:73
class storing (potentially incomplete) decompositions
static DEC_DECL_SETPARAMFAST(setParamFastGeneralmastersetpart)
Definition: dec_generalmastersetpart.cpp:246
class storing partialdecs and the problem matrix