C:/Programme/home/Administrator/CD/stableSetCode/MaxCliquesSeparator.hh

Go to the documentation of this file.
00001 
00002 //
00003 //  Module           : MaxCliquesSeparator.hh
00004 //  Description      : Exact clique separation.
00005 //  Author           : Steffen Rebennack
00006 //  Email            : srebenac@ix.urz.uni-heidelberg.de;
00007 //                     steffen.rebennack@web.de
00008 //  Copyright        : (C) 2006 by the University of Heidelberg
00009 //  Created on       : Wed Apr 05 14:47:59 2006
00010 //  Last modified by : -
00011 //  Last modified on : - 
00012 //  Update count     : 0
00013 //
00015 //
00016 //  Date        Name            Changes/Extensions
00017 //  ----        ----            ------------------
00018 //
00020 
00021 #ifndef MAX_CLIQUES_SEPARATOR_HH
00022 #define MAX_CLIQUES_SEPARATOR_HH
00023 
00024 #include <abacus/separator.h>
00025 #include <vector>
00026 
00027 using namespace std;
00028 
00029 class Clique;
00030 class Graph;
00031 class StableSetLPSolution;
00032 class StableSetMaster;
00033 
00034 
00035 
00039 class MaxCliquesSeparator: public ABA_SEPARATOR <ABA_CONSTRAINT, ABA_VARIABLE> {
00040 
00041 public:
00042 
00043     // -------------------------------------------------------------------------
00044     // ------------- M e t h o d s  ( p u b l i c ) ----------------------------
00045     // -------------------------------------------------------------------------
00046 
00055     MaxCliquesSeparator(ABA_MASTER *master, StableSetLPSolution *solution,
00056                         Graph *theGraph, Clique *clique);
00057 
00061     ~MaxCliquesSeparator();
00062 
00067     virtual void separate();
00068 
00069 
00070 private:
00071 
00072     // -------------------------------------------------------------------------
00073     // ------------- M e t h o d s  ( p r i v a t e ) --------------------------
00074     // -------------------------------------------------------------------------
00075 
00084     bool getNextClique(vector<int> *nodesOfClique) const;
00085 
00093     StableSetMaster *stableSetMaster();
00094 
00095 
00096     // -------------------------------------------------------------------------
00097     // ------------- V a r i a b l e s  ( p r i v a t e ) ----------------------
00098     // -------------------------------------------------------------------------
00099 
00103     ABA_MASTER *master_;
00104 
00108     StableSetLPSolution *lpSolution;
00109 
00113     Graph *itsGraph;
00114 
00119     Clique *maxCliques;
00120 
00121 };
00122 
00123 #endif
00124 
00125 

Generated on Fri Apr 28 15:49:59 2006 for Branch and Cut algorithm for the Maximum Stable Set Problem by  doxygen 1.4.6-NO