Skip to content

Non-linear minimization

3 messages · Sébastien Ballesteros, Uwe Ligges, Dimitris Rizopoulos

#
hello, I have got some trouble with R functions nlm(),
nls() or optim() : I would like to fit 3 parameters
which must stay in a precise interval. For exemple
with nlm() :

fn<-function(p) sum((dN-estdata(p[1],p[2],p[3]))^2)
out<-nlm(fn, p=c(4, 17, 5),
hessian=TRUE,print.level=2)

with estdata() a function which returns value to fit
with dN (observed data vactor)

My problem is that only optim() allows me to set
parameters interval with "L-BFGS-B" method but this
one doesn't work in my case.

I have heard about nls2 package (www.inra.fr/bia) but
it doesn't work on Windows.

Do you know any solutions

Thank's a lot for reading my post

Best regards

Sebastien
INA P-G ecology dpt
#
S?bastien Ballesteros wrote:
"it doesn't work on Windows" is a very gentle description in this 
particular case...
A typical trick is to redefine the function so that for points outside 
the boundaries increasing penalties are added (if you know enough about 
your function).

Uwe Ligges
#
maybe you could re-parameterize the problem, e.g.,

p \in (a, b)
p^* = (p - a) / (b - a) \in (0, 1)
x = qlogis(p^*) \in \Re

I hope it helps.

Best,
Dimitris

----
Dimitris Rizopoulos
Ph.D. Student
Biostatistical Centre
School of Public Health
Catholic University of Leuven

Address: Kapucijnenvoer 35, Leuven, Belgium
Tel: +32/16/336899
Fax: +32/16/337015
Web: http://www.med.kuleuven.ac.be/biostat/
     http://www.student.kuleuven.ac.be/~m0390867/dimitris.htm



----- Original Message ----- 
From: "S?bastien Ballesteros" <sebastien_ballesteros at yahoo.fr>
To: <r-help at stat.math.ethz.ch>
Sent: Tuesday, March 08, 2005 2:23 PM
Subject: [R] Non-linear minimization