我一直在玩R中的差分进化库,我想知道:这是一个并行化的算法吗?在我看来,你可以将优化间隔分成几个段,在每个段上运行算法,然后比较每个段的结果并返回最小值。
答案 0 :(得分:2)
是的,它应该并行化。找到numerous Google hits for the topic并不难,而Soureforge上的GAUL项目甚至有一些代码(不以任何方式移植到R)。
回到R及其DE变体,最好的方法是在编译级别。我在DEoption的RcppDE'端口'的'RcppParDE'变体中使用OpenMP进行了操作但是没有完成它。
据我所知,下一个(当前?)DEoptim版本有一个变体,它在R级使用foreach循环,这不是理想的,但比仅用于串行的方法更好。