00001 00020 #ifndef _COMBINEDI_LS_H 00021 00022 #define _COMBINEDI_LS_H 1 00023 00024 #include <realea/common/ilocalsearch.h> 00025 #include <realea/common/pool.h> 00026 00027 namespace realea { 00028 00034 class CombinedLSbyImprovement : public ILocalSearch { 00035 private: 00036 00041 void setLSPool(void); 00042 00043 public: 00044 CombinedLSbyImprovement(Random *random); 00045 ~CombinedLSbyImprovement(void); 00051 void addLocalSearch(ILocalSearch *ls); 00052 00053 public: 00054 unsigned apply(ILSParameters *opt, tChromosomeReal &sol, tFitness &fitness, unsigned itera); 00055 ILSParameters *getInitOptions(tChromosomeReal &sol); 00056 00057 private: 00058 Pool m_pool; 00059 bool m_initpool; 00060 }; 00061 00062 }; 00063 00064 #endif