我一直在尝试将代码从 MATLAB 移植到 C++,并偶然发现了一个非常意想不到的困难。我似乎找不到与 MATLAB 的 fminunc 等效的 C++。
简单地说,问题定义是最小化 f(x),对于向量 x、标量函数 f(x) 和初始猜测 x_0。
到目前为止,我的搜索努力只发现了一个名为 MinPack 的库,它无法解决 f(x) 是标量而 x 是向量的情况。
当然,与时间一样古老的编程语言可以免费实现非线性优化的经典数值配方吗?还是我在这里过于乐观?即使是诸如梯度下降之类的基本方法也将是一个巨大的改进......