00001
00027 #ifndef _RouletteSelection_h
00028 #define _RouletteSelection_h
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 #include "SelectionMethod.h"
00039
00040
00041
00042
00043
00044 class RouletteSelection
00045 : public SelectionMethod
00046 {
00047 public:
00048
00049
00052 ~RouletteSelection(void);
00053
00054
00055
00056
00059 virtual std::auto_ptr<SelectionMethod> Clone() const;
00060
00070 virtual void Select(Population& population,
00071 double partOfPopulationToLeave,
00072 EvolutionaryMethodIteration& iteration) const;
00073
00074
00075
00080 virtual wxString ToString() const;
00081
00086 virtual wxString Name() const;
00087
00088
00089
00090 protected:
00091 private:
00092
00095 RouletteSelection(void);
00096
00101 RouletteSelection(const RouletteSelection& from);
00102
00105 static RouletteSelection mRouletteSelection;
00108 static const wxString mName;
00109
00110 };
00111
00112
00113
00114
00115
00116
00117
00118 #endif // _RouletteSelection_h