我正在尝试为一组我没有导数的黑盒函数(神经网络)实现一个优化器(虽然这可能与这个问题无关)。我想使用 nlopt
,所以我一直在阅读他们网站上的教程,该教程使用 Non linear constraints 实现了一个简单的目标函数。 .
在他们的示例中,约束函数是一组连续可微的多项式。可以说,约束是这个例子中的目标函数,这使得整个教程对于像我这样的非数学类型的人来说有点困惑。就我而言,我只想对每个维度施加固定界限。
如何在 nlopt
中的每个维度(以及任意数量的维度)上施加固定间隔 [a,b]
?
我意识到本教程中的约束函数还包含导数,但我不确定如何或是否需要为我的固定区间约束函数提供导数。
最佳答案
我应该阅读整个教程...
nlopt
提供了以下功能,专门用于施加固定约束:
nlopt_set_lower_bounds
nlopt_set_upper_bounds
关于c - nlopt 中的固定区间约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39187574/