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

Go to the documentation of this file.
00001 
00002 //
00003 //  Module           : ImprovementHeuristic.hh
00004 //  Description      :
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 13:56:24 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 IMPROVEMENT_HEURISTIC_HH
00022 #define IMPROVEMENT_HEURISTIC_HH
00023 #include <vector>
00024 
00025 using namespace std;
00026 
00027 class ABA_MASTER;
00028 class Graph;
00029 class StableSetMaster;
00030 class StableSetStatistics;
00031 
00032 
00033 
00038 class ImprovementHeuristic {
00039 
00040 public:
00041 
00042     // -------------------------------------------------------------------------
00043     // ------------- M e t h o d s  ( p u b l i c ) ----------------------------
00044     // -------------------------------------------------------------------------
00045 
00054     ImprovementHeuristic(ABA_MASTER *master, Graph *theGraph,
00055                          StableSetStatistics *theStatistics);
00056 
00060     ~ImprovementHeuristic();
00061 
00069     int improve(double &value);
00070 
00071 
00072 private:
00073 
00074     // -------------------------------------------------------------------------
00075     // ------------- M e t h o d s  ( p r i v a t e ) --------------------------
00076     // -------------------------------------------------------------------------
00077     
00091     bool calculateDistance(int start, int end, int &v11, int &v12, int &v21,
00092                            int &v22) const;
00093 
00101     void testStableSet(vector<int> *stableSet);
00102 
00110     StableSetMaster *stableSetMaster();
00111 
00112 
00113     // -------------------------------------------------------------------------
00114     // ------------- V a r i a b l e s  ( p r i v a t e ) ----------------------
00115     // -------------------------------------------------------------------------
00116 
00120     ABA_MASTER *master_;
00121 
00125     Graph *itsGraph;
00126 
00130     StableSetStatistics *itsStatistics;
00131 
00132 };
00133 
00134 #endif
00135 
00136 

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