Add tuner components
[satune.git] / src / Tuner / multituner.h
index fffc5c26affed1e54fc81283c2790a4b714e0ef9..f14dbccf47341341ea89f1782bfe82ffdb2cd57e 100644 (file)
@@ -20,9 +20,10 @@ private:
 class TunerRecord {
 public:
        TunerRecord(SearchTuner *_tuner) : tuner(_tuner) {}
-
+       SearchTuner *getTuner() {return tuner;}
 private:
        SearchTuner *tuner;
+       Vector<Problem *> problems;
        friend class MultiTuner;
 };
 
@@ -32,12 +33,15 @@ public:
        ~MultiTuner();
        void addProblem(const char *filename);
        void addTuner(SearchTuner *tuner);
-       virtual void tune();
+       void tune();
+       void tuneK();
        CMEMALLOC;
 protected:
        long long evaluate(Problem *problem, SearchTuner *tuner);
        double evaluateAll(SearchTuner *tuner);
        SearchTuner *mutateTuner(SearchTuner *oldTuner, uint k);
+       void mapProblemsToTuners(Vector<TunerRecord *> *tunerV);
+
        Vector<Problem *> problems;
        Vector<TunerRecord *> tuners;
        uint budget;