[R] nlm's Hessian update method

Amy Willis amy.willis at anu.edu.au
Thu Sep 22 04:15:41 CEST 2011

Hi R-help!

I'm trying to understand how R's nlm function updates its estimate of the Hessian matrix. The Dennis/Schnabel book cited in the references presents a number of different ways to do this, and seems to conclude that the positive-definite secant method (BFGS) works best in practice (p201). However, when I run my code through the optim function with the method as "BFGS", slightly different estimates are produced to that of nlm:  

> optim(strt,jointll2,method="BFGS",hessian=T)$par
   -0.4016808     0.6057144     0.3744790    -7.1819734     3.0230386     0.4446641 

> nlm(jointll2,strt,hessian=T)$estimate
[1] -0.4016825  0.6057159  0.3744765 -7.1819737  3.0230386  0.4446623

Can anyone tell me if nlm employs the BFGS method for updating its estimates? Or does it use another algorithm?

Thank you!

More information about the R-help mailing list