#include "cons_decomp.h"
#include "reader_gp.h"
#include <assert.h>
#include <stddef.h>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <cstdlib>
#include <fstream>
#include <iostream>
#include <iterator>
#include <sstream>
#include <string>
#include <utility>
#include <regex>
#include <vector>
#include <scip/clock.h>
#include <scip/def.h>
#include <scip/pub_cons.h>
#include <scip/pub_dialog.h>
#include <scip/pub_message.h>
#include <scip/pub_misc.h>
#include <scip/type_clock.h>
#include <scip/type_cons.h>
#include <scip/type_dialog.h>
#include <scip/type_message.h>
#include <scip/type_misc.h>
#include <scip/type_paramset.h>
#include <scip/type_result.h>
#include <scip/type_retcode.h>
#include <scip/type_scip.h>
#include <scip/type_set.h>
#include "class_consclassifier.h"
#include "class_seeed.h"
#include "class_seeedpool.h"
#include "class_varclassifier.h"
#include "class_miscvisualization.h"
#include "pub_decomp.h"
#include "type_decomp.h"
#include "wrapper_seeed.h"
#include "reader_tex.h"
#include "scip_misc.h"
#include "relax_gcg.h"
Go to the source code of this file.
Typedefs | |
typedef gcg::Seeed * | SeeedPtr |
Enumerations | |
enum | weightinggpresolvedoriginaldecomps { NO_MODIF = 0, FRACTION_OF_NNONZEROS, FRACTION_OF_NROWS, FAVOUR_PRESOLVED } |
Functions | |
SCIP_Real | calcLogarithm (SCIP_Real val) |
SCIP_RETCODE | SCIPconshdlrdataDecompUnselectAll (SCIP *scip) |
SCORETYPE | SCIPconshdlrdataGetScoretype (SCIP_CONSHDLRDATA *conshdlrdata) |
char * | SCIPconshdlrDecompGetScoretypeShortName (SCIP *scip, SCORETYPE sctype) |
char * | SCIPconshdlrDecompGetScoretypeDescription (SCIP *scip, SCORETYPE sctype) |
SCIP_Bool | unfinishedchildexists (std::vector< SCIP_Bool > const &childsfinished) |
int | getfirstunfinishedchild (std::vector< SCIP_Bool > const &childsfinished, std::vector< int > const &childs) |
int | getfirstunfinishedchildid (std::vector< SCIP_Bool > const &childsfinished, std::vector< int > const &childs) |
SCIP_Bool | finishnextchild (std::vector< int > &childs, std::vector< SCIP_Bool > &childsfinished, int child) |
SCIP_RETCODE | SCIPconshdlrDecompAddCompleteSeeedForUnpresolved (SCIP *scip, SeeedPtr seeed) |
SCIP_RETCODE | SCIPconshdlrDecompAddCompleteSeeedForPresolved (SCIP *scip, SeeedPtr seeed) |
SCIP_RETCODE | SCIPconshdlrDecompAddPartialSeeedForUnpresolved (SCIP *scip, SeeedPtr seeed) |
SCIP_RETCODE | SCIPconshdlrDecompAddPartialSeeedForPresolved (SCIP *scip, SeeedPtr seeed) |
SCIP_RETCODE | SCIPconshdlrDecompAddSeeed (SCIP *scip, SeeedPtr seeed) |
SeeedPtr | SCIPconshdlrDecompGetSeeedFromPresolved (SCIP *scip, int seeedid) |
SeeedPtr | SCIPconshdlrDecompGetSeeedFromUnpresolved (SCIP *scip, int seeedid) |
SeeedPtr | SCIPconshdlrDecompGetSeeed (SCIP *scip, int seeedid) |
static | SCIP_DECL_CONSINIT (consInitDecomp) |
static | SCIP_DECL_CONSEXIT (consExitDecomp) |
static | SCIP_DECL_CONSFREE (consFreeDecomp) |
static | SCIP_DECL_CONSENFORELAX (consEnforeDecomp) |
static | SCIP_DECL_CONSENFOLP (consEnfolpDecomp) |
static | SCIP_DECL_CONSENFOPS (consEnfopsDecomp) |
static | SCIP_DECL_CONSCHECK (consCheckDecomp) |
static | SCIP_DECL_CONSLOCK (consLockDecomp) |
SCIP_RETCODE | SCIPincludeConshdlrDecomp (SCIP *scip) |
creates the constraint handler for decomp and includes it in SCIP More... | |
SCIP_RETCODE | SCIPconshdlrDecompShowListExtractHeader (SCIP *scip) |
SCIP_RETCODE | SCIPconshdlrDecompShowCurrUserSeeedInfo (SCIP *scip) |
SCIP_RETCODE | SCIPconshdlrDecompShowListExtract (SCIP *scip) |
SCIP_RETCODE | SCIPconshdlrDecompAddDecdecomp (SCIP *scip, DEC_DECOMP *decdecomp) |
sets (and adds) the decomposition structure More... | |
SCIP_RETCODE | SCIPconshdlrDecompShowLegend (SCIP *scip) |
SCIP_RETCODE | SCIPconshdlrDecompShowToolboxInfo (SCIP *scip) |
SCIP_RETCODE | SCIPconshdlrDecompModifyNVisualized (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompSelectVisualize (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompSelectCalcStrongDecompositionScore (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompSelectInspect (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompSelectVisualizeCurrentUserSeeed (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompToolboxChoose (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompExploreSelect (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompShowHelp (SCIP *scip) |
SCIP_Bool | SCIPconshdlrDecompDetectBenders (SCIP *scip) |
returns whether More... | |
SCIP_Bool | SCIPconshdlrDecompIsBestCandidateUnpresolved (SCIP *scip) |
SCIP_RETCODE | SCIPconshdlrDecompExecSelect (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
method too handle user input for "explore" command More... | |
SCIP_RETCODE | SCIPconshdlrDecompToolboxModifyConss (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompToolboxModifyFinish (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompToolboxModifyVars (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompToolboxActOnSeeed (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog, toolboxtype action) |
SCIP_RETCODE | SCIPconshdlrDecompToolboxFinishSeeed (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompToolboxPropagateSeeed (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompToolboxPostprocessSeeed (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
SCIP_RETCODE | SCIPconshdlrDecompExecToolboxModify (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
method to handle and moderate user input for modifying decompositions More... | |
SCIP_RETCODE | SCIPconshdlrDecompExecToolboxCreate (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
method to handle and moderate user input for creating new decompositions by the user More... | |
SCIP_RETCODE | SCIPconshdlrDecompExecToolbox (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog) |
method to handle and moderate user input for creating new decompositions and modifying existing decompositions by the user More... | |
DEC_DECOMP ** | SCIPconshdlrDecompGetDecdecomps (SCIP *scip) |
int | SCIPconshdlrDecompGetNDecdecomps (SCIP *scip) |
DEC_DETECTORDATA * | DECdetectorGetData (DEC_DETECTOR *detector) |
returns the data of the provided detector More... | |
int | SCIPconshdlrDecompGetNFormerDetectionConssForID (SCIP *scip, int id) |
returns the number of constraints that were active while detecting the decomposition originating from the seeed with the given id, this method is used to decide if the problem has changed since detection, if so the aggregation information needs to be recalculated More... | |
gcg::Seeedpool * | SCIPconshdlrDecompGetSeeedpool (SCIP *scip) |
gcg::Seeedpool * | SCIPconshdlrDecompGetSeeedpoolUnpresolved (SCIP *scip) |
SCIP_RETCODE | SCIPconshdlrDecompCreateSeeedpool (SCIP *scip) |
creates the seeedpool for the presolved problem More... | |
SCIP_RETCODE | SCIPconshdlrDecompCreateSeeedpoolUnpresolved (SCIP *scip) |
creates the seeedpool for the unpresolved problem More... | |
SEEEDPOOL_WRAPPER * | SCIPconshdlrDecompGetSeeedpoolUnpresolvedExtern (SCIP *scip) |
help method to access seeedpool for unpresolved problem : consider deleting this method will be deleted if the corresponidng wrapper classes are introduced More... | |
SEEEDPOOL_WRAPPER * | SCIPconshdlrDecompGetSeeedpoolExtern (SCIP *scip) |
help method to access seeedpool for transformed problem : consider deleting this method will be deleted if the corresponidng wrapper classes are introduced More... | |
int | SCIPconshdlrDecompIncreaseAndGetNCallsCreateDecomp (SCIP *scip) |
counts up the counter for created decompositions and returns it More... | |
int | SCIPconshdlrDecompDecreaseAndGetNCallsCreateDecomp (SCIP *scip) |
decreases the counter for created decompositions and returns it More... | |
const char * | DECdetectorGetName (DEC_DETECTOR *detector) |
returns the name of the provided detector More... | |
DEC_DETECTOR * | DECfindDetector (SCIP *scip, const char *name) |
searches for the detector with the given name and returns it or NULL if detector is not found More... | |
SCIP_RETCODE | DECincludeDetector (SCIP *scip, const char *name, const char decchar, const char *description, int freqCallRound, int maxCallRound, int minCallRound, int freqCallRoundOriginal, int maxCallRoundOriginal, int minCallRoundOriginal, int priority, SCIP_Bool enabled, SCIP_Bool enabledOriginal, SCIP_Bool enabledFinishing, SCIP_Bool enabledPostprocessing, SCIP_Bool skip, SCIP_Bool usefulRecall, SCIP_Bool legacymode, DEC_DETECTORDATA *detectordata, DEC_DECL_DETECTSTRUCTURE((*detectStructure)), DEC_DECL_FREEDETECTOR((*freeDetector)), DEC_DECL_INITDETECTOR((*initDetector)), DEC_DECL_EXITDETECTOR((*exitDetector)), DEC_DECL_PROPAGATESEEED((*propagateSeeedDetector)), DEC_DECL_PROPAGATEFROMTOOLBOX((*propagateFromToolboxDetector)), DEC_DECL_FINISHFROMTOOLBOX((*finishFromToolboxDetector)), DEC_DECL_FINISHSEEED((*finishSeeedDetector)), DEC_DECL_POSTPROCESSSEEED((*postprocessSeeedDetector)), DEC_DECL_SETPARAMAGGRESSIVE((*setParamAggressiveDetector)), DEC_DECL_SETPARAMDEFAULT((*setParamDefaultDetector)),) |
includes one detector More... | |
SCIP_Real | DECgetRemainingTime (SCIP *scip) |
returns the remaining time of scip that the decomposition may use More... | |
SCIP_RETCODE | SCIPconshdlrDecompArePricingprobsIdenticalForSeeedid (SCIP *scip, int seeedid, int probnr1, int probnr2, SCIP_Bool *identical) |
SCIP_RETCODE | SCIPconshdlrDecompCreateVarmapForSeeedId (SCIP *scip, SCIP_HASHMAP **hashorig2pricingvar, int seeedid, int probnr1, int probnr2, SCIP *scip1, SCIP *scip2, SCIP_HASHMAP *varmap) |
for two identical pricing problems a corresponding varmap is created More... | |
SCIP_RETCODE | SCIPconshdlrDecompCreateUserSeeed (SCIP *scip, SCIP_Bool presolved, SCIP_Bool markedincomplete) |
creates a user seeed for the problem More... | |
SCIP_Bool | SCIPconshdlrDecompUnpresolvedUserSeeedAdded (SCIP *scip) |
returns whether or not an unpresolved (untransformed) decompositions was given by the user More... | |
SCIP_Bool | SCIPconshdlrDecompUnpresolvedSeeedExists (SCIP *scip) |
returns whether or not an unpresolved (untransformed) decompositions exists in the data structures More... | |
SCIP_RETCODE | SCIPconshdlrDecompPopulateSelected (SCIP *scip) |
populate datastructures with incomplete decompositions (e.g. that were given by the user) to complete them during detection loop More... | |
SCIP_RETCODE | SCIPconshdlrDecompgetNSeeeds (SCIP *scip, int *nseeeds) |
SCIP_RETCODE | SCIPconshdlrDecompUpdateSeeedlist (SCIP *scip) |
method to update the list of incomplete decompositions in "explore" submenue ( this list changes due to new decompositions, modified, decompositions or changes of the score More... | |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedSetnumberOfBlocks (SCIP *scip, int nblocks) |
set the number of blocks in the current user seeed (which is used for user input (read or modify) ) More... | |
SCIP_Bool | SCIPconshdlrDecompUserSeeedIsActive (SCIP *scip) |
returns whether there is an user seeed that is currently worked on More... | |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedSetConsDefaultMaster (SCIP *scip, SCIP_Bool consdefaulttomaster) |
set the user given information of the current user seeed according consdefaultmaster (if TRUE all open constraints are set to master ) More... | |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedSetConsToBlock (SCIP *scip, const char *consname, int blockid) |
sets a constraint by name to a block in the current user seeed More... | |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedSetConsToMaster (SCIP *scip, const char *consname) |
sets a constraint by name to master in the current user seeed More... | |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedSetVarToBlock (SCIP *scip, const char *varname, int blockid) |
sets a variable by name to a block in the current user seeed More... | |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedSetVarToMaster (SCIP *scip, const char *varname) |
sets a variable by name to the master in the current user seeed More... | |
SCIP_RETCODE | SCIPconshdlrDecompAddBlockNumberCandidate (SCIP *scip, int blockNumberCandidate) |
add block number user candidate (user candidates are prioritized over found ones) More... | |
int | SCIPconshdlrDecompGetNBlockNumberCandidates (SCIP *scip) |
returns the number of block candidates given by the user More... | |
int | SCIPconshdlrDecompGetBlockNumberCandidate (SCIP *scip, int index) |
returns block number user candidate with given index More... | |
SCIP_Real | SCIPconshdlrDecompGetCompleteDetectionTime (SCIP *scip) |
returns the total detection time More... | |
SCIP_RETCODE | SCIPconshdlrDecompBlockNumberCandidateToSeeedpool (SCIP *scip, SCIP_Bool transformed) |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedSetVarToLinking (SCIP *scip, const char *varname) |
sets a variable by name to the linking variables in the current user seeed More... | |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedFlush (SCIP *scip) |
finalizes and flushes the current user seeed, i.e. consider implicits, calc hashvalue, construct decdecomp if complete etc More... | |
SCIP_RETCODE | SCIPconshdlrDecompUserSeeedReject (SCIP *scip) |
rejects and deletes the current user seeed More... | |
SCIP_RETCODE | SCIPconshdlrDecompTranslateAndAddCompleteUnpresolvedSeeeds (SCIP *scip, SCIP_Bool *success) |
translates unpresolved seeed to a complete presolved one More... | |
SCIP_Real | SCIPconshdlrDecompAdaptScore (SCIP *scip, SCIP_Real oldscore) |
SCIP_Bool | SCIPconshdlrDecompHasDecomp (SCIP *scip) |
returns whether or not there exists at least one (com[plete or incomplete) decomposition More... | |
SCIP_Bool | SCIPconshdlrDecompHasCompleteDecomp (SCIP *scip) |
SCIP_Bool | SCIPconshdlrDecompExistsSelected (SCIP *scip) |
returns if there is a decomposition that is currently selected by the user (done in explore menue) More... | |
SCIP_RETCODE | SCIPconshdlrDecompChooseCandidatesFromSelected (SCIP *scip, SCIP_Bool updatelist) |
initilizes the candidates data structures with selected seeeds (or all if there are no selected seeeds) and sort them according to the current scoretype More... | |
SCIP_RETCODE | SCIPconshdlrDecompAddLegacymodeDecompositions (SCIP *scip, SCIP_RESULT *result) |
SCIP_Bool | SCIPconshdlrDecompCheckConsistency (SCIP *scip) |
int | SCIPconshdlrDecompGetNextSeeedID (SCIP *scip) |
SCIP_RETCODE | DECconshdlrDecompSortDecompositionsByScore (SCIP *scip) |
sort the finished decompositions according to the currently chosen score in the according datastructures for the presolved and original problem More... | |
SCIP_RETCODE | DECdetectStructure (SCIP *scip, SCIP_RESULT *result) |
SCIP_RETCODE | DECwriteAllDecomps (SCIP *scip, char *directory, char *extension, SCIP_Bool original, SCIP_Bool presolved) |
SCIP_Bool | GCGdetectionTookPlace (SCIP *scip) |
int | SCIPconshdlrDecompGetNDetectors (SCIP *scip) |
DEC_DETECTOR ** | SCIPconshdlrDecompGetDetectors (SCIP *scip) |
const char * | SCIPconshdlrDecompGetPdfReader (SCIP *scip) |
returns string name of the chosen pdf reader More... | |
SCIP_RETCODE | SCIPconshdlrDecompNotifyNonFinalFreeTransform (SCIP *scip) |
used before calling SCIPfreeTransform(),, if called to revoke presolving (e.g. if unpresolved decomposition is used, and transformation is not successful), this seems mandatory to decide during consExitDecomp if the original detection information should be freed More... | |
SCIP_RETCODE | SCIPconshdlrDecompNotifyFinishedNonFinalFreeTransform (SCIP *scip) |
used after calling SCIPfreeTransform() if called to revoke presolving (e.g. if unpresolved decomposition is used, and transformation is not successful), this seems mandatory to decide during consExitDecomp if the original detection information should be freed More... | |
SCIP_RETCODE | SCIPconshdlrDecompGetAllRelevantSeeeds (SCIP *scip, SEEED_WRAPPER **seeedswr, int *nseeeds) |
SCIP_RETCODE | DECwriteFamilyTree (SCIP *scip, const char *filename, const char *workfolder, int ndecompositions, SCIP_Bool draft) |
SCIP_RETCODE | SCIPconshdlrDecompWriteDec (SCIP *scip, FILE *file, SCIP_Bool transformed, SCIP_RESULT *result) |
DEC_DECOMP * | DECgetBestDecomp (SCIP *scip) |
SCIP_RETCODE | DECgetSeeedToWrite (SCIP *scip, SCIP_Bool transformed, SEEED_WRAPPER *seeedwrapper) |
void | DECprintListOfDetectors (SCIP *scip) |
scoretype | SCIPconshdlrDecompGetCurrScoretype (SCIP *scip) |
SCIP_Bool | DEChasDetectionRun (SCIP *scip) |
char | DECdetectorGetChar (DEC_DETECTOR *detector) |
DEC_DECOMP ** | SCIPconshdlrDecompGetFinishedDecomps (SCIP *scip) |
int | SCIPconshdlrDecompGetNFinishedDecomps (SCIP *scip) |
int | SCIPconshdlrDecompGetNSeeeds (SCIP *scip) |
SCIP_RETCODE | GCGprintDetectorStatistics (SCIP *scip, FILE *file) |
static SCIP_RETCODE | setDetectionDefault (SCIP *scip, SCIP_CONSHDLRDATA *conshdlrdata, SCIP_Bool quiet) |
static SCIP_RETCODE | setDetectionAggressive (SCIP *scip, SCIP_CONSHDLRDATA *conshdlrdata, SCIP_Bool quiet) |
static SCIP_RETCODE | setDetectionOff (SCIP *scip, SCIP_CONSHDLRDATA *conshdlrdata, SCIP_Bool quiet) |
static SCIP_RETCODE | setDetectionFast (SCIP *scip, SCIP_CONSHDLRDATA *conshdlrdata, SCIP_Bool quiet) |
SCIP_RETCODE | GCGsetDetection (SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet) |
SCIP_RETCODE | GCGgetSeeedFromID (SCIP *scip, int *seeedid, SEEED_WRAPPER *seeedwr) |
SCIP_RETCODE | GCGgetCurrentSeeedpools (SCIP *scip, SEEED_WRAPPER *seeedpoolwr, SEEED_WRAPPER *seeedpoolunpresolvedwr) |
SCIP_RETCODE | GCGprintBlockcandidateInformation (SCIP *scip, FILE *file) |
SCIP_RETCODE | GCGprintCompleteDetectionTime (SCIP *givenscip, FILE *file) |
SCIP_RETCODE | GCGprintClassifierInformation (SCIP *scip, FILE *file) |
SCIP_RETCODE | SCIPconshdlrDecompGetSelectedSeeeds (SCIP *scip, int **output, int *outputsize) |
SCIP_RETCODE | GCGprintDecompInformation (SCIP *scip, FILE *file) |
SCIP_RETCODE | GCGprintMiplibBaseInformation (SCIP *scip, FILE *file) |
SCIP_RETCODE | GCGprintMiplibBaseInformationHeader (SCIP *scip, FILE *file) |
SCIP_RETCODE | GCGprintMiplibConnectedInformation (SCIP *scip, FILE *file) |
SCIP_RETCODE | GCGprintMiplibDecompInformation (SCIP *scip, FILE *file) |
SCIP_RETCODE | GCGprintOptionalOutput (SCIP *scip, SCIP_DIALOGHDLR *dialoghdlr) |
Macro Definition Documentation
#define AGGRESSIVE_LEVENSHTEIN_MAXMATRIXHALFPERIMETER 80000 |
deactivate levenshtein constraint classifier if nrows + ncols exceeds this value for emphasis aggressive
Definition at line 149 of file cons_decomp.cpp.
Referenced by setDetectionAggressive().
#define CONSHDLR_CHECKPRIORITY 0 |
priority of the constraint handler for checking feasibility
Definition at line 98 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define CONSHDLR_DESC "constraint handler for structure detection" |
Definition at line 96 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define CONSHDLR_EAGERFREQ -1 |
frequency for using all instead of only the useful constraints in separation, propagation and enforcement, -1 for no eager evaluations, 0 for first only
Definition at line 99 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define CONSHDLR_ENFOPRIORITY 0 |
priority of the constraint handler for constraint enforcing
Definition at line 97 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define CONSHDLR_NAME "decomp" |
Definition at line 95 of file cons_decomp.cpp.
Referenced by DECconshdlrDecompSortDecompositionsByScore(), DECdetectStructure(), DECfindDetector(), DECgetBestDecomp(), DECgetSeeedToWrite(), DEChasDetectionRun(), DECincludeDetector(), DECprintListOfDetectors(), DECwriteAllDecomps(), DECwriteFamilyTree(), GCGdetectionTookPlace(), GCGprintBlockcandidateInformation(), GCGprintClassifierInformation(), GCGprintDecompInformation(), GCGprintDetectorStatistics(), GCGprintMiplibBaseInformation(), GCGprintMiplibConnectedInformation(), GCGprintMiplibDecompInformation(), GCGsetDetection(), SCIPconshdlrdataDecompUnselectAll(), SCIPconshdlrDecompAdaptScore(), SCIPconshdlrDecompAddBlockNumberCandidate(), SCIPconshdlrDecompAddCompleteSeeedForPresolved(), SCIPconshdlrDecompAddCompleteSeeedForUnpresolved(), SCIPconshdlrDecompAddDecdecomp(), SCIPconshdlrDecompAddLegacymodeDecompositions(), SCIPconshdlrDecompAddPartialSeeedForPresolved(), SCIPconshdlrDecompAddPartialSeeedForUnpresolved(), SCIPconshdlrDecompArePricingprobsIdenticalForSeeedid(), SCIPconshdlrDecompBlockNumberCandidateToSeeedpool(), SCIPconshdlrDecompCheckConsistency(), SCIPconshdlrDecompChooseCandidatesFromSelected(), SCIPconshdlrDecompCreateSeeedpool(), SCIPconshdlrDecompCreateSeeedpoolUnpresolved(), SCIPconshdlrDecompCreateUserSeeed(), SCIPconshdlrDecompCreateVarmapForSeeedId(), SCIPconshdlrDecompDecreaseAndGetNCallsCreateDecomp(), SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), SCIPconshdlrDecompExistsSelected(), SCIPconshdlrDecompExploreSelect(), SCIPconshdlrDecompGetAllRelevantSeeeds(), SCIPconshdlrDecompGetBlockNumberCandidate(), SCIPconshdlrDecompGetCompleteDetectionTime(), SCIPconshdlrDecompGetCurrScoretype(), SCIPconshdlrDecompGetDecdecomps(), SCIPconshdlrDecompGetDetectors(), SCIPconshdlrDecompGetFinishedDecomps(), SCIPconshdlrDecompGetNBlockNumberCandidates(), SCIPconshdlrDecompGetNDecdecomps(), SCIPconshdlrDecompGetNDetectors(), SCIPconshdlrDecompGetNextSeeedID(), SCIPconshdlrDecompGetNFinishedDecomps(), SCIPconshdlrDecompGetNFormerDetectionConssForID(), SCIPconshdlrDecompGetNSeeeds(), SCIPconshdlrDecompGetSeeedFromPresolved(), SCIPconshdlrDecompGetSeeedFromUnpresolved(), SCIPconshdlrDecompGetSeeedpool(), SCIPconshdlrDecompGetSeeedpoolExtern(), SCIPconshdlrDecompGetSeeedpoolUnpresolved(), SCIPconshdlrDecompGetSeeedpoolUnpresolvedExtern(), SCIPconshdlrDecompGetSelectedSeeeds(), SCIPconshdlrDecompHasCompleteDecomp(), SCIPconshdlrDecompHasDecomp(), SCIPconshdlrDecompIncreaseAndGetNCallsCreateDecomp(), SCIPconshdlrDecompIsBestCandidateUnpresolved(), SCIPconshdlrDecompModifyNVisualized(), SCIPconshdlrDecompNotifyFinishedNonFinalFreeTransform(), SCIPconshdlrDecompNotifyNonFinalFreeTransform(), SCIPconshdlrDecompPopulateSelected(), SCIPconshdlrDecompSelectCalcStrongDecompositionScore(), SCIPconshdlrDecompSelectInspect(), SCIPconshdlrDecompSelectVisualize(), SCIPconshdlrDecompSelectVisualizeCurrentUserSeeed(), SCIPconshdlrDecompShowCurrUserSeeedInfo(), SCIPconshdlrDecompShowLegend(), SCIPconshdlrDecompShowListExtract(), SCIPconshdlrDecompShowListExtractHeader(), SCIPconshdlrDecompToolboxActOnSeeed(), SCIPconshdlrDecompToolboxChoose(), SCIPconshdlrDecompToolboxModifyConss(), SCIPconshdlrDecompToolboxModifyFinish(), SCIPconshdlrDecompToolboxModifyVars(), SCIPconshdlrDecompTranslateAndAddCompleteUnpresolvedSeeeds(), SCIPconshdlrDecompUnpresolvedSeeedExists(), SCIPconshdlrDecompUnpresolvedUserSeeedAdded(), SCIPconshdlrDecompUpdateSeeedlist(), SCIPconshdlrDecompUserSeeedFlush(), SCIPconshdlrDecompUserSeeedIsActive(), SCIPconshdlrDecompUserSeeedReject(), SCIPconshdlrDecompUserSeeedSetConsDefaultMaster(), SCIPconshdlrDecompUserSeeedSetConsToBlock(), SCIPconshdlrDecompUserSeeedSetConsToMaster(), SCIPconshdlrDecompUserSeeedSetnumberOfBlocks(), SCIPconshdlrDecompUserSeeedSetVarToBlock(), SCIPconshdlrDecompUserSeeedSetVarToLinking(), SCIPconshdlrDecompUserSeeedSetVarToMaster(), SCIPconshdlrDecompWriteDec(), and SCIPincludeConshdlrDecomp().
#define CONSHDLR_NEEDSCONS FALSE |
should the constraint handler be skipped, if no constraints are available?
Definition at line 102 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_AGGREGATIONLIMITNCONSSPERBLOCK 300 |
if this limit on the number of constraints of a block is exceeded the aggregation information for this block is not calculated
Definition at line 124 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_AGGREGATIONLIMITNVARSPERBLOCK 300 |
if this limit on the number of variables of a block is exceeded the aggregation information for this block is not calculated
Definition at line 125 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_ALLOWCLASSIFIERDUPLICATES FALSE /** if false each new (conss- and vars-) classifer is checked for being a duplicate of an existing one, if so it is not added and NBOT statistically recognized*/ |
Definition at line 110 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_BENDERSONLYBINMASTER FALSE |
indicates whether only decomposition with only binary variables in the master should be searched
Definition at line 140 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_BENDERSONLYCONTSUBPR FALSE |
indicates whether only decomposition with only continiuous variables in the subproblems should be searched
Definition at line 139 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_COEFFACTORORIGVSRANDOM 0.5 |
default value for convex coefficient for orig dual val (1-this coef is facor for random dual value)
Definition at line 108 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSADJCALCULATED TRUE |
indicates whether conss adjacency datastructures should be calculated, this might slow down initlization, but accelareting refinement methods
Definition at line 116 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSCONSNAMENONUMBERENABLED FALSE |
indicates whether constraint classifier for constraint names (remove digits; check for identity) is enabled
Definition at line 131 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSCONSNAMENONUMBERENABLEDORIG FALSE |
indicates whether constraint classifier for constraint names (remove digits; check for identity) is enabled for the original problem
Definition at line 132 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSLEVENSHTEINENABLED FALSE |
indicates whether constraint classifier for constraint names (according to levenshtein distance graph) is enabled
Definition at line 134 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSLEVENSHTEINENABLEDORIG FALSE |
indicates whether constraint classifier for constraint names (according to levenshtein distance graph) is enabled for the original problem
Definition at line 135 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSMIPLIBCONSTYPEENABLED TRUE |
indicates whether constraint classifier for miplib consstype is enabled
Definition at line 128 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSMIPLIBCONSTYPEENABLEDORIG TRUE |
indicates whether constraint classifier for miplib consstype is enabled for the original problem
Definition at line 129 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSNNONZENABLED TRUE |
indicates whether constraint classifier for nonzero entries is enabled
Definition at line 118 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSNNONZENABLEDORIG TRUE |
indicates whether constraint classifier for nonzero entries is enabled for the original problem
Definition at line 119 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSSCIPCONSTYPEENABLED TRUE |
indicates whether constraint classifier for scipconstype is enabled
Definition at line 121 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CONSSCLASSSCIPCONSTYPEENABLEDORIG TRUE |
indicates whether constraint classifier for scipconsstype is enabled for the original problem
Definition at line 122 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_CREATEBASICDECOMP FALSE |
indicates whether to create a decomposition with all constraints in the master if no other specified
Definition at line 106 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_DETECTBENDERS FALSE |
indicates whether benders detection mode is enabled
Definition at line 166 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_DUALVALRANDOMMETHOD 1 |
default value for method to dual initilization of dual values for strong decomposition: 1) naive, 2) expected equal, 3) expected overestimation
Definition at line 107 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_ENABLEORIGCLASSIFICATION FALSE |
indicates whether to start detection for the original problem
Definition at line 117 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_ENABLEORIGDETECTION FALSE |
indicates whether to start detection for the original problem
Definition at line 115 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_LEGACYMODE FALSE |
indicates whether detection should consist of legacy mode detection
Definition at line 153 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_LEVENSHTEIN_MAXMATRIXHALFPERIMETER 10000 |
deactivate levenshtein constraint classifier if nrows + ncols exceeds this value for emphasis default
Definition at line 148 of file cons_decomp.cpp.
Referenced by setDetectionDefault().
#define DEFAULT_MAXDETECTIONROUNDS 1 |
maximal number of detection rounds
Definition at line 111 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_MAXNCLASSES 9 /** maximum number of classes allowed for detectors, classifier with more classes are reduced to the meximum number of classes */ |
Definition at line 113 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_MAXNCLASSESFORNBLOCKCANDIDATES 18 /** maximum number of classes a classifier can have to be used for voting nblockcandidates */ |
Definition at line 114 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_MAXNCLASSESLARGEPROBS 5 /** maximum number of classes allowed for large (nvars+nconss > 50000) MIPs for detectors, classifier with more classes are reduced to the meximum number of classes */ |
Definition at line 112 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_ONLYLEGACYMODE FALSE |
indicates whether detection should only consist of legacy mode detection
Definition at line 152 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_STAIRLINKINGHEUR FALSE |
indicates whether heuristic to reassign linking vars to stairlinking in legacy mode should be activated
Definition at line 154 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_VARCLASSOBJVALSENABLED TRUE |
indicates whether variable classifier for objective function values is enabled
Definition at line 142 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_VARCLASSOBJVALSENABLEDORIG TRUE |
indicates whether variable classifier for objective function values is enabled for the original problem
Definition at line 143 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_VARCLASSOBJVALSIGNSENABLED TRUE |
indicates whether variable classifier for objective function value signs is enabled
Definition at line 145 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_VARCLASSOBJVALSIGNSENABLEDORIG TRUE |
indicates whether variable classifier for objective function value signs is enabled for the original problem
Definition at line 146 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_VARCLASSSCIPVARTYPESENABLED TRUE |
indicates whether variable classifier for scipvartypes is enabled
Definition at line 137 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_VARCLASSSCIPVARTYPESENABLEDORIG TRUE |
indicates whether variable classifier for scipvartypes is enabled for the original problem
Definition at line 138 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_WRITEMIPLIB2017DECOMPFILEPATH "." |
indicates where the miplib feature output should be written to
Definition at line 163 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_WRITEMIPLIB2017FEATUREFILEPATH "." |
indicates where the miplib feature output should be written to
Definition at line 159 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_WRITEMIPLIB2017FEATURES FALSE |
indicates whether miplib2017 features should be written
Definition at line 156 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_WRITEMIPLIB2017MATRIXFILEPATH "." |
indicates where the miplib feature output should be written to
Definition at line 161 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_WRITEMIPLIB2017PLOTSANDDECS FALSE |
indicates whether miplib2017 gp and dec files should be written
Definition at line 157 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define DEFAULT_WRITEMIPLIB2017SHORTBASEFEATURES TRUE |
indicates whether miplib2017 base features should be shortened
Definition at line 158 of file cons_decomp.cpp.
Referenced by SCIPincludeConshdlrDecomp().
#define FAST_LEVENSHTEIN_MAXMATRIXHALFPERIMETER 2000 |
deactivate levenshtein constraint classifier if nrows + ncols exceeds this value for emphasis fast
Definition at line 150 of file cons_decomp.cpp.
Referenced by setDetectionFast().
#define MAXNDECOMPS 5000 |
indicates whether to create a decomposition with all constraints in the master if no other specified
Definition at line 104 of file cons_decomp.cpp.
Typedef Documentation
typedef gcg::Seeed* SeeedPtr |
Definition at line 91 of file cons_decomp.cpp.
Enumeration Type Documentation
Definition at line 278 of file cons_decomp.cpp.
Function Documentation
SCIP_Real calcLogarithm | ( | SCIP_Real | val | ) |
method to calcualte the log with base of 2
Definition at line 292 of file cons_decomp.cpp.
References SCIPconshdlrdataDecompUnselectAll().
Referenced by GCGprintMiplibBaseInformation().
SCIP_RETCODE DECconshdlrDecompSortDecompositionsByScore | ( | SCIP * | scip | ) |
sort the finished decompositions according to the currently chosen score in the according datastructures for the presolved and original problem
- Parameters
-
scip data stucture
- Returns
- scip return code
Definition at line 5661 of file cons_decomp.cpp.
References CONSHDLR_NAME, and DECdetectStructure().
Referenced by SCIPconshdlrDecompGetNextSeeedID(), and SCIPconshdlrDecompUpdateSeeedlist().
char DECdetectorGetChar | ( | DEC_DETECTOR * | detector | ) |
returns the character of the detector
- Parameters
-
detector pointer to detector
Definition at line 6643 of file cons_decomp.cpp.
References SCIPconshdlrDecompGetFinishedDecomps().
Referenced by gcg::Seeed::buildDecChainString(), DEChasDetectionRun(), and SCIPconshdlrDecompShowLegend().
DEC_DETECTORDATA* DECdetectorGetData | ( | DEC_DETECTOR * | detector | ) |
returns the data of the provided detector
returns the data of the provided detector
- Parameters
-
detector detector data structure
Definition at line 3550 of file cons_decomp.cpp.
References SCIPconshdlrDecompGetNFormerDetectionConssForID().
Referenced by DEC_DECL_EXITDETECTOR(), DEC_DECL_FINISHSEEED(), DEC_DECL_FREEDETECTOR(), DEC_DECL_INITDETECTOR(), DEC_DECL_PROPAGATESEEED(), fromToolbox(), and SCIPconshdlrDecompGetNDecdecomps().
const char* DECdetectorGetName | ( | DEC_DETECTOR * | detector | ) |
returns the name of the provided detector
returns the name of the provided detector
- Parameters
-
detector detector data structure
Definition at line 3756 of file cons_decomp.cpp.
References DECfindDetector().
Referenced by DEC_DECL_EXITDETECTOR(), DEC_DECL_FREEDETECTOR(), DEC_DECL_INITDETECTOR(), DEC_DECL_SETPARAMAGGRESSIVE(), DEC_DECL_SETPARAMDEFAULT(), DEC_DECL_SETPARAMFAST(), gcg::Seeed::displayInfo(), gcg::Seeed::displaySeeed(), gcg::Seeedpool::findSeeeds(), gcg::Seeedpool::finishIncompleteSeeeds(), GCGprintDecompInformation(), GCGprintMiplibConnectedInformation(), SCIPconshdlrDecompDecreaseAndGetNCallsCreateDecomp(), SCIPconshdlrDecompShowLegend(), SCIPconshdlrDecompToolboxModifyFinish(), gcg::Seeed::writeAsDec(), writeData(), and writeTexSeeedStatistics().
SCIP_RETCODE DECdetectStructure | ( | SCIP * | scip, |
SCIP_RESULT * | result | ||
) |
interface method to detect the structure including presolving
< collection of different variable class distributions
< collection of different constraint class distributions
< collection of different variable class distributions
< stores the corresponding scip constraints pointer
< seeeds that were found for the unpresolved problem
indicate wether only for the unpresolved problem the detection shpuld take place
get data of the seeedpool with original vars and conss
scip is not presolved yet => only detect for original problem
< seeedpool with original variables and constraints
get block number candidates and conslcassifier for original problem
detection for original problem
get the cons and var classifier for translating them later
detection for presolved problem
presolving removed all constraints or variables
start detection clocks
get block number candidates and translate orig classification and found seeeds (if any) to presolved problem
- Parameters
-
scip SCIP data structure result Result pointer to indicate whether some structure was found
Definition at line 5693 of file cons_decomp.cpp.
References SCIP_ConshdlrData::candidatesNBlocks, CONSHDLR_NAME, DEC_DECMODE_ORIGINAL, DECwriteAllDecomps(), GCGgetDecompositionMode(), SCIP_ConshdlrData::onlylegacymode, SCIPconshdlrDecompAddLegacymodeDecompositions(), SCIPconshdlrDecompChooseCandidatesFromSelected(), and SCIPconshdlrDecompDetectBenders().
Referenced by DECconshdlrDecompSortDecompositionsByScore(), fromCommandLine(), and SCIP_DECL_DIALOGEXEC().
DEC_DETECTOR* DECfindDetector | ( | SCIP * | scip, |
const char * | name | ||
) |
searches for the detector with the given name and returns it or NULL if detector is not found
searches for the detector and returns it or returns NULL if detector is not found
- Parameters
-
scip SCIP data structure name name of the detector
Definition at line 3765 of file cons_decomp.cpp.
References CONSHDLR_NAME, and DECincludeDetector().
Referenced by DECdetectorGetName(), and DECincludeDetector().
DEC_DECOMP* DECgetBestDecomp | ( | SCIP * | scip | ) |
returns the best known decomposition, if available and NULL otherwise, caller has to free returned DEC_DECOMP
- Parameters
-
scip SCIP data structure
Definition at line 6459 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::createDecompFromSeeed(), DECgetSeeedToWrite(), SCIPconshdlrDecompChooseCandidatesFromSelected(), SCIPconshdlrDecompDetectBenders(), SCIPconshdlrDecompIsBestCandidateUnpresolved(), SCIP_ConshdlrData::seeedpool, SCIP_ConshdlrData::seeedpoolunpresolved, and gcg::Seeedpool::translateSeeeds().
Referenced by GCGprintDecompStatistics(), GCGwriteDecompositionData(), initRelaxator(), SCIP_DECL_DIALOGEXEC(), SCIPconshdlrDecompWriteDec(), and writeREFFile().
SCIP_Real DECgetRemainingTime | ( | SCIP * | scip | ) |
returns the remaining time of scip that the decomposition may use
returns the remaining time of scip that the decomposition may use
- Parameters
-
scip SCIP data structure
Definition at line 3976 of file cons_decomp.cpp.
References SCIPconshdlrDecompArePricingprobsIdenticalForSeeedid().
Referenced by callMetis(), and DECincludeDetector().
SCIP_RETCODE DECgetSeeedToWrite | ( | SCIP * | scip, |
SCIP_Bool | transformed, | ||
SEEED_WRAPPER * | seeedwrapper | ||
) |
returns the Seeed ID of the best Seeed if available and -1 otherwise
- Parameters
-
scip SCIP data structure seeedwrapper seeed wrapper to output
Definition at line 6518 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECprintListOfDetectors(), SCIPconshdlrDecompChooseCandidatesFromSelected(), Seeed_Wrapper::seeed, and gcg::transformed.
Referenced by DECgetBestDecomp(), and SCIP_DECL_READERWRITE().
SCIP_Bool DEChasDetectionRun | ( | SCIP * | scip | ) |
returns whether the detection has been performed
- Parameters
-
scip SCIP data structure
Definition at line 6624 of file cons_decomp.cpp.
References CONSHDLR_NAME, and DECdetectorGetChar().
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompGetCurrScoretype().
SCIP_RETCODE DECincludeDetector | ( | SCIP * | scip, |
const char * | name, | ||
const char | decchar, | ||
const char * | description, | ||
int | freqCallRound, | ||
int | maxCallRound, | ||
int | minCallRound, | ||
int | freqCallRoundOriginal, | ||
int | maxCallRoundOriginal, | ||
int | minCallRoundOriginal, | ||
int | priority, | ||
SCIP_Bool | enabled, | ||
SCIP_Bool | enabledOriginal, | ||
SCIP_Bool | enabledFinishing, | ||
SCIP_Bool | enabledPostprocessing, | ||
SCIP_Bool | skip, | ||
SCIP_Bool | usefulRecall, | ||
SCIP_Bool | legacymode, | ||
DEC_DETECTORDATA * | detectordata, | ||
DEC_DECL_DETECTSTRUCTURE((*detectStructure)) | , | ||
DEC_DECL_FREEDETECTOR((*freeDetector)) | , | ||
DEC_DECL_INITDETECTOR((*initDetector)) | , | ||
DEC_DECL_EXITDETECTOR((*exitDetector)) | , | ||
DEC_DECL_PROPAGATESEEED((*propagateSeeedDetector)) | , | ||
DEC_DECL_PROPAGATEFROMTOOLBOX((*propagateFromToolboxDetector)) | , | ||
DEC_DECL_FINISHFROMTOOLBOX((*finishFromToolboxDetector)) | , | ||
DEC_DECL_FINISHSEEED((*finishSeeedDetector)) | , | ||
DEC_DECL_POSTPROCESSSEEED((*postprocessSeeedDetector)) | , | ||
DEC_DECL_SETPARAMAGGRESSIVE((*setParamAggressiveDetector)) | , | ||
DEC_DECL_SETPARAMDEFAULT((*setParamDefaultDetector)) | |||
) |
includes one detector
includes the detector
- Parameters
-
scip SCIP data structure name name of the detector decchar display character of the detector description description of the detector maxCallRound 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 minCallRound last round the detector gets called freqCallRoundOriginal first round the detector gets called (offset in detection loop) maxCallRoundOriginal frequency the detector gets called in detection loop while detecting of the original problem minCallRoundOriginal last round the detector gets called while detecting of the original problem priority first round the detector gets called (offset in detection loop) while detecting of the original problem priority of the detector enabled whether the detector should be enabled by default enabledOriginal whether the detector should be enabled by default for detecting the original problem enabledFinishing whether the finishing should be enabled enabledPostprocessing wheteher the postprocessing should be enabled skip whether the detector should be skipped if others found structure legacymode is it useful to call this detector on a descendant of the propagated seeed whether (old) DETECTSTRUCTURE method should also be used for detection detectordata the associated detector data (or NULL)
Definition at line 3796 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECfindDetector(), and DECgetRemainingTime().
Referenced by DECfindDetector(), SCIPincludeDetectorColors(), SCIPincludeDetectorCompgreedily(), SCIPincludeDetectorConnected(), SCIPincludeDetectorConnected_noNewLinkingVars(), SCIPincludeDetectorConnectedbase(), SCIPincludeDetectorConsclass(), SCIPincludeDetectorConsname(), SCIPincludeDetectorConstype(), SCIPincludeDetectorCutpacking(), SCIPincludeDetectorDBSCAN(), SCIPincludeDetectorDensemasterconss(), SCIPincludeDetectorGeneralmastersetcover(), SCIPincludeDetectorGeneralmastersetpack(), SCIPincludeDetectorGeneralmastersetpart(), SCIPincludeDetectorIsomorphism(), SCIPincludeDetectorMastersetcover(), SCIPincludeDetectorMastersetpack(), SCIPincludeDetectorMastersetpart(), SCIPincludeDetectorMCL(), SCIPincludeDetectorMST(), SCIPincludeDetectorPostprocess(), SCIPincludeDetectorRandom(), SCIPincludeDetectorStaircase(), SCIPincludeDetectorStaircaseLsp(), SCIPincludeDetectorStairheur(), and SCIPincludeDetectorVarclass().
void DECprintListOfDetectors | ( | SCIP * | scip | ) |
writes out a list of all detectors
- Parameters
-
scip SCIP data structure
Definition at line 6569 of file cons_decomp.cpp.
References CONSHDLR_NAME, SCIP_ConshdlrData::ndetectors, and SCIPconshdlrDecompGetCurrScoretype().
Referenced by DECgetSeeedToWrite(), and SCIP_DECL_DIALOGEXEC().
SCIP_RETCODE DECwriteAllDecomps | ( | SCIP * | scip, |
char * | directory, | ||
char * | extension, | ||
SCIP_Bool | original, | ||
SCIP_Bool | presolved | ||
) |
interface method to detect the structure writes all finished decompositions
write presolved decomps
write orig decomps
- Parameters
-
scip SCIP data structure directory directory for decompositions extension extension for decompositions original should decomps for original problem be written presolved should decomps for preoslved problem be written
Definition at line 5996 of file cons_decomp.cpp.
References CONSHDLR_NAME, GCGdetectionTookPlace(), MiscVisualization::GCGgetVisualizationFilename(), gcg::Seeedpool::getFinishedSeeed(), and gcg::original.
Referenced by DECdetectStructure(), and writeAllDecompositions().
SCIP_RETCODE DECwriteFamilyTree | ( | SCIP * | scip, |
const char * | filename, | ||
const char * | workfolder, | ||
int | ndecompositions, | ||
SCIP_Bool | draft | ||
) |
write family tree
- Parameters
-
scip SCIP data structure filename filename the output should be written to (including directory) workfolder directory in which should be worked ndecompositions the number of (complete) decompositions in order of a certain measure (atm: max white) draft draft mode will not visualize non-zeros but is faster and takes less memory
Definition at line 6333 of file cons_decomp.cpp.
References CONSHDLR_NAME, GCGwriteTexFamilyTree(), SCIP_ConshdlrData::listall, SCIPconshdlrDecompExistsSelected(), SCIPconshdlrDecompUpdateSeeedlist(), SCIPconshdlrDecompWriteDec(), Seeed_Wrapper::seeed, and SCIP_ConshdlrData::selected.
Referenced by SCIPconshdlrDecompGetAllRelevantSeeeds(), and writeFamilyTree().
SCIP_Bool finishnextchild | ( | std::vector< int > & | childs, |
std::vector< SCIP_Bool > & | childsfinished, | ||
int | child | ||
) |
- Returns
- is nextchild the last unfinished child
Definition at line 498 of file cons_decomp.cpp.
References SCIPconshdlrDecompAddCompleteSeeedForUnpresolved().
Referenced by getfirstunfinishedchildid().
SCIP_Bool GCGdetectionTookPlace | ( | SCIP * | scip | ) |
Definition at line 6111 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetNDetectors().
Referenced by DECwriteAllDecomps(), and GCGprintCompleteDetectionStatistics().
SCIP_RETCODE GCGgetCurrentSeeedpools | ( | SCIP * | scip, |
SEEED_WRAPPER * | seeedpoolwr, | ||
SEEED_WRAPPER * | seeedpoolunpresolvedwr | ||
) |
returns wrapped Seeedpools
- Parameters
-
scip SCIP data structure seeedpoolwr wrapper for presolved output Seeedpool (or NULL) seeedpoolunpresolvedwr wrapper for unpresolved output Seeedpool (or NULL)
Definition at line 7147 of file cons_decomp.cpp.
References GCGprintBlockcandidateInformation(), and Seeed_Wrapper::seeedpool.
Referenced by GCGgetSeeedFromID(), and MiscVisualization::GCGgetSeeedpoolForSeeed().
SCIP_RETCODE GCGgetSeeedFromID | ( | SCIP * | scip, |
int * | seeedid, | ||
SEEED_WRAPPER * | seeedwr | ||
) |
returns wrapped Seeed with given id
- Parameters
-
scip SCIP data structure seeedid id of Seeed seeedwr wrapper for output Seeed
Definition at line 7131 of file cons_decomp.cpp.
References GCGgetCurrentSeeedpools(), SCIPconshdlrDecompGetSeeed(), and Seeed_Wrapper::seeed.
Referenced by GCGsetDetection(), GCGwriteGpVisualization(), GCGwriteTexReport(), and GCGwriteTexVisualization().
SCIP_RETCODE GCGprintBlockcandidateInformation | ( | SCIP * | scip, |
FILE * | file | ||
) |
prints blockcandiateinformation in following format: NCANDIDATES CANDIDATE : NVOTES for each candidate
- Parameters
-
scip SCIP data structure file output file or NULL for standard output
Definition at line 7180 of file cons_decomp.cpp.
References CONSHDLR_NAME, GCGprintCompleteDetectionTime(), gcg::Seeedpool::printBlockcandidateInformation(), and SCIP_ConshdlrData::seeedpool.
Referenced by GCGgetCurrentSeeedpools(), GCGprintCompleteDetectionStatistics(), and SCIP_DECL_DIALOGEXEC().
SCIP_RETCODE GCGprintClassifierInformation | ( | SCIP * | scip, |
FILE * | file | ||
) |
prints classifier information in following format: NCLASSIFIER CLASSIFIERNAME for each classifier NCLASSES CLASSNAME for each class NMEMBERS
- Parameters
-
scip SCIP data structure file output file or NULL for standard output
Definition at line 7225 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::printClassifierInformation(), SCIPconshdlrDecompGetSelectedSeeeds(), and SCIP_ConshdlrData::seeedpool.
Referenced by GCGprintCompleteDetectionStatistics(), and GCGprintCompleteDetectionTime().
SCIP_RETCODE GCGprintCompleteDetectionTime | ( | SCIP * | givenscip, |
FILE * | file | ||
) |
- Parameters
-
givenscip SCIP data structure file output file or NULL for standard output
Definition at line 7204 of file cons_decomp.cpp.
References GCGprintClassifierInformation(), and SCIPconshdlrDecompGetCompleteDetectionTime().
Referenced by GCGprintBlockcandidateInformation(), and GCGprintCompleteDetectionStatistics().
SCIP_RETCODE GCGprintDecompInformation | ( | SCIP * | scip, |
FILE * | file | ||
) |
prints blockcandiateinformation in following format: NDECOMPS NBLOCKS for each decomp NCONSS for each block NVARS endfor each block NMASTERCONSS NLINKINGVARS NMASTERVARS NSTAIRLINKINGVARS MAXWHITESCORE CLASSICALSCORE HASSETPARTITIONINGMASTER NDETECTORS DETECTORNAME for each detector NCONSCLASSIFIERS CONSCLASSIFIERNAME for each consclassifier nCLASSESMASTER CLASSNAME for each class NVARCLASSIFIERS VARCLASSIFIERNAME for each varclassifier nCLASSESMASTER CLASSNAME for each class
- Parameters
-
scip SCIP data structure file output file or NULL for standard output
Definition at line 7302 of file cons_decomp.cpp.
References CLASSIC, CONSHDLR_NAME, DECdetectorGetName(), GCGprintMiplibBaseInformation(), gcg::Seeed::getDetectorchainVector(), gcg::Seeed::getMaxWhiteScore(), gcg::Seeed::getNBlocks(), gcg::Seeed::getNConssForBlock(), gcg::Seeed::getNLinkingvars(), gcg::Seeed::getNMasterconss(), gcg::Seeed::getNMastervars(), gcg::Seeed::getNTotalStairlinkingvars(), gcg::Seeed::getNVarsForBlock(), gcg::Seeed::getScore(), gcg::Seeed::hasSetppccardMaster(), MAX_FORESSEEING_WHITE, gcg::Seeed::printClassifierInformation(), and SCIPconshdlrDecompUpdateSeeedlist().
Referenced by GCGprintCompleteDetectionStatistics(), and SCIPconshdlrDecompGetSelectedSeeeds().
SCIP_RETCODE GCGprintDetectorStatistics | ( | SCIP * | scip, |
FILE * | file | ||
) |
display statistics about detectors
- Parameters
-
scip SCIP data structure file output file or NULL for standard output
Definition at line 6772 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECdecompGetNBlocks(), and setDetectionDefault().
Referenced by GCGprintStatistics(), and SCIPconshdlrDecompGetNSeeeds().
SCIP_RETCODE GCGprintMiplibBaseInformation | ( | SCIP * | scip, |
FILE * | file | ||
) |
write base information
log nconss
log nvars
log nnonzeros
log ratio conss vs vars
density of matrix
density of objective
density of lower bound
density of upper bound
density of rhs
percentage of Binary, Integer, Continuous Variables
ratio becomes difference according logarithm rules
Definition at line 7366 of file cons_decomp.cpp.
References calcLogarithm(), CONSHDLR_NAME, GCGconsGetLhs(), GCGconsGetNVars(), GCGconsGetRhs(), GCGconsGetVals(), GCGgetFilename(), GCGgetMasterprob(), GCGprintMiplibBaseInformationHeader(), gcg::Seeedpool::getNTotalConss(), gcg::Seeedpool::getNTotalNonzeros(), gcg::Seeedpool::getNVars(), and SCIP_ConshdlrData::seeedpool.
Referenced by GCGprintDecompInformation(), and GCGprintMiplibStructureInformation().
SCIP_RETCODE GCGprintMiplibBaseInformationHeader | ( | SCIP * | scip, |
FILE * | file | ||
) |
write base information header
Definition at line 7598 of file cons_decomp.cpp.
References GCGgetMasterprob(), and GCGprintMiplibConnectedInformation().
Referenced by GCGprintMiplibBaseInformation(), and GCGprintMiplibStructureInformation().
SCIP_RETCODE GCGprintMiplibConnectedInformation | ( | SCIP * | scip, |
FILE * | file | ||
) |
Definition at line 7700 of file cons_decomp.cpp.
References gcg::Seeedpool::addSeeedToFinishedUnchecked(), gcg::Seeed::bookAsBlockCons(), gcg::Seeed::bookAsBlockVar(), CONSHDLR_NAME, DECdetectorGetName(), gcg::Seeed::flushBooked(), GCGgetFilename(), GCGgetMasterprob(), GCGprintMiplibDecompInformation(), GCGwriteGpVisualization(), gcg::Seeed::getComponentInformation(), gcg::Seeed::getID(), gcg::Seeed::getMaxWhiteScore(), gcg::Seeedpool::getNConss(), gcg::Seeedpool::getNVars(), Seeed_Propagation_Data::newSeeeds, Seeed_Propagation_Data::nNewSeeeds, Seeed_Propagation_Data::seeedpool, SCIP_ConshdlrData::seeedpool, Seeed_Propagation_Data::seeedToPropagate, and gcg::Seeed::setNBlocks().
Referenced by GCGprintMiplibBaseInformationHeader(), and GCGprintMiplibStructureInformation().
SCIP_RETCODE GCGprintMiplibDecompInformation | ( | SCIP * | scip, |
FILE * | file | ||
) |
Definition at line 7851 of file cons_decomp.cpp.
References CONSHDLR_NAME, GCGgetMasterprob(), GCGprintOptionalOutput(), gcg::Seeed::getComponentInformation(), gcg::Seeed::getMaxWhiteScore(), and SCIPconshdlrDecompChooseCandidatesFromSelected().
Referenced by GCGprintMiplibConnectedInformation(), and GCGprintMiplibStructureInformation().
SCIP_RETCODE GCGprintOptionalOutput | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr | ||
) |
check setting for optional output
- Parameters
-
dialoghdlr dialog handler
Definition at line 7884 of file cons_decomp.cpp.
References GCGprintMiplibStructureInformation().
Referenced by GCGprintMiplibDecompInformation(), and SCIP_DECL_DIALOGEXEC().
SCIP_RETCODE GCGsetDetection | ( | SCIP * | scip, |
SCIP_PARAMSETTING | paramsetting, | ||
SCIP_Bool | quiet | ||
) |
sets detector parameters values to
- SCIP_PARAMSETTING_DEFAULT which are the default values of all detector parameters
- SCIP_PARAMSETTING_FAST such that the time spend for detection is decreased
- SCIP_PARAMSETTING_AGGRESSIVE such that the detectors produce more decompositions
- SCIP_PARAMSETTING_OFF which turns off all detection
- Parameters
-
scip SCIP data structure paramsetting parameter settings quiet should the parameter be set quiet (no output)
Definition at line 7089 of file cons_decomp.cpp.
References CONSHDLR_NAME, GCGgetSeeedFromID(), setDetectionAggressive(), setDetectionDefault(), setDetectionFast(), and setDetectionOff().
Referenced by SCIP_DECL_DIALOGEXEC(), and setDetectionFast().
int getfirstunfinishedchild | ( | std::vector< SCIP_Bool > const & | childsfinished, |
std::vector< int > const & | childs | ||
) |
help method for writing family trees
- Returns
- first unfinished child of given childs
Definition at line 466 of file cons_decomp.cpp.
References getfirstunfinishedchildid().
Referenced by unfinishedchildexists().
int getfirstunfinishedchildid | ( | std::vector< SCIP_Bool > const & | childsfinished, |
std::vector< int > const & | childs | ||
) |
help method for writing family trees
Definition at line 484 of file cons_decomp.cpp.
References finishnextchild().
Referenced by getfirstunfinishedchild().
|
static |
feasibility check method of constraint handler for integral solutions
Definition at line 989 of file cons_decomp.cpp.
References SCIP_DECL_CONSLOCK().
Referenced by SCIP_DECL_CONSENFOPS().
|
static |
constraint enforcing method of constraint handler for LP solutions
Definition at line 973 of file cons_decomp.cpp.
References SCIP_DECL_CONSENFOPS().
Referenced by SCIP_DECL_CONSENFORELAX().
|
static |
constraint enforcing method of constraint handler for pseudo solutions
Definition at line 981 of file cons_decomp.cpp.
References SCIP_DECL_CONSCHECK().
Referenced by SCIP_DECL_CONSENFOLP().
|
static |
constraint enforcing method of constraint handler for LP solutions
Definition at line 964 of file cons_decomp.cpp.
References SCIP_DECL_CONSENFOLP().
Referenced by SCIP_DECL_CONSFREE().
|
static |
deinitialization method of constraint handler (called before transformed problem is freed)
Definition at line 849 of file cons_decomp.cpp.
References DECdecompFree(), SCIP_DECL_CONSFREE(), and SCIPconshdlrdataDecompUnselectAll().
Referenced by SCIP_DECL_CONSINIT().
|
static |
destructor of constraint handler to free constraint handler data (called when SCIP is exiting)
Definition at line 914 of file cons_decomp.cpp.
References DECdecompFree(), and SCIP_DECL_CONSENFORELAX().
Referenced by SCIP_DECL_CONSEXIT().
|
static |
initialization method of constraint handler (called after problem was transformed)
Definition at line 818 of file cons_decomp.cpp.
References SCIP_DECL_CONSEXIT().
Referenced by sort_pred::operator()().
|
static |
variable rounding lock method of constraint handler
Definition at line 998 of file cons_decomp.cpp.
References SCIPincludeConshdlrDecomp().
Referenced by SCIP_DECL_CONSCHECK().
SCIP_RETCODE SCIPconshdlrdataDecompUnselectAll | ( | SCIP * | scip | ) |
method to unselect all decompositions, called in consexit, and when the seeedlist is updated (especially if new (partial) are added )
Definition at line 302 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrdataGetScoretype().
Referenced by calcLogarithm(), SCIP_DECL_CONSEXIT(), and SCIPconshdlrDecompUpdateSeeedlist().
SCORETYPE SCIPconshdlrdataGetScoretype | ( | SCIP_CONSHDLRDATA * | conshdlrdata | ) |
returns the currently selected scoretype
Definition at line 338 of file cons_decomp.cpp.
References SCIPconshdlrDecompGetScoretypeShortName().
Referenced by SCIPconshdlrdataDecompUnselectAll(), SCIPconshdlrDecompChooseCandidatesFromSelected(), SCIPconshdlrDecompShowLegend(), SCIPconshdlrDecompShowListExtract(), and SCIPconshdlrDecompShowListExtractHeader().
SCIP_Real SCIPconshdlrDecompAdaptScore | ( | SCIP * | scip, |
SCIP_Real | oldscore | ||
) |
method to adapt score for unpresolved decomps : change score for some paramter settings
Definition at line 5110 of file cons_decomp.cpp.
References CONSHDLR_NAME, FAVOUR_PRESOLVED, FRACTION_OF_NNONZEROS, FRACTION_OF_NROWS, gcg::Seeedpool::getNConss(), gcg::Seeedpool::getNNonzeros(), SCIPconshdlrDecompHasDecomp(), SCIP_ConshdlrData::seeedpool, and SCIP_ConshdlrData::seeedpoolunpresolved.
Referenced by SCIPconshdlrDecompChooseCandidatesFromSelected(), and SCIPconshdlrDecompTranslateAndAddCompleteUnpresolvedSeeeds().
SCIP_RETCODE SCIPconshdlrDecompAddBlockNumberCandidate | ( | SCIP * | scip, |
int | blockNumberCandidate | ||
) |
add block number user candidate (user candidates are prioritized over found ones)
- Parameters
-
scip SCIP data structure blockNumberCandidate given block number candidate
- Returns
- SCIP return code
- Parameters
-
scip SCIP data structure blockNumberCandidate name of the variable
Definition at line 4677 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetNBlockNumberCandidates().
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompUserSeeedSetVarToMaster().
SCIP_RETCODE SCIPconshdlrDecompAddCompleteSeeedForPresolved | ( | SCIP * | scip, |
SeeedPtr | seeed | ||
) |
local method to handle store a seeed in the correct seeedpool
Definition at line 543 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeed::isComplete(), gcg::Seeed::isFromUnpresolved(), and SCIPconshdlrDecompAddPartialSeeedForUnpresolved().
Referenced by SCIPconshdlrDecompAddCompleteSeeedForUnpresolved(), SCIPconshdlrDecompAddSeeed(), SCIPconshdlrDecompTranslateAndAddCompleteUnpresolvedSeeeds(), and SCIPconshdlrDecompUserSeeedFlush().
SCIP_RETCODE SCIPconshdlrDecompAddCompleteSeeedForUnpresolved | ( | SCIP * | scip, |
SeeedPtr | seeed | ||
) |
local method to handle store a seeed in the correct seeedpool
Definition at line 514 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeed::isComplete(), gcg::Seeed::isFromUnpresolved(), and SCIPconshdlrDecompAddCompleteSeeedForPresolved().
Referenced by finishnextchild(), and SCIPconshdlrDecompAddSeeed().
SCIP_RETCODE SCIPconshdlrDecompAddDecdecomp | ( | SCIP * | scip, |
DEC_DECOMP * | decdecomp | ||
) |
sets (and adds) the decomposition structure
sets (and adds) the decomposition structure; this method should only be called if there is no seeed for this decomposition
- Parameters
-
scip SCIP data structure decdecomp DEC_DECOMP data structure
Definition at line 1315 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECdecompFree(), DECdecompSetPresolved(), SCIPconshdlrDecompAddSeeed(), SCIPconshdlrDecompCreateSeeedpool(), and SCIPconshdlrDecompShowLegend().
Referenced by gcg::DialogReadGraphs< T, G >::DialogReadGraphs(), initRelaxator(), sort_pred::operator()(), SCIPconshdlrDecompShowListExtract(), and SCIPreadRef().
SCIP_RETCODE SCIPconshdlrDecompAddLegacymodeDecompositions | ( | SCIP * | scip, |
SCIP_RESULT * | result | ||
) |
calls old detectStructure methods of chosen detectors, translates the resulting decompositions into seeeds and adds these seeeds to (presolved) seeedpool
Definition at line 5341 of file cons_decomp.cpp.
References gcg::Seeed::addClockTime(), gcg::Seeed::addDecChangesFromAncestor(), gcg::Seeedpool::addSeeedToAncestor(), gcg::Seeedpool::addSeeedToFinished(), CONSHDLR_NAME, gcg::Seeedpool::createSeeedFromDecomp(), DECdecompFree(), SCIP_ConshdlrData::decdecomps, DECfilterSimilarDecompositions(), SCIP_ConshdlrData::detectorclock, gcg::Seeedpool::getNewIdForSeeed(), SCIPconshdlrDecompCheckConsistency(), SCIPconshdlrDecompDetectBenders(), SCIP_ConshdlrData::seeedpool, gcg::Seeed::setDetectorChainString(), gcg::Seeed::setDetectorPropagated(), gcg::Seeed::setLegacymode(), and gcg::Seeedpool::sortFinishedForScore().
Referenced by DECdetectStructure(), and SCIPconshdlrDecompChooseCandidatesFromSelected().
SCIP_RETCODE SCIPconshdlrDecompAddPartialSeeedForPresolved | ( | SCIP * | scip, |
SeeedPtr | seeed | ||
) |
local method to handle store a seeed in the correct seeedpool
Definition at line 604 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeed::isComplete(), gcg::Seeed::isFromUnpresolved(), and SCIPconshdlrDecompAddSeeed().
Referenced by SCIPconshdlrDecompAddPartialSeeedForUnpresolved(), SCIPconshdlrDecompAddSeeed(), SCIPconshdlrDecompTranslateAndAddCompleteUnpresolvedSeeeds(), and SCIPconshdlrDecompUserSeeedFlush().
SCIP_RETCODE SCIPconshdlrDecompAddPartialSeeedForUnpresolved | ( | SCIP * | scip, |
SeeedPtr | seeed | ||
) |
local method to handle store a seeed in the correct seeedpool
Definition at line 575 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeed::isComplete(), gcg::Seeed::isFromUnpresolved(), and SCIPconshdlrDecompAddPartialSeeedForPresolved().
Referenced by SCIPconshdlrDecompAddCompleteSeeedForPresolved(), and SCIPconshdlrDecompAddSeeed().
SCIP_RETCODE SCIPconshdlrDecompAddSeeed | ( | SCIP * | scip, |
SeeedPtr | seeed | ||
) |
local method to handle store a seeed in the correct seeedpool
Definition at line 634 of file cons_decomp.cpp.
References gcg::Seeed::isComplete(), gcg::Seeed::isFromUnpresolved(), SCIPconshdlrDecompAddCompleteSeeedForPresolved(), SCIPconshdlrDecompAddCompleteSeeedForUnpresolved(), SCIPconshdlrDecompAddPartialSeeedForPresolved(), SCIPconshdlrDecompAddPartialSeeedForUnpresolved(), and SCIPconshdlrDecompGetSeeedFromPresolved().
Referenced by SCIPconshdlrDecompAddDecdecomp(), and SCIPconshdlrDecompAddPartialSeeedForPresolved().
SCIP_RETCODE SCIPconshdlrDecompArePricingprobsIdenticalForSeeedid | ( | SCIP * | scip, |
int | seeedid, | ||
int | probnr1, | ||
int | probnr2, | ||
SCIP_Bool * | identical | ||
) |
checks if two pricing problems are identical based on information from detection
- Parameters
-
scip scip scip datta structure seeedid seeedid id of the partial decompostion for which the pricing problems are checked for identity probnr1 index of first block to check probnr2 index of second block to check identical bool pointer to score the result of the check
Definition at line 3989 of file cons_decomp.cpp.
References gcg::Seeed::calcAggregationInformation(), CONSHDLR_NAME, gcg::Seeedpool::findFinishedSeeedByID(), gcg::Seeed::getNReps(), gcg::Seeed::getRepForBlock(), and SCIPconshdlrDecompCreateVarmapForSeeedId().
Referenced by DECgetRemainingTime(), and pricingprobsAreIdenticalFromDetectionInfo().
SCIP_RETCODE SCIPconshdlrDecompBlockNumberCandidateToSeeedpool | ( | SCIP * | scip, |
SCIP_Bool | transformed | ||
) |
- Parameters
-
scip SCIP data structure
Definition at line 4774 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompUserSeeedSetVarToLinking().
Referenced by SCIPconshdlrDecompGetCompleteDetectionTime().
SCIP_Bool SCIPconshdlrDecompCheckConsistency | ( | SCIP * | scip | ) |
1) the predecessors of all finished seeeds in both seeedpools can be found 2) selected list is syncron with selected information in seeeds 3) selected exists is syncronized with seleced list
this is a vector of seeed ids that should be living (living: there is no complete seeed having )
1) the predecessors of all finished seeeds in both seeedpools can be found
6) selected list is syncronized with selected information in seeeds
7) selected exists is syncronized with seleced list
Definition at line 5525 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeed::getAncestorID(), gcg::Seeedpool::getFinishedSeeed(), gcg::Seeed::getID(), gcg::Seeed::getNAncestors(), gcg::Seeed::isSelected(), SCIPconshdlrDecompGetNextSeeedID(), and SCIPconshdlrDecompGetSeeed().
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPconshdlrDecompAddLegacymodeDecompositions(), SCIPconshdlrDecompPopulateSelected(), and SCIPconshdlrDecompUpdateSeeedlist().
SCIP_RETCODE SCIPconshdlrDecompChooseCandidatesFromSelected | ( | SCIP * | scip, |
SCIP_Bool | updatelist | ||
) |
initilizes the candidates data structures with selected seeeds (or all if there are no selected seeeds) and sort them according to the current scoretype
- Parameters
-
scip SCIP data structure updatelist whether or not the seeed list should be updated
- Returns
- SCIP return code
if there are selected decomps, check if some of them needs to be finished and do so
get decomp candidates and calculate corresponding score (possibly weighted for unpresolved)
Definition at line 5228 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeed::getScore(), gcg::Seeed::isComplete(), gcg::Seeed::isFromUnpresolved(), SCIPconshdlrdataGetScoretype(), SCIPconshdlrDecompAdaptScore(), SCIPconshdlrDecompAddLegacymodeDecompositions(), and SCIPconshdlrDecompUpdateSeeedlist().
Referenced by DECdetectStructure(), DECgetBestDecomp(), DECgetSeeedToWrite(), GCGprintMiplibDecompInformation(), initRelaxator(), SCIP_DECL_DIALOGEXEC(), SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExistsSelected(), and SCIPconshdlrDecompWriteDec().
SCIP_RETCODE SCIPconshdlrDecompCreateSeeedpool | ( | SCIP * | scip | ) |
creates the seeedpool for the presolved problem
creates the seeedpool
- Parameters
-
scip SCIP data structure
Definition at line 3632 of file cons_decomp.cpp.
References CONSHDLR_NAME, SCIPconshdlrDecompCreateSeeedpoolUnpresolved(), and SCIPconshdlrDecompDetectBenders().
Referenced by GCGwriteCls(), readBLKFile(), readDECFile(), SCIPconshdlrDecompAddDecdecomp(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), SCIPconshdlrDecompGetSeeedpoolUnpresolved(), SCIPconshdlrDecompPopulateSelected(), and SCIPconshdlrDecompTranslateAndAddCompleteUnpresolvedSeeeds().
SCIP_RETCODE SCIPconshdlrDecompCreateSeeedpoolUnpresolved | ( | SCIP * | scip | ) |
creates the seeedpool for the unpresolved problem
creates the seeedpool
- Parameters
-
scip SCIP data structure
Definition at line 3653 of file cons_decomp.cpp.
References CONSHDLR_NAME, SCIPconshdlrDecompDetectBenders(), and SCIPconshdlrDecompGetSeeedpoolUnpresolvedExtern().
Referenced by GCGwriteCls(), readBLKFile(), readDECFile(), SCIPconshdlrDecompCreateSeeedpool(), and SCIPconshdlrDecompPopulateSelected().
SCIP_RETCODE SCIPconshdlrDecompCreateUserSeeed | ( | SCIP * | scip, |
SCIP_Bool | presolved, | ||
SCIP_Bool | markedincomplete | ||
) |
creates a user seeed for the problem
creates a user seeed for the presolved problem
- Parameters
-
scip SCIP data structure presolved should the user seeed be created for the presolved problem markedincomplete boolean to notify that the created user decomposition is partial and should not be completed by assigning open constraints to the master
Definition at line 4164 of file cons_decomp.cpp.
References gcg::COMPLETED_CONSTOMASTER, CONSHDLR_NAME, gcg::Seeedpool::getNewIdForSeeed(), gcg::PARTIAL, SCIPconshdlrDecompUnpresolvedUserSeeedAdded(), SCIPconshdlrDecompUserSeeedFlush(), and gcg::Seeed::setIsFromUnpresolved().
Referenced by readBLKFile(), readDECFile(), and SCIPconshdlrDecompCreateVarmapForSeeedId().
SCIP_RETCODE SCIPconshdlrDecompCreateVarmapForSeeedId | ( | SCIP * | scip, |
SCIP_HASHMAP ** | hashorig2pricingvar, | ||
int | seeedid, | ||
int | probnr1, | ||
int | probnr2, | ||
SCIP * | scip1, | ||
SCIP * | scip2, | ||
SCIP_HASHMAP * | varmap | ||
) |
for two identical pricing problems a corresponding varmap is created
for two identical pricing problems a corresponding varmap is created
find index in representatives
blockid1 should be the representative
- Parameters
-
hashorig2pricingvar mapping from orig to pricingvar
Definition at line 4040 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::findFinishedSeeedByID(), GCGpricingVarGetOriginalVar(), gcg::Seeed::getBlocksForRep(), gcg::Seeedpool::getIndexForVar(), gcg::Seeed::getRepForBlock(), gcg::Seeed::getRepVarmap(), gcg::Seeedpool::getVarForIndex(), gcg::Seeed::getVarProbindexForBlock(), gcg::Seeed::getVarsForBlock(), and SCIPconshdlrDecompCreateUserSeeed().
Referenced by pricingprobsAreIdenticalFromDetectionInfo(), and SCIPconshdlrDecompArePricingprobsIdenticalForSeeedid().
int SCIPconshdlrDecompDecreaseAndGetNCallsCreateDecomp | ( | SCIP * | scip | ) |
decreases the counter for created decompositions and returns it
debug method
- Parameters
-
scip SCIP data structure
Definition at line 3735 of file cons_decomp.cpp.
References CONSHDLR_NAME, and DECdetectorGetName().
Referenced by DECdecompFree(), and SCIPconshdlrDecompIncreaseAndGetNCallsCreateDecomp().
SCIP_Bool SCIPconshdlrDecompDetectBenders | ( | SCIP * | scip | ) |
returns whether
- Parameters
-
scip
- Returns
Definition at line 1838 of file cons_decomp.cpp.
References SCIPconshdlrDecompIsBestCandidateUnpresolved().
Referenced by DECdetectStructure(), DECgetBestDecomp(), SCIPconshdlrDecompAddLegacymodeDecompositions(), SCIPconshdlrDecompCreateSeeedpool(), SCIPconshdlrDecompCreateSeeedpoolUnpresolved(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompShowHelp(), and SCIPconshdlrDecompWriteDec().
SCIP_RETCODE SCIPconshdlrDecompExecSelect | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
method too handle user input for "explore" command
- Parameters
-
scip SCIP data structure dialoghdlr dialog handler to handle user input dialog dialog to handle user input
- Returns
- SCIP return code
while user has not aborted: show current list extract
update list of interesting seeeds
Definition at line 1873 of file cons_decomp.cpp.
References CONSHDLR_NAME, SCIPconshdlrDecompChooseCandidatesFromSelected(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), SCIPconshdlrDecompExploreSelect(), SCIPconshdlrDecompModifyNVisualized(), SCIPconshdlrDecompSelectCalcStrongDecompositionScore(), SCIPconshdlrDecompSelectInspect(), SCIPconshdlrDecompSelectVisualize(), SCIPconshdlrDecompShowHelp(), SCIPconshdlrDecompShowLegend(), SCIPconshdlrDecompShowListExtract(), SCIPconshdlrDecompShowListExtractHeader(), SCIPconshdlrDecompToolboxModifyConss(), and SCIPconshdlrDecompUpdateSeeedlist().
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompIsBestCandidateUnpresolved().
SCIP_RETCODE SCIPconshdlrDecompExecToolbox | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
method to handle and moderate user input for creating new decompositions and modifying existing decompositions by the user
- Parameters
-
scip SCIP data structure dialoghdlr dialog handler to handle user input dialog dialog to handle user input
- Returns
- SCIP return code
Do user want to modify existing or create a new partial decomposition ?
case distinction:
1) update list of interesting seeeds
2) while user has not aborted: show current list extract
case distinction:
case distinction:
curruserseeed is ready to modify
case distinction:
Definition at line 3119 of file cons_decomp.cpp.
References gcg::Seeedpool::addSeeedToFinished(), gcg::Seeedpool::addSeeedToIncomplete(), CONSHDLR_NAME, SCIPconshdlrDecompCreateSeeedpool(), SCIPconshdlrDecompDetectBenders(), SCIPconshdlrDecompGetDecdecomps(), SCIPconshdlrDecompGetNextSeeedID(), SCIPconshdlrDecompModifyNVisualized(), SCIPconshdlrDecompSelectVisualize(), SCIPconshdlrDecompSelectVisualizeCurrentUserSeeed(), SCIPconshdlrDecompShowCurrUserSeeedInfo(), SCIPconshdlrDecompShowHelp(), SCIPconshdlrDecompShowListExtract(), SCIPconshdlrDecompShowListExtractHeader(), SCIPconshdlrDecompShowToolboxInfo(), SCIPconshdlrDecompToolboxChoose(), SCIPconshdlrDecompToolboxFinishSeeed(), SCIPconshdlrDecompToolboxModifyConss(), SCIPconshdlrDecompToolboxModifyVars(), SCIPconshdlrDecompToolboxPostprocessSeeed(), SCIPconshdlrDecompToolboxPropagateSeeed(), SCIPconshdlrDecompUpdateSeeedlist(), and SCIP_ConshdlrData::seeedpool.
Referenced by SCIP_DECL_DIALOGEXEC(), SCIPconshdlrDecompExecSelect(), and SCIPconshdlrDecompExecToolboxCreate().
SCIP_RETCODE SCIPconshdlrDecompExecToolboxCreate | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
method to handle and moderate user input for creating new decompositions by the user
- Parameters
-
scip SCIP data structure dialoghdlr dialog handler to handle user input dialog dialog to handle user input
- Returns
- SCIP return data structure
case distinction:
case distinction:
Definition at line 2901 of file cons_decomp.cpp.
References gcg::Seeedpool::addSeeedToFinished(), gcg::Seeedpool::addSeeedToIncomplete(), CONSHDLR_NAME, SCIPconshdlrDecompCreateSeeedpool(), SCIPconshdlrDecompDetectBenders(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompGetNextSeeedID(), SCIPconshdlrDecompSelectVisualizeCurrentUserSeeed(), SCIPconshdlrDecompShowCurrUserSeeedInfo(), SCIPconshdlrDecompShowToolboxInfo(), SCIPconshdlrDecompToolboxFinishSeeed(), SCIPconshdlrDecompToolboxModifyConss(), SCIPconshdlrDecompToolboxModifyVars(), SCIPconshdlrDecompToolboxPostprocessSeeed(), SCIPconshdlrDecompToolboxPropagateSeeed(), and SCIP_ConshdlrData::seeedpool.
Referenced by SCIPconshdlrDecompExecSelect(), and SCIPconshdlrDecompExecToolboxModify().
SCIP_RETCODE SCIPconshdlrDecompExecToolboxModify | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
method to handle and moderate user input for modifying decompositions
- Parameters
-
scip SCIP data structure dialoghdlr dialog handler to handle user input dialog dialog to handle user input
- Returns
- SCIP return code
1) update list of interesting seeeds
2) while user has not aborted: show current list extract
case distinction:
case distinction:
Definition at line 2639 of file cons_decomp.cpp.
References gcg::Seeedpool::addSeeedToFinished(), gcg::Seeedpool::addSeeedToIncomplete(), CONSHDLR_NAME, SCIPconshdlrDecompCreateSeeedpool(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompModifyNVisualized(), SCIPconshdlrDecompSelectVisualize(), SCIPconshdlrDecompSelectVisualizeCurrentUserSeeed(), SCIPconshdlrDecompShowCurrUserSeeedInfo(), SCIPconshdlrDecompShowHelp(), SCIPconshdlrDecompShowListExtract(), SCIPconshdlrDecompShowListExtractHeader(), SCIPconshdlrDecompShowToolboxInfo(), SCIPconshdlrDecompToolboxChoose(), SCIPconshdlrDecompToolboxFinishSeeed(), SCIPconshdlrDecompToolboxModifyConss(), SCIPconshdlrDecompToolboxModifyFinish(), SCIPconshdlrDecompToolboxModifyVars(), SCIPconshdlrDecompToolboxPostprocessSeeed(), SCIPconshdlrDecompToolboxPropagateSeeed(), SCIPconshdlrDecompUpdateSeeedlist(), and SCIP_ConshdlrData::seeedpool.
Referenced by SCIPconshdlrDecompExecSelect(), and SCIPconshdlrDecompToolboxPostprocessSeeed().
SCIP_Bool SCIPconshdlrDecompExistsSelected | ( | SCIP * | scip | ) |
returns if there is a decomposition that is currently selected by the user (done in explore menue)
- Parameters
-
scip SCIP data structure
- Returns
- TRUE if there is a decomposition that is currently selected by the user (done in explore menue)
Definition at line 5208 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompChooseCandidatesFromSelected().
Referenced by DECwriteFamilyTree(), SCIP_DECL_DIALOGEXEC(), SCIPconshdlrDecompHasCompleteDecomp(), and SCIPconshdlrDecompPopulateSelected().
SCIP_RETCODE SCIPconshdlrDecompExploreSelect | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Definition at line 1751 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeed::isSelected(), SCIPconshdlrDecompShowHelp(), and gcg::Seeed::setSelected().
Referenced by SCIPconshdlrDecompExecSelect(), and SCIPconshdlrDecompToolboxChoose().
SCIP_RETCODE SCIPconshdlrDecompGetAllRelevantSeeeds | ( | SCIP * | scip, |
SEEED_WRAPPER ** | seeedswr, | ||
int * | nseeeds | ||
) |
gets an array of all seeeds that are currently considered relevant seeedswr output of the relevant seeeds (don't forget to free the individual wrappers after use) nseeeds amount of seeeds that are put in the array
- Parameters
-
scip SCIP data structure seeedswr seeed wrapper array for output nseeeds number of seeeds in output
Definition at line 6232 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECwriteFamilyTree(), gcg::Seeedpool::getAncestorSeeed(), gcg::Seeedpool::getFinishedSeeed(), Seeed_Wrapper::seeed, and Seeed_Wrapper::seeedpool.
Referenced by GCGwriteTexFamilyTree(), and SCIPconshdlrDecompNotifyFinishedNonFinalFreeTransform().
int SCIPconshdlrDecompGetBlockNumberCandidate | ( | SCIP * | scip, |
int | index | ||
) |
returns block number user candidate with given index
- Parameters
-
scip SCIP data structure index index of block number user candidate that should be returned
- Returns
- block number user candidate with given index
- Parameters
-
scip SCIP data structure
Definition at line 4730 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetCompleteDetectionTime().
Referenced by SCIPconshdlrDecompGetNBlockNumberCandidates(), and gcg::Seeedpool::Seeedpool().
SCIP_Real SCIPconshdlrDecompGetCompleteDetectionTime | ( | SCIP * | scip | ) |
returns the total detection time
- Parameters
-
scip SCIP data structure
- Returns
- total detection time
Definition at line 4752 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompBlockNumberCandidateToSeeedpool().
Referenced by GCGprintCompleteDetectionTime(), and SCIPconshdlrDecompGetBlockNumberCandidate().
scoretype SCIPconshdlrDecompGetCurrScoretype | ( | SCIP * | scip | ) |
Definition at line 6602 of file cons_decomp.cpp.
References CONSHDLR_NAME, and DEChasDetectionRun().
Referenced by DECprintListOfDetectors(), gcg::Seeedpool::findSeeeds(), gcg::Seeed::postprocessMasterToBlocksConssAdjacency(), gcg::Seeedpool::sortFinishedForScore(), and gcg::Seeedpool::translateSeeeds().
DEC_DECOMP** SCIPconshdlrDecompGetDecdecomps | ( | SCIP * | scip | ) |
returns the decomposition structure
- Parameters
-
scip SCIP data structure
Definition at line 3471 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::createDecompFromSeeed(), DECdecompFree(), gcg::Seeedpool::getFinishedSeeed(), and SCIPconshdlrDecompGetNDecdecomps().
Referenced by SCIPconshdlrDecompExecToolbox().
DEC_DETECTOR** SCIPconshdlrDecompGetDetectors | ( | SCIP * | scip | ) |
Definition at line 6148 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetPdfReader().
Referenced by SCIPconshdlrDecompGetNDetectors(), and gcg::Seeedpool::Seeedpool().
DEC_DECOMP** SCIPconshdlrDecompGetFinishedDecomps | ( | SCIP * | scip | ) |
gets all currently finished decomps Note: the array is allocated and needs to be freed after use!
atm presolved decomposition are allowed (for visualization, by family tree, write all decomps etc)
Definition at line 6656 of file cons_decomp.cpp.
References CONSHDLR_NAME, SCIP_ConshdlrData::ndecomps, and SCIPconshdlrDecompGetNFinishedDecomps().
Referenced by DECdetectorGetChar(), and reportAllDecompositions().
int SCIPconshdlrDecompGetNBlockNumberCandidates | ( | SCIP * | scip | ) |
returns the number of block candidates given by the user
- Parameters
-
scip SCIP data structures
- Returns
- number of block candidates given by the user
- Parameters
-
scip SCIP data structure
Definition at line 4709 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetBlockNumberCandidate().
Referenced by SCIPconshdlrDecompAddBlockNumberCandidate(), and gcg::Seeedpool::Seeedpool().
int SCIPconshdlrDecompGetNDecdecomps | ( | SCIP * | scip | ) |
returns the decomposition structure
- Parameters
-
scip SCIP data structure
Definition at line 3521 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECdetectorGetData(), and SCIP_ConshdlrData::ndecomps.
Referenced by SCIPconshdlrDecompGetDecdecomps().
int SCIPconshdlrDecompGetNDetectors | ( | SCIP * | scip | ) |
Definition at line 6129 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetDetectors().
Referenced by GCGdetectionTookPlace(), and gcg::Seeedpool::Seeedpool().
int SCIPconshdlrDecompGetNextSeeedID | ( | SCIP * | scip | ) |
returns the next seeed id managed by cons_decomp
Definition at line 5639 of file cons_decomp.cpp.
References CONSHDLR_NAME, and DECconshdlrDecompSortDecompositionsByScore().
Referenced by gcg::Seeedpool::getNewIdForSeeed(), SCIPconshdlrDecompCheckConsistency(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), and gcg::Seeedpool::Seeedpool().
int SCIPconshdlrDecompGetNFinishedDecomps | ( | SCIP * | scip | ) |
Definition at line 6707 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetNSeeeds().
Referenced by reportAllDecompositions(), SCIPconshdlrDecompGetFinishedDecomps(), writeAllDecompositions(), writeFamilyTree(), and writeTexTitlepage().
int SCIPconshdlrDecompGetNFormerDetectionConssForID | ( | SCIP * | scip, |
int | id | ||
) |
returns the number of constraints that were active while detecting the decomposition originating from the seeed with the given id, this method is used to decide if the problem has changed since detection, if so the aggregation information needs to be recalculated
returns the number of conss that were active while detecting decomp originating from seeed with given id
seeed is not found hence we should not trust the isomorph information from detection
- Parameters
-
scip SCIP data structure id id of the seeed
Definition at line 3561 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::findFinishedSeeedByID(), gcg::Seeedpool::getNConss(), and SCIPconshdlrDecompGetSeeedpool().
Referenced by checkIdenticalBlocks(), and DECdetectorGetData().
SCIP_RETCODE SCIPconshdlrDecompgetNSeeeds | ( | SCIP * | scip, |
int * | nseeeds | ||
) |
Definition at line 4340 of file cons_decomp.cpp.
References SCIPconshdlrDecompUpdateSeeedlist().
Referenced by SCIPconshdlrDecompPopulateSelected().
int SCIPconshdlrDecompGetNSeeeds | ( | SCIP * | scip | ) |
Definition at line 6737 of file cons_decomp.cpp.
References CONSHDLR_NAME, and GCGprintDetectorStatistics().
Referenced by GCGwriteTexFamilyTree(), SCIPconshdlrDecompGetNFinishedDecomps(), and writeTexTitlepage().
const char* SCIPconshdlrDecompGetPdfReader | ( | SCIP * | scip | ) |
returns string name of the chosen pdf reader
see parameter visual/pdfreader
- Parameters
-
scip scip data structure
- Returns
- returns string name of the chosen pdf reader
Definition at line 6166 of file cons_decomp.cpp.
References SCIPconshdlrDecompNotifyNonFinalFreeTransform().
Referenced by SCIPconshdlrDecompGetDetectors().
char* SCIPconshdlrDecompGetScoretypeDescription | ( | SCIP * | scip, |
SCORETYPE | sctype | ||
) |
returns the description of the given scoretype
@ param
- Returns
- description of the scoretype
set detector chain info string
Definition at line 401 of file cons_decomp.cpp.
References BENDERS, BORDER_AREA, CLASSIC, MAX_FORESEEING_AGG_WHITE, MAX_FORESSEEING_WHITE, MAX_WHITE, SETPART_AGG_FWHITE, SETPART_FWHITE, and unfinishedchildexists().
Referenced by SCIPconshdlrDecompGetScoretypeShortName(), and SCIPconshdlrDecompShowLegend().
char* SCIPconshdlrDecompGetScoretypeShortName | ( | SCIP * | scip, |
SCORETYPE | sctype | ||
) |
returns the shortname of the given Scorwetype
set detector chain info string
Definition at line 350 of file cons_decomp.cpp.
References BENDERS, BORDER_AREA, CLASSIC, MAX_FORESEEING_AGG_WHITE, MAX_FORESSEEING_WHITE, MAX_WHITE, SCIPconshdlrDecompGetScoretypeDescription(), SETPART_AGG_FWHITE, and SETPART_FWHITE.
Referenced by SCIPconshdlrdataGetScoretype(), SCIPconshdlrDecompShowLegend(), and SCIPconshdlrDecompShowListExtractHeader().
SeeedPtr SCIPconshdlrDecompGetSeeed | ( | SCIP * | scip, |
int | seeedid | ||
) |
local method to find a seeed for a given id or NULL if no seeed with such id is found
Definition at line 746 of file cons_decomp.cpp.
References SCIPconshdlrDecompGetSeeedFromPresolved(), and SCIPconshdlrDecompGetSeeedFromUnpresolved().
Referenced by GCGgetSeeedFromID(), SCIPconshdlrDecompCheckConsistency(), and SCIPconshdlrDecompGetSeeedFromUnpresolved().
SeeedPtr SCIPconshdlrDecompGetSeeedFromPresolved | ( | SCIP * | scip, |
int | seeedid | ||
) |
local method to find a seeed for a given id or NULL if no seeed with such id is found
Definition at line 659 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetSeeedFromUnpresolved().
Referenced by SCIPconshdlrDecompAddSeeed(), and SCIPconshdlrDecompGetSeeed().
SeeedPtr SCIPconshdlrDecompGetSeeedFromUnpresolved | ( | SCIP * | scip, |
int | seeedid | ||
) |
local method to find a seeed for a given id or NULL if no seeed with such id is found
Definition at line 704 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetSeeed().
Referenced by SCIPconshdlrDecompGetSeeed(), and SCIPconshdlrDecompGetSeeedFromPresolved().
gcg::Seeedpool* SCIPconshdlrDecompGetSeeedpool | ( | SCIP * | scip | ) |
returns the seeedpool
- Parameters
-
scip SCIP data structure
Definition at line 3598 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetSeeedpoolUnpresolved().
Referenced by SCIPconshdlrDecompGetNFormerDetectionConssForID().
SEEEDPOOL_WRAPPER* SCIPconshdlrDecompGetSeeedpoolExtern | ( | SCIP * | scip | ) |
help method to access seeedpool for transformed problem : consider deleting this method will be deleted if the corresponidng wrapper classes are introduced
: IMPORTANT this method will be deleted if the corresponidng wrapper classes are introduced
- Parameters
-
scip SCIP data structure
Definition at line 3693 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompIncreaseAndGetNCallsCreateDecomp().
Referenced by cmpGraphPairNewdetection(), GCGwriteCls(), and SCIPconshdlrDecompGetSeeedpoolUnpresolvedExtern().
gcg::Seeedpool* SCIPconshdlrDecompGetSeeedpoolUnpresolved | ( | SCIP * | scip | ) |
returns the seeedpool for the unpresolved problem
- Parameters
-
scip SCIP data structure
Definition at line 3615 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompCreateSeeedpool().
Referenced by SCIPconshdlrDecompGetSeeedpool().
SEEEDPOOL_WRAPPER* SCIPconshdlrDecompGetSeeedpoolUnpresolvedExtern | ( | SCIP * | scip | ) |
help method to access seeedpool for unpresolved problem : consider deleting this method will be deleted if the corresponidng wrapper classes are introduced
: IMPORTANT this method will be deleted if the corresponidng wrapper classes are introduced
- Parameters
-
scip SCIP data structure
Definition at line 3673 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetSeeedpoolExtern().
Referenced by cmpGraphPairNewdetection(), GCGwriteCls(), and SCIPconshdlrDecompCreateSeeedpoolUnpresolved().
SCIP_RETCODE SCIPconshdlrDecompGetSelectedSeeeds | ( | SCIP * | scip, |
int ** | output, | ||
int * | outputsize | ||
) |
gets the ids of all selected seeeds
- Parameters
-
scip SCIP data structure output array to put ids into outputsize size of output
Definition at line 7247 of file cons_decomp.cpp.
References CONSHDLR_NAME, and GCGprintDecompInformation().
Referenced by GCGprintClassifierInformation().
SCIP_Bool SCIPconshdlrDecompHasCompleteDecomp | ( | SCIP * | scip | ) |
returns TRUE iff there is at least one full decompositions
Definition at line 5187 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompExistsSelected().
Referenced by SCIPconshdlrDecompHasDecomp().
SCIP_Bool SCIPconshdlrDecompHasDecomp | ( | SCIP * | scip | ) |
returns whether or not there exists at least one (com[plete or incomplete) decomposition
- Parameters
-
scip SCIP data structure
- Returns
- TRUE if there exists at least one (com[plete or incomplete) decomposition
Definition at line 5163 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompHasCompleteDecomp().
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompAdaptScore().
int SCIPconshdlrDecompIncreaseAndGetNCallsCreateDecomp | ( | SCIP * | scip | ) |
counts up the counter for created decompositions and returns it
debug method
- Parameters
-
scip SCIP data structure
Definition at line 3716 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompDecreaseAndGetNCallsCreateDecomp().
Referenced by DECdecompCreate(), and SCIPconshdlrDecompGetSeeedpoolExtern().
SCIP_Bool SCIPconshdlrDecompIsBestCandidateUnpresolved | ( | SCIP * | scip | ) |
Definition at line 1850 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompExecSelect().
Referenced by DECgetBestDecomp(), SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompDetectBenders().
SCIP_RETCODE SCIPconshdlrDecompModifyNVisualized | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Definition at line 1472 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompSelectVisualize().
Referenced by SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompShowToolboxInfo().
SCIP_RETCODE SCIPconshdlrDecompNotifyFinishedNonFinalFreeTransform | ( | SCIP * | scip | ) |
used after calling SCIPfreeTransform() if called to revoke presolving (e.g. if unpresolved decomposition is used, and transformation is not successful), this seems mandatory to decide during consExitDecomp if the original detection information should be freed
- Parameters
-
scip data structure
- Returns
- scip return code
Definition at line 6205 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompGetAllRelevantSeeeds().
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompNotifyNonFinalFreeTransform().
SCIP_RETCODE SCIPconshdlrDecompNotifyNonFinalFreeTransform | ( | SCIP * | scip | ) |
used before calling SCIPfreeTransform(),, if called to revoke presolving (e.g. if unpresolved decomposition is used, and transformation is not successful), this seems mandatory to decide during consExitDecomp if the original detection information should be freed
- Parameters
-
scip data structure
- Returns
- scip return code
Definition at line 6185 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompNotifyFinishedNonFinalFreeTransform().
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompGetPdfReader().
SCIP_RETCODE SCIPconshdlrDecompPopulateSelected | ( | SCIP * | scip | ) |
populate datastructures with incomplete decompositions (e.g. that were given by the user) to complete them during detection loop
- Parameters
-
scip SCIP data structure
- Returns
- SCIP return code
check existence of seeedpools
get unfinished unpresolved
enable orig detection if there are unpresolved decompostions
get unfinished presolved
clear old seeds
populate unpresolved
populate presolved
Definition at line 4256 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::getIncompleteSeeed(), gcg::Seeed::getUsergiven(), gcg::Seeed::isComplete(), gcg::Seeed::isSelected(), gcg::NOT, SCIPconshdlrDecompCheckConsistency(), SCIPconshdlrDecompCreateSeeedpool(), SCIPconshdlrDecompCreateSeeedpoolUnpresolved(), SCIPconshdlrDecompExistsSelected(), SCIPconshdlrDecompgetNSeeeds(), SCIP_ConshdlrData::selectedexists, and gcg::Seeed::setIsFromUnpresolved().
Referenced by SCIPconshdlrDecompUnpresolvedSeeedExists().
SCIP_RETCODE SCIPconshdlrDecompSelectCalcStrongDecompositionScore | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Calculates and displays the strong decomposition score for this decomposition in a dialog.
Definition at line 1563 of file cons_decomp.cpp.
References gcg::Seeedpool::calcStrongDecompositionScore(), CONSHDLR_NAME, SCIPconshdlrDecompSelectInspect(), and SCIP_ConshdlrData::seeedpool.
Referenced by SCIPconshdlrDecompExecSelect(), and SCIPconshdlrDecompSelectVisualize().
SCIP_RETCODE SCIPconshdlrDecompSelectInspect | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Displays information about a seeed that is chosen by the user in a dialog.
Definition at line 1622 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompSelectVisualizeCurrentUserSeeed().
Referenced by SCIPconshdlrDecompExecSelect(), and SCIPconshdlrDecompSelectCalcStrongDecompositionScore().
SCIP_RETCODE SCIPconshdlrDecompSelectVisualize | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Definition at line 1507 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompSelectCalcStrongDecompositionScore().
Referenced by SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxModify(), SCIPconshdlrDecompModifyNVisualized(), and SCIPconshdlrDecompToolboxActOnSeeed().
SCIP_RETCODE SCIPconshdlrDecompSelectVisualizeCurrentUserSeeed | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Definition at line 1686 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompToolboxChoose().
Referenced by SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompSelectInspect().
SCIP_RETCODE SCIPconshdlrDecompShowCurrUserSeeedInfo | ( | SCIP * | scip | ) |
Definition at line 1237 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompShowListExtract().
Referenced by SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompShowListExtractHeader().
SCIP_RETCODE SCIPconshdlrDecompShowHelp | ( | SCIP * | scip | ) |
Definition at line 1803 of file cons_decomp.cpp.
References SCIPconshdlrDecompDetectBenders().
Referenced by SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompExploreSelect().
SCIP_RETCODE SCIPconshdlrDecompShowLegend | ( | SCIP * | scip | ) |
sets (and adds) the decomposition structure
Definition at line 1367 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECdetectorGetChar(), DECdetectorGetName(), SCIPconshdlrdataGetScoretype(), SCIPconshdlrDecompGetScoretypeDescription(), SCIPconshdlrDecompGetScoretypeShortName(), and SCIPconshdlrDecompShowToolboxInfo().
Referenced by SCIPconshdlrDecompAddDecdecomp(), and SCIPconshdlrDecompExecSelect().
SCIP_RETCODE SCIPconshdlrDecompShowListExtract | ( | SCIP * | scip | ) |
sets (and adds) the decomposition structure; this method should only be called if there is no seeed for this decomposition
- Parameters
-
scip SCIP data structure
Definition at line 1263 of file cons_decomp.cpp.
References gcg::Seeed::checkConsistency(), CONSHDLR_NAME, gcg::Seeed::getDetectorChainString(), gcg::Seeed::getNBlocks(), gcg::Seeed::getNLinkingvars(), gcg::Seeed::getNMasterconss(), gcg::Seeed::getNMastervars(), gcg::Seeed::getNOpenconss(), gcg::Seeed::getNOpenvars(), gcg::Seeed::getNTotalStairlinkingvars(), gcg::Seeed::getScore(), gcg::Seeed::getUsergiven(), gcg::Seeed::isComplete(), gcg::Seeed::isFromUnpresolved(), gcg::Seeed::isSelected(), SCIP_ConshdlrData::listall, gcg::NOT, SCIPconshdlrdataGetScoretype(), and SCIPconshdlrDecompAddDecdecomp().
Referenced by SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompShowCurrUserSeeedInfo().
SCIP_RETCODE SCIPconshdlrDecompShowListExtractHeader | ( | SCIP * | scip | ) |
count corresponding seeeds
Definition at line 1155 of file cons_decomp.cpp.
References gcg::COMPLETE, gcg::COMPLETED_CONSTOMASTER, CONSHDLR_NAME, gcg::Seeed::getUsergiven(), gcg::Seeed::isComplete(), gcg::Seeed::isFromUnpresolved(), gcg::NOT, gcg::PARTIAL, SCIPconshdlrdataGetScoretype(), SCIPconshdlrDecompGetScoretypeShortName(), and SCIPconshdlrDecompShowCurrUserSeeedInfo().
Referenced by SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxModify(), and SCIPincludeConshdlrDecomp().
SCIP_RETCODE SCIPconshdlrDecompShowToolboxInfo | ( | SCIP * | scip | ) |
Definition at line 1442 of file cons_decomp.cpp.
References SCIPconshdlrDecompModifyNVisualized().
Referenced by SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompShowLegend().
SCIP_RETCODE SCIPconshdlrDecompToolboxActOnSeeed | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog, | ||
toolboxtype | action | ||
) |
Definition at line 2337 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeed::considerImplicits(), SCIP_ConshdlrData::detectors, gcg::Seeed::displayInfo(), FINISH, SCIP_ConshdlrData::ndetectors, Seeed_Propagation_Data::newSeeeds, Seeed_Propagation_Data::nNewSeeeds, POSTPROCESS, PROPAGATE, SCIPconshdlrDecompSelectVisualize(), SCIPconshdlrDecompToolboxFinishSeeed(), SCIPconshdlrDecompUserSeeedFlush(), Seeed_Propagation_Data::seeedpool, SCIP_ConshdlrData::seeedpool, Seeed_Propagation_Data::seeedToPropagate, and gcg::Seeed::setSeeedpool().
Referenced by SCIPconshdlrDecompToolboxFinishSeeed(), SCIPconshdlrDecompToolboxModifyVars(), SCIPconshdlrDecompToolboxPostprocessSeeed(), and SCIPconshdlrDecompToolboxPropagateSeeed().
SCIP_RETCODE SCIPconshdlrDecompToolboxChoose | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Definition at line 1707 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompExploreSelect().
Referenced by SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompSelectVisualizeCurrentUserSeeed().
SCIP_RETCODE SCIPconshdlrDecompToolboxFinishSeeed | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Definition at line 2615 of file cons_decomp.cpp.
References FINISH, SCIPconshdlrDecompToolboxActOnSeeed(), and SCIPconshdlrDecompToolboxPropagateSeeed().
Referenced by SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompToolboxActOnSeeed().
SCIP_RETCODE SCIPconshdlrDecompToolboxModifyConss | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Do user want to modify existing or create a new partial decomposition ?
case distinction:
case distinction:
Definition at line 2012 of file cons_decomp.cpp.
References gcg::Seeed::bookAsBlockCons(), gcg::Seeed::bookAsMasterCons(), CONSHDLR_NAME, gcg::Seeed::flushBooked(), gcg::Seeed::getNOpenconss(), gcg::Seeed::getOpenconss(), gcg::Seeed::isFromUnpresolved(), SCIPconshdlrDecompToolboxModifyFinish(), and SCIP_ConshdlrData::seeedpool.
Referenced by SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), and SCIPconshdlrDecompExecToolboxModify().
SCIP_RETCODE SCIPconshdlrDecompToolboxModifyFinish | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
1) print out available finisher
Do user want to modify existing or create a new partial decomposition ?
Definition at line 2130 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECdetectorGetName(), gcg::Seeed::isFromUnpresolved(), Seeed_Propagation_Data::newSeeeds, Seeed_Propagation_Data::nNewSeeeds, SCIPconshdlrDecompToolboxModifyVars(), Seeed_Propagation_Data::seeedpool, SCIP_ConshdlrData::seeedpool, and Seeed_Propagation_Data::seeedToPropagate.
Referenced by SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompToolboxModifyConss().
SCIP_RETCODE SCIPconshdlrDecompToolboxModifyVars | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Do user want to modify existing or create a new partial decomposition ?
case distinction:
case distinction:
Definition at line 2210 of file cons_decomp.cpp.
References gcg::Seeed::bookAsBlockVar(), gcg::Seeed::bookAsLinkingVar(), gcg::Seeed::bookAsMasterVar(), CONSHDLR_NAME, gcg::Seeed::deleteEmptyBlocks(), gcg::Seeed::flushBooked(), gcg::Seeed::getNOpenvars(), gcg::Seeed::getOpenconss(), gcg::Seeed::getOpenvars(), gcg::Seeed::isFromUnpresolved(), SCIPconshdlrDecompToolboxActOnSeeed(), and SCIP_ConshdlrData::seeedpool.
Referenced by SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompToolboxModifyFinish().
SCIP_RETCODE SCIPconshdlrDecompToolboxPostprocessSeeed | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Definition at line 2631 of file cons_decomp.cpp.
References POSTPROCESS, SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompToolboxActOnSeeed().
Referenced by SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompToolboxPropagateSeeed().
SCIP_RETCODE SCIPconshdlrDecompToolboxPropagateSeeed | ( | SCIP * | scip, |
SCIP_DIALOGHDLR * | dialoghdlr, | ||
SCIP_DIALOG * | dialog | ||
) |
Definition at line 2623 of file cons_decomp.cpp.
References PROPAGATE, SCIPconshdlrDecompToolboxActOnSeeed(), and SCIPconshdlrDecompToolboxPostprocessSeeed().
Referenced by SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxCreate(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompToolboxFinishSeeed().
SCIP_RETCODE SCIPconshdlrDecompTranslateAndAddCompleteUnpresolvedSeeeds | ( | SCIP * | scip, |
SCIP_Bool * | success | ||
) |
translates unpresolved seeed to a complete presolved one
- Parameters
-
scip SCIP data structure success at least one unpresolved seeed could not be translated in a complete presolved one
- Returns
- SCIP return code
- Parameters
-
scip SCIP data structure success at least one unpresolved seeed coud be tranlsate in a complete presolved one
Definition at line 5027 of file cons_decomp.cpp.
References gcg::Seeed::checkConsistency(), CONSHDLR_NAME, gcg::Seeedpool::getFinishedSeeed(), gcg::Seeedpool::getNFinishedSeeeds(), gcg::Seeed::isComplete(), gcg::Seeedpool::prepareSeeed(), SCIPconshdlrDecompAdaptScore(), SCIPconshdlrDecompAddCompleteSeeedForPresolved(), SCIPconshdlrDecompAddPartialSeeedForPresolved(), SCIPconshdlrDecompCreateSeeedpool(), SCIP_ConshdlrData::seeedpool, SCIP_ConshdlrData::seeedpoolunpresolved, and gcg::Seeedpool::translateSeeeds().
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompUserSeeedReject().
SCIP_Bool SCIPconshdlrDecompUnpresolvedSeeedExists | ( | SCIP * | scip | ) |
returns whether or not an unpresolved (untransformed) decompositions exists in the data structures
- Parameters
-
scip SCIP data structure
- Returns
- SCIP return code
- Parameters
-
scip SCIP data structure
Definition at line 4228 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompPopulateSelected().
Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPconshdlrDecompUnpresolvedUserSeeedAdded().
SCIP_Bool SCIPconshdlrDecompUnpresolvedUserSeeedAdded | ( | SCIP * | scip | ) |
returns whether or not an unpresolved (untransformed) decompositions was given by the user
- Parameters
-
scip SCIP data structure
- Returns
- true iff an unpresolved (untransformed) decompositions was given by the user
- Parameters
-
scip SCIP data structure
Definition at line 4208 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompUnpresolvedSeeedExists().
Referenced by SCIPconshdlrDecompCreateUserSeeed().
SCIP_RETCODE SCIPconshdlrDecompUpdateSeeedlist | ( | SCIP * | scip | ) |
method to update the list of incomplete decompositions in "explore" submenue ( this list changes due to new decompositions, modified, decompositions or changes of the score
- Parameters
-
scip SCIP data structure
- Returns
- SCIP return code
sort decomposition and finished seeeds according to max white score
add seeeds to list
1) add presolved finished
2) add presolved unfinished
3) add unpresolved finished
4) add unpresolved partial
Definition at line 4349 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECconshdlrDecompSortDecompositionsByScore(), gcg::Seeedpool::getFinishedSeeed(), gcg::Seeedpool::getIncompleteSeeed(), SCIPconshdlrdataDecompUnselectAll(), SCIPconshdlrDecompCheckConsistency(), SCIPconshdlrDecompUserSeeedSetnumberOfBlocks(), and gcg::Seeed::setIsFromUnpresolved().
Referenced by DECwriteFamilyTree(), GCGprintDecompInformation(), SCIPconshdlrDecompChooseCandidatesFromSelected(), SCIPconshdlrDecompExecSelect(), SCIPconshdlrDecompExecToolbox(), SCIPconshdlrDecompExecToolboxModify(), and SCIPconshdlrDecompgetNSeeeds().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedFlush | ( | SCIP * | scip | ) |
finalizes and flushes the current user seeed, i.e. consider implicits, calc hashvalue, construct decdecomp if complete etc
finalizes and flushes the current user seeed, i.e. consider implicits, calc hashvalue, construct decdecomp if complete etc
stems from presolved problem?
stems from unpresolved problem
set statistics
- Parameters
-
scip SCIP data structure
Definition at line 4844 of file cons_decomp.cpp.
References gcg::Seeed::bookAsMasterCons(), gcg::Seeed::buildDecChainString(), gcg::Seeed::checkConsistency(), gcg::COMPLETE, gcg::COMPLETED_CONSTOMASTER, CONSHDLR_NAME, gcg::Seeed::considerImplicits(), gcg::Seeed::flushBooked(), gcg::Seeed::getNOpenconss(), gcg::Seeed::getOpenconss(), gcg::Seeed::isFromUnpresolved(), MAX_WHITE, gcg::PARTIAL, gcg::Seeedpool::prepareSeeed(), SCIPconshdlrDecompAddCompleteSeeedForPresolved(), SCIPconshdlrDecompAddPartialSeeedForPresolved(), SCIPconshdlrDecompUserSeeedReject(), gcg::Seeed::setSeeedpool(), and gcg::Seeed::shouldCompletedByConsToMaster().
Referenced by fillDecompStruct(), readDECFile(), SCIPconshdlrDecompCreateUserSeeed(), SCIPconshdlrDecompToolboxActOnSeeed(), and SCIPconshdlrDecompUserSeeedSetVarToLinking().
SCIP_Bool SCIPconshdlrDecompUserSeeedIsActive | ( | SCIP * | scip | ) |
returns whether there is an user seeed that is currently worked on
returns whether there is an user seeed
- Parameters
-
scip SCIP data structure
Definition at line 4459 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompUserSeeedSetConsDefaultMaster().
Referenced by SCIPconshdlrDecompUserSeeedSetnumberOfBlocks().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedReject | ( | SCIP * | scip | ) |
rejects and deletes the current user seeed
deletes the current user seer
- Parameters
-
scip SCIP data structure
Definition at line 4993 of file cons_decomp.cpp.
References CONSHDLR_NAME, and SCIPconshdlrDecompTranslateAndAddCompleteUnpresolvedSeeeds().
Referenced by readDECFile(), and SCIPconshdlrDecompUserSeeedFlush().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedSetConsDefaultMaster | ( | SCIP * | scip, |
SCIP_Bool | consdefaulttomaster | ||
) |
set the user given information of the current user seeed according consdefaultmaster (if TRUE all open constraints are set to master )
sets the number of blocks
- Parameters
-
scip SCIP data structure consdefaulttomaster are not specified constraints set to master for default
Definition at line 4481 of file cons_decomp.cpp.
References gcg::COMPLETED_CONSTOMASTER, CONSHDLR_NAME, SCIPconshdlrDecompUserSeeedSetConsToBlock(), and gcg::Seeed::setUsergiven().
Referenced by SCIPconshdlrDecompUserSeeedIsActive().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedSetConsToBlock | ( | SCIP * | scip, |
const char * | consname, | ||
int | blockid | ||
) |
sets a constraint by name to a block in the current user seeed
sets a constraint by name to a block in the current user seeed
- Parameters
-
scip SCIP data structure consname name of the constraint blockid block index ( counting from 0)
Definition at line 4517 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::getIndexForCons(), and SCIPconshdlrDecompUserSeeedSetConsToMaster().
Referenced by fillDecompStruct(), readBlockconss(), and SCIPconshdlrDecompUserSeeedSetConsDefaultMaster().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedSetConsToMaster | ( | SCIP * | scip, |
const char * | consname | ||
) |
sets a constraint by name to master in the current user seeed
sets a constraint by name to the master in the current user seeed
- Parameters
-
scip SCIP data structure
Definition at line 4560 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::getIndexForCons(), and SCIPconshdlrDecompUserSeeedSetVarToBlock().
Referenced by fillDecompStruct(), readMasterconss(), and SCIPconshdlrDecompUserSeeedSetConsToBlock().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedSetnumberOfBlocks | ( | SCIP * | scip, |
int | nblocks | ||
) |
set the number of blocks in the current user seeed (which is used for user input (read or modify) )
sets the number of blocks
- Parameters
-
scip SCIP data structure nblocks number of blocks
Definition at line 4427 of file cons_decomp.cpp.
References CONSHDLR_NAME, SCIPconshdlrDecompUserSeeedIsActive(), and gcg::Seeed::setNBlocks().
Referenced by readNBlocks(), and SCIPconshdlrDecompUpdateSeeedlist().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedSetVarToBlock | ( | SCIP * | scip, |
const char * | varname, | ||
int | blockid | ||
) |
sets a variable by name to a block in the current user seeed
sets a variable by name to a block in the current user seeed
- Parameters
-
scip SCIP data structure varname name of the variable blockid block index ( counting from 0)
Definition at line 4601 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::getIndexForVar(), and SCIPconshdlrDecompUserSeeedSetVarToMaster().
Referenced by readBlock(), readBlockvars(), and SCIPconshdlrDecompUserSeeedSetConsToMaster().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedSetVarToLinking | ( | SCIP * | scip, |
const char * | varname | ||
) |
sets a variable by name to the linking variables in the current user seeed
sets a variable by name to the linking variables in the current user seeed
- Parameters
-
scip SCIP data structure varname name of the variable
Definition at line 4807 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::getIndexForVar(), and SCIPconshdlrDecompUserSeeedFlush().
Referenced by readBlock(), readLinkingvars(), and SCIPconshdlrDecompBlockNumberCandidateToSeeedpool().
SCIP_RETCODE SCIPconshdlrDecompUserSeeedSetVarToMaster | ( | SCIP * | scip, |
const char * | varname | ||
) |
sets a variable by name to the master in the current user seeed
sets a variable by name to the master in the current user seeed
- Parameters
-
scip SCIP data structure varname name of the variable
Definition at line 4641 of file cons_decomp.cpp.
References CONSHDLR_NAME, gcg::Seeedpool::getIndexForVar(), and SCIPconshdlrDecompAddBlockNumberCandidate().
Referenced by fillDecompStruct(), readMastervars(), and SCIPconshdlrDecompUserSeeedSetVarToBlock().
SCIP_RETCODE SCIPconshdlrDecompWriteDec | ( | SCIP * | scip, |
FILE * | file, | ||
SCIP_Bool | transformed, | ||
SCIP_RESULT * | result | ||
) |
Definition at line 6402 of file cons_decomp.cpp.
References CONSHDLR_NAME, DECgetBestDecomp(), SCIPconshdlrDecompChooseCandidatesFromSelected(), SCIPconshdlrDecompDetectBenders(), SCIP_ConshdlrData::seeedpool, gcg::transformed, and gcg::Seeed::writeAsDec().
Referenced by DECwriteFamilyTree(), and SCIP_DECL_READERWRITE().
SCIP_RETCODE SCIPincludeConshdlrDecomp | ( | SCIP * | scip | ) |
creates the constraint handler for decomp and includes it in SCIP
creates the handler for decomp constraints and includes it in SCIP
- Parameters
-
scip SCIP data structure
Definition at line 1008 of file cons_decomp.cpp.
References CONSHDLR_CHECKPRIORITY, CONSHDLR_DESC, CONSHDLR_EAGERFREQ, CONSHDLR_ENFOPRIORITY, CONSHDLR_NAME, CONSHDLR_NEEDSCONS, DEFAULT_AGGREGATIONLIMITNCONSSPERBLOCK, DEFAULT_AGGREGATIONLIMITNVARSPERBLOCK, DEFAULT_ALLOWCLASSIFIERDUPLICATES, DEFAULT_BENDERSONLYBINMASTER, DEFAULT_BENDERSONLYCONTSUBPR, DEFAULT_COEFFACTORORIGVSRANDOM, DEFAULT_CONSSADJCALCULATED, DEFAULT_CONSSCLASSCONSNAMENONUMBERENABLED, DEFAULT_CONSSCLASSCONSNAMENONUMBERENABLEDORIG, DEFAULT_CONSSCLASSLEVENSHTEINENABLED, DEFAULT_CONSSCLASSLEVENSHTEINENABLEDORIG, DEFAULT_CONSSCLASSMIPLIBCONSTYPEENABLED, DEFAULT_CONSSCLASSMIPLIBCONSTYPEENABLEDORIG, DEFAULT_CONSSCLASSNNONZENABLED, DEFAULT_CONSSCLASSNNONZENABLEDORIG, DEFAULT_CONSSCLASSSCIPCONSTYPEENABLED, DEFAULT_CONSSCLASSSCIPCONSTYPEENABLEDORIG, DEFAULT_CREATEBASICDECOMP, DEFAULT_DETECTBENDERS, DEFAULT_DUALVALRANDOMMETHOD, DEFAULT_ENABLEORIGCLASSIFICATION, DEFAULT_ENABLEORIGDETECTION, DEFAULT_LEGACYMODE, DEFAULT_MAXDETECTIONROUNDS, DEFAULT_MAXNCLASSES, DEFAULT_MAXNCLASSESFORNBLOCKCANDIDATES, DEFAULT_MAXNCLASSESLARGEPROBS, DEFAULT_ONLYLEGACYMODE, DEFAULT_STAIRLINKINGHEUR, DEFAULT_VARCLASSOBJVALSENABLED, DEFAULT_VARCLASSOBJVALSENABLEDORIG, DEFAULT_VARCLASSOBJVALSIGNSENABLED, DEFAULT_VARCLASSOBJVALSIGNSENABLEDORIG, DEFAULT_VARCLASSSCIPVARTYPESENABLED, DEFAULT_VARCLASSSCIPVARTYPESENABLEDORIG, DEFAULT_WRITEMIPLIB2017DECOMPFILEPATH, DEFAULT_WRITEMIPLIB2017FEATUREFILEPATH, DEFAULT_WRITEMIPLIB2017FEATURES, DEFAULT_WRITEMIPLIB2017MATRIXFILEPATH, DEFAULT_WRITEMIPLIB2017PLOTSANDDECS, DEFAULT_WRITEMIPLIB2017SHORTBASEFEATURES, MAX_WHITE, NO_MODIF, SCIPconshdlrDecompShowListExtractHeader(), and SETPART_FWHITE.
Referenced by SCIP_DECL_CONSLOCK(), and SCIPincludeGcgPlugins().
|
static |
sets the parameters to aggressive values
- Parameters
-
scip SCIP data structure conshdlrdata constraint handler data structure quiet should the parameter be set quiet (no output)
Definition at line 6880 of file cons_decomp.cpp.
References AGGRESSIVE_LEVENSHTEIN_MAXMATRIXHALFPERIMETER, and setDetectionOff().
Referenced by GCGsetDetection(), and setDetectionDefault().
|
static |
resets the parameters to their default value
- Parameters
-
scip SCIP data structure conshdlrdata constraint handler data structure quiet should the parameter be set quiet (no output)
Definition at line 6805 of file cons_decomp.cpp.
References DEFAULT_LEVENSHTEIN_MAXMATRIXHALFPERIMETER, and setDetectionAggressive().
Referenced by GCGprintDetectorStatistics(), and GCGsetDetection().
|
static |
sets the parameters to fast values
- Parameters
-
scip SCIP data structure conshdlrdata constraint handler data structure quiet should the parameter be set quiet (no output)
Definition at line 7006 of file cons_decomp.cpp.
References FAST_LEVENSHTEIN_MAXMATRIXHALFPERIMETER, and GCGsetDetection().
Referenced by GCGsetDetection(), and setDetectionOff().
|
static |
disables detectors
- Parameters
-
scip SCIP data structure conshdlrdata constraint handler data structure quiet should the parameter be set quiet (no output)
Definition at line 6955 of file cons_decomp.cpp.
References setDetectionFast().
Referenced by GCGsetDetection(), and setDetectionAggressive().
SCIP_Bool unfinishedchildexists | ( | std::vector< SCIP_Bool > const & | childsfinished | ) |
help method for writing family trees
Definition at line 449 of file cons_decomp.cpp.
References getfirstunfinishedchild().
Referenced by SCIPconshdlrDecompGetScoretypeDescription().