2
0
mirror of https://github.com/boostorg/math.git synced 2026-01-19 04:22:09 +00:00

6 Commits

Author SHA1 Message Date
Tomato-in
af8ba3f7b2 Adjust parameter order in Differential Evolution algorithm
Problem Description
The optimization module implements four algorithms: Differential
Evolution, Algorithm jSO, Random Search, and Evolution Strategy with
Covariance Matrix Adaptation. All these algorithms accept seven
parameters: `cost_function`, `params`, `gen`, `value_to_reach`,
`cancellation`, `current_minimum_cost`, and `queries`. Unfortunately,
the Differential Evolution algorithm doesn't maintain parameter
consistency with the other three algorithms: the last two parameters
(`current_minimum_cost` and `queries`) are in reverse order compared to
the other algorithms. This appears to be an unintentional oversight.

Solution
- Adjust the parameter order in the Differential Evolution algorithm to ensure consistency with other optimization algorithms
- Update the algorithm documentation accordingly
(No changes to example code were needed as the examples don't use these two parameters)
2025-05-15 07:19:58 -07:00
Nick Thompson
b7a62c4a29 TLC for optimization docs 2024-02-12 14:23:01 -08:00
Nick Thompson
222d266048 CMA-ES 2024-02-09 12:09:53 -08:00
Nick
fccad84bf5 Random search (#1071) 2024-01-24 17:26:24 -08:00
Nick
a1f7a305ee Algorithm jSO (#1065)
Follows: Brest, Janez, Mirjam Sepesy Maucec, and Borko Boskovic. "Single objective real-parameter optimization: Algorithm jSO." 2017 IEEE congress on evolutionary computation (CEC). IEEE, 2017.
2024-01-22 14:06:52 -08:00
Nick
de9a1a0ee5 Fix race conditions in differential evolution (#1063)
Through a combination of silly mistakes, I missed a pile of race conditions in the OpenMP threading.

Switch to C++ threading. Note that this change requires serial generation of trial vectors.

Hopefully I can figure out to parallelize the generation of trial vectors to reduce the serial section a la Ahmdahl's law,
while simultaneously keeping thread sanitizer happy.
2024-01-17 10:20:41 -08:00