我正在尝试解决优化问题
有点稀疏(通常少于 5%),我可以有效地评估和。的 Hessian 矩阵的计算时间太长了。是一个凸的、非线性的、平滑的函数。
我尝试了 Matlab 的内置求解器fmincon,但即使我在具有 32GB 内存的系统上运行,我仍不断收到内存错误。我使用的确切 Matlab 设置是
options = optimoptions(@fmincon,'GradObj', 'on','SubproblemAlgorithm', 'cg', 'Display', 'iter','Hessian',{'lbfgs',20}, 'MaxIter', 50, 'Diagnostics', 'on');
[x,fval] = fmincon(@(x)myObjFunc(x),x0,A,b,[],[],lb,[],[],options);
如果有人可以推荐一个合适的开源求解器,我会非常高兴,我可以用它来解决这个问题 - 最好使用一些 Matlab 接口 - 甚至更好:Matlab 的更精细设置fmincon以规避内存问题。
我已经找到了tomopt包裹。但是,这不是开源的。如果我找不到任何开源替代品,我会检查一下。