Scippy

GCG

Branch-and-Price & Column Generation for Everyone

DecDecomp Struct Reference

Detailed Description

decomposition structure information

Definition at line 51 of file struct_decomp.h.

#include <struct_decomp.h>

Data Fields

SCIP_Bool presolved
 
int nblocks
 
SCIP_VAR *** subscipvars
 
int * nsubscipvars
 
SCIP_CONS *** subscipconss
 
int * nsubscipconss
 
SCIP_CONS ** linkingconss
 
int nlinkingconss
 
SCIP_VAR ** linkingvars
 
int nlinkingvars
 
int nfixedlinkingvars
 
int nmastervars
 
SCIP_VAR *** stairlinkingvars
 
int * nstairlinkingvars
 
SCIP_HASHMAP * vartoblock
 
SCIP_HASHMAP * constoblock
 
SCIP_HASHMAP * varindex
 
SCIP_HASHMAP * consindex
 
DEC_DECTYPE type
 
DEC_DETECTOR ** detectorchain
 
DEC_DETECTORdetector
 
int sizedetectorchain
 
int partialdecid
 
SCIP_Real * detectorclocktimes
 
SCIP_Real * pctvarstoborder
 
SCIP_Real * pctconsstoborder
 
SCIP_Real * pctvarstoblock
 
SCIP_Real * pctconsstoblock
 
SCIP_Real * pctvarsfromopen
 
SCIP_Real * pctconssfromopen
 
int * nnewblocks
 
char * detectorchainstring
 
SCIP_Real maxwhitescore
 

Field Documentation

◆ presolved

SCIP_Bool DecDecomp::presolved

◆ nblocks

◆ subscipvars

SCIP_VAR*** DecDecomp::subscipvars

two dimensional array of variables in each block Usage: Usage: subscipvars[b][v] is variable v in block b

Definition at line 55 of file struct_decomp.h.

Referenced by assignConsvarsToBlock(), DECdecompCreate(), DECdecompFree(), DECdecompGetSubscipvars(), DECdecompSetSubscipvars(), and DECdecompTransform().

◆ nsubscipvars

int* DecDecomp::nsubscipvars

array of number of variables in each block Usage: nsubscipvars[b] is the number of variables of block b

Definition at line 57 of file struct_decomp.h.

Referenced by assignConsvarsToBlock(), DECdecompCreate(), DECdecompFree(), DECdecompGetNSubscipvars(), DECdecompSetSubscipvars(), and DECdecompTransform().

◆ subscipconss

SCIP_CONS*** DecDecomp::subscipconss

two dimensional array of constraints in each block Usage: subscipcons[b][c] is constraint c in block b

Definition at line 59 of file struct_decomp.h.

Referenced by DECdecompAddRemainingConss(), DECdecompCreate(), DECdecompFree(), DECdecompGetSubscipconss(), DECdecompMoveLinkingConsToPricing(), DECdecompRemoveDeletedConss(), DECdecompSetSubscipconss(), and DECdecompTransform().

◆ nsubscipconss

int* DecDecomp::nsubscipconss

array of number of constraints in each block Usage: nsubscipcons[b] is the number of constraints of block b

Definition at line 61 of file struct_decomp.h.

Referenced by DECdecompAddRemainingConss(), DECdecompCreate(), DECdecompFree(), DECdecompGetNSubscipconss(), DECdecompMoveLinkingConsToPricing(), DECdecompRemoveDeletedConss(), DECdecompSetSubscipconss(), and DECdecompTransform().

◆ linkingconss

◆ nlinkingconss

◆ linkingvars

SCIP_VAR** DecDecomp::linkingvars

array of variables linking the blocks Usage: linkingvars[v] is linking variable number v

Definition at line 66 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetLinkingvars(), DECdecompSetLinkingvars(), DECdecompSetType(), DECdecompTransform(), and removeFromLinkingvars().

◆ nlinkingvars

int DecDecomp::nlinkingvars

◆ nfixedlinkingvars

int DecDecomp::nfixedlinkingvars

number of linking variables that are fixed

Definition at line 69 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompGetNFixedLinkingvars(), and DECdecompSetLinkingvars().

◆ nmastervars

int DecDecomp::nmastervars

number of linking variables that are purely master variables

Definition at line 70 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompGetNMastervars(), and DECdecompSetLinkingvars().

◆ stairlinkingvars

SCIP_VAR*** DecDecomp::stairlinkingvars

array of variables staircaselinking the blocks

Definition at line 71 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetStairlinkingvars(), and DECdecompSetStairlinkingvars().

◆ nstairlinkingvars

int* DecDecomp::nstairlinkingvars

number of staircaselinking variables

Definition at line 72 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetNStairlinkingvars(), and DECdecompSetStairlinkingvars().

◆ vartoblock

SCIP_HASHMAP* DecDecomp::vartoblock

hashmap mapping variables to their blocks (from 1 to nblocks) Usage: SCIPhashmapGetImage(vartoblock, var) returns b+1, where b is the block of variable var. This map is somehow inverse of the subscipcvars array.

Definition at line 73 of file struct_decomp.h.

Referenced by assignConsvarsToBlock(), DECdecompCreate(), DECdecompFree(), DECdecompGetVartoblock(), DECdecompSetVartoblock(), and DECdecompTransform().

◆ constoblock

SCIP_HASHMAP* DecDecomp::constoblock

hashmap mapping constraints to their blocks (from 1 to nblocks) Usage: Usage: SCIPhashmapGetImage(constoblock, cons) returns b+1, where b is the block of constraint cons. This map is somehow inverse of the subscipconss array.

Definition at line 76 of file struct_decomp.h.

Referenced by DECdecompAddRemainingConss(), DECdecompCreate(), DECdecompFree(), DECdecompGetConstoblock(), DECdecompMoveLinkingConsToPricing(), DECdecompSetConstoblock(), DECdecompTransform(), DECtryAssignMasterconssToNewPricing(), and fillOutConsFromConstoblock().

◆ varindex

SCIP_HASHMAP* DecDecomp::varindex

hashmap mapping variables to indices for a visual ordering

Definition at line 79 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetVarindex(), and DECdecompSetVarindex().

◆ consindex

SCIP_HASHMAP* DecDecomp::consindex

hashmap mapping constraints to indices for visual ordering

Definition at line 80 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetConsindex(), and DECdecompSetConsindex().

◆ type

DEC_DECTYPE DecDecomp::type

type of the decomposition

Definition at line 81 of file struct_decomp.h.

Referenced by DECdecompAddRemainingConss(), DECdecompCreate(), DECdecompGetType(), and DECdecompSetType().

◆ detectorchain

DEC_DETECTOR** DecDecomp::detectorchain

array of detectors that worked on this decomposition

Definition at line 82 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorChain(), and DECdecompSetDetectorChain().

◆ detector

DEC_DETECTOR* DecDecomp::detector

detector that found this decomposition

Definition at line 83 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompGetDetector(), and DECdecompSetDetector().

◆ sizedetectorchain

◆ partialdecid

int DecDecomp::partialdecid

id of the partialdec this decomposition originates from

Definition at line 85 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompGetPartialdecID(), and DECdecompSetPartialdecID().

◆ detectorclocktimes

SCIP_Real* DecDecomp::detectorclocktimes

times of the detectors that worked on this decomposition

Definition at line 86 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorClockTimes(), and DECdecompSetDetectorClockTimes().

◆ pctvarstoborder

SCIP_Real* DecDecomp::pctvarstoborder

percentages of variables assigned to the border of the corresponding detectors on this decomposition

Definition at line 87 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorPctVarsToBorder(), and DECdecompSetDetectorPctVarsToBorder().

◆ pctconsstoborder

SCIP_Real* DecDecomp::pctconsstoborder

percentages of constraints assigned to the border of the corresponding detectors on this decomposition

Definition at line 88 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorPctConssToBorder(), and DECdecompSetDetectorPctConssToBorder().

◆ pctvarstoblock

SCIP_Real* DecDecomp::pctvarstoblock

percentages of variables assigned to a block of the corresponding detectors on this decomposition

Definition at line 89 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorPctVarsToBlock(), and DECdecompSetDetectorPctVarsToBlock().

◆ pctconsstoblock

SCIP_Real* DecDecomp::pctconsstoblock

percentages of variables assigned to a block of the corresponding detectors on this decomposition

Definition at line 90 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorPctConssToBlock(), and DECdecompSetDetectorPctConssToBlock().

◆ pctvarsfromopen

SCIP_Real* DecDecomp::pctvarsfromopen

percentages of variables assigned to a block or border of the corresponding detectors on this decomposition

Definition at line 91 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorPctVarsFromOpen(), and DECdecompSetDetectorPctVarsFromOpen().

◆ pctconssfromopen

SCIP_Real* DecDecomp::pctconssfromopen

percentages of constraints assigned to a block or the border of the corresponding detectors on this decomposition

Definition at line 92 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorPctConssFromOpen(), and DECdecompSetDetectorPctConssFromOpen().

◆ nnewblocks

int* DecDecomp::nnewblocks

number of new blocks of the corresponding detectors on this decomposition

Definition at line 93 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetNNewBlocks(), and DECdecompSetNNewBlocks().

◆ detectorchainstring

char* DecDecomp::detectorchainstring

string for the detector information working on that decomposition

Definition at line 94 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompFree(), DECdecompGetDetectorChainString(), DECdecompSetDetectorChainString(), and GCGprintDecompStatistics().

◆ maxwhitescore

SCIP_Real DecDecomp::maxwhitescore

maximum white score (i.e. [fraction of white area] (nonborder+nonblock) )

Definition at line 95 of file struct_decomp.h.

Referenced by DECdecompCreate(), DECdecompGetMaxwhiteScore(), DECgetMaxWhiteScore(), and DECsetMaxWhiteScore().