To solve large scale optimization problem
Debabrata Midya wrote:
I am new to hpc and I am using R 2.9.1 on Windows XP. My objective is to solve large scale optimization problem using hpc. May I request you to assist me in the followings: 1. Are there any packages to solve large scale optimization problems using hpc? 2. Is there any parallel implementation of Differential Evolution?
Deb, I've taken the liberty of also copying David Ardia, the author of DEoptim, on my reply, as he may not be on the r-sig-hpc list. You have not told us what your HPC environment is (e.g. multi-core single machine, cluster with MPI, SNOW, NWS, etc.) From looking at the code of the DEoptim package/function, it looks as though the code could be relatively easily adapted to parallel execution. The main optimization routine uses an iterator on a while loop. This suggests that the 'iterators' package could be used to create a parallel iterator. If combined with 'foreach', you could run a parallel version of the loop through the given number of iterations. I'm sure there are other ways to parallelize that function, but this suggests itself to me on first examination of the problem. I suspect that there would be a bit of difficulty in stopping the loop if a suitable minimum threshold were reached, though this is a bit of an edge case, as in any optimization problem where you chose to apply differential evolution, it could be assumed that you would run to your maximum number of iterations and choose the best solution from the available results. I'm afraid that this answer has more work for you in it than you may have been hoping for, though it does seem quite manageable. I'd be happy to assist as you run into trouble, as I can see utility for this in my work as well. Regards, - Brian
Brian G. Peterson http://braverock.com/brian/ Ph: 773-459-4973 IM: bgpbraverock