Detailed Description
detector consclass (put your description here)
Definition in file dec_consclass.cpp.
#include "dec_consclass.h"#include "cons_decomp.h"#include "class_partialdecomp.h"#include "class_detprobdata.h"#include "class_conspartition.h"#include "gcg.h"#include "scip/cons_setppc.h"#include "scip/scip.h"#include "scip_misc.h"#include "scip/clock.h"#include <sstream>#include <iostream>#include <algorithm>Go to the source code of this file.
Data Structures | |
| struct | DEC_DetectorData |
Macros | |
| #define | DEC_DETECTORNAME "consclass" |
| #define | DEC_DESC "detector consclass" |
| #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 */ |
| #define | DEC_MAXCALLROUND 0 /** last round the detector gets called */ |
| #define | DEC_MINCALLROUND 0 /** first round the detector gets called */ |
| #define | DEC_FREQCALLROUNDORIGINAL 1 /** frequency the detector gets called in detection loop while detecting the original problem */ |
| #define | DEC_MAXCALLROUNDORIGINAL INT_MAX /** last round the detector gets called while detecting the original problem */ |
| #define | DEC_MINCALLROUNDORIGINAL 0 /** first round the detector gets called while detecting the original problem */ |
| #define | DEC_PRIORITY 0 |
| #define | DEC_DECCHAR 'c' |
| #define | DEC_ENABLED TRUE |
| #define | DEC_ENABLEDFINISHING FALSE |
| #define | DEC_ENABLEDPOSTPROCESSING FALSE |
| #define | DEC_SKIP FALSE |
| #define | DEC_USEFULRECALL FALSE |
| #define | DEFAULT_MAXIMUMNCLASSES 5 |
| #define | AGGRESSIVE_MAXIMUMNCLASSES 9 |
| #define | FAST_MAXIMUMNCLASSES 3 |
| #define | SET_MULTIPLEFORSIZETRANSF 12500 |
| #define | freeConsclass NULL |
| #define | exitConsclass NULL |
| #define | initConsclass NULL |
| #define | detectConsclass NULL |
| #define | finishPartialdecConsclass NULL |
| #define | detectorPostprocessPartialdecConsclass NULL |
Functions | |
| static | DEC_DECL_PROPAGATEPARTIALDEC (propagatePartialdecConsclass) |
| static | DEC_DECL_SETPARAMAGGRESSIVE (setParamAggressiveConsclass) |
| static | DEC_DECL_SETPARAMDEFAULT (setParamDefaultConsclass) |
| static | DEC_DECL_SETPARAMFAST (setParamFastConsclass) |
| SCIP_RETCODE | SCIPincludeDetectorConsclass (SCIP *scip) |
Macro Definition Documentation
◆ DEC_DETECTORNAME
| #define DEC_DETECTORNAME "consclass" |
name of detector
Definition at line 53 of file dec_consclass.cpp.
◆ DEC_DESC
| #define DEC_DESC "detector consclass" |
description of detector
Definition at line 54 of file dec_consclass.cpp.
◆ DEC_FREQCALLROUND
| #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 */ |
Definition at line 55 of file dec_consclass.cpp.
◆ DEC_MAXCALLROUND
| #define DEC_MAXCALLROUND 0 /** last round the detector gets called */ |
Definition at line 56 of file dec_consclass.cpp.
◆ DEC_MINCALLROUND
| #define DEC_MINCALLROUND 0 /** first round the detector gets called */ |
Definition at line 57 of file dec_consclass.cpp.
◆ DEC_FREQCALLROUNDORIGINAL
| #define DEC_FREQCALLROUNDORIGINAL 1 /** frequency the detector gets called in detection loop while detecting the original problem */ |
Definition at line 58 of file dec_consclass.cpp.
◆ DEC_MAXCALLROUNDORIGINAL
| #define DEC_MAXCALLROUNDORIGINAL INT_MAX /** last round the detector gets called while detecting the original problem */ |
Definition at line 59 of file dec_consclass.cpp.
◆ DEC_MINCALLROUNDORIGINAL
| #define DEC_MINCALLROUNDORIGINAL 0 /** first round the detector gets called while detecting the original problem */ |
Definition at line 60 of file dec_consclass.cpp.
◆ DEC_PRIORITY
| #define DEC_PRIORITY 0 |
priority of the constraint handler for separation
Definition at line 61 of file dec_consclass.cpp.
◆ DEC_DECCHAR
| #define DEC_DECCHAR 'c' |
display character of detector
Definition at line 62 of file dec_consclass.cpp.
◆ DEC_ENABLED
| #define DEC_ENABLED TRUE |
should the detection be enabled
Definition at line 63 of file dec_consclass.cpp.
◆ DEC_ENABLEDFINISHING
| #define DEC_ENABLEDFINISHING FALSE |
should the detection be enabled
Definition at line 64 of file dec_consclass.cpp.
◆ DEC_ENABLEDPOSTPROCESSING
| #define DEC_ENABLEDPOSTPROCESSING FALSE |
should the finishing be enabled
Definition at line 65 of file dec_consclass.cpp.
◆ DEC_SKIP
| #define DEC_SKIP FALSE |
should detector be skipped if other detectors found decompositions
Definition at line 66 of file dec_consclass.cpp.
◆ DEC_USEFULRECALL
| #define DEC_USEFULRECALL FALSE |
is it useful to call this detector on a descendant of the propagated partialdec
Definition at line 67 of file dec_consclass.cpp.
◆ DEFAULT_MAXIMUMNCLASSES
| #define DEFAULT_MAXIMUMNCLASSES 5 |
Definition at line 69 of file dec_consclass.cpp.
◆ AGGRESSIVE_MAXIMUMNCLASSES
| #define AGGRESSIVE_MAXIMUMNCLASSES 9 |
Definition at line 70 of file dec_consclass.cpp.
◆ FAST_MAXIMUMNCLASSES
| #define FAST_MAXIMUMNCLASSES 3 |
Definition at line 71 of file dec_consclass.cpp.
◆ SET_MULTIPLEFORSIZETRANSF
| #define SET_MULTIPLEFORSIZETRANSF 12500 |
Definition at line 73 of file dec_consclass.cpp.
◆ freeConsclass
| #define freeConsclass NULL |
destructor of detector to free user data (called when GCG is exiting)
Definition at line 97 of file dec_consclass.cpp.
◆ exitConsclass
| #define exitConsclass NULL |
destructor of detector to free detector data (called before the solving process begins)
Definition at line 100 of file dec_consclass.cpp.
◆ initConsclass
| #define initConsclass NULL |
detection initialization function of detector (called before solving is about to begin)
Definition at line 103 of file dec_consclass.cpp.
◆ detectConsclass
| #define detectConsclass NULL |
Definition at line 105 of file dec_consclass.cpp.
◆ finishPartialdecConsclass
| #define finishPartialdecConsclass NULL |
Definition at line 107 of file dec_consclass.cpp.
◆ detectorPostprocessPartialdecConsclass
| #define detectorPostprocessPartialdecConsclass NULL |
Definition at line 262 of file dec_consclass.cpp.
Function Documentation
◆ DEC_DECL_PROPAGATEPARTIALDEC()
|
static |
Definition at line 109 of file dec_consclass.cpp.
References gcg::PARTIALDECOMP::addDetectorChainInfo(), gcg::PARTIALDECOMP::fixConsToMaster(), gcg::ConsPartition::getAllSubsets(), gcg::ConsPartition::getClassDecompInfo(), gcg::IndexPartition::getClassName(), gcg::ConsPartition::getClassOfCons(), gcg::IndexPartition::getName(), gcg::IndexPartition::getNClasses(), gcg::PARTIALDECOMP::getNDetectors(), gcg::PARTIALDECOMP::getNOpenconss(), gcg::PARTIALDECOMP::getOpenconssVec(), gcg::ONLY_MASTER, gcg::PARTIALDECOMP::setConsPartitionStatistics(), and gcg::PARTIALDECOMP::sort().
◆ DEC_DECL_SETPARAMAGGRESSIVE()
|
static |
Definition at line 265 of file dec_consclass.cpp.
References AGGRESSIVE_MAXIMUMNCLASSES, DECdetectorGetName(), and SET_MULTIPLEFORSIZETRANSF.
◆ DEC_DECL_SETPARAMDEFAULT()
|
static |
Definition at line 305 of file dec_consclass.cpp.
References DEC_ENABLED, DEC_ENABLEDFINISHING, DECdetectorGetName(), DEFAULT_MAXIMUMNCLASSES, and SET_MULTIPLEFORSIZETRANSF.
◆ DEC_DECL_SETPARAMFAST()
|
static |
Definition at line 344 of file dec_consclass.cpp.
References DECdetectorGetName(), FAST_MAXIMUMNCLASSES, and SET_MULTIPLEFORSIZETRANSF.
◆ SCIPincludeDetectorConsclass()
| SCIP_RETCODE SCIPincludeDetectorConsclass | ( | SCIP * | scip | ) |
creates the handler for consclass detector and includes it in SCIP
- Parameters
-
scip SCIP data structure
Definition at line 390 of file dec_consclass.cpp.
References DEC_DECCHAR, DEC_DESC, DEC_DETECTORNAME, DEC_ENABLED, DEC_ENABLEDFINISHING, DEC_ENABLEDPOSTPROCESSING, DEC_FREQCALLROUND, DEC_FREQCALLROUNDORIGINAL, DEC_MAXCALLROUND, DEC_MAXCALLROUNDORIGINAL, DEC_MINCALLROUND, DEC_MINCALLROUNDORIGINAL, DEC_PRIORITY, DEC_SKIP, DEC_USEFULRECALL, DECincludeDetector(), DEFAULT_MAXIMUMNCLASSES, detectorPostprocessPartialdecConsclass, exitConsclass, finishPartialdecConsclass, freeConsclass, and initConsclass.
Referenced by SCIPincludeGcgPlugins().
