Re: [R] difference between nlm and nlminb

From: Douglas Bates <bates_at_stat.wisc.edu>
Date: Wed, 11 Jun 2008 17:36:10 -0500

nlminb provides unconstrained optimization and optimization subject to box constraints (i.e. upper and/or lower constraints on individual elements of the parameter vector). The nlm function provides unconstrained optimization.

I created the nlminb function because I was unable to get reliable convergence on some difficult optimization problems for the nlme and lme4 packages using nlm and optim. The nlme package was originally written for S from Bell Labs (the forerunner of S-PLUS) and the PORT package was the optimization code used. Even though it is very old style Fortran code I find it quite reliable as an optimizer. It allows for what is called reverse communication which is convenient in an environment like R. It is a technical issue that has to do with what code is in control when your R expression needs to be evaluated.

That said, I still don't feel that I have seen good, modern Open-Source optimization code. I would welcome suggestions of where one might find such code.

On Wed, Jun 11, 2008 at 3:16 AM, DavidM.UK <david.merritt_at_bris.ac.uk> wrote:
>
> I believe nlminb() performs *constrained* optimization, where as nlm() is for
> *unconstrained* opimization
>
> So I guess nlm() is for solving min(f[a,b]), and nlminb() min(f[a,b]) given
> a+b <= c
>
> FYI I think optim() also does constrained optimization, well I've used for
> min(f[a,b]) given a <= a* and b <= b*.
>
> David
>
>
> ae2356 wrote:
>>
>>
>> Hi,
>>
>> I was wondering if someone could give a brief, big picture overview of the
>> difference between the two optimization functions nlm and nlminb. I'm not
>> familiar with PORT routines, so I was hoping someone could give an
>> explanation.
>>
>> Thanks,
>> Angelo
>> _________________________________________________________________
>> Instantly invite friends from Facebook and other social networks to join
>> yo
>> https://www.invite2messenger.net/im/?source=TXT_EML_WLH_InviteFriends
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help_at_r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>>
>
> --
> View this message in context: http://www.nabble.com/difference-between-nlm-and-nlminb-tp17769859p17772440.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help_at_r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>



R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Wed 11 Jun 2008 - 23:54:24 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Thu 12 Jun 2008 - 12:30:38 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive