nlopt 中的固定区间约束
Fixed interval constraints in nlopt
我正在尝试为一组我没有导数的黑盒函数(神经网络)实现一个优化器(虽然这可能与这个问题无关)。我想使用 nlopt
,所以我一直在阅读他们网站上的教程,该教程使用 Non linear constraints 实现了一个简单的 objective 函数。
在他们的例子中,约束函数是一组连续可微的多项式。约束可以说是 是 这个例子中的 objective 函数,这使得整个教程对于像我这样的非数学类型的人来说有点混乱。就我而言,我只想对每个维度施加固定界限。
如何在 nlopt
中的每个维度(以及任意数量的维度)上施加固定间隔 [a,b]
?
我知道教程中的约束函数也包含导数,但我不确定如何或是否需要为我的固定区间约束函数提供导数。
我应该读完整个教程...
nlopt
提供以下功能,专门用于施加固定约束:
nlopt_set_lower_bounds
nlopt_set_upper_bounds
我正在尝试为一组我没有导数的黑盒函数(神经网络)实现一个优化器(虽然这可能与这个问题无关)。我想使用 nlopt
,所以我一直在阅读他们网站上的教程,该教程使用 Non linear constraints 实现了一个简单的 objective 函数。
在他们的例子中,约束函数是一组连续可微的多项式。约束可以说是 是 这个例子中的 objective 函数,这使得整个教程对于像我这样的非数学类型的人来说有点混乱。就我而言,我只想对每个维度施加固定界限。
如何在 nlopt
中的每个维度(以及任意数量的维度)上施加固定间隔 [a,b]
?
我知道教程中的约束函数也包含导数,但我不确定如何或是否需要为我的固定区间约束函数提供导数。
我应该读完整个教程...
nlopt
提供以下功能,专门用于施加固定约束:
nlopt_set_lower_bounds
nlopt_set_upper_bounds