Class _Dict¶
--
-
Defined in File IOHprofiler_configuration.h
-
diff --git a/docs/_build/doctrees/api/class___dict.doctree b/docs/_build/doctrees/api/class___dict.doctree deleted file mode 100644 index b5e90c090..000000000 Binary files a/docs/_build/doctrees/api/class___dict.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_attractive___sector.doctree b/docs/_build/doctrees/api/class_attractive___sector.doctree deleted file mode 100644 index 55269008f..000000000 Binary files a/docs/_build/doctrees/api/class_attractive___sector.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_b_b_o_b__suite.doctree b/docs/_build/doctrees/api/class_b_b_o_b__suite.doctree deleted file mode 100644 index 59a21923c..000000000 Binary files a/docs/_build/doctrees/api/class_b_b_o_b__suite.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_bent___cigar.doctree b/docs/_build/doctrees/api/class_bent___cigar.doctree deleted file mode 100644 index 4631f0f44..000000000 Binary files a/docs/_build/doctrees/api/class_bent___cigar.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_bueche___rastrigin.doctree b/docs/_build/doctrees/api/class_bueche___rastrigin.doctree deleted file mode 100644 index 2503e2976..000000000 Binary files a/docs/_build/doctrees/api/class_bueche___rastrigin.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_coco___transformation___data.doctree b/docs/_build/doctrees/api/class_coco___transformation___data.doctree deleted file mode 100644 index 79840a879..000000000 Binary files a/docs/_build/doctrees/api/class_coco___transformation___data.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_concatenated___trap.doctree b/docs/_build/doctrees/api/class_concatenated___trap.doctree deleted file mode 100644 index e9295fae5..000000000 Binary files a/docs/_build/doctrees/api/class_concatenated___trap.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_different___powers.doctree b/docs/_build/doctrees/api/class_different___powers.doctree deleted file mode 100644 index 95cfec851..000000000 Binary files a/docs/_build/doctrees/api/class_different___powers.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_discus.doctree b/docs/_build/doctrees/api/class_discus.doctree deleted file mode 100644 index 18d942d67..000000000 Binary files a/docs/_build/doctrees/api/class_discus.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_ellipsoid.doctree b/docs/_build/doctrees/api/class_ellipsoid.doctree deleted file mode 100644 index 762898eba..000000000 Binary files a/docs/_build/doctrees/api/class_ellipsoid.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_ellipsoid___rotated.doctree b/docs/_build/doctrees/api/class_ellipsoid___rotated.doctree deleted file mode 100644 index b81604385..000000000 Binary files a/docs/_build/doctrees/api/class_ellipsoid___rotated.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_gallagher101.doctree b/docs/_build/doctrees/api/class_gallagher101.doctree deleted file mode 100644 index 1afbd6bd2..000000000 Binary files a/docs/_build/doctrees/api/class_gallagher101.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_gallagher21.doctree b/docs/_build/doctrees/api/class_gallagher21.doctree deleted file mode 100644 index 791629099..000000000 Binary files a/docs/_build/doctrees/api/class_gallagher21.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_griewank___rosen_brock.doctree b/docs/_build/doctrees/api/class_griewank___rosen_brock.doctree deleted file mode 100644 index 46455778c..000000000 Binary files a/docs/_build/doctrees/api/class_griewank___rosen_brock.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_i_o_hprofiler__configuration.doctree b/docs/_build/doctrees/api/class_i_o_hprofiler__configuration.doctree deleted file mode 100644 index d9979be9b..000000000 Binary files a/docs/_build/doctrees/api/class_i_o_hprofiler__configuration.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_i_o_hprofiler__csv__logger.doctree b/docs/_build/doctrees/api/class_i_o_hprofiler__csv__logger.doctree deleted file mode 100644 index c7df07574..000000000 Binary files a/docs/_build/doctrees/api/class_i_o_hprofiler__csv__logger.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_i_o_hprofiler__experimenter.doctree b/docs/_build/doctrees/api/class_i_o_hprofiler__experimenter.doctree deleted file mode 100644 index 61d604ee0..000000000 Binary files a/docs/_build/doctrees/api/class_i_o_hprofiler__experimenter.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_i_o_hprofiler__observer.doctree b/docs/_build/doctrees/api/class_i_o_hprofiler__observer.doctree deleted file mode 100644 index b580ec1ef..000000000 Binary files a/docs/_build/doctrees/api/class_i_o_hprofiler__observer.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_i_o_hprofiler__problem.doctree b/docs/_build/doctrees/api/class_i_o_hprofiler__problem.doctree deleted file mode 100644 index 6c952ad56..000000000 Binary files a/docs/_build/doctrees/api/class_i_o_hprofiler__problem.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_i_o_hprofiler__random.doctree b/docs/_build/doctrees/api/class_i_o_hprofiler__random.doctree deleted file mode 100644 index 6f99cf1b6..000000000 Binary files a/docs/_build/doctrees/api/class_i_o_hprofiler__random.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_i_o_hprofiler__suite.doctree b/docs/_build/doctrees/api/class_i_o_hprofiler__suite.doctree deleted file mode 100644 index cd91d6a24..000000000 Binary files a/docs/_build/doctrees/api/class_i_o_hprofiler__suite.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_i_o_hprofiler__transformation.doctree b/docs/_build/doctrees/api/class_i_o_hprofiler__transformation.doctree deleted file mode 100644 index cdf7688ed..000000000 Binary files a/docs/_build/doctrees/api/class_i_o_hprofiler__transformation.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_ising___ring.doctree b/docs/_build/doctrees/api/class_ising___ring.doctree deleted file mode 100644 index cbc236650..000000000 Binary files a/docs/_build/doctrees/api/class_ising___ring.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_ising___torus.doctree b/docs/_build/doctrees/api/class_ising___torus.doctree deleted file mode 100644 index 3d26b5992..000000000 Binary files a/docs/_build/doctrees/api/class_ising___torus.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_ising___triangular.doctree b/docs/_build/doctrees/api/class_ising___triangular.doctree deleted file mode 100644 index 8dfa2cf6b..000000000 Binary files a/docs/_build/doctrees/api/class_ising___triangular.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_katsuura.doctree b/docs/_build/doctrees/api/class_katsuura.doctree deleted file mode 100644 index 9f24f14e0..000000000 Binary files a/docs/_build/doctrees/api/class_katsuura.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_l_a_b_s.doctree b/docs/_build/doctrees/api/class_l_a_b_s.doctree deleted file mode 100644 index 85dbf32bb..000000000 Binary files a/docs/_build/doctrees/api/class_l_a_b_s.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_leading_ones.doctree b/docs/_build/doctrees/api/class_leading_ones.doctree deleted file mode 100644 index eba0a5d92..000000000 Binary files a/docs/_build/doctrees/api/class_leading_ones.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_leading_ones___dummy1.doctree b/docs/_build/doctrees/api/class_leading_ones___dummy1.doctree deleted file mode 100644 index 2c9ee98d5..000000000 Binary files a/docs/_build/doctrees/api/class_leading_ones___dummy1.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_leading_ones___dummy2.doctree b/docs/_build/doctrees/api/class_leading_ones___dummy2.doctree deleted file mode 100644 index d3eef484d..000000000 Binary files a/docs/_build/doctrees/api/class_leading_ones___dummy2.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_leading_ones___epistasis.doctree b/docs/_build/doctrees/api/class_leading_ones___epistasis.doctree deleted file mode 100644 index 31527fd91..000000000 Binary files a/docs/_build/doctrees/api/class_leading_ones___epistasis.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_leading_ones___neutrality.doctree b/docs/_build/doctrees/api/class_leading_ones___neutrality.doctree deleted file mode 100644 index 19aa683ce..000000000 Binary files a/docs/_build/doctrees/api/class_leading_ones___neutrality.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_leading_ones___ruggedness1.doctree b/docs/_build/doctrees/api/class_leading_ones___ruggedness1.doctree deleted file mode 100644 index 2be7d3197..000000000 Binary files a/docs/_build/doctrees/api/class_leading_ones___ruggedness1.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_leading_ones___ruggedness2.doctree b/docs/_build/doctrees/api/class_leading_ones___ruggedness2.doctree deleted file mode 100644 index 3bd0c0028..000000000 Binary files a/docs/_build/doctrees/api/class_leading_ones___ruggedness2.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_leading_ones___ruggedness3.doctree b/docs/_build/doctrees/api/class_leading_ones___ruggedness3.doctree deleted file mode 100644 index 324faa362..000000000 Binary files a/docs/_build/doctrees/api/class_leading_ones___ruggedness3.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_linear.doctree b/docs/_build/doctrees/api/class_linear.doctree deleted file mode 100644 index 27e1bb77e..000000000 Binary files a/docs/_build/doctrees/api/class_linear.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_linear___slope.doctree b/docs/_build/doctrees/api/class_linear___slope.doctree deleted file mode 100644 index 1487242d0..000000000 Binary files a/docs/_build/doctrees/api/class_linear___slope.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_lunacek___bi___rastrigin.doctree b/docs/_build/doctrees/api/class_lunacek___bi___rastrigin.doctree deleted file mode 100644 index 6963e610b..000000000 Binary files a/docs/_build/doctrees/api/class_lunacek___bi___rastrigin.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_m_i_s.doctree b/docs/_build/doctrees/api/class_m_i_s.doctree deleted file mode 100644 index 26410ee14..000000000 Binary files a/docs/_build/doctrees/api/class_m_i_s.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_n_k___landscapes.doctree b/docs/_build/doctrees/api/class_n_k___landscapes.doctree deleted file mode 100644 index fa3b57e5c..000000000 Binary files a/docs/_build/doctrees/api/class_n_k___landscapes.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_n_queens.doctree b/docs/_build/doctrees/api/class_n_queens.doctree deleted file mode 100644 index 52f3cb137..000000000 Binary files a/docs/_build/doctrees/api/class_n_queens.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_one_max.doctree b/docs/_build/doctrees/api/class_one_max.doctree deleted file mode 100644 index 03ecb8b70..000000000 Binary files a/docs/_build/doctrees/api/class_one_max.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_one_max___dummy1.doctree b/docs/_build/doctrees/api/class_one_max___dummy1.doctree deleted file mode 100644 index 60bf73e21..000000000 Binary files a/docs/_build/doctrees/api/class_one_max___dummy1.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_one_max___dummy2.doctree b/docs/_build/doctrees/api/class_one_max___dummy2.doctree deleted file mode 100644 index e7353b382..000000000 Binary files a/docs/_build/doctrees/api/class_one_max___dummy2.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_one_max___epistasis.doctree b/docs/_build/doctrees/api/class_one_max___epistasis.doctree deleted file mode 100644 index de5911038..000000000 Binary files a/docs/_build/doctrees/api/class_one_max___epistasis.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_one_max___neutrality.doctree b/docs/_build/doctrees/api/class_one_max___neutrality.doctree deleted file mode 100644 index 6b3f42450..000000000 Binary files a/docs/_build/doctrees/api/class_one_max___neutrality.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_one_max___ruggedness1.doctree b/docs/_build/doctrees/api/class_one_max___ruggedness1.doctree deleted file mode 100644 index 7c903da4f..000000000 Binary files a/docs/_build/doctrees/api/class_one_max___ruggedness1.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_one_max___ruggedness2.doctree b/docs/_build/doctrees/api/class_one_max___ruggedness2.doctree deleted file mode 100644 index 66ab1664a..000000000 Binary files a/docs/_build/doctrees/api/class_one_max___ruggedness2.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_one_max___ruggedness3.doctree b/docs/_build/doctrees/api/class_one_max___ruggedness3.doctree deleted file mode 100644 index c9c16cf5a..000000000 Binary files a/docs/_build/doctrees/api/class_one_max___ruggedness3.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_p_b_o__suite.doctree b/docs/_build/doctrees/api/class_p_b_o__suite.doctree deleted file mode 100644 index 5c9d8033f..000000000 Binary files a/docs/_build/doctrees/api/class_p_b_o__suite.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_rastrigin.doctree b/docs/_build/doctrees/api/class_rastrigin.doctree deleted file mode 100644 index 48b920add..000000000 Binary files a/docs/_build/doctrees/api/class_rastrigin.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_rastrigin___rotated.doctree b/docs/_build/doctrees/api/class_rastrigin___rotated.doctree deleted file mode 100644 index bc4598187..000000000 Binary files a/docs/_build/doctrees/api/class_rastrigin___rotated.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_rosenbrock.doctree b/docs/_build/doctrees/api/class_rosenbrock.doctree deleted file mode 100644 index 6693e05ea..000000000 Binary files a/docs/_build/doctrees/api/class_rosenbrock.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_rosenbrock___rotated.doctree b/docs/_build/doctrees/api/class_rosenbrock___rotated.doctree deleted file mode 100644 index e750e1cfa..000000000 Binary files a/docs/_build/doctrees/api/class_rosenbrock___rotated.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_schaffers10.doctree b/docs/_build/doctrees/api/class_schaffers10.doctree deleted file mode 100644 index 0895e0db4..000000000 Binary files a/docs/_build/doctrees/api/class_schaffers10.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_schaffers1000.doctree b/docs/_build/doctrees/api/class_schaffers1000.doctree deleted file mode 100644 index a97151d08..000000000 Binary files a/docs/_build/doctrees/api/class_schaffers1000.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_schwefel.doctree b/docs/_build/doctrees/api/class_schwefel.doctree deleted file mode 100644 index 40fa7b8c7..000000000 Binary files a/docs/_build/doctrees/api/class_schwefel.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_sharp___ridge.doctree b/docs/_build/doctrees/api/class_sharp___ridge.doctree deleted file mode 100644 index ad96b91d3..000000000 Binary files a/docs/_build/doctrees/api/class_sharp___ridge.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_sphere.doctree b/docs/_build/doctrees/api/class_sphere.doctree deleted file mode 100644 index 66a397236..000000000 Binary files a/docs/_build/doctrees/api/class_sphere.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_step___ellipsoid.doctree b/docs/_build/doctrees/api/class_step___ellipsoid.doctree deleted file mode 100644 index 079caacb0..000000000 Binary files a/docs/_build/doctrees/api/class_step___ellipsoid.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_view_hierarchy.doctree b/docs/_build/doctrees/api/class_view_hierarchy.doctree deleted file mode 100644 index 2b5e348eb..000000000 Binary files a/docs/_build/doctrees/api/class_view_hierarchy.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_w___model___leading_ones.doctree b/docs/_build/doctrees/api/class_w___model___leading_ones.doctree deleted file mode 100644 index f3db8e053..000000000 Binary files a/docs/_build/doctrees/api/class_w___model___leading_ones.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_w___model___one_max.doctree b/docs/_build/doctrees/api/class_w___model___one_max.doctree deleted file mode 100644 index 02f04cca4..000000000 Binary files a/docs/_build/doctrees/api/class_w___model___one_max.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/class_weierstrass.doctree b/docs/_build/doctrees/api/class_weierstrass.doctree deleted file mode 100644 index 68a00d1a0..000000000 Binary files a/docs/_build/doctrees/api/class_weierstrass.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/classgeneric_generator.doctree b/docs/_build/doctrees/api/classgeneric_generator.doctree deleted file mode 100644 index 45054a88d..000000000 Binary files a/docs/_build/doctrees/api/classgeneric_generator.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/classregister_in_factory.doctree b/docs/_build/doctrees/api/classregister_in_factory.doctree deleted file mode 100644 index 4921b194b..000000000 Binary files a/docs/_build/doctrees/api/classregister_in_factory.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8cpp_1ad84318ad71c20e7b5a4af037e3a330d5.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__common_8cpp_1ad84318ad71c20e7b5a4af037e3a330d5.doctree deleted file mode 100644 index 21eda07d4..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8cpp_1ad84318ad71c20e7b5a4af037e3a330d5.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a16bc7f529c324e050561e97c82ab788d.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a16bc7f529c324e050561e97c82ab788d.doctree deleted file mode 100644 index 961f2a2ec..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a16bc7f529c324e050561e97c82ab788d.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a3d0780778ed0748fc4769d998edaf185.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a3d0780778ed0748fc4769d998edaf185.doctree deleted file mode 100644 index 83dad2c69..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a3d0780778ed0748fc4769d998edaf185.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a6109158b8a720c7e8b1bcc516682cddf.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a6109158b8a720c7e8b1bcc516682cddf.doctree deleted file mode 100644 index fa2733ba3..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1a6109158b8a720c7e8b1bcc516682cddf.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1ab4da29b2c029e05522638c638f1db25c.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1ab4da29b2c029e05522638c638f1db25c.doctree deleted file mode 100644 index ad9056550..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1ab4da29b2c029e05522638c638f1db25c.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1ad4d796b98c583d49e83adabd74a63bf6.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1ad4d796b98c583d49e83adabd74a63bf6.doctree deleted file mode 100644 index 3d589783b..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1ad4d796b98c583d49e83adabd74a63bf6.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1aebdf5dc0572ce5a3e8c957220f3e07c2.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1aebdf5dc0572ce5a3e8c957220f3e07c2.doctree deleted file mode 100644 index f81ec1ff5..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__common_8h_1aebdf5dc0572ce5a3e8c957220f3e07c2.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__configuration_8h_1a59bea9bfad99ad3e51f97667d7c5b18f.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__configuration_8h_1a59bea9bfad99ad3e51f97667d7c5b18f.doctree deleted file mode 100644 index 74c3f9daf..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__configuration_8h_1a59bea9bfad99ad3e51f97667d7c5b18f.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__configuration_8h_1ae310f74f793edeb882f0c2d8d8b50bb8.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__configuration_8h_1ae310f74f793edeb882f0c2d8d8b50bb8.doctree deleted file mode 100644 index 51efa55d4..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__configuration_8h_1ae310f74f793edeb882f0c2d8d8b50bb8.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a25a3b1332e15355d3ce940b2b9711824.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a25a3b1332e15355d3ce940b2b9711824.doctree deleted file mode 100644 index a6819d7f9..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a25a3b1332e15355d3ce940b2b9711824.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a2de21eb687a4fd2ea6c1d5d7fb3a6e8d.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a2de21eb687a4fd2ea6c1d5d7fb3a6e8d.doctree deleted file mode 100644 index 102b6b025..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a2de21eb687a4fd2ea6c1d5d7fb3a6e8d.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a2f39e943462a370926c15bac5919f3ba.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a2f39e943462a370926c15bac5919f3ba.doctree deleted file mode 100644 index 4e394d3e2..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a2f39e943462a370926c15bac5919f3ba.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a4a9daae28c93665de8531ea553a1a3eb.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a4a9daae28c93665de8531ea553a1a3eb.doctree deleted file mode 100644 index 77ef8e197..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a4a9daae28c93665de8531ea553a1a3eb.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a61b1f3d36ae91d52664e0d8019b0552b.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a61b1f3d36ae91d52664e0d8019b0552b.doctree deleted file mode 100644 index 7600b4229..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a61b1f3d36ae91d52664e0d8019b0552b.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a6db8e7e89b4ccba78b78bae2fa4cae16.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a6db8e7e89b4ccba78b78bae2fa4cae16.doctree deleted file mode 100644 index b0b120956..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a6db8e7e89b4ccba78b78bae2fa4cae16.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a95e2e1ac04fcb791dd078a8a64d84167.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a95e2e1ac04fcb791dd078a8a64d84167.doctree deleted file mode 100644 index f024d31ca..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1a95e2e1ac04fcb791dd078a8a64d84167.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1aae7a5b8cad1936da10175ab1d6cb3e1a.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1aae7a5b8cad1936da10175ab1d6cb3e1a.doctree deleted file mode 100644 index 5eaafa87d..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1aae7a5b8cad1936da10175ab1d6cb3e1a.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1ab23f1b3c64f3eb9b6321ad80a3aa700f.doctree b/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1ab23f1b3c64f3eb9b6321ad80a3aa700f.doctree deleted file mode 100644 index 24efe1630..000000000 Binary files a/docs/_build/doctrees/api/define__i_o_hprofiler__random_8h_1ab23f1b3c64f3eb9b6321ad80a3aa700f.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define_f__weierstrass_8hpp_1a18749745931e068554050348303e1c0d.doctree b/docs/_build/doctrees/api/define_f__weierstrass_8hpp_1a18749745931e068554050348303e1c0d.doctree deleted file mode 100644 index 060b3c27d..000000000 Binary files a/docs/_build/doctrees/api/define_f__weierstrass_8hpp_1a18749745931e068554050348303e1c0d.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/define_suite__bbob__legacy__code_8hpp_1a30f5ab8c8eebf32a5ef95bf3d5297c6d.doctree b/docs/_build/doctrees/api/define_suite__bbob__legacy__code_8hpp_1a30f5ab8c8eebf32a5ef95bf3d5297c6d.doctree deleted file mode 100644 index 6e7f3bc8e..000000000 Binary files a/docs/_build/doctrees/api/define_suite__bbob__legacy__code_8hpp_1a30f5ab8c8eebf32a5ef95bf3d5297c6d.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src.doctree b/docs/_build/doctrees/api/dir_src.doctree deleted file mode 100644 index 9e0ca8c54..000000000 Binary files a/docs/_build/doctrees/api/dir_src.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Problems.doctree b/docs/_build/doctrees/api/dir_src_Problems.doctree deleted file mode 100644 index b1f00b7c3..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Problems.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Problems_BBOB.doctree b/docs/_build/doctrees/api/dir_src_Problems_BBOB.doctree deleted file mode 100644 index 268c6f2ba..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Problems_BBOB.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Problems_BBOB_bbob_common_used_functions.doctree b/docs/_build/doctrees/api/dir_src_Problems_BBOB_bbob_common_used_functions.doctree deleted file mode 100644 index 725924182..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Problems_BBOB_bbob_common_used_functions.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Problems_PBO.doctree b/docs/_build/doctrees/api/dir_src_Problems_PBO.doctree deleted file mode 100644 index 5341f705d..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Problems_PBO.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Problems_WModel.doctree b/docs/_build/doctrees/api/dir_src_Problems_WModel.doctree deleted file mode 100644 index f078ba89a..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Problems_WModel.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Problems_common_used_functions.doctree b/docs/_build/doctrees/api/dir_src_Problems_common_used_functions.doctree deleted file mode 100644 index 781d1bc50..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Problems_common_used_functions.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Suites.doctree b/docs/_build/doctrees/api/dir_src_Suites.doctree deleted file mode 100644 index 7f3de9d6c..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Suites.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Template.doctree b/docs/_build/doctrees/api/dir_src_Template.doctree deleted file mode 100644 index 7eab22a52..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Template.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Template_Experiments.doctree b/docs/_build/doctrees/api/dir_src_Template_Experiments.doctree deleted file mode 100644 index f94dc2f82..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Template_Experiments.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/dir_src_Template_Loggers.doctree b/docs/_build/doctrees/api/dir_src_Template_Loggers.doctree deleted file mode 100644 index 153ef2b34..000000000 Binary files a/docs/_build/doctrees/api/dir_src_Template_Loggers.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/enum__i_o_hprofiler__common_8h_1a8ced63b668f6c1668b42db62456081f5.doctree b/docs/_build/doctrees/api/enum__i_o_hprofiler__common_8h_1a8ced63b668f6c1668b42db62456081f5.doctree deleted file mode 100644 index dcb06b148..000000000 Binary files a/docs/_build/doctrees/api/enum__i_o_hprofiler__common_8h_1a8ced63b668f6c1668b42db62456081f5.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/enum__i_o_hprofiler__configuration_8h_1a3ed894cd2350c8f1c6266c10de9418d3.doctree b/docs/_build/doctrees/api/enum__i_o_hprofiler__configuration_8h_1a3ed894cd2350c8f1c6266c10de9418d3.doctree deleted file mode 100644 index c2894af5d..000000000 Binary files a/docs/_build/doctrees/api/enum__i_o_hprofiler__configuration_8h_1a3ed894cd2350c8f1c6266c10de9418d3.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.cpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.cpp.doctree deleted file mode 100644 index d12657685..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.hpp.doctree deleted file mode 100644 index 8336e0a0c..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_objs.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_objs.hpp.doctree deleted file mode 100644 index 344830224..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_objs.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_vars.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_vars.hpp.doctree deleted file mode 100644 index 27bb18983..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_vars.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_suite_bbob_legacy_code.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_suite_bbob_legacy_code.hpp.doctree deleted file mode 100644 index 2111d1e0a..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_bbob_common_used_functions_suite_bbob_legacy_code.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_attractive_sector.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_attractive_sector.hpp.doctree deleted file mode 100644 index ca8106fde..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_attractive_sector.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_bent_cigar.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_bent_cigar.hpp.doctree deleted file mode 100644 index be3ad1499..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_bent_cigar.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_bueche_rastrigin.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_bueche_rastrigin.hpp.doctree deleted file mode 100644 index 04b1490b1..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_bueche_rastrigin.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_different_powers.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_different_powers.hpp.doctree deleted file mode 100644 index dfcd1a89e..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_different_powers.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_discus.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_discus.hpp.doctree deleted file mode 100644 index d9652c67c..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_discus.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_ellipsoid.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_ellipsoid.hpp.doctree deleted file mode 100644 index e6344d137..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_ellipsoid.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_ellipsoid_rotated.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_ellipsoid_rotated.hpp.doctree deleted file mode 100644 index 738f1f55d..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_ellipsoid_rotated.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_gallagher101.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_gallagher101.hpp.doctree deleted file mode 100644 index ec9a32363..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_gallagher101.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_gallagher21.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_gallagher21.hpp.doctree deleted file mode 100644 index 10b1859bf..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_gallagher21.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_griewank_rosenbrock.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_griewank_rosenbrock.hpp.doctree deleted file mode 100644 index d96c4f7fd..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_griewank_rosenbrock.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_katsuura.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_katsuura.hpp.doctree deleted file mode 100644 index e174591ef..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_katsuura.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_linear_slope.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_linear_slope.hpp.doctree deleted file mode 100644 index 15c24f193..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_linear_slope.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_lunacek_bi_rastrigin.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_lunacek_bi_rastrigin.hpp.doctree deleted file mode 100644 index 2637ffb3a..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_lunacek_bi_rastrigin.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rastrigin.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rastrigin.hpp.doctree deleted file mode 100644 index 217d393a1..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rastrigin.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rastrigin_rotated.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rastrigin_rotated.hpp.doctree deleted file mode 100644 index a889d0df0..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rastrigin_rotated.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rosenbrock.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rosenbrock.hpp.doctree deleted file mode 100644 index 52ccb0e78..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rosenbrock.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rosenbrock_rotated.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rosenbrock_rotated.hpp.doctree deleted file mode 100644 index 39b8171f8..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_rosenbrock_rotated.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schaffers10.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schaffers10.hpp.doctree deleted file mode 100644 index 81a8a2d5b..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schaffers10.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schaffers1000.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schaffers1000.hpp.doctree deleted file mode 100644 index a86198eee..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schaffers1000.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schwefel.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schwefel.hpp.doctree deleted file mode 100644 index 8df24c99d..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_schwefel.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_sharp_ridge.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_sharp_ridge.hpp.doctree deleted file mode 100644 index d500e65cc..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_sharp_ridge.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_sphere.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_sphere.hpp.doctree deleted file mode 100644 index 2654ccba5..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_sphere.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_step_ellipsoid.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_step_ellipsoid.hpp.doctree deleted file mode 100644 index cc9dffa68..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_step_ellipsoid.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_weierstrass.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_BBOB_f_weierstrass.hpp.doctree deleted file mode 100644 index 463e413ad..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_BBOB_f_weierstrass.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_IOHprofiler_all_problems.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_IOHprofiler_all_problems.hpp.doctree deleted file mode 100644 index dee00572c..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_IOHprofiler_all_problems.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_MIS.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_MIS.hpp.doctree deleted file mode 100644 index 7bffa2673..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_MIS.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_N_queens.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_N_queens.hpp.doctree deleted file mode 100644 index 7ffbc9be0..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_N_queens.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_concatenated_trap.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_concatenated_trap.hpp.doctree deleted file mode 100644 index 7b20e93f8..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_concatenated_trap.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_ring.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_ring.hpp.doctree deleted file mode 100644 index 89b5b9ef9..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_ring.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_torus.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_torus.hpp.doctree deleted file mode 100644 index c833bb7f8..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_torus.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_triangular.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_triangular.hpp.doctree deleted file mode 100644 index 2d7464709..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_ising_triangular.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_labs.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_labs.hpp.doctree deleted file mode 100644 index f8c2e5426..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_labs.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones.hpp.doctree deleted file mode 100644 index 2c5be2310..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_dummy1.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_dummy1.hpp.doctree deleted file mode 100644 index eea01ab3b..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_dummy1.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_dummy2.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_dummy2.hpp.doctree deleted file mode 100644 index 8348cfd0e..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_dummy2.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_epistasis.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_epistasis.hpp.doctree deleted file mode 100644 index 110eee85a..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_epistasis.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_neutrality.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_neutrality.hpp.doctree deleted file mode 100644 index 0ecab5810..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_neutrality.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness1.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness1.hpp.doctree deleted file mode 100644 index 9f73c75eb..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness1.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness2.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness2.hpp.doctree deleted file mode 100644 index 62db2e16e..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness2.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness3.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness3.hpp.doctree deleted file mode 100644 index 8b8879eae..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_leading_ones_ruggedness3.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_linear.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_linear.hpp.doctree deleted file mode 100644 index d71449a9c..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_linear.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_nk_landscapes.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_nk_landscapes.hpp.doctree deleted file mode 100644 index 11a600e46..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_nk_landscapes.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max.hpp.doctree deleted file mode 100644 index d8f538edf..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_dummy1.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_dummy1.hpp.doctree deleted file mode 100644 index 4ca2e068f..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_dummy1.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_dummy2.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_dummy2.hpp.doctree deleted file mode 100644 index c42477b37..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_dummy2.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_epistasis.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_epistasis.hpp.doctree deleted file mode 100644 index 82f621c5a..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_epistasis.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_neutrality.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_neutrality.hpp.doctree deleted file mode 100644 index b850e8095..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_neutrality.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness1.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness1.hpp.doctree deleted file mode 100644 index 218a06d61..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness1.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness2.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness2.hpp.doctree deleted file mode 100644 index 7aad89c6f..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness2.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness3.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness3.hpp.doctree deleted file mode 100644 index 931eff0f1..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_PBO_f_one_max_ruggedness3.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_README.md.doctree b/docs/_build/doctrees/api/file_src_Problems_README.md.doctree deleted file mode 100644 index 3c90b2880..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_README.md.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_WModel_f_w_model_leading_ones.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_WModel_f_w_model_leading_ones.hpp.doctree deleted file mode 100644 index a271818b4..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_WModel_f_w_model_leading_ones.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_WModel_f_w_model_one_max.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_WModel_f_w_model_one_max.hpp.doctree deleted file mode 100644 index 564a8bf64..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_WModel_f_w_model_one_max.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Problems_common_used_functions_wmodels.hpp.doctree b/docs/_build/doctrees/api/file_src_Problems_common_used_functions_wmodels.hpp.doctree deleted file mode 100644 index 91caedd02..000000000 Binary files a/docs/_build/doctrees/api/file_src_Problems_common_used_functions_wmodels.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_BBOB_suite.hpp.doctree b/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_BBOB_suite.hpp.doctree deleted file mode 100644 index 5f81636d1..000000000 Binary files a/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_BBOB_suite.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_PBO_suite.hpp.doctree b/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_PBO_suite.hpp.doctree deleted file mode 100644 index 44d2c8218..000000000 Binary files a/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_PBO_suite.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_all_suites.hpp.doctree b/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_all_suites.hpp.doctree deleted file mode 100644 index cb70f9665..000000000 Binary files a/docs/_build/doctrees/api/file_src_Suites_IOHprofiler_all_suites.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Suites_README.md.doctree b/docs/_build/doctrees/api/file_src_Suites_README.md.doctree deleted file mode 100644 index df0a5caa8..000000000 Binary files a/docs/_build/doctrees/api/file_src_Suites_README.md.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_configuration.cpp.doctree b/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_configuration.cpp.doctree deleted file mode 100644 index af2f57931..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_configuration.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_configuration.h.doctree b/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_configuration.h.doctree deleted file mode 100644 index 8f43919e5..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_configuration.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_experimenter.h.doctree b/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_experimenter.h.doctree deleted file mode 100644 index 6c2e21f9c..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_experimenter.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_experimenter.hpp.doctree b/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_experimenter.hpp.doctree deleted file mode 100644 index 490ab6024..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_experimenter.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_string.hpp.doctree b/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_string.hpp.doctree deleted file mode 100644 index 62ee5d4f7..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_Experiments_IOHprofiler_string.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_Experiments_README.md.doctree b/docs/_build/doctrees/api/file_src_Template_Experiments_README.md.doctree deleted file mode 100644 index c0648523b..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_Experiments_README.md.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_class_generator.h.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_class_generator.h.doctree deleted file mode 100644 index bf14646f4..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_class_generator.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_class_generator.hpp.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_class_generator.hpp.doctree deleted file mode 100644 index deafad5d4..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_class_generator.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_common.cpp.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_common.cpp.doctree deleted file mode 100644 index 7900f89c8..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_common.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_common.h.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_common.h.doctree deleted file mode 100644 index 0b23e638b..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_common.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_observer.cpp.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_observer.cpp.doctree deleted file mode 100644 index 9fd9e91a5..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_observer.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_observer.h.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_observer.h.doctree deleted file mode 100644 index 25230a21e..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_observer.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_platform.h.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_platform.h.doctree deleted file mode 100644 index 1de976eab..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_platform.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_problem.h.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_problem.h.doctree deleted file mode 100644 index 2c257bed2..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_problem.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_problem.hpp.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_problem.hpp.doctree deleted file mode 100644 index 1475d21d7..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_problem.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_random.cpp.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_random.cpp.doctree deleted file mode 100644 index 78ba2573c..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_random.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_random.h.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_random.h.doctree deleted file mode 100644 index 132bae279..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_random.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_suite.h.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_suite.h.doctree deleted file mode 100644 index 62c915df4..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_suite.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_suite.hpp.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_suite.hpp.doctree deleted file mode 100644 index f03a406f5..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_suite.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_transformation.cpp.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_transformation.cpp.doctree deleted file mode 100644 index 78a861188..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_transformation.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_transformation.h.doctree b/docs/_build/doctrees/api/file_src_Template_IOHprofiler_transformation.h.doctree deleted file mode 100644 index 022c7cc31..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_IOHprofiler_transformation.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_Loggers_IOHprofiler_csv_logger.cpp.doctree b/docs/_build/doctrees/api/file_src_Template_Loggers_IOHprofiler_csv_logger.cpp.doctree deleted file mode 100644 index 2b0b2924e..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_Loggers_IOHprofiler_csv_logger.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_Loggers_IOHprofiler_csv_logger.h.doctree b/docs/_build/doctrees/api/file_src_Template_Loggers_IOHprofiler_csv_logger.h.doctree deleted file mode 100644 index 9ef281418..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_Loggers_IOHprofiler_csv_logger.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_src_Template_README.md.doctree b/docs/_build/doctrees/api/file_src_Template_README.md.doctree deleted file mode 100644 index 7cc81db82..000000000 Binary files a/docs/_build/doctrees/api/file_src_Template_README.md.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/file_view_hierarchy.doctree b/docs/_build/doctrees/api/file_view_hierarchy.doctree deleted file mode 100644 index 3f5b5232e..000000000 Binary files a/docs/_build/doctrees/api/file_view_hierarchy.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a2429c989d189ec18ebb92ea1a9e962ec.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a2429c989d189ec18ebb92ea1a9e962ec.doctree deleted file mode 100644 index f4371f15c..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a2429c989d189ec18ebb92ea1a9e962ec.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a8efaa556027d382a0ff55675f63e11a0.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a8efaa556027d382a0ff55675f63e11a0.doctree deleted file mode 100644 index 6055df682..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a8efaa556027d382a0ff55675f63e11a0.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a94e2eb7a9e2e25c0ce0464881fca803c.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a94e2eb7a9e2e25c0ce0464881fca803c.doctree deleted file mode 100644 index 928cd1d01..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a94e2eb7a9e2e25c0ce0464881fca803c.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a9d1fb3375862ac7dc29b58d84f110022.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a9d1fb3375862ac7dc29b58d84f110022.doctree deleted file mode 100644 index c0752454f..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8cpp_1a9d1fb3375862ac7dc29b58d84f110022.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a2429c989d189ec18ebb92ea1a9e962ec.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a2429c989d189ec18ebb92ea1a9e962ec.doctree deleted file mode 100644 index 54566b477..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a2429c989d189ec18ebb92ea1a9e962ec.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a45f30a5e2becde9c3f0656371c5b020a.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a45f30a5e2becde9c3f0656371c5b020a.doctree deleted file mode 100644 index d06785dff..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a45f30a5e2becde9c3f0656371c5b020a.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a5d38e9efaa7d7eacdacefb91a9c04638.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a5d38e9efaa7d7eacdacefb91a9c04638.doctree deleted file mode 100644 index e84c49f15..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a5d38e9efaa7d7eacdacefb91a9c04638.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a72540a8c316f17b17cf77155e1a5aaef.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a72540a8c316f17b17cf77155e1a5aaef.doctree deleted file mode 100644 index 59ebec64f..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a72540a8c316f17b17cf77155e1a5aaef.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a7434905a54af524748676b956cb98315.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a7434905a54af524748676b956cb98315.doctree deleted file mode 100644 index a2bc7b0d0..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a7434905a54af524748676b956cb98315.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a8efaa556027d382a0ff55675f63e11a0.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a8efaa556027d382a0ff55675f63e11a0.doctree deleted file mode 100644 index 4d796d12b..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a8efaa556027d382a0ff55675f63e11a0.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a94e2eb7a9e2e25c0ce0464881fca803c.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a94e2eb7a9e2e25c0ce0464881fca803c.doctree deleted file mode 100644 index abe839dd2..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a94e2eb7a9e2e25c0ce0464881fca803c.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a9d1fb3375862ac7dc29b58d84f110022.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a9d1fb3375862ac7dc29b58d84f110022.doctree deleted file mode 100644 index c1a9faba4..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a9d1fb3375862ac7dc29b58d84f110022.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a9e8b4501917f11cd589aa07cd3e81a24.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a9e8b4501917f11cd589aa07cd3e81a24.doctree deleted file mode 100644 index d6e2bb591..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__common_8h_1a9e8b4501917f11cd589aa07cd3e81a24.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__string_8hpp_1a969cda1560fc9180c3d21e68afb04faf.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__string_8hpp_1a969cda1560fc9180c3d21e68afb04faf.doctree deleted file mode 100644 index baa05030b..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__string_8hpp_1a969cda1560fc9180c3d21e68afb04faf.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function__i_o_hprofiler__string_8hpp_1aa1a5d11ea1755d1046fe4b0c02a65997.doctree b/docs/_build/doctrees/api/function__i_o_hprofiler__string_8hpp_1aa1a5d11ea1755d1046fe4b0c02a65997.doctree deleted file mode 100644 index 004021d7f..000000000 Binary files a/docs/_build/doctrees/api/function__i_o_hprofiler__string_8hpp_1aa1a5d11ea1755d1046fe4b0c02a65997.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation_8hpp_1a4a9a333f758840831893b8ce7fa46132.doctree b/docs/_build/doctrees/api/function_coco__transformation_8hpp_1a4a9a333f758840831893b8ce7fa46132.doctree deleted file mode 100644 index 56cba93bd..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation_8hpp_1a4a9a333f758840831893b8ce7fa46132.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation_8hpp_1a503f1bf4eeccb9233437fb1a765fe807.doctree b/docs/_build/doctrees/api/function_coco__transformation_8hpp_1a503f1bf4eeccb9233437fb1a765fe807.doctree deleted file mode 100644 index e3aed4b6c..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation_8hpp_1a503f1bf4eeccb9233437fb1a765fe807.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a0d073f17e11124215ea5f276bcc22448.doctree b/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a0d073f17e11124215ea5f276bcc22448.doctree deleted file mode 100644 index 28b400765..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a0d073f17e11124215ea5f276bcc22448.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a2938164edb2dc9cdaf68cc84a619c331.doctree b/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a2938164edb2dc9cdaf68cc84a619c331.doctree deleted file mode 100644 index 67136be02..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a2938164edb2dc9cdaf68cc84a619c331.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a8a88b946b8d7dc9ca795405375a497ce.doctree b/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a8a88b946b8d7dc9ca795405375a497ce.doctree deleted file mode 100644 index 89c3bea0f..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a8a88b946b8d7dc9ca795405375a497ce.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a9658e101201758d59e1d7500e1daa8c3.doctree b/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a9658e101201758d59e1d7500e1daa8c3.doctree deleted file mode 100644 index e4f4219a3..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1a9658e101201758d59e1d7500e1daa8c3.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1aa6ac70641958645c7ea63e568709eef7.doctree b/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1aa6ac70641958645c7ea63e568709eef7.doctree deleted file mode 100644 index 51870854f..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1aa6ac70641958645c7ea63e568709eef7.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1ae22b9bbd7c154fa2d961d03417320285.doctree b/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1ae22b9bbd7c154fa2d961d03417320285.doctree deleted file mode 100644 index 2a88c8936..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__objs_8hpp_1ae22b9bbd7c154fa2d961d03417320285.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a59f848e0dc071ba2977d3a2122006268.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a59f848e0dc071ba2977d3a2122006268.doctree deleted file mode 100644 index ca02a0a81..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a59f848e0dc071ba2977d3a2122006268.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a5b211bedd46230c304320b0f724bfa20.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a5b211bedd46230c304320b0f724bfa20.doctree deleted file mode 100644 index 34d2af917..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a5b211bedd46230c304320b0f724bfa20.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a65ba1aa534b34e82a8b0d2e9f307a375.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a65ba1aa534b34e82a8b0d2e9f307a375.doctree deleted file mode 100644 index 40dab87b3..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a65ba1aa534b34e82a8b0d2e9f307a375.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a6f207b94ef1f046ddad563284880b5c2.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a6f207b94ef1f046ddad563284880b5c2.doctree deleted file mode 100644 index a315d1106..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1a6f207b94ef1f046ddad563284880b5c2.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aa2a58c3cee81e2de848bf3467a3fa91d.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aa2a58c3cee81e2de848bf3467a3fa91d.doctree deleted file mode 100644 index e1cd8f0cd..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aa2a58c3cee81e2de848bf3467a3fa91d.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aa9eb2bb3464240ed469f20fde715f675.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aa9eb2bb3464240ed469f20fde715f675.doctree deleted file mode 100644 index 3a85b1a3f..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aa9eb2bb3464240ed469f20fde715f675.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aab633d5f17a8282cbc39f4034cdc1014.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aab633d5f17a8282cbc39f4034cdc1014.doctree deleted file mode 100644 index 89dad5ba4..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aab633d5f17a8282cbc39f4034cdc1014.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1ab905d67956153bb70c7607d7ac07ec00.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1ab905d67956153bb70c7607d7ac07ec00.doctree deleted file mode 100644 index 50629ffd5..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1ab905d67956153bb70c7607d7ac07ec00.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1ad2f9576703436e7d7c0515250979ad9a.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1ad2f9576703436e7d7c0515250979ad9a.doctree deleted file mode 100644 index 1396065f0..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1ad2f9576703436e7d7c0515250979ad9a.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aedab87e6a7bb47f87c398e35e865418f.doctree b/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aedab87e6a7bb47f87c398e35e865418f.doctree deleted file mode 100644 index ba6895393..000000000 Binary files a/docs/_build/doctrees/api/function_coco__transformation__vars_8hpp_1aedab87e6a7bb47f87c398e35e865418f.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_f__gallagher101_8hpp_1a24f3aab754bbb64f0a0a9d159867c4a7.doctree b/docs/_build/doctrees/api/function_f__gallagher101_8hpp_1a24f3aab754bbb64f0a0a9d159867c4a7.doctree deleted file mode 100644 index 0db5c1c6d..000000000 Binary files a/docs/_build/doctrees/api/function_f__gallagher101_8hpp_1a24f3aab754bbb64f0a0a9d159867c4a7.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_f__gallagher21_8hpp_1a5c5d751cfb91fe5547ae75b981f065fd.doctree b/docs/_build/doctrees/api/function_f__gallagher21_8hpp_1a5c5d751cfb91fe5547ae75b981f065fd.doctree deleted file mode 100644 index 00d169288..000000000 Binary files a/docs/_build/doctrees/api/function_f__gallagher21_8hpp_1a5c5d751cfb91fe5547ae75b981f065fd.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a0f571b7dae2cb87ee9651a665f36f965.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a0f571b7dae2cb87ee9651a665f36f965.doctree deleted file mode 100644 index ee2690e03..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a0f571b7dae2cb87ee9651a665f36f965.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a2a04739df5afb6d6c00049e6f9fe9a72.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a2a04739df5afb6d6c00049e6f9fe9a72.doctree deleted file mode 100644 index efb687f42..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a2a04739df5afb6d6c00049e6f9fe9a72.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a2ec6e1c131829dfca561e15a62670578.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a2ec6e1c131829dfca561e15a62670578.doctree deleted file mode 100644 index ef0f8b2c1..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a2ec6e1c131829dfca561e15a62670578.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a45b7deee386d39f3a51195a76ecc8b3f.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a45b7deee386d39f3a51195a76ecc8b3f.doctree deleted file mode 100644 index 6ba817808..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a45b7deee386d39f3a51195a76ecc8b3f.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a5f6d2751aa7b7138ccbad72d2dcd8cfe.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a5f6d2751aa7b7138ccbad72d2dcd8cfe.doctree deleted file mode 100644 index d5f520aab..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a5f6d2751aa7b7138ccbad72d2dcd8cfe.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a69567b5718c65b57d0f8e23f87ec8922.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a69567b5718c65b57d0f8e23f87ec8922.doctree deleted file mode 100644 index ebf126c5b..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a69567b5718c65b57d0f8e23f87ec8922.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a9176e3ed48baabef3d59abb111e4ce2a.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a9176e3ed48baabef3d59abb111e4ce2a.doctree deleted file mode 100644 index 3411f6147..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1a9176e3ed48baabef3d59abb111e4ce2a.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1aa419105fb5ab1a7d1eca3d036e1db642.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1aa419105fb5ab1a7d1eca3d036e1db642.doctree deleted file mode 100644 index 92e912de6..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1aa419105fb5ab1a7d1eca3d036e1db642.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1ae276a15595ea9f7860b823e4229afc5c.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1ae276a15595ea9f7860b823e4229afc5c.doctree deleted file mode 100644 index 0f6a0575e..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1ae276a15595ea9f7860b823e4229afc5c.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1ae9c96bbb068bbafde4c579a67334ac03.doctree b/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1ae9c96bbb068bbafde4c579a67334ac03.doctree deleted file mode 100644 index 4a6139e89..000000000 Binary files a/docs/_build/doctrees/api/function_suite__bbob__legacy__code_8hpp_1ae9c96bbb068bbafde4c579a67334ac03.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a053536933e3f58002ddbb4655def7f36.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a053536933e3f58002ddbb4655def7f36.doctree deleted file mode 100644 index f5e7fc276..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a053536933e3f58002ddbb4655def7f36.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a1c7149337617e29e31e8d9d46e7c3e27.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a1c7149337617e29e31e8d9d46e7c3e27.doctree deleted file mode 100644 index 201320057..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a1c7149337617e29e31e8d9d46e7c3e27.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a2b2e96781c20bed1da12e65041e511eb.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a2b2e96781c20bed1da12e65041e511eb.doctree deleted file mode 100644 index c350683c5..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a2b2e96781c20bed1da12e65041e511eb.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a3ad2109730fb6c43eb4701a174904eb8.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a3ad2109730fb6c43eb4701a174904eb8.doctree deleted file mode 100644 index 5ed50052f..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a3ad2109730fb6c43eb4701a174904eb8.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a4588aad185275cd09ca179c48a308b34.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a4588aad185275cd09ca179c48a308b34.doctree deleted file mode 100644 index 55d876338..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a4588aad185275cd09ca179c48a308b34.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a58127eac2344302678c4f407d95ab379.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a58127eac2344302678c4f407d95ab379.doctree deleted file mode 100644 index db3089316..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a58127eac2344302678c4f407d95ab379.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a5f4f8e331ba2945653c5d531f66c869c.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a5f4f8e331ba2945653c5d531f66c869c.doctree deleted file mode 100644 index b54b70755..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a5f4f8e331ba2945653c5d531f66c869c.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a6aa24f3d58b0d0287ce31d2dbd042e38.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a6aa24f3d58b0d0287ce31d2dbd042e38.doctree deleted file mode 100644 index 9afd813e8..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a6aa24f3d58b0d0287ce31d2dbd042e38.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a7644a9a22570f976f067ecd88b9133da.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a7644a9a22570f976f067ecd88b9133da.doctree deleted file mode 100644 index 3866309d2..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a7644a9a22570f976f067ecd88b9133da.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a929033aaad173c3ee686e151a1c5f047.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a929033aaad173c3ee686e151a1c5f047.doctree deleted file mode 100644 index 2bfdf5d77..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a929033aaad173c3ee686e151a1c5f047.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1a9b2f198cb3a7d5a1d0ab685d7b294b99.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1a9b2f198cb3a7d5a1d0ab685d7b294b99.doctree deleted file mode 100644 index c6e4b6c5a..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1a9b2f198cb3a7d5a1d0ab685d7b294b99.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1aa75e8574d6c8a0a4f2eaf774593bdc03.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1aa75e8574d6c8a0a4f2eaf774593bdc03.doctree deleted file mode 100644 index 703d48146..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1aa75e8574d6c8a0a4f2eaf774593bdc03.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1ab7cc65be3009deafdccbba60680d6b8e.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1ab7cc65be3009deafdccbba60680d6b8e.doctree deleted file mode 100644 index 2fa1fa26d..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1ab7cc65be3009deafdccbba60680d6b8e.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/function_wmodels_8hpp_1ad1eef8bddb659c142c117d814f51f464.doctree b/docs/_build/doctrees/api/function_wmodels_8hpp_1ad1eef8bddb659c142c117d814f51f464.doctree deleted file mode 100644 index 90bf9e7f0..000000000 Binary files a/docs/_build/doctrees/api/function_wmodels_8hpp_1ad1eef8bddb659c142c117d814f51f464.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/library_root.doctree b/docs/_build/doctrees/api/library_root.doctree deleted file mode 100644 index a28a1db78..000000000 Binary files a/docs/_build/doctrees/api/library_root.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.cpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.cpp.doctree deleted file mode 100644 index 9e2696fcf..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.hpp.doctree deleted file mode 100644 index 4c0abc587..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_objs.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_objs.hpp.doctree deleted file mode 100644 index 36be7d63e..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_objs.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_vars.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_vars.hpp.doctree deleted file mode 100644 index 43c52f833..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_coco_transformation_vars.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_suite_bbob_legacy_code.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_suite_bbob_legacy_code.hpp.doctree deleted file mode 100644 index af397232a..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_bbob_common_used_functions_suite_bbob_legacy_code.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_attractive_sector.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_attractive_sector.hpp.doctree deleted file mode 100644 index 345ae68d2..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_attractive_sector.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_bent_cigar.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_bent_cigar.hpp.doctree deleted file mode 100644 index cb30f2a19..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_bent_cigar.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_bueche_rastrigin.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_bueche_rastrigin.hpp.doctree deleted file mode 100644 index 95ce783df..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_bueche_rastrigin.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_different_powers.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_different_powers.hpp.doctree deleted file mode 100644 index 819a6f198..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_different_powers.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_discus.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_discus.hpp.doctree deleted file mode 100644 index 769fd386b..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_discus.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_ellipsoid.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_ellipsoid.hpp.doctree deleted file mode 100644 index 82ad5e1a5..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_ellipsoid.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_ellipsoid_rotated.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_ellipsoid_rotated.hpp.doctree deleted file mode 100644 index 51b8c6673..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_ellipsoid_rotated.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_gallagher101.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_gallagher101.hpp.doctree deleted file mode 100644 index 564da80b1..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_gallagher101.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_gallagher21.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_gallagher21.hpp.doctree deleted file mode 100644 index 0adbbedf8..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_gallagher21.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_griewank_rosenbrock.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_griewank_rosenbrock.hpp.doctree deleted file mode 100644 index dc0233afa..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_griewank_rosenbrock.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_katsuura.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_katsuura.hpp.doctree deleted file mode 100644 index 9b365c3f0..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_katsuura.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_linear_slope.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_linear_slope.hpp.doctree deleted file mode 100644 index 79cf4ed37..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_linear_slope.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_lunacek_bi_rastrigin.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_lunacek_bi_rastrigin.hpp.doctree deleted file mode 100644 index a2d9a113b..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_lunacek_bi_rastrigin.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rastrigin.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rastrigin.hpp.doctree deleted file mode 100644 index 2cd330208..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rastrigin.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rastrigin_rotated.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rastrigin_rotated.hpp.doctree deleted file mode 100644 index 2a973209b..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rastrigin_rotated.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rosenbrock.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rosenbrock.hpp.doctree deleted file mode 100644 index 06e61d7a0..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rosenbrock.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rosenbrock_rotated.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rosenbrock_rotated.hpp.doctree deleted file mode 100644 index f35ef52e3..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_rosenbrock_rotated.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schaffers10.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schaffers10.hpp.doctree deleted file mode 100644 index 9a19cd296..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schaffers10.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schaffers1000.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schaffers1000.hpp.doctree deleted file mode 100644 index c4aa48f71..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schaffers1000.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schwefel.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schwefel.hpp.doctree deleted file mode 100644 index 585ebf5d7..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_schwefel.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_sharp_ridge.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_sharp_ridge.hpp.doctree deleted file mode 100644 index 7bf772811..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_sharp_ridge.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_sphere.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_sphere.hpp.doctree deleted file mode 100644 index 88b23beff..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_sphere.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_step_ellipsoid.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_step_ellipsoid.hpp.doctree deleted file mode 100644 index f040ec057..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_step_ellipsoid.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_weierstrass.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_weierstrass.hpp.doctree deleted file mode 100644 index 8d7d50a65..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_BBOB_f_weierstrass.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_IOHprofiler_all_problems.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_IOHprofiler_all_problems.hpp.doctree deleted file mode 100644 index 68d268877..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_IOHprofiler_all_problems.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_MIS.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_MIS.hpp.doctree deleted file mode 100644 index b1551e3e6..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_MIS.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_N_queens.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_N_queens.hpp.doctree deleted file mode 100644 index 2a024457e..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_N_queens.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_concatenated_trap.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_concatenated_trap.hpp.doctree deleted file mode 100644 index cf0a6a5e9..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_concatenated_trap.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_ring.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_ring.hpp.doctree deleted file mode 100644 index e4b509f0c..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_ring.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_torus.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_torus.hpp.doctree deleted file mode 100644 index 2020468db..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_torus.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_triangular.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_triangular.hpp.doctree deleted file mode 100644 index b77063f85..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_ising_triangular.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_labs.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_labs.hpp.doctree deleted file mode 100644 index 3f738b0c1..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_labs.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones.hpp.doctree deleted file mode 100644 index b4ace13c2..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_dummy1.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_dummy1.hpp.doctree deleted file mode 100644 index badce2a3c..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_dummy1.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_dummy2.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_dummy2.hpp.doctree deleted file mode 100644 index 7e8a89189..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_dummy2.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_epistasis.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_epistasis.hpp.doctree deleted file mode 100644 index 79f261c4d..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_epistasis.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_neutrality.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_neutrality.hpp.doctree deleted file mode 100644 index 87b90192a..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_neutrality.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness1.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness1.hpp.doctree deleted file mode 100644 index 3d7a26ee9..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness1.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness2.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness2.hpp.doctree deleted file mode 100644 index 7be28cc0c..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness2.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness3.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness3.hpp.doctree deleted file mode 100644 index 99b380965..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_leading_ones_ruggedness3.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_linear.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_linear.hpp.doctree deleted file mode 100644 index 68f293f2c..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_linear.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_nk_landscapes.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_nk_landscapes.hpp.doctree deleted file mode 100644 index f56d440ac..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_nk_landscapes.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max.hpp.doctree deleted file mode 100644 index 5d482d754..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_dummy1.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_dummy1.hpp.doctree deleted file mode 100644 index c91c7c03d..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_dummy1.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_dummy2.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_dummy2.hpp.doctree deleted file mode 100644 index 0735a996f..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_dummy2.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_epistasis.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_epistasis.hpp.doctree deleted file mode 100644 index 8a517911b..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_epistasis.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_neutrality.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_neutrality.hpp.doctree deleted file mode 100644 index 5c4675ea7..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_neutrality.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness1.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness1.hpp.doctree deleted file mode 100644 index 82c5bfd27..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness1.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness2.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness2.hpp.doctree deleted file mode 100644 index b003425ed..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness2.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness3.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness3.hpp.doctree deleted file mode 100644 index 4a997966b..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_PBO_f_one_max_ruggedness3.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_README.md.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_README.md.doctree deleted file mode 100644 index 6c39bad21..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_README.md.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_WModel_f_w_model_leading_ones.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_WModel_f_w_model_leading_ones.hpp.doctree deleted file mode 100644 index 6db8a4d88..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_WModel_f_w_model_leading_ones.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_WModel_f_w_model_one_max.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_WModel_f_w_model_one_max.hpp.doctree deleted file mode 100644 index d8775b3b5..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_WModel_f_w_model_one_max.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Problems_common_used_functions_wmodels.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Problems_common_used_functions_wmodels.hpp.doctree deleted file mode 100644 index 3ae4ffec4..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Problems_common_used_functions_wmodels.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_BBOB_suite.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_BBOB_suite.hpp.doctree deleted file mode 100644 index 812e1e3ef..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_BBOB_suite.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_PBO_suite.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_PBO_suite.hpp.doctree deleted file mode 100644 index a3cf7d782..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_PBO_suite.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_all_suites.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_all_suites.hpp.doctree deleted file mode 100644 index 8b9f6a8b1..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Suites_IOHprofiler_all_suites.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Suites_README.md.doctree b/docs/_build/doctrees/api/program_listing_file_src_Suites_README.md.doctree deleted file mode 100644 index b7aeb6675..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Suites_README.md.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_configuration.cpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_configuration.cpp.doctree deleted file mode 100644 index 70771d971..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_configuration.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_configuration.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_configuration.h.doctree deleted file mode 100644 index 73ce979c6..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_configuration.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_experimenter.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_experimenter.h.doctree deleted file mode 100644 index e04cd9868..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_experimenter.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_experimenter.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_experimenter.hpp.doctree deleted file mode 100644 index e3d020dad..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_experimenter.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_string.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_string.hpp.doctree deleted file mode 100644 index 3d178eecf..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_IOHprofiler_string.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_README.md.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_README.md.doctree deleted file mode 100644 index 89606d181..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_Experiments_README.md.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_class_generator.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_class_generator.h.doctree deleted file mode 100644 index a00745802..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_class_generator.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_class_generator.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_class_generator.hpp.doctree deleted file mode 100644 index 60dffc1ac..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_class_generator.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_common.cpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_common.cpp.doctree deleted file mode 100644 index e4bd94e3d..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_common.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_common.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_common.h.doctree deleted file mode 100644 index 7ed9b8961..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_common.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_observer.cpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_observer.cpp.doctree deleted file mode 100644 index 5ef9a3a53..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_observer.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_observer.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_observer.h.doctree deleted file mode 100644 index 8629561e3..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_observer.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_platform.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_platform.h.doctree deleted file mode 100644 index c647f72e4..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_platform.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_problem.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_problem.h.doctree deleted file mode 100644 index 55eadb4d4..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_problem.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_problem.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_problem.hpp.doctree deleted file mode 100644 index 23c7a678c..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_problem.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_random.cpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_random.cpp.doctree deleted file mode 100644 index c49ddd248..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_random.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_random.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_random.h.doctree deleted file mode 100644 index 6b1a2d182..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_random.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_suite.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_suite.h.doctree deleted file mode 100644 index 0a860d973..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_suite.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_suite.hpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_suite.hpp.doctree deleted file mode 100644 index f79d731ed..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_suite.hpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_transformation.cpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_transformation.cpp.doctree deleted file mode 100644 index 32e8c8946..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_transformation.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_transformation.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_transformation.h.doctree deleted file mode 100644 index 76eeeff59..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_IOHprofiler_transformation.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_Loggers_IOHprofiler_csv_logger.cpp.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_Loggers_IOHprofiler_csv_logger.cpp.doctree deleted file mode 100644 index 3ca32b2ea..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_Loggers_IOHprofiler_csv_logger.cpp.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_Loggers_IOHprofiler_csv_logger.h.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_Loggers_IOHprofiler_csv_logger.h.doctree deleted file mode 100644 index 0e1f88775..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_Loggers_IOHprofiler_csv_logger.h.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/program_listing_file_src_Template_README.md.doctree b/docs/_build/doctrees/api/program_listing_file_src_Template_README.md.doctree deleted file mode 100644 index a0ebd9f29..000000000 Binary files a/docs/_build/doctrees/api/program_listing_file_src_Template_README.md.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/structf__gallagher__permutation__t.doctree b/docs/_build/doctrees/api/structf__gallagher__permutation__t.doctree deleted file mode 100644 index f786740c9..000000000 Binary files a/docs/_build/doctrees/api/structf__gallagher__permutation__t.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/structf__gallagher__permutation__t1.doctree b/docs/_build/doctrees/api/structf__gallagher__permutation__t1.doctree deleted file mode 100644 index 27839c5b9..000000000 Binary files a/docs/_build/doctrees/api/structf__gallagher__permutation__t1.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/typedef__i_o_hprofiler__class__generator_8h_1a2971ef230f593894266554092d5bca4c.doctree b/docs/_build/doctrees/api/typedef__i_o_hprofiler__class__generator_8h_1a2971ef230f593894266554092d5bca4c.doctree deleted file mode 100644 index 3403a7390..000000000 Binary files a/docs/_build/doctrees/api/typedef__i_o_hprofiler__class__generator_8h_1a2971ef230f593894266554092d5bca4c.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/typedef__i_o_hprofiler__configuration_8h_1aea3cb56ac9b0612afc040462b05b390a.doctree b/docs/_build/doctrees/api/typedef__i_o_hprofiler__configuration_8h_1aea3cb56ac9b0612afc040462b05b390a.doctree deleted file mode 100644 index 91fe931e6..000000000 Binary files a/docs/_build/doctrees/api/typedef__i_o_hprofiler__configuration_8h_1aea3cb56ac9b0612afc040462b05b390a.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/typedef__i_o_hprofiler__suite_8h_1a53e7653f098d0336dca41cf3e9c43d3f.doctree b/docs/_build/doctrees/api/typedef__i_o_hprofiler__suite_8h_1a53e7653f098d0336dca41cf3e9c43d3f.doctree deleted file mode 100644 index 8e290e0e0..000000000 Binary files a/docs/_build/doctrees/api/typedef__i_o_hprofiler__suite_8h_1a53e7653f098d0336dca41cf3e9c43d3f.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/typedef__i_o_hprofiler__suite_8h_1a637e30d728990d4faae94a7d357a01f4.doctree b/docs/_build/doctrees/api/typedef__i_o_hprofiler__suite_8h_1a637e30d728990d4faae94a7d357a01f4.doctree deleted file mode 100644 index 5c7506feb..000000000 Binary files a/docs/_build/doctrees/api/typedef__i_o_hprofiler__suite_8h_1a637e30d728990d4faae94a7d357a01f4.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/typedef_f__gallagher101_8hpp_1a605accbff34f39b4eef3935aaa2cabf1.doctree b/docs/_build/doctrees/api/typedef_f__gallagher101_8hpp_1a605accbff34f39b4eef3935aaa2cabf1.doctree deleted file mode 100644 index a7af1cafb..000000000 Binary files a/docs/_build/doctrees/api/typedef_f__gallagher101_8hpp_1a605accbff34f39b4eef3935aaa2cabf1.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/typedef_f__gallagher21_8hpp_1af0bac0f1113d1810ec11a4ea08affcc3.doctree b/docs/_build/doctrees/api/typedef_f__gallagher21_8hpp_1af0bac0f1113d1810ec11a4ea08affcc3.doctree deleted file mode 100644 index 04bab4dd4..000000000 Binary files a/docs/_build/doctrees/api/typedef_f__gallagher21_8hpp_1af0bac0f1113d1810ec11a4ea08affcc3.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/unabridged_api.doctree b/docs/_build/doctrees/api/unabridged_api.doctree deleted file mode 100644 index c36d97a16..000000000 Binary files a/docs/_build/doctrees/api/unabridged_api.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/unabridged_orphan.doctree b/docs/_build/doctrees/api/unabridged_orphan.doctree deleted file mode 100644 index a83cc11c0..000000000 Binary files a/docs/_build/doctrees/api/unabridged_orphan.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a0090ef095459dfe2671a840172b9abce.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a0090ef095459dfe2671a840172b9abce.doctree deleted file mode 100644 index 010f27de6..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a0090ef095459dfe2671a840172b9abce.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a0c4bb6d8c51c39c261ffefc8ebf012ad.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a0c4bb6d8c51c39c261ffefc8ebf012ad.doctree deleted file mode 100644 index e461dd1c5..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a0c4bb6d8c51c39c261ffefc8ebf012ad.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a11990cc94de2fa0f790a5f800a627a70.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a11990cc94de2fa0f790a5f800a627a70.doctree deleted file mode 100644 index c76c285f6..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a11990cc94de2fa0f790a5f800a627a70.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a12fdf8047326b276d6cc0acb99983467.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a12fdf8047326b276d6cc0acb99983467.doctree deleted file mode 100644 index ee66d358c..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a12fdf8047326b276d6cc0acb99983467.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a2f325afb1dd4bf17bf576caebfd2d153.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a2f325afb1dd4bf17bf576caebfd2d153.doctree deleted file mode 100644 index b171b21f6..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a2f325afb1dd4bf17bf576caebfd2d153.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a319923dfcb86f5cc128cb14b507bf827.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a319923dfcb86f5cc128cb14b507bf827.doctree deleted file mode 100644 index fed5ab42b..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a319923dfcb86f5cc128cb14b507bf827.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a3835806ce6f29fc118fe12f2d86d83d3.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a3835806ce6f29fc118fe12f2d86d83d3.doctree deleted file mode 100644 index 78d228828..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a3835806ce6f29fc118fe12f2d86d83d3.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a4968411dc3f4c93789cd5e30d499f004.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a4968411dc3f4c93789cd5e30d499f004.doctree deleted file mode 100644 index 77afa99e1..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a4968411dc3f4c93789cd5e30d499f004.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a4e7f8a0425b911bc0f1804223036e18c.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a4e7f8a0425b911bc0f1804223036e18c.doctree deleted file mode 100644 index 82d6fd0c0..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a4e7f8a0425b911bc0f1804223036e18c.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a53ca5e56bfa668c103766aed0f875290.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a53ca5e56bfa668c103766aed0f875290.doctree deleted file mode 100644 index 1fe4c899a..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a53ca5e56bfa668c103766aed0f875290.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a5850b8b0df8907ee88a997cbfa4e1545.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a5850b8b0df8907ee88a997cbfa4e1545.doctree deleted file mode 100644 index a8b01527e..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a5850b8b0df8907ee88a997cbfa4e1545.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a7206b5da762ae2dd9c1528e989ca7488.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a7206b5da762ae2dd9c1528e989ca7488.doctree deleted file mode 100644 index 505021ef1..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a7206b5da762ae2dd9c1528e989ca7488.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a7d4da954ba8bd6a216e392a0b545c5cd.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a7d4da954ba8bd6a216e392a0b545c5cd.doctree deleted file mode 100644 index 3b8114e39..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a7d4da954ba8bd6a216e392a0b545c5cd.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a83ceed7cda41cedb03487003e8f349e9.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a83ceed7cda41cedb03487003e8f349e9.doctree deleted file mode 100644 index abea2ae73..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a83ceed7cda41cedb03487003e8f349e9.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a8a009ad28ccb0e038a71a5a28acf0d2a.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a8a009ad28ccb0e038a71a5a28acf0d2a.doctree deleted file mode 100644 index f621c22e4..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1a8a009ad28ccb0e038a71a5a28acf0d2a.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1aa930a6bd7352eac42f6eb31d0587dad9.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1aa930a6bd7352eac42f6eb31d0587dad9.doctree deleted file mode 100644 index 414d12532..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1aa930a6bd7352eac42f6eb31d0587dad9.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1abfc52771fb25b89b4787a0aefbde3a15.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1abfc52771fb25b89b4787a0aefbde3a15.doctree deleted file mode 100644 index 563a3e492..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1abfc52771fb25b89b4787a0aefbde3a15.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1ac81b583258547a2937140537b74d19e2.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1ac81b583258547a2937140537b74d19e2.doctree deleted file mode 100644 index 8cf3429f8..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1ac81b583258547a2937140537b74d19e2.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1aecd150c4de053dd679db8403a203d248.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1aecd150c4de053dd679db8403a203d248.doctree deleted file mode 100644 index 583e7aef1..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1aecd150c4de053dd679db8403a203d248.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af165c30318c4983c23effe12a65e4df2.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af165c30318c4983c23effe12a65e4df2.doctree deleted file mode 100644 index 2b4fd3b04..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af165c30318c4983c23effe12a65e4df2.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af5e46930d8db5a621405fd3ec3e6b5d7.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af5e46930d8db5a621405fd3ec3e6b5d7.doctree deleted file mode 100644 index aa0fc8b4e..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af5e46930d8db5a621405fd3ec3e6b5d7.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af7085616ed4cb9129461172d510508c9.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af7085616ed4cb9129461172d510508c9.doctree deleted file mode 100644 index 92bdd748c..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1af7085616ed4cb9129461172d510508c9.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1afc288963bc5b69967bcac19105b30879.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1afc288963bc5b69967bcac19105b30879.doctree deleted file mode 100644 index 571286a26..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__problems_8hpp_1afc288963bc5b69967bcac19105b30879.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__suites_8hpp_1acbdc1d9ef309da360a5de9f7d02c872f.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__suites_8hpp_1acbdc1d9ef309da360a5de9f7d02c872f.doctree deleted file mode 100644 index 56d81cbc5..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__suites_8hpp_1acbdc1d9ef309da360a5de9f7d02c872f.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__suites_8hpp_1ad468cb10d7903bd52289143ef041b5de.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__all__suites_8hpp_1ad468cb10d7903bd52289143ef041b5de.doctree deleted file mode 100644 index 6080309bf..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__all__suites_8hpp_1ad468cb10d7903bd52289143ef041b5de.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__configuration_8h_1a49324795993510860e3aba2d02d48b0d.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__configuration_8h_1a49324795993510860e3aba2d02d48b0d.doctree deleted file mode 100644 index 681435afa..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__configuration_8h_1a49324795993510860e3aba2d02d48b0d.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__configuration_8h_1ae2fca66559205cf0deddfdc3fffc7140.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__configuration_8h_1ae2fca66559205cf0deddfdc3fffc7140.doctree deleted file mode 100644 index 8b0f5edb7..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__configuration_8h_1ae2fca66559205cf0deddfdc3fffc7140.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__platform_8h_1abfb74516c005d04fc05414f90bc648de.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__platform_8h_1abfb74516c005d04fc05414f90bc648de.doctree deleted file mode 100644 index 13b021621..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__platform_8h_1abfb74516c005d04fc05414f90bc648de.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable__i_o_hprofiler__problem_8h_1a8e01e908e41e6270ffd9b9be2ce64cb8.doctree b/docs/_build/doctrees/api/variable__i_o_hprofiler__problem_8h_1a8e01e908e41e6270ffd9b9be2ce64cb8.doctree deleted file mode 100644 index a73335af9..000000000 Binary files a/docs/_build/doctrees/api/variable__i_o_hprofiler__problem_8h_1a8e01e908e41e6270ffd9b9be2ce64cb8.doctree and /dev/null differ diff --git a/docs/_build/doctrees/api/variable_suite__bbob__legacy__code_8hpp_1a973742d29d384e21661bda90875ccf39.doctree b/docs/_build/doctrees/api/variable_suite__bbob__legacy__code_8hpp_1a973742d29d384e21661bda90875ccf39.doctree deleted file mode 100644 index 62f60c1f8..000000000 Binary files a/docs/_build/doctrees/api/variable_suite__bbob__legacy__code_8hpp_1a973742d29d384e21661bda90875ccf39.doctree and /dev/null differ diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle deleted file mode 100644 index 79e0835b4..000000000 Binary files a/docs/_build/doctrees/environment.pickle and /dev/null differ diff --git a/docs/_build/doctrees/index.doctree b/docs/_build/doctrees/index.doctree deleted file mode 100644 index 02969ef1a..000000000 Binary files a/docs/_build/doctrees/index.doctree and /dev/null differ diff --git a/docs/_build/html/api/class___dict.html b/docs/_build/html/api/class___dict.html deleted file mode 100644 index 7a2b1aeb1..000000000 --- a/docs/_build/html/api/class___dict.html +++ /dev/null @@ -1,270 +0,0 @@ - - - - -
- - - - -Defined in File IOHprofiler_configuration.h
Defined in File f_attractive_sector.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Attractive_Sector
: public IOHprofiler_problem<double>¶Public Functions
-Attractive_Sector
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Attractive_Sector
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File IOHprofiler_BBOB_suite.hpp
public IOHprofiler_suite< double >
(Template Class IOHprofiler_suite)
BBOB_suite
: public IOHprofiler_suite<double>¶Public Functions
-BBOB_suite
()¶BBOB_suite
(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension)¶registerProblem
()¶Implementation of virtual function of base class IOHprofiler_suite.
-23 functions are included in the BBOB_suite.
-Public Static Functions
-createInstance
()¶createInstance
(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension)¶Defined in File f_bent_cigar.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Bent_Cigar
: public IOHprofiler_problem<double>¶Public Functions
-Bent_Cigar
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Bent_Cigar
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_bueche_rastrigin.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Bueche_Rastrigin
: public IOHprofiler_problem<double>¶Public Functions
-Bueche_Rastrigin
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Bueche_Rastrigin
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File coco_transformation.hpp
Coco_Transformation_Data
¶Public Static Attributes
-raw_x
= std::vector<double>(0)¶xopt
= std::vector<double>(0)¶tmp1
= std::vector<double>(0)¶tmp2
= std::vector<double>(0)¶fopt
= 0¶penalty_factor
= 0¶factor
= 0¶lower_bound
= 0¶upper_bound
= 0¶M
= std::vector<std::vector<double>>(0)¶b
= std::vector<double>(0)¶M1
= std::vector<std::vector<double>>(0)¶b1
= std::vector<double>(0)¶rot1
= std::vector<std::vector<double>>(0)¶rot2
= std::vector<std::vector<double>>(0)¶datax
= std::vector<double>(0)¶dataxx
= std::vector<double>(0)¶minus_one
= std::vector<double>(0)¶condition
= 0¶rseed
= 0¶Defined in File f_concatenated_trap.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
Concatenated_Trap
: public IOHprofiler_problem<int>¶Public Functions
-Concatenated_Trap
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Concatenated_Trap
()¶internal_evaluate
(const std::vector<int> &x)¶Public Members
-k
= 5¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_different_powers.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Different_Powers
: public IOHprofiler_problem<double>¶Public Functions
-Different_Powers
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Different_Powers
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_discus.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Defined in File f_ellipsoid.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Defined in File f_ellipsoid_rotated.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Ellipsoid_Rotated
: public IOHprofiler_problem<double>¶Public Functions
-Ellipsoid_Rotated
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Ellipsoid_Rotated
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_gallagher101.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Gallagher101
: public IOHprofiler_problem<double>¶Public Functions
-Gallagher101
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Gallagher101
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Members
-xopt
¶number_of_peaks
= 101¶rotation
¶arr_scales
¶x_local
¶peak_values
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_gallagher21.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Gallagher21
: public IOHprofiler_problem<double>¶Public Functions
-Gallagher21
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Gallagher21
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Members
-xopt
¶number_of_peaks
= 21¶rotation
¶arr_scales
¶x_local
¶peak_values
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_griewank_rosenbrock.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Griewank_RosenBrock
: public IOHprofiler_problem<double>¶Public Functions
-Griewank_RosenBrock
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Griewank_RosenBrock
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Members
-scales
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File IOHprofiler_configuration.h
IOHprofiler_configuration
¶A class of configuration files, to be used in IOHprofiler_experimenter.
-Public Functions
-IOHprofiler_configuration
()¶set_Dict
(_Dict &dict, const std::string section, const std::string key, const std::string value)¶get_Dict_String
(const _Dict dict, const std::string section, const std::string key)¶get_Dict_int_vector
(const _Dict dict, const std::string section, const std::string key, const int _min, const int _max)¶add_Line
(const std::string input_line, std::string §ion, std::string &key, std::string &value)¶readcfg
(std::string filename)¶get_suite_name
()¶get_problem_id
()¶get_instance_id
()¶get_dimension
()¶get_output_directory
()¶get_result_folder
()¶get_algorithm_info
()¶get_algorithm_name
()¶get_complete_triggers
()¶get_update_triggers
()¶get_base_evaluation_triggers
()¶get_number_target_triggers
()¶get_number_interval_triggers
()¶Defined in File IOHprofiler_csv_logger.h
public IOHprofiler_observer
(Class IOHprofiler_observer)
IOHprofiler_csv_logger
: public IOHprofiler_observer¶A class of logging csv files.
-To activate logger functions as evaluating problems, a ‘logger’ must be added to IOHprofiler_problem by the statement ‘problem.add_logger(logger)’.
-Public Functions
-IOHprofiler_csv_logger
()¶IOHprofiler_csv_logger
(std::string directory, std::string folder_name, std::string alg_name, std::string alg_info)¶~IOHprofiler_csv_logger
()¶folder_exist
(std::string folder_name)¶activate_logger
()¶clear_logger
()¶set_dynamic_attributes_name
(const std::vector<std::string> &attributes_name)¶Only for python wrapper.
-set_dynamic_attributes_name
(const std::vector<std::string> &attributes_name, const std::vector<double> &initial_attributes)¶Only for python wrapper.
-set_dynamic_attributes
(const std::vector<std::string> &attributes_name, const std::vector<double> &attributes)¶Only for python wrapper.
-add_attribute
(std::string, int)¶add_attribute
(std::string, double)¶add_attribute
(std::string, float)¶add_attribute
(std::string, std::string)¶delete_attribute
(std::string)¶track_problem
(const int problem_id, const int dimension, const int instance, const std::string problem_name, const IOH_optimization_type maximization_minimization_flag)¶track_problem
(const IOHprofiler_problem<int> &problem)¶track_problem
(const IOHprofiler_problem<double> &problem)¶track_suite
(std::string suite_name)¶openInfo
(int problem_id, int dimension, std::string problem_name)¶write_info
(int instance, double best_y, double best_transformed_y, int evaluations, double last_y, double last_transformed_y, int last_evaluations)¶write_line
(const size_t evaluations, const double y, const double best_so_far_y, const double transformed_y, const double best_so_far_transformed_y)¶do_log
(const std::vector<double> &log_info)¶write_line
(const std::vector<double> &log_info)¶update_logger_info
(size_t optimal_evaluations, double y, double transformed_y)¶This functions is to update infomation to be used in *.info files.
-set_parameters_name
(const std::vector<std::string> ¶meters_name)¶Only for python wrapper.
-set_parameters_name
(const std::vector<std::string> ¶meters_name, const std::vector<double> &initial_parameters)¶Only for python wrapper.
-set_parameters
(const std::vector<std::string> ¶meters_name, const std::vector<double> ¶meters)¶Only for python wrapper.
-Defined in File IOHprofiler_experimenter.h
InputType
>IOHprofiler_experimenter
¶Public Types
-_algorithm
(std::shared_ptr<IOHprofiler_problem<InputType>>, std::shared_ptr<IOHprofiler_csv_logger> logger)¶Public Functions
-IOHprofiler_experimenter
()¶IOHprofiler_experimenter
(std::string configFileName, _algorithm *algorithm)¶~IOHprofiler_experimenter
()¶_run
()¶_set_independent_runs
(int n)¶print_info
(std::string info)¶vectorToString
(std::vector<int> v)¶Defined in File IOHprofiler_observer.h
public IOHprofiler_csv_logger
(Class IOHprofiler_csv_logger)
IOHprofiler_observer
¶A class of methods of setting triggers recording evaluations.
-Four methods is introduced here:
Recording evaluations by a static interval.
Recording complete evaluations.
Recording evaluations as the best found solution is updated.
Recording evaluations at pre-defined points or/and with a static number for each exponential bucket.
Subclassed by IOHprofiler_csv_logger
-Public Functions
-IOHprofiler_observer
()¶~IOHprofiler_observer
()¶IOHprofiler_observer
(const IOHprofiler_observer&) = delete¶operator=
(const IOHprofiler_observer&) = delete¶set_complete_flag
(bool complete_flag)¶complete_status
() const¶complete_trigger
() const¶set_interval
(int interval)¶interval_status
() const¶interval_trigger
(size_t evaluations) const¶set_update_flag
(bool update_flag)¶update_trigger
(double fitness, IOH_optimization_type optimization_type)¶update_status
() const¶set_time_points
(const std::vector<int> &time_points, const int number_of_evaluations, const int time_points_exp_base1 = 10, const int time_points_exp_base2 = 10)¶time_points_status
() const¶time_points_trigger
(size_t evaluations)¶reset_observer
(const IOH_optimization_type optimization_type)¶do_log
(const std::vector<double> &log_info)¶track_problem
(const IOHprofiler_problem<int> &problem)¶track_problem
(const IOHprofiler_problem<double> &problem)¶Defined in File IOHprofiler_problem.h
public IOHprofiler_suite< InputType >
(Template Class IOHprofiler_suite)
InputType
>IOHprofiler_problem
¶A base class for defining problems.
-Basic structure for IOHExperimentor, which is used for generating benchmark problems. To define a new problem, the ‘internal_evaluate’ method must be defined. The problem sets as maximization by default. If the ‘best_variables’ are given, the optimal of the problem will be calculated with the ‘best_variables’; or you can set the optimal by defining the ‘customized_optimal’ function; otherwise, the optimal is set as min()(max()) for maximization(minimization). If additional calculation is needed by ‘internal_evaluate’, you can configure it in ‘prepare_problem()’.
-Subclassed by IOHprofiler_suite< InputType >
-Public Functions
-IOHprofiler_problem
(int instance_id = 1, int dimension = 4)¶~IOHprofiler_problem
()¶IOHprofiler_problem
(const IOHprofiler_problem&) = delete¶operator=
(const IOHprofiler_problem&) = delete¶internal_evaluate
(const std::vector<InputType> &x)¶A virtual internal evaluate function.
-The internal_evaluate function is to be used in evaluate function. This function must be decalred in derived function of new problems.
-prepare_problem
()¶evaluate
(std::vector<InputType> x)¶\brife A common function for evaluating fitness of problems.
-Raw evaluate process, tranformation operations, and logging process are excuted in this function.
A double vector of objectives.
-x
: A InputType vector of variables.
customize_optimal
()¶calc_optimal
()¶A function to calculate optimal of the problem. It will be revoked after setting dimension (number_of_variables) or instance_id.
-reset_problem
()¶Reset problem as the default condition before doing evaluating.
- -loggerCOCOInfo
() const¶loggerInfo
() const¶IOHprofiler_hit_optimal
() const¶Detect if the optimal have been found.
-IOHprofiler_get_problem_id
() const¶IOHprofiler_set_problem_id
(int problem_id)¶IOHprofiler_get_instance_id
() const¶IOHprofiler_set_instance_id
(int instance_id)¶To set instance_id of the problem. Since the optimal will be updated as instanced_id updated, calc_optimal() is revoked here.
instance_id
:
IOHprofiler_get_problem_name
() const¶IOHprofiler_set_problem_name
(std::string problem_name)¶IOHprofiler_get_problem_type
() const¶IOHprofiler_set_problem_type
(std::string problem_type)¶IOHprofiler_set_lowerbound
(int lowerbound)¶IOHprofiler_set_upperbound
(int upperbound)¶IOHprofiler_get_number_of_variables
() const¶IOHprofiler_set_number_of_variables
(const int number_of_variables)¶To set number_of_variables of the problem. When the number_of_variables is updated, best_variables, lowerbound, upperbound, and optimal need to be updated as well.
-To set number_of_variables of the problem. When the number_of_variables is updated, best_variables, lowerbound, upperbound, and optimal need to be updated as well. In case the best value for each bit is not staic, another input ‘best_variables’ is supplied.
-number_of_variables
:
number_of_variablesbest_variables
:
IOHprofiler_set_number_of_variables
(const int number_of_variables, const std::vector<InputType> &best_variables)¶IOHprofiler_get_number_of_objectives
() const¶IOHprofiler_set_number_of_objectives
(const int number_of_objectives)¶IOHprofiler_get_raw_objectives
() const¶IOHprofiler_get_transformed_objectives
() const¶IOHprofiler_get_transformed_number_of_variables
() const¶IOHprofiler_get_optimal
() const¶IOHprofiler_set_optimal
(const double optimal)¶IOHprofiler_set_optimal
(const std::vector<double> &optimal)¶IOHprofiler_evaluate_optimal
()¶IOHprofiler_get_evaluations
() const¶IOHprofiler_get_best_so_far_raw_objectives
() const¶IOHprofiler_get_best_so_far_raw_evaluations
() const¶IOHprofiler_get_best_so_far_transformed_objectives
() const¶IOHprofiler_get_best_so_far_transformed_evaluations
() const¶IOHprofiler_get_optimization_type
() const¶IOHprofiler_set_as_maximization
()¶IOHprofiler_set_as_minimization
()¶Defined in File IOHprofiler_random.h
public NK_Landscapes
(Class NK_Landscapes)
Defined in File IOHprofiler_suite.h
public IOHprofiler_problem< InputType >
(Template Class IOHprofiler_problem)
public std::vector< std::shared_ptr< IOHprofiler_problem< InputType > > >
InputType
>IOHprofiler_suite
: public IOHprofiler_problem<InputType>, public std::vector<std::shared_ptr<IOHprofiler_problem<InputType>>>¶A base class for construct a suite for sets of IOHprofiler_problems.
-To specify available problems of a suite, registerProblem must be implemented in derived class. The default lable of problems are string type. Integer type are also optional, but we highly recommond registering problem with string lable and creating a map of string problem_name and integer problem_id.
-Public Types
-Problem_ptr
¶Public Functions
-IOHprofiler_suite
(std::vector<int> problem_id = std::vector<int>(0), std::vector<int> instance_id = std::vector<int>(0), std::vector<int> dimension = std::vector<int>(0))¶~IOHprofiler_suite
()¶IOHprofiler_suite
(const IOHprofiler_suite&) = delete¶operator=
(const IOHprofiler_suite&) = delete¶registerInSuite
()¶loadProblem
()¶get_next_problem
()¶An interface of requesting problems in suite.
-To request a specific problem with corresponding problem_id, instance_id and dimension, without concerning the order of testing problems.
-get_current_problem
()¶get_problem
(std::string problem_name, int instance, int dimension)¶get_problem
(int problem_id, int instance, int dimension)¶IOHprofiler_suite_get_number_of_problems
() const¶IOHprofiler_suite_get_number_of_instances
() const¶IOHprofiler_suite_get_number_of_dimensions
() const¶IOHprofiler_suite_get_problem_id
() const¶IOHprofiler_suite_get_problem_name
() const¶IOHprofiler_suite_get_problems
() const¶Return a map of problem name to problem ID, for all the registered problem.
-IOHprofiler_suite_get_instance_id
() const¶IOHprofiler_suite_get_dimension
() const¶IOHprofiler_suite_get_suite_name
() const¶IOHprofiler_set_suite_problem_id
(const std::vector<int> &problem_id)¶IOHprofiler_set_suite_instance_id
(const std::vector<int> &instance_id)¶IOHprofiler_set_suite_dimension
(const std::vector<int> &dimension)¶IOHprofiler_set_suite_name
(const std::string suite_name)¶mapIDTOName
(const int id, const std::string name)¶Defined in File IOHprofiler_transformation.h
IOHprofiler_transformation
¶A class consisting of transformation methods.
-Public Functions
-variables_transformation
(std::vector<int> &x, const int problem_id, const int instance_id, const std::string problem_type)¶Transformation operations on variables.
-For instance_id in ]1,50], xor operation is applied. For instance_id in ]50,100], sigma function is applied.
-variables_transformation
(std::vector<double> &x, const int problem_id, const int instance_id, const std::string problem_type)¶objectives_transformation
(const std::vector<int> &x, std::vector<double> &y, const int problem_id, const int instance_id, const std::string problem_type)¶Transformation operations on objectives (a * f(x) + b).
-objectives_transformation
(const std::vector<double> &x, std::vector<double> &y, const int problem_id, const int instance_id, const std::string problem_type)¶transform_vars_xor
(std::vector<int> &x, const int seed)¶Applying xor operations on x with a uniformly random bit string.
-transform_vars_sigma
(std::vector<int> &x, const int seed)¶Disrupting the order of x.
-transform_obj_scale
(std::vector<double> &y, const int seed)¶transformation ‘a * f(x)’.
-transform_obj_shift
(std::vector<double> &y, const int seed)¶transformation ‘f(x) + b’.
-transform_obj_scale
(double &y, const int seed)¶transform_obj_shift
(double &y, const int seed)¶Defined in File f_ising_ring.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
Ising_Ring
: public IOHprofiler_problem<int>¶Public Functions
-Ising_Ring
(int instance_id, int dimension)¶~Ising_Ring
()¶modulo_ising_ring
(int x, int N)¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_ising_torus.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
Ising_Torus
: public IOHprofiler_problem<int>¶Public Functions
-Ising_Torus
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Ising_Torus
()¶modulo_ising_torus
(int x, int N)¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_ising_triangular.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
Ising_Triangular
: public IOHprofiler_problem<int>¶Public Functions
-Ising_Triangular
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Ising_Triangular
()¶modulo_ising_triangular
(int x, int N)¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_katsuura.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Defined in File f_labs.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LABS
: public IOHprofiler_problem<int>¶Defined in File f_leading_ones.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LeadingOnes
: public IOHprofiler_problem<int>¶Public Functions
-LeadingOnes
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~LeadingOnes
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_leading_ones_dummy1.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LeadingOnes_Dummy1
: public IOHprofiler_problem<int>¶Public Functions
-LeadingOnes_Dummy1
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~LeadingOnes_Dummy1
()¶prepare_problem
()¶internal_evaluate
(const std::vector<int> &x)¶Public Members
-info
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_leading_ones_dummy2.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LeadingOnes_Dummy2
: public IOHprofiler_problem<int>¶Public Functions
-LeadingOnes_Dummy2
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~LeadingOnes_Dummy2
()¶prepare_problem
()¶internal_evaluate
(const std::vector<int> &x)¶Public Members
-info
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_leading_ones_epistasis.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LeadingOnes_Epistasis
: public IOHprofiler_problem<int>¶Public Functions
-LeadingOnes_Epistasis
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~LeadingOnes_Epistasis
()¶customize_optimal
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_leading_ones_neutrality.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LeadingOnes_Neutrality
: public IOHprofiler_problem<int>¶Public Functions
-LeadingOnes_Neutrality
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~LeadingOnes_Neutrality
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_leading_ones_ruggedness1.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LeadingOnes_Ruggedness1
: public IOHprofiler_problem<int>¶Public Functions
-LeadingOnes_Ruggedness1
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~LeadingOnes_Ruggedness1
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_leading_ones_ruggedness2.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LeadingOnes_Ruggedness2
: public IOHprofiler_problem<int>¶Public Functions
-LeadingOnes_Ruggedness2
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~LeadingOnes_Ruggedness2
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_leading_ones_ruggedness3.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
LeadingOnes_Ruggedness3
: public IOHprofiler_problem<int>¶Public Functions
-LeadingOnes_Ruggedness3
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~LeadingOnes_Ruggedness3
()¶prepare_problem
()¶internal_evaluate
(const std::vector<int> &x)¶Public Members
-info
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_linear.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
Defined in File f_linear_slope.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Linear_Slope
: public IOHprofiler_problem<double>¶Public Functions
-Linear_Slope
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Linear_Slope
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_lunacek_bi_rastrigin.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Lunacek_Bi_Rastrigin
: public IOHprofiler_problem<double>¶Public Functions
-Lunacek_Bi_Rastrigin
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Lunacek_Bi_Rastrigin
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_MIS.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
Defined in File f_nk_landscapes.hpp
public IOHprofiler_random
(Class IOHprofiler_random)
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
NK_Landscapes
: public IOHprofiler_random, public IOHprofiler_problem<int>¶Public Functions
-NK_Landscapes
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~NK_Landscapes
()¶set_n_k
(const int n, const int k)¶prepare_problem
()¶internal_evaluate
(const std::vector<int> &x)¶Public Members
-F
¶E
¶k
= 1¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_N_queens.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
NQueens
: public IOHprofiler_problem<int>¶Defined in File f_one_max.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
Defined in File f_one_max_dummy1.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
OneMax_Dummy1
: public IOHprofiler_problem<int>¶Public Functions
-OneMax_Dummy1
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~OneMax_Dummy1
()¶prepare_problem
()¶internal_evaluate
(const std::vector<int> &x)¶Public Members
-info
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_one_max_dummy2.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
OneMax_Dummy2
: public IOHprofiler_problem<int>¶Public Functions
-OneMax_Dummy2
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~OneMax_Dummy2
()¶prepare_problem
()¶internal_evaluate
(const std::vector<int> &x)¶Public Members
-info
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_one_max_epistasis.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
OneMax_Epistasis
: public IOHprofiler_problem<int>¶Public Functions
-OneMax_Epistasis
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~OneMax_Epistasis
()¶customize_optimal
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_one_max_neutrality.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
OneMax_Neutrality
: public IOHprofiler_problem<int>¶Public Functions
-OneMax_Neutrality
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~OneMax_Neutrality
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_one_max_ruggedness1.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
OneMax_Ruggedness1
: public IOHprofiler_problem<int>¶Public Functions
-OneMax_Ruggedness1
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~OneMax_Ruggedness1
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_one_max_ruggedness2.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
OneMax_Ruggedness2
: public IOHprofiler_problem<int>¶Public Functions
-OneMax_Ruggedness2
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~OneMax_Ruggedness2
()¶internal_evaluate
(const std::vector<int> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_one_max_ruggedness3.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
OneMax_Ruggedness3
: public IOHprofiler_problem<int>¶Public Functions
-OneMax_Ruggedness3
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~OneMax_Ruggedness3
()¶prepare_problem
()¶internal_evaluate
(const std::vector<int> &x)¶Public Members
-info
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File IOHprofiler_PBO_suite.hpp
public IOHprofiler_suite< int >
(Template Class IOHprofiler_suite)
PBO_suite
: public IOHprofiler_suite<int>¶Public Functions
-PBO_suite
()¶PBO_suite
(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension)¶registerProblem
()¶Implementation of virtual function of base class IOHprofiler_suite.
-23 functions are included in the PBO_suite.
-Defined in File f_rastrigin.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Defined in File f_rastrigin_rotated.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Rastrigin_Rotated
: public IOHprofiler_problem<double>¶Public Functions
-Rastrigin_Rotated
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Rastrigin_Rotated
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_rosenbrock.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Rosenbrock
: public IOHprofiler_problem<double>¶Public Functions
-Rosenbrock
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Rosenbrock
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_rosenbrock_rotated.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Rosenbrock_Rotated
: public IOHprofiler_problem<double>¶Public Functions
-Rosenbrock_Rotated
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Rosenbrock_Rotated
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_schaffers10.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Schaffers10
: public IOHprofiler_problem<double>¶Public Functions
-Schaffers10
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Schaffers10
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Members
-conditioning
= 10¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_schaffers1000.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Schaffers1000
: public IOHprofiler_problem<double>¶Public Functions
-Schaffers1000
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Schaffers1000
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Members
-conditioning
= 1000¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_schwefel.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Defined in File f_sharp_ridge.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Sharp_Ridge
: public IOHprofiler_problem<double>¶Public Functions
-Sharp_Ridge
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Sharp_Ridge
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_sphere.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Defined in File f_step_ellipsoid.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Step_Ellipsoid
: public IOHprofiler_problem<double>¶Public Functions
-Step_Ellipsoid
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Step_Ellipsoid
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Members
-xopt
¶fopt
¶rot1
¶rot2
¶datax
¶dataxx
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_w_model_leading_ones.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
W_Model_LeadingOnes
: public IOHprofiler_problem<int>¶Public Functions
-W_Model_LeadingOnes
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~W_Model_LeadingOnes
()¶prepare_problem
()¶customize_optimal
()¶set_w_setting
(const double dummy_para, const int epistasis_para, const int neutrality_para, const int ruggedness_para)¶A function to configure w-model layers.
-For details of w-model, please read
-https://www.sciencedirect.com/science/article/pii/S1568494619308099 and https://dl.acm.org/doi/pdf/10.1145/3205651.3208240dummy_para
: percentage of valid bits.
epistasis_para
: size of sub-string for epistasis
neutrality_para
: size of sub-string for neutrality
ruggedness_para
: gamma for ruggedness layper
internal_evaluate
(const std::vector<int> &x)¶Public Members
-dummy_info
¶dummy_para
= 0¶epistasis_para
= 0¶neutrality_para
= 0¶ruggedness_para
= 0¶ruggedness_info
¶temp_dimension
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_w_model_one_max.hpp
public IOHprofiler_problem< int >
(Template Class IOHprofiler_problem)
W_Model_OneMax
: public IOHprofiler_problem<int>¶Public Functions
-W_Model_OneMax
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~W_Model_OneMax
()¶prepare_problem
()¶customize_optimal
()¶set_w_setting
(const double dummy_para, const int epistasis_para, const int neutrality_para, const int ruggedness_para)¶A function to configure w-model layers.
-For details of w-model, please read
-https://www.sciencedirect.com/science/article/pii/S1568494619308099 and https://dl.acm.org/doi/pdf/10.1145/3205651.3208240dummy_para
: percentage of valid bits.
epistasis_para
: size of sub-string for epistasis
neutrality_para
: size of sub-string for neutrality
ruggedness_para
: gamma for ruggedness layper
internal_evaluate
(const std::vector<int> &x)¶Public Members
-dummy_info
¶dummy_para
= 0¶epistasis_para
= 0¶neutrality_para
= 0¶ruggedness_para
= 0¶ruggedness_info
¶temp_dimension
¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File f_weierstrass.hpp
public IOHprofiler_problem< double >
(Template Class IOHprofiler_problem)
Weierstrass
: public IOHprofiler_problem<double>¶Public Functions
-Weierstrass
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶~Weierstrass
()¶prepare_problem
()¶internal_evaluate
(const std::vector<double> &x)¶Public Members
-condition
= 100.0¶f0
¶ak
[12]¶bk
[12]¶Public Static Functions
-createInstance
(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION)¶Defined in File IOHprofiler_class_generator.h
Defined in File IOHprofiler_class_generator.h
ancestorType
, class manufacturedObj
, typename classIDKey
= defaultIDKeyType>registerInFactory
¶Helper template to make registration simple.
-Public Functions
-registerInFactory
(const classIDKey id)¶Register the creation function.
-This simply associates the classIDKey with the function used to create the class.
The return value is a dummy value, which is used to allow static initialization of the registry.
- -Public Static Functions
-createInstance
()¶Defined in File IOHprofiler_common.cpp
Warning
-doxygendefine: Cannot find define “_IOHPROFILER_COMMON_CPP” in doxygen xml output for project “IOHexperimenter” from directory: ./xml
-Defined in File IOHprofiler_common.h
Defined in File IOHprofiler_common.h
Defined in File IOHprofiler_common.h
Defined in File IOHprofiler_common.h
Defined in File IOHprofiler_common.h
Defined in File IOHprofiler_common.h
Defined in File IOHprofiler_configuration.h
Defined in File IOHprofiler_configuration.h
Defined in File IOHprofiler_random.h
Defined in File IOHprofiler_random.h
Defined in File IOHprofiler_random.h
Defined in File IOHprofiler_random.h
Defined in File IOHprofiler_random.h
Defined in File IOHprofiler_random.h
Defined in File IOHprofiler_random.h
Defined in File IOHprofiler_random.h
Defined in File IOHprofiler_random.h
Defined in File f_weierstrass.hpp
F_WEIERSTRASS_SUMMANDS
¶Number of summands in the Weierstrass problem.
-Defined in File suite_bbob_legacy_code.hpp
↰ Parent directory (src
)
Directory path: src/Problems
↰ Parent directory (src/Problems
)
Directory path: src/Problems/BBOB
↰ Parent directory (src/Problems/BBOB
)
Directory path: src/Problems/BBOB/bbob_common_used_functions
↰ Parent directory (src/Problems
)
Directory path: src/Problems/PBO
↰ Parent directory (src/Problems
)
Directory path: src/Problems/WModel
↰ Parent directory (src/Problems
)
Directory path: src/Problems/common_used_functions
↰ Parent directory (src
)
Directory path: src/Template
↰ Parent directory (src/Template
)
Directory path: src/Template/Experiments
↰ Parent directory (src/Template
)
Directory path: src/Template/Loggers
↰ Parent directory (src/Problems/BBOB/bbob_common_used_functions
)
Contents
- -src/Problems/BBOB/bbob_common_used_functions/coco_transformation.cpp
)¶coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB/bbob_common_used_functions
)
Contents
- -src/Problems/BBOB/bbob_common_used_functions/coco_transformation.hpp
)¶coco_transformation_objs.hpp
(File coco_transformation_objs.hpp)
coco_transformation_vars.hpp
(File coco_transformation_vars.hpp)
suite_bbob_legacy_code.hpp
(File suite_bbob_legacy_code.hpp)
↰ Parent directory (src/Problems/BBOB/bbob_common_used_functions
)
Contents
- -src/Problems/BBOB/bbob_common_used_functions/coco_transformation_objs.hpp
)¶suite_bbob_legacy_code.hpp
(File suite_bbob_legacy_code.hpp)
↰ Parent directory (src/Problems/BBOB/bbob_common_used_functions
)
Contents
- -src/Problems/BBOB/bbob_common_used_functions/coco_transformation_vars.hpp
)¶suite_bbob_legacy_code.hpp
(File suite_bbob_legacy_code.hpp)
↰ Parent directory (src/Problems/BBOB/bbob_common_used_functions
)
Contents
- -src/Problems/BBOB/bbob_common_used_functions/suite_bbob_legacy_code.hpp
)¶IOHprofiler_random.h
(File IOHprofiler_random.h)
↰ Parent directory (src/Problems/BBOB
)
Contents
- -src/Problems/BBOB/f_attractive_sector.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class f_Bent_Cigar.
-Contents
- -src/Problems/BBOB/f_bent_cigar.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_bent_cigar.c”
-Furong Ye
-2019-09-10
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
Contents
- -src/Problems/BBOB/f_bueche_rastrigin.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
Contents
- -src/Problems/BBOB/f_different_powers.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
Contents
- -src/Problems/BBOB/f_discus.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class f_ellipsoid.
-Contents
- -src/Problems/BBOB/f_ellipsoid.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_ellipsoid.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Ellipsoid_Rotated.
-Contents
- -src/Problems/BBOB/f_ellipsoid_rotated.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_ellipsoid.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
Contents
- -src/Problems/BBOB/f_gallagher101.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class f_gallagher21.
-Contents
- -src/Problems/BBOB/f_gallagher21.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_gallagher.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
Contents
- -src/Problems/BBOB/f_griewank_rosenbrock.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Katsuura.
-Contents
- -src/Problems/BBOB/f_katsuura.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_katsuura.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Linear_Slope.
-Contents
- -src/Problems/BBOB/f_linear_slope.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_linear_slope.c”
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Lunacek_Bi_Rastrigin.
-Contents
- -src/Problems/BBOB/f_lunacek_bi_rastrigin.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_lunacek_bi_rastrigin.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Rastrigin.
-Contents
- -src/Problems/BBOB/f_rastrigin.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_rastrigin.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Rastrigin_Rotated.
-Contents
- -src/Problems/BBOB/f_rastrigin_rotated.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_rastrigin.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Rosenbrock.
-Contents
- -src/Problems/BBOB/f_rosenbrock.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_rosenbrock.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Rosenbrock_Rotated.
-Contents
- -src/Problems/BBOB/f_rosenbrock_rotated.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_rosenbrock.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Schaffers10.
-Contents
- -src/Problems/BBOB/f_schaffers10.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_schaffers.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
Contents
- -src/Problems/BBOB/f_schaffers1000.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Schwefel.
-Contents
- -src/Problems/BBOB/f_schwefel.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_schwefel.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Sharp_Ridge.
-Contents
- -src/Problems/BBOB/f_sharp_ridge.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_sharp_ridge.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Sphere.
-Contents
- -src/Problems/BBOB/f_sphere.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_sphere.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Step_Ellipsoid.
-Contents
- -src/Problems/BBOB/f_step_ellipsoid.hpp
)¶A detailed file description. Refer “https://github.com/numbbo/coco/blob/master/code-experiments/src/f_step_ellipsoid.c”
-Furong Ye
-2019-09-12
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems/BBOB
)
cpp file for class Class Weierstrass.
-Contents
- -src/Problems/BBOB/f_weierstrass.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Problems
)
Contents
- -src/Problems/IOHprofiler_all_problems.hpp
)¶IOHprofiler_class_generator.h
(File IOHprofiler_class_generator.h)
f_MIS.hpp
(File f_MIS.hpp)
f_N_queens.hpp
(File f_N_queens.hpp)
f_ising_1D.hpp
f_ising_2D.hpp
f_ising_triangle.hpp
f_labs.hpp
(File f_labs.hpp)
f_leading_ones.hpp
(File f_leading_ones.hpp)
f_leading_ones_dummy1.hpp
(File f_leading_ones_dummy1.hpp)
f_leading_ones_dummy2.hpp
(File f_leading_ones_dummy2.hpp)
f_leading_ones_epistasis.hpp
(File f_leading_ones_epistasis.hpp)
f_leading_ones_neutrality.hpp
(File f_leading_ones_neutrality.hpp)
f_leading_ones_ruggedness1.hpp
(File f_leading_ones_ruggedness1.hpp)
f_leading_ones_ruggedness2.hpp
(File f_leading_ones_ruggedness2.hpp)
f_leading_ones_ruggedness3.hpp
(File f_leading_ones_ruggedness3.hpp)
f_linear.hpp
(File f_linear.hpp)
f_one_max.hpp
(File f_one_max.hpp)
f_one_max_dummy1.hpp
(File f_one_max_dummy1.hpp)
f_one_max_dummy2.hpp
(File f_one_max_dummy2.hpp)
f_one_max_epistasis.hpp
(File f_one_max_epistasis.hpp)
f_one_max_neutrality.hpp
(File f_one_max_neutrality.hpp)
f_one_max_ruggedness1.hpp
(File f_one_max_ruggedness1.hpp)
f_one_max_ruggedness2.hpp
(File f_one_max_ruggedness2.hpp)
f_one_max_ruggedness3.hpp
(File f_one_max_ruggedness3.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_MIS.
-Contents
- -src/Problems/PBO/f_MIS.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_N_queens.
-Contents
- -src/Problems/PBO/f_N_queens.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
Contents
- -src/Problems/PBO/f_concatenated_trap.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class Class Ising_Ring.
-Contents
- -src/Problems/PBO/f_ising_ring.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_ising_torus.
-Contents
- -src/Problems/PBO/f_ising_torus.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class Class Ising_Triangular.
-Contents
- -src/Problems/PBO/f_ising_triangular.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_labs.
-Contents
- -src/Problems/PBO/f_labs.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_leading_ones.
-Contents
- -src/Problems/PBO/f_leading_ones.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_leading_ones_dummy1.
-Contents
- -src/Problems/PBO/f_leading_ones_dummy1.hpp
)¶This file implements a Class LeadingOnes problem with reduction of dummy variables. The reduction rate is chosen as 0.5.
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_leading_ones_dummy2.
-Contents
- -src/Problems/PBO/f_leading_ones_dummy2.hpp
)¶This file implements a Class LeadingOnes problem with reduction of dummy variables. The reduction rate is chosen as 0.9.
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_leading_ones_epistasis.
-Contents
- -src/Problems/PBO/f_leading_ones_epistasis.hpp
)¶This file implements a Class LeadingOnes problem with epistasis transformation method from w-model. The parameter v is chosen as 4.
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_leading_ones_neutrality.
-Contents
- -src/Problems/PBO/f_leading_ones_neutrality.hpp
)¶This file implements a Class LeadingOnes problem with neutrality transformation method from w-model. The parameter mu is chosen as 3.
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_leading_ones_ruggedness1.
-Contents
- -src/Problems/PBO/f_leading_ones_ruggedness1.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_leading_ones_ruggedness2.
-Contents
- -src/Problems/PBO/f_leading_ones_ruggedness2.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_leading_ones_ruggedness3.
-Contents
- -src/Problems/PBO/f_leading_ones_ruggedness3.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_linear.
-Contents
- -src/Problems/PBO/f_linear.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_nk_landscapes.
-Contents
- -src/Problems/PBO/f_nk_landscapes.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_one_max.
-Contents
- -src/Problems/PBO/f_one_max.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_one_max_dummy1.
-Contents
- -src/Problems/PBO/f_one_max_dummy1.hpp
)¶This file implements a Class OneMax problem with reduction of dummy variables. The reduction rate is chosen as 0.5.
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_one_max_dummy2.
-Contents
- -src/Problems/PBO/f_one_max_dummy2.hpp
)¶This file implements a Class OneMax problem with reduction of dummy variables. The reduction rate is chosen as 0.9.
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_one_max_epistasis.
-Contents
- -src/Problems/PBO/f_one_max_epistasis.hpp
)¶This file implements a Class OneMax problem with epistasis transformation method from w-model. The parameter v is chosen as 4.
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_one_max_neutrality.
-Contents
- -src/Problems/PBO/f_one_max_neutrality.hpp
)¶This file implements a Class OneMax problem with neutrality transformation method from w-model. The parameter mu is chosen as 3.
-Furong Ye
-2019-06-27
-IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_one_max_ruggedness1.
-Contents
- -src/Problems/PBO/f_one_max_ruggedness1.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_one_max_ruggedness2.
-Contents
- -src/Problems/PBO/f_one_max_ruggedness2.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/PBO
)
cpp file for class f_one_max_ruggedness3.
-Contents
- -src/Problems/PBO/f_one_max_ruggedness3.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems
)
Contents
- -src/Problems/README.md
)¶↰ Parent directory (src/Problems/WModel
)
cpp file for class File f_w_model_leading_ones.hpp
-Contents
- -src/Problems/WModel/f_w_model_leading_ones.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/WModel
)
cpp file for class File f_w_model_one_max.hpp
-Contents
- -src/Problems/WModel/f_w_model_one_max.hpp
)¶IOHprofiler_problem.h
(File IOHprofiler_problem.h)
wmodels.hpp
(File wmodels.hpp)
↰ Parent directory (src/Problems/common_used_functions
)
Contents
- -src/Problems/common_used_functions/wmodels.hpp
)¶IOHprofiler_random.h
(File IOHprofiler_random.h)
↰ Parent directory (src/Suites
)
HPP file for class IOHprofiler_BBOB_suite.
-Contents
- -src/Suites/IOHprofiler_BBOB_suite.hpp
)¶A suite of bbob problems (24 problems, 1-100 instances, and dimension <= 100).
-Furong Ye
-2019-09-12
-IOHprofiler_suite.h
(File IOHprofiler_suite.h)
f_attractive_sector.hpp
(File f_attractive_sector.hpp)
f_bent_cigar.hpp
(File f_bent_cigar.hpp)
f_bueche_rastrigin.hpp
(File f_bueche_rastrigin.hpp)
f_different_powers.hpp
(File f_different_powers.hpp)
f_discus.hpp
(File f_discus.hpp)
f_ellipsoid.hpp
(File f_ellipsoid.hpp)
f_ellipsoid_rotated.hpp
(File f_ellipsoid_rotated.hpp)
f_gallagher101.hpp
(File f_gallagher101.hpp)
f_gallagher21.hpp
(File f_gallagher21.hpp)
f_griewank_rosenbrock.hpp
(File f_griewank_rosenbrock.hpp)
f_katsuura.hpp
(File f_katsuura.hpp)
f_linear_slope.hpp
(File f_linear_slope.hpp)
f_lunacek_bi_rastrigin.hpp
(File f_lunacek_bi_rastrigin.hpp)
f_rastrigin.hpp
(File f_rastrigin.hpp)
f_rastrigin_rotated.hpp
(File f_rastrigin_rotated.hpp)
f_rosenbrock.hpp
(File f_rosenbrock.hpp)
f_rosenbrock_rotated.hpp
(File f_rosenbrock_rotated.hpp)
f_schaffers10.hpp
(File f_schaffers10.hpp)
f_schaffers1000.hpp
(File f_schaffers1000.hpp)
f_schwefel.hpp
(File f_schwefel.hpp)
f_sharp_ridge.hpp
(File f_sharp_ridge.hpp)
f_sphere.hpp
(File f_sphere.hpp)
f_step_ellipsoid.hpp
(File f_step_ellipsoid.hpp)
f_weierstrass.hpp
(File f_weierstrass.hpp)
↰ Parent directory (src/Suites
)
Contents
- -src/Suites/IOHprofiler_PBO_suite.hpp
)¶IOHprofiler_suite.h
(File IOHprofiler_suite.h)
f_MIS.hpp
(File f_MIS.hpp)
f_N_queens.hpp
(File f_N_queens.hpp)
f_ising_ring.hpp
(File f_ising_ring.hpp)
f_ising_torus.hpp
(File f_ising_torus.hpp)
f_ising_triangular.hpp
(File f_ising_triangular.hpp)
f_labs.hpp
(File f_labs.hpp)
f_leading_ones.hpp
(File f_leading_ones.hpp)
f_leading_ones_dummy1.hpp
(File f_leading_ones_dummy1.hpp)
f_leading_ones_dummy2.hpp
(File f_leading_ones_dummy2.hpp)
f_leading_ones_epistasis.hpp
(File f_leading_ones_epistasis.hpp)
f_leading_ones_neutrality.hpp
(File f_leading_ones_neutrality.hpp)
f_leading_ones_ruggedness1.hpp
(File f_leading_ones_ruggedness1.hpp)
f_leading_ones_ruggedness2.hpp
(File f_leading_ones_ruggedness2.hpp)
f_leading_ones_ruggedness3.hpp
(File f_leading_ones_ruggedness3.hpp)
f_linear.hpp
(File f_linear.hpp)
f_one_max.hpp
(File f_one_max.hpp)
f_one_max_dummy1.hpp
(File f_one_max_dummy1.hpp)
f_one_max_dummy2.hpp
(File f_one_max_dummy2.hpp)
f_one_max_epistasis.hpp
(File f_one_max_epistasis.hpp)
f_one_max_neutrality.hpp
(File f_one_max_neutrality.hpp)
f_one_max_ruggedness1.hpp
(File f_one_max_ruggedness1.hpp)
f_one_max_ruggedness2.hpp
(File f_one_max_ruggedness2.hpp)
f_one_max_ruggedness3.hpp
(File f_one_max_ruggedness3.hpp)
↰ Parent directory (src/Suites
)
cpp file for class IOHprofiler_all_suites.
-Contents
- -src/Suites/IOHprofiler_all_suites.hpp
)¶IOHprofiler_BBOB_suite.hpp
(File IOHprofiler_BBOB_suite.hpp)
IOHprofiler_PBO_suite.hpp
(File IOHprofiler_PBO_suite.hpp)
IOHprofiler_class_generator.h
(File IOHprofiler_class_generator.h)
↰ Parent directory (src/Suites
)
Contents
- -src/Suites/README.md
)¶↰ Parent directory (src/Template/Experiments
)
Cpp file for the class of Class IOHprofiler_configuration.
-Contents
- -src/Template/Experiments/IOHprofiler_configuration.cpp
)¶Furong Ye
-IOHprofiler_configuration.h
(File IOHprofiler_configuration.h)
↰ Parent directory (src/Template/Experiments
)
head file for the class of Class IOHprofiler_configuration.
-Contents
- -src/Template/Experiments/IOHprofiler_configuration.h
)¶Furong Ye
-IOHprofiler_string.hpp
(File IOHprofiler_string.hpp)
↰ Parent directory (src/Template/Experiments
)
Contents
- -src/Template/Experiments/IOHprofiler_experimenter.h
)¶IOHprofiler_all_suites.hpp
(File IOHprofiler_all_suites.hpp)
IOHprofiler_common.h
(File IOHprofiler_common.h)
IOHprofiler_configuration.h
(File IOHprofiler_configuration.h)
IOHprofiler_csv_logger.h
(File IOHprofiler_csv_logger.h)
IOHprofiler_experimenter.hpp
(File IOHprofiler_experimenter.hpp)
ctime
↰ Parent directory (src/Template/Experiments
)
src/Template/Experiments/IOHprofiler_experimenter.hpp
)¶↰ Parent directory (src/Template/Experiments
)
head file for common used operations on strings.
-Contents
- -src/Template/Experiments/IOHprofiler_string.hpp
)¶IOHprofiler_common.h
(File IOHprofiler_common.h)
sstream
↰ Parent directory (src/Template/Experiments
)
Contents
- -src/Template/Experiments/README.md
)¶↰ Parent directory (src/Template
)
Contents
- -src/Template/IOHprofiler_class_generator.h
)¶IOHprofiler_class_generator.hpp
(File IOHprofiler_class_generator.hpp)
IOHprofiler_common.h
(File IOHprofiler_common.h)
↰ Parent directory (src/Template
)
Head file for the classes: ‘Template Class genericGenerator’ and ‘Template Class registerInFactory’.
-Contents
- -src/Template/IOHprofiler_class_generator.hpp
)¶These classes are used for registering problems and suites.
-Ofer M. Sher, Furong Ye
-↰ Parent directory (src/Template
)
Contents
- -src/Template/IOHprofiler_common.cpp
)¶IOHprofiler_common.h
(File IOHprofiler_common.h)
↰ Parent directory (src/Template
)
Contents
- -src/Template/IOHprofiler_common.h
)¶IOHprofiler_platform.h
(File IOHprofiler_platform.h)
algorithm
cassert
cfloat
cmath
cstddef
cstdlib
fstream
iostream
limits
map
memory
sstream
string
(File IOHprofiler_string.hpp)
vector
↰ Parent directory (src/Template
)
Cpp file for the class Class IOHprofiler_observer.
-Contents
- -src/Template/IOHprofiler_observer.cpp
)¶Furong Ye
-IOHprofiler_observer.h
(File IOHprofiler_observer.h)
↰ Parent directory (src/Template
)
Header file for the class Class IOHprofiler_observer.
-Contents
- -src/Template/IOHprofiler_observer.h
)¶Furong Ye
-IOHprofiler_common.h
(File IOHprofiler_common.h)
IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Template
)
Header file for the template class Template Class IOHprofiler_problem.
-Contents
- -src/Template/IOHprofiler_problem.h
)¶IOHprofiler_common.h
(File IOHprofiler_common.h)
IOHprofiler_problem.hpp
(File IOHprofiler_problem.hpp)
IOHprofiler_transformation.h
(File IOHprofiler_transformation.h)
↰ Parent directory (src/Template
)
Contents
- -src/Template/IOHprofiler_problem.hpp
)¶↰ Parent directory (src/Template
)
Cpp file for the class Class IOHprofiler_random.
-Contents
- -src/Template/IOHprofiler_random.cpp
)¶A detailed file description. The implementation refer to the work of NumBBO/CoCO team.
-IOHprofiler_random.h
(File IOHprofiler_random.h)
↰ Parent directory (src/Template
)
Contents
- -src/Template/IOHprofiler_random.h
)¶IOHprofiler_common.h
(File IOHprofiler_common.h)
↰ Parent directory (src/Template
)
Header file for the template class Template Class IOHprofiler_suite.
-Contents
- -src/Template/IOHprofiler_suite.h
)¶Furong Ye
-IOHprofiler_class_generator.h
(File IOHprofiler_class_generator.h)
IOHprofiler_problem.h
(File IOHprofiler_problem.h)
IOHprofiler_suite.hpp
(File IOHprofiler_suite.hpp)
↰ Parent directory (src/Template
)
Contents
- -src/Template/IOHprofiler_suite.hpp
)¶↰ Parent directory (src/Template
)
Cpp file for the class Class IOHprofiler_transformation.
-Contents
- -src/Template/IOHprofiler_transformation.cpp
)¶IOHprofiler_transformation.h
(File IOHprofiler_transformation.h)
↰ Parent directory (src/Template
)
Contents
- -src/Template/IOHprofiler_transformation.h
)¶IOHprofiler_common.h
(File IOHprofiler_common.h)
IOHprofiler_random.h
(File IOHprofiler_random.h)
coco_transformation.hpp
(File coco_transformation.hpp)
↰ Parent directory (src/Template/Loggers
)
cpp file for the class Class IOHprofiler_csv_logger.
-Contents
- -src/Template/Loggers/IOHprofiler_csv_logger.cpp
)¶IOHprofiler_csv_logger.h
(File IOHprofiler_csv_logger.h)
↰ Parent directory (src/Template/Loggers
)
Header file for class Class IOHprofiler_csv_logger.
-Contents
- -src/Template/Loggers/IOHprofiler_csv_logger.h
)¶Furong Ye
-IOHprofiler_observer.h
(File IOHprofiler_observer.h)
IOHprofiler_problem.h
(File IOHprofiler_problem.h)
↰ Parent directory (src/Template
)
Contents
- -src/Template/README.md
)¶Defined in File IOHprofiler_common.cpp
Defined in File IOHprofiler_common.cpp
Warning
-doxygenfunction: Unable to resolve multiple matches for function “IOH_log” with arguments (std::string, std::ofstream&) in doxygen xml output for project “IOHexperimenter” from directory: ./xml. -Potential matches: -
-- void IOH_log(std::string log_info)
-- void IOH_log(std::string log_info, std::ofstream &log_stream)
-
Defined in File IOHprofiler_common.cpp
Warning
-doxygenfunction: Unable to resolve multiple matches for function “IOH_log” with arguments (std::string) in doxygen xml output for project “IOHexperimenter” from directory: ./xml. -Potential matches: -
-- void IOH_log(std::string log_info)
-- void IOH_log(std::string log_info, std::ofstream &log_stream)
-
Defined in File IOHprofiler_common.cpp
Defined in File IOHprofiler_common.h
IOH_error
(std::string error_info)Defined in File IOHprofiler_common.h
Warning
-doxygenfunction: Unable to resolve multiple matches for function “compareObjectives” with arguments (const valueType, const valueType, const IOH_optimization_type) in doxygen xml output for project “IOHexperimenter” from directory: ./xml. -Potential matches: -
-- template<class valueType> bool compareObjectives(const std::vector<valueType> &v1, const std::vector<valueType> &v2, const IOH_optimization_type optimization_type)
-- template<class valueType> bool compareObjectives(const valueType v1, const valueType v2, const IOH_optimization_type optimization_type)
-
Defined in File IOHprofiler_common.h
Defined in File IOHprofiler_common.h
Defined in File IOHprofiler_common.h
Warning
-doxygenfunction: Unable to resolve multiple matches for function “IOH_log” with arguments (std::string, std::ofstream&) in doxygen xml output for project “IOHexperimenter” from directory: ./xml. -Potential matches: -
-- void IOH_log(std::string log_info)
-- void IOH_log(std::string log_info, std::ofstream &log_stream)
-
Defined in File IOHprofiler_common.h
Warning
-doxygenfunction: Unable to resolve multiple matches for function “IOH_log” with arguments (std::string) in doxygen xml output for project “IOHexperimenter” from directory: ./xml. -Potential matches: -
-- void IOH_log(std::string log_info)
-- void IOH_log(std::string log_info, std::ofstream &log_stream)
-
Defined in File IOHprofiler_common.h
IOH_warning
(std::string warning_info)Defined in File IOHprofiler_common.h
Warning
-doxygenfunction: Unable to resolve multiple matches for function “compareObjectives” with arguments (const std::vector<valueType>&, const std::vector<valueType>&, const IOH_optimization_type) in doxygen xml output for project “IOHexperimenter” from directory: ./xml. -Potential matches: -
-- template<class valueType> bool compareObjectives(const std::vector<valueType> &v1, const std::vector<valueType> &v2, const IOH_optimization_type optimization_type)
-- template<class valueType> bool compareObjectives(const valueType v1, const valueType v2, const IOH_optimization_type optimization_type)
-
Defined in File IOHprofiler_string.hpp
get_int_vector_parse_string
(std::string input, const int _min, const int _max)¶To get a vector of integer values with a range ‘n-m’.
-Return a vector of integer value. The supported formats are: ‘-m’, [_min, m] ‘n-‘, [n, _max] ‘n-m’, [n, m] ‘n-x-y-z-m’, [n,m] \para input string \para _int int \para _max int
std::vector<int>
-Defined in File IOHprofiler_string.hpp
Defined in File coco_transformation.hpp
Defined in File coco_transformation.hpp
Defined in File coco_transformation_objs.hpp
Defined in File coco_transformation_objs.hpp
Defined in File coco_transformation_objs.hpp
Defined in File coco_transformation_objs.hpp
Defined in File coco_transformation_objs.hpp
Defined in File coco_transformation_objs.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File coco_transformation_vars.hpp
Defined in File f_gallagher101.hpp
Defined in File f_gallagher21.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File suite_bbob_legacy_code.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
Defined in File wmodels.hpp
↰ Return to documentation for file (src/Problems/BBOB/bbob_common_used_functions/coco_transformation.cpp
)
#include "coco_transformation.hpp"
-
-std::vector<double> Coco_Transformation_Data::raw_x = std::vector<double>(0);
-std::vector<double> Coco_Transformation_Data::xopt = std::vector<double>(0);
-std::vector<double> Coco_Transformation_Data::tmp1 = std::vector<double>(0);
-std::vector<double> Coco_Transformation_Data::tmp2 = std::vector<double>(0);
-double Coco_Transformation_Data::fopt = 0;
-double Coco_Transformation_Data::penalty_factor = 0;
-double Coco_Transformation_Data::factor = 0;
-double Coco_Transformation_Data::lower_bound = 0;
-double Coco_Transformation_Data::upper_bound = 0;
-std::vector<std::vector<double> > Coco_Transformation_Data::M = std::vector<std::vector<double>>(0);
-std::vector<double> Coco_Transformation_Data::b = std::vector<double>(0);;
-std::vector<std::vector<double> > Coco_Transformation_Data::M1 = std::vector<std::vector<double>>(0);
-std::vector<double> Coco_Transformation_Data::b1 = std::vector<double>(0);;
-std::vector<std::vector<double> > Coco_Transformation_Data::rot1 = std::vector<std::vector<double>>(0);
-std::vector<std::vector<double> > Coco_Transformation_Data::rot2 = std::vector<std::vector<double>>(0);
-std::vector<double> Coco_Transformation_Data::datax = std::vector<double>(0);;
-std::vector<double> Coco_Transformation_Data::dataxx = std::vector<double>(0);;
-std::vector<double> Coco_Transformation_Data::minus_one = std::vector<double>(0);;
-double Coco_Transformation_Data::condition = 0;
-long Coco_Transformation_Data::rseed = 0;
-
↰ Return to documentation for file (src/Problems/BBOB/bbob_common_used_functions/coco_transformation.hpp
)
#ifndef _COCO_TRANSFORMATION_HPP
-#define _COCO_TRANSFORMATION_HPP
-
-#include "suite_bbob_legacy_code.hpp"
-#include "coco_transformation_vars.hpp"
-#include "coco_transformation_objs.hpp"
-
-class Coco_Transformation_Data {
-public:
- static std::vector<double> raw_x;
- static std::vector<double> xopt;
- static std::vector<double> tmp1;
- static std::vector<double> tmp2;
- static double fopt;
- static double penalty_factor;
- static double factor;
- static double lower_bound;
- static double upper_bound;
- static std::vector<std::vector<double> > M;
- static std::vector<double> b;
- static std::vector<std::vector<double> > M1;
- static std::vector<double> b1;
- static std::vector<std::vector<double> > rot1;
- static std::vector<std::vector<double> > rot2;
- static std::vector<double> datax;
- static std::vector<double> dataxx;
- static std::vector<double> minus_one;
- static double condition;
- static long rseed;
-};
-
-
-static void coco_tranformation_vars (std::vector<double> &x, const int problem_id) {
- if (problem_id == 1) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- } else if (problem_id == 2) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_oscillate_evaluate_function(x);
- } else if (problem_id == 3) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_oscillate_evaluate_function(x);
- transform_vars_asymmetric_evaluate_function(x,0.2);
- transform_vars_conditioning_evaluate(x,10.0);
-
- } else if (problem_id == 4) {
- Coco_Transformation_Data::raw_x = x;
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_oscillate_evaluate_function(x);
- transform_vars_brs_evaluate(x);
- } else if (problem_id == 5) {
-
- } else if (problem_id == 6) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 7) {
-
- } else if (problem_id == 8) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_scale_evaluate(x,Coco_Transformation_Data::factor);
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::minus_one);
- } else if (problem_id == 9) {
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 10) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- transform_vars_oscillate_evaluate_function(x);
- } else if (problem_id == 11) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- transform_vars_oscillate_evaluate_function(x);
- } else if (problem_id == 12) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- transform_vars_asymmetric_evaluate_function(x,0.5);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 13) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 14) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 15) {
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M1,Coco_Transformation_Data::b1);
- transform_vars_oscillate_evaluate_function(x);
- transform_vars_asymmetric_evaluate_function(x,0.2);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 16) {
- Coco_Transformation_Data::raw_x = x;
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M1,Coco_Transformation_Data::b1);
- transform_vars_oscillate_evaluate_function(x);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 17) {
- Coco_Transformation_Data::raw_x = x;
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M1,Coco_Transformation_Data::b1);
- transform_vars_asymmetric_evaluate_function(x,0.5);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 18) {
- Coco_Transformation_Data::raw_x = x;
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M1,Coco_Transformation_Data::b1);
- transform_vars_asymmetric_evaluate_function(x,0.5);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 19) {
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- } else if (problem_id == 20) {
- transform_vars_x_hat_evaluate(x,Coco_Transformation_Data::rseed);
- transform_vars_scale_evaluate(x,2);
- transform_vars_z_hat_evaluate(x,Coco_Transformation_Data::xopt);
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::tmp2);
- transform_vars_conditioning_evaluate(x,10.0);
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::tmp1);
- transform_vars_scale_evaluate(x,100);
- } else if (problem_id == 21) {
-
- } else if (problem_id == 22) {
-
- } else if (problem_id == 23) {
- Coco_Transformation_Data::raw_x = x;
- transform_vars_shift_evaluate_function(x,Coco_Transformation_Data::xopt);
- transform_vars_affine_evaluate_function(x,Coco_Transformation_Data::M,Coco_Transformation_Data::b);
- } else if (problem_id == 24) {
-
- } else {
- }
-}
-
-static void coco_tranformation_objs (const std::vector<double> &x, std::vector<double> &y, const int problem_id) {
- if (problem_id == 1) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 2) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 3) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 4) {
- /* ignore large-scale test */
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- transform_obj_penalize_evaluate(Coco_Transformation_Data::raw_x,Coco_Transformation_Data::lower_bound,Coco_Transformation_Data::upper_bound,Coco_Transformation_Data::penalty_factor,y);
- } else if (problem_id == 5) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 6) {
- transform_obj_oscillate_evaluate(y);
- transform_obj_power_evaluate(y,0.9);
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 7) {
-
- } else if (problem_id == 8) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 9) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 10) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 11) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 12) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 13) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 14) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 15) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 16) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- transform_obj_penalize_evaluate(Coco_Transformation_Data::raw_x,Coco_Transformation_Data::lower_bound,Coco_Transformation_Data::upper_bound,Coco_Transformation_Data::penalty_factor,y);
- } else if (problem_id == 17) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- transform_obj_penalize_evaluate(Coco_Transformation_Data::raw_x,Coco_Transformation_Data::lower_bound,Coco_Transformation_Data::upper_bound,Coco_Transformation_Data::penalty_factor,y);
- } else if (problem_id == 18) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- transform_obj_penalize_evaluate(Coco_Transformation_Data::raw_x,Coco_Transformation_Data::lower_bound,Coco_Transformation_Data::upper_bound,Coco_Transformation_Data::penalty_factor,y);
- } else if (problem_id == 19) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 20) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 21) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 22) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else if (problem_id == 23) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- transform_obj_penalize_evaluate(Coco_Transformation_Data::raw_x,Coco_Transformation_Data::lower_bound,Coco_Transformation_Data::upper_bound,Coco_Transformation_Data::penalty_factor,y);
- } else if (problem_id == 24) {
- transform_obj_shift_evaluate_function(y,Coco_Transformation_Data::fopt);
- } else {}
-}
-
-#endif //_COCO_TRANSFORMATION_HPP
-
↰ Return to documentation for file (src/Problems/BBOB/bbob_common_used_functions/coco_transformation_objs.hpp
)
#ifndef _COCO_TRANSFORMATION_OBJ_HPP
-#define _COCO_TRANSFORMATION_OBJ_HPP
-
-#include "suite_bbob_legacy_code.hpp"
-
-static void transform_obj_norm_by_dim_evaluate(const int dimension,std::vector<double> &y) {
- y[0] *= bbob2009_fmin(1, 40. / ((double) dimension));
- /* Wassim: might want to use a function (with no 40) here that we can put in a helpers file */
-}
-
-static void transform_obj_oscillate_evaluate(std::vector<double> &y) {
- static const double factor = 0.1;
- size_t i;
- int number_of_objectives = y.size();
-
- for (i = 0; i < number_of_objectives; i++) {
- if (y[i] != 0) {
- double log_y;
- log_y = log(fabs(y[i])) / factor;
- if (y[i] > 0) {
- y[i] = pow(exp(log_y + 0.49 * (sin(log_y) + sin(0.79 * log_y))), factor);
- } else {
- y[i] = -pow(exp(log_y + 0.49 * (sin(0.55 * log_y) + sin(0.31 * log_y))), factor);
- }
- }
- }
-}
-
-static void transform_obj_penalize_evaluate(const std::vector<double> &x, const double lower_bounds, const double upper_bounds, const double factor,std::vector<double> &y) {
- double penalty = 0.0;
- size_t i;
- int number_of_objectives = y.size();
- int n = x.size();
-
- for (i = 0; i < n; ++i) {
- const double c1 = x[i] - upper_bounds;
- const double c2 = lower_bounds - x[i];
- if (c1 > 0.0) {
- penalty += c1 * c1;
- } else if (c2 > 0.0) {
- penalty += c2 * c2;
- }
- }
-
- for (i = 0; i < number_of_objectives; ++i) {
- y[i] += factor * penalty;
- }
-}
-
-
-static void transform_obj_power_evaluate(std::vector<double> &y, const double exponent) {
-
- size_t i;
- int number_of_objectives = y.size();
-
- for (i = 0; i < number_of_objectives; i++) {
- y[i] = pow(y[i], exponent);
- }
-}
-
-static void transform_obj_scale_evaluate_function(std::vector<double> &y, const double factor) {
- size_t i;
- int number_of_objectives = y.size();
-
-
- for (i = 0; i < number_of_objectives; i++)
- y[i] *= factor;
-}
-
-static void transform_obj_shift_evaluate_function(std::vector<double> &y, const double offset) {
-
- size_t i;
- int number_of_objectives = y.size();
-
- for (i = 0; i < number_of_objectives; i++)
- y[i] += offset;
-
-}
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/bbob_common_used_functions/coco_transformation_vars.hpp
)
#ifndef _COCO_TRANSFORMATION_VARS_HPP
-#define _COCO_TRANSFORMATION_VARS_HPP
-
-#include "suite_bbob_legacy_code.hpp"
-
-static void transform_vars_affine_evaluate_function(std::vector<double> &x,
- const std::vector<std::vector<double> > &M,
- const std::vector<double> &b) {
- size_t i, j;
- int number_of_variables = x.size();
- double *cons_values;
- int is_feasible;
- std::vector<double> temp_x = x;
- for (i = 0; i < number_of_variables; ++i) {
- /* data->M has problem->number_of_variables columns and inner_problem->number_of_variables rows. */
- x[i] = b[i];
- for (j = 0; j < number_of_variables; ++j) {
- x[i] += temp_x[j] * M[i][j];
- }
- }
-}
-
-static void transform_vars_asymmetric_evaluate_function(std::vector <double> &x, const double beta) {
- size_t i;
- double exponent;
- int number_of_variables = x.size();
- for (i = 0; i < number_of_variables; ++i) {
- if (x[i] > 0.0) {
- exponent = 1.0
- + ((beta * (double) (long) i) / ((double) (long) number_of_variables - 1.0)) * sqrt(x[i]);
- x[i] = pow(x[i], exponent);
- } else {
- x[i] = x[i];
- }
- }
-}
-
-static void transform_vars_brs_evaluate(std::vector<double> &x) {
- size_t i;
- double factor;
- int number_of_variables = x.size();
-
- for (i = 0; i < number_of_variables; ++i) {
- /* Function documentation says we should compute 10^(0.5 *
- * (i-1)/(D-1)). Instead we compute the equivalent
- * sqrt(10)^((i-1)/(D-1)) just like the legacy code.
- */
- factor = pow(sqrt(10.0), (double) (long) i / ((double) (long) number_of_variables - 1.0));
- /* Documentation specifies odd indices and starts indexing
- * from 1, we use all even indices since C starts indexing
- * with 0.
- */
- if (x[i] > 0.0 && i % 2 == 0) {
- factor *= 10.0;
- }
- x[i] = factor * x[i];
- }
-}
-
-static void transform_vars_conditioning_evaluate(std::vector<double> &x, const double alpha) {
- size_t i;
- int number_of_variables = x.size();
-
- for (i = 0; i < number_of_variables; ++i) {
- /* OME: We could precalculate the scaling coefficients if we
- * really wanted to.
- */
- x[i] = pow(alpha, 0.5 * (double) (long) i / ((double) (long) number_of_variables - 1.0))
- * x[i];
- }
-}
-
-static void transform_vars_oscillate_evaluate_function(std::vector<double> &x) {
- static const double alpha = 0.1;
- int number_of_variables = x.size();
- double tmp, base;
- size_t i;
-
- for (i = 0; i < number_of_variables; ++i) {
- if (x[i] > 0.0) {
- tmp = log(x[i]) / alpha;
- base = exp(tmp + 0.49 * (sin(tmp) + sin(0.79 * tmp)));
- x[i] = pow(base, alpha);
- } else if (x[i] < 0.0) {
- tmp = log(-x[i]) / alpha;
- base = exp(tmp + 0.49 * (sin(0.55 * tmp) + sin(0.31 * tmp)));
- x[i] = -pow(base, alpha);
- } else {
- x[i] = 0.0;
- }
- }
-}
-
-static void transform_vars_scale_evaluate(std::vector<double> &x, const double factor) {
- size_t i;
- int number_of_variables = x.size();
-
- for (i = 0; i < number_of_variables; ++i) {
- x[i] = factor * x[i];
- }
-}
-
-static void transform_vars_shift_evaluate_function(std::vector<double> &x, const std::vector<double> &offset) {
- size_t i;
- int number_of_variables = x.size();
-
- for (i = 0; i < number_of_variables; ++i) {
- x[i] = x[i] - offset[i];
- }
-}
-
-static void transform_vars_x_hat_evaluate(std::vector<double> &x, const long seed) {
- size_t i;
- int number_of_variables = x.size();
- std::vector<double> tmp_x;
-
-
- bbob2009_unif(tmp_x, number_of_variables, seed);
-
- for (i = 0; i < number_of_variables; ++i) {
- if (tmp_x[i] < 0.5) {
- x[i] = -x[i];
- } else {
- x[i] = x[i];
- }
- }
-}
-
-static void transform_vars_x_hat_generic_evaluate(std::vector<double> &x, const std::vector<double> &sign_vector) {
- size_t i;
- int number_of_variables = x.size();
-
- for (i = 0; i < number_of_variables; ++i) {
- x[i] = 2.0 * sign_vector[i] * x[i];
- }
-}
-
-static void transform_vars_z_hat_evaluate(std::vector<double> &x, const std::vector<double> &xopt) {
- size_t i;
- int number_of_variables = x.size();
- std::vector<double> temp_x = x;
- x[0] = temp_x[0];
-
- for (i = 1; i < number_of_variables; ++i) {
- x[i] = temp_x[i] + 0.25 * (temp_x[i - 1] - 2.0 * fabs(xopt[i - 1]));
- }
-}
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/bbob_common_used_functions/suite_bbob_legacy_code.hpp
)
#ifndef _SUITE_BBOB_LEGACY_CODE_HPP
-#define _SUITE_BBOB_LEGACY_CODE_HPP
-
-#include "IOHprofiler_random.h"
-
-static const double coco_pi = 3.14159265358979323846;
-#define SUITE_BBOB2009_MAX_DIM 40
-
-static double bbob2009_fmin(double a, double b) {
- return (a < b) ? a : b;
-}
-
-static double bbob2009_fmax(double a, double b) {
- return (a > b) ? a : b;
-}
-
-static double bbob2009_round(double x) {
- return floor(x + 0.5);
-}
-
-static void bbob2009_unif(std::vector<double> &r, size_t N, long inseed) {
- /* generates N uniform numbers with starting seed */
- long aktseed;
- long tmp;
- long rgrand[32];
- long aktrand;
- long i;
- r = std::vector<double> (N);
-
- if (inseed < 0)
- inseed = -inseed;
- if (inseed < 1)
- inseed = 1;
- aktseed = inseed;
- for (i = 39; i >= 0; i--) {
- tmp = (int) floor((double) aktseed / (double) 127773);
- aktseed = 16807 * (aktseed - tmp * 127773) - 2836 * tmp;
- if (aktseed < 0)
- aktseed = aktseed + 2147483647;
- if (i < 32)
- rgrand[i] = aktseed;
- }
- aktrand = rgrand[0];
- for (i = 0; i < N; i++) {
- tmp = (int) floor((double) aktseed / (double) 127773);
- aktseed = 16807 * (aktseed - tmp * 127773) - 2836 * tmp;
- if (aktseed < 0)
- aktseed = aktseed + 2147483647;
- tmp = (int) floor((double) aktrand / (double) 67108865);
- aktrand = rgrand[tmp];
- rgrand[tmp] = aktseed;
- r[i] = (double) aktrand / 2.147483647e9;
- if (r[i] == 0.) {
- r[i] = 1e-99;
- }
- }
- return;
-}
-
-static void bbob2009_reshape(std::vector<std::vector<double> > &B, const std::vector<double> &vector, const size_t m, const size_t n) {
- size_t i, j;
- B = std::vector<std::vector<double> > (m);
- for (i = 0; i < m; i++) {
- B[i] = std::vector<double> (n);
- for (j = 0; j < n; j++) {
- B[i][j] = vector[j * m + i];
- }
- }
-}
-
-static void bbob2009_gauss(std::vector<double> &g, const size_t N, const long seed) {
- size_t i;
- g = std::vector<double> (N);
- std::vector<double> uniftmp(6000);
- assert(2 * N < 6000);
- bbob2009_unif(uniftmp, 2 * N, seed);
-
- for (i = 0; i < N; i++) {
- g[i] = sqrt(-2 * log(uniftmp[i])) * cos(2 * coco_pi * uniftmp[N + i]);
- if (g[i] == 0.)
- g[i] = 1e-99;
- }
-}
-
-static void bbob2009_compute_rotation(std::vector<std::vector<double> > &B, const long seed, const size_t DIM) {
- /* To ensure temporary data fits into gvec */
- double prod;
- std::vector<double> gvect(2000);
- long i, j, k; /* Loop over pairs of column vectors. */
-
- bbob2009_gauss(gvect, DIM * DIM, seed);
- bbob2009_reshape(B, gvect, DIM, DIM);
- /*1st coordinate is row, 2nd is column.*/
-
- for (i = 0; i < DIM; i++) {
- for (j = 0; j < i; j++) {
- prod = 0;
- for (k = 0; k < DIM; k++)
- prod += B[k][i] * B[k][j];
- for (k = 0; k < DIM; k++)
- B[k][i] -= prod * B[k][j];
- }
- prod = 0;
- for (k = 0; k < DIM; k++)
- prod += B[k][i] * B[k][i];
- for (k = 0; k < DIM; k++)
- B[k][i] /= sqrt(prod);
- }
-
-}
-
-static void bbob2009_copy_rotation_matrix(const std::vector<std::vector<double> > &rot, std::vector<std::vector<double> > &M, std::vector<double> &b, const size_t DIM) {
- size_t row, column;
- double *current_row;
-
- for (row = 0; row < DIM; ++row) {
- for (column = 0; column < DIM; ++column) {
- M[row][column] = rot[row][column];
- }
- b[row] = 0.0;
- }
-}
-
-static void bbob2009_compute_xopt(std::vector<double> &xopt, const long seed, const size_t DIM) {
- long i;
- bbob2009_unif(xopt, DIM, seed);
- for (i = 0; i < DIM; i++) {
- xopt[i] = 8 * floor(1e4 * xopt[i]) / 1e4 - 4;
- if (xopt[i] == 0.0)
- xopt[i] = -1e-5;
- }
-}
-
-static double bbob2009_compute_fopt(const size_t function, const size_t instance) {
- long rseed, rrseed;
- std::vector<double> gval, gval2;
-
- if (function == 4)
- rseed = 3;
- else if (function == 18)
- rseed = 17;
- else if (function == 101 || function == 102 || function == 103 || function == 107
- || function == 108 || function == 109)
- rseed = 1;
- else if (function == 104 || function == 105 || function == 106 || function == 110
- || function == 111 || function == 112)
- rseed = 8;
- else if (function == 113 || function == 114 || function == 115)
- rseed = 7;
- else if (function == 116 || function == 117 || function == 118)
- rseed = 10;
- else if (function == 119 || function == 120 || function == 121)
- rseed = 14;
- else if (function == 122 || function == 123 || function == 124)
- rseed = 17;
- else if (function == 125 || function == 126 || function == 127)
- rseed = 19;
- else if (function == 128 || function == 129 || function == 130)
- rseed = 21;
- else
- rseed = (long) function;
-
- rrseed = rseed + (long) (10000 * instance);
- bbob2009_gauss(gval, 1, rrseed);
- bbob2009_gauss(gval2, 1, rrseed + 1);
- return bbob2009_fmin(1000., bbob2009_fmax(-1000., bbob2009_round(100. * 100. * gval[0] / gval2[0]) / 100.));
-}
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_attractive_sector.hpp
)
#ifndef _F_ATTRACTIVE_SECTOR_HPP
-#define _F_ATTRACTIVE_SECTOR_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Attractive_Sector : public IOHprofiler_problem<double> {
-public:
- Attractive_Sector(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(6);
- IOHprofiler_set_problem_name("Attractive_Sector");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Attractive_Sector() {};
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (6 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(6, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1, rot2;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
- for (int i = 0; i < n; ++i) {
- b[i] = 0.0;
- for (int j = 0; j < n; ++j) {
- M[i][j] = 0.0;
- for (int k = 0; k < n; ++k) {
- double exponent = 1.0 * (int) k / ((double) (long) n - 1.0);
- M[i][j] += rot1[i][k] * pow(sqrt(10.0), exponent) * rot2[k][j];
- }
- }
- }
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- std::vector<double> result(1,0.0);
-
- int n = x.size();
-
- for (int i = 0; i < n; ++i) {
- if (Coco_Transformation_Data::xopt[i] * x[i] > 0.0) {
- result[0] += 100.0 * 100.0 * x[i] * x[i];
- } else {
- result[0] += x[i] * x[i];
- }
- }
-
- return result[0];
- }
-
- static Attractive_Sector * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Attractive_Sector(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_bent_cigar.hpp
)
#ifndef _F_BENT_CIGAR_H
-#define _F_BENT_CIGAR_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Bent_Cigar : public IOHprofiler_problem<double> {
-public:
- Bent_Cigar(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(12);
- IOHprofiler_set_problem_name("Bent_Cigar");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Bent_Cigar() {};
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (12 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed + 1000000, n);
- fopt = bbob2009_compute_fopt(12, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_copy_rotation_matrix(rot1,M,b,n);
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
-
- static const double condition = 1.0e6;
- size_t i;
- int n = x.size();
- std::vector<double> result(1);
-
-
- result[0] = x[0] * x[0];
- for (i = 1; i < n; ++i) {
- result[0] += condition * x[i] * x[i];
- }
-
- return result[0];
- }
-
- static Bent_Cigar * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Bent_Cigar(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_bueche_rastrigin.hpp
)
#ifndef _F_BUECHE_RASTRIGIN_H
-#define _F_BUECHE_RASTRIGIN_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Bueche_Rastrigin : public IOHprofiler_problem<double> {
-public:
- Bueche_Rastrigin(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(4);
- IOHprofiler_set_problem_name("Bueche_Rastrigin");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
- ~Bueche_Rastrigin() {};
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (3 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(4, this->IOHprofiler_get_instance_id());
-
- for (int i = 0; i < n; i += 2) {
- xopt[i] = fabs(xopt[i]);
- }
-
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::penalty_factor = 100.0;
- Coco_Transformation_Data::lower_bound = -5.0;
- Coco_Transformation_Data::upper_bound = 5.0;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- double tmp = 0., tmp2 = 0.;
- std::vector<double> result(1);
- int n = x.size();
-
- result[0] = 0.0;
- for (int i = 0; i < n; ++i) {
- tmp += cos(2 * coco_pi * x[i]);
- tmp2 += x[i] * x[i];
- }
- result[0] = 10.0 * ((double) (long) n - tmp) + tmp2 + 0;
-
- return result[0];
- }
-
- static Bueche_Rastrigin * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Bueche_Rastrigin(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_different_powers.hpp
)
#ifndef _F_DIFFERENT_POWERS_HPP
-#define _F_DIFFERENT_POWERS_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Different_Powers : public IOHprofiler_problem<double> {
-public:
- Different_Powers(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(14);
- IOHprofiler_set_problem_name("Different_Powers");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Different_Powers() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (14 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(14, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_copy_rotation_matrix(rot1,M,b,n);
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- size_t i;
- double sum = 0.0;
- int n = x.size();
- std::vector<double> result(1);
-
- for (i = 0; i < n; ++i) {
- double exponent = 2.0 + (4.0 * (double) (long) i) / ((double) (long) n - 1.0);
- sum += pow(fabs(x[i]), exponent);
- }
- result[0] = sqrt(sum);
-
- return result[0];
- }
-
- static Different_Powers * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Different_Powers(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_discus.hpp
)
#ifndef _F_DISCUS_H
-#define _F_DISCUS_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Discus : public IOHprofiler_problem<double> {
-public:
- Discus(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(11);
- IOHprofiler_set_problem_name("Discus");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0.0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Discus() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (11 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(11, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_copy_rotation_matrix(rot1,M,b,n);
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- static const double condition = 1.0e6;
- std::vector<double> result(1);
- int n = x.size();
-
-
- result[0] = condition * x[0] * x[0];
- for (int i = 1; i < n; ++i) {
- result[0] += x[i] * x[i];
- }
-
- return result[0];
- }
-
- static Discus * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Discus(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_ellipsoid.hpp
)
#ifndef _F_ELLIPSOID_H
-#define _F_ELLIPSOID_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Ellipsoid : public IOHprofiler_problem<double> {
-public:
- Ellipsoid(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(2);
- IOHprofiler_set_problem_name("Ellipsoid");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Ellipsoid() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (2 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(2, this->IOHprofiler_get_instance_id());
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- }
-
-
- double internal_evaluate(const std::vector<double> &x) {
- static const double condition = 1.0e6;
- size_t i = 0;
- int n = x.size();
- std::vector<double> result(1);
-
-
- result[0] = x[i] * x[i];
- for (i = 1; i < n; ++i) {
- const double exponent = 1.0 * (double) (long) i / ((double) (long) n - 1.0);
- result[0] += pow(condition, exponent) * x[i] * x[i];
- }
-
- return result[0];
- }
-
- static Ellipsoid * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Ellipsoid(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_ellipsoid_rotated.hpp
)
#ifndef _F_ELLIPSOID_ROTATED_H
-#define _F_ELLIPSOID_ROTATED_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Ellipsoid_Rotated : public IOHprofiler_problem<double> {
-public:
- Ellipsoid_Rotated(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(10);
- IOHprofiler_set_problem_name("Ellipsoid_Rotated");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Ellipsoid_Rotated() {}
-
- void prepare_problem() {
- /* compute xopt, fopt*/
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (10 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(10, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_copy_rotation_matrix(rot1, M, b, n);
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- }
-
-
- double internal_evaluate(const std::vector<double> &x) {
- static const double condition = 1.0e6;
- size_t i = 0;
- int n = x.size();
- std::vector<double> result(1);
-
-
- result[0] = x[i] * x[i];
- for (i = 1; i < n; ++i) {
- const double exponent = 1.0 * (double) (long) i / ((double) (long) n - 1.0);
- result[0] += pow(condition, exponent) * x[i] * x[i];
- }
-
- return result[0];
- }
-
- static Ellipsoid_Rotated * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Ellipsoid_Rotated(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_gallagher101.hpp
)
#ifndef _F_GALLAGHERONEZEROONE_H
-#define _F_GALLAGHERONEZEROONE_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-typedef struct f_gallagher_permutation_t1{
- double value;
- size_t index;
-}F_GALLAGHER_PERMUTATION_T1;
-
-// static bool compareRperm(f_gallagher_permutation_t1 a, f_gallagher_permutation_t1 b) {
-// double temp = a.value - b.value;
-// if (temp >= 0)
-// return true;
-// else
-// return false;
-// }
-
-static int f_gallagher_compare_doubles1(const void *a, const void *b) {
- double temp = (*(f_gallagher_permutation_t1 *) a).value - (*(f_gallagher_permutation_t1 *) b).value;
- if (temp > 0)
- return 1;
- else if (temp < 0)
- return -1;
- else
- return 0;
-}
-
-
-class Gallagher101 : public IOHprofiler_problem<double> {
-public:
- Gallagher101(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(21);
- IOHprofiler_set_problem_name("Gallagher101");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Gallagher101() {}
-
- std::vector<double> xopt;
- const size_t number_of_peaks = 101;
- std::vector<std::vector<double> > rotation;
- std::vector<std::vector<double> > arr_scales;
- std::vector<std::vector<double> > x_local;
- std::vector<double> peak_values;
- void prepare_problem() {
- const long rseed = (long) (21 + 10000 * this->IOHprofiler_get_instance_id());
- int n = IOHprofiler_get_number_of_variables();
-
- double fopt;
- size_t i, j, k;
- double maxcondition = 1000.;
- /* maxcondition1 satisfies the old code and the doc but seems wrong in that it is, with very high
- * probability, not the largest condition level!!! */
- double maxcondition1 = 1000.;
- std::vector<double> arrCondition;
- double fitvalues[2] = { 1.1, 9.1 };
- /* Parameters for generating local optima. In the old code, they are different in f21 and f22 */
- double b, c;
- /* Random permutation */
- //std::vector<f_gallagher_permutation_t1> rperm;
- f_gallagher_permutation_t1 *rperm;
-
- std::vector<double> random_numbers;
- arr_scales = std::vector<std::vector<double> > (number_of_peaks);
- for (i = 0; i != number_of_peaks; ++i) {
- arr_scales[i] = std::vector<double>(n);
- }
-
- x_local = std::vector<std::vector<double> > (n);
- for (i = 0; i != n; ++i) {
- x_local[i] = std::vector<double>(number_of_peaks);
- }
-
- /* Allocate temporary storage and space for the rotation matrices */
- std::vector<double >xopt = std::vector<double>(n);
-
- maxcondition1 = sqrt(maxcondition1);
- b = 10.;
- c = 5.;
-
- bbob2009_compute_rotation(rotation, rseed, n);
-
- /* Initialize all the data of the inner problem */
- bbob2009_unif(random_numbers, number_of_peaks - 1, rseed);
- //rperm = std::vector<f_gallagher_permutation_t1> (number_of_peaks - 1);
- rperm = (f_gallagher_permutation_t1 *)malloc((number_of_peaks-1) * sizeof(f_gallagher_permutation_t1));
- for (i = 0; i < number_of_peaks - 1; ++i) {
- rperm[i].value = random_numbers[i];
- rperm[i].index = i;
- }
- //std::sort(rperm.begin(), rperm.end(), compareRperm);
- qsort(rperm, number_of_peaks - 1, sizeof(f_gallagher_permutation_t1), f_gallagher_compare_doubles1);
-
- /* Random permutation */
- arrCondition = std::vector<double>(number_of_peaks);
- arrCondition[0] = maxcondition1;
- peak_values = std::vector<double>(number_of_peaks);
- peak_values[0] = 10;
- for (i = 1; i < number_of_peaks; ++i) {
- arrCondition[i] = pow(maxcondition, (double) (rperm[i - 1].index) / ((double) (number_of_peaks - 2)));
- peak_values[i] = (double) (i - 1) / (double) (number_of_peaks - 2) * (fitvalues[1] - fitvalues[0])
- + fitvalues[0];
- }
-
- free(rperm);
- rperm = (f_gallagher_permutation_t1 *)malloc((n) * sizeof(f_gallagher_permutation_t1));
-
- //rperm = std::vector<f_gallagher_permutation_t1> (n);
- for (i = 0; i < number_of_peaks; ++i) {
- bbob2009_unif(random_numbers, n, rseed + (long) (1000 * i));
- for (j = 0; j < n; ++j) {
- rperm[j].value = random_numbers[j];
- rperm[j].index = j;
- }
- //std::sort(rperm.begin(), rperm.end(), compareRperm);
- qsort(rperm, n, sizeof(f_gallagher_permutation_t1), f_gallagher_compare_doubles1);
- for (j = 0; j < n; ++j) {
- arr_scales[i][j] = pow(arrCondition[i], /* Lambda^alpha_i from the doc */
- ((double) rperm[j].index) / ((double) (n - 1)) - 0.5);
- }
- }
- free(rperm);
- bbob2009_unif(random_numbers, n * number_of_peaks, rseed);
- std::vector<double> best_variables(n);
- for (i = 0; i < n; ++i) {
- xopt[i] = 0.8 * (b * random_numbers[i] - c);
- best_variables[i] = 0.8 * (b * random_numbers[i] - c);
- for (j = 0; j < number_of_peaks; ++j) {
- x_local[i][j] = 0.;
- for (k = 0; k < n; ++k) {
- x_local[i][j] += rotation[i][k] * (b * random_numbers[j * n + k] - c);
- }
- if (j == 0) {
- x_local[i][j] *= 0.8;
- }
- }
- }
- IOHprofiler_set_best_variables(best_variables);
-
- fopt = bbob2009_compute_fopt(21, this->IOHprofiler_get_instance_id());
- Coco_Transformation_Data::fopt = fopt;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
-
- size_t i, j; /* Loop over dim */
- std::vector<double> tmx(n);
- double a = 0.1;
- double tmp2, f = 0., f_add, tmp, f_pen = 0., f_true = 0.;
- double fac;
- std::vector<double> result(1);
-
-
- fac = -0.5 / (double) n;
-
- /* Boundary handling */
- for (i = 0; i < n; ++i) {
- tmp = fabs(x[i]) - 5.;
- if (tmp > 0.) {
- f_pen += tmp * tmp;
- }
- }
- f_add = f_pen;
- /* Transformation in search space */
- /* TODO: this should rather be done in f_gallagher */
-
- for (i = 0; i < n; i++) {
- tmx[i] = 0;
- for (j = 0; j < n; ++j) {
- tmx[i] += rotation[i][j] * x[j];
- }
- }
- /* Computation core*/
- for (i = 0; i < number_of_peaks; ++i) {
- tmp2 = 0.;
- for (j = 0; j < n; ++j) {
- tmp = (tmx[j] - x_local[j][i]);
- tmp2 += arr_scales[i][j] * tmp * tmp;
- }
- tmp2 = peak_values[i] * exp(fac * tmp2);
- f = f > tmp2 ? f : tmp2;
- }
-
- f = 10. - f;
- if (f > 0) {
- f_true = log(f) / a;
- f_true = pow(exp(f_true + 0.49 * (sin(f_true) + sin(0.79 * f_true))), a);
- } else if (f < 0) {
- f_true = log(-f) / a;
- f_true = -pow(exp(f_true + 0.49 * (sin(0.55 * f_true) + sin(0.31 * f_true))), a);
- } else {
- f_true = f;
- }
-
- f_true *= f_true;
- f_true += f_add;
- result[0] = f_true;
-
- return result[0];
- }
-
- static Gallagher101 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Gallagher101(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_gallagher21.hpp
)
#ifndef _F_GALLAGHERTWOONE_H
-#define _F_GALLAGHERTWOONE_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-typedef struct f_gallagher_permutation_t{
- double value;
- size_t index;
-}F_GALLAGHER_PERMUTATION_T;
-
-// static bool compareRperm(f_gallagher_permutation_t a, f_gallagher_permutation_t b) {
-// double temp = a.value - b.value;
-// if (temp >= 0)
-// return true;
-// else
-// return false;
-// }
-
-static int f_gallagher_compare_doubles(const void *a, const void *b) {
- double temp = (*(f_gallagher_permutation_t *) a).value - (*(f_gallagher_permutation_t *) b).value;
- if (temp > 0)
- return 1;
- else if (temp < 0)
- return -1;
- else
- return 0;
-}
-
-
-class Gallagher21 : public IOHprofiler_problem<double> {
-public:
- Gallagher21(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(22);
- IOHprofiler_set_problem_name("Gallagher21");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Gallagher21() {}
-
- std::vector<double> xopt;
- const size_t number_of_peaks = 21;
- std::vector<std::vector<double> > rotation;
- std::vector<std::vector<double> > arr_scales;
- std::vector<std::vector<double> > x_local;
- std::vector<double> peak_values;
-
- void prepare_problem() {
- const long rseed = (long) (22 + 10000 * this->IOHprofiler_get_instance_id());
- int n = IOHprofiler_get_number_of_variables();
-
- double fopt;
- size_t i, j, k;
- double maxcondition = 1000.;
- /* maxcondition1 satisfies the old code and the doc but seems wrong in that it is, with very high
- * probability, not the largest condition level!!! */
- double maxcondition1 = 1000.;
- std::vector<double> arrCondition;
- double fitvalues[2] = { 1.1, 9.1 };
- /* Parameters for generating local optima. In the old code, they are different in f21 and f22 */
- double b, c;
- /* Random permutation */
- //std::vector<f_gallagher_permutation_t> rperm;
- f_gallagher_permutation_t *rperm;
-
- std::vector<double> random_numbers;
- arr_scales = std::vector<std::vector<double> > (number_of_peaks);
- for (i = 0; i != number_of_peaks; ++i) {
- arr_scales[i] = std::vector<double>(n);
- }
-
- x_local = std::vector<std::vector<double> > (n);
- for (i = 0; i != n; ++i) {
- x_local[i] = std::vector<double>(number_of_peaks);
- }
-
- /* Allocate temporary storage and space for the rotation matrices */
- std::vector<double >xopt = std::vector<double>(n);
-
- b = 9.8;
- c = 4.9;
-
- bbob2009_compute_rotation(rotation, rseed, n);
-
- /* Initialize all the data of the inner problem */
- bbob2009_unif(random_numbers, number_of_peaks - 1, rseed);
- //rperm = std::vector<f_gallagher_permutation_t> (number_of_peaks - 1);
- rperm = (f_gallagher_permutation_t *)malloc((number_of_peaks-1) * sizeof(f_gallagher_permutation_t));
- for (i = 0; i < number_of_peaks - 1; ++i) {
- rperm[i].value = random_numbers[i];
- rperm[i].index = i;
- }
- //std::sort(rperm.begin(), rperm.end(), compareRperm);
- qsort(rperm, number_of_peaks - 1, sizeof(f_gallagher_permutation_t), f_gallagher_compare_doubles);
-
- /* Random permutation */
- arrCondition = std::vector<double>(number_of_peaks);
- arrCondition[0] = maxcondition1;
- peak_values = std::vector<double>(number_of_peaks);
- peak_values[0] = 10;
- for (i = 1; i < number_of_peaks; ++i) {
- arrCondition[i] = pow(maxcondition, (double) (rperm[i - 1].index) / ((double) (number_of_peaks - 2)));
- peak_values[i] = (double) (i - 1) / (double) (number_of_peaks - 2) * (fitvalues[1] - fitvalues[0])
- + fitvalues[0];
- }
-
- free(rperm);
- rperm = (f_gallagher_permutation_t *)malloc((n) * sizeof(f_gallagher_permutation_t));
-
- //rperm = std::vector<f_gallagher_permutation_t> (n);
- for (i = 0; i < number_of_peaks; ++i) {
- bbob2009_unif(random_numbers, n, rseed + (long) (1000 * i));
- for (j = 0; j < n; ++j) {
- rperm[j].value = random_numbers[j];
- rperm[j].index = j;
- }
- //std::sort(rperm.begin(), rperm.end(), compareRperm);
- qsort(rperm, n, sizeof(f_gallagher_permutation_t), f_gallagher_compare_doubles);
- for (j = 0; j < n; ++j) {
- arr_scales[i][j] = pow(arrCondition[i], /* Lambda^alpha_i from the doc */
- ((double) rperm[j].index) / ((double) (n - 1)) - 0.5);
- }
- }
- free(rperm);
- bbob2009_unif(random_numbers, n * number_of_peaks, rseed);
- std::vector<double> best_variables(n);
- for (i = 0; i < n; ++i) {
- xopt[i] = 0.8 * (b * random_numbers[i] - c);
- best_variables[i] = 0.8 * (b * random_numbers[i] - c);
- for (j = 0; j < number_of_peaks; ++j) {
- x_local[i][j] = 0.;
- for (k = 0; k < n; ++k) {
- x_local[i][j] += rotation[i][k] * (b * random_numbers[j * n + k] - c);
- }
- if (j == 0) {
- x_local[i][j] *= 0.8;
- }
- }
- }
- IOHprofiler_set_best_variables(best_variables);
-
- fopt = bbob2009_compute_fopt(22, this->IOHprofiler_get_instance_id());
- Coco_Transformation_Data::fopt = fopt;
- }
-
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
-
- size_t i, j; /* Loop over dim */
- std::vector<double> tmx(n);
- double a = 0.1;
- double tmp2, f = 0., f_add, tmp, f_pen = 0., f_true = 0.;
- double fac;
- std::vector<double> result(1);
-
-
- fac = -0.5 / (double) n;
-
- /* Boundary handling */
- for (i = 0; i < n; ++i) {
- tmp = fabs(x[i]) - 5.;
- if (tmp > 0.) {
- f_pen += tmp * tmp;
- }
- }
- f_add = f_pen;
- /* Transformation in search space */
- /* TODO: this should rather be done in f_gallagher */
-
- for (i = 0; i < n; i++) {
- tmx[i] = 0;
- for (j = 0; j < n; ++j) {
- tmx[i] += rotation[i][j] * x[j];
- }
- }
- /* Computation core*/
- for (i = 0; i < number_of_peaks; ++i) {
- tmp2 = 0.;
- for (j = 0; j < n; ++j) {
- tmp = (tmx[j] - x_local[j][i]);
- tmp2 += arr_scales[i][j] * tmp * tmp;
- }
- tmp2 = peak_values[i] * exp(fac * tmp2);
- f = f > tmp2 ? f : tmp2;
- }
-
- f = 10. - f;
- if (f > 0) {
- f_true = log(f) / a;
- f_true = pow(exp(f_true + 0.49 * (sin(f_true) + sin(0.79 * f_true))), a);
- } else if (f < 0) {
- f_true = log(-f) / a;
- f_true = -pow(exp(f_true + 0.49 * (sin(0.55 * f_true) + sin(0.31 * f_true))), a);
- } else {
- f_true = f;
- }
-
- f_true *= f_true;
- f_true += f_add;
- result[0] = f_true;
-
- return result[0];
- }
-
- static Gallagher21 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Gallagher21(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_griewank_rosenbrock.hpp
)
#ifndef _F_GRIEWANK_ROSENBROCK_H
-#define _F_GRIEWANK_ROSENBROCK_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Griewank_RosenBrock : public IOHprofiler_problem<double> {
-public:
- Griewank_RosenBrock(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(19);
- IOHprofiler_set_problem_name("Griewank_RosenBrock");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Griewank_RosenBrock() {}
-
- double scales;
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (19 + 10000 * this->IOHprofiler_get_instance_id());
- fopt = bbob2009_compute_fopt(19, this->IOHprofiler_get_instance_id());
- xopt = std::vector<double>(n);
- for (int i = 0; i < n; ++i) {
- xopt[i] = -0.5;
- }
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- bbob2009_compute_rotation(rot1, rseed, n);
- scales = 1. > (sqrt((double) n) / 8.) ? 1. : (sqrt((double) n) / 8.);
- for (int i = 0; i < n; ++i) {
- for (int j = 0; j < n; ++j) {
- rot1[i][j] *= scales;
- }
- }
- bbob2009_copy_rotation_matrix(rot1,M,b,n);
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
-
- // double tmp;
- // std::vector<double> tmp_best_variables(n,0);
- // for (int j = 0; j < n; ++j) {
- // tmp = 0;
- // for (int i = 0; i < n; ++i) {
- // tmp += rot1[i][j];
- // }
- // tmp_best_variables[j] = tmp / (2. * scales);
- // }
- // IOHprofiler_set_best_variables(tmp_best_variables);
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- size_t i = 0;
- double tmp = 0;
- std::vector<double> result(1);
- int n = x.size();
-
- /* Computation core */
- result[0] = 0.0;
- for (i = 0; i < n - 1; ++i) {
- const double c1 = x[i] * x[i] - x[i + 1];
- const double c2 = 1.0 - x[i];
- tmp = 100.0 * c1 * c1 + c2 * c2;
- result[0] += tmp / 4000. - cos(tmp);
- }
- result[0] = 10. + 10. * result[0] / (double) (n - 1);
-
- return result[0];
- }
-
- static Griewank_RosenBrock * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Griewank_RosenBrock(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_katsuura.hpp
)
#ifndef _F_KATSUURA_H
-#define _F_KATSUURA_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Katsuura : public IOHprofiler_problem<double> {
-public:
- Katsuura(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(23);
- IOHprofiler_set_problem_name("Katsuura");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Katsuura() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- const double penalty_factor = 1.0;
- /* compute xopt, fopt*/
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (23 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(23, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- std::vector<std::vector<double> > rot2;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
- for (int i = 0; i < n; ++i) {
- b[i] = 0.0;
- for (int j = 0; j < n; ++j) {
- M[i][j] = 0.0;
- for (int k = 0; k < n; ++k) {
- double exponent = 1.0 * (int) k / ((double) (long) n - 1.0);
- M[i][j] += rot1[i][k] * pow(sqrt(100.0), exponent) * rot2[k][j];
- }
- }
- }
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- Coco_Transformation_Data::penalty_factor = penalty_factor;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- size_t i, j;
- double tmp, tmp2;
- std::vector<double> result(1);
-
- /* Computation core */
- result[0] = 1.0;
- for (i = 0; i < n; ++i) {
- tmp = 0;
- for (j = 1; j < 33; ++j) {
- tmp2 = pow(2., (double) j);
- tmp += fabs(tmp2 * x[i] - floor(tmp2 * x[i] + 0.5)) / tmp2;
- }
- tmp = 1.0 + ((double) (long) i + 1) * tmp;
- /*result *= tmp;*/ /* Wassim TODO: delete once consistency check passed*/
- result[0] *= pow(tmp, 10. / pow((double) n, 1.2));
- }
- /*result = 10. / ((double) number_of_variables) / ((double) number_of_variables)
- * (-1. + pow(result, 10. / pow((double) number_of_variables, 1.2)));*/
- result[0] = 10. / ((double) n) / ((double) n) * (-1. + result[0]);
-
- return result[0];
- }
-
- static Katsuura * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Katsuura(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_linear_slope.hpp
)
#ifndef _F_LINEAR_SLOPE_H
-#define _F_LINEAR_SLOPE_H
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Linear_Slope : public IOHprofiler_problem<double> {
-public:
- Linear_Slope(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(5);
- IOHprofiler_set_problem_name("Linear_Slope");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Linear_Slope() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (5 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(5, this->IOHprofiler_get_instance_id());
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
-
- std::vector<double> tmp_best_variables = std::vector<double>(n);
- for (int i = 0; i < n; ++i) {
- if (xopt[i] < 0.0) {
- tmp_best_variables[i] = this->IOHprofiler_get_lowerbound()[i];
- } else {
- tmp_best_variables[i] = this->IOHprofiler_get_upperbound()[i];
- }
- }
- this->IOHprofiler_set_best_variables(tmp_best_variables);
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- static const double alpha = 100.0;
- size_t i;
- std::vector<double> result(1);
-
- for (i = 0; i < n; ++i) {
- double base, exponent, si;
-
- base = sqrt(alpha);
- exponent = (double) (long) i / ((double) (long) n - 1);
- if (Coco_Transformation_Data::xopt[i] > 0.0) {
- si = pow(base, exponent);
- } else {
- si = -pow(base, exponent);
- }
- /* boundary handling */
- if (x[i] * Coco_Transformation_Data::xopt[i] < 25.0) {
- result[0] += 5.0 * fabs(si) - si * x[i];
- } else {
- result[0] += 5.0 * fabs(si) - si * Coco_Transformation_Data::xopt[i];
- }
- }
-
- return result[0];
- }
-
- static Linear_Slope * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Linear_Slope(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_lunacek_bi_rastrigin.hpp
)
#ifndef _F_LUNACEK_BI_RASTRIGIN_HPP
-#define _F_LUNACEK_BI_RASTRIGIN_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Lunacek_Bi_Rastrigin : public IOHprofiler_problem<double> {
-public:
- Lunacek_Bi_Rastrigin(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(24);
- IOHprofiler_set_problem_name("Lunacek_Bi_Rastrigin");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Lunacek_Bi_Rastrigin() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- std::vector<std::vector<double> > rot1;
- std::vector<std::vector<double> > rot2;
- double fopt;
- std::vector<double> tmpvect;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (24 + 10000 * this->IOHprofiler_get_instance_id());
-
- fopt = bbob2009_compute_fopt(24, this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
-
- Coco_Transformation_Data::fopt = fopt;
-
- Coco_Transformation_Data::rot1 = rot1;
- Coco_Transformation_Data::rot2 = rot2;
-
-
- bbob2009_gauss(tmpvect, n, rseed);
- for (int i = 0; i < n; ++i) {
- xopt[i] = 0.5 * 2.5;
- if (tmpvect[i] < 0.0) {
- xopt[i] *= -1.0;
- }
- }
- Coco_Transformation_Data::xopt = xopt;
- IOHprofiler_set_best_variables(xopt);
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- std::vector<double> result(1);
- int n = x.size();
- static const double condition = 100.;
- size_t i, j;
- double penalty = 0.0;
- static const double mu0 = 2.5;
- static const double d = 1.;
- const double s = 1. - 0.5 / (sqrt((double) (n + 20)) - 4.1);
- const double mu1 = -sqrt((mu0 * mu0 - d) / s);
- double sum1 = 0., sum2 = 0., sum3 = 0.;
- std::vector<double> tmpvect(n);
- std::vector<double> x_hat(n);
- std::vector<double> z(n);
-
- for (i = 0; i < n; ++i) {
- double tmp;
- tmp = fabs(x[i]) - 5.0;
- if (tmp > 0.0)
- penalty += tmp * tmp;
- }
-
- /* x_hat */
- for (i = 0; i < n; ++i) {
- x_hat[i] = 2. * x[i];
- if (Coco_Transformation_Data::xopt[i] < 0.) {
- x_hat[i] *= -1.;
- }
- }
- /* affine transformation */
- for (i = 0; i < n; ++i) {
- double c1;
- tmpvect[i] = 0.0;
- c1 = pow(sqrt(condition), ((double) i) / (double) (n - 1));
- for (j = 0; j < n; ++j) {
- tmpvect[i] += c1 * Coco_Transformation_Data::rot2[i][j] * (x_hat[j] - mu0);
- }
- }
- for (i = 0; i < n; ++i) {
- z[i] = 0;
- for (j = 0; j < n; ++j) {
- z[i] += Coco_Transformation_Data::rot1[i][j] * tmpvect[j];
- }
- }
- /* Computation core */
- for (i = 0; i < n; ++i) {
- sum1 += (x_hat[i] - mu0) * (x_hat[i] - mu0);
- sum2 += (x_hat[i] - mu1) * (x_hat[i] - mu1);
- sum3 += cos(2 * coco_pi * z[i]);
- }
- result[0] = std::min(sum1, d * (double) n + s * sum2)
- + 10. * ((double) n - sum3) + 1e4 * penalty;
- return result[0];
- }
-
- static Lunacek_Bi_Rastrigin * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Lunacek_Bi_Rastrigin(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_rastrigin.hpp
)
#ifndef _F_RASTRIGIN_HPP
-#define _F_RASTRIGIN_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Rastrigin : public IOHprofiler_problem<double> {
-public:
- Rastrigin(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(3);
- IOHprofiler_set_problem_name("Rastrigin");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Rastrigin() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (3 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(3, this->IOHprofiler_get_instance_id());
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- size_t i = 0;
- std::vector<double> result(1);
- int n = x.size();
- double sum1 = 0.0, sum2 = 0.0;
-
- for (i = 0; i < n; ++i) {
- sum1 += cos(2.0 * coco_pi * x[i]);
- sum2 += x[i] * x[i];
- }
- /* double check std::isinf*/
- if (std::isinf(sum2)) {
- return sum2;
- }
- result[0] = 10.0 * ((double) (long) n - sum1) + sum2;
- return result[0];
- }
-
- static Rastrigin * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Rastrigin(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_rastrigin_rotated.hpp
)
#ifndef _F_RASTRIGIN_ROTATED_HPP
-#define _F_RASTRIGIN_ROTATED_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Rastrigin_Rotated : public IOHprofiler_problem<double> {
-public:
- Rastrigin_Rotated(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(15);
- IOHprofiler_set_problem_name("Rastrigin_Rotated");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Rastrigin_Rotated() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- std::vector<std::vector<double> > M1;
- std::vector<double> b1;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (15 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(15, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- M1 = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- M1[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- b1 = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- std::vector<std::vector<double> > rot2;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
- for (int i = 0; i < n; ++i) {
- b[i] = 0.0;
- for (int j = 0; j < n; ++j) {
- M[i][j] = 0.0;
- for (int k = 0; k < n; ++k) {
- double exponent = 1.0 * (int) k / ((double) (long) n - 1.0);
- M[i][j] += rot1[i][k] * pow(sqrt(10.0), exponent) * rot2[k][j];
- }
- }
- }
- bbob2009_copy_rotation_matrix(rot1, M1, b1, n);
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- Coco_Transformation_Data::M1 = M1;
- Coco_Transformation_Data::b1 = b1;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- size_t i = 0;
- std::vector<double> result(1);
- int n = x.size();
- double sum1 = 0.0, sum2 = 0.0;
-
- for (i = 0; i < n; ++i) {
- sum1 += cos(2.0 * coco_pi * x[i]);
- sum2 += x[i] * x[i];
- }
- /* double check std::isinf*/
- if (std::isinf(sum2)) {
- return sum2;
- }
- result[0] = 10.0 * ((double) (long) n - sum1) + sum2;
-
- return result[0];
- }
-
- static Rastrigin_Rotated * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Rastrigin_Rotated(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_rosenbrock.hpp
)
#ifndef _F_ROSENBROCK_HPP
-#define _F_ROSENBROCK_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Rosenbrock : public IOHprofiler_problem<double> {
-public:
- Rosenbrock(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(8);
- IOHprofiler_set_problem_name("Rosenbrock");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Rosenbrock() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- std::vector<double> minus_one;
- double fopt, factor;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (8 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(8, this->IOHprofiler_get_instance_id());
-
- for (int i = 0; i < n; ++i) {
- minus_one.push_back(-1.0);
- xopt[i] *= 0.75;
- }
-
- factor = 1.0 > (sqrt((double) n) / 8.0) ? 1 : (sqrt((double) n) / 8.0);
- Coco_Transformation_Data::minus_one = minus_one;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::factor = factor;
- Coco_Transformation_Data::fopt = fopt;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- size_t i = 0;
- std::vector<double> result(1);
- double s1 = 0.0, s2 = 0.0, tmp;
-
- for (i = 0; i < n - 1; ++i) {
- tmp = (x[i] * x[i] - x[i + 1]);
- s1 += tmp * tmp;
- tmp = (x[i] - 1.0);
- s2 += tmp * tmp;
- }
- result[0] = 100.0 * s1 + s2;
-
- return result[0];
- }
-
- static Rosenbrock * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Rosenbrock(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_rosenbrock_rotated.hpp
)
#ifndef _F_ROSENBROCK_ROTATED_HPP
-#define _F_ROSENBROCK_ROTATED_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Rosenbrock_Rotated : public IOHprofiler_problem<double> {
-public:
- Rosenbrock_Rotated(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(9);
- IOHprofiler_set_problem_name("Rosenbrock_Rotated");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Rosenbrock_Rotated() {}
-
- void prepare_problem() {
- double fopt, factor;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (9 + 10000 * this->IOHprofiler_get_instance_id());
- fopt = bbob2009_compute_fopt(9, this->IOHprofiler_get_instance_id());
-
- factor = 1.0 > (sqrt((double) n) / 8.0) ? 1 : (sqrt((double) n) / 8.0);
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- bbob2009_compute_rotation(rot1, rseed, n);
- for (int row = 0; row < n; ++row) {
- for (int column = 0; column < n; ++column) {
- M[row][column] = factor * rot1[row][column];
- }
- b[row] = 0.5;
- }
-
- // std::vector<double> tmp_best_variables(n,0.0);
- // for (int column = 0; column < n; ++column) { /* Wassim: manually set xopt = rot1^T ones(dimension)/(2*factor) */
- // double tmp = 0;
- // for (int row = 0; row < n; ++row) {
- // tmp += rot1[row][column];
- // }
- // tmp_best_variables[column] = tmp / (2. * factor);
- // }
- // IOHprofiler_set_best_variables(tmp_best_variables);
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::factor = factor;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
-
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- size_t i = 0;
- std::vector<double> result(1);
- double s1 = 0.0, s2 = 0.0, tmp;
-
- for (i = 0; i < n - 1; ++i) {
- tmp = (x[i] * x[i] - x[i + 1]);
- s1 += tmp * tmp;
- tmp = (x[i] - 1.0);
- s2 += tmp * tmp;
- }
- result[0] = 100.0 * s1 + s2;
-
- return result[0];
- }
-
- static Rosenbrock_Rotated * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Rosenbrock_Rotated(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_schaffers10.hpp
)
#ifndef _F_SCHAFFERSTEN_HPP
-#define _F_SCHAFFERSTEN_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Schaffers10 : public IOHprofiler_problem<double> {
-public:
- Schaffers10(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(17);
- IOHprofiler_set_problem_name("Schaffers10");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Schaffers10() {}
-
- const double conditioning = 10;
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<std::vector<double> > M1;
- std::vector<double> b;
- std::vector<double> b1;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (17 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(17, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- M1 = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- M1[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- b1 = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- std::vector<std::vector<double> > rot2;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
- for (int i = 0; i < n; ++i) {
- b[i] = 0.0;
- for (int j = 0; j < n; ++j) {
- double exponent = 1.0 * (int) i / ((double) (long) n - 1.0);
- M[i][j] = rot2[i][j] * pow(sqrt(conditioning), exponent);
- }
- }
- bbob2009_copy_rotation_matrix(rot1,M1,b1,n);
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- Coco_Transformation_Data::M1 = M1;
- Coco_Transformation_Data::b1 = b1;
- Coco_Transformation_Data::penalty_factor = 10.0;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- size_t i = 0;
- std::vector<double> result(1);
-
- /* Computation core */
- result[0] = 0.0;
- for (i = 0; i < n - 1; ++i) {
- const double tmp = x[i] * x[i] + x[i + 1] * x[i + 1];
- if (std::isinf(tmp) && std::isnan(sin(50.0 * pow(tmp, 0.1)))) /* sin(inf) -> nan */
- /* the second condition is necessary to pass the integration tests under Windows and Linux */
- return tmp;
- result[0] += pow(tmp, 0.25) * (1.0 + pow(sin(50.0 * pow(tmp, 0.1)), 2.0));
- }
- result[0] = pow(result[0] / ((double) (long) n - 1.0), 2.0);
-
- return result[0];
- }
-
- static Schaffers10 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Schaffers10(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_schaffers1000.hpp
)
#ifndef _F_SCHAFFERSTHOUSAND_HPP
-#define _F_SCHAFFERSTHOUSAND_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Schaffers1000 : public IOHprofiler_problem<double> {
-public:
- Schaffers1000(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(18);
- IOHprofiler_set_problem_name("Schaffers1000");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Schaffers1000() {}
-
- const double conditioning = 1000;
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<std::vector<double> > M1;
- std::vector<double> b;
- std::vector<double> b1;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (17 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(18, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- M1 = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- M1[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- b1 = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- std::vector<std::vector<double> > rot2;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
- for (int i = 0; i < n; ++i) {
- b[i] = 0.0;
- for (int j = 0; j < n; ++j) {
- double exponent = 1.0 * (int) i / ((double) (long) n - 1.0);
- M[i][j] = rot2[i][j] * pow(sqrt(conditioning), exponent);
- }
- }
- bbob2009_copy_rotation_matrix(rot1,M1,b1,n);
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- Coco_Transformation_Data::M1 = M1;
- Coco_Transformation_Data::b1 = b1;
- Coco_Transformation_Data::penalty_factor = 10.0;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- size_t i = 0;
- std::vector<double> result(1);
-
- /* Computation core */
- result[0] = 0.0;
- for (i = 0; i < n - 1; ++i) {
- const double tmp = x[i] * x[i] + x[i + 1] * x[i + 1];
- if (std::isinf(tmp) && std::isnan(sin(50.0 * pow(tmp, 0.1)))) /* sin(inf) -> nan */
- /* the second condition is necessary to pass the integration tests under Windows and Linux */
- return tmp;
- result[0] += pow(tmp, 0.25) * (1.0 + pow(sin(50.0 * pow(tmp, 0.1)), 2.0));
- }
- result[0] = pow(result[0] / ((double) (long) n - 1.0), 2.0);
-
- return result[0];
- }
-
- static Schaffers1000 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Schaffers1000(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_schwefel.hpp
)
#ifndef _F_SCHWEFEL_HPP
-#define _F_SCHWEFEL_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Schwefel : public IOHprofiler_problem<double> {
-public:
- Schwefel(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(20);
- IOHprofiler_set_problem_name("Schwefel");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(420.96874633);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Schwefel() {}
-
- void prepare_problem() {
- std::vector<double> xopt,tmp1,tmp2;
- double fopt;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (20 + 10000 * this->IOHprofiler_get_instance_id());
- fopt = bbob2009_compute_fopt(20, this->IOHprofiler_get_instance_id());
- xopt = std::vector<double>(n);
- tmp2 = std::vector<double>(n);
- bbob2009_unif(tmp1, n, rseed);
- for (int i = 0; i < n; ++i) {
- xopt[i] = (tmp1[i] < 0.5 ? -1 : 1) * 0.5 * 4.2096874637;
- }
- for (int i = 0; i < n; ++i) {
- tmp1[i] = -2 * fabs(xopt[i]);
- tmp2[i] = 2 * fabs(xopt[i]);
- }
-
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::tmp1 = tmp1;
- Coco_Transformation_Data::tmp2 = tmp2;
- Coco_Transformation_Data::condition = 10.0;
- Coco_Transformation_Data::rseed = rseed;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- size_t i = 0;
- std::vector<double> result(1);
- double penalty, sum;
-
-
- /* Boundary handling*/
- penalty = 0.0;
- for (i = 0; i < n; ++i) {
- const double tmp = fabs(x[i]) - 500.0;
- if (tmp > 0.0) {
- penalty += tmp * tmp;
- }
- }
-
- /* Computation core */
- sum = 0.0;
- for (i = 0; i < n; ++i) {
- sum += x[i] * sin(sqrt(fabs(x[i])));
- }
- result[0] = 0.01 * (penalty + 418.9828872724339 - sum / (double) n);
-
- return result[0];
- }
-
- static Schwefel * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Schwefel(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_sharp_ridge.hpp
)
#ifndef _F_SHARP_RIDGE_HPP
-#define _F_SHARP_RIDGE_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Sharp_Ridge : public IOHprofiler_problem<double> {
-public:
- Sharp_Ridge(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(13);
- IOHprofiler_set_problem_name("Sharp_Ridge");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Sharp_Ridge() {}
-
- void prepare_problem() {
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (13 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(13, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- std::vector<std::vector<double> > rot2;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
- for (int i = 0; i < n; ++i) {
- b[i] = 0.0;
- for (int j = 0; j < n; ++j) {
- M[i][j] = 0.0;
- for (int k = 0; k < n; ++k) {
- double exponent = 1.0 * (int) k / ((double) (long) n - 1.0);
- M[i][j] += rot1[i][k] * pow(sqrt(10.0), exponent) * rot2[k][j];
- }
- }
- }
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- static const double alpha = 100.0;
- const double vars_40 = 1; /* generalized: number_of_variables <= 40 ? 1 : number_of_variables / 40.0; */
- size_t i = 0;
- std::vector<double> result(1);
-
-
- result[0] = 0.0;
- for (i = (size_t)(ceil(vars_40)); i < n; ++i) {
- result[0] += x[i] * x[i];
- }
- result[0] = alpha * sqrt(result[0] / vars_40);
- for (i = 0; i < (size_t)ceil(vars_40); ++i) {
- result[0] += x[i] * x[i] / vars_40;
- }
-
- return result[0];
- }
-
- static Sharp_Ridge * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Sharp_Ridge(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_sphere.hpp
)
#ifndef _F_SPHERE_HPP_
-#define _F_SPHERE_HPP_
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Sphere : public IOHprofiler_problem<double> {
-public:
- Sphere(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(1);
- IOHprofiler_set_problem_name("Sphere");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Sphere() {}
-
- void prepare_problem() {
- /* compute xopt, fopt*/
- std::vector<double> xopt;
- double fopt;
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (1 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(1, this->IOHprofiler_get_instance_id());
-
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- size_t i = 0;
- std::vector<double> result(1);
-
- result[0] = 0.0;
- for (i = 0; i < n; ++i) {
- result[0] += x[i] * x[i];
- }
-
- return result[0];
- }
-
- static Sphere * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Sphere(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_step_ellipsoid.hpp
)
#ifndef _F_STEP_ELLIPSOID_HPP
-#define _F_STEP_ELLIPSOID_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-class Step_Ellipsoid : public IOHprofiler_problem<double> {
-public:
- Step_Ellipsoid(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(7);
- IOHprofiler_set_problem_name("Step_Ellipsoid");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(0);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Step_Ellipsoid() {}
-
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > rot1;
- std::vector<std::vector<double> > rot2;
- std::vector<double> datax,dataxx;
-
- void prepare_problem() {
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (7 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(7, this->IOHprofiler_get_instance_id());
-
-
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
-
- datax = std::vector<double>(n);
- dataxx = std::vector<double>(n);
-
- IOHprofiler_set_best_variables(xopt);
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- static const double condition = 100;
- static const double alpha = 10.0;
- size_t i, j;
- double penalty = 0.0, x1;
- std::vector<double> result(1);
-
- for (i = 0; i < n; ++i) {
- double tmp;
- tmp = fabs(x[i]) - 5.0;
- if (tmp > 0.0)
- penalty += tmp * tmp;
- }
-
- for (i = 0; i < n; ++i) {
- double c1;
- datax[i] = 0.0;
- c1 = sqrt(pow(condition / 10., (double) i / (double) (n - 1)));
- for (j = 0; j < n; ++j) {
- datax[i] += c1 * rot2[i][j] * (x[j] - xopt[j]);
- }
- }
- x1 = datax[0];
-
- for (i = 0; i < n; ++i) {
- if (fabs(datax[i]) > 0.5) /* TODO: Documentation: no fabs() in documentation */
- datax[i] = (double)floor(datax[i] + 0.5);
- else
- datax[i] = (double)floor(alpha * datax[i] + 0.5) / alpha;
- }
-
- for (i = 0; i < n; ++i) {
- dataxx[i] = 0.0;
- for (j = 0; j < n; ++j) {
- dataxx[i] += rot1[i][j] * datax[j];
- }
- }
-
- /* Computation core */
- result[0] = 0.0;
- for (i = 0; i < n; ++i) {
- double exponent;
- exponent = (double) (long) i / ((double) (long) n - 1.0);
- result[0] += pow(condition, exponent) * dataxx[i] * dataxx[i];
- ;
- }
- result[0] = 0.1 * ((fabs(x1) * 1.0e-4) > result[0] ? (fabs(x1) * 1.0e-4) : result[0]) + penalty + fopt;
-
- return result[0];
- }
-
- static Step_Ellipsoid * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Step_Ellipsoid(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/BBOB/f_weierstrass.hpp
)
#ifndef _F_WEIERSTRASS_HPP
-#define _F_WEIERSTRASS_HPP
-
-#include "IOHprofiler_problem.h"
-#include "coco_transformation.hpp"
-
-#define F_WEIERSTRASS_SUMMANDS 12
-
-class Weierstrass : public IOHprofiler_problem<double> {
-public:
- Weierstrass(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_id(16);
- IOHprofiler_set_problem_name("Weierstrass");
- IOHprofiler_set_problem_type("bbob");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(-5.0);
- IOHprofiler_set_upperbound(5.0);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_as_minimization();
- }
-
- ~Weierstrass() {}
-
- const double condition = 100.0;
- double f0;
- double ak[F_WEIERSTRASS_SUMMANDS];
- double bk[F_WEIERSTRASS_SUMMANDS];
-
- void prepare_problem() {
-
- std::vector<double> xopt;
- double fopt;
- std::vector<std::vector<double> > M;
- std::vector<double> b;
- std::vector<std::vector<double> > M1;
- std::vector<double> b1;
- /* compute xopt, fopt*/
-
- int n = this->IOHprofiler_get_number_of_variables();
- const long rseed = (long) (16 + 10000 * this->IOHprofiler_get_instance_id());
- bbob2009_compute_xopt(xopt, rseed, n);
- fopt = bbob2009_compute_fopt(16, this->IOHprofiler_get_instance_id());
-
- /* compute M and b */
- M = std::vector<std::vector<double> > (n);
- M1 = std::vector<std::vector<double> > (n);
- for (int i = 0; i != n; i++) {
- M[i] = std::vector<double> (n);
- M1[i] = std::vector<double> (n);
- }
- b = std::vector<double> (n);
- b1 = std::vector<double> (n);
- std::vector<std::vector<double> > rot1;
- std::vector<std::vector<double> > rot2;
- bbob2009_compute_rotation(rot1, rseed + 1000000, n);
- bbob2009_compute_rotation(rot2, rseed, n);
- for (int i = 0; i < n; ++i) {
- b[i] = 0.0;
- for (int j = 0; j < n; ++j) {
- M[i][j] = 0.0;
- for (int k = 0; k < n; ++k) {
- const double base = 1.0 / sqrt(condition);
- const double exponent = 1.0 * (int) k / ((double) (long) n - 1.0);
- M[i][j] += rot1[i][k] * pow(base, exponent) * rot2[k][j];
- }
- }
- }
- bbob2009_copy_rotation_matrix(rot1, M1, b1, n);
-
- f0 = 0.0;
- for (int i = 0; i < F_WEIERSTRASS_SUMMANDS; ++i) {
- ak[i] = pow(0.5, (double) i);
- bk[i] = pow(3., (double) i);
- f0 += ak[i] * cos(2 * coco_pi * bk[i] * 0.5);
- }
- Coco_Transformation_Data::fopt = fopt;
- Coco_Transformation_Data::xopt = xopt;
- Coco_Transformation_Data::M = M;
- Coco_Transformation_Data::b = b;
- Coco_Transformation_Data::M1 = M1;
- Coco_Transformation_Data::b1 = b1;
- Coco_Transformation_Data::penalty_factor = 10.0 / (double) n;
- }
-
- double internal_evaluate(const std::vector<double> &x) {
- int n = x.size();
- size_t i, j;
-
- std::vector<double> result(1);
-
- result[0] = 0.0;
- for (i = 0; i < n; ++i) {
- for (j = 0; j < F_WEIERSTRASS_SUMMANDS; ++j) {
- result[0] += cos(2 * coco_pi * (x[i] + 0.5) * bk[j]) * ak[j];
- }
- }
- result[0] = 10.0 * pow(result[0] / (double) (long) n - f0, 3.0);
-
- return result[0];
- }
-
- static Weierstrass * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Weierstrass(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/IOHprofiler_all_problems.hpp
)
#ifndef _IOHPROFILER_ALL_PROBLEMS_HPP
-#define _IOHPROFILER_ALL_PROBLEMS_HPP
-
-#include "f_one_max.hpp"
-#include "f_leading_ones.hpp"
-#include "f_linear.hpp"
-#include "f_one_max_dummy1.hpp"
-#include "f_one_max_dummy2.hpp"
-#include "f_one_max_neutrality.hpp"
-#include "f_one_max_epistasis.hpp"
-#include "f_one_max_ruggedness1.hpp"
-#include "f_one_max_ruggedness2.hpp"
-#include "f_one_max_ruggedness3.hpp"
-#include "f_leading_ones_dummy1.hpp"
-#include "f_leading_ones_dummy2.hpp"
-#include "f_leading_ones_neutrality.hpp"
-#include "f_leading_ones_epistasis.hpp"
-#include "f_leading_ones_ruggedness1.hpp"
-#include "f_leading_ones_ruggedness2.hpp"
-#include "f_leading_ones_ruggedness3.hpp"
-#include "f_labs.hpp"
-#include "f_ising_1D.hpp"
-#include "f_ising_2D.hpp"
-#include "f_ising_triangle.hpp"
-#include "f_MIS.hpp"
-#include "f_N_queens.hpp"
-
-#include "IOHprofiler_class_generator.h"
-
-static registerInFactory<IOHprofiler_problem<int>,OneMax> regOneMax("OneMax");
-static registerInFactory<IOHprofiler_problem<int>,OneMax_Dummy1> regOneMax_Dummy1("OneMax_Dummy1");
-static registerInFactory<IOHprofiler_problem<int>,OneMax_Dummy2> regOneMax_Dummy2("OneMax_Dummy2");
-static registerInFactory<IOHprofiler_problem<int>,OneMax_Epistasis> regOneMax_Epistasis("OneMax_Epistasis");
-static registerInFactory<IOHprofiler_problem<int>,OneMax_Neutrality> regOneMax_Neutrality("OneMax_Neutrality");
-static registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness1> regOneMax_Ruggedness1("OneMax_Ruggedness1");
-static registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness2> regOneMax_Ruggedness2("OneMax_Ruggedness2");
-static registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness3> regOneMax_Ruggedness3("OneMax_Ruggedness3");
-
-static registerInFactory<IOHprofiler_problem<int>,LeadingOnes> regLeadingOnes("LeadingOnes");
-static registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Dummy1> regLeadingOnes_Dummy1("LeadingOnes_Dummy1");
-static registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Dummy2> regLeadingOnes_Dummy2("LeadingOnes_Dummy2");
-static registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Epistasis> regLeadingOnes_Epistasis("LeadingOnes_Epistasis");
-static registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Neutrality> regLeadingOnes_Neutrality("LeadingOnes_Neutrality");
-static registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness1> regLeadingOnes_Ruggedness1("LeadingOnes_Ruggedness1");
-static registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness2> regLeadingOnes_Ruggedness2("LeadingOnes_Ruggedness2");
-static registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness3> regLeadingOnes_Ruggedness3("LeadingOnes_Ruggedness3");
-
-static registerInFactory<IOHprofiler_problem<int>,Linear> regLinear("Linear");
-static registerInFactory<IOHprofiler_problem<int>,MIS> regMIS("MIS");
-static registerInFactory<IOHprofiler_problem<int>,LABS> regLABS("LABS");
-static registerInFactory<IOHprofiler_problem<int>,NQueens> regNQueens("NQueens");
-static registerInFactory<IOHprofiler_problem<int>,Ising_1D> regIsing_1D("Ising_1D");
-static registerInFactory<IOHprofiler_problem<int>,Ising_2D> regIsing_2D("Ising_2D");
-static registerInFactory<IOHprofiler_problem<int>,Ising_Triangle> regIsing_Triangle("Ising_Triangle");
-
-#endif //_IOHPROFILER_ALL_PROBLEMS_HPP
-
↰ Return to documentation for file (src/Problems/PBO/f_MIS.hpp
)
#ifndef _F_MIS_H
-#define _F_MIS_H
-
-#include "IOHprofiler_problem.h"
-
-class MIS : public IOHprofiler_problem<int> {
-public:
- MIS(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("MIS");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~MIS() {}
-
- int isEdge (int i, int j, size_t problem_size) {
- if (i!=problem_size/2 && j==i+1) {
- return 1;
- } else if (i<=((int)problem_size/2)-1 && j==i+((int)problem_size/2)+1 ) {
- return 1;
- } else if (i<=((int)problem_size/2) && i>=2 && j==i+((int)problem_size/2)-1) {
- return 1;
- } else {
- return 0;
- }
- }
-
-
-double internal_evaluate(const std::vector<int> &x) {
- int i, j,index;
- int n = x.size();
- int result= 0;
- int num_of_ones=0;
- int sum_edges_in_the_set=0;
- int number_of_variables_even=(int)n;
- std::vector<int> ones_array(number_of_variables_even+1);
-
- if (n%2!=0) {
- number_of_variables_even=(int)n-1;
- }
-
- for (index=0; index<number_of_variables_even; index++) {
- if (x[index]==1) {
- ones_array[num_of_ones] = index;
- num_of_ones+=1;
- }
- }
-
- for (i=0; i<num_of_ones; i++) {
- for (j=i+1; j<num_of_ones; j++) {
- if (isEdge(ones_array[i]+1,ones_array[j]+1,(size_t)number_of_variables_even)==1) {
- sum_edges_in_the_set+=1;
- }
- }
- }
- result=num_of_ones - (number_of_variables_even*sum_edges_in_the_set);
- return (double)result;
- }
-
- static MIS * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new MIS(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_N_queens.hpp
)
#ifndef _F_NQUEENS_H
-#define _F_NQUEENS_H
-
-#include "IOHprofiler_problem.h"
-
-class NQueens : public IOHprofiler_problem<int> {
-public:
- NQueens(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("NQueens");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~NQueens() {}
-
- void customize_optimal() {
- IOHprofiler_set_optimal(sqrt( (double) IOHprofiler_get_number_of_variables() ) );
- }
-
- double _max(double element1 , double element2) {
- if (element1>element2) {
- return element1;
- } else {
- return element2;
- }
- }
-
- double internal_evaluate(const std::vector<int> &x) {
-
- double result;
- int n = x.size();
- int index,j,i,k,l;
- int N_queens=(int)(sqrt((double)n)+0.5);
- int number_of_queens_on_board = 0;
- double k_penalty=0.0;
- double l_penalty =0.0;
- double raws_penalty=0.0;
- double columns_penalty=0.0;
- int indx=0;
- float C = (float)N_queens;
-
- if (floor(sqrt((double)n))!=sqrt((double)n)) {
- IOH_error("Number of parameters in the N Queen problem must be a square number");
- }
-
- for (index=0; index<n; index++) {
- if (x[index]==1){
- number_of_queens_on_board+=1;
- }
- }
-
- for (j=1; j <=N_queens; j++) {
- double sum_column = 0.0;
- for (i=1; i<=N_queens; i++) {
- indx=((i-1)*N_queens) + ((j-1)%N_queens);
- sum_column+=(double)x[indx];
- }
- columns_penalty+=_max(0.0, (-1.0+sum_column));
- }
-
- for (i=1; i<=N_queens; i++) {
- double sum_raw = 0.0;
- /*double sum_k = 0.0;
- double sum_l = 0.0;*/
- for (j=1; j <=N_queens; j++) {
- indx=((i-1)*N_queens) + ((j-1)%N_queens);
- sum_raw+=(double)x[indx];
- }
- raws_penalty+=_max(0.0, (-1.0+sum_raw));
- }
-
- for (k=2-N_queens; k<=N_queens-2; k++) {
- double sum_k=0.0;
- for (i=1; i<=N_queens; i++) {
- if (k+i>=1 && k+i<=N_queens) {
- indx=((i-1)*N_queens) + ((k+i-1)%N_queens);
- sum_k += (double)x[indx];
- }
- }
- k_penalty+=_max(0.0, (-1.0+sum_k));
- }
- for (l=3; l<=2*N_queens-1; l++) {
- double sum_l=0.0;
- for (i=1; i<=N_queens; i++) {
- if (l-i>=1 && l-i<=N_queens) {
- indx=((i-1)*N_queens) + ((l-i-1)%N_queens);
- sum_l += (double)x[indx];
- }
- }
- l_penalty+=_max(0.0, (-1.0+sum_l));
- }
- result = (double) (number_of_queens_on_board - (C*raws_penalty) - (C*columns_penalty) -(C*k_penalty) - (C*l_penalty));
- return (double)result;
- }
-
- static NQueens * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new NQueens(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_concatenated_trap.hpp
)
#ifndef _F_CONCATENATED_TRAP_H
-#define _F_CONCATENATED_TRAP_H
-
-#include "IOHprofiler_problem.h"
-
-class Concatenated_Trap : public IOHprofiler_problem<int> {
-public:
-
- Concatenated_Trap(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("Concatenated_Trap");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_optimal((double)dimension);
- }
-
- ~Concatenated_Trap() {};
-
- int k = 5;
-
- double internal_evaluate(const std::vector<int> &x) {
- int n = x.size();
- double result = 0.0;
- double block_result;
-
- int m = n / k;
- for (int i = 1; i <= m; ++i) {
- block_result = 0.0;
- for (int j = i*k - k; j != i*k; ++j) {
- block_result += x[j];
- }
- if (block_result == k) {
- result += 1;
- } else {
- result += ((double)(k - 1 - block_result) / (double) k );
- }
- }
- int remain_k = n - m * k;
- if (remain_k != 0 ) {
- block_result = 0.0;
- for (int j = m * k - 1; j != n; ++j) {
- block_result += x[j];
- }
- if (block_result == remain_k) {
- result += 1;
- } else {
- result += ((double)(remain_k - 1 - block_result) / (double) remain_k );
- }
- }
-
- return result;
- }
-
- static Concatenated_Trap * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Concatenated_Trap(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_ising_ring.hpp
)
#ifndef _F_ISING_RING_H
-#define _F_ISING_RING_H
-
-#include "IOHprofiler_problem.h"
-
-class Ising_Ring : public IOHprofiler_problem<int> {
-public:
- Ising_Ring(int instance_id, int dimension) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("Ising_Ring");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~Ising_Ring() {}
-
- int modulo_ising_ring(int x,int N) {
- return (x % N + N) %N;
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- int result = 0, n = x.size();
-
- int neig;
- for (int i = 0; i < n; ++i) {
- neig = x[modulo_ising_ring((i - 1) , n)];
- result += (x[i] * neig) - ((1 - x[i]) * (1 - neig));
- }
- return (double)result;
- }
-
- static Ising_Ring * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Ising_Ring(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_ising_torus.hpp
)
#ifndef _F_ISING_TWOD_H
-#define _F_ISING_TWOD_H
-
-#include "IOHprofiler_problem.h"
-
-class Ising_Torus : public IOHprofiler_problem<int> {
-public:
- Ising_Torus(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("Ising_Torus");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~Ising_Torus() {}
-
- int modulo_ising_torus(int x,int N) {
- return (x % N + N) %N;
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- int n = x.size();
- int i, j, neig;
- int result= 0;
- int neighbors[2];
- int lattice_size = (int)sqrt((double)n);
-
- if(floor(sqrt((double)n))!=sqrt((double)n)) {
- IOH_error("Number of parameters in the Ising square problem must be a square number");
- }
-
- for(i = 0; i < lattice_size; ++i) {
- for (j = 0; j < lattice_size; ++j) {
- neighbors[0] = x[modulo_ising_torus(i + 1, lattice_size) * lattice_size + j];
- neighbors[1] = x[i * lattice_size + modulo_ising_torus((j + 1) , lattice_size)];
- for (neig = 0; neig < 2; neig++) {
- result += (x[i*lattice_size + j] * neighbors[neig]) - ((1 - x[i * lattice_size + j]) * (1 - neighbors[neig]));
- }
- }
- }
-
- return (double)result;
- }
-
- static Ising_Torus * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Ising_Torus(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_ising_triangular.hpp
)
#ifndef _F_ISING_TRIANGULAR_H
-#define _F_ISING_TRIANGULAR_H
-
-#include "IOHprofiler_problem.h"
-
-class Ising_Triangular : public IOHprofiler_problem<int> {
-public:
-
- Ising_Triangular(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("Ising_Triangular");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~Ising_Triangular() {}
-
- int modulo_ising_triangular(int x,int N) {
- return (x % N + N) % N;
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- int i, j, neig;
- int n = x.size();
- int result = 0;
- int neighbors[3];
- int lattice_size = (int)sqrt((double)n);
-
- for (i = 0; i < lattice_size; ++i) {
- for (j = 0; j < lattice_size; ++j) {
- neighbors[0] = x[modulo_ising_triangular((i + 1), lattice_size) * lattice_size + j];
- neighbors[1] = x[i * lattice_size + modulo_ising_triangular((j + 1), lattice_size)];
- neighbors[2] = x[modulo_ising_triangular((i + 1) , lattice_size) * lattice_size + modulo_ising_triangular((j + 1), lattice_size)];
-
- for (neig=0; neig < 3; neig++) {
- result += (x[i * lattice_size + j] * neighbors[neig]) - ((1 - x[i * lattice_size + j]) * (1 - neighbors[neig]));
- }
- }
- }
- return (double)result;
- }
-
- static Ising_Triangular * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Ising_Triangular(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_labs.hpp
)
#ifndef _F_LABS_H
-#define _F_LABS_H
-
-#include "IOHprofiler_problem.h"
-
-class LABS : public IOHprofiler_problem<int> {
-public:
- LABS(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LABS");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~LABS() {}
-
- double correlation(const std::vector<int> x, const int n, int k)
- {
- int x1,x2;
- double result;
- result = 0.0;
- for (int i = 0 ; i < n - k; ++i) {
- if (x[i] == 0) {
- x1 = -1;
- } else {
- x1 = 1;
- }
- if (x[i + k] == 0) {
- x2 = -1;
- } else {
- x2 = 1;
- }
- result += x1 * x2;
- }
- return result;
- }
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- double result = 0.0, cor;
- for (int k = 1; k != n; ++k) {
- cor = correlation(x,n,k);
- result += cor * cor;
- }
- result = (double)(n*n)/2.0/result;
- return (double)result;
- }
-
- static LABS * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LABS(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_leading_ones.hpp
)
#ifndef _F_LEADING_ONES_H
-#define _F_LEADING_ONES_H
-
-
-#include "IOHprofiler_problem.h"
-
-class LeadingOnes : public IOHprofiler_problem<int> {
-public:
- LeadingOnes(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LeadingOnes");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~LeadingOnes() {}
-
- double internal_evaluate(const std::vector<int> &x) {
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if(x[i] == 1)
- result = i + 1;
- else
- break;
- }
- return (double)result;
- }
-
- static LeadingOnes * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LeadingOnes(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_leading_ones_dummy1.hpp
)
#ifndef _F_LEADING_ONES_DUMMYONE_H
-#define _F_LEADING_ONES_DUMMYONE_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class LeadingOnes_Dummy1 : public IOHprofiler_problem<int> {
-public:
- LeadingOnes_Dummy1(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LeadingOnes_Dummy1");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~LeadingOnes_Dummy1() {}
-
- std::vector<int> info;
- void prepare_problem() {
- info = dummy(IOHprofiler_get_number_of_variables(),0.5,10000);
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- int n = this->info.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if (x[this->info[i]] == 1) {
- result = i + 1;
- } else {
- break;
- }
- }
- return (double)result;
- }
-
- static LeadingOnes_Dummy1 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LeadingOnes_Dummy1(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_leading_ones_dummy2.hpp
)
#ifndef _F_LEADING_ONES_DUMMYTWO_H
-#define _F_LEADING_ONES_DUMMYTWO_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class LeadingOnes_Dummy2 : public IOHprofiler_problem<int> {
-public:
- LeadingOnes_Dummy2(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LeadingOnes_Dummy2");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_optimal(floor((double)(dimension * 0.9)));
- }
-
- ~LeadingOnes_Dummy2() {}
-
- std::vector<int> info;
- void prepare_problem() {
- info = dummy(IOHprofiler_get_number_of_variables(),0.9,10000);
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- int n = this->info.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if (x[this->info[i]] == 1) {
- result = i + 1;
- } else {
- break;
- }
- }
- return (double)result;
- }
-
- static LeadingOnes_Dummy2 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LeadingOnes_Dummy2(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_leading_ones_epistasis.hpp
)
#ifndef _F_LEADING_ONES_EPISTASIS_H
-#define _F_LEADING_ONES_EPISTASIS_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class LeadingOnes_Epistasis : public IOHprofiler_problem<int> {
-public:
- LeadingOnes_Epistasis(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LeadingOnes_Epistasis");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~LeadingOnes_Epistasis() {}
-
- void customize_optimal() {
- IOHprofiler_set_optimal(IOHprofiler_get_number_of_variables());
- }
-
- double internal_evaluate(const std::vector<int> &x) {
-
- std::vector<int> new_variables = epistasis(x,4);
- int n = new_variables.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if(new_variables[i] == 1) {
- result = i + 1;
- } else {
- break;
- }
- }
- return (double)result;
- }
-
- static LeadingOnes_Epistasis * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LeadingOnes_Epistasis(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_leading_ones_neutrality.hpp
)
#ifndef _F_LEADING_ONES_NEUTRALITY_H
-#define _F_LEADING_ONES_NEUTRALITY_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class LeadingOnes_Neutrality : public IOHprofiler_problem<int> {
-public:
- LeadingOnes_Neutrality(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LeadingOnes_Neutrality");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~LeadingOnes_Neutrality() {}
-
- double internal_evaluate(const std::vector<int> &x) {
- std::vector<int> new_variables = neutrality(x,3);
- int n = new_variables.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if (new_variables[i] == 1) {
- result = i + 1;
- } else {
- break;
- }
- }
- return (double)result;
- }
-
- static LeadingOnes_Neutrality * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LeadingOnes_Neutrality(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_leading_ones_ruggedness1.hpp
)
#ifndef _F_LEADING_ONES_RUGGEDNESSONE_H
-#define _F_LEADING_ONES_RUGGEDNESSONE_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class LeadingOnes_Ruggedness1 : public IOHprofiler_problem<int> {
-public:
-
- LeadingOnes_Ruggedness1(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LeadingOnes_Ruggedness1");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~LeadingOnes_Ruggedness1() {}
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if (x[i] == 1) {
- result = i + 1;
- } else {
- break;
- }
- }
- result = ruggedness1(result,n);
- return (double)result;
- }
-
- static LeadingOnes_Ruggedness1 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LeadingOnes_Ruggedness1(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_leading_ones_ruggedness2.hpp
)
#ifndef _F_LEADING_ONES_RUGGEDNESSTWO_H
-#define _F_LEADING_ONES_RUGGEDNESSTWO_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class LeadingOnes_Ruggedness2 : public IOHprofiler_problem<int> {
-public:
- LeadingOnes_Ruggedness2(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LeadingOnes_Ruggedness2");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~LeadingOnes_Ruggedness2() {}
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if(x[i] == 1) {
- result = i + 1;
- } else {
- break;
- }
- }
- result = ruggedness2(result,n);
- return (double)result;
- }
-
- static LeadingOnes_Ruggedness2 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LeadingOnes_Ruggedness2(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_leading_ones_ruggedness3.hpp
)
#ifndef _F_LEADING_ONES_RUGGEDNESSTHREE_H
-#define _F_LEADING_ONES_RUGGEDNESSTHREE_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class LeadingOnes_Ruggedness3 : public IOHprofiler_problem<int> {
-public:
- LeadingOnes_Ruggedness3(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("LeadingOnes_Ruggedness3");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~LeadingOnes_Ruggedness3() {}
-
- std::vector<double> info;
- void prepare_problem() {
- info = ruggedness3(IOHprofiler_get_number_of_variables());
- }
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if(x[i] == 1) {
- result = i + 1;
- } else {
- break;
- }
- }
- result = this->info[(int)(result + 0.5)];
- return (double)result;
- }
-
- static LeadingOnes_Ruggedness3 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new LeadingOnes_Ruggedness3(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_linear.hpp
)
#ifndef _F_LINEAR_H
-#define _F_LINEAR_H
-
-#include "IOHprofiler_problem.h"
-
-class Linear : public IOHprofiler_problem<int> {
-public:
- Linear(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("Linear");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- Initilize_problem(dimension);
- }
-
- ~Linear() {}
-
- void Initilize_problem(int dimension) {
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- int n = x.size();
- double result = 0;
- for (int i = 0; i < n; ++i) {
- result += (double)x[i] * (double)(i + 1);
- }
- return (double)result;
- }
-
- static Linear * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new Linear(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_nk_landscapes.hpp
)
#ifndef _F_NK_LANDSCAPES_H
-#define _F_NK_LANDSCAPES_H
-
-#include "IOHprofiler_problem.h"
-
-class NK_Landscapes : public IOHprofiler_random, public IOHprofiler_problem<int> {
-public:
- NK_Landscapes(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("NK_Landscapes");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~NK_Landscapes() {};
-
- std::vector<std::vector<double>> F;
- std::vector<std::vector<int>> E;
- int k = 1;
-
- void set_n_k(const int n, const int k) {
- E.clear();
- F.clear();
- this->k = k;
- if(k > n) {
- IOH_error("NK_Landscapes, k > n");
- }
- std::vector<double> rand_vec;
- for (int i = 0;i != n; ++i) {
- IOHprofiler_uniform_rand((size_t)k,(long)(k * (i+1)),rand_vec);
-
-
- std::vector<int> sampled_number;
- std::vector<int> population;
- for(int i = 0; i < n; ++i) {
- population.push_back(i);
- }
-
- int temp,randPos;
- for(int i = n-1; i > 0; --i) {
- randPos = (int)floor(rand_vec[n-1-i] * (i+1));
- temp = population[i];
- population[i] = population[randPos];
- population[randPos] = temp;
- sampled_number.push_back(population[i]);
- if(n-i-1 == k-1) {
- break;
- }
- }
- if(n == k) {
- sampled_number.push_back(population[0]);
- }
- E.push_back(sampled_number);
- }
- for (int i = 0; i != n; ++i) {
- IOHprofiler_uniform_rand((size_t)pow(2,k+1),(long)(k * (i+1) * 2),rand_vec);
- F.push_back(rand_vec);
- }
- }
-
- void prepare_problem() {
- set_n_k(IOHprofiler_get_number_of_variables(),k);
- }
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- double result = 0;
- int index;
- for (int i = 0; i != n; ++i) {
- index= x[i];
- for (int j = 0; j != k; ++j) {
- index = index + pow(2,(j+1)) * x[E[i][j]];
- }
- result += F[i][index];
- }
-
- result = result / (double)n;
- return -result;
- }
-
- static NK_Landscapes * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new NK_Landscapes(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_one_max.hpp
)
#ifndef _F_ONE_MAX_H
-#define _F_ONE_MAX_H
-
-#include "IOHprofiler_problem.h"
-
-class OneMax : public IOHprofiler_problem<int> {
-public:
- OneMax(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~OneMax() {}
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += x[i];
- }
- return (double)result;
- }
-
- static OneMax * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new OneMax(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_one_max_dummy1.hpp
)
#ifndef _F_ONE_MAX_DUMMYONE_H
-#define _F_ONE_MAX_DUMMYONE_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class OneMax_Dummy1 : public IOHprofiler_problem<int> {
-public:
- OneMax_Dummy1(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax_Dummy1");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~OneMax_Dummy1() {};
-
- std::vector<int> info;
- void prepare_problem() {
- info = dummy(IOHprofiler_get_number_of_variables(),0.5,10000);
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- int n = this->info.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += x[this->info[i]];
- }
- return (double)result;
- }
-
- static OneMax_Dummy1 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new OneMax_Dummy1(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_one_max_dummy2.hpp
)
#ifndef _F_ONE_MAX_DUMMYTWO_H
-#define _F_ONE_MAX_DUMMYTWO_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class OneMax_Dummy2 : public IOHprofiler_problem<int> {
-public:
-
- OneMax_Dummy2(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax_Dummy2");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~OneMax_Dummy2() {};
-
- std::vector<int> info;
- void prepare_problem() {
- info = dummy(IOHprofiler_get_number_of_variables(),0.9,10000);
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- int n = this->info.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += x[this->info[i]];
- }
- return (double)result;
- }
-
- static OneMax_Dummy2 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new OneMax_Dummy2(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_one_max_epistasis.hpp
)
#ifndef _F_ONE_MAX_EPISTASIS_H
-#define _F_ONE_MAX_EPISTASIS_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class OneMax_Epistasis : public IOHprofiler_problem<int> {
-public:
- OneMax_Epistasis(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax_Epistasis");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~OneMax_Epistasis() {}
-
- void customize_optimal() {
- IOHprofiler_set_optimal(IOHprofiler_get_number_of_variables());
- }
-
- double internal_evaluate(const std::vector<int> &x) {
-
- std::vector<int> new_variables = epistasis(x,4);
- int n = new_variables.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += new_variables[i];
- }
- return (double)result;
- }
-
- static OneMax_Epistasis * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new OneMax_Epistasis(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_one_max_neutrality.hpp
)
#ifndef _F_ONE_MAX_NEUTRALITY_H
-#define _F_ONE_MAX_NEUTRALITY_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class OneMax_Neutrality : public IOHprofiler_problem<int> {
-public:
- OneMax_Neutrality(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax_Neutrality");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~OneMax_Neutrality() {}
-
- double internal_evaluate(const std::vector<int> &x) {
-
- std::vector<int> new_variables = neutrality(x,3);
- int n = new_variables.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += new_variables[i];
- }
- return (double)result;
- }
-
- static OneMax_Neutrality * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new OneMax_Neutrality(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_one_max_ruggedness1.hpp
)
#ifndef _F_ONE_MAX_RUGGEDNESSONE_H
-#define _F_ONE_MAX_RUGGEDNESSONE_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class OneMax_Ruggedness1 : public IOHprofiler_problem<int> {
-public:
-
- OneMax_Ruggedness1(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax_Ruggedness1");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~OneMax_Ruggedness1() {}
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += x[i];
- }
- result = ruggedness1(result,n);
- return (double)result;
- }
-
- static OneMax_Ruggedness1 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new OneMax_Ruggedness1(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_one_max_ruggedness2.hpp
)
#ifndef _F_ONE_MAX_RUGGEDNESSTWO_H
-#define _F_ONE_MAX_RUGGEDNESSTWO_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class OneMax_Ruggedness2 : public IOHprofiler_problem<int> {
-public:
-
- OneMax_Ruggedness2(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
-
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax_Ruggedness2");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~OneMax_Ruggedness2() {}
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += x[i];
- }
- result = ruggedness2(result,n);
- return (double)result;
- }
-
-
- static OneMax_Ruggedness2 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new OneMax_Ruggedness2(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/PBO/f_one_max_ruggedness3.hpp
)
#ifndef _F_ONE_MAX_RUGGEDNESSTHREE_H
-#define _F_ONE_MAX_RUGGEDNESSTHREE_H
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class OneMax_Ruggedness3 : public IOHprofiler_problem<int> {
-public:
-
- OneMax_Ruggedness3(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax_Ruggedness3");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~OneMax_Ruggedness3() {}
-
- std::vector<double> info;
- void prepare_problem() {
- info = ruggedness3(IOHprofiler_get_number_of_variables());
- }
-
- double internal_evaluate(const std::vector<int> &x) {
-
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += x[i];
- }
- result = this->info[(int)(result+0.5)];
- return (double)result;
- }
-
- static OneMax_Ruggedness3 * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new OneMax_Ruggedness3(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/README.md
)
## Problems of IOHexperimenter
-
-[IOHprofiler_problem](/src/Template/IOHprofiler_problem.hpp) is the base `class` of problems of __IOHexperimenter__. The property variables of problems include:
-* `problem_id`, will be assigned if the problem is added to a suite, otherwise default by 0.
-* `instance_id`, sets transformation methods on problems. The original problem is with instance_id 1, <i>scale</i> and <i>shift</i> are applied on objectives for instance_id in [2,100], <i>XOR</i> is applied on variables for instance_id in [2,50], and <i>sigma</i> function is applied on variables for instance_id in [51,100].
-* `problem_name`
-* `problem_type`
-* `lowerbound`, is a vector of lowerbound for variables.
-* `upperbound`, is a vector of upperbound for variables.
-* `number_of_variables`, is the dimension of the problem.
-* `number_of_objectives`, is only available as 1 now. The functionality of multi-objectives is under development.
-* `best_variables`, is a vector of optimal solution, which is used to calculate the optimum. If the best_variables is not given, the optimum will be set as __DBL_MAX__.
-* `optimal`, is a vector of optimal objectives, but currently only single objective is supported.
-
-* `evaluate_int_info`, is a vector of __int__ values that are iteratively used in <i>evaluate</i>.
-* `evaluate_double_info`, is a vector of __double__ values that are iteratively used in <i>evaluate</i>.
-
-And some functions for personal experiments are supplied:
-* <i>evaluate(x)</i>, returns a vector of fitness values. The argument __x__ is a vector of variables.
-* <i>evaluate(x,y)</i>, updates __y__ with a vector of fitness values, and __x__ is a vector of variables.
-* <i>addCSVLogger(logger)</i>, assigns a __IOHprofiler_csv_logger__ class to the problem.
-* <i>clearLogger()</i>, delete logger methods of the problem.
-* <i>reset_problem()</i>, reset the history information of problem evaluations. You should call this function at first when you plan to do another test on the same problem class.
-* <i>IOHprofiler_hit_optimal()</i>, returns true if the optimum of the problem has been found.
-* <i>IOHprofiler_set_number_of_variables(number_of_variables)</i>, sets dimension of the problem.
-* <i>IOHprofiler_set_instance_id(instance_id)</i>
-
-### Creating a problem
-__IOHexperimenter__ provides a variety of problems for testing algorithms, but it is also easy to add your own problems. Overall, to create a problem of __IOHexperimenter__, two functions need to be implemented: <i>construct functions</i> and <i>internel_evaluate</i>. Additionally, you can define <i>update_evaluate_double_info</i> and <i>update_evaluate_int_info</i> to make evluate process more efficiently.
-
-Taking the implementation of __OneMax__ as an instance, <i>construct functions</i> are as below. `problem_name` and `number_of_objectives` __must__ be set. In general, two methods of construction of the problems are given. One is constructing without giving `instance_id` and `dimension`, and the other one is with.
-```cpp
-OneMax() {
- IOHprofiler_set_problem_name("OneMax");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
-}
-
-OneMax(int instance_id, int dimension) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("OneMax");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- Initilize_problem(dimension);
-}
-
-~OneMax() {};
-
-void Initilize_problem(int dimension) {
- IOHprofiler_set_number_of_variables(dimension);
- IOHprofiler_set_optimal((double)dimension);
-};
-```
-
-The <i>internal_evaluate</i> __must__ be implemented as well. It is used during evaluate process, returning a vector of (real) objective values of the corresponding variables __x__.
-```cpp
-std::vector<double> internal_evaluate(std::vector<int> x) {
- std::vector<double> y;
- int n = x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += x[i];
- }
- y.push_back((double)result);
- return y;
-};
-```
-
-If you want to register your problem by `problem_name` and add it into a suite, please add functions creating instances as following codes.
-```cpp
-static OneMax * createInstance() {
- return new OneMax();
-};
-
-static OneMax * createInstance(int instance_id, int dimension) {
- return new OneMax(instance_id, dimension);
-};
-```
-To register the problem, you can use the <i>geniricGenerator</i> in [IOHprofiler_class_generator](/src/Template/). For example, you can use the following statement to register and create __OneMax__ ,
-```cpp
-// Register
-static registerInFactory<IOHprofiler_problem<int>,OneMax> regOneMax("OneMax");
-// Create
-std::shared_ptr<IOHprofiler_problem<int>> problem = genericGenerator<IOHprofiler_problem<int>>::instance().create("OneMax");
-```
-
↰ Return to documentation for file (src/Problems/WModel/f_w_model_leading_ones.hpp
)
#ifndef _F_W_MODEL_LEADING_ONES_HPP
-#define _F_W_MODEL_LEADING_ONES_HPP
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class W_Model_LeadingOnes : public IOHprofiler_problem<int> {
-public:
- W_Model_LeadingOnes(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("W_Model_LeadingOnes");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~W_Model_LeadingOnes() {};
-
- std::vector<int> dummy_info;
- double dummy_para = 0;
- int epistasis_para = 0;
- int neutrality_para = 0;
- int ruggedness_para = 0;
- std::vector<int> ruggedness_info;
- int temp_dimension;
- void prepare_problem() {
- this->temp_dimension = this->IOHprofiler_get_number_of_variables();
-
- if (this->dummy_para > 0) {
- this->dummy_info = dummy(this->temp_dimension,dummy_para,10000);
- assert(this->dummy_info.size()==(size_t)(this->temp_dimension*this->dummy_para));
- this->temp_dimension = this->dummy_info.size();
- }
-
- if (this->neutrality_para > 0) {
- this->temp_dimension = this->temp_dimension / this->neutrality_para;
- }
- if (this->ruggedness_para > 0) {
- this->ruggedness_info = ruggedness_raw(ruggedness_translate(this->ruggedness_para, this->temp_dimension), this->temp_dimension);
- }
- }
-
- void customize_optimal() {
- int dimension = IOHprofiler_get_number_of_variables();
- int optimal_value = (int)(dimension*(this->dummy_para == 0 ? 1 : this->dummy_para)) / (this->neutrality_para == 0 ? 1 : this->neutrality_para);
-
- IOHprofiler_set_optimal((double)optimal_value);
- }
-
- void set_w_setting(const double dummy_para, const int epistasis_para, const int neutrality_para, const int ruggedness_para) {
- this->dummy_para = dummy_para;
- this->epistasis_para = epistasis_para;
- this->neutrality_para = neutrality_para;
- this->ruggedness_para = ruggedness_para;
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- std::vector<int> w_model_x;
- std::vector<int> tempX;
- int n;
-
- // Dummy Layer
- if (this->dummy_para > 0){
- n = this->dummy_info.size();
- w_model_x.reserve(n);
- for (int i = 0; i != n; ++i) {
- w_model_x.push_back(x[this->dummy_info[i]]);
- }
- } else {
- w_model_x = x;
- }
-
- // Neutrality layer
- if (this->neutrality_para > 0) {
- tempX = w_model_x;
- layer_neutrality_compute(tempX,w_model_x,this->neutrality_para);
- }
-
- // Epistasis layer
- if (this->epistasis_para > 0) {
- tempX = w_model_x;
- layer_epistasis_compute(tempX,w_model_x,this->epistasis_para);
- }
-
- // Base evaluate
- n = w_model_x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- if (w_model_x[i] == 1) {
- result = i + 1;
- }
- else {
- break;
- }
- }
-
- // Ruggedness layer
- if (this->ruggedness_para > 0) {
- result = this->ruggedness_info[result];
- }
-
- return (double)result;
- }
-
- static W_Model_LeadingOnes * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new W_Model_LeadingOnes(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/WModel/f_w_model_one_max.hpp
)
#ifndef _F_W_MODEL_ONE_MAX_HPP
-#define _F_W_MODEL_ONE_MAX_HPP
-
-#include "IOHprofiler_problem.h"
-#include "wmodels.hpp"
-
-class W_Model_OneMax : public IOHprofiler_problem<int> {
-public:
- W_Model_OneMax(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- IOHprofiler_set_instance_id(instance_id);
- IOHprofiler_set_problem_name("W_Model_OneMax");
- IOHprofiler_set_problem_type("pseudo_Boolean_problem");
- IOHprofiler_set_number_of_objectives(1);
- IOHprofiler_set_lowerbound(0);
- IOHprofiler_set_upperbound(1);
- IOHprofiler_set_best_variables(1);
- IOHprofiler_set_number_of_variables(dimension);
- }
-
- ~W_Model_OneMax() {};
-
- std::vector<int> dummy_info;
- double dummy_para = 0;
- int epistasis_para = 0;
- int neutrality_para = 0;
- int ruggedness_para = 0;
- std::vector<int> ruggedness_info;
- int temp_dimension;
- void prepare_problem() {
- this->temp_dimension = this->IOHprofiler_get_number_of_variables();
-
- if (this->dummy_para > 0) {
- this->dummy_info = dummy(this->temp_dimension,dummy_para,10000);
- assert(this->dummy_info.size()==(size_t)(this->temp_dimension*this->dummy_para));
- this->temp_dimension = this->dummy_info.size();
- }
-
- if (this->neutrality_para > 0) {
- this->temp_dimension = this->temp_dimension / this->neutrality_para;
- }
- if (this->ruggedness_para > 0) {
- this->ruggedness_info = ruggedness_raw(ruggedness_translate(this->ruggedness_para, this->temp_dimension), this->temp_dimension);
- }
- }
-
- void customize_optimal() {
- int dimension = IOHprofiler_get_number_of_variables();
- int optimal_value = (int)(dimension*(this->dummy_para == 0 ? 1 : this->dummy_para)) / (this->neutrality_para == 0 ? 1 : this->neutrality_para);
-
- IOHprofiler_set_optimal((double)optimal_value);
- }
-
- void set_w_setting(const double dummy_para, const int epistasis_para, const int neutrality_para, const int ruggedness_para) {
- this->dummy_para = dummy_para;
- this->epistasis_para = epistasis_para;
- this->neutrality_para = neutrality_para;
- this->ruggedness_para = ruggedness_para;
- }
-
- double internal_evaluate(const std::vector<int> &x) {
- std::vector<int> w_model_x;
- std::vector<int> tempX;
- int n;
-
- if (this->dummy_para > 0){
- n = this->dummy_info.size();
- w_model_x.reserve(n);
- for (int i = 0; i != n; ++i) {
- w_model_x.push_back(x[this->dummy_info[i]]);
- }
- } else {
- w_model_x = x;
- }
-
- // neutrality layer
- if (this->neutrality_para > 0) {
- tempX = w_model_x;
- layer_neutrality_compute(tempX,w_model_x,this->neutrality_para);
- }
-
- // epistasis layer
- if (this->epistasis_para > 0) {
- tempX = w_model_x;
- layer_epistasis_compute(tempX,w_model_x,this->epistasis_para);
- }
-
- // base evaluate
- n = w_model_x.size();
- int result = 0;
- for (int i = 0; i != n; ++i) {
- result += w_model_x[i];
- }
-
- // ruggedness layer
- if (this->ruggedness_para > 0) {
- result = this->ruggedness_info[result];
- }
-
- return (double)result;
- }
-
- static W_Model_OneMax * createInstance(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) {
- return new W_Model_OneMax(instance_id, dimension);
- }
-};
-
-#endif
-
↰ Return to documentation for file (src/Problems/common_used_functions/wmodels.hpp
)
#ifndef _F_WMODELS_H
-#define _F_WMODELS_H
-
-#include "IOHprofiler_random.h"
-
-
-static std::vector<int> dummy(int number_of_variables, double select_rate, long inseed) {
- std::vector<int> position;
- std::vector<int> random_index;
- std::vector<double> random_numbers;
- int temp;
- int select_num = (int)floor((double)(number_of_variables * select_rate));
-
- position.reserve(number_of_variables);
- for (int i = 0; i != number_of_variables; ++i) {
- position.push_back(i);
- }
-
- IOHprofiler_random::IOHprofiler_uniform_rand((size_t)select_num,inseed,random_numbers);
- for (int i = 0; i < select_num; ++i) {
- random_index.push_back((int)floor(random_numbers[i] * 1e4 / 1e4 * number_of_variables));
- }
- for (int i = 0; i != select_num; ++i) {
- temp = position[i];
- position[i] = position[random_index[i]];
- position[random_index[i]] = temp;
- }
-
- sort(position.begin(),position.begin()+select_num);
-
- random_index.clear();
- for(int i = 0; i != select_num; ++i){
- random_index.push_back(position[i]);
- }
- return random_index;
-}
-
-static std::vector<int> neutrality(const std::vector<int> &variables, int mu) {
- int number_of_variables = variables.size();
- int n = (int)floor((double)number_of_variables/(double)mu);
- std::vector<int> new_variables;
-
- new_variables.reserve(n);
- int i = 0, temp = 0;
- while (i != number_of_variables) {
- temp += variables[i];
- if ((i+1) % mu == 0 && i != 0) {
- if (temp >= mu / 2.0) {
- new_variables.push_back(1);
- } else {
- new_variables.push_back(0);
- }
- temp = 0;
- }
- i++;
- }
-
- return new_variables;
-}
-
-static std::vector<int> epistasis(const std::vector<int> &variables, int v) {
- int h, epistasis_result;
- int number_of_variables = variables.size();
- std::vector<int> new_variables;
- new_variables.reserve(number_of_variables);
- h = 0;
- while (h + v - 1 < number_of_variables) {
- int i = 0;
- while(i < v) {
- epistasis_result = -1;
- for (int j = 0; j < v; ++j) {
- if ((v - j - 1) != ((v - i - 1) - 1) % 4) {
- if (epistasis_result == -1) {
- epistasis_result = variables[h+j];
- } else {
- epistasis_result = (epistasis_result != variables[h+j]);
- }
- }
- }
- new_variables.push_back(epistasis_result);
- ++i;
- }
- h += v;
- }
- if(number_of_variables - h > 0) {
- v = number_of_variables - h;
- int i = 0;
- while (i < v) {
- epistasis_result = -1;
- for (int j = 0; j < v; ++j) {
- if ((v - j - 1) != ((v - i - 1) - 1) % 4) {
- if (epistasis_result == -1) {
- epistasis_result = variables[h+j];
- } else {
- epistasis_result = (epistasis_result != variables[h+j]);
- }
- }
- }
- new_variables.push_back(epistasis_result);
- ++i;
- }
- h += v;
- }
- return new_variables;
-}
-
-static double ruggedness1(double y, int number_of_variables) {
- double ruggedness_y, s;
- s = (double)number_of_variables;
- if(y == s) {
- ruggedness_y = ceil(y/2.0) + 1.0;
- } else if (y < s && number_of_variables % 2 == 0) {
- ruggedness_y = floor(y / 2.0) + 1.0;
- } else if (y < s && number_of_variables % 2 != 0) {
- ruggedness_y = ceil(y / 2.0) + 1.0;
- } else {
- ruggedness_y = y;
- assert(y <= s);
- }
- return ruggedness_y;
-}
-
-static double ruggedness2(double y, int number_of_variables) {
- double ruggedness_y;
- int tempy=(int)(y+0.5);
- if (tempy == number_of_variables) {
- ruggedness_y = y;
- } else if (tempy < number_of_variables && tempy % 2 == 0 && number_of_variables % 2 == 0) {
- ruggedness_y = y + 1.0;
- } else if (tempy < number_of_variables && tempy % 2 == 0 && number_of_variables % 2 != 0) {
- ruggedness_y = (y - 1.0) > 0 ? (y - 1.0) : 0;
- } else if (tempy < number_of_variables && tempy % 2 != 0 && number_of_variables % 2 == 0) {
- ruggedness_y = (y - 1.0) > 0 ? (y - 1.0) : 0;
- } else if (tempy < number_of_variables && tempy % 2 != 0 && number_of_variables % 2 != 0) {
- ruggedness_y = y + 1.0;
- } else {
- ruggedness_y = y;
- assert(tempy <= number_of_variables);
- }
- return ruggedness_y;
-}
-
-static std::vector<double> ruggedness3(int number_of_variables) {
- std::vector<double> ruggedness_fitness(number_of_variables+1,0.0);
-
- for (int j = 1; j <= number_of_variables/5; ++j) {
- for (int k = 0; k < 5; ++k) {
- ruggedness_fitness[number_of_variables-5*j+k] = (double)(number_of_variables - 5 * j + (4-k));
- }
- }
- for (int k = 0; k < number_of_variables - number_of_variables / 5 * 5; ++k) {
- ruggedness_fitness[k] = (double)(number_of_variables - number_of_variables / 5 * 5 - 1 - k);
- }
- ruggedness_fitness[number_of_variables] = (double)number_of_variables;
- return ruggedness_fitness;
-}
-
-
-static void layer_neutrality_compute(const std::vector<int> &xIn, std::vector<int> &xOut, const int mu){
- int thresholdFor1 = (mu >> 1) + (mu & 1);
- int i,j,ones,flush;
- int temp;
- int dim = xIn.size();
- int temp_dim = dim / mu;
- if (xOut.size() != temp_dim) {
- xOut.resize(temp_dim);
- }
- i=0;j=0; ones=0; flush=mu;
- while ((i < dim) && (j<temp_dim)){
- if (xIn[i]==1) {
- ones+=1;
- }
- i+=1;
- if (i >= flush) {
- flush+=mu;
- if (ones >= thresholdFor1) {
- temp=1;
- } else {
- temp=0;
- }
- xOut[j]=temp;
- j+=1;
- ones=0;
- }
- }
-}
-
-static void base_epistasis(const std::vector<int> &xIn, const int start, const int nu, std::vector<int> &xOut) {
- const int end = (start + nu) - 1;
- const int flip = xIn[start];
- int result;
- int skip = start;
- for (int i = end ; i >= start; --i) {
- result = flip;
- for (int j = end; j > start; --j) {
- if (j != skip) {
- result ^= (xIn[j]);
- }
- }
- xOut[i] = result;
- if ((--skip) < start) {
- skip = end;
- }
- }
-}
-
-static void epistasis_compute(const std::vector<int> &xIn, std::vector<int> &xOut, const int nu) {
- const int length = xIn.size();
- const int end = length - nu;
- int i;
- for (i = 0; i <= end; i += nu) {
- base_epistasis(xIn, i, nu, xOut);
- }
- if (i < length) {
- base_epistasis(xIn, i, length - i, xOut);
- }
- }
-
-static void layer_epistasis_compute(const std::vector<int> &x, std::vector<int> &epistasis_x, const int block_size) {
- epistasis_compute(x,epistasis_x,block_size);
-}
-
-static int max_gamma(int q) {
- return (int)((q * (q - 1))>>1);
-}
-
-static std::vector<int> ruggedness_raw(int gamma, int q){
- int i,j,k,start,max;
- int upper;
- int t;
-/*fprintf(stderr,"gamma : %d\n",gamma);
-fprintf(stderr,"q : %d\n",q);*/
- std::vector<int> r(q+1,0);
- r[0]=0;
- max = max_gamma(q);
- if (gamma <= 0){
- start = 0;
- } else {
- start = q - 1 - (int) (0.5 + sqrt(0.25 + ((max - gamma)<<1)));
- }
-/*
-fprintf(stderr,"part1 : %d\n",((int)(0.25 + ((max - gamma)<<1))));
-fprintf(stderr,"part2 : %f\n",(sqrt((int)(0.25 + ((max - gamma)<<1)))));
-fprintf(stderr,"part3 : %d\n",(int)(0.5 + sqrt((int)(0.25 + ((max - gamma)<<1)))));*/
-/*fprintf(stderr,"start %d\n",start);*/
-
-/*for(i=0;i<q;i++){fprintf(stderr,"%d.",r[i]);}fprintf(stderr,"\n");*/
- k = 0;
- for (j = 1; j <= start; j++) {
- if ((j & 1) != 0){ r[j] = (q - k);}
- else{k=k+1; r[j] = k;}
- }
-/*for(i=0;i<q;i++){fprintf(stderr,"%d.",r[i]);}fprintf(stderr,"\n");*/
- for (; j <= q; j++) {
- k=k+1;
- if((start & 1) != 0){r[j] = (q - k);}
- else{r[j]=k;}
- }
- upper = ((gamma - max) +(((q - start - 1) * (q - start)) >> 1));
- j--;
-/*for(i=0;i<q;i++){fprintf(stderr,"%d.",r[i]);}fprintf(stderr,"\n");*/
-/*fprintf(stderr,"upper %d\n",upper);*/
- for (i = 1; i <= upper; i++) {
- j=j-1;
-
- if(j>0){
- t = r[j];
- r[j] = r[q];
- r[q] = t;}
- }
-
-/*fprintf(stderr,"r\n");
-for(i=0;i<=q;i++){fprintf(stderr,"%d %d\n",i, r[i]);}*/
- std::vector<int> r2(q+1,0);
- for(i=0;i<=q;i++){r2[i]=q-r[q-i];}
-/*fprintf(stderr,"r2\n");
-for(i=0;i<=q;i++){fprintf(stderr,"%d %d\n",i, r2[i]);}*/
- return r2;
- }
-
-static int ruggedness_translate(int gamma, int q) {
- int j, k, max, g, lastUpper;
-
- if (gamma <= 0) {
- return 0;
- }
- g = gamma;
- max = max_gamma(q);
- lastUpper = ((q >> 1) * ((q + 1) >> 1));
- if (g <= lastUpper) {
- j = abs(((q + 2) * 0.5)-sqrt((((q * q) * 0.25) + 1) - g));
-
- k = ((g - ((q + 2) * j)) + (j * j) + q);
- return ((k + 1 + ((((q + 2) * j) - (j * j) - q - 1) << 1))- (j - 1));
- }
-
- j = abs((((q % 2) + 1) * 0.5)
- + sqrt((((1 - (q % 2)) * 0.25) + g) - 1 - lastUpper));
-
- k = g - (((j - (q % 2)) * (j - 1)) + 1 + lastUpper);
-
- return (max - k - ((2 * j * j) - j) - ((q % 2) * ((-2 * j) + 1)));
- }
-
-
-
-static double layer_compute_ruggedness(const double y, size_t dimension,int gamma){
- double result;
- std::vector<int> r=ruggedness_raw(ruggedness_translate(gamma, dimension), dimension);
- result=r[ (int)y ];
-
- /*for(i=0;i<dimension+1;i++){fprintf(stderr,"%d ",r[i]);}fprintf(stderr,"\n");
-
- fprintf(stderr,"dim %d val %f, result %f\n",dimension,y,result);*/
- assert(result <= (double) dimension);
- return result;
-}
-
-#endif
-
↰ Return to documentation for file (src/Suites/IOHprofiler_BBOB_suite.hpp
)
#ifndef _IOHPROFILER_BBOB_SUITE_HPP
-#define _IOHPROFILER_BBOB_SUITE_HPP
-
-#include "f_attractive_sector.hpp"
-#include "f_bent_cigar.hpp"
-#include "f_bueche_rastrigin.hpp"
-#include "f_different_powers.hpp"
-#include "f_discus.hpp"
-#include "f_ellipsoid.hpp"
-#include "f_ellipsoid_rotated.hpp"
-#include "f_gallagher21.hpp"
-#include "f_gallagher101.hpp"
-#include "f_griewank_rosenbrock.hpp"
-#include "f_katsuura.hpp"
-#include "f_linear_slope.hpp"
-#include "f_lunacek_bi_rastrigin.hpp"
-#include "f_rastrigin.hpp"
-#include "f_rastrigin_rotated.hpp"
-#include "f_rosenbrock.hpp"
-#include "f_rosenbrock_rotated.hpp"
-#include "f_schaffers10.hpp"
-#include "f_schaffers1000.hpp"
-#include "f_schwefel.hpp"
-#include "f_sharp_ridge.hpp"
-#include "f_sphere.hpp"
-#include "f_step_ellipsoid.hpp"
-#include "f_weierstrass.hpp"
-
-#include "IOHprofiler_suite.h"
-
-class BBOB_suite : public IOHprofiler_suite<double> {
-public:
- BBOB_suite() {
- std::vector<int> problem_id;
- std::vector<int> instance_id;
- std::vector<int> dimension;
- for (int i = 0; i < 24; ++i) {
- problem_id.push_back(i+1);
- }
- for (int i = 0; i < 1; ++i) {
- instance_id.push_back(i+1);
- }
- dimension.push_back(5);
-
- IOHprofiler_set_suite_problem_id(problem_id);
- IOHprofiler_set_suite_instance_id(instance_id);
- IOHprofiler_set_suite_dimension(dimension);
- IOHprofiler_set_suite_name("BBOB");
- registerProblem();
- };
-
- BBOB_suite(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension) {
- for (int i = 0; i < problem_id.size(); ++i) {
- if (problem_id[i] < 0 || problem_id[i] > 24) {
- IOH_error("problem_id " + std::to_string(problem_id[i]) + " is not in BBOB_suite");
- }
- }
-
- for (int i = 0; i < instance_id.size(); ++i) {
- if (instance_id[i] < 0 || instance_id[i] > 100) {
- IOH_error("instance_id " + std::to_string(instance_id[i]) + " is not in BBOB_suite");
- }
- }
-
- for (int i = 0; i < dimension.size(); ++i) {
- if (dimension[i] < 0 || dimension[i] > 100) {
- IOH_error("dimension " + std::to_string(dimension[i]) + " is not in BBOB_suite");
- }
- }
-
- IOHprofiler_set_suite_problem_id(problem_id);
- IOHprofiler_set_suite_instance_id(instance_id);
- IOHprofiler_set_suite_dimension(dimension);
- IOHprofiler_set_suite_name("BBOB");
- registerProblem();
- }
-
- void registerProblem() {
- registerInFactory<IOHprofiler_problem<double>,Sphere> regSphere("Sphere");
- registerInFactory<IOHprofiler_problem<double>,Ellipsoid> regEllipsoid("Ellipsoid");
- registerInFactory<IOHprofiler_problem<double>,Rastrigin> regRastrigin("Rastrigin");
- registerInFactory<IOHprofiler_problem<double>,Bueche_Rastrigin> regBueche_Rastrigin("Bueche_Rastrigin");
- registerInFactory<IOHprofiler_problem<double>,Linear_Slope> regLinear_Slope("Linear_Slope");
- registerInFactory<IOHprofiler_problem<double>,Attractive_Sector> regAttractive_Sector("Attractive_Sector");
- registerInFactory<IOHprofiler_problem<double>,Step_Ellipsoid> regStep_Ellipsoid("Step_Ellipsoid");
- registerInFactory<IOHprofiler_problem<double>,Rosenbrock> regRosenbrock("Rosenbrock");
- registerInFactory<IOHprofiler_problem<double>,Rosenbrock_Rotated> regRosenbrock_Rotated("Rosenbrock_Rotated");
- registerInFactory<IOHprofiler_problem<double>,Ellipsoid_Rotated> regEllipsoid_Rotated("Ellipsoid_Rotated");
- registerInFactory<IOHprofiler_problem<double>,Discus> regDiscus("Discus");
- registerInFactory<IOHprofiler_problem<double>,Bent_Cigar> regBent_Ciger("Bent_Cigar");
- registerInFactory<IOHprofiler_problem<double>,Sharp_Ridge> regSharp_Ridge("Sharp_Ridge");
- registerInFactory<IOHprofiler_problem<double>,Different_Powers> regDifferent_Powers("Different_Powers");
- registerInFactory<IOHprofiler_problem<double>,Rastrigin_Rotated> regRastrigin_Rotated("Rastrigin_Rotated");
- registerInFactory<IOHprofiler_problem<double>,Weierstrass> regWeierstrass("Weierstrass");
- registerInFactory<IOHprofiler_problem<double>,Schaffers10> regSchaffers10("Schaffers10");
- registerInFactory<IOHprofiler_problem<double>,Schaffers1000> regSchaffers1000("Schaffers1000");
- registerInFactory<IOHprofiler_problem<double>,Griewank_RosenBrock> regGriewank_RosenBrock("Griewank_RosenBrock");
- registerInFactory<IOHprofiler_problem<double>,Schwefel> regSchwefel("Schwefel");
- registerInFactory<IOHprofiler_problem<double>,Gallagher101> regGallagher101("Gallagher101");
- registerInFactory<IOHprofiler_problem<double>,Gallagher21> regGallagher21("Gallagher21");
- registerInFactory<IOHprofiler_problem<double>,Katsuura> regKatsuura("Katsuura");
- registerInFactory<IOHprofiler_problem<double>,Lunacek_Bi_Rastrigin> regLunacek_Bi_Rastrigin("Lunacek_Bi_Rastrigin");
-
-
- mapIDTOName(1,"Sphere");
- mapIDTOName(2,"Ellipsoid");
- mapIDTOName(3,"Rastrigin");
- mapIDTOName(4,"Bueche_Rastrigin");
- mapIDTOName(5,"Linear_Slope");
- mapIDTOName(6,"Attractive_Sector");
- mapIDTOName(7,"Step_Ellipsoid");
- mapIDTOName(8,"Rosenbrock");
- mapIDTOName(9,"Rosenbrock_Rotated");
- mapIDTOName(10,"Ellipsoid_Rotated");
- mapIDTOName(11,"Discus");
- mapIDTOName(12,"Bent_Cigar");
- mapIDTOName(13,"Sharp_Ridge");
- mapIDTOName(14,"Different_Powers");
- mapIDTOName(15,"Rastrigin_Rotated");
- mapIDTOName(16,"Weierstrass");
- mapIDTOName(17,"Schaffers10");
- mapIDTOName(18,"Schaffers1000");
- mapIDTOName(19,"Griewank_RosenBrock");
- mapIDTOName(20,"Schwefel");
- mapIDTOName(21,"Gallagher101");
- mapIDTOName(22,"Gallagher21");
- mapIDTOName(23,"Katsuura");
- mapIDTOName(24,"Lunacek_Bi_Rastrigin");
- };
-
- static BBOB_suite * createInstance() {
- return new BBOB_suite();
- };
-
- static BBOB_suite * createInstance(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension) {
- return new BBOB_suite(problem_id, instance_id, dimension);
- };
-};
-
-#endif
-
↰ Return to documentation for file (src/Suites/IOHprofiler_PBO_suite.hpp
)
#ifndef _IOHPROFILER_PBO_SUITE_HPP
-#define _IOHPROFILER_PBO_SUITE_HPP
-
-#include "f_one_max.hpp"
-#include "f_leading_ones.hpp"
-#include "f_linear.hpp"
-#include "f_one_max_dummy1.hpp"
-#include "f_one_max_dummy2.hpp"
-#include "f_one_max_neutrality.hpp"
-#include "f_one_max_epistasis.hpp"
-#include "f_one_max_ruggedness1.hpp"
-#include "f_one_max_ruggedness2.hpp"
-#include "f_one_max_ruggedness3.hpp"
-#include "f_leading_ones_dummy1.hpp"
-#include "f_leading_ones_dummy2.hpp"
-#include "f_leading_ones_neutrality.hpp"
-#include "f_leading_ones_epistasis.hpp"
-#include "f_leading_ones_ruggedness1.hpp"
-#include "f_leading_ones_ruggedness2.hpp"
-#include "f_leading_ones_ruggedness3.hpp"
-#include "f_labs.hpp"
-#include "f_ising_ring.hpp"
-#include "f_ising_torus.hpp"
-#include "f_ising_triangular.hpp"
-#include "f_MIS.hpp"
-#include "f_N_queens.hpp"
-
-#include "IOHprofiler_suite.h"
-
-class PBO_suite : public IOHprofiler_suite<int> {
-public:
- PBO_suite() {
- std::vector<int> problem_id;
- std::vector<int> instance_id;
- std::vector<int> dimension;
- for (int i = 0; i < 23; ++i) {
- problem_id.push_back(i+1);
- }
- for (int i = 0; i < 1; ++i) {
- instance_id.push_back(i+1);
- }
- dimension.push_back(100);
-
- IOHprofiler_set_suite_problem_id(problem_id);
- IOHprofiler_set_suite_instance_id(instance_id);
- IOHprofiler_set_suite_dimension(dimension);
- IOHprofiler_set_suite_name("PBO");
- registerProblem();
- }
-
- PBO_suite(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension) {
- for (int i = 0; i < problem_id.size(); ++i) {
- if (problem_id[i] < 0 || problem_id[i] > 23) {
- IOH_error("problem_id " + std::to_string(problem_id[i]) + " is not in PBO_suite");
- }
- }
-
- for (int i = 0; i < instance_id.size(); ++i) {
- if (instance_id[i] < 0 || instance_id[i] > 100) {
- IOH_error("instance_id " + std::to_string(instance_id[i]) + " is not in PBO_suite");
- }
- }
-
- for (int i = 0; i < dimension.size(); ++i) {
- if (dimension[i] < 0 || dimension[i] > 20000) {
- IOH_error("dimension " + std::to_string(dimension[i]) + " is not in PBO_suite");
- }
- }
-
- IOHprofiler_set_suite_problem_id(problem_id);
- IOHprofiler_set_suite_instance_id(instance_id);
- IOHprofiler_set_suite_dimension(dimension);
- IOHprofiler_set_suite_name("PBO");
- registerProblem();
- }
-
- void registerProblem() {
- registerInFactory<IOHprofiler_problem<int>,OneMax> regOneMax("OneMax");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Dummy1> regOneMax_Dummy1("OneMax_Dummy1");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Dummy2> regOneMax_Dummy2("OneMax_Dummy2");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Epistasis> regOneMax_Epistasis("OneMax_Epistasis");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Neutrality> regOneMax_Neutrality("OneMax_Neutrality");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness1> regOneMax_Ruggedness1("OneMax_Ruggedness1");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness2> regOneMax_Ruggedness2("OneMax_Ruggedness2");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness3> regOneMax_Ruggedness3("OneMax_Ruggedness3");
-
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes> regLeadingOnes("LeadingOnes");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Dummy1> regLeadingOnes_Dummy1("LeadingOnes_Dummy1");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Dummy2> regLeadingOnes_Dummy2("LeadingOnes_Dummy2");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Epistasis> regLeadingOnes_Epistasis("LeadingOnes_Epistasis");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Neutrality> regLeadingOnes_Neutrality("LeadingOnes_Neutrality");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness1> regLeadingOnes_Ruggedness1("LeadingOnes_Ruggedness1");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness2> regLeadingOnes_Ruggedness2("LeadingOnes_Ruggedness2");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness3> regLeadingOnes_Ruggedness3("LeadingOnes_Ruggedness3");
-
- registerInFactory<IOHprofiler_problem<int>,Linear> regLinear("Linear");
- registerInFactory<IOHprofiler_problem<int>,MIS> regMIS("MIS");
- registerInFactory<IOHprofiler_problem<int>,LABS> regLABS("LABS");
- registerInFactory<IOHprofiler_problem<int>,NQueens> regNQueens("NQueens");
- registerInFactory<IOHprofiler_problem<int>,Ising_Ring> regIsing_Ring("Ising_Ring");
- registerInFactory<IOHprofiler_problem<int>,Ising_Torus> regIsing_Torus("Ising_Torus");
- registerInFactory<IOHprofiler_problem<int>,Ising_Triangular> regIsing_Triangular("Ising_Triangular");
-
- mapIDTOName(1,"OneMax");
- mapIDTOName(2,"LeadingOnes");
- mapIDTOName(3,"Linear");
- mapIDTOName(4,"OneMax_Dummy1");
- mapIDTOName(5,"OneMax_Dummy2");
- mapIDTOName(6,"OneMax_Neutrality");
- mapIDTOName(7,"OneMax_Epistasis");
- mapIDTOName(8,"OneMax_Ruggedness1");
- mapIDTOName(9,"OneMax_Ruggedness2");
- mapIDTOName(10,"OneMax_Ruggedness3");
- mapIDTOName(11,"LeadingOnes_Dummy1");
- mapIDTOName(12,"LeadingOnes_Dummy2");
- mapIDTOName(13,"LeadingOnes_Neutrality");
- mapIDTOName(14,"LeadingOnes_Epistasis");
- mapIDTOName(15,"LeadingOnes_Ruggedness1");
- mapIDTOName(16,"LeadingOnes_Ruggedness2");
- mapIDTOName(17,"LeadingOnes_Ruggedness3");
- mapIDTOName(18,"LABS");
- mapIDTOName(22,"MIS");
- mapIDTOName(19,"Ising_Ring");
- mapIDTOName(20,"Ising_Torus");
- mapIDTOName(21,"Ising_Triangular");
- mapIDTOName(23,"NQueens");
- }
-
- static PBO_suite * createInstance() {
- return new PBO_suite();
- }
-
- static PBO_suite * createInstance(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension) {
- return new PBO_suite(problem_id, instance_id, dimension);
- }
-};
-#endif //_IOHPROFILER_PBO_SUITE_H
-
↰ Return to documentation for file (src/Suites/IOHprofiler_all_suites.hpp
)
#ifndef _IOHPROFILER_ALL_SUITES_HPP
-#define _IOHPROFILER_ALL_SUITES_HPP
-
-#include "IOHprofiler_PBO_suite.hpp"
-#include "IOHprofiler_BBOB_suite.hpp"
-
-#include "IOHprofiler_class_generator.h"
-
-static registerInFactory<IOHprofiler_suite<int>,PBO_suite> regPBO("PBO");
-static registerInFactory<IOHprofiler_suite<double>,BBOB_suite> regBBOB("BBOB");
-
-#endif //_IOHPROFILER_ALL_SUITES_HPP
-
↰ Return to documentation for file (src/Suites/README.md
)
## Suites of IOHexperimenter
-
-[IOHprofiler_suite](/src/Template/IOHprofiler_suite.hpp) is the base `class` of suites of __IOHexperimenter__. The property variables of problems include:
-* `problem_id`, a vector containing the ids of the problems to be tested.
-* `instance_id`, a vector containing the ids of the instances of the problems. Intance ids specify which transformations will be applied to the problem. The original problem has instance_id 1; <i>scale</i> and <i>shift</i> are applied on objectives for instance_id in [2,100]; <i>XOR</i> will be applied on variables for instance_id in [2,50], and <i>sigma</i> function is applied on variables for instance_id in [51,100].
-* `dimension`, a vector containing the dimensions of the problems.
-* `number_of_problems`
-* `number_of_instances`
-* `number_of_dimensions`
-
-
-The following functions for experiments are available to a suite:
-* <i>get_next_problem</i>, return a shared point of problems of the suite in order.
-* <i>addCSVLogger(logger)</i>, assigns a __IOHprofiler_csv_logger__ class to the suite.
-* <i>IOHprofiler_set_suite_problem_id(problem_id)</i>
-* <i>IOHprofiler_set_suite_instance_id(instance_id)</i>
-* <i>IOHprofiler_set_suite_dimension(dimension)</i>
-* <i>mapIDTOName</i>, is to match problem id and name.
-
-### Creating a suite
-__IOHexperimenter__ provides a __PBO_suite__ for pseudo Boolean problems, but it is also easy to add your own suite. Creating a suite is done by registering problems in the suite and assigning ids to them.
-
-Taking the implementation of __PBO_suite__ as an example, <i>constructor functions</i> are as below. In the constructor functions, the range of allowed `problem_id`, `instance_id` and `dimension` should be identified. In addition, <i>registerProblem()</i> must be included in the constructor functions.
-```cpp
-PBO_suite() {
- std::vector<int> problem_id;
- std::vector<int> instance_id;
- std::vector<int> dimension;
- for (int i = 0; i < 23; ++i) {
- problem_id.push_back(i+1);
- }
- for (int i = 0; i < 1; ++i) {
- instance_id.push_back(i+1);
- }
- dimension.push_back(100);
-
- IOHprofiler_set_suite_problem_id(problem_id);
- IOHprofiler_set_suite_instance_id(instance_id);
- IOHprofiler_set_suite_dimension(dimension);
- IOHprofiler_set_suite_name("PBO");
- registerProblem();
-};
-
-PBO_suite(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension) {
- for (int i = 0; i < problem_id.size(); ++i) {
- if (problem_id[i] < 0 || problem_id[i] > 23) {
- IOH_error("problem_id " + std::to_string(problem_id[i]) + " is not in PBO_suite");
- }
- }
-
- for (int i = 0; i < instance_id.size(); ++i) {
- if (instance_id[i] < 0 || instance_id[i] > 100) {
- IOH_error("instance_id " + std::to_string(instance_id[i]) + " is not in PBO_suite");
- }
- }
-
- for (int i = 0; i < dimension.size(); ++i) {
- if (dimension[i] < 0 || dimension[i] > 20000) {
- IOH_error("dimension " + std::to_string(dimension[i]) + " is not in PBO_suite");
- }
- }
-
- IOHprofiler_set_suite_problem_id(problem_id);
- IOHprofiler_set_suite_instance_id(instance_id);
- IOHprofiler_set_suite_dimension(dimension);
- IOHprofiler_set_suite_name("PBO");
- registerProblem();
-}
-```
-
-<i>registerProblem()</i> is a virtual function of the base `IOHprofiler_suite` class. When you create a suite, it __must__ be implemented. Problems to be included in the suite can be registered by name. Afterwards, problem id and name should be mapped through <i>mapIDTOName></i> function, which enables the suite to recognize problems by problem id. Following is the <i>registerProblem()</i> function of __PBO_suite__.
-```cpp
- registerInFactory<IOHprofiler_problem<int>,OneMax> regOneMax("OneMax");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Dummy1> regOneMax_Dummy1("OneMax_Dummy1");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Dummy2> regOneMax_Dummy2("OneMax_Dummy2");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Epistasis> regOneMax_Epistasis("OneMax_Epistasis");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Neutrality> regOneMax_Neutrality("OneMax_Neutrality");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness1> regOneMax_Ruggedness1("OneMax_Ruggedness1");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness2> regOneMax_Ruggedness2("OneMax_Ruggedness2");
- registerInFactory<IOHprofiler_problem<int>,OneMax_Ruggedness3> regOneMax_Ruggedness3("OneMax_Ruggedness3");
-
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes> regLeadingOnes("LeadingOnes");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Dummy1> regLeadingOnes_Dummy1("LeadingOnes_Dummy1");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Dummy2> regLeadingOnes_Dummy2("LeadingOnes_Dummy2");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Epistasis> regLeadingOnes_Epistasis("LeadingOnes_Epistasis");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Neutrality> regLeadingOnes_Neutrality("LeadingOnes_Neutrality");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness1> regLeadingOnes_Ruggedness1("LeadingOnes_Ruggedness1");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness2> regLeadingOnes_Ruggedness2("LeadingOnes_Ruggedness2");
- registerInFactory<IOHprofiler_problem<int>,LeadingOnes_Ruggedness3> regLeadingOnes_Ruggedness3("LeadingOnes_Ruggedness3");
-
- registerInFactory<IOHprofiler_problem<int>,Linear> regLinear("Linear");
- registerInFactory<IOHprofiler_problem<int>,MIS> regMIS("MIS");
- registerInFactory<IOHprofiler_problem<int>,LABS> regLABS("LABS");
- registerInFactory<IOHprofiler_problem<int>,NQueens> regNQueens("NQueens");
- registerInFactory<IOHprofiler_problem<int>,Ising_1D> regIsing_1D("Ising_1D");
- registerInFactory<IOHprofiler_problem<int>,Ising_2D> regIsing_2D("Ising_2D");
- registerInFactory<IOHprofiler_problem<int>,Ising_Triangle> regIsing_Triangle("Ising_Triangle");
-
- mapIDTOName(1,"OneMax");
- mapIDTOName(2,"LeadingOnes");
- mapIDTOName(3,"Linear");
- mapIDTOName(4,"OneMax_Dummy1");
- mapIDTOName(5,"OneMax_Dummy2");
- mapIDTOName(6,"OneMax_Neutrality");
- mapIDTOName(7,"OneMax_Epistasis");
- mapIDTOName(8,"OneMax_Ruggedness1");
- mapIDTOName(9,"OneMax_Ruggedness2");
- mapIDTOName(10,"OneMax_Ruggedness3");
- mapIDTOName(11,"LeadingOnes_Dummy1");
- mapIDTOName(12,"LeadingOnes_Dummy2");
- mapIDTOName(13,"LeadingOnes_Neutrality");
- mapIDTOName(14,"LeadingOnes_Epistasis");
- mapIDTOName(15,"LeadingOnes_Ruggedness1");
- mapIDTOName(16,"LeadingOnes_Ruggedness2");
- mapIDTOName(17,"LeadingOnes_Ruggedness3");
- mapIDTOName(18,"LABS");
- mapIDTOName(22,"MIS");
- mapIDTOName(19,"Ising_1D");
- mapIDTOName(20,"Ising_2D");
- mapIDTOName(21,"Ising_Triangle");
- mapIDTOName(23,"NQueens");
-```
-
-If you want to register your suite called `suite_name`, please add following codes and modify names.
-```cpp
-static PBO_suite * createInstance() {
- return new PBO_suite();
-};
-
-static PBO_suite * createInstance(std::vector<int> problem_id, std::vector<int> instance_id, std::vector<int> dimension) {
- return new PBO_suite(problem_id, instance_id, dimension);
-};
-```
-To register the suite, you can use the <i>genericGenerator</i> in [IOHprofiler_class_generator](/src/Template/). For example, you can use the following statement to register and create __PBO_suite__ ,
-```cpp
-// Register
-static registerInFactory<IOHprofiler_suite<int>,PBO_suite> regPBO("PBO");
-// Create
-std::shared_ptr<IOHprofiler_suite<InputType>> suite = genericGenerator<IOHprofiler_suite<int>>::instance().create("PBO");
-);
-```
-
↰ Return to documentation for file (src/Template/Experiments/IOHprofiler_configuration.cpp
)
#include "IOHprofiler_configuration.h"
-
-int IOHprofiler_configuration::set_Dict(_Dict &dict, const std::string section, const std::string key, const std::string value) {
- size_t i ;
-
- if (dict.n > 0) {
- for (i = 0; i < dict.n; ++i) {
- if (key.length() == 0) {
- continue;
- }
- if (value.length() == 0) {
- continue;
- }
- if (dict.key[i].length() == 0) {
- continue;
- }
- if (dict.section[i].length() == 0) {
- continue;
- }
- if ((key == dict.key[i]) && (section==dict.section[i])) {
- if (dict.value[i].length() != 0) {
- std::cout << "Multi setting of key(" << key << ") or section(" << section << ")\n";
- return -1;
- }
- }
- }
- }
- dict.section.push_back(strstrip(section));
- dict.key.push_back(strstrip(key));
- dict.value.push_back(strstrip(value));
- dict.n += 1;
- return 0 ;
-}
-
-std::string IOHprofiler_configuration::get_Dict_String(const _Dict dict, const std::string section, const std::string key){
- size_t i;
- if (key.length() == 0) {
- std::cout << "EMPTY KEY INPUT.\n";
- }
- if (section.length() == 0) {
- std::cout << "EMPTY SECTION INPUT.\n";
- }
- for (i = 0; i < dict.n; ++i) {
- if (dict.key[i].length() == 0) {
- continue;
- }
- if (dict.section[i].length() == 0) {
- continue;
- }
- if ((key == dict.key[i]) && (section == dict.section[i])) {
- return dict.value[i];
- }
- }
- std::cout << "Can not find the corresponding configuration for key: " << key << " in section : "<< section << "\n";
- return NULL;
-}
-
-std::vector<int> IOHprofiler_configuration::get_Dict_int_vector(const _Dict dict, const std::string section, const std::string key, const int _min, const int _max){
- size_t i;
- std::vector<int> result;
- if (key.length() == 0) {
- std::cout << "EMPTY KEY INPUT.\n";
- }
- if (section.length() == 0){
- std::cout << "EMPTY SECTION INPUT.\n";
- }
- for (i = 0; i < dict.n; ++i) {
- if (dict.key[i].length() == 0) {
- continue;
- }
- if (dict.section[i].length() == 0) {
- continue;
- }
- if (key == dict.key[i] && section == dict.section[i]) {
- result = get_int_vector_parse_string(dict.value[i],_min,_max);
- return result;
- }
- }
- std::cout << "Can not find the corresponding configuration for key: "<< key << " in section : "<< section << "\n";
- return result;
-}
-
-int IOHprofiler_configuration::get_Dict_Int(const _Dict dict, const std::string section, const std::string key){
- int result;
- std::string str;
- str = get_Dict_String(dict, section, key);
- result = std::stoi(str);
- return result;
-}
-
-bool IOHprofiler_configuration::get_Dict_bool(const _Dict dict, const std::string section, const std::string key){
- bool result = false;
- std::string str;
- str = get_Dict_String(dict, section, key);
- transform(str.begin(), str.end(), str.begin(), ::tolower);
- if (str == "true") {
- result = true;
- }
- return result;
-}
-
-linecontent IOHprofiler_configuration::add_Line(const std::string input_line, std::string §ion, std::string &key, std::string &value){
- linecontent content;
- std::string line;
- size_t len;
- char tempkey[MAXKEYNUMBER];
- char tempvalue[MAXKEYNUMBER];
- char tempsection[MAXKEYNUMBER];
-
- line = strstrip(input_line);
- len = line.length();
-
- if (len < 0) {
- content = EMPTY;
- } else if (line[0] == '#' || line[0] == ';') {
- content = COMMENT;
- } else if(line[0] == '[' && line[len-1] == ']') {
- sscanf(line.c_str(), "[%[^]]",tempsection);
- section = tempsection;
- content = SECTION;
- } else if(sscanf (line.c_str(), "%[^=] = \"%[^\"]", tempkey, tempvalue) == 2 || sscanf (line.c_str(), "%[^=] = '%[^\']", tempkey, tempvalue) == 2) {
- value = tempvalue;
- key = tempkey;
- content = VALUE;
- } else if(sscanf (line.c_str(), "%[^=] = %[^;#]", tempkey, tempvalue) == 2) {
- value = tempvalue;
- key = tempkey;
- content = VALUE;
- } else {
- content = CON_ERROR;
- }
- return content;
-}
-
-_Dict IOHprofiler_configuration::load(const std::string filename) {
- std::ifstream fp(filename.c_str());
-
- std::string line;
- std::string section;
- std::string key;
- std::string value;
-
- int len;
- _Dict dict;
- linecontent lc;
-
- if (!fp.is_open()) {
- std::cout << "Cannot open file " << filename << std::endl;
- }
-
- while (!fp.eof()) {
- getline(fp,line);
- len = line.length() -1;
- if (len <= 0) {
- continue;
- }
-
- lc = add_Line(line,section,key,value);
- switch(lc) {
- case EMPTY:
- break;
- case COMMENT:
- break;
- case SECTION:
- strstrip(section);
- this->set_Dict(dict,section,key,value);
- break;
- case VALUE:
- strstrip(key);
- this->set_Dict(dict,section,key,value);
- break;
- case CON_ERROR:
- std::cout << "There is an error for line: \" "<< line << "\"";
- break;
- }
- if (lc == CON_ERROR) {
- break;
- }
- }
- fp.close();
- return dict;
-}
-
-void IOHprofiler_configuration::readcfg(std::string filename){
- _Dict dict;
- dict = load(filename);
- suite_name = get_Dict_String(dict,"suite","suite_name");
- if (suite_name == "BBOB") {
- max_number_of_problem = 24;
- max_dimension = 100;
- } else if (suite_name == "PBO") {
- max_dimension = 20000;
- max_number_of_problem = 23;
- }
- problem_id = get_Dict_int_vector(dict,"suite","problem_id",1,max_number_of_problem);
- instance_id = get_Dict_int_vector(dict,"suite","instance_id",1,100);
- dimension = get_Dict_int_vector(dict,"suite","dimension",1,max_dimension);
-
- output_directory = get_Dict_String(dict,"logger","output_directory");
- result_folder = get_Dict_String(dict,"logger","result_folder");
- algorithm_info = get_Dict_String(dict,"logger","algorithm_info");
- algorithm_name = get_Dict_String(dict,"logger","algorithm_name");
-
- complete_triggers = get_Dict_bool(dict,"observer","complete_triggers");
- update_triggers = get_Dict_bool(dict,"observer","update_triggers");
- base_evaluation_triggers = get_Dict_int_vector(dict,"observer","base_evaluation_triggers",0,10);
- number_target_triggers = get_Dict_Int(dict,"observer","number_target_triggers");
- number_interval_triggers = get_Dict_Int(dict,"observer","number_interval_triggers");
- }
-
-std::string IOHprofiler_configuration::get_suite_name() {
- return this->suite_name;
-}
-
-std::vector<int> IOHprofiler_configuration::get_problem_id() {
- return this->problem_id;
-}
-
-std::vector<int> IOHprofiler_configuration::get_instance_id() {
- return this->instance_id;
-}
-
-std::vector<int> IOHprofiler_configuration::get_dimension() {
- return this->dimension;
-}
-
-std::string IOHprofiler_configuration::get_output_directory() {
- return this->output_directory;
-}
-
-std::string IOHprofiler_configuration::get_result_folder() {
- return this->result_folder;
-}
-
-std::string IOHprofiler_configuration::get_algorithm_info() {
- return this->algorithm_info;
-}
-
-std::string IOHprofiler_configuration::get_algorithm_name() {
- return this->algorithm_name;
-}
-
-bool IOHprofiler_configuration::get_complete_triggers() {
- return this->complete_triggers;
-}
-
-bool IOHprofiler_configuration::get_update_triggers() {
- return this->update_triggers;
-}
-
-std::vector<int> IOHprofiler_configuration::get_base_evaluation_triggers() {
- return this->base_evaluation_triggers;
-}
-
-int IOHprofiler_configuration::get_number_target_triggers() {
- return this->number_target_triggers;
-}
-
-int IOHprofiler_configuration::get_number_interval_triggers() {
- return this->number_interval_triggers;
-}
-
↰ Return to documentation for file (src/Template/Experiments/IOHprofiler_configuration.h
)
#ifndef _IOHPROFILER_CONFIGURATION_H
-#define _IOHPROFILER_CONFIGURATION_H
-
-#include "IOHprofiler_string.hpp"
-
-#define MAXLINESIZE 1024
-#define MAXKEYNUMBER 100
-
-static int max_number_of_problem;
-static int max_dimension;
-
-class _Dict {
-public:
- _Dict() {};
- ~_Dict() {};
- int n = 0;
- size_t size;
- std::vector<std::string> section;
- std::vector<std::string> value;
- std::vector<std::string> key;
-};
-
-typedef enum _LINE_ {
- EMPTY,
- COMMENT,
- SECTION,
- VALUE,
- CON_ERROR
-} linecontent;
-
-class IOHprofiler_configuration {
-public:
- IOHprofiler_configuration() {}
-
- int set_Dict(_Dict &dict, const std::string section, const std::string key, const std::string value);
-
- std::string get_Dict_String(const _Dict dict, const std::string section, const std::string key);
-
- std::vector<int> get_Dict_int_vector(const _Dict dict, const std::string section, const std::string key, const int _min, const int _max);
-
- int get_Dict_Int(const _Dict dict, const std::string section, const std::string key);
-
- bool get_Dict_bool(const _Dict dict, const std::string section, const std::string key);
-
- linecontent add_Line(const std::string input_line, std::string §ion, std::string &key, std::string &value);
-
- _Dict load(const std::string filename);
-
- void readcfg(std::string filename);
-
- std::string get_suite_name();
-
- std::vector<int> get_problem_id();
-
- std::vector<int> get_instance_id();
-
- std::vector<int> get_dimension();
-
- std::string get_output_directory();
-
- std::string get_result_folder();
-
- std::string get_algorithm_info();
-
- std::string get_algorithm_name();
-
- bool get_complete_triggers();
-
- bool get_update_triggers();
-
- std::vector<int> get_base_evaluation_triggers();
-
- int get_number_target_triggers();
-
- int get_number_interval_triggers();
-
-private:
- std::string cfgFile = "configuration.ini";
- std::string suite_name;
- std::vector<int> problem_id;
- std::vector<int> instance_id;
- std::vector<int> dimension;
- std::string output_directory;
- std::string result_folder;
- std::string algorithm_info;
- std::string algorithm_name;
- bool complete_triggers;
- bool update_triggers;
- std::vector<int> base_evaluation_triggers;
- int number_target_triggers;
- int number_interval_triggers;
-};
-
-#endif
-
↰ Return to documentation for file (src/Template/Experiments/IOHprofiler_experimenter.h
)
#ifndef _IOHPROFILER_EXPERIMENTER_HPP
-#define _IOHPROFILER_EXPERIMENTER_HPP
-
-#include "IOHprofiler_common.h"
-#include "IOHprofiler_all_suites.hpp"
-#include "IOHprofiler_csv_logger.h"
-#include "IOHprofiler_configuration.h"
-
-#include <ctime>
-
-template <class InputType> class IOHprofiler_experimenter {
-public:
- typedef void _algorithm(std::shared_ptr<IOHprofiler_problem<InputType> >, std::shared_ptr<IOHprofiler_csv_logger> logger);
-
- IOHprofiler_experimenter();
- IOHprofiler_experimenter(std::string configFileName, _algorithm *algorithm);
- IOHprofiler_experimenter(IOHprofiler_suite<InputType> suite, std::shared_ptr<IOHprofiler_csv_logger> csv_logger, _algorithm * algorithm);
-
- ~IOHprofiler_experimenter(){};
-
- void _run();
-
- void _set_independent_runs(int n);
-
- void print_info(std::string info);
-
- std::string vectorToString(std::vector<int> v);
-
-private:
- IOHprofiler_configuration conf;
- std::shared_ptr<IOHprofiler_suite<InputType> > configSuite;
- std::shared_ptr<IOHprofiler_problem<InputType> > current_problem;
- std::shared_ptr<IOHprofiler_csv_logger> config_csv_logger;
- int independent_runs = 1;
-
- _algorithm *algorithm;
-};
-
-#include "IOHprofiler_experimenter.hpp"
-
-#endif //_IOHPROFILER_EXPERIMENTER_H
-
↰ Return to documentation for file (src/Template/Experiments/IOHprofiler_experimenter.hpp
)
template <class InputType> IOHprofiler_experimenter<InputType>::IOHprofiler_experimenter(std::string configFileName, _algorithm *algorithm) {
- this->conf.readcfg(configFileName);
-
- configSuite = genericGenerator<IOHprofiler_suite<InputType> >::instance().create(conf.get_suite_name());
- if (configSuite == nullptr) {
- IOH_error("Creating suite fails, please check your configuration");
- }
-
- configSuite->IOHprofiler_set_suite_problem_id(conf.get_problem_id());
- configSuite->IOHprofiler_set_suite_instance_id(conf.get_instance_id());
- configSuite->IOHprofiler_set_suite_dimension(conf.get_dimension());
- configSuite->loadProblem();
-
- std::shared_ptr<IOHprofiler_csv_logger> logger(new IOHprofiler_csv_logger(conf.get_output_directory(),conf.get_result_folder(),conf.get_algorithm_name(),conf.get_algorithm_info()));
- if (logger == nullptr) {
- IOH_error("Creating logger fails, please check your configuration");
- }
-
- logger->set_complete_flag(conf.get_complete_triggers());
- logger->set_interval(conf.get_number_interval_triggers());
- logger->set_time_points(conf.get_base_evaluation_triggers(),conf.get_number_target_triggers());
- logger->set_update_flag(conf.get_update_triggers());
-
- config_csv_logger = logger;
- config_csv_logger->activate_logger();
-
- this->algorithm = algorithm;
-}
-
-template <class InputType> IOHprofiler_experimenter<InputType>::IOHprofiler_experimenter(IOHprofiler_suite<InputType> suite, std::shared_ptr<IOHprofiler_csv_logger> csv_logger, _algorithm * algorithm) {
- configSuite = suite;
- config_csv_logger = csv_logger;
- this->algorithm = algorithm;
-}
-
-template <class InputType> void IOHprofiler_experimenter<InputType>::_run() {
- std::clock_t c_start_overall = std::clock();
-
- std::string info = "IOHprofiler_experiment\n";
- info += "Suite: " + this->configSuite->IOHprofiler_suite_get_suite_name() + "\n";
- info += "Problem: " + vectorToString(this->configSuite->IOHprofiler_suite_get_problem_id()) + "\n";
- info += "Instance: " + vectorToString(this->configSuite->IOHprofiler_suite_get_instance_id()) + "\n";
- info += "Dimension: " + vectorToString(this->configSuite->IOHprofiler_suite_get_dimension()) + "\n";
- print_info(info);
-
- this->config_csv_logger->track_suite(this->configSuite->IOHprofiler_suite_get_suite_name());
-
- while ((current_problem = configSuite->get_next_problem()) != nullptr) {
- std::clock_t c_start = std::clock();
- info = "f";
- info += std::to_string(current_problem->IOHprofiler_get_problem_id());
- info += "_d" + std::to_string(current_problem->IOHprofiler_get_number_of_variables());
- info += "_i" + std::to_string(current_problem->IOHprofiler_get_instance_id());
- print_info(info);
-
-
- this->config_csv_logger->track_problem(current_problem->IOHprofiler_get_problem_id(),
- current_problem->IOHprofiler_get_number_of_variables(),
- current_problem->IOHprofiler_get_instance_id(),
- current_problem->IOHprofiler_get_problem_name(),
- current_problem->IOHprofiler_get_optimization_type());
-
- algorithm(current_problem,this->config_csv_logger);
-
- print_info(".");
-
- int count = 1;
- while(independent_runs > count) {
- current_problem = configSuite->get_current_problem();
- this->config_csv_logger->track_problem(current_problem->IOHprofiler_get_problem_id(),
- current_problem->IOHprofiler_get_number_of_variables(),
- current_problem->IOHprofiler_get_instance_id(),
- current_problem->IOHprofiler_get_problem_name(),
- current_problem->IOHprofiler_get_optimization_type());
- algorithm(current_problem,this->config_csv_logger);
- ++count;
-
- print_info(".");
- }
-
- std::clock_t c_end = std::clock();
- print_info("CPU Time" + std::to_string(1000.0 * (c_end-c_start) / CLOCKS_PER_SEC) + "ms\n");
- }
-
- std::clock_t c_end_overall = std::clock();
- print_info("Total CPU Time" + std::to_string(1000.0 * (c_end_overall-c_start_overall) / CLOCKS_PER_SEC) + "ms\n");
-}
-
-template <class InputType> void IOHprofiler_experimenter<InputType>::_set_independent_runs(int n) {
- this->independent_runs = n;
-}
-
-template <class InputType> void IOHprofiler_experimenter<InputType>::print_info(std::string info) {
- std::cout << info << std::flush;
-}
-
-template <class InputType> std::string IOHprofiler_experimenter<InputType>::vectorToString(std::vector<int> v) {
-
- std::string s = "";
- if (v.size() == 0) {
- return s;
- }
- s = std::to_string(v[0]);
- for (int i = 1; i != v.size(); ++i) {
- s += " " + std::to_string(v[i]);
- }
-
- return s;
-}
-
↰ Return to documentation for file (src/Template/Experiments/IOHprofiler_string.hpp
)
#ifndef _IOHPROFILER_STRING_HPP
-#define _IOHPROFILER_STRING_HPP
-
-#include <sstream>
-#include "IOHprofiler_common.h"
-
-static std::string strstrip(std::string s)
-{
- if (s.empty()) {
- return s;
- }
- s.erase(0,s.find_first_not_of(' '));
- s.erase(s.find_last_not_of('\r') + 1);
- s.erase(s.find_last_not_of(' ') + 1);
- return s;
-}
-
-static std::vector<int> get_int_vector_parse_string(std::string input, const int _min, const int _max) {
- std::vector<std::string> spiltstring;
- std::string tmp;
- int tmpvalue,tmpvalue1;
- std::vector<int> result;
-
- size_t n = input.size();
- input = strstrip(input);
- for (size_t i = 0; i < n; ++i) {
- if (input[i] != ',' && input[i] != '-' && !isdigit(input[i])) {
- IOH_error("The configuration consists invalid characters.");
- }
- }
-
- std::stringstream raw(input);
- while(getline(raw, tmp, ',')) spiltstring.push_back(tmp);
-
- n = spiltstring.size();
- for (size_t i = 0; i < n; ++i) {
- size_t l = spiltstring[i].size();
-
- if (spiltstring[i][0] == '-') {
- if(i != 0) {
- IOH_error("Format error in configuration.");
- } else {
- tmp = spiltstring[i].substr(1);
- if (tmp.find('-') != std::string::npos) {
- IOH_error("Format error in configuration.");
- }
-
- tmpvalue = std::stoi(tmp);
-
- if (tmpvalue < _min) {
- IOH_error("Input value exceeds lowerbound.");
- }
-
- for (int value = _min; value <= tmpvalue; ++value) {
- result.push_back(value);
- }
- }
- } else if(spiltstring[i][spiltstring[i].length()-1] == '-') {
- if (i != spiltstring.size() - 1) {
- IOH_error("Format error in configuration.");
- } else {
- tmp = spiltstring[i].substr(0,spiltstring[i].length() - 1);
- if (tmp.find('-') != std::string::npos) {
- IOH_error("Format error in configuration.");
- }
- tmpvalue = std::stoi(tmp);
- if (tmpvalue > _max) {
- IOH_error("Input value exceeds upperbound.");
- }
- for (int value = _max; value <= tmpvalue; --value) {
- result.push_back(value);
- }
- }
- } else {
- std::stringstream tempraw(spiltstring[i]);
- std::vector<std::string> tmpvaluevector;
- while (getline(tempraw, tmp, '-')) {
- tmpvaluevector.push_back(tmp);
- }
- tmpvalue = std::stoi(tmpvaluevector[0]);
- tmpvalue1 = std::stoi(tmpvaluevector[tmpvaluevector.size()-1]);
- if (tmpvalue > tmpvalue1) {
- IOH_error("Format error in configuration.");
- }
- if (tmpvalue < _min) {
- IOH_error("Input value exceeds lowerbound.");
- }
- if (tmpvalue1 > _max) {
- IOH_error("Input value exceeds upperbound.");
- }
- for(int value = tmpvalue; value <= tmpvalue1; ++value) result.push_back(value);
- }
- }
- return result;
-}
-#endif //_IOHPROFILER_STRING_HPP
-
↰ Return to documentation for file (src/Template/Experiments/README.md
)
## Experiment and configuration of IOHexperimenter.
-
-__IOHexperimenters__ provides interface of using configuration files. After setting the path of the configuration file and giving an algorithm, the `IOHprofiler_experimenter` can organize experiments automatically.
-
-`IOHprofiler_configuration` reads configuration information from a given file, and these information can be used in `IOHprofiler_experimenter` to generate __IOHprofiler_suite__ and __IOHprofiler_csv_logger__.
-
-For the content of configuration file, it consists of three sections:
-
-__suite__ configures the problems to be tested.
-* __suite_name__, is the name of the suite to be used. Please make sure that the suite with the corresponding name is registered.
-* __problem_id__, configures problems to be tested. Note that id of problems are configured by the suite, please make sure that id is within the valid range.
-* __instance_id__, configures the transformation methods applied on problems.
- For `PBO`:
- * `1` : no transformer operations on the problem.
- * `2-50` : XOR and SHIFT operations are applied on the problem.
- * `51-100`: SIGMA and SHIFT operations are applied on the problem.
-* __dimension__, configures dimension of problems to be tested. Note that allowed dimension is not larger than 20000.
-
-__logger__ configures the setting of output csv files.
-* __result_foler__ is the directory of the folder where sotres output files.
-* __algorithm_name__, is the name of the algorithm, which is used when generating '.info' files.
-* __algorithm_info__, is additional information of the algorithm, which is used when generating '.info' files.
-
-__observer__ configures parameters of `IOHprofiler_server`, which is used in `IOHprofiler_csv_logger`,
-* __complete_triggers__ is the switch of `.cdat` files, which works with __complete tracking__ strategy. Set it as `TRUE` or `true` if you want to output `.cdat` files.
-* __update_triggers__ is the switch of `.dat` files, which works with __target-based strategy__ strategy. Set it as `TRUE` or `true` if you want to output <i>.dat</i>` files.
-* __number_interval_triggers__ configures the `.idat` files, which works with __interval tracking__ number_target_triggers sets the value of the frequecny. If you do not want to generate `.idat` files, set `number_target_triggers` as 0.
-* __number_target_triggers__ configures the `.tdat` files, which works with __time-based tracking__ strategy.
-* __base_evaluation_triggers__ configures the `.tdat` files, which works with __time-based tracking__ strategy. To switch off `.tdat` files, set both __number_target_triggers__ and __base_evaluation_triggers__ as 0. For the detail of __time-based tracking__, please with the [wiki page](https://iohprofiler.github.io/IOHexperimenter/Loggers/Observer/).
-
-And for the function of algorithms, a shared smart pointer of `IOHprofiler_problem` should be one and the only one argument of it. An example of declaration of an evolutionary algorithm is as follow,
-```cpp
-void evolutionary_algorithm(std::shared_ptr<IOHprofiler_problem<int>> problem)
-```
-
-In addition, `IOHprofiler_experimenter` allows to test each problem mutliple times by using the following statements.
-```cpp
-experimenter._set_independent_runs(1);
-```
-
↰ Return to documentation for file (src/Template/IOHprofiler_class_generator.h
)
#ifndef _IOHPROFILER_PROBLEM_GENERATOR_H
-#define _IOHPROFILER_PROBLEM_GENERATOR_H
-
-#include "IOHprofiler_common.h"
-
-typedef std::string defaultIDKeyType;
-
-template <class manufacturedObj> class genericGenerator {
-
-
- typedef std::map<std::string, std::shared_ptr<manufacturedObj> (*)()> FN_registry;
- FN_registry registry;
-
- genericGenerator();
- genericGenerator(const genericGenerator&) = delete;
- genericGenerator &operator=(const genericGenerator&) = delete;
-
-public:
- static genericGenerator &instance();
-
- void regCreateFn(std::string, std::shared_ptr<manufacturedObj> (*)());
-
- std::shared_ptr<manufacturedObj> create(std::string className) const;
-};
-
-template <class ancestorType ,
- class manufacturedObj,
- typename classIDKey=defaultIDKeyType>
-class registerInFactory {
-public:
- static std::shared_ptr<ancestorType> createInstance() {
- return std::shared_ptr<ancestorType>(manufacturedObj::createInstance());
- }
-
- registerInFactory(const classIDKey id) {
- genericGenerator<ancestorType>::instance().regCreateFn(id, createInstance);
- }
-};
-
-#include "IOHprofiler_class_generator.hpp"
-
-#endif
-
↰ Return to documentation for file (src/Template/IOHprofiler_class_generator.hpp
)
template <class manufacturedObj> genericGenerator<manufacturedObj>::genericGenerator() {
-}
-
-template <class manufacturedObj> genericGenerator<manufacturedObj> &genericGenerator<manufacturedObj>::instance() {
- static genericGenerator theInstance;
- return theInstance;
-}
-
-template <class manufacturedObj> void genericGenerator<manufacturedObj>::regCreateFn(std::string clName, std::shared_ptr<manufacturedObj> (*func)()) {
- registry[clName]=func;
-}
-
-template <class manufacturedObj> std::shared_ptr<manufacturedObj> genericGenerator<manufacturedObj>::create(std::string className) const {
- std::shared_ptr<manufacturedObj> ret(nullptr);
-
- typename FN_registry::const_iterator regEntry = registry.find(className);
- if (regEntry != registry.end()) {
- return (*regEntry).second();
- }
- return ret;
-}
-
↰ Return to documentation for file (src/Template/IOHprofiler_common.cpp
)
#ifndef _IOHPROFILER_COMMON_CPP
-#define _IOHPROFILER_COMMON_CPP
-
-#include "IOHprofiler_common.h"
-
-void IOH_error(std::string error_info) {
- std::cerr << "IOH_ERROR_INFO : " << error_info << std::endl;
- exit(1);
-}
-
-void IOH_warning(std::string warning_info) {
- std::cout << "IOH_WARNING_INFO : " << warning_info << std::endl;
-}
-
-void IOH_log(std::string log_info) {
- std::cout << "IOH_LOG_INFO : " << log_info << std::endl;
-}
-
-void IOH_log(std::string log_info, std::ofstream &log_stream) {
- log_stream << "IOH_LOG_INFO : " << log_info << std::endl;
-}
-
-#endif //IOHPROFILER_COMMON_CPP
-
↰ Return to documentation for file (src/Template/IOHprofiler_common.h
)
#ifndef _IOHPROFILER_COMMON_HPP
-#define _IOHPROFILER_COMMON_HPP
-
-#include "IOHprofiler_platform.h"
-
-#include <iostream>
-#include <fstream>
-#include <sstream>
-#include <string>
-#include <vector>
-#include <cassert>
-#include <cmath>
-#include <cstdlib>
-#include <cstddef>
-#include <limits>
-#include <cfloat>
-#include <algorithm>
-#include <memory>
-#include <map>
-
-#define IOHprofiler_PATH_MAX 200
-
-#define IOHprofiler_MAX_DIMENSION 20000
-
-#define DEFAULT_PROBLEM_ID 0
-
-#define DEFAULT_INSTANCE 1
-
-#define DEFAULT_DIMENSION 4
-
-#define MAX_BUFFER_SIZE 65534
-
-enum IOH_optimization_type {Minimization=0, Maximization=1};
-
-void IOH_error(std::string error_info);
-
-void IOH_warning(std::string warning_info);
-
-void IOH_log(std::string log_info);
-
-void IOH_log(std::string log_info, std::ofstream &log_stream);
-
-
-template<class valueType>
-void copyVector(const std::vector<valueType> v1, std::vector<valueType> &v2) {
- v2.assign(v1.begin(),v1.end());
-}
-
-template<class valueType>
-bool compareVector(const std::vector<valueType> &v1, const std::vector<valueType> &v2) {
- int n = v1.size();
- if(n != v2.size()){
- IOH_error("Two compared vector must be with the same size\n");
- return false;
- }
- for (int i = 0; i != n; ++i)
- {
- if(v1[i] != v2[i]){
- return false;
- }
- }
- return true;
-}
-
-template<class valueType>
-bool compareObjectives(const std::vector<valueType> &v1, const std::vector<valueType> &v2, const IOH_optimization_type optimization_type){
- int n = v1.size();
- if(n != v2.size()){
- IOH_error("Two compared objective vector must be with the same size\n");
- return false;
- }
- if (optimization_type == IOH_optimization_type::Maximization) {
- for (int i = 0; i != n; ++i)
- {
- if (v1[i] <= v2[i]) {
- return false;
- }
- }
- return true;
- } else {
- for (int i = 0; i != n; ++i)
- {
- if (v1[i] >= v2[i]) {
- return false;
- }
- }
- return true;
- }
-}
-
-template<class valueType>
-bool compareObjectives(const valueType v1, const valueType v2, const IOH_optimization_type optimization_type){
- if (optimization_type == IOH_optimization_type::Maximization) {
- if (v1 <= v2){
- return false;
- }
- return true;
- } else {
- if (v1 >= v2) {
- return false;
- }
- return true;
- }
-}
-
-template<class valueType> std::string _toString(const valueType v) {
- std::ostringstream ss;
- ss << v;
- return ss.str();
-}
-
-#endif //_IOHPROFILER_COMMON_HPP
-
↰ Return to documentation for file (src/Template/IOHprofiler_observer.cpp
)
#include "IOHprofiler_observer.h"
-
-void IOHprofiler_observer::set_complete_flag(bool complete_flag) {
- this->observer_complete_flag = complete_flag;
-}
-
-bool IOHprofiler_observer::complete_status() const {
- return observer_complete_flag;
-}
-
-bool IOHprofiler_observer::complete_trigger() const {
- return observer_complete_flag;
-}
-
-void IOHprofiler_observer::set_interval(int interval) {
- this->observer_interval = interval;
-}
-
-bool IOHprofiler_observer::interval_status() const {
- if (observer_interval == 0) {
- return false;
- } else {
- return true;
- }
-}
-
-bool IOHprofiler_observer::interval_trigger(size_t evaluations) const {
- if (observer_interval == 0) {
- return false;
- }
- if (evaluations == 1 || evaluations % observer_interval == 0) {
- return true;
- } else {
- return false;
- }
-}
-
-void IOHprofiler_observer::set_update_flag(bool update_flag) {
- this->observer_update_flag = update_flag;
-}
-
-bool IOHprofiler_observer::update_status() const {
- return observer_update_flag;
-}
-
-bool IOHprofiler_observer::update_trigger(double fitness, IOH_optimization_type optimization_type) {
- if (observer_update_flag == false) {
- return false;
- }
-
- if (compareObjectives(fitness, current_best_fitness, optimization_type)) {
- this->current_best_fitness = fitness;
- return true;
- }
-
- return false;
-}
-
-void IOHprofiler_observer::set_time_points(const std::vector<int> & time_points, const int number_of_evaluations, const int time_points_exp_base1, const int time_points_exp_base2) {
- this->observer_time_points = time_points;
- this->observer_number_of_evaluations = number_of_evaluations;
- this->observer_time_points_exp_base1 = time_points_exp_base1;
- this->observer_time_points_exp_base2 = time_points_exp_base2;
-}
-
-bool IOHprofiler_observer::time_points_status() const {
- if (this->observer_time_points.size() > 0) {
- if(!(this->observer_time_points.size() == 1 && this->observer_time_points[0] == 0)) {
- return true;
- }
- }
- if (this->observer_number_of_evaluations > 0) {
- return true;
- }
- return false;
-}
-
-bool IOHprofiler_observer::time_points_trigger(size_t evaluations) {
- if (this->time_points_status() == false) {
- return false;
- }
- bool result = false;
-
- if(evaluations == this->evaluations_value1) {
- result = true;
- if (this->time_points_index < this->observer_time_points.size() - 1) {
- this->time_points_index++;
- } else {
- this->time_points_index = 0;
- this->time_points_expi++;
- }
- this->evaluations_value1 = (size_t)(this->observer_time_points[this->time_points_index] * pow( (double) observer_time_points_exp_base1,(double) this->time_points_expi) );
- while (this->evaluations_value1 <= evaluations) {
- if (this->time_points_index < this->observer_time_points.size() - 1) {
- this->time_points_index++;
- } else {
- this->time_points_index = 0;
- this->time_points_expi++;
- }
- this->evaluations_value1 = (size_t)(this->observer_time_points[this->time_points_index] * pow( (double) observer_time_points_exp_base1,(double) this->time_points_expi) );
- }
- }
-
- if (evaluations == this->evaluations_value2) {
- while ((size_t)floor(pow(observer_time_points_exp_base2,(double)this->evaluations_expi/(double)this->observer_number_of_evaluations)) <= this->evaluations_value2) {
- this->evaluations_expi++;
- }
- this->evaluations_value2 = (size_t)floor(pow(observer_time_points_exp_base2,(double)this->evaluations_expi/(double)this->observer_number_of_evaluations));
- result = true;
- }
- return result;
-}
-
-void IOHprofiler_observer::reset_observer(const IOH_optimization_type optimization_type) {
- if (optimization_type == IOH_optimization_type::Maximization) {
- this->current_best_fitness = std::numeric_limits<double>::lowest();
- } else {
- this->current_best_fitness = std::numeric_limits<double>::max();
- }
- this->evaluations_value1 = 1;
- this->time_points_index = 0;
- this->time_points_expi = 0;
- this->evaluations_value2 = 1;
- this->evaluations_expi = 0;
-}
-
↰ Return to documentation for file (src/Template/IOHprofiler_observer.h
)
#ifndef _IOHPROFILER_OBSERVER_H
-#define _IOHPROFILER_OBSERVER_H
-
-#include "IOHprofiler_common.h"
-#include "IOHprofiler_problem.h"
-class IOHprofiler_observer {
-public:
- IOHprofiler_observer() :
- observer_interval(0),
- observer_complete_flag(false),
- observer_update_flag(true),
- observer_time_points({0}),
- evaluations_value1(1),
- time_points_index(0),
- time_points_expi(0),
- observer_time_points_exp_base1(10),
- evaluations_value2(1),
- evaluations_expi(0),
- observer_time_points_exp_base2(10){}
- virtual ~IOHprofiler_observer() {};
-
- IOHprofiler_observer(const IOHprofiler_observer &) = delete;
- IOHprofiler_observer &operator = (const IOHprofiler_observer&) = delete;
-
- void set_complete_flag(bool complete_flag);
-
- bool complete_status() const;
-
- bool complete_trigger() const;
-
- void set_interval(int interval);
-
- bool interval_status() const;
-
- bool interval_trigger(size_t evaluations) const;
-
- void set_update_flag(bool update_flag);
-
- bool update_trigger(double fitness, IOH_optimization_type optimization_type);
-
- bool update_status() const;
-
- void set_time_points(const std::vector<int> & time_points, const int number_of_evaluations, const int time_points_exp_base1 = 10, const int time_points_exp_base2 = 10);
-
- bool time_points_status() const;
-
- bool time_points_trigger(size_t evaluations);
-
- void reset_observer(const IOH_optimization_type optimization_type);
-
- virtual void do_log(const std::vector<double> &log_info) {}
-
- virtual void track_problem(const IOHprofiler_problem<int> & problem) {}
-
- virtual void track_problem(const IOHprofiler_problem<double> & problem) {}
-
-private:
- int observer_interval;
- bool observer_complete_flag;
- bool observer_update_flag;
-
- std::vector<int> observer_time_points;
- size_t evaluations_value1;
- size_t time_points_index;
- int time_points_expi;
- int observer_time_points_exp_base1;
-
- int observer_number_of_evaluations;
- size_t evaluations_value2;
- int evaluations_expi;
- int observer_time_points_exp_base2;
-
- double current_best_fitness;
-};
-
-#endif // _IOHPROFILER_OBSERVER_H
-
↰ Return to documentation for file (src/Template/IOHprofiler_platform.h
)
#ifndef __IOHPROFILER_PLATFORM
-#define __IOHPROFILER_PLATFORM
-
-#include <stddef.h>
-
-
-#if defined(_WIN32) || defined(_WIN64) || defined(__MINGW64__) || defined(__CYGWIN__)
- #include <windows.h>
- #include <io.h>
- static const char *IOHprofiler_path_separator = "\\";
-#elif defined(__gnu_linux__)
- #include <linux/limits.h>
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <unistd.h>
- static const char *IOHprofiler_path_separator = "/";
-#elif defined(__APPLE__)
- #include <sys/stat.h>
- #include <sys/syslimits.h>
- #include <sys/types.h>
- #include <unistd.h>
- static const char *IOHprofiler_path_separator = "/";
-#elif defined(__FreeBSD__)
- #include <limits.h>
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <unistd.h>
- static const char *IOHprofiler_path_separator = "/";
-#elif (defined(__sun) || defined(sun)) && (defined(__SVR4) || defined(__svr4__))
- #include <limits.h>
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <unistd.h>
- static const char *IOHprofiler_path_separator = "/";
-#else
- #include <sys/stat.h>
- #include <unistd.h>
- static const char *IOHprofiler_path_separator = "/";
-#endif
-
-/* Definitions needed for creating and removing directories */
-/* Separately handle the special case of Microsoft Visual Studio 2008 with x86_64-w64-mingw32-gcc */
-#if _MSC_VER
-#include <direct.h>
-#elif defined(__MINGW32__) || defined(__MINGW64__)
-#include <dirent.h>
-#else
-#include <dirent.h>
-
-
-
-#endif
-
-/* Definition of the S_IRWXU constant needed to set file permissions */
-#if defined(HAVE_GFA)
-#define S_IRWXU 0700
-#endif
-
-/* To silence the Visual Studio compiler (C4996 warnings in the python build). */
-#ifdef _MSC_VER
-#pragma warning(disable : 4996)
-#endif
-
-#endif
-
↰ Return to documentation for file (src/Template/IOHprofiler_problem.h
)
#ifndef _IOHPROFILER_PROBLEM_H
-#define _IOHPROFILER_PROBLEM_H
-
-#include "IOHprofiler_common.h"
-#include "IOHprofiler_transformation.h"
-
-static IOHprofiler_transformation transformation;
-
-template <class InputType> class IOHprofiler_problem
-{
-public:
- IOHprofiler_problem(int instance_id = DEFAULT_INSTANCE, int dimension = DEFAULT_DIMENSION) :
- problem_id(DEFAULT_PROBLEM_ID),
- instance_id(instance_id),
- maximization_minimization_flag(IOH_optimization_type::Maximization),
- number_of_variables(DEFAULT_DIMENSION),
- number_of_objectives(1),
- lowerbound(std::vector<InputType> (number_of_variables) ),
- upperbound(std::vector<InputType> (number_of_variables) ),
- optimal(std::vector<double>(number_of_objectives) ),
- optimalFound(false),
- evaluations(0),
- best_so_far_raw_objectives(std::vector<double>(number_of_objectives) ),
- best_so_far_raw_evaluations(0),
- best_so_far_transformed_objectives(std::vector<double>(number_of_objectives) ) {}
-
- virtual ~IOHprofiler_problem() {}
-
- IOHprofiler_problem(const IOHprofiler_problem&) = delete;
- IOHprofiler_problem &operator=(const IOHprofiler_problem&) = delete;
-
- // virtual std::vector<double> internal_evaluate_multi (const std::vector<InputType> &x) {
- // std::vector<double> result;
- // std::cout << "No multi evaluate function defined" << std::endl;
- // return result;
- // };
-
- virtual double internal_evaluate(const std::vector<InputType> &x) {
- double result = std::numeric_limits<double>::lowest();
- IOH_warning("No evaluate function defined");
- return result;
- }
-
- virtual void prepare_problem() {
- }
-
- // std::vector<double> evaluate_multi(std::vector<InputType> x) {
- // ++this->evaluations;
-
- // transformation.variables_transformation(x,this->problem_id,this->instance_id,this->problem_type);
- // this->raw_objectives = internal_evaluate_multi(x);
-
- // this->transformed_objectives = this->raw_objectives;
- // transformation.objectives_transformation(x,this->transformed_objectives,this->problem_id,this->instance_id,this->problem_type);
- // if (compareObjectives(this->transformed_objectives,this->best_so_far_transformed_objectives,this->maximization_minimization_flag)) {
- // this->best_so_far_transformed_objectives = this->transformed_objectives;
- // this->best_so_far_transformed_evaluations = this->evaluations;
- // this->best_so_far_raw_objectives = this->raw_objectives;
- // this->best_so_far_raw_evaluations = this->evaluations;
-
- // }
-
- // if (compareVector(this->transformed_objectives,this->optimal)) {
- // this->optimalFound = true;
- // }
-
- // return this->transformed_objectives;
- // }
-
- double evaluate(std::vector<InputType> x);
-
- virtual void customize_optimal(){
-
- }
-
- void calc_optimal();
-
- // virtual std::vector<double> constraints() {
- // std::vector<double> con;
- // printf("No constraints function defined\n");
- // return con;
- // };
-
- void reset_problem();
-
- std::vector<double> loggerCOCOInfo() const;
-
- std::vector<double> loggerInfo() const;
-
- bool IOHprofiler_hit_optimal() const;
-
- int IOHprofiler_get_problem_id() const;
-
- void IOHprofiler_set_problem_id(int problem_id);
-
- int IOHprofiler_get_instance_id() const;
-
- void IOHprofiler_set_instance_id(int instance_id);
-
- std::string IOHprofiler_get_problem_name() const;
-
- void IOHprofiler_set_problem_name(std::string problem_name);
-
- std::string IOHprofiler_get_problem_type() const;
-
- void IOHprofiler_set_problem_type(std::string problem_type);
-
- std::vector<InputType> IOHprofiler_get_lowerbound() const;
-
- void IOHprofiler_set_lowerbound(int lowerbound);
-
- void IOHprofiler_set_lowerbound(const std::vector<InputType> &lowerbound);
-
- std::vector<InputType> IOHprofiler_get_upperbound() const;
-
- void IOHprofiler_set_upperbound(int upperbound);
-
- void IOHprofiler_set_upperbound(const std::vector<InputType> &upperbound);
-
- int IOHprofiler_get_number_of_variables() const;
-
- void IOHprofiler_set_number_of_variables(const int number_of_variables);
-
- void IOHprofiler_set_number_of_variables(const int number_of_variables, const std::vector<InputType> &best_variables);
-
- int IOHprofiler_get_number_of_objectives() const;
-
- void IOHprofiler_set_number_of_objectives(const int number_of_objectives);
-
- std::vector<double> IOHprofiler_get_raw_objectives() const;
-
- std::vector<double> IOHprofiler_get_transformed_objectives() const;
-
- int IOHprofiler_get_transformed_number_of_variables() const;
-
- std::vector<InputType> IOHprofiler_get_transformed_variables() const;
-
- std::vector<InputType> IOHprofiler_get_best_variables() const;
-
- void IOHprofiler_set_best_variables(const InputType best_variables);
-
- void IOHprofiler_set_best_variables(const std::vector<InputType> &best_variables);
-
- std::vector<double> IOHprofiler_get_optimal() const;
-
- void IOHprofiler_set_optimal(const double optimal);
-
- void IOHprofiler_set_optimal(const std::vector<double> &optimal);
-
- void IOHprofiler_evaluate_optimal(std::vector<InputType> best_variables);
-
- void IOHprofiler_evaluate_optimal();
-
- int IOHprofiler_get_evaluations() const;
-
- std::vector<double> IOHprofiler_get_best_so_far_raw_objectives() const;
-
- int IOHprofiler_get_best_so_far_raw_evaluations() const;
-
- std::vector<double> IOHprofiler_get_best_so_far_transformed_objectives() const;
-
- int IOHprofiler_get_best_so_far_transformed_evaluations() const;
-
- IOH_optimization_type IOHprofiler_get_optimization_type() const;
-
- void IOHprofiler_set_as_maximization();
-
- void IOHprofiler_set_as_minimization();
-
-private:
- int problem_id;
- int instance_id;
-
- std::string problem_name;
- std::string problem_type;
-
- IOH_optimization_type maximization_minimization_flag;
-
- std::size_t number_of_variables;
- std::size_t number_of_objectives;
-
- std::vector<InputType> lowerbound;
- std::vector<InputType> upperbound;
-
- std::vector<InputType> best_variables;
- std::vector<InputType> best_transformed_variables;
- std::vector<double> optimal;
- bool optimalFound;
-
- std::vector<double> raw_objectives;
- std::vector<double> transformed_objectives;
- int transformed_number_of_variables;
- std::vector<InputType> transformed_variables;
-
-
- std::size_t evaluations;
- std::vector<double> best_so_far_raw_objectives;
- int best_so_far_raw_evaluations;
- std::vector<double> best_so_far_transformed_objectives;
- int best_so_far_transformed_evaluations;
-};
-
-#include "IOHprofiler_problem.hpp"
-
-#endif // _IOHPROFILER_PROBLEM_H
-
↰ Return to documentation for file (src/Template/IOHprofiler_problem.hpp
)
template <class InputType> double IOHprofiler_problem<InputType>::evaluate(std::vector<InputType> x) {
- ++this->evaluations;
-
- if(x.size() != this->number_of_variables) {
- IOH_warning("The dimension of solution is incorrect.");
- if (this->maximization_minimization_flag == IOH_optimization_type::Maximization) {
- this->raw_objectives[0] = std::numeric_limits<double>::lowest();
- this->transformed_objectives[0] = std::numeric_limits<double>::lowest();
- } else {
- this->raw_objectives[0] = std::numeric_limits<double>::max();
- this->transformed_objectives[0] = std::numeric_limits<double>::max();
- }
- return this->transformed_objectives[0];
- }
-
- transformation.variables_transformation(x,this->problem_id,this->instance_id,this->problem_type);
- this->raw_objectives[0] = internal_evaluate(x);
-
- this->transformed_objectives[0] = this->raw_objectives[0];
-
- transformation.objectives_transformation(x,this->transformed_objectives,this->problem_id,this->instance_id,this->problem_type);
- if (compareObjectives(this->transformed_objectives,this->best_so_far_transformed_objectives,this->maximization_minimization_flag)) {
- this->best_so_far_transformed_objectives = this->transformed_objectives;
- this->best_so_far_transformed_evaluations = this->evaluations;
- this->best_so_far_raw_objectives = this->raw_objectives;
- this->best_so_far_raw_evaluations = this->evaluations;
- }
-
- if (compareVector(this->transformed_objectives,this->optimal)) {
- this->optimalFound = true;
- }
-
- return this->transformed_objectives[0];
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::calc_optimal() {
- if (this->best_variables.size() == this->number_of_variables) {
- if (this->number_of_objectives == 1) {
- if(this->problem_type == "bbob") {
- Coco_Transformation_Data::raw_x.clear();
- for (int i = 0; i != this->best_variables.size(); ++i) {
- Coco_Transformation_Data::raw_x.push_back(this->best_variables[i]);
- }
- }
- this->optimal[0] = internal_evaluate(this->best_variables);
- } else {
- IOH_warning("Multi-objectives optimization is not supported now.");
- }
- transformation.objectives_transformation(this->best_variables,this->optimal,this->problem_id,this->instance_id,this->problem_type);
- }
- else {
- this->optimal.clear();
- for (int i = 0; i < this->number_of_objectives; ++i) {
- if (this->maximization_minimization_flag == IOH_optimization_type::Maximization) {
- this->optimal.push_back(std::numeric_limits<double>::max());
- } else {
- this->optimal.push_back(std::numeric_limits<double>::lowest());
- }
- }
- customize_optimal();
- }
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::reset_problem() {
- this->evaluations = 0;
- this->best_so_far_raw_evaluations = 0;
- this->best_so_far_transformed_evaluations = 0;
- this->optimalFound = false;
- for (int i = 0; i != this->number_of_objectives; ++i) {
- if (this->maximization_minimization_flag == IOH_optimization_type::Maximization) {
- this->best_so_far_raw_objectives[i] = std::numeric_limits<double>::lowest();
- this->best_so_far_transformed_objectives[i] = std::numeric_limits<double>::lowest();
- } else {
- this->best_so_far_raw_objectives[i] = std::numeric_limits<double>::max();
- this->best_so_far_transformed_objectives[i] = std::numeric_limits<double>::max();
- }
- }
- this->prepare_problem();
- this->calc_optimal();
-}
-
-template <class InputType> std::vector<double> IOHprofiler_problem<InputType>::loggerCOCOInfo() const{
- std::vector<double> logger_info(5);
- logger_info[0] = (double)this->evaluations;
- logger_info[1] = this->transformed_objectives[0] - this->optimal[0];
- logger_info[2] = this->best_so_far_transformed_objectives[0] - this->optimal[0];
- logger_info[3] = this->transformed_objectives[0];
- logger_info[4] = this->best_so_far_transformed_objectives[0];
-
- return logger_info;
-}
-
-template <class InputType> std::vector<double> IOHprofiler_problem<InputType>::loggerInfo() const{
- std::vector<double> logger_info(5);
- logger_info[0] = (double)this->evaluations;
- logger_info[1] = this->raw_objectives[0];
- logger_info[2] = this->best_so_far_raw_objectives[0];
- logger_info[3] = this->transformed_objectives[0];
- logger_info[4] = this->best_so_far_transformed_objectives[0];
- return logger_info;
-}
-
-template <class InputType> bool IOHprofiler_problem<InputType>::IOHprofiler_hit_optimal() const {
- return this->optimalFound;
-}
-
-template <class InputType> int IOHprofiler_problem<InputType>::IOHprofiler_get_problem_id() const {
- return this->problem_id;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_problem_id(int problem_id){
- this->problem_id = problem_id;
-}
-
-template <class InputType> int IOHprofiler_problem<InputType>::IOHprofiler_get_instance_id() const {
- return this->instance_id;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_instance_id(int instance_id) {
- this->instance_id = instance_id;
- this->prepare_problem();
- this->calc_optimal();
-}
-
-template <class InputType> std::string IOHprofiler_problem<InputType>::IOHprofiler_get_problem_name() const {
- return this->problem_name;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_problem_name(std::string problem_name) {
- this->problem_name = problem_name;
-}
-
-template <class InputType> std::string IOHprofiler_problem<InputType>::IOHprofiler_get_problem_type() const {
- return this->problem_type;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_problem_type(std::string problem_type) {
- this->problem_type = problem_type;
-}
-
-template <class InputType> std::vector<InputType> IOHprofiler_problem<InputType>::IOHprofiler_get_lowerbound() const {
- return this->lowerbound;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_lowerbound(int lowerbound) {
- std::vector<InputType>().swap(this->lowerbound);
- this->lowerbound.reserve(this->number_of_variables);
- for (int i = 0; i < this->number_of_variables; ++i) {
- this->lowerbound.push_back(lowerbound);
- }
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_lowerbound(const std::vector<InputType> &lowerbound) {
- this->lowerbound = lowerbound;
-}
-
-template <class InputType> std::vector<InputType> IOHprofiler_problem<InputType>::IOHprofiler_get_upperbound() const {
- return this->upperbound;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_upperbound(int upperbound) {
- std::vector<InputType>().swap(this->upperbound);
- this->upperbound.reserve(this->number_of_variables);
- for (int i = 0; i < this->number_of_variables; ++i) {
- this->upperbound.push_back(upperbound);
- }
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_upperbound(const std::vector<InputType> &upperbound) {
- this->upperbound = upperbound;
-}
-
-template <class InputType> int IOHprofiler_problem<InputType>::IOHprofiler_get_number_of_variables() const {
- return this->number_of_variables;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_number_of_variables(const int number_of_variables) {
- this->number_of_variables = number_of_variables;
- if (this->best_variables.size() != 0) {
- this->IOHprofiler_set_best_variables(this->best_variables[0]);
- }
- if (this->lowerbound.size() != 0) {
- this->IOHprofiler_set_lowerbound(this->lowerbound[0]);
- }
- if (this->upperbound.size() != 0) {
- this->IOHprofiler_set_upperbound(this->upperbound[0]);
- }
- this->prepare_problem();
- this->calc_optimal();
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_number_of_variables(const int number_of_variables, const std::vector<InputType> &best_variables) {
- this->number_of_variables = number_of_variables;
- this->best_variables = best_variables;
- if (this->lowerbound.size() != 0) {
- this->IOHprofiler_set_lowerbound(this->lowerbound[0]);
- }
- if (this->upperbound.size() != 0) {
- this->IOHprofiler_set_upperbound(this->upperbound[0]);
- }
- this->prepare_problem();
- this->calc_optimal();
-}
-
-template <class InputType> int IOHprofiler_problem<InputType>::IOHprofiler_get_number_of_objectives() const {
- return this->number_of_objectives;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_number_of_objectives(const int number_of_objectives) {
- this->number_of_objectives = number_of_objectives;
- this->raw_objectives = std::vector<double>(this->number_of_objectives);
- this->transformed_objectives = std::vector<double>(this->number_of_objectives);
- if (this->maximization_minimization_flag == IOH_optimization_type::Maximization) {
- this->best_so_far_raw_objectives = std::vector<double>(this->number_of_objectives,std::numeric_limits<double>::lowest());
- this->best_so_far_transformed_objectives = std::vector<double>(this->number_of_objectives,std::numeric_limits<double>::lowest());
- } else {
- this->best_so_far_raw_objectives = std::vector<double>(this->number_of_objectives,std::numeric_limits<double>::max());
- this->best_so_far_transformed_objectives = std::vector<double>(this->number_of_objectives,std::numeric_limits<double>::max());
- }
- this->optimal = std::vector<double>(this->number_of_objectives);
-}
-
-template <class InputType> std::vector<double> IOHprofiler_problem<InputType>::IOHprofiler_get_raw_objectives() const {
- return this->raw_objectives;
-}
-
-template <class InputType> std::vector<double> IOHprofiler_problem<InputType>::IOHprofiler_get_transformed_objectives() const {
- return this->transformed_objectives;
-}
-
-template <class InputType> int IOHprofiler_problem<InputType>::IOHprofiler_get_transformed_number_of_variables() const {
- return this->transformed_number_of_variables;
-}
-
-template <class InputType> std::vector<InputType> IOHprofiler_problem<InputType>::IOHprofiler_get_transformed_variables() const {
- return this->transformed_variables;
-}
-
-template <class InputType> std::vector<InputType> IOHprofiler_problem<InputType>::IOHprofiler_get_best_variables() const {
- return this->best_variables;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_best_variables(const InputType best_variables) {
- this->best_variables.clear();
- for (int i = 0; i < this->number_of_variables; ++i) {
- this->best_variables.push_back(best_variables);
- }
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_best_variables(const std::vector<InputType> &best_variables) {
- this->best_variables = best_variables;
-}
-
-template <class InputType> std::vector<double> IOHprofiler_problem<InputType>::IOHprofiler_get_optimal() const {
- return this->optimal;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_optimal(const double optimal) {
- std::vector<double>().swap(this->optimal);
- this->optimal.reserve(this->number_of_objectives);
- for (int i = 0; i < this->number_of_objectives; ++i) {
- this->optimal.push_back(optimal);
- }
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_optimal(const std::vector<double> &optimal) {
- this->optimal = optimal;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_evaluate_optimal(std::vector<InputType> best_variables) {
- this->optimal[0] = this->evaluate(best_variables);
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_evaluate_optimal() {
- this->optimal[0] = this->evaluate(this->best_variables);
-}
-
-template <class InputType> int IOHprofiler_problem<InputType>::IOHprofiler_get_evaluations() const {
- return this->evaluations;
-}
-
-template <class InputType> std::vector<double> IOHprofiler_problem<InputType>::IOHprofiler_get_best_so_far_raw_objectives() const {
- return this->best_so_far_raw_objectives;
-}
-
-template <class InputType> int IOHprofiler_problem<InputType>::IOHprofiler_get_best_so_far_raw_evaluations() const {
- return this-> best_so_far_raw_evaluations;
-}
-
-template <class InputType> std::vector<double> IOHprofiler_problem<InputType>::IOHprofiler_get_best_so_far_transformed_objectives() const {
- return this->best_so_far_transformed_objectives;
-}
-
-template <class InputType> int IOHprofiler_problem<InputType>::IOHprofiler_get_best_so_far_transformed_evaluations() const {
- return this->best_so_far_transformed_evaluations;
-}
-
-template <class InputType> IOH_optimization_type IOHprofiler_problem<InputType>::IOHprofiler_get_optimization_type() const {
- return this->maximization_minimization_flag;
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_as_maximization() {
- this->maximization_minimization_flag = IOH_optimization_type::Maximization;
- for (int i = 0; i != this->number_of_objectives; ++i) {
- this->best_so_far_raw_objectives[i] = std::numeric_limits<double>::lowest();
- this->best_so_far_transformed_objectives[i] = std::numeric_limits<double>::lowest();
- }
-}
-
-template <class InputType> void IOHprofiler_problem<InputType>::IOHprofiler_set_as_minimization() {
- this->maximization_minimization_flag = IOH_optimization_type::Minimization;
- for (int i = 0; i != this->number_of_objectives; ++i) {
- this->best_so_far_raw_objectives[i] = std::numeric_limits<double>::max();
- this->best_so_far_transformed_objectives[i] = std::numeric_limits<double>::max();
- }
-}
-
↰ Return to documentation for file (src/Template/IOHprofiler_random.cpp
)
#include "IOHprofiler_random.h"
-
-long IOHprofiler_random::a = RND_MULTIPLIER;
-long IOHprofiler_random::m = RND_MODULUS;
-long IOHprofiler_random::q = RND_MODULUS_DIV;
-long IOHprofiler_random::r = RND_MOD_MULTIPLIER;
-
-int IOHprofiler_random::IOHprofiler_SHORT_LAG = IOHPROFILER_SHORT_LAG;
-int IOHprofiler_random::IOHprofiler_LONG_LAG = IOHPROFILER_LONG_LAG;
-
-IOHprofiler_random::IOHprofiler_random(uint32_t seed) {
- for (int i = 0; i < IOHprofiler_LONG_LAG; ++i) {
- x[i] = ((double)seed) / (double)(((uint64_t)1UL << 32) - 1);
- seed = (uint32_t)1812433253UL * (seed ^ (seed >> 30)) + ((uint32_t)i + 1);
- }
- _seed_index = 0;
-}
-
-void IOHprofiler_random::IOHprofiler_random_generate() {
- for (int i = 0; i < IOHprofiler_SHORT_LAG; ++i) {
- double t = this->x[i] + this->x[i + (IOHprofiler_LONG_LAG - IOHprofiler_SHORT_LAG)];
- if (t >= 1.0)
- t -= 1.0;
- this->x[i] = t;
- }
- for (int i = IOHprofiler_SHORT_LAG; i < IOHprofiler_LONG_LAG; ++i) {
- double t = this->x[i] + this->x[i - IOHprofiler_SHORT_LAG];
- if (t >= 1.0)
- t -= 1.0;
- this->x[i] = t;
- }
- this->_seed_index = 0;
-}
-
-long IOHprofiler_random::_lcg_rand(const long &inseed) {
-
- long new_inseed = (long)(a * (inseed - (long)floor((double)inseed / (double)q) * q) - r * (long)floor((double)inseed / (double)q));
- if (new_inseed < 0) {
- new_inseed = new_inseed + m;
- }
- return new_inseed;
-}
-
-void IOHprofiler_random::IOHprofiler_uniform_rand(const size_t &N, const long &inseed, std::vector<double> &rand_vec) {
- if (rand_vec.size() != 0) {
- std::vector<double>().swap(rand_vec);
- }
- rand_vec.reserve(N);
-
- long rand_seed[32];
- long seed;
- long rand_value;
-
- seed = inseed;
- if (seed < 0) {
- seed = -seed;
- }
- if (seed < 1) {
- seed = 1;
- }
-
- seed = inseed;
- for (int i = 39; i >= 0; --i) {
- seed = _lcg_rand(seed);
- if(i < 32) {
- rand_seed[i] = seed;
- }
- }
-
- int seed_index = 0;
- seed = rand_seed[0];
- for (int i = 0; i < N; ++i) {
- rand_value = _lcg_rand(seed);
-
- seed_index = (int)floor((double)seed / (double)67108865);
- seed = rand_seed[seed_index];
- rand_seed[seed_index] = rand_value;
-
- rand_vec.push_back((double)seed/2.147483647e9);
- if (rand_vec[i] == 0.) {
- rand_vec[i] = 1e-99;
- }
- }
-}
-
-std::vector<double> IOHprofiler_random::IOHprofiler_gauss(const size_t N, const long inseed) {
- std::vector<double> rand_vec;
- std::vector<double> uniform_rand_vec;
- rand_vec.reserve(N);
-
- long seed;
- long rand_value;
-
- seed = inseed;
- if (seed < 0) {
- seed = -seed;
- }
- if (seed < 1) {
- seed = 1;
- }
-
- IOHprofiler_uniform_rand(2 * N, seed,uniform_rand_vec);
-
- for (int i = 0; i < N; i++) {
- rand_vec.push_back(sqrt(-2 * log(uniform_rand_vec[i])) * cos(2 * IOH_PI * uniform_rand_vec[N + i]));
- if (rand_vec[i] == 0.) {
- rand_vec[i] = 1e-99;
- }
- }
- return rand_vec;
-}
-
-double IOHprofiler_random::IOHprofiler_uniform_rand() {
- if (this->_seed_index >= IOHprofiler_LONG_LAG) {
- IOHprofiler_random_generate();
- }
- return this->x[this->_seed_index++];
-}
-
-double IOHprofiler_random::IOHprofiler_normal_rand() { /* OMS: accessor - should become const */
- // double normal;
- // normal = 0.0;
- // for (int i = 0; i < 12; ++i) {
- // normal += this->IOHprofiler_uniform_rand();
- // }
- // normal -= 6.0;
- // return normal;
- double normal;
-#ifdef IOHprofiler_NORMAL_POLAR
- const double u1 = this->IOHprofiler_uniform_rand();
- const double u2 = this->IOHprofiler_uniform_rand();
- normal = sqrt(-2 * log(u1)) * cos(2 * IOH_PI * u2);
-#else
- int i;
- normal = 0.0;
- for (i = 0; i < 12; ++i) {
- normal += this->IOHprofiler_uniform_rand();
- }
- normal -= 6.0;
-#endif
- return normal;
-}
-
↰ Return to documentation for file (src/Template/IOHprofiler_random.h
)
#ifndef _IOHPROFILER_RANDOM_H
-#define _IOHPROFILER_RANDOM_H
-
-#include "IOHprofiler_common.h"
-#define IOHprofiler_NORMAL_POLAR /* Use polar transformation method */
-
-#define IOH_PI 3.14159265358979323846
-#define DEFAULT_SEED 1000
-
-
-#define RND_MULTIPLIER 16807
-#define RND_MODULUS 2147483647
-#define RND_MODULUS_DIV 127773
-#define RND_MOD_MULTIPLIER 2836
-
-#define IOHPROFILER_SHORT_LAG 273
-#define IOHPROFILER_LONG_LAG 607
-
-class IOHprofiler_random {
-public:
- IOHprofiler_random(uint32_t seed = DEFAULT_SEED);
-
- void IOHprofiler_random_generate();
-
- static long _lcg_rand(const long &inseed);
-
- static void IOHprofiler_uniform_rand(const size_t &N, const long &inseed, std::vector<double> &rand_vec);
-
- static std::vector<double> IOHprofiler_gauss(const size_t N, const long inseed);
-
- double IOHprofiler_uniform_rand();
-
- double IOHprofiler_normal_rand();
-
-private:
- size_t _seed_index;
-
- static long a;
- static long m;
- static long q;
- static long r;
-
- static int IOHprofiler_SHORT_LAG;
- static int IOHprofiler_LONG_LAG;
- double x[607];
-};
-
-#endif // _IOHPROFILER_RANDOM_H
-
↰ Return to documentation for file (src/Template/IOHprofiler_suite.h
)
#ifndef _IOHPROFILER_SUITE_H
-#define _IOHPROFILER_SUITE_H
-
-#include "IOHprofiler_class_generator.h"
-#include "IOHprofiler_problem.h"
-
-typedef std::map<std::string, int> PROBLEM_NAME_ID;
-typedef std::map<int, std::string> PROBLEM_ID_NAME;
-
-template <class InputType> class IOHprofiler_suite : public IOHprofiler_problem<InputType>, public std::vector<std::shared_ptr<IOHprofiler_problem<InputType> > > {
-public:
- IOHprofiler_suite(std::vector<int> problem_id = std::vector<int>(0), std::vector<int> instance_id = std::vector<int>(0), std::vector<int> dimension = std::vector<int>(0)) :
- suite_name("no suite"),
- problem_list_index(0),
- size_of_problem_list(0),
- get_problem_flag(false),
- load_problem_flag(false),
- current_problem(nullptr) {
- }
- ~IOHprofiler_suite() {}
-
- IOHprofiler_suite(const IOHprofiler_suite&) = delete;
- IOHprofiler_suite &operator =(const IOHprofiler_suite&) = delete;
-
- typedef std::shared_ptr<IOHprofiler_problem<InputType> > Problem_ptr;
-
- virtual void registerInSuite() {}
-
- void loadProblem();
-
- Problem_ptr get_next_problem();
-
- Problem_ptr get_current_problem();
-
-
- Problem_ptr get_problem(std::string problem_name, int instance, int dimension);
-
- Problem_ptr get_problem(int problem_id, int instance, int dimension);
-
- int IOHprofiler_suite_get_number_of_problems() const;
-
- int IOHprofiler_suite_get_number_of_instances() const;
-
- int IOHprofiler_suite_get_number_of_dimensions() const;
-
- std::vector<int> IOHprofiler_suite_get_problem_id() const;
-
- std::map<int, std::string> IOHprofiler_suite_get_problem_name() const;
-
- std::map<std::string, int> IOHprofiler_suite_get_problems() const;
-
- std::vector<int> IOHprofiler_suite_get_instance_id() const;
-
- std::vector<int> IOHprofiler_suite_get_dimension() const;
-
- std::string IOHprofiler_suite_get_suite_name() const;
-
- void IOHprofiler_set_suite_problem_id(const std::vector<int> &problem_id);
-
- void IOHprofiler_set_suite_instance_id(const std::vector<int> &instance_id);
-
- void IOHprofiler_set_suite_dimension(const std::vector<int> &dimension);
-
- void IOHprofiler_set_suite_name(const std::string suite_name);
-
- void mapIDTOName(const int id, const std::string name);
-
-private:
- std::string suite_name;
- int number_of_problems;
- int number_of_instances;
- int number_of_dimensions;
-
- std::vector<int> problem_id;
- std::vector<int> instance_id;
- std::vector<int> dimension;
-
- PROBLEM_ID_NAME problem_id_name_map;
- PROBLEM_NAME_ID problem_name_id_map;
-
- size_t problem_list_index;
- size_t size_of_problem_list;
- bool get_problem_flag;
- bool load_problem_flag;
-
- Problem_ptr current_problem;
-};
-
-#include "IOHprofiler_suite.hpp"
-
-#endif // _IOHPROFILER_SUITE_HPP
-
↰ Return to documentation for file (src/Template/IOHprofiler_suite.hpp
)
template <class InputType> void IOHprofiler_suite<InputType>::loadProblem() {
- if (this->size() != 0) {
- this->clear();
- }
- this->size_of_problem_list = this->number_of_dimensions * this->number_of_instances * this->number_of_problems;
- this->problem_list_index = 0;
-
- for (int i = 0; i != this->number_of_problems; ++i) {
- for (int j = 0; j != this->number_of_dimensions; ++j) {
- for (int h = 0; h != this->number_of_instances; ++h) {
- Problem_ptr p = get_problem(this->problem_id_name_map[this->problem_id[i]],
- this->instance_id[h],
- this->dimension[j]);
- this->push_back(p);
- }
- }
- }
- this->get_problem_flag = false;
- this->load_problem_flag = true;
-}
-
-template <class InputType> std::shared_ptr<IOHprofiler_problem<InputType> > IOHprofiler_suite<InputType>::get_next_problem() {
- if (this->load_problem_flag == false) {
- this->loadProblem();
- }
-
- if (this->size_of_problem_list == 0) {
- IOH_warning("There is no problem in the suite");
- return nullptr;
- }
-
- if (this->problem_list_index == this->size_of_problem_list - 1 && this->get_problem_flag == true) {
- return nullptr;
- }
-
- if (this->get_problem_flag == false) {
- this->get_problem_flag = true;
- } else {
- this->problem_list_index++;
- }
- this->current_problem = (*this)[problem_list_index];
-
- this->current_problem->reset_problem();
- return this->current_problem;
-}
-
-template <class InputType> std::shared_ptr<IOHprofiler_problem<InputType> > IOHprofiler_suite<InputType>::get_current_problem() {
- if (this->load_problem_flag == false) {
- this->loadProblem();
- }
-
- if (this->get_problem_flag == false) {
- this->get_problem_flag = true;
- }
- this->current_problem = (*this)[this->problem_list_index];
- this->current_problem->reset_problem();
- return this->current_problem;
-}
-
-template <class InputType> std::shared_ptr<IOHprofiler_problem<InputType> > IOHprofiler_suite<InputType>::get_problem(std::string problem_name, int instance, int dimension) {
- Problem_ptr p = genericGenerator<IOHprofiler_problem<InputType> >::instance().create(problem_name);
- p->reset_problem();
- p->IOHprofiler_set_problem_id(this->problem_name_id_map[problem_name]);
- p->IOHprofiler_set_instance_id(instance);
- p->IOHprofiler_set_number_of_variables(dimension);
- return p;
-}
-
-template <class InputType> std::shared_ptr<IOHprofiler_problem<InputType> > IOHprofiler_suite<InputType>::get_problem(int problem_id, int instance, int dimension) {
- Problem_ptr p = genericGenerator<IOHprofiler_problem<InputType> >::instance().create(this->problem_id_name_map[problem_id]);
- p->reset_problem();
- p->IOHprofiler_set_problem_id(problem_id);
- p->IOHprofiler_set_instance_id(instance);
- p->IOHprofiler_set_number_of_variables(dimension);
- return p;
-}
-
-template <class InputType> int IOHprofiler_suite<InputType>::IOHprofiler_suite_get_number_of_problems() const {
- return this->number_of_problems;
-}
-
-template <class InputType> int IOHprofiler_suite<InputType>::IOHprofiler_suite_get_number_of_instances() const {
- return this->number_of_instances;
-}
-
-template <class InputType> int IOHprofiler_suite<InputType>::IOHprofiler_suite_get_number_of_dimensions() const {
- return this->number_of_dimensions;
-}
-
-template <class InputType> std::vector<int> IOHprofiler_suite<InputType>::IOHprofiler_suite_get_problem_id() const {
- return this->problem_id;
-}
-
-template <class InputType> std::map<int, std::string> IOHprofiler_suite<InputType>::IOHprofiler_suite_get_problem_name() const {
- return this->problem_id_name_map;
-}
-
-template <class InputType> std::map<std::string, int> IOHprofiler_suite<InputType>::IOHprofiler_suite_get_problems() const {
- return this->problem_name_id_map;
-}
-
-template <class InputType> std::vector<int> IOHprofiler_suite<InputType>::IOHprofiler_suite_get_instance_id() const {
- return this->instance_id;
-}
-
-template <class InputType> std::vector<int> IOHprofiler_suite<InputType>::IOHprofiler_suite_get_dimension() const {
- return this->dimension;
-}
-
-template <class InputType> std::string IOHprofiler_suite<InputType>::IOHprofiler_suite_get_suite_name() const {
- return this->suite_name;
-}
-
-template <class InputType> void IOHprofiler_suite<InputType>::IOHprofiler_set_suite_problem_id(const std::vector<int> &problem_id) {
- copyVector(problem_id,this->problem_id);
- this->number_of_problems = this->problem_id.size();
-}
-
-template <class InputType> void IOHprofiler_suite<InputType>::IOHprofiler_set_suite_instance_id(const std::vector<int> &instance_id) {
- copyVector(instance_id,this->instance_id);
- this->number_of_instances = this->instance_id.size();
-}
-
-template <class InputType> void IOHprofiler_suite<InputType>::IOHprofiler_set_suite_dimension(const std::vector<int> &dimension) {
- copyVector(dimension,this->dimension);
- this->number_of_dimensions = this->dimension.size();
-}
-
-template <class InputType> void IOHprofiler_suite<InputType>::IOHprofiler_set_suite_name(const std::string suite_name) {
- this->suite_name = suite_name;
-}
-
-template <class InputType> void IOHprofiler_suite<InputType>::mapIDTOName(const int id, const std::string name){
- problem_id_name_map[id] = name;
- problem_name_id_map[name] = id;
-}
-
↰ Return to documentation for file (src/Template/IOHprofiler_transformation.cpp
)
#include "IOHprofiler_transformation.h"
-
-void IOHprofiler_transformation::variables_transformation(std::vector<int> &x, const int problem_id, const int instance_id, const std::string problem_type) {
- if (problem_type == "pseudo_Boolean_problem") {
- if (instance_id > 1 && instance_id <= 50) {
- this->transform_vars_xor(x,instance_id);
- } else if (instance_id > 50 && instance_id <= 100) {
- this->transform_vars_sigma(x,instance_id);
- }
- }
-}
-
-void IOHprofiler_transformation::variables_transformation(std::vector<double> &x, const int problem_id, const int instance_id, const std::string problem_type) {
- if (problem_type == "bbob") {
- coco_tranformation_vars(x,problem_id);
- }
-}
-
-void IOHprofiler_transformation::objectives_transformation(const std::vector<int> &x, std::vector<double> &y, const int problem_id, const int instance_id, const std::string problem_type) {
- if (problem_type == "pseudo_Boolean_problem") {
- if (instance_id > 1) {
- this->transform_obj_scale(y,instance_id);
- this->transform_obj_shift(y,instance_id);
- }
- }
-}
-
-void IOHprofiler_transformation::objectives_transformation(const std::vector<double> &x, std::vector<double> &y, const int problem_id, const int instance_id, const std::string problem_type) {
- if (problem_type == "bbob") {
- coco_tranformation_objs(x,y,problem_id);
- }
-}
-
-int IOHprofiler_transformation::xor_compute(const int x1, const int x2){
- return (int) (x1 != x2);
-}
-
-void IOHprofiler_transformation::transform_vars_xor(std::vector<int> &x, const int seed) {
- std::vector<double> random_x;
- int xor_value;
- int n = x.size();
- IOHprofiler_random::IOHprofiler_uniform_rand(n,seed, random_x);
- for (int i = 0; i < n; ++i) {
- xor_value = (int)(2 * floor(1e4 * random_x[i]) / 1e4);
- x[i] = xor_compute(x[i],xor_value);
- }
-}
-
-int IOHprofiler_transformation::sigma_compute(const std::vector<int> &x, const int pos) {
- return x[pos];
-}
-
-void IOHprofiler_transformation::transform_vars_sigma(std::vector<int> &x, const int seed) {
- std::vector<int> copy_x;
- std::vector<int> index;
- std::vector<double> random_x;
- int N = x.size(),t,temp;
-
- copy_x = x;
-
- index.reserve(N);
- for (int i = 0; i != N; ++i) {
- index.push_back(i);
- }
-
- IOHprofiler_random::IOHprofiler_uniform_rand(N,seed,random_x);
- for (int i = 0; i != N; ++i) {
- t = (int)floor(random_x[i] * N);
- temp = index[0];
- index[0] = index[t];
- index[t] = temp;
- }
- for (int i = 0; i < N; ++i) {
- x[i] = sigma_compute(copy_x,index[i]);
- }
-}
-
-void IOHprofiler_transformation::transform_obj_scale(std::vector<double> &y, const int seed) {
- std::vector<double> scale;
- IOHprofiler_random::IOHprofiler_uniform_rand(1,seed,scale);
- scale[0] = scale[0] * 1e4 / 1e4 * 4.8 + 0.2;
- for (int i = 0; i < y.size(); ++i) {
- y[i] = y[i] * scale[0];
- }
-}
-
-void IOHprofiler_transformation::transform_obj_shift(std::vector<double> &y, const int seed) {
- std::vector<double> shift;
- IOHprofiler_random::IOHprofiler_uniform_rand(1,seed,shift);
- shift[0] = shift[0] * 1e4 / 1e4 * 2000 - 1000;
- for (int i = 0; i < y.size(); ++i) {
- y[i] = y[i] + shift[0];
- }
-}
-
-void IOHprofiler_transformation::transform_obj_scale(double &y, const int seed) {
- std::vector<double> scale;
- IOHprofiler_random::IOHprofiler_uniform_rand(1,seed,scale);
- scale[0] = scale[0] * 1e4 / 1e4 * 4.8 + 0.2;
- y = y * scale[0];
-}
-
-void IOHprofiler_transformation::transform_obj_shift(double &y, const int seed) {
- std::vector<double> shift;
- IOHprofiler_random::IOHprofiler_uniform_rand(1,seed,shift);
- shift[0] = shift[0] * 1e4 / 1e4 * 2000 - 1000;
- y = y + shift[0];
-}
-
↰ Return to documentation for file (src/Template/IOHprofiler_transformation.h
)
#ifndef IOHPROFILER_TRANSFORMATION_H
-#define IOHPROFILER_TRANSFORMATION_H
-
-#include "IOHprofiler_common.h"
-#include "IOHprofiler_random.h"
-#include "coco_transformation.hpp"
-
-class IOHprofiler_transformation {
-public:
-
- void variables_transformation(std::vector<int> &x, const int problem_id, const int instance_id, const std::string problem_type);
-
- void variables_transformation(std::vector<double> &x, const int problem_id, const int instance_id, const std::string problem_type);
-
- void objectives_transformation(const std::vector<int> &x, std::vector<double> &y, const int problem_id, const int instance_id, const std::string problem_type);
-
- void objectives_transformation(const std::vector<double> &x, std::vector<double> &y, const int problem_id, const int instance_id, const std::string problem_type);
-
- static int xor_compute(const int x1, const int x2);
-
- void transform_vars_xor(std::vector<int> &x, const int seed);
-
- static int sigma_compute(const std::vector<int> &x, const int pos);
-
- void transform_vars_sigma(std::vector<int> &x, const int seed);
-
- void transform_obj_scale(std::vector<double> &y, const int seed);
-
- void transform_obj_shift(std::vector<double> &y, const int seed);
-
- void transform_obj_scale(double &y, const int seed);
-
- void transform_obj_shift(double &y, const int seed);
-};
-
-#endif //IOHPROFILER_TRANSFORMATION_H
-
↰ Return to documentation for file (src/Template/Loggers/IOHprofiler_csv_logger.cpp
)
#include "IOHprofiler_csv_logger.h"
-
-IOHprofiler_csv_logger::IOHprofiler_csv_logger() {
- this->output_directory = "./";
- this->folder_name = "IOHprofiler_test";
- this->algorithm_name = "algorithm";
- this->algorithm_info = "algorithm_info";
-}
-
-IOHprofiler_csv_logger::IOHprofiler_csv_logger(std::string directory, std::string folder_name,
- std::string alg_name, std::string alg_info) {
- this->output_directory = directory;
- this->folder_name = folder_name;
- this->algorithm_name = alg_name;
- this->algorithm_info = alg_info;
-}
-
-IOHprofiler_csv_logger::~IOHprofiler_csv_logger() {
- this->clear_logger();
-}
-
-bool IOHprofiler_csv_logger::folder_exist(std::string folder_name) {
- // #if defined(_WIN32) || defined(_WIN64) || defined(__MINGW64__) || defined(__CYGWIN__)
- // DWORD ftyp = GetFileAttributesA(folder_name.c_str());
- // if (ftyp & FILE_ATTRIBUTE_DIRECTORY)
- // return true;
- // else
- // return false;
- // #else
- // std::fstream _file;
- // _file.open(folder_name, std::ios::in);
- // if(!_file) {
- // return false;
- // } else {
- // return true;
- // }
- // #endif
-
- // Check for existence.
- #if defined(_WIN32) || defined(_WIN64) || defined(__MINGW64__) || defined(__CYGWIN__)
- if( _access(folder_name.c_str(), 0 ) != -1 ) {
- // Check for write permission.
- // Assume file is read-only.
- if( _access(folder_name.c_str(), 2 ) == -1 )
- return false;
- else
- return true;
- } else {
- return false;
- }
- #else
- if( access(folder_name.c_str(), F_OK ) == 0) {
- if( access(folder_name.c_str(), W_OK ) == 0)
- return true;
- else
- return false;
- } else {
- return false;
- }
- #endif
-}
-
-void IOHprofiler_csv_logger::activate_logger() {
- openIndex();
-}
-
-int IOHprofiler_csv_logger::openIndex() {
- std::string experiment_folder_name = IOHprofiler_experiment_folder_name();
- return IOHprofiler_create_folder(experiment_folder_name);
-}
-
-int IOHprofiler_csv_logger::IOHprofiler_create_folder(std::string folder_name) {
-#if defined(_WIN32) || defined(_WIN64) || defined(__MINGW64__) || defined(__CYGWIN__)
- if (mkdir(folder_name.c_str()) == 0) {
-#else
- if (mkdir(folder_name.c_str(),S_IRWXU) == 0) {
-#endif
- return 1;
- } else {
- IOH_error("Error on creating directory" + folder_name);
- return 0;
- }
-}
-
-std::string IOHprofiler_csv_logger::IOHprofiler_experiment_folder_name() {
- std::string renamed_directory = this->output_directory + IOHprofiler_path_separator + this->folder_name;
- std::string temp_folder_name = this->folder_name;
- int index = 0;
- //while (fs::exists(renamed_directory.c_str())) {
- while (folder_exist(renamed_directory) ) {
- ++index;
- temp_folder_name = this->folder_name + '-' + _toString(index);
- renamed_directory = this->output_directory + IOHprofiler_path_separator + temp_folder_name;
- }
- this->folder_name = temp_folder_name;
- return renamed_directory;
-}
-
-void IOHprofiler_csv_logger::write_header() {
- std::string sub_directory_name = this->output_directory + IOHprofiler_path_separator
- + this->folder_name + IOHprofiler_path_separator
- + "data_f" + _toString(problem_id)
- + "_" + problem_name;
-
- std::string dat_header = "\"function evaluation\" \"current f(x)\" \"best-so-far f(x)\" \"current af(x)+b\" \"best af(x)+b\"";
- if(this->logging_parameters.size() != 0) {
- for (std::map<std::string, std::shared_ptr<double> >::iterator iter = this->logging_parameters.begin(); iter != this->logging_parameters.end(); ++iter) {
- dat_header = dat_header + " \"" + iter->first + "\"";
- }
- }
-
- // if (!fs::exists(sub_directory_name.c_str())) {
- if (!folder_exist(sub_directory_name)) {
- IOHprofiler_create_folder(sub_directory_name.c_str());
- }
-
- if (complete_status()) {
- std::string cdat_name = sub_directory_name + IOHprofiler_path_separator
- + "IOHprofiler_f" + _toString(problem_id) + "_DIM"
- + _toString(dimension) + ".cdat";
-
- if (this->cdat.is_open()) {
- this->cdat.close();
- }
- this->cdat.open(cdat_name.c_str(),std::ofstream::out | std::ofstream::app);
- //this->cdat << dat_header << '\n';
- this->cdat_buffer = "";
- this->write_in_buffer(dat_header+"\n",this->cdat_buffer,this->cdat);
- }
-
- if (interval_status()) {
- std::string idat_name = sub_directory_name + IOHprofiler_path_separator
- + "IOHprofiler_f" + _toString(problem_id) + "_DIM"
- + _toString(dimension) + ".idat";
-
- if (this->idat.is_open()) {
- this->idat.close();
- }
- this->idat.open(idat_name.c_str(),std::ofstream::out | std::ofstream::app);
- //this->idat << dat_header << '\n';
- this->idat_buffer = "";
- this->write_in_buffer(dat_header+"\n",this->idat_buffer,this->idat);
- }
-
- if (update_status()) {
- std::string dat_name = sub_directory_name + IOHprofiler_path_separator
- + "IOHprofiler_f" + _toString(problem_id) + "_DIM"
- + _toString(dimension) + ".dat";
-
- if (this->dat.is_open()) {
- this->dat.close();
- }
- this->dat_buffer = "";
- this->dat.open(dat_name.c_str(),std::ofstream::out | std::ofstream::app);
- //this->dat << dat_header << '\n';
- this->write_in_buffer(dat_header+"\n",this->dat_buffer,this->dat);
- }
-
- if (time_points_status()) {
- std::string tdat_name = sub_directory_name + IOHprofiler_path_separator
- + "IOHprofiler_f" + _toString(problem_id) + "_DIM"
- + _toString(dimension) + ".tdat";
-
- if (this->tdat.is_open()) {
- this->tdat.close();
- }
- this->tdat_buffer = "";
- this->tdat.open(tdat_name.c_str(),std::ofstream::out | std::ofstream::app);
- //this->tdat << dat_header << '\n';
- this->write_in_buffer(dat_header+"\n",this->tdat_buffer,this->tdat);
- }
-}
-
-void IOHprofiler_csv_logger::track_problem(const int problem_id, const int dimension, const int instance, const std::string problem_name, const IOH_optimization_type maximization_minimization_flag){
- if (infoFile.is_open()) {
- write_info(this->instance, this->best_y[0], this->best_transformed_y[0], this->optimal_evaluations,
- this->last_y[0], this->last_transformed_y[0], this->last_evaluations);
- }
-
- this->optimal_evaluations = 0;
- this->last_evaluations = 0;
-
-
- if (maximization_minimization_flag == IOH_optimization_type::Maximization) {
- this->best_y.clear();
- this->best_y.push_back(-DBL_MAX);
- this->best_transformed_y.clear();
- this->best_transformed_y.push_back(-DBL_MAX);
- this->last_y.clear();
- this->last_y.push_back(-DBL_MAX);
- this->last_transformed_y.clear();
- this->last_transformed_y.push_back(-DBL_MAX);
- } else {
- this->best_y.clear();
- this->best_y.push_back(DBL_MAX);
- this->best_transformed_y.clear();
- this->best_transformed_y.push_back(DBL_MAX);
- this->last_y.clear();
- this->last_y.push_back(DBL_MAX);
- this->last_transformed_y.clear();
- this->last_transformed_y.push_back(DBL_MAX);
- }
-
- reset_observer(maximization_minimization_flag);
-
- this->problem_id = problem_id;
- this->dimension = dimension;
- this->instance = instance;
- this->problem_name = problem_name;
- this->maximization_minimization_flag = maximization_minimization_flag;
-
- openInfo(problem_id,dimension,problem_name);
- header_flag = false;
-}
-
-
-void IOHprofiler_csv_logger::track_problem(const IOHprofiler_problem<int> & problem) {
- // this->tracked_problem_int = nullptr;
- // this->tracked_problem_double = nullptr;
-
- this->track_problem(
- problem.IOHprofiler_get_problem_id(),
- problem.IOHprofiler_get_number_of_variables(),
- problem.IOHprofiler_get_instance_id(),
- problem.IOHprofiler_get_problem_name(),
- problem.IOHprofiler_get_optimization_type()
- );
-
- // this->problem_type = problem.IOHprofiler_get_problem_type();
- // this->tracked_problem_int = std::make_shared<IOHprofiler_problem<int> >(problem);
-}
-
-void IOHprofiler_csv_logger::track_problem(const IOHprofiler_problem<double> & problem) {
- // this->tracked_problem_int = nullptr;
- // this->tracked_problem_double = nullptr;
- this->track_problem(
- problem.IOHprofiler_get_problem_id(),
- problem.IOHprofiler_get_number_of_variables(),
- problem.IOHprofiler_get_instance_id(),
- problem.IOHprofiler_get_problem_name(),
- problem.IOHprofiler_get_optimization_type()
- );
-
- // this->problem_type = problem.IOHprofiler_get_problem_type();
- // this->tracked_problem_double = std::make_shared<IOHprofiler_problem<double> >(problem);
-}
-
-void IOHprofiler_csv_logger::track_suite(std::string suite_name){
- this->suite_name = suite_name;
-}
-
-void IOHprofiler_csv_logger::set_parameters(const std::vector<std::shared_ptr<double> > ¶meters) {
- if (this->logging_parameters.size() != 0) {
- this->logging_parameters.clear();
- }
-
- for (size_t i = 0; i != parameters.size(); i++) {
- this->logging_parameters["parameter" + _toString(i+1)] = parameters[i];
- }
-}
-
-void IOHprofiler_csv_logger::set_parameters(const std::vector<std::shared_ptr<double> > ¶meters, const std::vector<std::string> ¶meters_name) {
- if (parameters_name.size() != parameters.size()) {
- IOH_error("Parameters and their names are given with different size.");
- }
- if (this->logging_parameters.size() != 0) {
- this->logging_parameters.clear();
- }
- for (size_t i = 0; i != parameters.size(); i++) {
- this->logging_parameters[parameters_name[i]] = parameters[i];
- }
-}
-
-
-void IOHprofiler_csv_logger::set_parameters_name(const std::vector<std::string > ¶meters_name) {
- if (this->logging_parameters.size() != 0) {
- this->logging_parameters.clear();
- }
- //default value set as -9999.
- for (size_t i = 0; i != parameters_name.size(); i++) {
- this->logging_parameters[parameters_name[i]] = std::make_shared<double>(-9999);
- }
-}
-
-void IOHprofiler_csv_logger::set_parameters_name(const std::vector<std::string > ¶meters_name, const std::vector<double> &initial_parameters) {
- if (parameters_name.size() != initial_parameters.size()) {
- IOH_error("Parameters and their names are given with different size.");
- }
- //default value set as -9999.
- for (size_t i = 0; i != parameters_name.size(); i++) {
- this->logging_parameters[parameters_name[i]] = std::make_shared<double>(initial_parameters[i]);
- }
-}
-
-void IOHprofiler_csv_logger::set_parameters(const std::vector<std::string > ¶meters_name, const std::vector<double> ¶meters) {
- if (parameters_name.size() != parameters.size()) {
- IOH_error("Parameters and their names are given with different size.");
- }
- for (size_t i = 0; i != parameters_name.size(); ++i)
- if(this->logging_parameters.find(parameters_name[i]) != this->logging_parameters.end()) {
- *this->logging_parameters[parameters_name[i]] = parameters[i];
- } else {
- IOH_error("Parameter " + parameters_name[i] + " does not exist");
- }
-}
-
-void IOHprofiler_csv_logger::add_dynamic_attribute(const std::vector<std::shared_ptr<double> > &attributes) {
- if (this->attr_per_run_name_value.size() != 0) {
- this->attr_per_run_name_value.clear();
- }
-
- for (size_t i = 0; i != attributes.size(); i++) {
- this->attr_per_run_name_value["attr" + _toString(i+1)] = attributes[i];
- }
-}
-
-void IOHprofiler_csv_logger::add_dynamic_attribute(const std::vector<std::shared_ptr<double> > &attributes, const std::vector<std::string> &attributes_name) {
- if (attributes_name.size() != attributes.size()) {
- IOH_error("Attributes and their names are given with different size.");
- }
- if (this->attr_per_run_name_value.size() != 0) {
- this->attr_per_run_name_value.clear();
- }
- for (size_t i = 0; i != attributes.size(); i++) {
- this->attr_per_run_name_value[attributes_name[i]] = attributes[i];
- }
-}
-
-void IOHprofiler_csv_logger::set_dynamic_attributes_name(const std::vector<std::string > &attributes_name) {
- if (this->attr_per_run_name_value.size() != 0) {
- this->attr_per_run_name_value.clear();
- }
- //default value set as -9999.
- for (size_t i = 0; i != attributes_name.size(); i++) {
- this->attr_per_run_name_value[attributes_name[i]] = std::make_shared<double>(-9999);
- }
-}
-
-void IOHprofiler_csv_logger::set_dynamic_attributes_name(const std::vector<std::string > &attributes_name, const std::vector<double> &initial_attributes) {
- if (attributes_name.size() != initial_attributes.size()) {
- IOH_error("Attributes and their names are given with different size.");
- }
- //default value set as -9999.
- for (size_t i = 0; i != attributes_name.size(); i++) {
- this->attr_per_run_name_value[attributes_name[i]] = std::make_shared<double>(initial_attributes[i]);
- }
-}
-
-void IOHprofiler_csv_logger::set_dynamic_attributes(const std::vector<std::string > &attributes_name, const std::vector<double> &attributes) {
- if (attributes_name.size() != attributes.size()) {
- IOH_error("Attributes and their names are given with different size.");
- }
- for (size_t i = 0; i != attributes_name.size(); ++i)
- if(this->attr_per_run_name_value.find(attributes_name[i]) != this->attr_per_run_name_value.end()) {
- *this->attr_per_run_name_value[attributes_name[i]] = attributes[i];
- } else {
- IOH_error("Dynamic attributes " + attributes_name[i] + " does not exist");
- }
-}
-
-void IOHprofiler_csv_logger::do_log(const std::vector<double> & log_info) {
- this->write_line( (size_t)(log_info[0]),log_info[1],log_info[2],log_info[3],log_info[4]);
-};
-
-void IOHprofiler_csv_logger::write_line(const std::vector<double> & log_info) {
- this->write_line( (size_t)(log_info[0]),log_info[1],log_info[2],log_info[3],log_info[4]);
-};
-
-void IOHprofiler_csv_logger::write_line(const size_t evaluations, const double y, const double best_so_far_y,
- const double transformed_y, const double best_so_far_transformed_y) {
- if (header_flag == false) {
- this->write_header();
- header_flag = true;
- }
-
- this->last_evaluations = evaluations;
- this->last_y[0] = y;
- this->last_transformed_y[0] = transformed_y;
-
- bool cdat_flag = complete_trigger();
- bool idat_flag = interval_trigger(evaluations);
- bool dat_flag = update_trigger(transformed_y,maximization_minimization_flag);
- bool tdat_flag = time_points_trigger(evaluations);
-
- bool need_write = cdat_flag || idat_flag || dat_flag || tdat_flag;
-
- if (need_write) {
- std::string written_line = _toString(evaluations) + " " + _toString(y) + " "
- + _toString(best_so_far_y) + " " + _toString(transformed_y) + " "
- + _toString(best_so_far_transformed_y);
-
- if (this->logging_parameters.size() != 0) {
- for (std::map<std::string, std::shared_ptr<double> >::iterator iter = this->logging_parameters.begin(); iter != this->logging_parameters.end(); ++iter) {
- written_line += " ";
- written_line += _toString(*(iter->second));
- }
- }
-
- written_line += '\n';
-
- if (cdat_flag) {
- if (!this->cdat.is_open()) {
- IOH_error("*.cdat file is not open");
- }
- //this->cdat << written_line;
- this->write_in_buffer(written_line,this->cdat_buffer,this->cdat);
- }
-
- if (idat_flag) {
- if (!this->idat.is_open()) {
- IOH_error("*.idat file is not open");
- }
- //this->idat << written_line;
- this->write_in_buffer(written_line,this->idat_buffer,this->idat);
- }
-
- if (dat_flag) {
- if (!this->dat.is_open()) {
- IOH_error("*.dat file is not open");
- }
- //this->dat << written_line;
- this->write_in_buffer(written_line,this->dat_buffer,this->dat);
- }
-
- if (tdat_flag) {
- if (!this->tdat.is_open()) {
- IOH_error("*.tdat file is not open");
- }
- //this->tdat << written_line;
- this->write_in_buffer(written_line,this->tdat_buffer,this->tdat);
- }
- }
-
- if (compareObjectives(transformed_y,this->best_transformed_y[0],this->maximization_minimization_flag)) {
- this->update_logger_info(evaluations,y,transformed_y);
- }
-}
-
-void IOHprofiler_csv_logger::openInfo(int problem_id, int dimension, std::string problem_name) {
- this->info_buffer = "";
- std::string titleflag = "";
- std::string optimization_type;
- if (this->maximization_minimization_flag == IOH_optimization_type::Maximization) {
- optimization_type = "T";
- } else {
- optimization_type = "F";
- }
-
- if (problem_id != this->last_problem_id) {
- this->infoFile.close();
- std::string infoFile_name = this->output_directory + IOHprofiler_path_separator
- + this->folder_name + IOHprofiler_path_separator
- + "IOHprofiler_f" + _toString(problem_id)
- + "_" + problem_name
- + ".info";
- // if (fs::exists(infoFile_name.c_str())) {
- if (folder_exist(infoFile_name)) {
- titleflag = "\n";
- }
- this->infoFile.open(infoFile_name.c_str(),std::ofstream::out | std::ofstream::app);
- //this->infoFile << titleflag;
- this->info_buffer += titleflag;
- //this->infoFile << "suite = \"" << this->suite_name << "\", funcId = " << problem_id << ", funcName = \""<< problem_name << "\", DIM = " << dimension << ", maximization = \"" << optimization_type << "\", algId = \"" << this->algorithm_name << "\", algInfo = \"" << this->algorithm_info << "\"";
- this->info_buffer += ("suite = \"" + this->suite_name + "\", funcId = " + _toString(problem_id) + ", funcName = \"" + problem_name + "\", DIM = " + _toString(dimension) + ", maximization = \"" + optimization_type + "\", algId = \"" + this->algorithm_name + "\", algInfo = \"" + this->algorithm_info + "\"");
- if(this->attr_per_exp_name_value.size() != 0) {
- for (std::map<std::string,std::string>::iterator iter = this->attr_per_exp_name_value.begin(); iter != this->attr_per_exp_name_value.end(); iter++) {
- //this->infoFile << ", " << iter->first << " = \"" << iter->second << "\"";
- this->info_buffer += (", " + iter->first + " = \"" + iter->second + "\"");
- }
-
- }
- if (this->attr_per_run_name_value.size() != 0) {
- //this->infoFile << ", dynamicAttribute = \"";
- this->info_buffer += ", dynamicAttribute = \"";
- for (std::map<std::string,std::shared_ptr<double> >::iterator iter = this->attr_per_run_name_value.begin(); iter != this->attr_per_run_name_value.end();) {
- //this->infoFile << "|" << iter->first;
- this->info_buffer += (iter->first);
- if (++iter != this->attr_per_run_name_value.end()) {
- this->info_buffer += ("|");
- }
- }
- //this->infoFile << "\"";
- this->info_buffer += ("\"");
- }
- //this->infoFile << "\n%\n";
- this->info_buffer += ("\n%\n");
- //this->infoFile << "data_f" << problem_id << "_" << problem_name << "/IOHprofiler_f" << problem_id << "_DIM" << dimension << ".dat";
- this->info_buffer += ("data_f" + _toString(problem_id) + "_" + problem_name + "/IOHprofiler_f" + _toString(problem_id) + "_DIM" + _toString(dimension) + ".dat");
- this->write_stream(this->info_buffer,this->infoFile);
- this->info_buffer.clear();
-
- this->last_problem_id = problem_id;
- this->last_dimension = dimension;
- } else if (dimension != this->last_dimension) {
- //this->infoFile << "\nsuite = \"" << this->suite_name << "\", funcId = " << problem_id << ", funcName = \""<< problem_name << "\", DIM = " << dimension << ", maximization = \"" << optimization_type << "\", algId = \"" << this->algorithm_name << "\", algInfo = \"" << this->algorithm_info << "\"";
- this->info_buffer += ("\nsuite = \"" + this->suite_name + "\", funcId = " + _toString(problem_id) + ", funcName = \"" + problem_name + "\", DIM = " + _toString(dimension) + ", maximization = \"" + optimization_type + "\", algId = \"" + this->algorithm_name + "\", algInfo = \"" + this->algorithm_info + "\"");
- if(this->attr_per_exp_name_value.size() != 0) {
- for (std::map<std::string,std::string>::iterator iter = this->attr_per_exp_name_value.begin(); iter != this->attr_per_exp_name_value.end(); iter++) {
- //this->infoFile << ", " << iter->first << " = \"" << iter->second << "\"";
- this->info_buffer += (", " + iter->first + " = \"" + iter->second + "\"");
- }
- }
-
- if (this->attr_per_run_name_value.size() != 0) {
- //this->infoFile << ", dynamicAttribute = \"";
- this->info_buffer += (", dynamicAttribute = \"");
- for (std::map<std::string,std::shared_ptr<double> >::iterator iter = this->attr_per_run_name_value.begin(); iter != this->attr_per_run_name_value.end();) {
- //this->infoFile << "|" << iter->first;
- this->info_buffer += (iter->first);
- if (++iter != this->attr_per_run_name_value.end()) {
- this->info_buffer += ("|");
- }
- }
- //this->infoFile << "\"";
- this->info_buffer += "\"";
- }
- //this->infoFile << "\n%\n";
- this->info_buffer += "\n%\n";
- //this->infoFile << "data_f" << problem_id << "_" << problem_name << "/IOHprofiler_f" << problem_id << "_DIM" << dimension << ".dat";
- this->info_buffer += ("data_f" + _toString(problem_id) + "_" + problem_name + "/IOHprofiler_f" + _toString(problem_id) + "_DIM" + _toString(dimension) + ".dat");
- this->write_stream(this->info_buffer,this->infoFile);
- this->info_buffer.clear();
-
- this->last_problem_id = problem_id;
- this->last_dimension = dimension;
- }
-}
-
-void IOHprofiler_csv_logger::write_info(int instance, double best_y, double best_transformed_y, int evaluations,
- double last_y, double last_transformed_y, int last_evaluations) {
- if (!infoFile.is_open()) {
- IOH_error("write_info(): writing info into unopened infoFile");
- }
-
- this->info_buffer = "";
- //infoFile << ", " << instance << ":" << evaluations << "|" << best_y;
- this->info_buffer += (", " + _toString(instance) + ":" + _toString(evaluations) + "|" + _toString(best_y));
- if(this->attr_per_run_name_value.size() != 0) {
- this->info_buffer += (";");
- for (std::map<std::string,std::shared_ptr<double> >::iterator iter = this->attr_per_run_name_value.begin(); iter != this->attr_per_run_name_value.end(); ) {
- //this->infoFile << "|" << *(iter->second);
- this->info_buffer += (_toString(*(iter->second)));
- if (++iter != this->attr_per_run_name_value.end()) {
- this->info_buffer += ("|");
- }
- }
- }
- this->write_stream(this->info_buffer,this->infoFile);
- this->info_buffer.clear();
-
- bool need_write = (evaluations != last_evaluations);
- if (need_write) {
- std::string written_line = _toString(last_evaluations) + " " + _toString(last_y) + " "
- + _toString(best_y) + " " + _toString(last_transformed_y) + " "
- + _toString(best_transformed_y);
-
- if (this->logging_parameters.size() != 0) {
- for (std::map<std::string, std::shared_ptr<double> >::iterator iter = this->logging_parameters.begin(); iter != this->logging_parameters.end(); ++iter) {
- written_line += " ";
- written_line += _toString(*(iter->second));
- }
- }
-
- written_line += '\n';
- if (this->cdat.is_open()) {
- //this->cdat << written_line;
- this->write_in_buffer(written_line,this->cdat_buffer,this->cdat);
- this->write_stream(this->cdat_buffer,this->cdat);
- this->cdat.flush();
- this->cdat_buffer.clear();
- }
- if (this->idat.is_open()) {
- //this->idat << written_line;
- this->write_in_buffer(written_line,this->idat_buffer,this->idat);
- this->write_stream(this->idat_buffer,this->idat);
- this->idat.flush();
- this->idat_buffer.clear();
- }
- if (this->dat.is_open()) {
- //this->dat << written_line;
- this->write_in_buffer(written_line,this->dat_buffer,this->dat);
- this->write_stream(this->dat_buffer,this->dat);
- this->dat.flush();
- this->dat_buffer.clear();
- }
- if (this->tdat.is_open()) {
- //this->tdat << written_line;
- this->write_in_buffer(written_line,this->tdat_buffer,this->tdat);
- this->write_stream(this->tdat_buffer,this->tdat);
- this->tdat.flush();
- this->tdat_buffer.clear();
- }
- }
-
- if (this->cdat.is_open()) {
- this->write_stream(this->cdat_buffer,this->cdat);
- this->cdat.flush();
- this->cdat_buffer.clear();
- }
- if (this->idat.is_open()) {
- this->write_stream(this->idat_buffer,this->idat);
- this->idat.flush();
- this->idat_buffer.clear();
- }
- if (this->dat.is_open()) {
- this->write_stream(this->dat_buffer,this->dat);
- this->dat.flush();
- this->dat_buffer.clear();
- }
- if (this->tdat.is_open()) {
- this->write_stream(this->tdat_buffer,this->tdat);
- this->tdat.flush();
- this->tdat_buffer.clear();
- }
-}
-
-void IOHprofiler_csv_logger::write_stream(const std::string buffer_string, std::fstream & dat_stream) {
- dat_stream.write(buffer_string.c_str(),sizeof(char)*buffer_string.size());
- //dat_stream << buffer_string;
-}
-
-
-void IOHprofiler_csv_logger::write_in_buffer(const std::string add_string, std::string & buffer_string, std::fstream & dat_stream) {
- if (buffer_string.size() + add_string.size() < MAX_BUFFER_SIZE) {
- buffer_string = buffer_string + add_string;
- } else {
- write_stream(buffer_string,dat_stream);
- buffer_string.clear();
- buffer_string = add_string;
- }
-}
-
-
-void IOHprofiler_csv_logger::update_logger_info(size_t optimal_evaluations, double y, double transformed_y) {
- this->optimal_evaluations = optimal_evaluations;
- this->best_y[0] = y;
- this->best_transformed_y[0] = transformed_y;
-}
-
-
-void IOHprofiler_csv_logger::add_attribute(std::string name, double value) {
- this->attr_per_exp_name_value[name] = _toString(value);
-}
-
-void IOHprofiler_csv_logger::add_attribute(std::string name, int value) {
- this->attr_per_exp_name_value[name] = _toString(value);
-}
-
-void IOHprofiler_csv_logger::add_attribute(std::string name, float value) {
- this->attr_per_exp_name_value[name] = _toString(value);
-}
-
-void IOHprofiler_csv_logger::add_attribute(std::string name, std::string value) {
- this->attr_per_exp_name_value[name] = value;
-}
-
-void IOHprofiler_csv_logger::delete_attribute(std::string name) {
- this->attr_per_exp_name_value.erase(name);
-}
-
-void IOHprofiler_csv_logger::clear_logger() {
- if (infoFile.is_open()) {
- write_info(this->instance, this->best_y[0], this->best_transformed_y[0], this->optimal_evaluations,
- this->last_y[0], this->last_transformed_y[0], this->last_evaluations);
- infoFile.close();
- }
-
- if (cdat.is_open()) {
- cdat.close();
- }
- if (idat.is_open()) {
- idat.close();
- }
- if (dat.is_open()) {
- dat.close();
- }
- if (tdat.is_open()) {
- tdat.close();
- }
-
- // if(this->tracked_problem_double != nullptr) {
- // this->tracked_problem_double = nullptr;
- // }
-
- // if(this->tracked_problem_int != nullptr) {
- // this->tracked_problem_int = nullptr;
- // }
-}
-
↰ Return to documentation for file (src/Template/Loggers/IOHprofiler_csv_logger.h
)
#ifndef _IOHPROFILER_CSV_LOGGER_H
-#define _IOHPROFILER_CSV_LOGGER_H
-
-#include "IOHprofiler_observer.h"
-#include "IOHprofiler_problem.h"
-
-class IOHprofiler_csv_logger : public IOHprofiler_observer {
-public:
-
- IOHprofiler_csv_logger();
-
- IOHprofiler_csv_logger(std::string directory, std::string folder_name,
- std::string alg_name, std::string alg_info);
-
- ~IOHprofiler_csv_logger();
-
- bool folder_exist(std::string folder_name);
-
- void activate_logger();
-
- void clear_logger();
-
- void add_dynamic_attribute(const std::vector<std::shared_ptr<double> > &attributes);
-
- void add_dynamic_attribute(const std::vector<std::shared_ptr<double> > &attributes, const std::vector<std::string> &attributes_name);
-
- // Only for python wrapper.
- void set_dynamic_attributes_name(const std::vector<std::string> &attributes_name);
- void set_dynamic_attributes_name(const std::vector<std::string> &attributes_name, const std::vector<double > &initial_attributes);
- void set_dynamic_attributes(const std::vector<std::string> &attributes_name, const std::vector<double > &attributes);
-
- void add_attribute(std::string, int);
-
- void add_attribute(std::string, double);
-
- void add_attribute(std::string, float);
-
- void add_attribute(std::string, std::string);
-
- void delete_attribute(std::string);
-
-
- void track_problem(const int problem_id, const int dimension, const int instance, const std::string problem_name, const IOH_optimization_type maximization_minimization_flag);
-
-
- void track_problem(const IOHprofiler_problem<int> & problem);
-
- void track_problem(const IOHprofiler_problem<double> & problem);
-
- void track_suite(std::string suite_name);
-
- void openInfo(int problem_id, int dimension, std::string problem_name);
-
- void write_info(int instance, double best_y, double best_transformed_y, int evaluations,
- double last_y, double last_transformed_y, int last_evaluations);
-
- void write_line(const size_t evaluations, const double y, const double best_so_far_y,
- const double transformed_y, const double best_so_far_transformed_y);
-
- void do_log(const std::vector<double> &log_info);
-
- void write_line(const std::vector<double> &log_info);
-
- void update_logger_info(size_t optimal_evaluations, double y, double transformed_y);
-
- void set_parameters(const std::vector<std::shared_ptr<double> > ¶meters);
-
- void set_parameters(const std::vector<std::shared_ptr<double> > ¶meters, const std::vector<std::string> ¶meters_name);
-
- // Only for python wrapper.
- void set_parameters_name(const std::vector<std::string > ¶meters_name);
- void set_parameters_name(const std::vector<std::string > ¶meters_name, const std::vector<double> & initial_parameters);
- void set_parameters(const std::vector<std::string> ¶meters_name, const std::vector<double> ¶meters);
-
-private:
- // The information for directory.
- std::string folder_name;
- std::string output_directory;
-
- // The information for logging.
- std::string algorithm_name;
- std::string algorithm_info;
- IOH_optimization_type maximization_minimization_flag = IOH_optimization_type::Maximization;
- std::map<std::string, std::string> attr_per_exp_name_value;
- std::map<std::string, std::shared_ptr<double> > attr_per_run_name_value;
-
- std::string suite_name = "No suite";
-
- int dimension;
- int problem_id;
- int instance;
- std::string problem_name;
- //std::string problem_type;
-
- std::vector<double> best_y;
- std::vector<double> best_transformed_y;
- size_t optimal_evaluations;
- std::vector<double> last_y;
- std::vector<double> last_transformed_y;
- size_t last_evaluations;
-
- //std::vector<std::shared_ptr<double> > logging_parameters; /// < parameters to be logged as logging evaluation information.
- //std::vector<std::string> logging_parameters_name; /// < name of parameters to be logged as logging evaluation information.
- std::map<std::string, std::shared_ptr<double> > logging_parameters;
-
- // fstream
- std::fstream cdat;
- std::fstream idat;
- std::fstream dat;
- std::fstream tdat;
- std::fstream infoFile;
-
- std::string cdat_buffer;
- std::string idat_buffer;
- std::string dat_buffer;
- std::string tdat_buffer;
- std::string info_buffer;
-
- int last_dimension = 0;
- int last_problem_id = -1;
-
- std::string IOHprofiler_experiment_folder_name();
-
- int IOHprofiler_create_folder(const std::string path);
-
- bool header_flag;
-
- void write_header();
-
- void write_stream(const std::string buffer_string, std::fstream & dat_stream);
-
- void write_in_buffer(const std::string add_string, std::string & buffer_string, std::fstream & dat_stream);
-
- int openIndex();
-
- // std::shared_ptr<IOHprofiler_problem<int> > tracked_problem_int;
- // std::shared_ptr<IOHprofiler_problem<double> > tracked_problem_double;
-};
-
-#endif //_IOHPROFILER_CSV_LOGGER_H
-
↰ Return to documentation for file (src/Template/README.md
)
## Source codes of IOHexperimenter
-
-[This folder] includes common used codes of __IOHexperimenter__. For details of `IOHprofiler_problem` and `IOHprofiler_suite`, please visit [problem page](/src/Problems/) and [suite page](/src/Suites).
-
-### IOHprofiler_transformation
-
-IOHprofiler_transformation` defines methods of transformation applied on `IOHprofiler_problem`. For the definition of methods, please visit [wikipage](https://iohprofiler.github.io/Benchmark/Transformation/)
-
-### IOHprofiler_random
-
-__IOHexperimenter__ supplies methods of generating random numbers, which can be used to reproduce same experiments with the same random seed.
-
-`IOHprofiler_random` is a `class` of random methods, you can construct it with a specified random seed as:
-```cpp
-IOHprofiler_random(long seed);
-```
-
-And two random number generator methods are as follow.
-* <i>double IOHprofiler_uniform_rand()</i>, returns a random number from standard uniform distribution.
-* <i>double IOHprofiler_normal_rand()</i>, returns a random number from standard normal distribution.
-
-### IOHprofiler_observer
-
-`IOHprofiler_observer` defines triggers of recording evaluations, and __logger__ classes inherit it to set up the time of recording.
-
-Four strategies of recording evaluations are available,
-* __complete tracking__, provides the highest granularity, by storing information for each function evaluation. Use <i>set_complete_flag(true)</i> to enable this strategy,
-* __interval tracking__, stores information for each $\tau$-th function evaluation. Use <i>set_interval()</i> to set $\tau > 0$ to enable this stragety.
-* __target-based tracking__, stores information for each iteration in which the best-so-far fitness improved. Use <i>set_update_flag(true)</i> to enbale this stragety.
-* __time-based tracking__, stores information when the user-specified running time budgets are reached. These budget are evenly spaced in log-10 scale.
-
-### IOHprofier_class_generator
-
-`IOHprofiler_class_generator` supplied methods of registering and creating `IOHprofiler_problem` and `IOHprofiler_suite`.
-
Defined in File IOHprofiler_class_generator.h
Defined in File IOHprofiler_configuration.h
Defined in File IOHprofiler_suite.h
Defined in File IOHprofiler_suite.h
Defined in File f_gallagher101.hpp
F_GALLAGHER_PERMUTATION_T1
¶Defined in File f_gallagher21.hpp
F_GALLAGHER_PERMUTATION_T
¶Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LeadingOnes_Ruggedness2 > regLeadingOnes_Ruggedness2 ("LeadingOnes_Ruggedness2")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, Linear > regLinear ("Linear")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, OneMax_Ruggedness2 > regOneMax_Ruggedness2 ("OneMax_Ruggedness2")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, Ising_1D > regIsing_1D ("Ising_1D")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, OneMax_Epistasis > regOneMax_Epistasis ("OneMax_Epistasis")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LABS > regLABS ("LABS")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, NQueens > regNQueens ("NQueens")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LeadingOnes_Ruggedness3 > regLeadingOnes_Ruggedness3 ("LeadingOnes_Ruggedness3")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, OneMax > regOneMax ("OneMax")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LeadingOnes_Epistasis > regLeadingOnes_Epistasis ("LeadingOnes_Epistasis")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, Ising_Triangle > regIsing_Triangle ("Ising_Triangle")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LeadingOnes > regLeadingOnes ("LeadingOnes")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LeadingOnes_Ruggedness1 > regLeadingOnes_Ruggedness1 ("LeadingOnes_Ruggedness1")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, OneMax_Dummy2 > regOneMax_Dummy2 ("OneMax_Dummy2")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LeadingOnes_Dummy2 > regLeadingOnes_Dummy2 ("LeadingOnes_Dummy2")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, OneMax_Ruggedness1 > regOneMax_Ruggedness1 ("OneMax_Ruggedness1")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, OneMax_Ruggedness3 > regOneMax_Ruggedness3 ("OneMax_Ruggedness3")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LeadingOnes_Neutrality > regLeadingOnes_Neutrality ("LeadingOnes_Neutrality")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, OneMax_Dummy1 > regOneMax_Dummy1 ("OneMax_Dummy1")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, OneMax_Neutrality > regOneMax_Neutrality ("OneMax_Neutrality")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, MIS > regMIS ("MIS")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, Ising_2D > regIsing_2D ("Ising_2D")
Defined in File IOHprofiler_all_problems.hpp
registerInFactory< IOHprofiler_problem< int >, LeadingOnes_Dummy1 > regLeadingOnes_Dummy1 ("LeadingOnes_Dummy1")
Defined in File IOHprofiler_all_suites.hpp
registerInFactory< IOHprofiler_suite< int >, PBO_suite > regPBO ("PBO")
Defined in File IOHprofiler_all_suites.hpp
registerInFactory< IOHprofiler_suite< double >, BBOB_suite > regBBOB ("BBOB")
Defined in File IOHprofiler_configuration.h
Defined in File IOHprofiler_configuration.h
Defined in File IOHprofiler_platform.h
Defined in File IOHprofiler_problem.h
transformation
¶< transformation methods.
-Defined in File suite_bbob_legacy_code.hpp
- | - |
- | - |
- | - |
- | - |
- | - |
- | - |