Greetings! I want to follow the evolution of a Nelder-Mead function minimisation (a function of 2 variables). Hence each simplex will have 3 vertices. Therefore I would like to have a function which can output the coordinates of the 3 vertices after each new simplex is generated. However, there seems to be no way (which I can detect) of extracting this information from optim() (the 'trace' argument to 'control' does not seem to have provision for this, according to '?optim', and I have tried it out without success). I have had a good search through the R resources without finding anything of the kind. Of course I could write my own implementation of Nelder-Mead in R, and generate the required output in my own way, but I would prefer to learn that this is already been done! Any suggestions? With thanks, Ted. -------------------------------------------------------------------- E-Mail: (Ted Harding) <Ted.Harding at manchester.ac.uk> Fax-to-email: +44 (0)870 094 0861 Date: 10-Oct-09 Time: 22:26:16 ------------------------------ XFMail ------------------------------
I have a pure-R implementation of the N-M simplex translated from the C code in Press et al 1994 (Numerical Recipes), instrumented to save the progress. Since I'm not sure of the copyright status (NR's code does not allow redistribution, but this is a translation ...) I'll send it in separate e-mail. Ted.Harding-2 wrote:> > Greetings! > I want to follow the evolution of a Nelder-Mead function > minimisation (a function of 2 variables). Hence each simplex > will have 3 vertices. > > Therefore I would like to have a function which can output > the coordinates of the 3 vertices after each new simplex > is generated. However, there seems to be no way (which I can > detect) of extracting this information from optim() (the 'trace' > argument to 'control' does not seem to have provision for this, > according to '?optim', and I have tried it out without success). > > I have had a good search through the R resources without finding > anything of the kind. > > Of course I could write my own implementation of Nelder-Mead in R, > and generate the required output in my own way, but I would prefer > to learn that this is already been done! > > Any suggestions? > With thanks, > Ted. > > -------------------------------------------------------------------- > E-Mail: (Ted Harding) <Ted.Harding at manchester.ac.uk> > Fax-to-email: +44 (0)870 094 0861 > Date: 10-Oct-09 Time: 22:26:16 > ------------------------------ XFMail ------------------------------ > > ______________________________________________ > 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/Nelder-Mead-with-output-of-simplex-vertices-tp25838572p25838614.html Sent from the R help mailing list archive at Nabble.com.
---------- begin included -------- Greetings! I want to follow the evolution of a Nelder-Mead function minimisation (a function of 2 variables). Hence each simplex will have 3 vertices. Therefore I would like to have a function which can output the coordinates of the 3 vertices after each new simplex is generated. However, there seems to be no way (which I can detect) of extracting this information from optim() (the 'trace' argument to 'control' does not seem to have provision for this, according to '?optim', and I have tried it out without success). --- end include ----- Why not put a cat() statement into "fn", the function that you supply which optim is calling? That will give the vertices that it tries one by one. Terry T.
Reasonably Related Threads
- evolution of Nelder-Mead process
- Improved Nelder-Mead algorithm - a potential replacement for optim's Nelder-Mead
- Constrained Nelder-Mead
- Define lower-upper bound for parameters in Optim using Nelder-Mead method
- Parameter scaling problems with optim and Nelder-Mead method (bug?)