aboutsummaryrefslogtreecommitdiffstats
path: root/src/engine/machina/Evolver.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/machina/Evolver.hpp')
-rw-r--r--src/engine/machina/Evolver.hpp24
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;