pub_decomp.h File Reference

Detailed Description

public methods for working with decomposition structures

public methods for working with priority queues

Author
Martin Bergner
Jonas Witt

Definition in file pub_decomp.h.

#include "type_decomp.h"
#include "scip/type_scip.h"
#include "scip/type_retcode.h"
#include "scip/type_var.h"
#include "scip/type_cons.h"
#include "scip/type_misc.h"
#include "type_detector.h"

Go to the source code of this file.

Typedefs

typedef struct Dec_Scores DEC_SCORES
 

Functions

const char * DECgetStrType (DEC_DECTYPE type)
 
SCIP_RETCODE DECdecompCreate (SCIP *scip, DEC_DECOMP **decdecomp)
 
SCIP_RETCODE DECdecompFree (SCIP *scip, DEC_DECOMP **decdecomp)
 
SCIP_RETCODE DECdecompSetType (DEC_DECOMP *decomp, DEC_DECTYPE type)
 
DEC_DECTYPE DECdecompGetType (DEC_DECOMP *decomp)
 
SCIP_Real DECdecompGetMaxwhiteScore (DEC_DECOMP *decomp)
 
void DECsetMaxWhiteScore (SCIP *scip, DEC_DECOMP *decdecomp, SCIP_Real maxwhitescore)
 
void DECdecompSetPresolved (DEC_DECOMP *decomp, SCIP_Bool presolved)
 
SCIP_Bool DECdecompGetPresolved (DEC_DECOMP *decomp)
 
void DECdecompSetNBlocks (DEC_DECOMP *decomp, int nblocks)
 
int DECdecompGetNBlocks (DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompSetSubscipvars (SCIP *scip, DEC_DECOMP *decomp, SCIP_VAR ***subscipvars, int *nsubscipvars)
 
SCIP_VAR *** DECdecompGetSubscipvars (DEC_DECOMP *decomp)
 
int * DECdecompGetNSubscipvars (DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompSetSubscipconss (SCIP *scip, DEC_DECOMP *decomp, SCIP_CONS ***subscipconss, int *nsubscipconss)
 
SCIP_CONS *** DECdecompGetSubscipconss (DEC_DECOMP *decomp)
 
int * DECdecompGetNSubscipconss (DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompSetLinkingconss (SCIP *scip, DEC_DECOMP *decomp, SCIP_CONS **linkingconss, int nlinkingconss)
 
SCIP_CONS ** DECdecompGetLinkingconss (DEC_DECOMP *decomp)
 
int DECdecompGetNLinkingconss (DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompSetLinkingvars (SCIP *scip, DEC_DECOMP *decomp, SCIP_VAR **linkingvars, int nlinkingvars, int nfixedlinkingvars, int nmastervars)
 
SCIP_VAR ** DECdecompGetLinkingvars (DEC_DECOMP *decomp)
 
int DECdecompGetNMastervars (DEC_DECOMP *decomp)
 
int DECdecompGetNLinkingvars (DEC_DECOMP *decomp)
 
int DECdecompGetNFixedLinkingvars (DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompSetStairlinkingvars (SCIP *scip, DEC_DECOMP *decomp, SCIP_VAR ***stairlinkingvars, int *nstairlinkingvars)
 
SCIP_VAR *** DECdecompGetStairlinkingvars (DEC_DECOMP *decomp)
 
int * DECdecompGetNStairlinkingvars (DEC_DECOMP *decomp)
 
int DECdecompGetNTotalStairlinkingvars (DEC_DECOMP *decomp)
 
void DECdecompSetVartoblock (DEC_DECOMP *decomp, SCIP_HASHMAP *vartoblock)
 
SCIP_HASHMAP * DECdecompGetVartoblock (DEC_DECOMP *decomp)
 
void DECdecompSetConstoblock (DEC_DECOMP *decomp, SCIP_HASHMAP *constoblock)
 
SCIP_HASHMAP * DECdecompGetConstoblock (DEC_DECOMP *decomp)
 
void DECdecompSetVarindex (DEC_DECOMP *decomp, SCIP_HASHMAP *varindex)
 
SCIP_HASHMAP * DECdecompGetVarindex (DEC_DECOMP *decomp)
 
void DECdecompSetConsindex (DEC_DECOMP *decomp, SCIP_HASHMAP *consindex)
 
SCIP_HASHMAP * DECdecompGetConsindex (DEC_DECOMP *decomp)
 
SCIP_RETCODE DECfilloutDecompFromHashmaps (SCIP *scip, DEC_DECOMP *decomp, SCIP_HASHMAP *vartoblock, SCIP_HASHMAP *constoblock, int nblocks, SCIP_Bool staircase)
 
SCIP_RETCODE DECfilloutDecompFromConstoblock (SCIP *scip, DEC_DECOMP *decomp, SCIP_HASHMAP *constoblock, int nblocks, SCIP_Bool staircase)
 
void DECdecompSetDetector (DEC_DECOMP *decomp, DEC_DETECTOR *detector)
 
DEC_DETECTORDECdecompGetDetector (DEC_DECOMP *decomp)
 
DEC_DETECTOR ** DECdecompGetDetectorChain (DEC_DECOMP *decomp)
 
int DECdecompGetDetectorChainSize (DEC_DECOMP *decomp)
 
void DECdecompSetSeeedID (DEC_DECOMP *decomp, int seeedID)
 
int DECdecompGetSeeedID (DEC_DECOMP *decomp)
 
void DECdecompSetDetectorClockTimes (SCIP *scip, DEC_DECOMP *decomp, SCIP_Real *detectorClockTimes)
 
SCIP_Real * DECdecompGetDetectorClockTimes (DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompSetDetectorChainString (SCIP *scip, DEC_DECOMP *decomp, char *detectorchainstring)
 
char * DECdecompGetDetectorChainString (SCIP *scip, DEC_DECOMP *decomp)
 
void DECdecompSetDetectorPctVarsToBorder (SCIP *scip, DEC_DECOMP *decomp, SCIP_Real *pctVarsToBorder)
 
SCIP_Real * DECdecompGetDetectorPctVarsToBorder (DEC_DECOMP *decomp)
 
void DECdecompSetDetectorPctConssToBorder (SCIP *scip, DEC_DECOMP *decomp, SCIP_Real *pctConssToBorder)
 
SCIP_Real * DECdecompGetDetectorPctConssToBorder (DEC_DECOMP *decomp)
 
void DECdecompSetDetectorPctVarsToBlock (SCIP *scip, DEC_DECOMP *decomp, SCIP_Real *pctVarsToBlock)
 
SCIP_Real * DECdecompGetDetectorPctVarsToBlock (DEC_DECOMP *decomp)
 
void DECdecompSetDetectorPctConssToBlock (SCIP *scip, DEC_DECOMP *decomp, SCIP_Real *pctConssToBlock)
 
SCIP_Real * DECdecompGetDetectorPctConssToBlock (DEC_DECOMP *decomp)
 
void DECdecompSetDetectorPctVarsFromOpen (SCIP *scip, DEC_DECOMP *decomp, SCIP_Real *pctVarsFromOpen)
 
SCIP_Real * DECdecompGetDetectorPctVarsFromOpen (DEC_DECOMP *decomp)
 
void DECdecompSetDetectorPctConssFromOpen (SCIP *scip, DEC_DECOMP *decomp, SCIP_Real *pctConssToBorder)
 
SCIP_Real * DECdecompGetDetectorPctConssFromOpen (DEC_DECOMP *decomp)
 
void DECdecompSetNNewBlocks (SCIP *scip, DEC_DECOMP *decomp, int *nNewBlocks)
 
int * DECdecompGetNNewBlocks (DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompTransform (SCIP *scip, DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompRemoveDeletedConss (SCIP *scip, DEC_DECOMP *decdecomp)
 
SCIP_RETCODE DECdecompAddRemainingConss (SCIP *scip, DEC_DECOMP *decomp)
 
SCIP_RETCODE DECdecompCheckConsistency (SCIP *scip, DEC_DECOMP *decomp)
 
SCIP_RETCODE DECcreateBasicDecomp (SCIP *scip, DEC_DECOMP **decomp, SCIP_Bool solveorigprob)
 
SCIP_RETCODE DECcreateDecompFromMasterconss (SCIP *scip, DEC_DECOMP **decomp, SCIP_CONS **conss, int nconss)
 
void DECgetSubproblemVarsData (SCIP *scip, DEC_DECOMP *decomp, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars, int nproblems)
 
void DECgetLinkingVarsData (SCIP *scip, DEC_DECOMP *decomp, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars)
 
SCIP_RETCODE DECgetDensityData (SCIP *scip, DEC_DECOMP *decomp, SCIP_VAR **vars, int nvars, SCIP_CONS **conss, int nconss, int *varsubproblemdensity, int *varmasterdensity, int *conssubproblemdensity, int *consmasterdensity)
 
SCIP_RETCODE DECgetVarLockData (SCIP *scip, DEC_DECOMP *decomp, SCIP_VAR **vars, int nvars, int nsubproblems, int **subsciplocksdown, int **subsciplocksup, int *masterlocksdown, int *masterlocksup)
 
SCIP_Real DECgetMaxWhiteScore (SCIP *scip, DEC_DECOMP *decdecomp)
 
SCIP_RETCODE DECevaluateDecomposition (SCIP *scip, DEC_DECOMP *decomp, DEC_SCORES *score)
 
int DECdecompGetNConss (DEC_DECOMP *decomp)
 
SCIP_RETCODE GCGprintDecompStatistics (SCIP *scip, FILE *file)
 
SCIP_Bool DECdecompositionsAreEqual (SCIP *scip, DEC_DECOMP *decomp1, DEC_DECOMP *decomp2)
 
int DECfilterSimilarDecompositions (SCIP *scip, DEC_DECOMP **decs, int ndecs)
 
SCIP_RETCODE DECdetermineConsBlock (SCIP *scip, DEC_DECOMP *decomp, SCIP_CONS *cons, int *block)
 
SCIP_RETCODE DECdecompMoveLinkingConsToPricing (SCIP *scip, DEC_DECOMP *decomp, int consindex, int block)
 
SCIP_RETCODE DECtryAssignMasterconssToExistingPricing (SCIP *scip, DEC_DECOMP *decomp, int *transferred)
 
SCIP_RETCODE DECtryAssignMasterconssToNewPricing (SCIP *scip, DEC_DECOMP *decomp, DEC_DECOMP **newdecomp, int *transferred)
 
SCIP_RETCODE DECcreatePolishedDecomp (SCIP *scip, DEC_DECOMP *decomp, DEC_DECOMP **newdecomp)
 
SCIP_RETCODE DECpermuteDecomp (SCIP *scip, DEC_DECOMP *decomp, SCIP_RANDNUMGEN *randnumgen)
 

Typedef Documentation

typedef struct Dec_Scores DEC_SCORES

Definition at line 60 of file pub_decomp.h.

Function Documentation

SCIP_RETCODE DECcreateBasicDecomp ( SCIP *  scip,
DEC_DECOMP **  decomp,
SCIP_Bool  solveorigprob 
)

creates a decomposition with all constraints in the master

Parameters
scipSCIP data structure
decompdecomposition data structure
solveorigprobis the original problem being solved?

Definition at line 2361 of file decomp.c.

References DECdecompCreate(), DECdecompSetPresolved(), DECfilloutDecompFromHashmaps(), and GCGisConsGCGCons().

Referenced by initRelaxator().

SCIP_RETCODE DECcreateDecompFromMasterconss ( SCIP *  scip,
DEC_DECOMP **  decomp,
SCIP_CONS **  masterconss,
int  nmasterconss 
)

creates a decomposition with provided constraints in the master The function will put the remaining constraints in one or more pricing problems depending on whether the subproblems decompose with no variables in common.

Parameters
scipSCIP data structure
decompdecomposition data structure
masterconssconstraints to be put in the master
nmasterconssnumber of constraints in the master

Definition at line 2688 of file decomp.c.

References assignConstraintsToRepresentatives(), DECdecompCreate(), DECfilloutDecompFromConstoblock(), fillConstoblock(), GCGisConsGCGCons(), and processBlockRepresentatives().

Referenced by detectIsomorph(), findColorsComponents(), and findConnectedComponents().

SCIP_RETCODE DECcreatePolishedDecomp ( SCIP *  scip,
DEC_DECOMP decomp,
DEC_DECOMP **  newdecomp 
)

polish the decomposition and try to greedily assign master constraints to pricing problem where useful

Parameters
scipSCIP data structure
decompdecomposition data structure
newdecompnew decomposition, if successful

Definition at line 4255 of file decomp.c.

References DECdecompFree(), DECdecompGetNBlocks(), DECtryAssignMasterconssToExistingPricing(), and DECtryAssignMasterconssToNewPricing().

Referenced by DEC_DECL_DETECTSTRUCTURE(), and detectIsomorph().

SCIP_RETCODE DECdecompAddRemainingConss ( SCIP *  scip,
DEC_DECOMP decdecomp 
)

Adds all those constraints that were added to the problem after the decomposition as created

Adds all those constraints that were added to the problem after the decomposition had been created

Parameters
scipSCIP data structure
decdecompdecomposition data structure

Definition at line 2154 of file decomp.c.

References assignConsvarsToBlock(), DEC_DECTYPE_ARROWHEAD, DEC_DECTYPE_BORDERED, DEC_DECTYPE_DIAGONAL, DEC_DECTYPE_STAIRCASE, DECdecompGetConstoblock(), DECdecompGetNBlocks(), DECdetermineConsBlock(), and GCGisConsGCGCons().

Referenced by convertStructToGCG(), and gcg::Seeedpool::createDecompFromSeeed().

SCIP_RETCODE DECdecompCheckConsistency ( SCIP *  scip,
DEC_DECOMP decdecomp 
)

checks the validity of the decomposition data structure

checks the consistency of the data structure

In particular, it checks whether the redundant information in the structure agree and whether the variables in the structure are both existant in the arrays and in the problem

Parameters
scipSCIP data structure
decdecompdecomposition data structure

Definition at line 2242 of file decomp.c.

References DEC_DECTYPE_ARROWHEAD, DEC_DECTYPE_BORDERED, DEC_DECTYPE_DIAGONAL, DEC_DECTYPE_STAIRCASE, DEC_DECTYPE_UNKNOWN, DECdecompGetConstoblock(), DECdecompGetLinkingconss(), DECdecompGetLinkingvars(), DECdecompGetNBlocks(), DECdecompGetNLinkingconss(), DECdecompGetNLinkingvars(), DECdecompGetNSubscipconss(), DECdecompGetNSubscipvars(), DECdecompGetNTotalStairlinkingvars(), DECdecompGetSubscipconss(), DECdecompGetSubscipvars(), DECdecompGetType(), DECdecompGetVartoblock(), GCGconsGetNVars(), GCGconsGetVars(), and GCGisConsGCGCons().

Referenced by convertStructToGCG(), gcg::Seeedpool::createDecompFromSeeed(), gcg::Seeedpool::createSeeedFromDecomp(), DEC_DECL_DETECTSTRUCTURE(), DECdecompTransform(), DECfilloutDecompFromHashmaps(), and DECpermuteDecomp().

SCIP_HASHMAP* DECdecompGetConsindex ( DEC_DECOMP decomp)

returns the consindex hashmap of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1259 of file decomp.c.

SCIP_HASHMAP* DECdecompGetConstoblock ( DEC_DECOMP decomp)

returns the constoblock hashmap of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1218 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), DECdecompAddRemainingConss(), DECdecompCheckConsistency(), and DECdecompositionsAreEqual().

DEC_DETECTOR* DECdecompGetDetector ( DEC_DECOMP decomp)

gets the detector for the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1589 of file decomp.c.

Referenced by GCGwriteDecompositionData().

DEC_DETECTOR** DECdecompGetDetectorChain ( DEC_DECOMP decomp)

gets the detectors for the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1599 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

int DECdecompGetDetectorChainSize ( DEC_DECOMP decomp)

gets the number of detectors for the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1609 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

char* DECdecompGetDetectorChainString ( SCIP *  scip,
DEC_DECOMP decomp 
)

sets the detector clock times of the detectors of the detector chain

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1693 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp().

SCIP_Real* DECdecompGetDetectorClockTimes ( DEC_DECOMP decomp)

gets the detector clock times of the detectors of the detector chain

Parameters
decompdecomposition data structure

Definition at line 1670 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

SCIP_Real* DECdecompGetDetectorPctConssFromOpen ( DEC_DECOMP decomp)

gets the percentages of constraints assigned to some block of the corresponding detectors (of the detector chain) on this decomposition

Parameters
decompdecomposition data structure

Definition at line 1911 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp().

SCIP_Real* DECdecompGetDetectorPctConssToBlock ( DEC_DECOMP decomp)

gets the percentages of constraints assigned to some block of the corresponding detectors (of the detector chain) on this decomposition

Parameters
decompdecomposition data structure

Definition at line 1837 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

SCIP_Real* DECdecompGetDetectorPctConssToBorder ( DEC_DECOMP decomp)

gets the percentages of constraints assigned to the border of the corresponding detectors (of the detector chain) on this decomposition

Parameters
decompdecomposition data structure

Definition at line 1766 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

SCIP_Real* DECdecompGetDetectorPctVarsFromOpen ( DEC_DECOMP decomp)

gets the percentages of variables assigned to some block of the corresponding detectors (of the detector chain) on this decomposition

Parameters
decompdecomposition data structure

Definition at line 1874 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp().

SCIP_Real* DECdecompGetDetectorPctVarsToBlock ( DEC_DECOMP decomp)

gets the percentages of variables assigned to some block of the corresponding detectors (of the detector chain) on this decomposition

Parameters
decompdecomposition data structure

Definition at line 1801 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

SCIP_Real* DECdecompGetDetectorPctVarsToBorder ( DEC_DECOMP decomp)

gets the percentages of variables assigned to the border of the corresponding detectors (of the detector chain) on this decomposition

Parameters
decompdecomposition data structure

Definition at line 1731 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

SCIP_CONS** DECdecompGetLinkingconss ( DEC_DECOMP decomp)

returns the linkingconss array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 962 of file decomp.c.

Referenced by checkSetppcStructure(), computeNonzeros(), convertStructToGCG(), createMasterprobConss(), gcg::Seeedpool::createSeeedFromDecomp(), DECdecompCheckConsistency(), DECgetDensityData(), DECgetVarLockData(), DECpermuteDecomp(), and writeData().

SCIP_VAR** DECdecompGetLinkingvars ( DEC_DECOMP decomp)

returns the linkingvars array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1033 of file decomp.c.

Referenced by convertStructToGCG(), DECdecompCheckConsistency(), DECgetLinkingVarsData(), and DECpermuteDecomp().

SCIP_Real DECdecompGetMaxwhiteScore ( DEC_DECOMP decomp)
Parameters
decompdecomposition data structure

Definition at line 696 of file decomp.c.

Referenced by initRelaxator().

int DECdecompGetNConss ( DEC_DECOMP decomp)

returns the number of constraints saved in the decomposition

Parameters
decompdecomposition data structure

Definition at line 3623 of file decomp.c.

References DECdecompGetNBlocks(), DECdecompGetNLinkingconss(), and DECdecompGetNSubscipconss().

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and GCGprintDecompStatistics().

int DECdecompGetNFixedLinkingvars ( DEC_DECOMP decomp)

returns the nlinkingvars array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1054 of file decomp.c.

int DECdecompGetNLinkingvars ( DEC_DECOMP decomp)

returns the nlinkingvars array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1043 of file decomp.c.

Referenced by convertStructToGCG(), gcg::Seeedpool::createDecompFromSeeed(), DEC_DECL_DETECTSTRUCTURE(), DECdecompCheckConsistency(), DECevaluateDecomposition(), DECgetLinkingVarsData(), DECgetVarLockData(), DECpermuteDecomp(), GCGwriteDecompositionData(), and initRelaxator().

int DECdecompGetNMastervars ( DEC_DECOMP decomp)

returns the number of master variables of the given decomposition

returns the number of linking variables that are purely master ("static") variables of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1066 of file decomp.c.

Referenced by DECevaluateDecomposition(), and initRelaxator().

int* DECdecompGetNNewBlocks ( DEC_DECOMP decomp)

gets the number of new blocks corresponding detectors (of the detector chain) on this decomposition

Parameters
decompdecomposition data structure

Definition at line 1945 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

int* DECdecompGetNStairlinkingvars ( DEC_DECOMP decomp)

returns the nstairlinkingvars array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1157 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and DECdecompGetNTotalStairlinkingvars().

int* DECdecompGetNSubscipconss ( DEC_DECOMP decomp)
int* DECdecompGetNSubscipvars ( DEC_DECOMP decomp)

returns the nsubscipvars array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 828 of file decomp.c.

Referenced by computeVarDensities(), convertStructToGCG(), DECdecompCheckConsistency(), DECevaluateDecomposition(), DECfilloutDecompFromHashmaps(), DECgetSubproblemVarsData(), DECpermuteDecomp(), and GCGwriteDecompositionData().

int DECdecompGetNTotalStairlinkingvars ( DEC_DECOMP decomp)

returns the total number of stairlinkingvars array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1167 of file decomp.c.

References DECdecompGetNBlocks(), and DECdecompGetNStairlinkingvars().

Referenced by DECdecompCheckConsistency().

SCIP_Bool DECdecompGetPresolved ( DEC_DECOMP decomp)

gets the presolved flag for decomposition

Parameters
decompdecomposition data structure

Definition at line 718 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp(), and writeData().

int DECdecompGetSeeedID ( DEC_DECOMP decomp)

gets the id of the original seeed

Parameters
decompdecomposition data structure

Definition at line 1633 of file decomp.c.

Referenced by checkIdenticalBlocks(), pricingprobsAreIdenticalFromDetectionInfo(), and reportAllDecompositions().

SCIP_VAR*** DECdecompGetStairlinkingvars ( DEC_DECOMP decomp)

returns the stairlinkingvars array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1148 of file decomp.c.

Referenced by gcg::Seeedpool::createSeeedFromDecomp().

SCIP_CONS*** DECdecompGetSubscipconss ( DEC_DECOMP decomp)

returns the subscipconss array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 903 of file decomp.c.

Referenced by computeNonzeros(), convertStructToGCG(), createPricingprobConss(), DECdecompCheckConsistency(), DECevaluateDecomposition(), DECfilloutDecompFromHashmaps(), DECgetDensityData(), DECgetVarLockData(), DECpermuteDecomp(), writeData(), and writeREFFile().

SCIP_VAR*** DECdecompGetSubscipvars ( DEC_DECOMP decomp)

returns the subscipvars array of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 818 of file decomp.c.

Referenced by computeVarDensities(), convertStructToGCG(), DECdecompCheckConsistency(), DECgetSubproblemVarsData(), and DECpermuteDecomp().

SCIP_HASHMAP* DECdecompGetVarindex ( DEC_DECOMP decomp)

returns the varindex hashmap of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1239 of file decomp.c.

SCIP_HASHMAP* DECdecompGetVartoblock ( DEC_DECOMP decomp)

returns the vartoblock hashmap of the given decomposition

Parameters
decompdecomposition data structure

Definition at line 1196 of file decomp.c.

Referenced by computeConssNzeros(), computeVarDensities(), createPricingVariables(), gcg::Seeedpool::createSeeedFromDecomp(), DECdecompCheckConsistency(), DECdecompositionsAreEqual(), DECdetermineConsBlock(), DECevaluateDecomposition(), DECgetDensityData(), and DECgetVarLockData().

SCIP_RETCODE DECdecompMoveLinkingConsToPricing ( SCIP *  scip,
DEC_DECOMP decomp,
int  consindex,
int  block 
)

move a master constraint to pricing problem

Parameters
scipSCIP data structure
decompdecomposition data structure
consindexindex of constraint to move
blockblock of the pricing problem where to move

Definition at line 4116 of file decomp.c.

References assignConsvarsToBlock().

Referenced by DECtryAssignMasterconssToExistingPricing().

SCIP_Bool DECdecompositionsAreEqual ( SCIP *  scip,
DEC_DECOMP decomp1,
DEC_DECOMP decomp2 
)

returns whether both structures lead to the same decomposition

Parameters
scipSCIP data structure
decomp1first decomp data structure
decomp2second decomp data structure

Definition at line 3918 of file decomp.c.

References DECdecompGetConstoblock(), DECdecompGetNBlocks(), and DECdecompGetVartoblock().

Referenced by DECfilterSimilarDecompositions().

SCIP_RETCODE DECdecompRemoveDeletedConss ( SCIP *  scip,
DEC_DECOMP decdecomp 
)

Remove all those constraints that were removed from the problem after the decomposition had been created

Parameters
scipSCIP data structure
decdecompdecomposition data structure

Definition at line 2098 of file decomp.c.

void DECdecompSetConsindex ( DEC_DECOMP decomp,
SCIP_HASHMAP *  consindex 
)

sets the consindex hashmap of the given decomposition

Parameters
decompdecomposition data structure
consindexConsindex hashmap

Definition at line 1248 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), and DECfilloutDecompFromHashmaps().

void DECdecompSetConstoblock ( DEC_DECOMP decomp,
SCIP_HASHMAP *  constoblock 
)

sets the constoblock hashmap of the given decomposition

Parameters
decompdecomposition data structure
constoblockConstoblock hashmap

Definition at line 1206 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), and fillOutConsFromConstoblock().

void DECdecompSetDetector ( DEC_DECOMP decomp,
DEC_DETECTOR detector 
)

sets the detector for the given decomposition

Parameters
decompdecomposition data structure
detectordetector data structure

Definition at line 1578 of file decomp.c.

Referenced by fillDecompStruct(), and readREFFile().

SCIP_RETCODE DECdecompSetDetectorChainString ( SCIP *  scip,
DEC_DECOMP decomp,
char *  detectorchainstring 
)

sets the detector clock times of the detectors of the detector chain

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1679 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

void DECdecompSetDetectorClockTimes ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_Real *  detectorClockTimes 
)

sets the detector clock times of the detectors of the detector chain

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1644 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

void DECdecompSetDetectorPctConssFromOpen ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_Real *  pctConssFromOpen 
)

sets the percentages of constraints assigned to some block of the corresponding detectors (of the detector chain) on this decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1882 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

void DECdecompSetDetectorPctConssToBlock ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_Real *  pctConssToBlock 
)

sets the percentages of constraints assigned to some block of the corresponding detectors (of the detector chain) on this decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1809 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

void DECdecompSetDetectorPctConssToBorder ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_Real *  pctConssToBorder 
)

sets the percentages of constraints assigned to the border of the corresponding detectors (of the detector chain) on this decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1739 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

void DECdecompSetDetectorPctVarsFromOpen ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_Real *  pctVarsFromOpen 
)

sets the percentages of variables assigned to some block of the corresponding detectors (of the detector chain) on this decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1846 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

void DECdecompSetDetectorPctVarsToBlock ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_Real *  pctVarsToBlock 
)

sets the percentages of variables assigned to some block of the corresponding detectors (of the detector chain) on this decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1774 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

void DECdecompSetDetectorPctVarsToBorder ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_Real *  pctVarsToBorder 
)

sets the percentages of variables assigned to the border of the corresponding detectors (of the detector chain) on this decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1703 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

SCIP_RETCODE DECdecompSetLinkingconss ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_CONS **  linkingconss,
int  nlinkingconss 
)

copies the input linkingconss array to the given decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure
linkingconsslinkingconss array
nlinkingconssnumber of linkingconss per block

Definition at line 921 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), and fillOutConsFromConstoblock().

SCIP_RETCODE DECdecompSetLinkingvars ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_VAR **  linkingvars,
int  nlinkingvars,
int  nfixedlinkingvars,
int  nmastervars 
)

copies the input linkingvars array to the given decomposition

copies the input linkingvars array to the given decdecomp structure

Parameters
scipSCIP data structure
decompdecomposition data structure
linkingvarslinkingvars array
nlinkingvarsnumber of total linkingvars (including fixed linking vars, )
nfixedlinkingvarsnumber of fixed linking variables
nmastervarsnumber of linking variables that are purely master variables

Definition at line 984 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), fillOutVarsFromVartoblock(), and getLinkingVars().

void DECdecompSetNBlocks ( DEC_DECOMP decomp,
int  nblocks 
)

sets the number of blocks for decomposition

Parameters
decompdecomposition data structure
nblocksnumber of blocks for decomposition

Definition at line 728 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), DECfilloutDecompFromHashmaps(), fillDecompStruct(), and readREFFile().

void DECdecompSetNNewBlocks ( SCIP *  scip,
DEC_DECOMP decomp,
int *  nNewBlocks 
)

sets the number of new blocks of the corresponding detectors (of the detector chain) on this decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1919 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

void DECdecompSetPresolved ( DEC_DECOMP decomp,
SCIP_Bool  presolved 
)

sets the presolved flag for decomposition

Parameters
decompdecomposition data structure
presolvedpresolved flag for decomposition

Definition at line 707 of file decomp.c.

Referenced by DECcreateBasicDecomp(), fillDecompStruct(), readREFFile(), and SCIPconshdlrDecompAddDecdecomp().

void DECdecompSetSeeedID ( DEC_DECOMP decomp,
int  seeedID 
)

sets the id of the original seeed

Parameters
decompdecomposition data structure

Definition at line 1619 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

SCIP_RETCODE DECdecompSetStairlinkingvars ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_VAR ***  stairlinkingvars,
int *  nstairlinkingvars 
)

copies the input stairlinkingvars array to the given decomposition

Todo:
A valid check needs to be implemented
Parameters
scipSCIP data structure
decompdecomposition data structure
stairlinkingvarsstairlinkingvars array
nstairlinkingvarsnumber of linkingvars per block

Definition at line 1078 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), and DECfilloutDecompFromHashmaps().

SCIP_RETCODE DECdecompSetSubscipconss ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_CONS ***  subscipconss,
int *  nsubscipconss 
)

copies the input subscipconss array to the given decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure
subscipconsssubscipconss array
nsubscipconssnumber of subscipconss per block

Definition at line 838 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), and fillOutConsFromConstoblock().

SCIP_RETCODE DECdecompSetSubscipvars ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_VAR ***  subscipvars,
int *  nsubscipvars 
)

copies the input subscipvars array to the given decomposition

Parameters
scipSCIP data structure
decompdecomposition data structure
subscipvarssubscipvars array
nsubscipvarsnumber of subscipvars per block

Definition at line 750 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), fillOutVarsFromVartoblock(), and getLinkingVars().

SCIP_RETCODE DECdecompSetType ( DEC_DECOMP decomp,
DEC_DECTYPE  type 
)

sets the type of the decomposition

Parameters
decompdecomposition data structure
typetype of the decomposition

Definition at line 642 of file decomp.c.

References DEC_DECTYPE_ARROWHEAD, DEC_DECTYPE_BORDERED, DEC_DECTYPE_DIAGONAL, DEC_DECTYPE_STAIRCASE, and DEC_DECTYPE_UNKNOWN.

Referenced by DECfilloutDecompFromHashmaps(), fillDecompStruct(), and removeFromLinkingvars().

void DECdecompSetVarindex ( DEC_DECOMP decomp,
SCIP_HASHMAP *  varindex 
)

sets the varindex hashmap of the given decomposition

Parameters
decompdecomposition data structure
varindexVarindex hashmap

Definition at line 1228 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), and DECfilloutDecompFromHashmaps().

void DECdecompSetVartoblock ( DEC_DECOMP decomp,
SCIP_HASHMAP *  vartoblock 
)

sets the vartoblock hashmap of the given decomposition

Parameters
decompdecomposition data structure
vartoblockVartoblock hashmap

Definition at line 1184 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed(), fillOutVarsFromVartoblock(), and getLinkingVars().

SCIP_RETCODE DECdecompTransform ( SCIP *  scip,
DEC_DECOMP decomp 
)

transforms all constraints and variables, updating the arrays

Parameters
scipSCIP data structure
decompdecomposition data structure

Definition at line 1957 of file decomp.c.

References DECdecompCheckConsistency().

Referenced by initRelaxator().

SCIP_RETCODE DECdetermineConsBlock ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_CONS *  cons,
int *  block 
)

returns the number of the block that the constraint is with respect to the decomposition

returns the number of the block that the constraint is with respect to the decomposition; set *block = -2, if it has no variables *block = -1, if it has only variables belonging only to the master (meaning that this constraint should build a new block) *block in [0,...,nblocks-1] if it only contains variables of a particular block (plus linking variables) *block = nblocks, if it contains

  • either variables from more than one block (plus linking variables or master only variables)
  • or linking variables only: For linking variables, we should check which blocks they actually link
    Todo:
    : maybe this is possible in such a way that a staircase structure is preserved
Parameters
scipSCIP data structure
decompdecomposition data structure
consconstraint to check
blockblock of the constraint (or nblocks for master)

Definition at line 4026 of file decomp.c.

References DECdecompGetNBlocks(), and DECdecompGetVartoblock().

Referenced by DECdecompAddRemainingConss(), DECtryAssignMasterconssToExistingPricing(), and DECtryAssignMasterconssToNewPricing().

SCIP_RETCODE DECevaluateDecomposition ( SCIP *  scip,
DEC_DECOMP decdecomp,
DEC_SCORES score 
)
SCIP_RETCODE DECfilloutDecompFromConstoblock ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_HASHMAP *  constoblock,
int  nblocks,
SCIP_Bool  staircase 
)

completely fills out decomposition structure from only the constraint partition

completely fills out decomposition structure from only the constraint partition in the following manner: given constraint block/border assignment (by constoblock), one gets the following assignment of probvars: let C(j) be the set of constraints containing variable j, set block of j to (i) constoblock(i) iff constoblock(i1) == constoblock(i2) for all i1,i2 in C(j) with constoblock(i1) != nblocks+1 && constoblock(i2) != nblocks+1 (ii) nblocks+2 ["linking var"] iff exists i1,i2 with constoblock(i1) != constoblock(i2) && constoblock(i1) != nblocks+1 && constoblock(i2) != nblocks+1 (iii) nblocks+1 ["master var"] iff constoblock(i) == nblocks+1 for all i in C(j)

Parameters
scipSCIP data structure
decompdecomposition data structure
constoblockconstraint to block hashmap, start with 1 for first block and nblocks+1 for linking constraints
nblocksnumber of blocks
staircaseshould the decomposition be a staircase structure

Definition at line 1454 of file decomp.c.

References DECfilloutDecompFromHashmaps().

Referenced by blocking(), copyToDecdecomp(), gcg::RowGraph< T >::createDecompFromPartition(), gcg::ColumnGraph< T >::createDecompFromPartition(), gcg::HyperrowcolGraph< T >::createDecompFromPartition(), gcg::HyperrowGraph< T >::createDecompFromPartition(), gcg::HypercolGraph< T >::createDecompFromPartition(), DEC_DECL_DETECTSTRUCTURE(), DECcreateDecompFromMasterconss(), DECtryAssignMasterconssToNewPricing(), fillDecompStruct(), fixedBlocks(), getConsIndex(), and sort_pred::operator()().

SCIP_RETCODE DECfilloutDecompFromHashmaps ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_HASHMAP *  vartoblock,
SCIP_HASHMAP *  constoblock,
int  nblocks,
SCIP_Bool  staircase 
)

completely initializes decomposition structure from the values of the hashmaps

Parameters
scipSCIP data structure
decompdecomposition data structure
vartoblockvariable to block hashmap
constoblockconstraint to block hashmap
nblocksnumber of blocks
staircaseshould the decomposition be a staircase structure

Definition at line 1268 of file decomp.c.

References DEC_DECTYPE_ARROWHEAD, DEC_DECTYPE_BORDERED, DEC_DECTYPE_DIAGONAL, DEC_DECTYPE_STAIRCASE, DECdecompCheckConsistency(), DECdecompGetNSubscipconss(), DECdecompGetNSubscipvars(), DECdecompGetSubscipconss(), DECdecompSetConsindex(), DECdecompSetNBlocks(), DECdecompSetStairlinkingvars(), DECdecompSetType(), DECdecompSetVarindex(), fillOutConsFromConstoblock(), and fillOutVarsFromVartoblock().

Referenced by DECcreateBasicDecomp(), DECfilloutDecompFromConstoblock(), and readREFFile().

int DECfilterSimilarDecompositions ( SCIP *  scip,
DEC_DECOMP **  decs,
int  ndecs 
)

filters similar decompositions from a given list and moves them to the end

Returns
the number of unique decompositions
Parameters
scipSCIP data structure
decsarray of decompositions
ndecsnumber of decompositions

Definition at line 3983 of file decomp.c.

References DECdecompositionsAreEqual().

Referenced by detectIsomorph(), and SCIPconshdlrDecompAddLegacymodeDecompositions().

SCIP_RETCODE DECgetDensityData ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_VAR **  vars,
int  nvars,
SCIP_CONS **  conss,
int  nconss,
int *  varsubproblemdensity,
int *  varmasterdensity,
int *  conssubproblemdensity,
int *  consmasterdensity 
)

returns the number of nonzeros of each column of the constraint matrix both in the subproblem and in the master

Note
For linking variables, the number of nonzeros in the subproblems corresponds to the number on nonzeros in the border
The arrays have to be allocated by the caller
Precondition
This function assumes that constraints are partitioned in the decomp structure, no constraint is present in more than one block
Parameters
scipSCIP data structure
decompdecomposition data structure
varspointer to array store variables belonging to density
nvarsnumber of variables
consspointer to array to store constraints belonging to the density
nconssnumber of constraints
varsubproblemdensitypointer to array to store the nonzeros for the subproblems
varmasterdensitypointer to array to store the nonzeros for the master
conssubproblemdensitypointer to array to store the nonzeros for the subproblems
consmasterdensitypointer to array to store the nonzeros for the master

Definition at line 2909 of file decomp.c.

References DECdecompGetLinkingconss(), DECdecompGetNBlocks(), DECdecompGetNLinkingconss(), DECdecompGetNSubscipconss(), DECdecompGetSubscipconss(), and DECdecompGetVartoblock().

Referenced by GCGprintDecompStatistics().

void DECgetLinkingVarsData ( SCIP *  scip,
DEC_DECOMP decomp,
int *  nvars,
int *  nbinvars,
int *  nintvars,
int *  nimplvars,
int *  ncontvars 
)

return the number of variables and binary, integer, implied integer, continuous variables of the master

Parameters
scipSCIP data structure
decompdecomposition data structure
nvarspointer to store number of linking vars or NULL
nbinvarspointer to store number of binary linking vars or NULL
nintvarspointer to store number of integer linking vars or NULL
nimplvarspointer to store number of implied linking vars or NULL
ncontvarspointer to store number of continuous linking vars or NULL

Definition at line 2859 of file decomp.c.

References DEC_DECTYPE_UNKNOWN, DECdecompGetLinkingvars(), DECdecompGetNLinkingvars(), DECdecompGetType(), and incVarsData().

Referenced by GCGprintDecompStatistics().

SCIP_Real DECgetMaxWhiteScore ( SCIP *  scip,
DEC_DECOMP decdecomp 
)

returns the maximum white score ( if it is not calculated yet is decdecomp is evaluated)

computes the score of the given decomposition based on the border, the average density score and the ratio of linking variables

Parameters
scipSCIP data structure
decdecompdecomposition data structure

Definition at line 3243 of file decomp.c.

References DECevaluateDecomposition().

const char* DECgetStrType ( DEC_DECTYPE  type)

converts the DEC_DECTYPE enum to a string

Parameters
typedecomposition type

Definition at line 458 of file decomp.c.

Referenced by DECevaluateDecomposition(), GCGprintDecompStatistics(), GCGwriteDecompositionData(), and writeData().

void DECgetSubproblemVarsData ( SCIP *  scip,
DEC_DECOMP decomp,
int *  nvars,
int *  nbinvars,
int *  nintvars,
int *  nimplvars,
int *  ncontvars,
int  nproblems 
)

return the number of variables and binary, integer, implied integer, continuous variables of all subproblems

Parameters
scipSCIP data structure
decompdecomposition data structure
nvarspointer to array of size nproblems to store number of subproblem vars or NULL
nbinvarspointer to array of size nproblems to store number of binary subproblem vars or NULL
nintvarspointer to array of size nproblems to store number of integer subproblem vars or NULL
nimplvarspointer to array of size nproblems to store number of implied subproblem vars or NULL
ncontvarspointer to array of size nproblems to store number of continuous subproblem vars or NULL
nproblemssize of the arrays

Definition at line 2810 of file decomp.c.

References DEC_DECTYPE_UNKNOWN, DECdecompGetNSubscipvars(), DECdecompGetSubscipvars(), DECdecompGetType(), and incVarsData().

Referenced by GCGprintDecompStatistics().

SCIP_RETCODE DECgetVarLockData ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_VAR **  vars,
int  nvars,
int  nsubproblems,
int **  subsciplocksdown,
int **  subsciplocksup,
int *  masterlocksdown,
int *  masterlocksup 
)

calculates the number of up and down locks of variables for a given decomposition in both the original problem and the pricingproblems

Note
All arrays need to be allocated by the caller
Warning
This function needs a lot of memory (nvars*nblocks+1) array entries
Parameters
scipSCIP data structure
decompdecomposition data structure
varspointer to array store variables belonging to density
nvarsnumber of variables
nsubproblemsnumber of sub problems
subsciplocksdownpointer to two dimensional array to store the down locks for the subproblems
subsciplocksuppointer to two dimensional array to store the down locks for the subproblems
masterlocksdownpointer to array to store the down locks for the master
masterlocksuppointer to array to store the down locks for the master

Definition at line 3090 of file decomp.c.

References DECdecompGetLinkingconss(), DECdecompGetNBlocks(), DECdecompGetNLinkingvars(), DECdecompGetNSubscipconss(), DECdecompGetSubscipconss(), DECdecompGetVartoblock(), GCGconsGetLhs(), GCGconsGetRhs(), GCGconsGetVals(), and increaseLock().

SCIP_RETCODE DECpermuteDecomp ( SCIP *  scip,
DEC_DECOMP decomp,
SCIP_RANDNUMGEN *  randnumgen 
)

permutes the decomposition according to the permutation seed

Parameters
scipSCIP data structure
decompdecomposition data structure
randnumgenrandom number generator

Definition at line 4302 of file decomp.c.

References DECdecompCheckConsistency(), DECdecompGetLinkingconss(), DECdecompGetLinkingvars(), DECdecompGetNBlocks(), DECdecompGetNLinkingconss(), DECdecompGetNLinkingvars(), DECdecompGetNSubscipconss(), DECdecompGetNSubscipvars(), DECdecompGetSubscipconss(), and DECdecompGetSubscipvars().

Referenced by initRelaxator().

void DECsetMaxWhiteScore ( SCIP *  scip,
DEC_DECOMP decdecomp,
SCIP_Real  maxwhitescore 
)

sets the score of the given decomposition based on the border, the average density score and the ratio of linking variables

Parameters
scipSCIP data structure
decdecompdecomposition data structure

Definition at line 3226 of file decomp.c.

Referenced by gcg::Seeedpool::createDecompFromSeeed().

SCIP_RETCODE DECtryAssignMasterconssToExistingPricing ( SCIP *  scip,
DEC_DECOMP decomp,
int *  transferred 
)

tries to assign masterconss to pricing problem

Parameters
scipSCIP data structure
decompdecomposition data structure
transferrednumber of master constraints reassigned

Definition at line 4151 of file decomp.c.

References DECdecompGetNBlocks(), DECdecompMoveLinkingConsToPricing(), and DECdetermineConsBlock().

Referenced by DECcreatePolishedDecomp().

SCIP_RETCODE DECtryAssignMasterconssToNewPricing ( SCIP *  scip,
DEC_DECOMP decomp,
DEC_DECOMP **  newdecomp,
int *  transferred 
)

tries to assign masterconss to new pricing problem

Parameters
scipSCIP data structure
decompdecomposition data structure
newdecompnew decomposition, if successful
transferrednumber of master constraints reassigned

Definition at line 4199 of file decomp.c.

References DECdecompCreate(), DECdetermineConsBlock(), and DECfilloutDecompFromConstoblock().

Referenced by DECcreatePolishedDecomp().