我正在使用gnls
nlme
包的功能来拟合曲线。当我试着知道它正在使用什么样的优化器时,我被定向到nlminb
函数documentation并且声明:
使用PORT例程进行无约束和盒子约束优化。
我不知道什么是“PORT例程”。它是一系列优化算法还是只是一种称为“PORT例程”的优化算法?
任何人都可以请至少告诉我“例程”中的一些名字。例如,“梯度下降”,“Levenberg-Marquardt”或“信任区域”?
提前致谢!!
答案 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的评论)。