Open
Graph Drawing
Framework

 v. 2022.02 (Dogwood)
 

ogdf::cluster_planarity::MaxCPlanarMaster Class Reference

#include <ogdf/cluster/internal/MaxCPlanarMaster.h>

+ Inheritance diagram for ogdf::cluster_planarity::MaxCPlanarMaster:

Public Member Functions

 MaxCPlanarMaster (const ClusterGraph &C, const EdgeArray< double > *pCost, int heuristicLevel=1, int heuristicRuns=2, double heuristicOEdgeBound=0.3, int heuristicNPermLists=5, int kuratowskiIterations=3, int subdivisions=10, int kSupportGraphs=3, double kuratowskiHigh=0.7, double kuratowskiLow=0.3, bool perturbation=false, double branchingGap=0.4, const char *time="00:20:00", bool dopricing=true, bool checkCPlanar=false, int numAddVariables=15, double strongConstraintViolation=0.3, double strongVariableViolation=0.3)
 
virtual ~MaxCPlanarMaster ()
 Destruction. More...
 
int addedCConstraints () const
 
int addedKConstraints () const
 
double branchingOEdgeSelectGap () const
 
double epsilon () const
 
virtual abacus::SubfirstSub () override
 Should return a pointer to the first subproblem of the optimization, i.e., the root node of the enumeration tree. More...
 
void getAllOptimalSolutionEdges (List< NodePair > &edges) const
 
bool getCheckCPlanar () const
 
const ClusterGraphgetClusterGraph () const
 
void getConnectionOptimalSolutionEdges (List< NodePair > &egdes) const
 
abacus::StandardPool< abacus::Constraint, abacus::Variable > * getCutConnPool ()
 Returns cut pool for connectivity. More...
 
abacus::StandardPool< abacus::Constraint, abacus::Variable > * getCutKuraPool ()
 Returns cut pool for planarity. More...
 
void getDeletedEdges (List< edge > &edges) const
 
double getDualBound ()
 
const GraphgetGraph () const
 
double getHeuristicFractionalBound () const
 
int getHeuristicLevel () const
 
int getHeuristicRuns () const
 
double getKBoundHigh () const
 
double getKBoundLow () const
 
int getKIterations () const
 
bool getMPHeuristic () const
 
int getNKuratowskiSupportGraphs () const
 
int getNSubdivisions () const
 
int getNumAddVariables () const
 
int getNumInactiveVars ()
 
void getOriginalOptimalSolutionEdges (List< NodePair > &edges) const
 
double getPrimalBound ()
 
const char * getStdConstraintsFileName ()
 The name of the file that contains the standard, i.e., non-cut, constraints (may be deleted by ABACUS and shouldn't be stored twice) More...
 
double getStrongConstraintViolation () const
 
double getStrongVariableViolation () const
 
void heuristicLevel (int level)
 
int nMaxVars () const
 
int numberOfHeuristicPermutationLists () const
 
bool perturbation () const
 
void setHeuristicFractionalBound (double b)
 
void setHeuristicPermutationLists (int n)
 
void setHeuristicRuns (int n)
 
void setKBoundHigh (double n)
 
void setKBoundLow (double n)
 
void setKIterations (int n)
 
void setMPHeuristic (bool b)
 Switches use of lower bound heuristic. More...
 
void setNHeuristicRuns (int n)
 
void setNKuratowskiSupportGraphs (int n)
 
void setNSubdivisions (int n)
 
void setNumAddVariables (int i)
 
void setPertubation (bool b)
 
void setPortaFile (bool b)
 If set to true, PORTA output is written in a file. More...
 
void setStrongConstraintViolation (double d)
 
void setStrongVariableViolation (double d)
 
GraphsolutionInducedGraph ()
 
void updateAddedCCons (int n)
 
void updateAddedKCons (int n)
 
void updateBestSubGraph (List< NodePair > &original, List< NodePair > &connection, List< edge > &deleted)
 
bool & useDefaultCutPool ()
 Returns true if default cut pool is used. Otherwise, separate connectivity and Kuratowski pools are generated and used. More...
 
- Public Member Functions inherited from abacus::Master
 Master (const char *problemName, bool cutting, bool pricing, OptSense::SENSE optSense=OptSense::Unknown, double eps=1.0e-4, double machineEps=1.0e-7, double infinity=1.0e30, bool readParamFromFile=false)
 The constructor. More...
 
virtual ~Master ()
 The destructor. More...
 
STATUS optimize ()
 Performs the optimization by branch-and-bound. More...
 
double lowerBound () const
 Returns the value of the global lower bound. More...
 
double upperBound () const
 Returns the value of the global upper bound. More...
 
double primalBound () const
 Returns the value of the primal bound. More...
 
void primalBound (double x)
 Sets the primal bound to x and makes a new entry in the solution history. More...
 
double dualBound () const
 Returns the value of the dual bound. More...
 
void dualBound (double x)
 Sets the dual bound to x and makes a new entry in the solution history. More...
 
bool betterDual (double x) const
 Returns true if x is better than the best known dual bound; false otherwise. More...
 
bool primalViolated (double x) const
 Can be used to compare a value with the one of the best known primal bound. More...
 
bool betterPrimal (double x) const
 Can be used to check if a value is better than the best know primal bound. More...
 
double rootDualBound () const
 Returns the dual bound at the root node. More...
 
bool feasibleFound () const
 We use this function, e.g., to adapt the enumeration strategy in the DiveAndBest-Strategy. More...
 
ENUMSTRAT enumerationStrategy () const
 Returns the enumeration strategy. More...
 
void enumerationStrategy (ENUMSTRAT strat)
 Changes the enumeration strategy to strat. More...
 
virtual int enumerationStrategy (const Sub *s1, const Sub *s2)
 Analyzes the enumeration strategy set in the parameter file .abacus and calls the corresponding comparison function for the subproblems s1 and s2. More...
 
bool guaranteed () const
 Can be used to check if the guarantee requirements are fulfilled. More...
 
double guarantee () const
 Can be used to access the guarantee which can be given for the best known feasible solution. More...
 
void printGuarantee () const
 Writes the guarantee nicely formated on the output stream associated with this object. More...
 
bool check () const
 Can be used to control the correctness of the optimization if the value of the optimum solution has been loaded. More...
 
bool knownOptimum (double &optVal) const
 Opens the file specified with the parameter OptimumFileName in the configuration file .abacus and tries to find a line with the name of the problem instance (as specified in the constructor of Master) as first string. More...
 
virtual void output () const
 Does nothing but can be redefined in derived classes for output before the timing statistics. More...
 
bool cutting () const
 
bool pricing () const
 
const OptSenseoptSense () const
 Returns a pointer to the object holding the optimization sense of the problem. More...
 
Historyhistory () const
 Returns a pointer to the object storing the solution history of this branch and cut problem. More...
 
OpenSubopenSub () const
 Returns a pointer to the set of open subproblems. More...
 
StandardPool< Constraint, Variable > * conPool () const
 Returns a pointer to the default pool storing the constraints of the problem formulation. More...
 
StandardPool< Constraint, Variable > * cutPool () const
 Returns a pointer to the default pool for the generated cutting planes. More...
 
StandardPool< Variable, Constraint > * varPool () const
 Returns a pointer to the default pool storing the variables. More...
 
Subroot () const
 Can be used to access the root node of the branch-and-bound tree. More...
 
SubrRoot () const
 
STATUS status () const
 Returns the status of the Master. More...
 
const string & problemName () const
 Returns the name of the instance being optimized (as specified in the constructor of this class). More...
 
const ogdf::StopwatchWallClocktotalCowTime () const
 Returns a pointer to the timer measuring the total wall clock time. More...
 
bool solveApprox () const
 True, if an approximative solver should be used. More...
 
const ogdf::StopwatchCPUtotalTime () const
 returns a pointer to the timer measuring the total cpu time for the optimization. More...
 
const ogdf::StopwatchCPUlpTime () const
 Returns a pointer to the timer measuring the cpu time spent in members of the LP-interface. More...
 
const ogdf::StopwatchCPUlpSolverTime () const
 Return a pointer to the timer measuring the cpu time required by the LP solver. More...
 
const ogdf::StopwatchCPUseparationTime () const
 Returns a pointer to the timer measuring the cpu time spent in the separation of cutting planes. More...
 
const ogdf::StopwatchCPUimproveTime () const
 Returns a pointer to the timer measuring the cpu time spent in the heuristics for the computation of feasible solutions. More...
 
const ogdf::StopwatchCPUpricingTime () const
 Returns a pointer to the timer measuring the cpu time spent in pricing. More...
 
const ogdf::StopwatchCPUbranchingTime () const
 Returns a pointer to the timer measuring the cpu time spent in finding and selecting the branching rules. More...
 
int nSub () const
 returns the number of generated subproblems. More...
 
int nLp () const
 Returns the number of optimized linear programs (only LP-relaxations). More...
 
int highestLevel () const
 Returns the highest level in the tree which has been reached during the implicit enumeration. More...
 
int nNewRoot () const
 Returns the number of root changes of the remaining branch-and-cut tree. More...
 
int nSubSelected () const
 Returns the number of subproblems which have already been selected from the set of open subproblems. More...
 
void printParameters () const
 Writes all parameters of the class Master together with their values to the global output stream. More...
 
BRANCHINGSTRAT branchingStrategy () const
 Returns the branching strategy. More...
 
void branchingStrategy (BRANCHINGSTRAT strat)
 Changes the branching strategy to strat. More...
 
OSISOLVER defaultLpSolver () const
 returns the Lp Solver. More...
 
void defaultLpSolver (OSISOLVER osiSolver)
 Changes the default Lp solver to osiSolver. More...
 
LpMasterOsilpMasterOsi () const
 
int nBranchingVariableCandidates () const
 Returns the number of variables that should be tested for the selection of the branching variable. More...
 
void nBranchingVariableCandidates (int n)
 Sets the number of tested branching variable candidates to n. More...
 
int nStrongBranchingIterations () const
 The number of simplex iterations that are performed when testing candidates for branching variables within strong branching. More...
 
void nStrongBranchingIterations (int n)
 Sets the number of simplex iterations that are performed when testing candidates for branching variables within strong branching. More...
 
double requiredGuarantee () const
 The guarantee specification for the optimization. More...
 
void requiredGuarantee (double g)
 Changes the guarantee specification tp g. More...
 
int maxLevel () const
 Returns the maximal depth up to which the enumeration should be performed. More...
 
void maxLevel (int ml)
 This version of the function maxLevel() changes the maximal enumeration depth. More...
 
int maxNSub () const
 Returns the maximal number of subproblems to be processed. More...
 
void maxNSub (int ml)
 Changes the maximal number of subproblems to ml. More...
 
int64_t maxCpuTime () const
 Returns the maximal cpu time (in seconds) which can be used by the optimization. More...
 
string maxCpuTimeAsString () const
 Returns the maximal cpu time (as string hh:mm:ss) which can be used by the optimization. More...
 
void maxCpuTime (const string &t)
 Sets the maximally allowed cpu time for the optimization to t. More...
 
void maxCpuTime (int64_t seconds)
 Sets the maximally allowed cpu time to seconds. More...
 
void maxCpuTime (int hour, int min, int sec)
 Sets the maximally allowed cpu time for the optimization to hour, min, sec. More...
 
int64_t maxCowTime () const
 Returns the maximal wall-clock time (in seconds) which can be used by the optimization. More...
 
string maxCowTimeAsString () const
 Returns the maximal wall-clock time (as string hh:mm:ss) which can be used by the optimization. More...
 
void maxCowTime (int64_t seconds)
 Sets the maximally allowed wall-clock time to seconds. More...
 
void maxCowTime (const string &t)
 Sets the maximally allowed wall-clock time for the optimization to t. More...
 
bool objInteger () const
 If true then we assume that all feasible solutions have integral objective function values. More...
 
void objInteger (bool b)
 Sets the assumption that the objective function values of all feasible solutions are integer. More...
 
int tailOffNLp () const
 Returns the number of linear programs considered in the tailing off analysis. More...
 
void tailOffNLp (int n)
 Sets the number of linear programs considered in the tailing off analysis to n. More...
 
double tailOffPercent () const
 Returns the minimal change of the dual bound for the tailing off analysis in percent. More...
 
void tailOffPercent (double p)
 Sets the minimal change of the dual bound for the tailing off analysis to p. More...
 
bool delayedBranching (int nOpt) const
 Returns true if the number of optimizations nOpt of a subproblem exceeds the delayed branching threshold, false otherwise. More...
 
void dbThreshold (int threshold)
 Sets the number of optimizations of a subproblem until sons are created in Sub::branching(). More...
 
int dbThreshold () const
 Returns the number of optimizations of a subproblem until sons are created. More...
 
int minDormantRounds () const
 Returns the maximal number of rounds, i.e., number of subproblem optimizations, a subproblem is dormant. More...
 
void minDormantRounds (int nRounds)
 Sets the number of rounds a subproblem should stay dormant to nRounds. More...
 
PRIMALBOUNDMODE pbMode () const
 Returns the mode of the primal bound initialization. More...
 
void pbMode (PRIMALBOUNDMODE mode)
 Sets the mode of the primal bound initialization to mode. More...
 
int pricingFreq () const
 Returns the number of linear programs being solved between two additional pricing steps. More...
 
void pricingFreq (int f)
 Sets the number of linear programs being solved between two additional pricing steps to f. More...
 
int skipFactor () const
 Returns the frequency of subproblems in which constraints or variables should be generated. More...
 
void skipFactor (int f)
 Sets the frequency for constraint and variable generation to f. More...
 
void skippingMode (SKIPPINGMODE mode)
 Sets the skipping strategy to mode. More...
 
SKIPPINGMODE skippingMode () const
 Returns the skipping strategy. More...
 
CONELIMMODE conElimMode () const
 Returns the mode for the elimination of constraints. More...
 
void conElimMode (CONELIMMODE mode)
 Changes the constraint elimination mode to mode. More...
 
VARELIMMODE varElimMode () const
 Returns the mode for the elimination of variables. More...
 
void varElimMode (VARELIMMODE mode)
 Changes the variable elimination mode to mode. More...
 
double conElimEps () const
 Returns the zero tolerance for the elimination of constraints by the slack criterion. More...
 
void conElimEps (double eps)
 Changes the tolerance for the elimination of constraints by the slack criterion to eps. More...
 
double varElimEps () const
 Returns the zero tolerance for the elimination of variables by the reduced cost criterion. More...
 
void varElimEps (double eps)
 Changes the tolerance for the elimination of variables by the reduced cost criterion to eps. More...
 
int varElimAge () const
 Returns the age for the elimination of variables by the reduced cost criterion. More...
 
void varElimAge (int age)
 Changes the age for the elimination of variables by the reduced cost criterion to age. More...
 
int conElimAge () const
 Returns the age for the elimination of constraints. More...
 
void conElimAge (int age)
 Changes the age for the elimination of constraints to age. More...
 
bool fixSetByRedCost () const
 
void fixSetByRedCost (bool on)
 Turns fixing and setting variables by reduced cost on or off. More...
 
bool printLP () const
 
void printLP (bool on)
 Turns the output of the linear program in every iteration on or off. More...
 
int maxConAdd () const
 Returns the maximal number of constraints which should be added in every iteration of the cutting plane algorithm. More...
 
void maxConAdd (int max)
 Sets the maximal number of constraints that are added in an iteration of the cutting plane algorithm. More...
 
int maxConBuffered () const
 Returns the size of the buffer for generated constraints in the cutting plane algorithm. More...
 
void maxConBuffered (int max)
 Changes the maximal number of constraints that are buffered in an iteration of the cutting plane algorithm. More...
 
int maxVarAdd () const
 Returns the maximal number of variables which should be added in the column generation algorithm. More...
 
void maxVarAdd (int max)
 Changes the maximal number of variables that are added in an iteration of the subproblem optimization. More...
 
int maxVarBuffered () const
 Returns the size of the buffer for the variables generated in the column generation algorithm. More...
 
void maxVarBuffered (int max)
 Changes the maximal number of variables that are buffered in an iteration of the subproblem optimization. More...
 
int maxIterations () const
 Returns the maximal number of iterations per subproblem optimization (-1 means no iteration limit). More...
 
void maxIterations (int max)
 Changes the default value for the maximal number of iterations of the optimization of a subproblem. More...
 
bool eliminateFixedSet () const
 
void eliminateFixedSet (bool turnOn)
 Turns the elimination of fixed and set variables on or off. More...
 
bool newRootReOptimize () const
 
void newRootReOptimize (bool on)
 Turns the reoptimization of new root nodes of the remaining branch and bound tree on or off. More...
 
const string & optimumFileName () const
 Returns the name of the file that stores the optimum solutions. More...
 
void optimumFileName (const char *name)
 Changes the name of the file in which the value of the optimum solution is searched. More...
 
bool showAverageCutDistance () const
 
void showAverageCutDistance (bool on)
 Turns the output of the average distance of the added cuts from the fractional solution on or off. More...
 
VBCMODE vbcLog () const
 Returns the mode of output for the Vbc-Tool. More...
 
void vbcLog (VBCMODE mode)
 Changes the mode of output for the Vbc-Tool to mode. More...
 
virtual bool setSolverParameters (OsiSolverInterface *interface, bool solverIsApprox)
 Sets solver specific parameters. More...
 
- Public Member Functions inherited from abacus::AbacusGlobal
 AbacusGlobal (double eps=1.0e-4, double machineEps=1.0e-7, double infinity=1.0e32)
 The constructor. More...
 
virtual ~AbacusGlobal ()
 The destructor. More...
 
void assignParameter (bool &param, const char *name) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (bool &param, const char *name, bool defVal) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (char &param, const char *name, const char *feasible, char defVal) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (char &param, const char *name, const char *feasible=nullptr) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (double &param, const char *name, double minVal, double maxVal) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (double &param, const char *name, double minVal, double maxVal, double defVal) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (int &param, const char *name, int minVal, int maxVal) const
 Searches for parameter name in the parameter table and returns its value in param. More...
 
void assignParameter (int &param, const char *name, int minVal, int maxVal, int defVal) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (string &param, const char *name, unsigned nFeasible, const char *feasible[], const char *defVal) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (string &param, const char *name, unsigned nFeasible=0, const char *feasible[]=nullptr) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (unsigned &param, const char *name, unsigned minVal, unsigned maxVal) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
void assignParameter (unsigned &param, const char *name, unsigned minVal, unsigned maxVal, unsigned defVal) const
 See AbacusGlobal::assignParameter(int&,const char*,int,int) for a description. More...
 
double eps () const
 Returns the zero tolerance. More...
 
void eps (double e)
 Sets the zero tolerance to e. More...
 
bool equal (double x, double y) const
 Returns whether the absolute difference between x and y is less than the machine dependent zero tolerance. More...
 
int findParameter (const char *name, const char *feasible) const
 See AbacusGlobal::findParameter(const char *name, unsigned nFeasible, const int *feasible) for description. More...
 
int findParameter (const char *name, unsigned nFeasible, const char *feasible[]) const
 See AbacusGlobal::findParameter(const char *name, unsigned nFeasible, const int *feasible) for description. More...
 
int findParameter (const char *name, unsigned nFeasible, const int *feasible) const
 Searches for parameter name in the parameter table. More...
 
int getParameter (const char *name, bool &param) const
 
int getParameter (const char *name, char &param) const
 
int getParameter (const char *name, double &param) const
 
int getParameter (const char *name, int &param) const
 Searches for parameter name in the parameter table and returns its value in param. More...
 
int getParameter (const char *name, string &param) const
 
int getParameter (const char *name, unsigned int &param) const
 
double infinity () const
 Provides a floating point value of "infinite" size. More...
 
void infinity (double x)
 Sets the "infinite value" to x. More...
 
void insertParameter (const char *name, const char *value)
 Inserts parameter name with value value into the parameter table. More...
 
bool isInfinity (double x) const
 Returns true if x is regarded as "infinite" large, false otherwise. More...
 
bool isInteger (double x) const
 Returns whether the value x differs at most by the machine dependent zero tolerance from an integer value. More...
 
bool isInteger (double x, double eps) const
 Returns whether the value x differs at most by eps from an integer value. More...
 
bool isMinusInfinity (double x) const
 Returns true if x is regarded as infinite small, false otherwise. More...
 
double machineEps () const
 Provides a machine dependent zero tolerance. More...
 
void machineEps (double e)
 Sets the machine dependent zero tolerance to e. More...
 
void readParameters (const string &fileName)
 Opens the parameter file fileName, reads all parameters, and inserts them in the parameter table. More...
 
- Public Member Functions inherited from abacus::AbacusRoot
virtual ~AbacusRoot ()
 The destructor. More...
 

Protected Member Functions

double heuristicInitialLowerBound ()
 
virtual void initializeOptimization () override
 The default implementation of initializeOptimization() does nothing. More...
 
virtual void terminateOptimization () override
 The default implementation of terminateOptimization() does nothing. More...
 
- Protected Member Functions inherited from abacus::Master
virtual void initializePools (ArrayBuffer< Constraint * > &constraints, ArrayBuffer< Variable * > &variables, int varPoolSize, int cutPoolSize, bool dynamicCutPool=false)
 Sets up the default pools for variables, constraints, and cutting planes. More...
 
virtual void initializePools (ArrayBuffer< Constraint * > &constraints, ArrayBuffer< Constraint * > &cuts, ArrayBuffer< Variable * > &variables, int varPoolSize, int cutPoolSize, bool dynamicCutPool=false)
 Is overloaded such that also a first set of cutting planes can be inserted into the cutting plane pool. More...
 
void initializeOptSense (OptSense::SENSE sense)
 Can be used to initialize the sense of the optimization in derived classes, if this has not been already performed when the constructor of Master has been called. More...
 
int bestFirstSearch (const Sub *s1, const Sub *s2) const
 Implements the best first search enumeration. More...
 
virtual int equalSubCompare (const Sub *s1, const Sub *s2) const
 Is called from the function bestFirstSearch() and from the function depthFirstSearch() if the subproblems s1 and s2 have the same priority. More...
 
int depthFirstSearch (const Sub *s1, const Sub *s2) const
 Implements the depth first search enumeration strategy, i.e., the subproblem with maximum level is selected. More...
 
int breadthFirstSearch (const Sub *s1, const Sub *s2) const
 Implements the breadth first search enumeration strategy, i.e., the subproblem with minimum level is selected. More...
 
int diveAndBestFirstSearch (const Sub *s1, const Sub *s2) const
 Performs depth-first search until a feasible solution is found, then the search process is continued with best-first search. More...
 
virtual void initializeParameters ()
 Is only a dummy. More...
 
virtual void assignParameters ()
 Assigns the parameters that were read from a file to the member variables of the master. More...
 

Private Member Functions

void clearActiveRepairs ()
 
void clusterConnection (cluster c, GraphCopy &GC, double &upperBound)
 
EdgeVarcreateVariable (ListIterator< NodePair > &it)
 
void generateVariablesForFeasibility (const List< ChunkConnection * > &ccons, List< EdgeVar * > &connectVars)
 
void getCoefficients (abacus::Constraint *con, const List< EdgeVar * > &orig, const List< EdgeVar * > &connect, List< double > &coeffs)
 writes coefficients of all orig and connect variables in constraint con into emptied list coeffs More...
 
double getDoubleTime (const Stopwatch *act)
 
bool goodVar (node a, node b)
 
double heuristicInitialUpperBound ()
 
double nextConnectCoeff ()
 
void nodeDistances (node u, NodeArray< NodeArray< int > > &dist)
 

Private Attributes

double globalDualBound
 
double globalPrimalBound
 
int m_activeRepairs
 
List< NodePairm_allOneEdges
 
double m_branchingGap
 
const ClusterGraphm_C
 
bool m_checkCPlanar
 Defines if only clustered planarity is checked, i.e., all edges of the original graph need to be fixed to be part of the solution. More...
 
List< NodePairm_connectionOneEdges
 
abacus::StandardPool< abacus::Constraint, abacus::Variable > * m_cutConnPool
 Cut pools for connectivity and Kuratowski constraints. More...
 
abacus::StandardPool< abacus::Constraint, abacus::Variable > * m_cutKuraPool
 Kuratowski Cuts. More...
 
List< edgem_deletedOriginalEdges
 
double m_delta
 
double m_deltaCount
 
double m_epsilon
 
const int m_fastHeuristicRuns
 
const Graphm_G
 
double m_heuristicFractionalBound
 
int m_heuristicLevel
 
List< NodePairm_inactiveVariables
 
double m_kuratowskiBoundHigh
 
double m_kuratowskiBoundLow
 
double m_largestConnectionCoeff
 
string * m_maxCpuTime
 
bool m_mpHeuristic
 Indicates if simple max planar subgraph heuristic should be used to derive lower bound if only root cluster exists. More...
 
int m_nCConsAdded
 
int m_nHeuristicPermutationLists
 
int m_nHeuristicRuns
 
int m_nKConsAdded
 
int m_nKuratowskiIterations
 
int m_nKuratowskiSupportGraphs
 
int m_nMaxVars
 
int m_nSubdivisions
 
int m_numAddVariables
 
List< NodePairm_originalOneEdges
 
const EdgeArray< double > * m_pCost
 
bool m_porta
 If set to true, PORTA output is written in a file. More...
 
ArrayBuffer< int > m_repairStat
 
GraphCopym_solutionGraph
 
int m_solvesLP
 
double m_strongConstraintViolation
 
double m_strongVariableViolation
 
bool m_useDefaultCutPool
 Defines if the ABACUS default cut pool or the separate Connectivity and Kuratowski constraint pools are used. More...
 
bool m_usePerturbation
 
int m_varsAdded
 
int m_varsBranch
 
int m_varsCut
 
int m_varsInit
 
int m_varsKura
 
int m_varsMax
 
int m_varsPotential
 
int m_varsPrice
 

Friends

class MaxCPlanarSub
 

Additional Inherited Members

- Public Types inherited from abacus::Master
enum  BRANCHINGSTRAT { CloseHalf, CloseHalfExpensive }
 This enumeration defines the two currently implemented branching variable selection strategies. More...
 
enum  CONELIMMODE { NoConElim, NonBinding, Basic }
 This enumeration defines the ways for automatic constraint elimination during the cutting plane phase. More...
 
enum  ENUMSTRAT { BestFirst, BreadthFirst, DepthFirst, DiveAndBest }
 The enumeration defining the different enumeration strategies for the branch and bound algorithm. More...
 
enum  OSISOLVER { Cbc, Clp, CPLEX, DyLP, FortMP, GLPK, MOSEK, OSL, SoPlex, SYMPHONY, XPRESS_MP, Gurobi, Csdp }
 This enumeration defines which solvers can be used to solve the LP-relaxations. More...
 
enum  PRIMALBOUNDMODE { NoPrimalBound, Optimum, OptimumOne }
 This enumeration provides various methods for the initialization of the primal bound. More...
 
enum  SKIPPINGMODE { SkipByNode, SkipByLevel }
 The way nodes are skipped for the generation of cuts. More...
 
enum  STATUS { Optimal, Error, OutOfMemory, Unprocessed, Processing, Guaranteed, MaxLevel, MaxCpuTime, MaxNSub, MaxCowTime, ExceptionFathom }
 The various statuses of the optimization process. More...
 
enum  VARELIMMODE { NoVarElim, ReducedCost }
 This enumeration defines the ways for automatic variable elimination during the column generation algorithm. More...
 
enum  VBCMODE { NoVbc, File, Pipe }
 This enumeration defines what kind of output can be generated for the VBCTOOL. More...
 
- Static Public Member Functions inherited from abacus::AbacusRoot
static bool ascii2bool (const string &str)
 Converts the string str to a boolean value. More...
 
static bool endsWith (const string &str, const string &end)
 Returns true if str ends with end, false otherwise. More...
 
static double fracPart (double x)
 Returns the absolute value of the fractional part of x. More...
 
static const char * onOff (bool value)
 Converts a boolean variable to the strings "on" and "off". More...
 
- Static Public Attributes inherited from abacus::Master
static const char * BRANCHINGSTRAT_ []
 Literal values for the enumerators of the corresponding enumeration type. More...
 
static const char * CONELIMMODE_ []
 Literal values for the enumerators of the corresponding enumeration type. More...
 
static const char * ENUMSTRAT_ []
 Literal values for the enumerators of the corresponding enumeration type. More...
 
static const char * OSISOLVER_ []
 Array for the literal values for possible Osi solvers. More...
 
static const char * PRIMALBOUNDMODE_ []
 Literal values for the enumerators of the corresponding enumeration type. More...
 
static const char * SKIPPINGMODE_ []
 Literal values for the enumerators of the corresponding enumeration type. More...
 
static const char * STATUS_ []
 Literal values for the enumerators of the corresponding enumeration type. More...
 
static const char * VARELIMMODE_ []
 Literal values for the enumerators of the corresponding enumeration type. More...
 
static const char * VBCMODE_ []
 Literal values for the enumerators of the corresponding enumeration type. More...
 

Detailed Description

Definition at line 48 of file MaxCPlanarMaster.h.

Constructor & Destructor Documentation

◆ MaxCPlanarMaster()

ogdf::cluster_planarity::MaxCPlanarMaster::MaxCPlanarMaster ( const ClusterGraph C,
const EdgeArray< double > *  pCost,
int  heuristicLevel = 1,
int  heuristicRuns = 2,
double  heuristicOEdgeBound = 0.3,
int  heuristicNPermLists = 5,
int  kuratowskiIterations = 3,
int  subdivisions = 10,
int  kSupportGraphs = 3,
double  kuratowskiHigh = 0.7,
double  kuratowskiLow = 0.3,
bool  perturbation = false,
double  branchingGap = 0.4,
const char *  time = "00:20:00",
bool  dopricing = true,
bool  checkCPlanar = false,
int  numAddVariables = 15,
double  strongConstraintViolation = 0.3,
double  strongVariableViolation = 0.3 
)

◆ ~MaxCPlanarMaster()

virtual ogdf::cluster_planarity::MaxCPlanarMaster::~MaxCPlanarMaster ( )
virtual

Destruction.

Member Function Documentation

◆ addedCConstraints()

int ogdf::cluster_planarity::MaxCPlanarMaster::addedCConstraints ( ) const
inline

Definition at line 141 of file MaxCPlanarMaster.h.

◆ addedKConstraints()

int ogdf::cluster_planarity::MaxCPlanarMaster::addedKConstraints ( ) const
inline

Definition at line 140 of file MaxCPlanarMaster.h.

◆ branchingOEdgeSelectGap()

double ogdf::cluster_planarity::MaxCPlanarMaster::branchingOEdgeSelectGap ( ) const
inline

Definition at line 130 of file MaxCPlanarMaster.h.

◆ clearActiveRepairs()

void ogdf::cluster_planarity::MaxCPlanarMaster::clearActiveRepairs ( )
inlineprivate

Definition at line 268 of file MaxCPlanarMaster.h.

◆ clusterConnection()

void ogdf::cluster_planarity::MaxCPlanarMaster::clusterConnection ( cluster  c,
GraphCopy GC,
double &  upperBound 
)
private

◆ createVariable()

EdgeVar* ogdf::cluster_planarity::MaxCPlanarMaster::createVariable ( ListIterator< NodePair > &  it)
inlineprivate

Definition at line 305 of file MaxCPlanarMaster.h.

◆ epsilon()

double ogdf::cluster_planarity::MaxCPlanarMaster::epsilon ( ) const
inline

Definition at line 97 of file MaxCPlanarMaster.h.

◆ firstSub()

virtual abacus::Sub* ogdf::cluster_planarity::MaxCPlanarMaster::firstSub ( )
overridevirtual

Should return a pointer to the first subproblem of the optimization, i.e., the root node of the enumeration tree.

This is a pure virtual function since a pointer to a problem specific subproblem should be returned, which is derived from the class Sub.

Implements abacus::Master.

◆ generateVariablesForFeasibility()

void ogdf::cluster_planarity::MaxCPlanarMaster::generateVariablesForFeasibility ( const List< ChunkConnection * > &  ccons,
List< EdgeVar * > &  connectVars 
)
private

◆ getAllOptimalSolutionEdges()

void ogdf::cluster_planarity::MaxCPlanarMaster::getAllOptimalSolutionEdges ( List< NodePair > &  edges) const

◆ getCheckCPlanar()

bool ogdf::cluster_planarity::MaxCPlanarMaster::getCheckCPlanar ( ) const
inline

Definition at line 134 of file MaxCPlanarMaster.h.

◆ getClusterGraph()

const ClusterGraph* ogdf::cluster_planarity::MaxCPlanarMaster::getClusterGraph ( ) const
inline

Definition at line 106 of file MaxCPlanarMaster.h.

◆ getCoefficients()

void ogdf::cluster_planarity::MaxCPlanarMaster::getCoefficients ( abacus::Constraint con,
const List< EdgeVar * > &  orig,
const List< EdgeVar * > &  connect,
List< double > &  coeffs 
)
private

writes coefficients of all orig and connect variables in constraint con into emptied list coeffs

◆ getConnectionOptimalSolutionEdges()

void ogdf::cluster_planarity::MaxCPlanarMaster::getConnectionOptimalSolutionEdges ( List< NodePair > &  egdes) const

◆ getCutConnPool()

abacus::StandardPool<abacus::Constraint, abacus::Variable>* ogdf::cluster_planarity::MaxCPlanarMaster::getCutConnPool ( )
inline

Returns cut pool for connectivity.

Definition at line 175 of file MaxCPlanarMaster.h.

◆ getCutKuraPool()

abacus::StandardPool<abacus::Constraint, abacus::Variable>* ogdf::cluster_planarity::MaxCPlanarMaster::getCutKuraPool ( )
inline

Returns cut pool for planarity.

Definition at line 177 of file MaxCPlanarMaster.h.

◆ getDeletedEdges()

void ogdf::cluster_planarity::MaxCPlanarMaster::getDeletedEdges ( List< edge > &  edges) const

◆ getDoubleTime()

double ogdf::cluster_planarity::MaxCPlanarMaster::getDoubleTime ( const Stopwatch act)
inlineprivate

Definition at line 278 of file MaxCPlanarMaster.h.

◆ getDualBound()

double ogdf::cluster_planarity::MaxCPlanarMaster::getDualBound ( )
inline

Definition at line 171 of file MaxCPlanarMaster.h.

◆ getGraph()

const Graph* ogdf::cluster_planarity::MaxCPlanarMaster::getGraph ( ) const
inline

Definition at line 103 of file MaxCPlanarMaster.h.

◆ getHeuristicFractionalBound()

double ogdf::cluster_planarity::MaxCPlanarMaster::getHeuristicFractionalBound ( ) const
inline

Definition at line 131 of file MaxCPlanarMaster.h.

◆ getHeuristicLevel()

int ogdf::cluster_planarity::MaxCPlanarMaster::getHeuristicLevel ( ) const
inline

Definition at line 125 of file MaxCPlanarMaster.h.

◆ getHeuristicRuns()

int ogdf::cluster_planarity::MaxCPlanarMaster::getHeuristicRuns ( ) const
inline

Definition at line 126 of file MaxCPlanarMaster.h.

◆ getKBoundHigh()

double ogdf::cluster_planarity::MaxCPlanarMaster::getKBoundHigh ( ) const
inline

Definition at line 127 of file MaxCPlanarMaster.h.

◆ getKBoundLow()

double ogdf::cluster_planarity::MaxCPlanarMaster::getKBoundLow ( ) const
inline

Definition at line 128 of file MaxCPlanarMaster.h.

◆ getKIterations()

int ogdf::cluster_planarity::MaxCPlanarMaster::getKIterations ( ) const
inline

Definition at line 122 of file MaxCPlanarMaster.h.

◆ getMPHeuristic()

bool ogdf::cluster_planarity::MaxCPlanarMaster::getMPHeuristic ( ) const
inline

Definition at line 133 of file MaxCPlanarMaster.h.

◆ getNKuratowskiSupportGraphs()

int ogdf::cluster_planarity::MaxCPlanarMaster::getNKuratowskiSupportGraphs ( ) const
inline

Definition at line 124 of file MaxCPlanarMaster.h.

◆ getNSubdivisions()

int ogdf::cluster_planarity::MaxCPlanarMaster::getNSubdivisions ( ) const
inline

Definition at line 123 of file MaxCPlanarMaster.h.

◆ getNumAddVariables()

int ogdf::cluster_planarity::MaxCPlanarMaster::getNumAddVariables ( ) const
inline

Definition at line 135 of file MaxCPlanarMaster.h.

◆ getNumInactiveVars()

int ogdf::cluster_planarity::MaxCPlanarMaster::getNumInactiveVars ( )
inline

Definition at line 197 of file MaxCPlanarMaster.h.

◆ getOriginalOptimalSolutionEdges()

void ogdf::cluster_planarity::MaxCPlanarMaster::getOriginalOptimalSolutionEdges ( List< NodePair > &  edges) const

◆ getPrimalBound()

double ogdf::cluster_planarity::MaxCPlanarMaster::getPrimalBound ( )
inline

Definition at line 170 of file MaxCPlanarMaster.h.

◆ getStdConstraintsFileName()

const char* ogdf::cluster_planarity::MaxCPlanarMaster::getStdConstraintsFileName ( )
inline

The name of the file that contains the standard, i.e., non-cut, constraints (may be deleted by ABACUS and shouldn't be stored twice)

Definition at line 192 of file MaxCPlanarMaster.h.

◆ getStrongConstraintViolation()

double ogdf::cluster_planarity::MaxCPlanarMaster::getStrongConstraintViolation ( ) const
inline

Definition at line 136 of file MaxCPlanarMaster.h.

◆ getStrongVariableViolation()

double ogdf::cluster_planarity::MaxCPlanarMaster::getStrongVariableViolation ( ) const
inline

Definition at line 137 of file MaxCPlanarMaster.h.

◆ goodVar()

bool ogdf::cluster_planarity::MaxCPlanarMaster::goodVar ( node  a,
node  b 
)
private

◆ heuristicInitialLowerBound()

double ogdf::cluster_planarity::MaxCPlanarMaster::heuristicInitialLowerBound ( )
protected

◆ heuristicInitialUpperBound()

double ogdf::cluster_planarity::MaxCPlanarMaster::heuristicInitialUpperBound ( )
private

◆ heuristicLevel()

void ogdf::cluster_planarity::MaxCPlanarMaster::heuristicLevel ( int  level)
inline

Definition at line 151 of file MaxCPlanarMaster.h.

◆ initializeOptimization()

virtual void ogdf::cluster_planarity::MaxCPlanarMaster::initializeOptimization ( )
overrideprotectedvirtual

The default implementation of initializeOptimization() does nothing.

This virtual function can be used as an entrance point to perform some initializations after optimize() is called.

Reimplemented from abacus::Master.

◆ nextConnectCoeff()

double ogdf::cluster_planarity::MaxCPlanarMaster::nextConnectCoeff ( )
inlineprivate

Definition at line 301 of file MaxCPlanarMaster.h.

◆ nMaxVars()

int ogdf::cluster_planarity::MaxCPlanarMaster::nMaxVars ( ) const
inline

Definition at line 100 of file MaxCPlanarMaster.h.

◆ nodeDistances()

void ogdf::cluster_planarity::MaxCPlanarMaster::nodeDistances ( node  u,
NodeArray< NodeArray< int > > &  dist 
)
private

◆ numberOfHeuristicPermutationLists()

int ogdf::cluster_planarity::MaxCPlanarMaster::numberOfHeuristicPermutationLists ( ) const
inline

Definition at line 132 of file MaxCPlanarMaster.h.

◆ perturbation()

bool ogdf::cluster_planarity::MaxCPlanarMaster::perturbation ( ) const
inline

Definition at line 129 of file MaxCPlanarMaster.h.

◆ setHeuristicFractionalBound()

void ogdf::cluster_planarity::MaxCPlanarMaster::setHeuristicFractionalBound ( double  b)
inline

Definition at line 154 of file MaxCPlanarMaster.h.

◆ setHeuristicPermutationLists()

void ogdf::cluster_planarity::MaxCPlanarMaster::setHeuristicPermutationLists ( int  n)
inline

Definition at line 155 of file MaxCPlanarMaster.h.

◆ setHeuristicRuns()

void ogdf::cluster_planarity::MaxCPlanarMaster::setHeuristicRuns ( int  n)
inline

Definition at line 152 of file MaxCPlanarMaster.h.

◆ setKBoundHigh()

void ogdf::cluster_planarity::MaxCPlanarMaster::setKBoundHigh ( double  n)
inline

Definition at line 149 of file MaxCPlanarMaster.h.

◆ setKBoundLow()

void ogdf::cluster_planarity::MaxCPlanarMaster::setKBoundLow ( double  n)
inline

Definition at line 150 of file MaxCPlanarMaster.h.

◆ setKIterations()

void ogdf::cluster_planarity::MaxCPlanarMaster::setKIterations ( int  n)
inline

Definition at line 145 of file MaxCPlanarMaster.h.

◆ setMPHeuristic()

void ogdf::cluster_planarity::MaxCPlanarMaster::setMPHeuristic ( bool  b)
inline

Switches use of lower bound heuristic.

Definition at line 157 of file MaxCPlanarMaster.h.

◆ setNHeuristicRuns()

void ogdf::cluster_planarity::MaxCPlanarMaster::setNHeuristicRuns ( int  n)
inline

Definition at line 148 of file MaxCPlanarMaster.h.

◆ setNKuratowskiSupportGraphs()

void ogdf::cluster_planarity::MaxCPlanarMaster::setNKuratowskiSupportGraphs ( int  n)
inline

Definition at line 147 of file MaxCPlanarMaster.h.

◆ setNSubdivisions()

void ogdf::cluster_planarity::MaxCPlanarMaster::setNSubdivisions ( int  n)
inline

Definition at line 146 of file MaxCPlanarMaster.h.

◆ setNumAddVariables()

void ogdf::cluster_planarity::MaxCPlanarMaster::setNumAddVariables ( int  i)
inline

Definition at line 158 of file MaxCPlanarMaster.h.

◆ setPertubation()

void ogdf::cluster_planarity::MaxCPlanarMaster::setPertubation ( bool  b)
inline

Definition at line 153 of file MaxCPlanarMaster.h.

◆ setPortaFile()

void ogdf::cluster_planarity::MaxCPlanarMaster::setPortaFile ( bool  b)
inline

If set to true, PORTA output is written in a file.

Definition at line 163 of file MaxCPlanarMaster.h.

◆ setStrongConstraintViolation()

void ogdf::cluster_planarity::MaxCPlanarMaster::setStrongConstraintViolation ( double  d)
inline

Definition at line 159 of file MaxCPlanarMaster.h.

◆ setStrongVariableViolation()

void ogdf::cluster_planarity::MaxCPlanarMaster::setStrongVariableViolation ( double  d)
inline

Definition at line 160 of file MaxCPlanarMaster.h.

◆ solutionInducedGraph()

Graph* ogdf::cluster_planarity::MaxCPlanarMaster::solutionInducedGraph ( )
inline

Definition at line 113 of file MaxCPlanarMaster.h.

◆ terminateOptimization()

virtual void ogdf::cluster_planarity::MaxCPlanarMaster::terminateOptimization ( )
overrideprotectedvirtual

The default implementation of terminateOptimization() does nothing.

This virtual function can be used as an entrance point after the optimization process is finished.

Reimplemented from abacus::Master.

◆ updateAddedCCons()

void ogdf::cluster_planarity::MaxCPlanarMaster::updateAddedCCons ( int  n)
inline

Definition at line 166 of file MaxCPlanarMaster.h.

◆ updateAddedKCons()

void ogdf::cluster_planarity::MaxCPlanarMaster::updateAddedKCons ( int  n)
inline

Definition at line 167 of file MaxCPlanarMaster.h.

◆ updateBestSubGraph()

void ogdf::cluster_planarity::MaxCPlanarMaster::updateBestSubGraph ( List< NodePair > &  original,
List< NodePair > &  connection,
List< edge > &  deleted 
)

◆ useDefaultCutPool()

bool& ogdf::cluster_planarity::MaxCPlanarMaster::useDefaultCutPool ( )
inline

Returns true if default cut pool is used. Otherwise, separate connectivity and Kuratowski pools are generated and used.

Definition at line 181 of file MaxCPlanarMaster.h.

Friends And Related Function Documentation

◆ MaxCPlanarSub

friend class MaxCPlanarSub
friend

Definition at line 49 of file MaxCPlanarMaster.h.

Member Data Documentation

◆ globalDualBound

double ogdf::cluster_planarity::MaxCPlanarMaster::globalDualBound
private

Definition at line 276 of file MaxCPlanarMaster.h.

◆ globalPrimalBound

double ogdf::cluster_planarity::MaxCPlanarMaster::globalPrimalBound
private

Definition at line 275 of file MaxCPlanarMaster.h.

◆ m_activeRepairs

int ogdf::cluster_planarity::MaxCPlanarMaster::m_activeRepairs
private

Definition at line 266 of file MaxCPlanarMaster.h.

◆ m_allOneEdges

List<NodePair> ogdf::cluster_planarity::MaxCPlanarMaster::m_allOneEdges
private

Definition at line 61 of file MaxCPlanarMaster.h.

◆ m_branchingGap

double ogdf::cluster_planarity::MaxCPlanarMaster::m_branchingGap
private

Definition at line 233 of file MaxCPlanarMaster.h.

◆ m_C

const ClusterGraph* ogdf::cluster_planarity::MaxCPlanarMaster::m_C
private

Definition at line 52 of file MaxCPlanarMaster.h.

◆ m_checkCPlanar

bool ogdf::cluster_planarity::MaxCPlanarMaster::m_checkCPlanar
private

Defines if only clustered planarity is checked, i.e., all edges of the original graph need to be fixed to be part of the solution.

Definition at line 297 of file MaxCPlanarMaster.h.

◆ m_connectionOneEdges

List<NodePair> ogdf::cluster_planarity::MaxCPlanarMaster::m_connectionOneEdges
private

Definition at line 63 of file MaxCPlanarMaster.h.

◆ m_cutConnPool

abacus::StandardPool< abacus::Constraint, abacus::Variable >* ogdf::cluster_planarity::MaxCPlanarMaster::m_cutConnPool
private

Cut pools for connectivity and Kuratowski constraints.

Connectivity Cuts

Definition at line 287 of file MaxCPlanarMaster.h.

◆ m_cutKuraPool

abacus::StandardPool< abacus::Constraint, abacus::Variable >* ogdf::cluster_planarity::MaxCPlanarMaster::m_cutKuraPool
private

Kuratowski Cuts.

Definition at line 288 of file MaxCPlanarMaster.h.

◆ m_deletedOriginalEdges

List<edge> ogdf::cluster_planarity::MaxCPlanarMaster::m_deletedOriginalEdges
private

Definition at line 64 of file MaxCPlanarMaster.h.

◆ m_delta

double ogdf::cluster_planarity::MaxCPlanarMaster::m_delta
private

Definition at line 299 of file MaxCPlanarMaster.h.

◆ m_deltaCount

double ogdf::cluster_planarity::MaxCPlanarMaster::m_deltaCount
private

Definition at line 300 of file MaxCPlanarMaster.h.

◆ m_epsilon

double ogdf::cluster_planarity::MaxCPlanarMaster::m_epsilon
private

Definition at line 249 of file MaxCPlanarMaster.h.

◆ m_fastHeuristicRuns

const int ogdf::cluster_planarity::MaxCPlanarMaster::m_fastHeuristicRuns
private

Definition at line 284 of file MaxCPlanarMaster.h.

◆ m_G

const Graph* ogdf::cluster_planarity::MaxCPlanarMaster::m_G
private

Definition at line 53 of file MaxCPlanarMaster.h.

◆ m_heuristicFractionalBound

double ogdf::cluster_planarity::MaxCPlanarMaster::m_heuristicFractionalBound
private

Definition at line 234 of file MaxCPlanarMaster.h.

◆ m_heuristicLevel

int ogdf::cluster_planarity::MaxCPlanarMaster::m_heuristicLevel
private

Definition at line 229 of file MaxCPlanarMaster.h.

◆ m_inactiveVariables

List<NodePair> ogdf::cluster_planarity::MaxCPlanarMaster::m_inactiveVariables
private

Definition at line 312 of file MaxCPlanarMaster.h.

◆ m_kuratowskiBoundHigh

double ogdf::cluster_planarity::MaxCPlanarMaster::m_kuratowskiBoundHigh
private

Definition at line 238 of file MaxCPlanarMaster.h.

◆ m_kuratowskiBoundLow

double ogdf::cluster_planarity::MaxCPlanarMaster::m_kuratowskiBoundLow
private

Definition at line 239 of file MaxCPlanarMaster.h.

◆ m_largestConnectionCoeff

double ogdf::cluster_planarity::MaxCPlanarMaster::m_largestConnectionCoeff
private

Definition at line 252 of file MaxCPlanarMaster.h.

◆ m_maxCpuTime

string* ogdf::cluster_planarity::MaxCPlanarMaster::m_maxCpuTime
private

Definition at line 245 of file MaxCPlanarMaster.h.

◆ m_mpHeuristic

bool ogdf::cluster_planarity::MaxCPlanarMaster::m_mpHeuristic
private

Indicates if simple max planar subgraph heuristic should be used to derive lower bound if only root cluster exists.

Definition at line 236 of file MaxCPlanarMaster.h.

◆ m_nCConsAdded

int ogdf::cluster_planarity::MaxCPlanarMaster::m_nCConsAdded
private

Definition at line 255 of file MaxCPlanarMaster.h.

◆ m_nHeuristicPermutationLists

int ogdf::cluster_planarity::MaxCPlanarMaster::m_nHeuristicPermutationLists
private

Definition at line 235 of file MaxCPlanarMaster.h.

◆ m_nHeuristicRuns

int ogdf::cluster_planarity::MaxCPlanarMaster::m_nHeuristicRuns
private

Definition at line 230 of file MaxCPlanarMaster.h.

◆ m_nKConsAdded

int ogdf::cluster_planarity::MaxCPlanarMaster::m_nKConsAdded
private

Definition at line 256 of file MaxCPlanarMaster.h.

◆ m_nKuratowskiIterations

int ogdf::cluster_planarity::MaxCPlanarMaster::m_nKuratowskiIterations
private

Definition at line 226 of file MaxCPlanarMaster.h.

◆ m_nKuratowskiSupportGraphs

int ogdf::cluster_planarity::MaxCPlanarMaster::m_nKuratowskiSupportGraphs
private

Definition at line 225 of file MaxCPlanarMaster.h.

◆ m_nMaxVars

int ogdf::cluster_planarity::MaxCPlanarMaster::m_nMaxVars
private

Definition at line 228 of file MaxCPlanarMaster.h.

◆ m_nSubdivisions

int ogdf::cluster_planarity::MaxCPlanarMaster::m_nSubdivisions
private

Definition at line 227 of file MaxCPlanarMaster.h.

◆ m_numAddVariables

int ogdf::cluster_planarity::MaxCPlanarMaster::m_numAddVariables
private

Definition at line 241 of file MaxCPlanarMaster.h.

◆ m_originalOneEdges

List<NodePair> ogdf::cluster_planarity::MaxCPlanarMaster::m_originalOneEdges
private

Definition at line 62 of file MaxCPlanarMaster.h.

◆ m_pCost

const EdgeArray<double>* ogdf::cluster_planarity::MaxCPlanarMaster::m_pCost
private

Definition at line 54 of file MaxCPlanarMaster.h.

◆ m_porta

bool ogdf::cluster_planarity::MaxCPlanarMaster::m_porta
private

If set to true, PORTA output is written in a file.

Definition at line 318 of file MaxCPlanarMaster.h.

◆ m_repairStat

ArrayBuffer<int> ogdf::cluster_planarity::MaxCPlanarMaster::m_repairStat
private

Definition at line 267 of file MaxCPlanarMaster.h.

◆ m_solutionGraph

GraphCopy* ogdf::cluster_planarity::MaxCPlanarMaster::m_solutionGraph
private

Definition at line 59 of file MaxCPlanarMaster.h.

◆ m_solvesLP

int ogdf::cluster_planarity::MaxCPlanarMaster::m_solvesLP
private

Definition at line 257 of file MaxCPlanarMaster.h.

◆ m_strongConstraintViolation

double ogdf::cluster_planarity::MaxCPlanarMaster::m_strongConstraintViolation
private

Definition at line 242 of file MaxCPlanarMaster.h.

◆ m_strongVariableViolation

double ogdf::cluster_planarity::MaxCPlanarMaster::m_strongVariableViolation
private

Definition at line 243 of file MaxCPlanarMaster.h.

◆ m_useDefaultCutPool

bool ogdf::cluster_planarity::MaxCPlanarMaster::m_useDefaultCutPool
private

Defines if the ABACUS default cut pool or the separate Connectivity and Kuratowski constraint pools are used.

Definition at line 292 of file MaxCPlanarMaster.h.

◆ m_usePerturbation

bool ogdf::cluster_planarity::MaxCPlanarMaster::m_usePerturbation
private

Definition at line 232 of file MaxCPlanarMaster.h.

◆ m_varsAdded

int ogdf::cluster_planarity::MaxCPlanarMaster::m_varsAdded
private

Definition at line 259 of file MaxCPlanarMaster.h.

◆ m_varsBranch

int ogdf::cluster_planarity::MaxCPlanarMaster::m_varsBranch
private

Definition at line 265 of file MaxCPlanarMaster.h.

◆ m_varsCut

int ogdf::cluster_planarity::MaxCPlanarMaster::m_varsCut
private

Definition at line 262 of file MaxCPlanarMaster.h.

◆ m_varsInit

int ogdf::cluster_planarity::MaxCPlanarMaster::m_varsInit
private

Definition at line 258 of file MaxCPlanarMaster.h.

◆ m_varsKura

int ogdf::cluster_planarity::MaxCPlanarMaster::m_varsKura
private

Definition at line 263 of file MaxCPlanarMaster.h.

◆ m_varsMax

int ogdf::cluster_planarity::MaxCPlanarMaster::m_varsMax
private

Definition at line 261 of file MaxCPlanarMaster.h.

◆ m_varsPotential

int ogdf::cluster_planarity::MaxCPlanarMaster::m_varsPotential
private

Definition at line 260 of file MaxCPlanarMaster.h.

◆ m_varsPrice

int ogdf::cluster_planarity::MaxCPlanarMaster::m_varsPrice
private

Definition at line 264 of file MaxCPlanarMaster.h.


The documentation for this class was generated from the following file: