Scippy

GCG

Branch-and-Price & Column Generation for Everyone

dec_generalmastersetpart.cpp File Reference

Detailed Description

detector for set partitioning constraints

Author
Martin Bergner

This detector sets the following constraints to master:

  • set partitioning constraints
  • constraints with the same nonnegative rhs and lhs

Definition in file dec_generalmastersetpart.cpp.

#include "dec_generalmastersetpart.h"
#include "cons_decomp.h"
#include "class_partialdecomp.h"
#include "class_detprobdata.h"
#include "gcg.h"
#include "scip/cons_setppc.h"
#include "scip/scip.h"
#include "scip_misc.h"
#include "scip/clock.h"
#include <iostream>

Go to the source code of this file.

Data Structures

struct  DEC_DetectorData
 

Macros

#define DEC_DETECTORNAME   "generalmastersetpart"
 
#define DEC_DESC   "detector generalmastersetpart"
 
#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   0 /** 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   '?'
 
#define DEC_ENABLED   TRUE
 
#define DEC_ENABLEDFINISHING   FALSE
 
#define DEC_ENABLEDPOSTPROCESSING   FALSE
 
#define DEC_SKIP   FALSE
 
#define DEC_USEFULRECALL   FALSE
 
#define freeGeneralmastersetpart   NULL
 
#define exitGeneralmastersetpart   NULL
 
#define initGeneralmastersetpart   NULL
 
#define finishPartialdecGeneralmastersetpart   NULL
 
#define detectorPostprocessPartialdecGeneralmastersetpart   NULL
 

Functions

static DEC_DECL_PROPAGATEPARTIALDEC (propagatePartialdecGeneralmastersetpart)
 
static DEC_DECL_SETPARAMAGGRESSIVE (setParamAggressiveGeneralmastersetpart)
 
static DEC_DECL_SETPARAMDEFAULT (setParamDefaultGeneralmastersetpart)
 
static DEC_DECL_SETPARAMFAST (setParamFastGeneralmastersetpart)
 
SCIP_RETCODE SCIPincludeDetectorGeneralmastersetpart (SCIP *scip)
 

Macro Definition Documentation

◆ DEC_DETECTORNAME

#define DEC_DETECTORNAME   "generalmastersetpart"

name of detector

Definition at line 54 of file dec_generalmastersetpart.cpp.

◆ DEC_DESC

#define DEC_DESC   "detector generalmastersetpart"

description of detector

Definition at line 55 of file dec_generalmastersetpart.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 56 of file dec_generalmastersetpart.cpp.

◆ DEC_MAXCALLROUND

#define DEC_MAXCALLROUND   0 /** last round the detector gets called */

Definition at line 57 of file dec_generalmastersetpart.cpp.

◆ DEC_MINCALLROUND

#define DEC_MINCALLROUND   0 /** first round the detector gets called */

Definition at line 58 of file dec_generalmastersetpart.cpp.

◆ DEC_FREQCALLROUNDORIGINAL

#define DEC_FREQCALLROUNDORIGINAL   1 /** frequency the detector gets called in detection loop while detecting the original problem */

Definition at line 59 of file dec_generalmastersetpart.cpp.

◆ DEC_MAXCALLROUNDORIGINAL

#define DEC_MAXCALLROUNDORIGINAL   0 /** last round the detector gets called while detecting the original problem */

Definition at line 60 of file dec_generalmastersetpart.cpp.

◆ DEC_MINCALLROUNDORIGINAL

#define DEC_MINCALLROUNDORIGINAL   0 /** first round the detector gets called while detecting the original problem */

Definition at line 61 of file dec_generalmastersetpart.cpp.

◆ DEC_PRIORITY

#define DEC_PRIORITY   0

priority of the constraint handler for separation

Definition at line 62 of file dec_generalmastersetpart.cpp.

◆ DEC_DECCHAR

#define DEC_DECCHAR   '?'

display character of detector

Definition at line 63 of file dec_generalmastersetpart.cpp.

◆ DEC_ENABLED

#define DEC_ENABLED   TRUE

should the detection be enabled

Definition at line 64 of file dec_generalmastersetpart.cpp.

◆ DEC_ENABLEDFINISHING

#define DEC_ENABLEDFINISHING   FALSE

should the finishing be enabled

Definition at line 65 of file dec_generalmastersetpart.cpp.

◆ DEC_ENABLEDPOSTPROCESSING

#define DEC_ENABLEDPOSTPROCESSING   FALSE

should the postprocessing be enabled

Definition at line 66 of file dec_generalmastersetpart.cpp.

◆ DEC_SKIP

#define DEC_SKIP   FALSE

should detector be skipped if other detectors found decompositions

Definition at line 67 of file dec_generalmastersetpart.cpp.

◆ DEC_USEFULRECALL

#define DEC_USEFULRECALL   FALSE

is it useful to call this detector on a descendant of the propagated partialdec

Definition at line 68 of file dec_generalmastersetpart.cpp.

◆ freeGeneralmastersetpart

#define freeGeneralmastersetpart   NULL

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

Definition at line 93 of file dec_generalmastersetpart.cpp.

◆ exitGeneralmastersetpart

#define exitGeneralmastersetpart   NULL

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

Definition at line 96 of file dec_generalmastersetpart.cpp.

◆ initGeneralmastersetpart

#define initGeneralmastersetpart   NULL

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

Definition at line 99 of file dec_generalmastersetpart.cpp.

◆ finishPartialdecGeneralmastersetpart

#define finishPartialdecGeneralmastersetpart   NULL

Definition at line 197 of file dec_generalmastersetpart.cpp.

◆ detectorPostprocessPartialdecGeneralmastersetpart

#define detectorPostprocessPartialdecGeneralmastersetpart   NULL

Definition at line 198 of file dec_generalmastersetpart.cpp.

Function Documentation

◆ DEC_DECL_PROPAGATEPARTIALDEC()

◆ DEC_DECL_SETPARAMAGGRESSIVE()

static DEC_DECL_SETPARAMAGGRESSIVE ( setParamAggressiveGeneralmastersetpart  )
static

Definition at line 201 of file dec_generalmastersetpart.cpp.

References DECdetectorGetName().

◆ DEC_DECL_SETPARAMDEFAULT()

static DEC_DECL_SETPARAMDEFAULT ( setParamDefaultGeneralmastersetpart  )
static

◆ DEC_DECL_SETPARAMFAST()

static DEC_DECL_SETPARAMFAST ( setParamFastGeneralmastersetpart  )
static

Definition at line 246 of file dec_generalmastersetpart.cpp.

References DECdetectorGetName().

◆ SCIPincludeDetectorGeneralmastersetpart()