Scippy

GCG

Branch-and-Price & Column Generation for Everyone

Detailed Description

detector varclass

Author
Julius Hense

Definition in file dec_varclass.cpp.

#include "dec_varclass.h"
#include "cons_decomp.h"
#include "class_partialdecomp.h"
#include "class_detprobdata.h"
#include "class_varpartition.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   "varclass"
 
#define DEC_DESC   "detector varclass"
 
#define DEC_FREQCALLROUND   1
 
#define DEC_MAXCALLROUND   0
 
#define DEC_MINCALLROUND   0
 
#define DEC_FREQCALLROUNDORIGINAL   1
 
#define DEC_MAXCALLROUNDORIGINAL   INT_MAX
 
#define DEC_MINCALLROUNDORIGINAL   0
 
#define DEC_PRIORITY   0
 
#define DEC_DECCHAR   'v'
 
#define DEC_ENABLED   TRUE
 
#define DEC_ENABLEDFINISHING   FALSE
 
#define DEC_ENABLEDPOSTPROCESSING   FALSE
 
#define DEC_SKIP   FALSE
 
#define DEC_USEFULRECALL   FALSE
 
#define DEFAULT_MAXIMUMNCLASSES   8
 
#define AGGRESSIVE_MAXIMUMNCLASSES   10
 
#define FAST_MAXIMUMNCLASSES   6
 
#define SET_MULTIPLEFORSIZETRANSF   12500
 
#define freeVarclass   NULL
 
#define exitVarclass   NULL
 
#define initVarclass   NULL
 
#define finishPartialdecVarclass   NULL
 
#define detectorPostprocessPartialdecVarclass   NULL
 

Functions

static DEC_DECL_PROPAGATEPARTIALDEC (propagatePartialdecVarclass)
 
static DEC_DECL_SETPARAMAGGRESSIVE (setParamAggressiveVarclass)
 
static DEC_DECL_SETPARAMDEFAULT (setParamDefaultVarclass)
 
static DEC_DECL_SETPARAMFAST (setParamFastVarclass)
 
SCIP_RETCODE SCIPincludeDetectorVarclass (SCIP *scip)
 

Macro Definition Documentation

◆ DEC_DETECTORNAME

#define DEC_DETECTORNAME   "varclass"

name of detector

Definition at line 53 of file dec_varclass.cpp.

◆ DEC_DESC

#define DEC_DESC   "detector varclass"

description of detector

Definition at line 54 of file dec_varclass.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_varclass.cpp.

◆ DEC_MAXCALLROUND

#define DEC_MAXCALLROUND   0

last round the detector gets called

Definition at line 56 of file dec_varclass.cpp.

◆ DEC_MINCALLROUND

#define DEC_MINCALLROUND   0

first round the detector gets called

Definition at line 57 of file dec_varclass.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_varclass.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_varclass.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_varclass.cpp.

◆ DEC_PRIORITY

#define DEC_PRIORITY   0

priority of the constraint handler for separation

Definition at line 61 of file dec_varclass.cpp.

◆ DEC_DECCHAR

#define DEC_DECCHAR   'v'

display character of detector

Definition at line 62 of file dec_varclass.cpp.

◆ DEC_ENABLED

#define DEC_ENABLED   TRUE

should the detection be enabled

Definition at line 63 of file dec_varclass.cpp.

◆ DEC_ENABLEDFINISHING

#define DEC_ENABLEDFINISHING   FALSE

should the finishing be enabled

Definition at line 64 of file dec_varclass.cpp.

◆ DEC_ENABLEDPOSTPROCESSING

#define DEC_ENABLEDPOSTPROCESSING   FALSE

should the postprocessing be enabled

Definition at line 65 of file dec_varclass.cpp.

◆ DEC_SKIP

#define DEC_SKIP   FALSE

should detector be skipped if other detectors found decompositions

Definition at line 66 of file dec_varclass.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_varclass.cpp.

◆ DEFAULT_MAXIMUMNCLASSES

#define DEFAULT_MAXIMUMNCLASSES   8

Definition at line 69 of file dec_varclass.cpp.

◆ AGGRESSIVE_MAXIMUMNCLASSES

#define AGGRESSIVE_MAXIMUMNCLASSES   10

Definition at line 70 of file dec_varclass.cpp.

◆ FAST_MAXIMUMNCLASSES

#define FAST_MAXIMUMNCLASSES   6

Definition at line 71 of file dec_varclass.cpp.

◆ SET_MULTIPLEFORSIZETRANSF

#define SET_MULTIPLEFORSIZETRANSF   12500

Definition at line 73 of file dec_varclass.cpp.

◆ freeVarclass

#define freeVarclass   NULL

destructor of detector to free user data (called when GCG is exiting)

Definition at line 97 of file dec_varclass.cpp.

◆ exitVarclass

#define exitVarclass   NULL

destructor of detector to free detector data (called before the solving process begins)

Definition at line 100 of file dec_varclass.cpp.

◆ initVarclass

#define initVarclass   NULL

detection initialization function of detector (called before solving is about to begin)

Definition at line 103 of file dec_varclass.cpp.

◆ finishPartialdecVarclass

#define finishPartialdecVarclass   NULL

Definition at line 105 of file dec_varclass.cpp.

◆ detectorPostprocessPartialdecVarclass

#define detectorPostprocessPartialdecVarclass   NULL

Definition at line 278 of file dec_varclass.cpp.

Function Documentation

◆ DEC_DECL_PROPAGATEPARTIALDEC()

◆ DEC_DECL_SETPARAMAGGRESSIVE()

static DEC_DECL_SETPARAMAGGRESSIVE ( setParamAggressiveVarclass  )
static

◆ DEC_DECL_SETPARAMDEFAULT()

static DEC_DECL_SETPARAMDEFAULT ( setParamDefaultVarclass  )
static

◆ DEC_DECL_SETPARAMFAST()

static DEC_DECL_SETPARAMFAST ( setParamFastVarclass  )
static

◆ SCIPincludeDetectorVarclass()