Algorithm name in nlminb's PORT routines? [duplicate]
Asked Answered
A

1

6

I'm using gnls function of nlme package to fit a curve. When I try to know what optimizer it was using, I was directed to nlminb function documentation and it states:

Unconstrained and box-constrained optimization using PORT routines.

I don't know what is "PORT routines". Is it a series of optimization algorithms or it's just an optimization algorithm called "PORT routines"?

Can anyone please at least tell me some names in the "routines". For example, "gradient descent", "Levenberg–Marquardt", or "trust region"?

Thanks in advance!!

Altruist answered 20/3, 2018 at 3:19 Comment(4)
Quasi Newton BFGS .Writing
@ErwinKalvelagen Thank you!! And do you know why is this algorithm called "port routines"? What is their relationship...? I'm just curiousAltruist
It was a Fortran mathematical subroutine library designed to be portable over different types of computers.Writing
@ErwinKalvelagen Hi Mr./Mrs. I have another question of "gnls" package, I would appreciate it if you'd like to have a look: #49393098Altruist
C
9

nlminb is an unconstrained and bounds-constrained quasi-Newton method optimizer. This code is based on a FORTRAN PORT library by David Gay in the Bell Labs designed to be portable over different types of computer (from comments by Erwin Kalvelagen). See more here (Section 2).

L-BFGS-B & BFGS, being a member of quasi-Newton family methods, are the closest analogs of nlminb "adaptive nonlinear least-squares algorithm".

You can see the original report at An Adaptive Nonlinear Least-Squares Algorithm by J.E. Dennis, Jr., David M. Gay, Roy E. Welsch (thanks to Ben Bolker's comment).

Corrugation answered 9/10, 2018 at 12:53 Comment(2)
PDF of the original report: dtic.mil/get-tr-doc/pdf?AD=ADA079716Torsion
@Ben Bolker, thanks. I'll incorparate into the answer (however this exact link is not accessible).Corrugation

© 2022 - 2024 — McMap. All rights reserved.