Limiting satune timeout
[satune.git] / src / Tuner / kmeanstuner.h
1 /*
2  * To change this license header, choose License Headers in Project Properties.
3  * To change this template file, choose Tools | Templates
4  * and open the template in the editor.
5  */
6
7 /*
8  * File:   kmeanstuner.h
9  * Author: hamed
10  *
11  * Created on December 19, 2018, 4:16 PM
12  */
13
14 #ifndef KMEANSTUNER_H
15 #define KMEANSTUNER_H
16
17 #include "basictuner.h"
18
19
20 class KMeansTuner : public BasicTuner {
21 public:
22         KMeansTuner(uint budget, uint rounds, uint timeout );
23         virtual ~KMeansTuner();
24         void tune();
25 private:
26         double evaluateAll(TunerRecord *tuner);
27         void mapProblemsToTuners(Vector<TunerRecord *> *tunerV);
28         void improveTuners(Vector<TunerRecord *> *tunerV);
29         TunerRecord *tune(TunerRecord *tuner);
30         uint rounds;
31 };
32
33 #endif/* KMEANSTUNER_H */
34