toulbar2
autotuning2.h
1 /* Reglage automatique d'un algorithme à un paramètre */
4 class Tuning {
5 public:
6  int param;
7  int parammin;
8  int parammax;
9  int parambest;
10  int paramdico1;
11  int paramdico2;
12  int boundmin;
13  int boundmax;
14  double value;
15  double valuemin;
16  double valuemax;
17  double valuebest;
18  double valuedico1;
19  double valuedico2;
20  int seed;
21  int nbtries;
22  int maxtuning;
23  int trynumber;
24  int stop;
25  float referencetime;
26  virtual int firsttry();
27  Tuning(int pinit, int seed1, int nbessai, int maxtun, int bmin, int bmax);
28  virtual void run(LSAlgorithm* algo, OpProblem* problem, Configuration** configuration);
29  virtual void onerun(OpProblem* problem, LSAlgorithm* algo, Configuration** population);
30  virtual void onerunparam(OpProblem* problem, LSAlgorithm* algo, Configuration** population, int param);
31  void oneparameterwrite(LSAlgorithm* algo, int parameter);
32  virtual int end();
33 };
34 
35 void autosolving(LSAlgorithm* algo, Configuration** configuration, OpProblem* problem, int npb, int graine1, int nbessais, double maxtime, int initwalklength);
36 int autotuning(LSAlgorithm* algo, Configuration** population, OpProblem* problem, int graine1, int nbessais);
37 int endoslve(double maxtime);
38 
39 /* Réglage automatique d'un algorithme à deux paramètres */
41 class DoubleTuning : public Tuning {
42 public:
43  int param2min;
44  int param2max;
45  int param2best;
46  int param2dico1;
47  int param2dico2;
48  int bound2min;
49  int bound2max;
50  double value2;
51  double value2min;
52  double value2max;
53  double value2best;
54  double value2dico1;
55  double value2dico2;
56  int trynumber1;
57  int maxtuning2;
58  int firsttry();
59  DoubleTuning(int pinit1, int pinit2, int seed1, int nbessai, int maxtun, int maxtun2, int bmin, int b2min, int bmax, int b2max);
60  void run(LSAlgorithm* algo, OpProblem* problem, Configuration** configuration);
61  void onerun2param(OpProblem* problem, LSAlgorithm* algo, Configuration** configuration, int parameter1, int parameter2);
62  void simplerun(LSAlgorithm* algo, OpProblem* problem, Configuration** configuration, int parameter);
63  void doubleparameterwrite(LSAlgorithm* algo, int parameter1, int parameter2);
64 };
65 
66 void autosolving2(LSAlgorithm* algo, Configuration** configuration, OpProblem* problem, int npb, int graine1, int nbessais, double maxtime, int initwalklength);
67 void autosolving1(LSAlgorithm* algo, Configuration** configuration, OpProblem* problem, int npb, int graine1, int nbessais, double maxtime, int initwalklength);
68 
69 void autotuning2(LSAlgorithm* algo, Configuration** population, OpProblem* problem, int graine1, int nbessais, int&
70  parameter1,
71  int& parameter2, int tuningwalkrate, int tuningmaxtries);
72 int endoslve(double maxtime);
Definition: incop.h:394
Definition: incop.h:219
Definition: incop.h:82
Definition: autotuning2.h:4
Definition: autotuning2.h:41