Open jmejia8 opened 1 year ago
New verbose
field in Options
f(x) = sum(x.^2)
optimize(f, [zeros(3) ones(3)], ECA, iterations=5, seed=1, verbose=true)
output
+-----------+------------+------------+------------+------------+
| Iteration | Num. Evals | Minimum | Time | Converged |
+-----------+------------+------------+------------+------------+
| 1 | 21 | 2.3077e-01 | 0.0441 s | No |
| 2 | 42 | 3.0642e-02 | 0.0442 s | No |
| 3 | 63 | 3.0642e-02 | 0.0443 s | No |
| 4 | 84 | 1.0031e-02 | 0.0444 s | No |
| 5 | 105 | 2.4834e-03 | 0.0444 s | No |
Due to https://github.com/jmejia8/Metaheuristics.jl/issues/78
User-defined RNG (https://github.com/jmejia8/Metaheuristics.jl/issues/24):
f(x) = sum(x.^2)
optimize(f, [zeros(3) ones(3)], ECA, rng = Random.Xoshiro(9))
output:
Optimization Result
===================
Iteration: 137
Minimum: 3.60251e-49
Minimizer: [5.43105e-25, 2.00561e-25, 1.58314e-25]
Function calls: 2877
Total time: 0.0808 s
Stop reason: Due to Convergence Termination criterion.
optimize(f, [zeros(3) ones(3)], ECA, rng = Random.MersenneTwister(9))
Optimization Result
===================
Iteration: 142
Minimum: 2.72803e-49
Minimizer: [4.09988e-25, 2.84557e-25, 1.54078e-25]
Function calls: 2982
Total time: 0.0115 s
Stop reason: Due to Convergence Termination criterion.
User defined termination criteria:
algo = ECA(termination = Metaheuristics.AbsoluteFunctionConvergence(ftol=1e-4) )
optimize(f, [zeros(3) ones(3)], algo)
Output:
Optimization Result
===================
Iteration: 14
Minimum: 9.07196e-06
Minimizer: [8.84653e-5, 0.000478301, 0.00297243]
Function calls: 294
Total time: 0.0010 s
Stop reason: Due to Convergence Termination criterion.
Install the unstable version hosted in the
develop
branch.Optimizers with default parameters
Pass parameters and
Options
via askargs...
is similar to
Using the
SearchSpaces
module to define search spaces.Termination criteria based on convergence
Other performance improvements
Clear message errors (https://github.com/jmejia8/Metaheuristics.jl/issues/65)
output: