给定一个连续的凸单变量函数,我想在有界区间 [a,b] 内最小化它,我有什么选择?我可以访问数值导数,但不能访问解析导数。
这是在一个循环内完成的,该循环将运行任意多次,因此确实需要尽可能快。二分法既优雅又简单,但我怀疑您因为不利用凸性和斜率而错过了效率。
最佳答案
对于此设置,我会选择 Golden Section Search .
凸性意味着单峰性,这是此方法所需要的。
相反,此方法不需要导数。您可以通过数字方式找到导数,但这是“多函数评估”的另一种说法;不妨将它们用于黄金分割分区。
关于最小化单变量函数的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30773966/