2

我正在尝试为一组我没有导数的黑盒函数(神经网络)实现优化器(尽管这可能与这个问题无关)。我想使用nlopt,所以我一直在阅读他们网站上的教程,该教程实现了一个具有非线性约束的简单目标函数。

在他们的例子中,约束函数是一组连续可微的多项式。约束可以说这个例子中的目标函数,这使得整个教程对于像我这样的非数学类型有点混乱。就我而言,我只想对每个维度施加固定的界限。

如何[a,b]在每个维度(以及任意数量的维度)上施加固定间隔nlopt

我知道教程中的约束函数还包括导数,我不确定如何或是否需要为我的固定区间约束函数提供导数。

4

1 回答 1

1

我应该阅读整个教程...

nlopt提供以下功能,专门用于施加固定约束:

nlopt_set_lower_bounds nlopt_set_upper_bounds

于 2016-08-28T03:02:05.020 回答