Multi-Objective Differential Evolution on the GPU with C-CUDA
In some applications, evolutionary algorithms may require high computational resources and high processing power, sometimes not producing a satisfactory solution after running for a considerable amount of time. One possible improvement is a parallel approach to reduce the response time. This work proposes to study a parallel multi-objective algorithm, the multi-objective version of Differential Evolution (DE). The generation of trial individuals can be done in parallel, greatly reducing the overall processing time of the algorithm. A novel approach to parallelize this algorithm is the implementation on the Graphic Processing Units (GPU). These units present high degree of parallelism and they were initially developed for image rendering. However, NVIDIA has released a framework, named CUDA, which allows developers to use GPU for general-purpose computing (GPGPU). This work studies the implementation of Multi-Objective DE (MODE) on the GPU with C-CUDA, evaluating the gain in processing time against the sequential version. Benchmark functions are used to validate the implementation and to confirm the efficiency of MODE on the GPU. The results show that the approach achieves an expressive speed up and a highly efficient processing power.
KeywordsMulti-Objective problem Differential Evolution GPU C-CUDA
Unable to display preview. Download preview PDF.
- 1.Nedjah, N., de Macedo Mourelle, L., Alba, E. (eds.): Parallel Evolutionary Computations. SCI, vol. 22. Springer (2006)Google Scholar
- 2.Price, K.V., Storn, R.M., Lampinen, J.A.: Differential evolution: a practical approach to global optimizations. Springer (2005)Google Scholar
- 4.Xue, F., Sanderson, A., Graves, R.: Pareto-based multi-objective differential evolution. In: The 2003 Congress on Evolutionary Computation, CEC 2003, vol. 2, pp. 862–869 (December 2003)Google Scholar
- 5.Xue, F.: Multi-objective Differential Evolution: Theory and Applications. PhD thesis, Rensselaer Polytechnic Institute, New York (September 2004)Google Scholar
- 7.NVIDIA: CUDA C Programming Guide. 4.0 edn. NVIDIA (June 2011)Google Scholar
- 8.de Veronese, L., Krohling, R.: Differential evolution algorithm on the GPU with C-CUDA. In: 2010 IEEE Congress on Evolutionary Computation (CEC), pp. 1–7 (July 2010)Google Scholar
- 9.Fabris, F., Krohling, R.A.: A co-evolutionary differential evolution algorithm for solving min-max optimization problems implemented on GPU using C-CUDA. Expert Systems with Applications (2011)Google Scholar
- 11.NVIDIA: NVIDIA cuRAND (January 2012), http://developer.nvidia.com/curand
- 14.Batista, L.S., Campelo, F., Guimarães, F.G., Ramírez, J.A.: Pareto Cone ε-Dominance: Improving Convergence and Diversity in Multiobjective Evolutionary Algorithms. In: Takahashi, R.H.C., Deb, K., Wanner, E.F., Greco, S. (eds.) EMO 2011. LNCS, vol. 6576, pp. 76–90. Springer, Heidelberg (2011)CrossRefGoogle Scholar