Optimization for Everyone
A Python toolkit for experimenting with and comparing meta-heuristic optimization algorithms.Optimization for Everyone is an open-source Python application designed to make meta-heuristic optimization accessible, comparable, and visualizable. It was created to help researchers, students, and enthusiasts run, compare, and analyze optimization algorithms on standard benchmark problems with minimal setup.
View on GitHub →
Why this project?
Optimization is at the heart of engineering, AI, and applied mathematics. While there are many algorithms out there, comparing them side-by-side can be confusing or require heavy coding. This project provides:
- A simple interface to choose algorithms and benchmark functions.
- Automatic plotting of convergence curves.
- Exported results for reproducibility and later analysis.
Features
- Compare up to three algorithms simultaneously on a single convergence plot.
- Adjust algorithm parameters to test different hyperparameter settings.
- Includes a library of 16+ benchmark functions (e.g., Ackley, Sphere, Rastrigin).
- Saves results with detailed metadata: optimizer, function, run times, best value, and best solution.
- Support for custom objective functions defined in NumPy.
- Multiple built-in meta-heuristic algorithms (e.g., Genetic Algorithm, HHO, SMA).
- Cross-platform support (Linux, macOS, Windows).
- Licensed under MIT for free use and extension.