Re: [R] Optimization

From: Prof Brian Ripley <>
Date: Mon, 18 Jun 2007 17:37:33 +0100 (BST)

>From the help page:


      'optim' will work with one-dimensional 'par's, but the default
      method does not work well (and will warn).  Use 'optimize'

Next, there is a constraint of x>=0 that you are not imposing.

Finally, it is easy to see that qnorm(0.7, 0.0032, x) is monotome in x, so the solution is x=0. In fact, x1 = 0.0032 + sqrt(x) * qnorm(0.7).

optim(0.0207, fr) does a good enough job, as does optimize(fr, low=0, up=0.05)

Advice: numerical optimization is not a black box, and has to be used with some analysis of the problem to hand. See e.g. MASS4, chapter 16.

On Mon, 18 Jun 2007, livia wrote:

> Hi, I would like to minimize the value of x1-x2, x2 is a fixed value of 0.01,
> x1 is the quantile of normal distribution (0.0032,x) with probability of
> 0.7, and the changing value should be x. Initial value for x is 0.0207. I am
> using the following codes, but it does not work.
> fr <- function(x) {
> x1<-qnorm(0.7,0.0032,x)
> x2=0.01
> x1-x2
> }
> xsd <- optim(0.0207, fr, NULL,method="BFGS")
> It is the first time I am trying to use optimization. Could anyone give me
> some advice?

Brian D. Ripley,        
Professor of Applied Statistics,
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________ mailing list
PLEASE do read the posting guide
and provide commented, minimal, self-contained, reproducible code.
Received on Mon 18 Jun 2007 - 17:04:22 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 Mon 18 Jun 2007 - 17:32:04 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.