Latest recommendations for global optimization

One place where this isn’t fully applicable is that Julia code is much more likely to use gradient based methods since autodiff often “just works”

For local search I agree. But the combination of gradient based methods with homological global intrigues me

Porting it might be an fun project, it’s doesn’t look horribly complex (there’s some more code in libs though) :

https://github.com/scipy/scipy/blob/v1.5.3/scipy/optimize/_shgo.py

What is the state of the art on global optimization these days? Just wanted to see if there are major updates on this topic.

Maybe Baron and SHOT.

For the reference, I find the “Global Optimization Benchmarks” by Andrea Gavana (updated in 2021) quite useful.

Since he is working in Python, not all tested algorithms can be used easily in Julia, but at least CRS2 and DIRECT from NLopt can be used with NLopt.jl. Too bad that the MLSL multistart algorithm recommended by @stevengj is not included in the benchmark.

http://infinity77.net/go_2021/

1 Like

Looks like we have a variation on the winner (MCS) here :

2 Likes

It would be nice to get a version of that benchmark on the SciMLBenchmarks with Optimization.jl so we can extend it to all of the solvers there and have it run on a reproducible open machine automatically each time a new PR is opened. I’d need some help getting it started though.

Perhaps a first issue is that the benchmark, although well documented, is not open source (unless I missed the link to the source code).

Neither are the algorithms specifically implemented in Python by the author (AMPGO, BiteOpt or MCS which @jonathanBieler mentioned to be “the winner”).

Apparently it’s a straight translation of the original Matlab code, not sure that makes it easier to run though…

http://infinity77.net/go_2021/mcs.html#mcs

Theoretically, there are reasons to hope that QuadDIRECT is even better than MCS, but I’d love to be able to test that (many "probably"s founder on the rocks of reality).

1 Like

By the way, I just came across a quite recent (2020) open access discussion of the many possible paths for extending the original 1993 DIRECT, by its author:

10 Likes

What an exceptionally well written article.

1 Like