00001 00006 #ifndef GENETIK_SELECTIONMETHOD 00007 #define GENETIK_SELECTIONMETHOD 00008 00009 #include "util/IllegalStateException.h" 00010 00011 namespace genetiK{ 00012 00013 class Population; 00014 class Individual; 00015 00023 class SelectionMethod 00024 { 00025 private: 00026 Population* population; 00027 00028 public: 00031 SelectionMethod(void); 00032 00035 virtual ~SelectionMethod(void); 00036 00040 virtual void init(Population* population){ this->population = population; } 00041 00049 virtual Individual* select()=0; 00050 00055 virtual Individual* getBest()=0; 00056 }; 00057 00058 } 00059 00060 #endif