[R] optimization problem

Hans W. Borchers hwborchers at googlemail.com
Tue Dec 2 02:21:58 CET 2008


Why not use one of the global optimizers in R, for instance 'DEoptim', and
then apply optim() to find the last six decimals? I am relatively sure that
the Differential Evolution operator has a better chance to come near a
global optimum than a loop over optim(), though 'DEoptim' may be a bit slow
(only for quite large numbers of parameters).

Regards,  Hans Werner



Mike Prager wrote:
> 
> tedzzx <zengzhenxing at gmail.com> wrote:
> 
>> 
>> If I want to find out the globle minia, how shoul I change my code?
> 
> I sometimes use optim() within a loop, with random starting
> values for each iteration of the loop. You can save the
> objective function value each time and pick the best solution.
> Last time I did that, I ran it 100 times.
> 
> That procedure does not guarantee finding the global minimum.
> However, it does make it *more likely* to find the global minmum
> *within the range of your starting values*.
> 
> Often, I make a boxplot of the various results. If they don't
> show a strong mode, there is a data or model problem that needs
> to be addressed. For example, the solution may be poorly defined
> by the data, or the model may be specified with confounded
> parameters.
> 
> -- 
> Mike Prager, NOAA, Beaufort, NC
> * Opinions expressed are personal and not represented otherwise.
> * Any use of tradenames does not constitute a NOAA endorsement.
> 
> ______________________________________________
> 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/optimization-problem-tp20730032p20784256.html
Sent from the R help mailing list archive at Nabble.com.



More information about the R-help mailing list