diff options
Diffstat (limited to 'src/engine/machina/Evolver.hpp')
-rw-r--r-- | src/engine/machina/Evolver.hpp | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/src/engine/machina/Evolver.hpp b/src/engine/machina/Evolver.hpp index 17fae05..e14fc4a 100644 --- a/src/engine/machina/Evolver.hpp +++ b/src/engine/machina/Evolver.hpp @@ -17,41 +17,41 @@ #ifndef MACHINA_EVOLVER_HPP #define MACHINA_EVOLVER_HPP -#include "eugene/GAImpl.hpp" +#include "eugene/GA.hpp" +#include "eugene/Random.hpp" #include "machina/types.hpp" #include "raul/Thread.hpp" #include "raul/TimeStamp.hpp" +#include "Machine.hpp" #include "Schrodinbit.hpp" -namespace Eugene { -template<typename G> -class HybridMutation; +namespace eugene { +template<typename G> class HybridMutation; } namespace machina { -class Machine; class Problem; -class Evolver - : public Raul::Thread +class Evolver : public Raul::Thread { public: - Evolver(Raul::TimeUnit unit, - const string& target_midi, - SPtr<Machine> seed); + Evolver(Raul::TimeUnit unit, + const std::string& target_midi, + SPtr<Machine> seed); void seed(SPtr<Machine> parent); bool improvement() { return _improvement; } - SPtr<const Machine> best() { return _ga->best(); } + const Machine& best() { return _ga->best(); } - typedef Eugene::GAImpl<Machine> MachinaGA; + typedef eugene::GA<Machine> MachinaGA; private: void _run(); + eugene::Random _rng; SPtr<MachinaGA> _ga; SPtr<Problem> _problem; float _seed_fitness; |