我正在尝试使用其中一个scipy minimizers来最小化一个函数。不幸的是,我的功能具有相同价值的平台,因此最小化器会卡在那里。我想知道哪个scipy优化器对此最不敏感,为什么?
我知道我可以在随机位置开始多次,但我无法用我目前正在处理的东西做这些,并且必须开箱即用这些最小化器。
答案 0 :(得分:0)
为您的函数添加坐标的线性函数,为平坦区域提供一些非零但非常小的斜率。如果你的最小值/最大值是在一个平坦的区域,你需要决定选择平坦区域的哪一部分作为你的最终答案,所以你不妨偏向整个搜索。在达到最小值/最大值后,以此为起点重新运行优化,不会增加偏差。
如果有办法确定搜索空间的边界,那么您可以尝试大量的起始位置来统一搜索搜索空间。