[R] optimizing with non-linear constraints

Ravi Varadhan ravi.varadhan at jhu.edu
Thu Oct 1 15:17:07 CEST 2015


I would recommend that you use auglag() rather than constrOptim.nl() in the package "alabama."  It is a better algorithm, and it does not require feasible starting values.
Best,
Ravi  

-----Original Message-----
From: Rainer M Krug [mailto:Rainer at krugs.de] 
Sent: Thursday, October 01, 2015 3:37 AM
To: Ravi Varadhan <ravi.varadhan at jhu.edu>
Cc: 'r-help at r-project.org' <r-help at r-project.org>
Subject: Re: optimizing with non-linear constraints

Ravi Varadhan <ravi.varadhan at jhu.edu> writes:

> Hi Rainer,
> It is very simple to specify the constraints (linear or nonlinear) in 
> "alabama" .  They are specified in a function called `hin', where the 
> constraints are written such that they are positive.

OK - I somehow missed the part that, when the values x are valid, i.e. in the range as defined by the conditions, the result of hin(x) that they are all positive.

> Your two nonlinear constraints would be written as follows:
>
> hin <- function(x, LAI) {
> h <- rep(NA, 2)
> h[1] <- LAI^x[2] / x[3] + x[1]
> h[2] <- 1 - x[1] - LAI^x[2] / x[3]
> h
> }

Makes perfect sense.

>
> Please take a look at the help page.  If it is still not clear, you can contact me offline.

Yup - I did. But I somehow missed the fact stated above.

I am using constrOptim() and constrOptim.nl() for a paper and am compiling a separate document which explains how to get the constraints for the two functions step by step - I will make it available as a blog post and a pdf.

I might have further questions concerning the different fitting functions and which ones are the most appropriate in my case.

Thanks a lot,

Rainer


> Best,
> Ravi
>
> Ravi Varadhan, Ph.D. (Biostatistics), Ph.D. (Environmental Engg) 
> Associate Professor,  Department of Oncology Division of Biostatistics 
> & Bionformatics Sidney Kimmel Comprehensive Cancer Center Johns 
> Hopkins University
> 550 N. Broadway, Suite 1111-E
> Baltimore, MD 21205
> 410-502-2619
>
>
> 	[[alternative HTML version deleted]]
>

--
Rainer M. Krug
email: Rainer<at>krugs<dot>de
PGP: 0x0F52F982



More information about the R-help mailing list