Given a univariate problem where the maximum must be between -1 and 1, I would test with a grid of points, then refine that if necessary.
Patrick Burns [EMAIL PROTECTED] +44 (0)20 8525 0696 http://www.burns-stat.com (home of S Poetry and "A Guide for the Unwilling S User") Mike Lawrence wrote: >Hi all, > >Consider the following function: > >#### >my.func = function(x){ > y=ifelse(x>-.5,0,ifelse(x< -.8,abs(x)/2,abs(x))) > print(c(x,y)) #print what was tested and what the result is > return(y) >} >curve(my.func,from=-1,1) >#### > >When I attempt to find the maximum of this function, which should be >-.8, I find that optimize gets stuck in the plateau area and doesn't >bother testing the more interesting bits of the function: > >#### >optimize(my.func,interval=c(-1,1),maximum=TRUE) >#### > >I really don't understand why the search moves to the positive/ >constant area of the function and neglects the more negative area of >the function. On step #4, after finding that there is no difference >between tests at -.23, .23 & .52, shouldn't the algorithm try -.52? >In fact, it seems to me that it would make sense to try -.52 on step >3, so that we've tested one negative, one positive (found no >difference), now one negative again. Thoughts? > >Of course I could define my interval more reasonably for this >particular function, but this is in fact simply one of a class of >functions I'm exploring, none of which have known formal descriptions >as above (I'm exploring a large number of 'black boxes'). I do know >that the maximum must occur between -1 and 1 for all however. Please >advise on how I might use optimize more usefully. > >Mike > >-- >Mike Lawrence >Graduate Student, Department of Psychology, Dalhousie University > >Website: http://memetic.ca > >Public calendar: http://icalx.com/public/informavore/Public > >"The road to wisdom? Well, it's plain and simple to express: >Err and err and err again, but less and less and less." > - Piet Hein > >______________________________________________ >R-help@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. > > > > ______________________________________________ R-help@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.