nlminb的PORT例程中的算法名称?

时间:2018-03-20 03:19:49

标签: r nonlinear-optimization nlme

我正在使用gnls nlme包的功能来拟合曲线。当我试着知道它正在使用什么样的优化器时,我被定向到nlminb函数documentation并且声明:

  

使用PORT例程进行无约束和盒子约束优化。

我不知道什么是“PORT例程”。它是一系列优化算法还是只是一种称为“PORT例程”的优化算法?

任何人都可以请至少告诉我“例程”中的一些名字。例如,“梯度下降”,“Levenberg-Marquardt”或“信任区域”?

提前致谢!!

1 个答案:

答案 0 :(得分:4)

nlminb是不受约束且受边界约束的拟牛顿方法优化器。该代码基于Bell Labs的David Gay的FORTRAN PORT库,该库旨在在不同类型的计算机上实现便携式(摘自Erwin Kalvelagen的评论)。

L-BFGS-B和BFGS是准牛顿族方法的一部分,它们是nlminb“自适应非线性最小二乘算法”的最接近类似物。

您可以在An Adaptive Nonlinear Least-Squares Algorithm by J.E. Dennis, Jr., David M. Gay, Roy E. Welsch上查看原始报告(感谢Ben Bolker的评论)。