|
1 | | -#include <cecxx/mdspan.hpp> |
2 | | -#include <cstdlib> |
3 | | -#include <print> |
4 | | -#include <ranges> |
5 | | -#include <vector> |
| 1 | +// #include <cecxx/mdspan.hpp> |
| 2 | +// #include <cstdlib> |
| 3 | +// #include <print> |
| 4 | +// #include <ranges> |
| 5 | +// #include <vector> |
| 6 | +// |
| 7 | +// #include <cecxx/benchmark/evaluator.hpp> |
| 8 | +// |
| 9 | +// namespace rn = std::ranges; |
| 10 | +// namespace rv = std::ranges::views; |
| 11 | +// using namespace cecxx::benchmark; |
| 12 | +// |
| 13 | +// auto main() -> int { |
| 14 | +// try { |
| 15 | +// const auto dimensions = std::vector{10uz, 30uz, 50uz, 100uz}; |
| 16 | +// |
| 17 | +// // Create an evaluator object for the CEC2017 benchmark |
| 18 | +// auto cec_2017 = evaluator(cec_edition_t::cec2017, dimensions, DATA_STORAGE_PATH); |
| 19 | +// |
| 20 | +// // Create problem grid [problem_number X dimension] |
| 21 | +// const auto problem_grid = rv::cartesian_product(dimensions, rv::iota(1, 30)); |
| 22 | +// |
| 23 | +// // Evaluate given input on each optimization problem from CEC2017/D{10, 30, 50, 100} |
| 24 | +// for (const auto &[dim, fn] : problem_grid) { |
| 25 | +// // Prepare input matrix [dim x 2] |
| 26 | +// const auto input = rv::repeat(0.0) | rv::take(2 * dim) | rn::to<std::vector<double>>(); |
| 27 | +// const auto mat = cecxx::mdspan{input.data(), dim, 2}; |
| 28 | +// |
| 29 | +// const auto output = cec_2017(fn, mat); |
| 30 | +// std::println("dim = {}, fn = {}, output[0] = {}, output[1] = {}", dim, fn, output[0], output[1]); |
| 31 | +// } |
| 32 | +// } catch (std::exception &e) { |
| 33 | +// std::println("Failed: {}", e.what()); |
| 34 | +// return EXIT_FAILURE; |
| 35 | +// } |
| 36 | +// return EXIT_SUCCESS; |
| 37 | +// } |
6 | 38 |
|
7 | | -#include <cecxx/benchmark/evaluator.hpp> |
8 | | - |
9 | | -namespace rn = std::ranges; |
10 | | -namespace rv = std::ranges::views; |
11 | | -using namespace cecxx::benchmark; |
12 | | - |
13 | | -auto main() -> int { |
14 | | - try { |
15 | | - const auto dimensions = std::vector{10uz, 30uz, 50uz, 100uz}; |
16 | | - |
17 | | - // Create an evaluator object for the CEC2017 benchmark |
18 | | - auto cec_2017 = evaluator(cec_edition_t::cec2017, dimensions, DATA_STORAGE_PATH); |
19 | | - |
20 | | - // Create problem grid [problem_number X dimension] |
21 | | - const auto problem_grid = rv::cartesian_product(dimensions, rv::iota(1, 30)); |
22 | | - |
23 | | - // Evaluate given input on each optimization problem from CEC2017/D{10, 30, 50, 100} |
24 | | - for (const auto &[dim, fn] : problem_grid) { |
25 | | - // Prepare input matrix [dim x 2] |
26 | | - const auto input = rv::repeat(0.0) | rv::take(2 * dim) | rn::to<std::vector<double>>(); |
27 | | - const auto mat = cecxx::mdspan{input.data(), dim, 2}; |
28 | | - |
29 | | - const auto output = cec_2017(fn, mat); |
30 | | - std::println("dim = {}, fn = {}, output[0] = {}, output[1] = {}", dim, fn, output[0], output[1]); |
31 | | - } |
32 | | - } catch (std::exception &e) { |
33 | | - std::println("Failed: {}", e.what()); |
34 | | - return EXIT_FAILURE; |
35 | | - } |
36 | | - return EXIT_SUCCESS; |
37 | | -} |
| 39 | +auto main() -> int { } |
0 commit comments