OptimSolution: A Cross-Platform Framework for Benchmarking, Sensitivity, and Complexity Analysis of Continuous Optimisation Methods
Abstract
1. Introduction
2. Related Work
3. Architecture and Design of OptimSolution
3.1. System Architecture
3.2. Installation Procedure and Example Run (v51)
cmake -S . -B build -G Ninja \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_PROJECT_INCLUDE=cmake/optimsolution_gui.cmake cmake --build build --target optimsolution_gui cmake --build build --target optimsolution ./build/optimsolution_gui ./build/optimsolution arq tersoffc |
cmake -S . -B build -G "Visual Studio 17 2022" -A x64 ‘ "-DCMAKE_PROJECT_INCLUDE:FILEPATH=$PWD/cmake/optimsolution_gui.cmake" ‘ "-DCMAKE_PREFIX_PATH=C:\Qt\6.10.1\msvc2022_64" cmake --build build --config Release --target optimsolution_gui cmake --build build --config Release --target optimsolution & "C:\Qt\6.10.1\msvc2022_64\bin\windeployqt.exe" ‘ --no-translations --compiler-runtime ‘ ".\build\Release\optimsolution_gui.exe" |
3.3. Extensibility Mechanism
| Listing 1. Auto-generated skeleton for a new benchmark problem (myproblem.h, myproblem.cpp) |
// src/problems/myproblem.h - auto-generated #pragma once #include "problem.h" namespace optimsolution { class MyProblem : public Problem { public: MyProblem(); void init(int dim) override; protected: double evaluate_core(const Vec& x) override; // USER FILLS IN void gradient_core(const Vec& x, Vec& g) override; // optional }; } // namespace optimsolution ------------------------------------------------------- // src/problems/myproblem.cpp - auto-generated skeleton #include "myproblem.h" #include <cmath> namespace optimsolution { MyProblem::MyProblem() { setName("myproblem"); setFullName("My Benchmark Problem"); } void MyProblem::init(int dim) { Problem::init(dim); Vec lo(dim, −5.12), hi(dim, 5.12); setBounds(lo, hi); } // USER IMPLEMENTS THIS FUNCTION ONLY double MyProblem::evaluate_core(const Vec& x) { // TODO: implement f(x). Example: Sphere double sum = 0.0; for (double xi : x) sum += xi × xi; return sum; } void MyProblem::gradient_core(const Vec& x, Vec& g) { g.assign(x.size(), 0.0); // TODO: implement gradient f(x) if gradient-based local search is desired } } // namespace optimsolution |
3.4. Additional Framework Features
4. Execution Modes and Analysis Features
4.1. Single Mode
4.2. Batch Mode
4.3. Method and Problem Sensitivity Analysis
4.4. GUI Execution Performance
4.5. Correctness Validation
5. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Floudas, C.A.; Pardalos, P.M. Encyclopedia of Optimization, 2nd ed.; Springer: New York, NY, USA, 2009. [Google Scholar]
- Holland, J.H. Adaptation in Natural and Artificial Systems; University of Michigan Press: Ann Arbor, MI, USA, 1975. [Google Scholar]
- Kennedy, J.; Eberhart, R.C. Particle swarm optimization. In Proceedings of the IEEE International Conference on Neural Networks, Perth, Australia, 1995; IEEE: Piscataway, NJ, USA, 1995; pp. 1942–1948. [Google Scholar] [CrossRef] [Scilit]
- Storn, R.; Price, K. Differential evolution—A simple and efficient heuristic for global optimization over continuous spaces. J. Glob. Optim. 1997, 11, 341–359. [Google Scholar] [CrossRef] [Scilit]
- Beiranvand, V.; Hare, W.; Lucet, Y. Best practices for comparing optimization algorithms. Optim. Eng. 2017, 18, 815–848. [Google Scholar] [CrossRef] [Scilit]
- Bartz-Beielstein, T.; Doerr, C.; van den Berg, D.; Bossek, J.; Chandrasekaran, S.; Eftimov, T.; Fischbach, A.; Kerschke, P.; La Cava, W.; Lopez-Ibanez, M.; et al. Benchmarking in Optimization: Best Practice and Open Issues. arXiv 2020, arXiv:2007.03488. [Google Scholar]
- Ojha, V.; Timmis, J.; Nicosia, G. Assessing ranking and effectiveness of evolutionary algorithm hyperparameters using global sensitivity analysis methodologies. arXiv 2022, arXiv:2207.04820. [Google Scholar]
- Hansen, N.; Auger, A.; Ros, R.; Mersmann, O.; Tušar, T.; Brockhoff, D. COCO: A platform for comparing continuous optimizers in a black-box setting. Optim. Methods Softw. 2021, 36, 114–144. [Google Scholar] [CrossRef] [Scilit]
- Doerr, C.; Wang, H.; Ye, F.; van Rijn, S.; Bäck, T. IOHprofiler: A benchmarking and profiling tool for iterative optimization heuristics. arXiv 2019, arXiv:1810.05281. [Google Scholar] [CrossRef] [Scilit]
- Rapin, J.; Teytaud, O. Nevergrad—A gradient-free optimization platform. ACM SIGEVOlution 2021, 14, 8–15. [Google Scholar] [CrossRef] [Scilit]
- Blank, J.; Deb, K. pymoo: Multi-objective optimization in Python. IEEE Access 2020, 8, 89497–89509. [Google Scholar] [CrossRef] [Scilit]
- Van Thieu, N.; Mirjalili, S. MEALPY: An open-source library for latest meta-heuristic algorithms in Python. J. Syst. Archit. 2023, 139, 102871. [Google Scholar] [CrossRef] [Scilit]
- Vrbančič, G.; Brezočnik, L.; Mlakar, U.; Fister, D.; Fister, I. NiaPy: Python microframework for building nature-inspired algorithms. J. Open Source Softw. 2018, 3, 613. [Google Scholar] [CrossRef] [Scilit]
- Van Thieu, N. Opfunu: An open-source Python library for optimization benchmark functions. J. Open Res. Softw. 2024, 12, 8. [Google Scholar] [CrossRef] [Scilit]
- Tsoulos, I.G.; Tzallas, A.; Karvounis, E. GlobalOptimus: An open-source optimization tool. J. Open Source Softw. 2025, 10, 7584. [Google Scholar] [CrossRef] [Scilit]
- Serré, G.; Kalogeratos, A.; Vayatis, N. GLOBe: A modular global optimization library. HAL Prepr. 2026, hal-05623801. Available online: https://hal.science/hal-05623801v1 (accessed on 28 June 2026).
- Wilcoxon, F. Individual comparisons by ranking methods. Biom. Bull. 1945, 1, 80–83. [Google Scholar] [CrossRef] [Scilit]
- Friedman, M. The use of ranks to avoid the assumption of normality implicit in the analysis of variance. J. Am. Stat. Assoc. 1937, 32, 675–701. [Google Scholar] [CrossRef] [Scilit]
- Rastrigin, L.A. Systems of Extremal Control; Nauka: Moscow, Russia, 1974. [Google Scholar]
- Rosenbrock, H.H. An automatic method for finding the greatest or least value of a function. Comput. J. 1960, 3, 175–184. [Google Scholar] [CrossRef] [Scilit]
- Ackley, D.H. A Connectionist Machine for Genetic Hillclimbing; Kluwer Academic Publishers: Boston, MA, USA, 1987. [Google Scholar] [CrossRef] [Scilit]
- Jamil, M.; Yang, X.S. A literature survey of benchmark functions for global optimization problems. Int. J. Math. Model. Numer. Optim. 2013, 4, 150–194. [Google Scholar] [CrossRef] [Scilit]
- Kumar, A.; Price, K.V.; Mohamed, A.W.; Hadi, A.A.; Suganthan, P.N. Problem Definitions and Evaluation Criteria for the CEC 2022 Special Session and Competition on Single Objective Bound Constrained Numerical Optimization; Technical Report; Nanyang Technological University: Singapore, 2021. [Google Scholar]
- Gaviano, M.; Kvasov, D.E.; Lera, D.; Sergeyev, Y.D. Algorithm 829: Software for generation of classes of test functions with known local and global minima for global optimization. ACM Trans. Math. Softw. 2003, 29, 469–480. [Google Scholar] [CrossRef] [Scilit]
- Das, S.; Suganthan, P.N. Problem Definitions and Evaluation Criteria for CEC 2011 Competition on Testing Evolutionary Algorithms on Real World Optimization Problems; Technical Report; Jadavpur University: Kolkata, India; Technological University: Singapore, 2011. [Google Scholar]
- Hansen, N.; Ostermeier, A. Adapting arbitrary normal mutation distributions in evolution strategies: The covariance matrix adaptation. In Proceedings of the IEEE International Conference on Evolutionary Computation, Nagoya, Japan, 1996; IEEE: Piscataway, NJ, USA, 1996; pp. 312–317. [Google Scholar] [CrossRef] [Scilit]
- Mirjalili, S.; Lewis, A. The whale optimization algorithm. Adv. Eng. Softw. 2016, 95, 51–67. [Google Scholar] [CrossRef] [Scilit]
- Mirjalili, S.; Mirjalili, S.M.; Lewis, A. Grey wolf optimizer. Adv. Eng. Softw. 2014, 69, 46–61. [Google Scholar] [CrossRef] [Scilit]
- Karaboga, D. An Idea Based on Honey Bee Swarm for Numerical Optimization; Technical Report TR06; Erciyes University: Kayseri, Turkey, 2005. [Google Scholar]
- Kirkpatrick, S.; Gelatt, C.D.; Vecchi, M.P. Optimization by simulated annealing. Science 1983, 220, 671–680. [Google Scholar] [CrossRef] [Scilit] [PubMed]
- Socha, K.; Dorigo, M. Ant colony optimization for continuous domains. Eur. J. Oper. Res. 2008, 185, 1155–1173. [Google Scholar] [CrossRef] [Scilit]
- Rao, R.V.; Savsani, V.J.; Vakharia, D.P. Teaching–learning-based optimization: A novel method for constrained mechanical design optimization problems. Comput.-Aided Des. 2011, 43, 303–315. [Google Scholar] [CrossRef] [Scilit]
- Rao, R. Jaya: A simple and new optimization algorithm for solving constrained and unconstrained optimization problems. Int. J. Ind. Eng. Comput. 2016, 7, 19–34. [Google Scholar] [CrossRef] [Scilit]
- Mirjalili, S. SCA: A sine cosine algorithm for solving optimization problems. Knowl.-Based Syst. 2016, 96, 120–133. [Google Scholar] [CrossRef] [Scilit]
- Yang, X.S. Firefly algorithm, stochastic test functions and design optimization. Int. J. Bio-Inspir. Comput. 2010, 2, 78–84. [Google Scholar] [CrossRef] [Scilit]
- Yang, X.S. A new metaheuristic bat-inspired algorithm. In Nature Inspired Cooperative Strategies for Optimization (NICSO 2010); González, J.R., Pelta, D.A., Cruz, C., Terrazas, G., Krasnogor, N., Eds.; Springer: Berlin/Heidelberg, Germany, 2010; pp. 65–74. [Google Scholar] [CrossRef] [Scilit]
- Geem, Z.W.; Kim, J.H.; Loganathan, G.V. A new heuristic optimization algorithm: Harmony search. Simulation 2001, 76, 60–68. [Google Scholar] [CrossRef] [Scilit]
- Yang, X.S.; Deb, S. Cuckoo search via Lévy flights. In Proceedings of the World Congress on Nature and Biologically Inspired Computing (NaBIC 2009), Coimbatore, India, 2009; IEEE: Piscataway, NJ, USA, 2009; pp. 210–214. [Google Scholar] [CrossRef] [Scilit]
- Li, S.; Chen, H.; Wang, M.; Heidari, A.A.; Mirjalili, S. Slime mould algorithm: A new method for stochastic optimization. Future Gener. Comput. Syst. 2020, 111, 300–323. [Google Scholar] [CrossRef] [Scilit]
- Faramarzi, A.; Heidarinejad, M.; Mirjalili, S.; Gandomi, A.H. Marine predators algorithm: A nature-inspired metaheuristic. Expert Syst. Appl. 2020, 152, 113377. [Google Scholar] [CrossRef] [Scilit]
- Faramarzi, A.; Heidarinejad, M.; Stephens, B.; Mirjalili, S. Equilibrium optimizer: A novel optimization algorithm. Knowl.-Based Syst. 2020, 191, 105190. [Google Scholar] [CrossRef] [Scilit]
- Heidari, A.A.; Mirjalili, S.; Faris, H.; Aljarah, I.; Mafarja, M.; Chen, H. Harris hawks optimization: Algorithm and applications. Future Gener. Comput. Syst. 2019, 97, 849–872. [Google Scholar] [CrossRef] [Scilit]
- Mirjalili, S. Moth-flame optimization algorithm: A novel nature-inspired heuristic paradigm. Knowl.-Based Syst. 2015, 89, 228–249. [Google Scholar] [CrossRef] [Scilit]
- Mirjalili, S. The ant lion optimizer. Adv. Eng. Softw. 2015, 83, 80–98. [Google Scholar] [CrossRef] [Scilit]
- Eskandar, H.; Sadollah, A.; Bahreininejad, A.; Hamdi, M. Water cycle algorithm—A novel metaheuristic optimization method for solving constrained engineering optimization problems. Comput. Struct. 2012, 110–111, 151–166. [Google Scholar] [CrossRef] [Scilit]
- Gandomi, A.H.; Alavi, A.H. Krill herd: A new bio-inspired optimization algorithm. Commun. Nonlinear Sci. Numer. Simul. 2012, 17, 4831–4845. [Google Scholar] [CrossRef] [Scilit]
- Hashim, F.A.; Houssein, E.H.; Hussain, K.; Mabrouk, M.S.; Al-Atabany, W. Honey badger algorithm: New metaheuristic algorithm for solving optimization problems. Math. Comput. Simul. 2022, 192, 84–110. [Google Scholar] [CrossRef] [Scilit]
- Brest, J.; Maučec, M.S.; Bošković, B. Single objective real-parameter optimization: Algorithm jSO. In Proceedings of the IEEE Congress on Evolutionary Computation (CEC), San Sebastián, Spain, 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1311–1318. [Google Scholar] [CrossRef] [Scilit]
- Chauhan, D.; Trivedi, A.; Shivani. A Multi-operator Ensemble LSHADE with Restart and Local Search Mechanisms for Single-objective Optimization. arXiv 2024, arXiv:2409.15994. [Google Scholar] [CrossRef] [Scilit]
- Stanovov, V.; Akhmedova, S.; Semenkin, E. NL-SHADE-LBC algorithm with linear parameter adaptation bias change for CEC 2022 numerical optimization. In Proceedings of the IEEE Congress on Evolutionary Computation (CEC), Padua, Italy, 2022; IEEE: Piscataway, NJ, USA, 2022; pp. 1–8. [Google Scholar] [CrossRef] [Scilit]
- Bujok, P.; Kolenovsky, P. Eigen crossover in cooperative model of evolutionary algorithms applied to CEC 2022 single objective numerical optimization. In Proceedings of the IEEE Congress on Evolutionary Computation (CEC), Padua, Italy, 2022; IEEE: Piscataway, NJ, USA, 2022; pp. 1–8. [Google Scholar] [CrossRef] [Scilit]
- Fletcher, R. A new approach to variable metric algorithms. Comput. J. 1970, 13, 317–322. [Google Scholar] [CrossRef] [Scilit]
- Liu, D.C.; Nocedal, J. On the limited memory BFGS method for large scale optimization. Math. Program. 1989, 45, 503–528. [Google Scholar] [CrossRef] [Scilit]
- Nelder, J.A.; Mead, R. A simplex method for function minimization. Comput. J. 1965, 7, 308–313. [Google Scholar] [CrossRef] [Scilit]
- Gianni, A.M.; Tsoulos, I.G.; Charilogis, V.; Kyrou, G. Enhancing Differential Evolution: A Dual Mutation Strategy with Majority Dimension Voting and New Stopping Criteria. Symmetry 2025, 17, 844. [Google Scholar] [CrossRef] [Scilit]
- Charilogis, V.; Tsoulos, I.G.; Stavrou, V.N. An Intelligent Technique for Initial Distribution of Genetic Algorithms. Axioms 2023, 12, 980. [Google Scholar] [CrossRef] [Scilit]
- McKay, M.D.; Beckman, R.J.; Conover, W.J. A comparison of three methods for selecting values of input variables in the analysis of output from a computer code. Technometrics 1979, 21, 239–245. [Google Scholar] [CrossRef] [Scilit]
- Charilogis, V.; Tsoulos, I.G. Introducing a Parallel Genetic Algorithm for Global Optimization Problems. AppliedMath 2024, 4, 709–730. [Google Scholar] [CrossRef] [Scilit]
- Kyrou, G.; Tsoulos, I.G.; Gianni, A.M.; Charilogis, V. Parallel Smell Agent Optimization (SAO): Collaborative Subpopulations for Accelerated Convergence. Symmetry 2025, 17, 592. [Google Scholar] [CrossRef] [Scilit]
- Salawudeen, A.T.; Mu’azu, M.B.; Sha’aban, Y.A.; Adedokun, A.E. A novel Smell Agent Optimization (SAO): An extensive CEC study and engineering application. Knowl.-Based Syst. 2021, 232, 107486. [Google Scholar] [CrossRef] [Scilit]
- Charilogis, V.; Tsoulos, I.G.; Gianni, A.M.; Tsalikakis, D. ARQ: A cohesive optimization design for stable performance on noisy landscapes. Appl. Sci. 2025, 15, 12180. [Google Scholar] [CrossRef] [Scilit]
- Charilogis, V.; Tsoulos, I.G.; Gianni, A.M. ARQ2: Toward Stability-Aware Hybrid Optimization on Complex and Noisy Search Problems. Symmetry 2026, 18, 844. [Google Scholar] [CrossRef] [Scilit]
- Zhan, Z.H.; Zhang, J.; Li, Y.; Chung, H.S.H. Adaptive particle swarm optimization. IEEE Trans. Syst. Man Cybern. 2009, 39, 1362–1381. [Google Scholar] [CrossRef] [Scilit] [PubMed]













| Feature | OptimSolution | COCO/BBOB | IOHprofiler | Nevergrad | Pymoo | MEALPY | NiaPy | Opfunu | OPTIMUS | GLOBe |
|---|---|---|---|---|---|---|---|---|---|---|
| Language | C++/Qt | C/Python | C++/R | Python | Python | Python | Python | Python | C++ | C++/Python |
| Platform | Linux, Win, Mac | Linux, Win, Mac | Linux, Win, Mac | Linux, Win, Mac | Linux, Win, Mac | Linux, Win, Mac | Linux, Win, Mac | Linux, Win, Mac | Linux, Win, Mac | Linux, Win, Mac |
| GUI | ✓ | ✗ | ~ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
| CLI | ✓ | ✓ | ✓ | ~ | ✗ | ✗ | ✗ | ✗ | ✓ | ✗ |
| Single run | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ~ | ✓ | ✓ |
| Batch mode | ✓ | ✓ | ✓ | ✓ | ~ | ~ | ~ | ✗ | ~ | ✓ |
| Sensitivity (method) | ✓ | ✗ | ✗ | ✗ | ~ | ✗ | ✗ | ✗ | ✗ | ✗ |
| Sensitivity (problem) | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
| Complexity analysis | ✓ | ~ | ✗ | ✗ | ✗ | ~ | ✗ | ✗ | ✗ | ✗ |
| Convergence plot | ✓ | ~ | ✓ | ~ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ |
| Distribution plot | ✓ | ~ | ~ | ~ | ~ | ✗ | ✗ | ✗ | ✗ | ✗ |
| Statistical tests | ✓ | ~ | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
| Export CSV/PNG | ✓ | ✓ | ✓ | ~ | ~ | ~ | ~ | ✗ | ~ | ~ |
| GUI extensible | ✓ | ✗ | ~ | ✗ | ✗ | ✗ | ✗ | ✗ | ~ | ~ |
| Random benchmarks | ✗ | ~ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✓ |
| Python API | ✗ | ✓ | ~ | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ | ✓ |
| Problem | DE Reference | DE OptimSolution | PSO Reference | PSO OptimSolution | CMA-ES Reference | CMA-ES OptimSolution |
|---|---|---|---|---|---|---|
| Sphere | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | 0 | 0 | ||
| Rastrigin | 45.3 | 16.461 | 89.4 | 52.602 | 8.2 | 0 |
| 12.7 | 8.225 | 18.3 | 13.115 | 6.1 | 0 | |
| Rosenbrock | 27.6 | 23.311 | 142.3 | 16.036 | 4.1 | 0.133 |
| 14.2 | 1.433 | 67.4 | 1.813 | 3.8 | 0.728 | |
| Ackley | 0 | 1.4 | 0.599 | 0 | 0 | |
| 0 | 0.8 | 0.777 | 0 | 0 | ||
| Griewank | 0.0045 | 0.08 | 0.014 | 0 | 0 | |
| 0.0102 | 0.04 | 0.018 | 0 | 0 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license.
Share and Cite
Charilogis, V.; Tsoulos, I.G.; Gianni, A.M. OptimSolution: A Cross-Platform Framework for Benchmarking, Sensitivity, and Complexity Analysis of Continuous Optimisation Methods. Software 2026, 5, 28. https://doi.org/10.3390/software5030028
Charilogis V, Tsoulos IG, Gianni AM. OptimSolution: A Cross-Platform Framework for Benchmarking, Sensitivity, and Complexity Analysis of Continuous Optimisation Methods. Software. 2026; 5(3):28. https://doi.org/10.3390/software5030028
Chicago/Turabian StyleCharilogis, Vasileios, Ioannis G. Tsoulos, and Anna Maria Gianni. 2026. "OptimSolution: A Cross-Platform Framework for Benchmarking, Sensitivity, and Complexity Analysis of Continuous Optimisation Methods" Software 5, no. 3: 28. https://doi.org/10.3390/software5030028
APA StyleCharilogis, V., Tsoulos, I. G., & Gianni, A. M. (2026). OptimSolution: A Cross-Platform Framework for Benchmarking, Sensitivity, and Complexity Analysis of Continuous Optimisation Methods. Software, 5(3), 28. https://doi.org/10.3390/software5030028

