Parallel Optimization: Loop or Finite-Difference Gradient
1 view (last 30 days)
Show older comments
According to the documentation on parallel optimization, one cannot use the 'UseParallel' option inside a 'parfor' loop.
I am optimizing a very messy likelihood function over 32 parameters w/ fmincon. Unfortunately I run the optimization around 1,000 times each at a different initial point.
Would it be more computationally efficient to parallelize the finite-difference gradient calculation, or parallelize the loop of 1,000 calls to fmincon.
Thanks!
PS I have 25 cores available to me.
1 Comment
Walter Roberson
on 20 Jan 2017
Edited: Walter Roberson
on 20 Jan 2017
Is what you are doing really a global optimization? If so then the tools such as MultiStart in Global Optimization Toolbox would seem appropriate. Or patternsearch.
Answers (1)
Alan Weiss
on 23 Jan 2017
It is very difficult to know which way would work better. Can you test a small set of representative points and see which way is faster?
Sorry for the lack of info, but parallel processing is hard to predict, as there are a lot of things that go into its performance, or lack thereof.
Alan Weiss
MATLAB mathematical toolbox documentation
0 Comments
See Also
Categories
Find more on Surrogate Optimization in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!