StableSetStatistics Class Reference

#include <StableSetStatistics.hh>

List of all members.

Public Member Functions

 StableSetStatistics ()
 ~StableSetStatistics ()
void edgeInequalitiesCut (int num)
void poolSeparationCut (int num)
void maxCliquesMemoryCut (int num)
void oddCyclesCut (int num)
void liftedOddCyclesCut (int num)
void exactCliquesCut (int num)
void cliqueHeuristicsCut (int num)
void edgeProjectionCut (int num)
void localCutCut (int num)
void modKCut (int num)
void largeCutCut (int num)
void setDualBound (double val)
void roundingHeuristics ()
void improvementHeuristics ()
void solutionFound (int index)
void setAlphaRoot (int alpha)
int getEdgeInequalitiesCut () const
int getPoolSeparationCut () const
int getMaxCliquesMemoryCut () const
int getOddCyclesCut () const
int getLiftedOddCyclesCut () const
int getExactCliquesCut () const
int getCliqueHeuristicsCut () const
int getEdgeProjectionCut () const
int getLocalCutCut () const
int getModKCut () const
int getLargeCut () const
int getRoundedSolutions () const
int getImprovedSolutions () const
int getAlphaRoot () const
double getDualBound () const
char * solutionWasFoundBy () const


Detailed Description

This class provides the statistics for the stable set solver.

Definition at line 29 of file StableSetStatistics.hh.


Constructor & Destructor Documentation

StableSetStatistics::StableSetStatistics  ) 
 

Constructor.

Definition at line 36 of file StableSetStatistics.cpp.

00036                                         :
00037     edgeInequalities(0),
00038     poolSeparationCuts(0),
00039     maxCliquesMemoryCuts(0),
00040     oddCyclesCuts(0),
00041     liftedOddCyclesCuts(0),
00042     exactCliquesCuts(0),
00043     cliqueHeuristicsCuts(0),
00044     edgeProjectionCuts(0),
00045     localCutCuts(0),
00046     modKCuts(0),
00047     dualBoundOfRoot(0),
00048     largeCuts(0),
00049     roundedSolutions(0),
00050     improvedSolutions(0),
00051     solutionFoundBy(-1),
00052     alphaRoot(-1)
00053 {
00054 }

StableSetStatistics::~StableSetStatistics  ) 
 

Destructor

Definition at line 60 of file StableSetStatistics.cpp.

00060                                           {
00061 }


Member Function Documentation

void StableSetStatistics::cliqueHeuristicsCut int  num  ) 
 

Increase number of computed maximal cliques (heuristics).

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 117 of file StableSetStatistics.cpp.

Referenced by StableSetSub::separate().

00117                                                      {
00118     cliqueHeuristicsCuts = num < 0 ? cliqueHeuristicsCuts 
00119                                    : cliqueHeuristicsCuts + num;
00120 }

void StableSetStatistics::edgeInequalitiesCut int  num  ) 
 

Increase counter for the computed edge inequalities.

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 67 of file StableSetStatistics.cpp.

00067                                                      {
00068     edgeInequalities = num < 0 ? edgeInequalities : edgeInequalities + num;
00069 }

void StableSetStatistics::edgeProjectionCut int  num  ) 
 

Increase number of computed cuts according to edge projection.

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 126 of file StableSetStatistics.cpp.

00126                                                    {
00127     edgeProjectionCuts = num < 0 ? edgeProjectionCuts
00128                                  : edgeProjectionCuts + num;
00129 }

void StableSetStatistics::exactCliquesCut int  num  ) 
 

Increase number of computed maximal cliques (exact).

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 109 of file StableSetStatistics.cpp.

00109                                                  {
00110     exactCliquesCuts = num < 0 ? exactCliquesCuts : exactCliquesCuts + num;
00111 }

int StableSetStatistics::getAlphaRoot  )  const
 

Get number.

Parameters:
void 
Returns:
Maximal weight of a stable set computed in the root.

Definition at line 298 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00298                                             {
00299    return alphaRoot;
00300 }

int StableSetStatistics::getCliqueHeuristicsCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed clique inequalities.

Definition at line 244 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00244                                                       {
00245     return cliqueHeuristicsCuts;
00246 }

double StableSetStatistics::getDualBound  )  const
 

Get number.

Parameters:
void 
Returns:
Get dual bound of the root.

Definition at line 306 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00306                                                {
00307    return dualBoundOfRoot;
00308 }

int StableSetStatistics::getEdgeInequalitiesCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed edge inequalities.

Definition at line 197 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00197                                                       {
00198     return edgeInequalities;
00199 }

int StableSetStatistics::getEdgeProjectionCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed cuts from edge projection.

Definition at line 252 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00252                                                     {
00253     return edgeProjectionCuts;
00254 }

int StableSetStatistics::getExactCliquesCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed cliques due to exact separation.

Definition at line 236 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00236                                                   {
00237     return exactCliquesCuts;
00238 } 

int StableSetStatistics::getImprovedSolutions  )  const
 

Get number.

Parameters:
void 
Returns:
Number of improved solutions.

Definition at line 290 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00290                                                     {
00291     return improvedSolutions;
00292 }

int StableSetStatistics::getLargeCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed large rank inequalities.

Definition at line 275 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00275                                            {
00276     return largeCuts;
00277 }

int StableSetStatistics::getLiftedOddCyclesCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of lifted odd cycles.

Definition at line 228 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00228                                                      {
00229     return liftedOddCyclesCuts;
00230 }

int StableSetStatistics::getLocalCutCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed local cuts.

Definition at line 267 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00267                                               {
00268     return localCutCuts;
00269 }

int StableSetStatistics::getMaxCliquesMemoryCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed cliques from memory.

Definition at line 213 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00213                                                       {
00214     return maxCliquesMemoryCuts;
00215 }

int StableSetStatistics::getModKCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed mod-k cuts.

Definition at line 259 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00259                                           {
00260     return modKCuts;
00261 }

int StableSetStatistics::getOddCyclesCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed odd cycles.

Definition at line 220 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00220                                                {
00221     return oddCyclesCuts;
00222 }

int StableSetStatistics::getPoolSeparationCut  )  const
 

Get number.

Parameters:
void 
Returns:
Number of computed inequalities from pool.

Definition at line 205 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00205                                                     {
00206     return poolSeparationCuts;
00207 }

int StableSetStatistics::getRoundedSolutions  )  const
 

Get number.

Parameters:
void 
Returns:
Number of solutions found by rounding heuristics.

Definition at line 283 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00283                                                    {
00284     return roundedSolutions;
00285 }

void StableSetStatistics::improvementHeuristics  ) 
 

Increase counter (by value one) for the solutions found by the improvement heuristics.

Parameters:
void. 
Returns:
void

Definition at line 173 of file StableSetStatistics.cpp.

00173                                                 {
00174     improvedSolutions++;
00175 }

void StableSetStatistics::largeCutCut int  num  ) 
 

Increase number of computed large cuts (rank inequalities).

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 149 of file StableSetStatistics.cpp.

00149                                              {
00150     largeCuts = num < 0 ? largeCuts : largeCuts + num;
00151 }

void StableSetStatistics::liftedOddCyclesCut int  num  ) 
 

Increase number of lifted odd cyles (triangles).

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 100 of file StableSetStatistics.cpp.

Referenced by StableSetSub::separate().

00100                                                     {
00101     liftedOddCyclesCuts = num < 0 ? liftedOddCyclesCuts
00102                                   : liftedOddCyclesCuts + num;
00103 }

void StableSetStatistics::localCutCut int  num  ) 
 

Increase number of local cuts.

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 135 of file StableSetStatistics.cpp.

00135                                              {
00136     localCutCuts = num < 0 ? localCutCuts : localCutCuts + num;
00137 }

void StableSetStatistics::maxCliquesMemoryCut int  num  ) 
 

Increase generated maximal cliques from memory.

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 83 of file StableSetStatistics.cpp.

00083                                                      {
00084     maxCliquesMemoryCuts = num < 0 ? maxCliquesMemoryCuts
00085                                    : maxCliquesMemoryCuts + num;
00086 }

void StableSetStatistics::modKCut int  num  ) 
 

Increase number of computed mod-k cuts.

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 142 of file StableSetStatistics.cpp.

00142                                          {
00143     modKCuts = num < 0 ? modKCuts : modKCuts + num;
00144 }

void StableSetStatistics::oddCyclesCut int  num  ) 
 

Increase number of odd cyles found.

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 92 of file StableSetStatistics.cpp.

Referenced by StableSetSub::separate().

00092                                               {
00093     oddCyclesCuts = num < 0 ? oddCyclesCuts : oddCyclesCuts + num;
00094 }

void StableSetStatistics::poolSeparationCut int  num  ) 
 

Increase number of cuts from pool separation.

Parameters:
num Increase counter with that number.
Returns:
void

Definition at line 75 of file StableSetStatistics.cpp.

Referenced by StableSetSub::separate().

00075                                                    {
00076     poolSeparationCuts = num < 0 ? poolSeparationCuts : poolSeparationCuts +num;
00077 }

void StableSetStatistics::roundingHeuristics  ) 
 

Increase counter (by value one) for the solutions found by the rounding heuristics.

Parameters:
void. 
Returns:
void

Definition at line 165 of file StableSetStatistics.cpp.

00165                                              {
00166     roundedSolutions++;
00167 }

void StableSetStatistics::setAlphaRoot int  alpha  ) 
 

Store the weight of the best stable set computed in the root.

Parameters:
alpha Weight of a stable set.
Returns:
void

Definition at line 189 of file StableSetStatistics.cpp.

Referenced by StableSetSub::generateBranchRules().

00189                                                 {
00190     alphaRoot = alpha;
00191 }

void StableSetStatistics::setDualBound double  val  ) 
 

Dual bound of the root.

Parameters:
val Dual bound.
Returns:
void

Definition at line 157 of file StableSetStatistics.cpp.

Referenced by StableSetSub::generateBranchRules().

00157                                                  {
00158     dualBoundOfRoot = val;
00159 }

void StableSetStatistics::solutionFound int  index  ) 
 

Stable set solution was found by ...

Parameters:
index Indicate who has found the solution.
Returns:
void

Definition at line 181 of file StableSetStatistics.cpp.

00181                                                  {
00182     solutionFoundBy = index;
00183 }

char * StableSetStatistics::solutionWasFoundBy  )  const
 

Get number.

Parameters:
void 
Returns:
Who found the solution.

Definition at line 314 of file StableSetStatistics.cpp.

Referenced by StableSetMaster::output().

00314                                                     {
00315     
00316     char *methods[] = {"integer solution", "rounding heuristics",
00317                        "improvement heuristics", "preprocessing"};
00318 
00319     if (solutionFoundBy < 0 || solutionFoundBy > 3) {
00320          return "-1";
00321     }
00322 
00323     return methods[solutionFoundBy];
00324 }


The documentation for this class was generated from the following files:
Generated on Fri Apr 28 15:50:01 2006 for Branch and Cut algorithm for the Maximum Stable Set Problem by  doxygen 1.4.6-NO