替代Scipy的全局优化方法

huangapple go评论64阅读模式
英文:

Alternatives to Scipy in Global optimization

问题

我正在尝试找到一个多元函数的全局最小值(ndim = 9)。该函数具有非常窄的底部,X的轻微变化会导致输出值迅速上升。我尝试了各种scipy方法,如differential_evolutionbasin_hoppingdual_annealingshgo。它们表现得相当不错,但我仍然最终陷入了局部最小值而不是绝对全局最小值。

您建议尝试哪些其他软件包/算法?

英文:

I'm trying to find a global minimum of a multivariate function (ndim = 9). The function has very narrow bottoms and a slight change to the X causes the output value to rise quite quickly. I tried various scipy methods, like differential_evolution, basin_hopping, dual_annealing, shgo. They perform quite well, but I still end up in the local minimum rather than the absolute global minimum.

What other packages/algorithms would you suggest trying?

答案1

得分: 1

你可以尝试使用nlopt。我已经使用过它几次,主要用于局部优化,大部分情况下是在C++中(它还有Python绑定),但看起来它可能也具有一些SciPy没有的全局优化算法。我不确定它是否会更好,但也许值得一试。祝你好运!

英文:

You could try nlopt. I've used it a few times, mostly for local optimization and mostly in C++ (it also has Python bindings), but it looks like it also might have some global optimization algorithms that SciPy doesn't. I'm not sure if it will be better, but perhaps worth a shot. Good luck!

huangapple
  • 本文由 发表于 2023年7月20日 15:32:24
  • 转载请务必保留本文链接:https://go.coder-hub.com/76727610.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定