Ken: (1) Thanks for pointing out this approach and for implementing it. Unfortunately, I was not able to locate your code at Github. I would certainly try it out on some of my examples in global optimization.
(2) Did you include (or do you plan to include) the improvements of MinFinder, as discussed in "MinFinder 2.0: An improved version of MinFinder" by Tsoulos and Lagaris? (3) Also this article contains examples of functions with many local minima. Most of these are test functions for global optimization procedures. Did you test your function on these examples? I have implemented some of these functions for my own purposes. I wonder whether it would be useful to have a Julia package of its own for compiling optimization test functions. (4) Are you sure/Is it guaranteed MinFinder will *reliably* find *all* local minima? This is a difficult problem, and for example there is a long discussion on this topic in Chapter 4, by Stan Wagon, in the book "The SIAM 100 Digit Challenge" about all the preventive measures to be taken to be able to guarantee to find all local minima -- and thus also the one global minimum. On Sunday, July 27, 2014 8:26:31 AM UTC+2, Ken B wrote: > > Hi Charles, > > You can have a look at the MinFinder algorithm for which I've just created > a pull request to Optim.jl (talk about a coincidence!): > https://github.com/JuliaOpt/Optim.jl/pull/72 > > I'd like to add the possibility to run each optimization in parallel, but > I have no experience with these things, although I have time to learn :). > Would you like to collaborate on this? > > Does anyone know of some parallel sample code to have a look at? Basically > it's sending each optimization problem to a separate worker and getting the > results, taking into account that some optimizations might take much longer > than others. > > Cheers, > Ken > > On Saturday, 26 July 2014 23:13:28 UTC-5, Charles Martineau wrote: >> >> Yes I could do that but it is simpler (I think) to execute the code in >> parallel instead of sending 20 codes to be executed on the cluste.r >> >> On Saturday, July 26, 2014 10:08:20 AM UTC-7, Michael Prentiss wrote: >>> >>> What you are doing makes sense. Starting from multiple starting points >>> is important. >>> >>> I am curious why you just don't just run 20 different 1-processor jobs >>> instead of bothering with the parallelism? >>> >>> >>> On Saturday, July 26, 2014 11:22:07 AM UTC-5, Iain Dunning wrote: >>>> >>>> The idea is to call the optimize function multiple times in parallel, >>>> not to call it once and let it do parallel multistart. >>>> >>>> Check out the "parallel map and loops" section of the parallel >>>> programming chapter in the Julia manual, I think it'll be clearer there. >>>> >>>> On Friday, July 25, 2014 8:00:40 PM UTC-4, Charles Martineau wrote: >>>>> >>>>> Thank you for your answer. So I would have to loop over, say 20 random >>>>> set of starting points, where in my loop I would use the Optim package to >>>>> minimize my MLE function for each random set. Where online is the >>>>> documents >>>>> that shows how to specify that we want the command >>>>> >>>>> Optim.optimize(my function, etc.) to be parallelized? Sorry for my >>>>> ignorance, I am new to Julia! >>>>> >>>>> >>>>> On Friday, July 25, 2014 2:04:08 PM UTC-7, Iain Dunning wrote: >>>>>> >>>>>> I'm not familiar with that particular package, but the Julia way to >>>>>> do it could be to use the Optim.jl package and create a random set of >>>>>> starting points, and do a parallel-map over that set of starting points. >>>>>> Should work quite well. Trickier (maybe) would be to just give each >>>>>> processor a different random seed and generate starting points on each >>>>>> processor. >>>>>> >>>>>> On Friday, July 25, 2014 3:05:05 PM UTC-4, Charles Martineau wrote: >>>>>>> >>>>>>> Dear Julia developers and users, >>>>>>> >>>>>>> I am currently using in Matlab the multisearch algorithm to find >>>>>>> multiple local minima: >>>>>>> http://www.mathworks.com/help/gads/multistart-class.html for a MLE >>>>>>> function. >>>>>>> I use this Multisearch in a parallel setup as well. >>>>>>> >>>>>>> Can I do something similar in Julia using parallel programming? >>>>>>> >>>>>>> Thank you >>>>>>> >>>>>>> Charles >>>>>>> >>>>>>>
