Skip to main content
Log in

DEMCMC-GPU: An Efficient Multi-Objective Optimization Method with GPU Acceleration on the Fermi Architecture

  • Published:
New Generation Computing Aims and scope Submit manuscript

Abstract

In this paper, we present an efficient method implemented on Graphics Processing Unit (GPU), DEMCMC-GPU, for multi-objective continuous optimization problems. The DEMCMC-GPU kernel is the DEMCMC algorithm, which combines the attractive features of Differential Evolution (DE) and Markov Chain Monte Carlo (MCMC) to evolve a population of Markov chains toward a diversified set of solutions at the Pareto optimal front in the multi-objective search space. With parallel evolution of a population of Markov chains, the DEMCMC algorithm is a natural fit for the GPU architecture. The implementation of DEMCMC-GPU on the pre-Fermi architecture can lead to a ~25 speedup on a set of multi-objective benchmark function problems, compare to the CPU-only implementation of DEMCMC. By taking advantage of new cache mechanism in the emerging NVIDIA Fermi GPU architecture, efficient sorting algorithm on GPU, and efficient parallel pseudorandom number generators, the speedup of DEMCMC-GPU can be aggressively improved to ~100.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. CUDA Zone, http://www.NVIDIA.com/object/cuda_home_new.html, accessed on October 1, 2010.

  2. Zhu, W., “Massively Parallel Differential Evolution with Graphics Hardware Acceleration: an Investigation on Bound Constrained Optimization Problems,” Journal of Global Optimization, doi:10.1007/s10898-010-9590-0, 2010.

  3. Zhu, W., “Nonlinear Optimization with a Massively Parallel Evolution Strategy Algorithm on Graphics Hardware,” Applied Soft Computing Journal, doi: 10.1016/j.asoc.2010.05.020, 2010.

  4. Zhou, Y. and Tan, Y., “GPU-based Parallel Particle Swarm Optimization,” in Proc. of IEEE Congress on Evolutionary Computation, 2009.

  5. You, Y., “Parallel Ant System for Traveling Salesman Problem on GPUs,” in Proc. of ACM Genetic and Evolutionary Computation Conference, 2009.

  6. Bakhtiari, M., Malhotra, H., Jones, M. D., Chaudhary, V., Walters, J. P. and Nazareth, D., “Applying Graphics Processor Units to Monte Carlo Dose Calculation in Radiation Therapy,” J. Med. Phys., 35, 2, pp. 120–122, 2010.

    Google Scholar 

  7. General purpose genetic programming on Graphics Processing Units, http://www.gpgpgpu.com, accessed on October 1, 2010.

  8. Wong, M. L., “Parallel Multi-Objective Evolutionary Algorithms on Graphics Processing Units,” in Proc. of ACM Genetic and Evolutionary Computation Conference, 2009.

  9. Li, Y. and Zhu, W., “GPU-Accelerated Multi-scoring Functions Protein Loop Structure Modeling,” in Proc. of 9th IEEE International Workshop on High Performance Computational Biology, 2010.

  10. Metropolis, N., Rosenbluth, A. W., Rosenbluth, M. N., Teller, A. H. and Teller, E., “Equation of State Calculations by Fast Computing Machines,” Journal of Chemical Physics, 21, pp. 1087–1092, 1953.

    Article  Google Scholar 

  11. Hastings, W.K., “Monte Carlo Sampling Methods using Markov Chains and Their Applications,” Biometrika, 57, pp. 97–109, 1970.

    Article  MATH  Google Scholar 

  12. Kirkpatrick, S., Gelatt, Jr. C. D. and Vecchi, M. P., “Optimization by Simulated Annealing,” Science, 220, pp. 671–680, 1983.

    Article  MathSciNet  Google Scholar 

  13. Marinari, E. and Parisi, G., “Simulated Tempering: a New Monte Carlo Scheme,” Europhysics Letters, 19, pp. 451–458, 1992.

  14. Geyer, C. J. and Thompson, E. A., “Annealing Markov Chain Monte Carlo with Applications to Ancestral Inference,” J. of the American Statistical Association, 90, pp. 909–920, 1995.

    Google Scholar 

  15. Hansmann, U. H. E. and Okamoto, Y., “Generalized-ensemble Monte Carlo method for systems with rough energy landscape,” Physical Review E. 56, 20, pp. 2228–2233, 1997.

  16. Liu, J. S., Liang, F. and Wong, W. H., “The Use of Multiple-Try Method and Local Optimization in Metropolis Sampling,” Technical Report, Department of Statistics, Stanford University, 1998.

  17. Li, Y., Protopopescu, V. A., Arnold, N., Zhang, X. and Gorin, A., “Hybrid Parallel Tempering/Simulated Annealing Method,” Applied Mathematics and Computation, 212, pp. 216–228, 2009.

    Article  MathSciNet  MATH  Google Scholar 

  18. Siepmann, J. I. and Frenkel, D., “Configuration bias Monte Carlo: a new sampling scheme for flexible chains,” Molecular Physics, 75, 1, pp. 59–70, 1992.

  19. Vrugt, J. A., Gupta, H. V., Bastidas, L. A., Boutem, W. and Sorooshian, S., “Effective and Efficient Algorithm for Multiobjective Optimization of Hydrologic Models,” Water Resources Research, 39, 8, pp. 1214–1232, 2002.

  20. Tang, Y., Reed, P. and Wagener, T., “How effective and efficient are multiobjective evolutionary algorithms at hydrologic model calibration?,” Hydrol. Earth Syst. Sci. 10, pp. 289–307, 2006.

    Article  Google Scholar 

  21. Deb, K., Pratap, A., Agarwal, S. and Meyarivan, T., “A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II,” IEEE Trans. Evol. Computation, 6, pp. 182–197, 2002.

    Google Scholar 

  22. Zitzler, E., Laumanns, M. and Thiele, L., “SPEA2: Improving the Strength Pareto Evolutionary Algorithm,” TIK-103, Department of Electrical Engineering, Swiss Federal Institute of Technology, 2001.

  23. Storn, R. and Price, K., “Differential Evolution - A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces,” J. of Global Optimization, 11, 4, pp. 341–359, 1997.

    Article  MathSciNet  MATH  Google Scholar 

  24. Deb, K., Multi-objective Optimization Using Evolutionary Algorithms, John Wiley&Sons, 2001.

  25. Rathore, N., Chopra, M. and de Pablo, J. J., “Optimal Allocation of Replicas in Parallel Tempering Simulations,” J. Chem. Phys., 122, 2, 024111, American Institute of Physics, 2005.

  26. Kone, A. and Kofke, D. A., “Selection of Temperature Intervals for Parallel Tempering Simulations,” J. Chem. Phys., 122, 20, 206101, American Institute of Physics, 2005.

  27. Mersenne Twister random number generator, http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html, accessed on October 1, 2010.

  28. Satish, N., Harris, M. and Garland, M., “Designing Efficient Sorting Algorithms for Manycore GPUs,” in Proc. of 23rd IEEE International Parallel and Distributed Processing Symposium, 2009.

  29. Zitzler, E., Deb, K. and Thiele, L., “Comparison of Multiobjective Evolutionary Algorithms: Empirical Results,”Evolutionary Computation, 8, 2, The MIT Press, pp. 173–195, 2000.

  30. Beume, N., Fonseca, C. M., Lpez-Ibez, M., Paquete, L. and Vahrenhold, J., “On the complexity of computing the hypervolume indicator,” IEEE Transactions on Evolutionary Computation, 13, 5, pp. 1075–1082, 2009.

  31. DTLZ1 test problem and its convergence plot with maximum hypervolumes, http://www.tik.ee.ethz.ch/sop/download/supplementary/testproblems/dtlz1/index.php, accessed on October 1, 2010.

  32. Zhu, W. and Li, Y., “GPU-Accelerated Differential Evolutionary Markov Chain Monte Carlo Method for Multi-Objective Optimization over Continuous Space,” in Proc. of 2nd Workshop on Bio-Inspired Algorithms for Distributed Systems, 2010.

  33. Marsaglia, G., “Xorshift RNGs,” Journal of Statistical Software, 8, 14, pp. 1–6, 2003.

    Google Scholar 

  34. Deb, K., Thiele, L., Laumanns, M. and Zitzler, E., “Scalable Test Problems for Evolutionary Multi-Objective Optimization,” KanGAL Report, Indian Inst. Technol., 2001.

  35. Zitzler, E., Deb, K. and Thiele, L., “Comparison of multiobjective evolutionary algorithms: Empirical results,” Evol. Comput., 8, 2, pp. 173–195, 2000.

  36. Li, Y., Rata, I. and Jakobsson, E., “Integrating Multiple Scoring Functions to Improve Protein Loop Structure Conformation Space Sampling,” in Proc. of IEEE Symposium on Computational Intelligence in Bioinformatics and Computational Biology, 2010.

  37. Bleuler, S., Laumanns, M., Thiele, L. and Zitzler, E., “PISA A Platform and Programming Language Independent Interface for Search Algorithms,” LNCS, 2632, pp. 494–508, 2003.

    Google Scholar 

  38. Kipfer, P. and Westermann, R., “Improved GPU Sorting,” GPU gems 2: Programming Techniques for high-performance graphics and general-purpose computation, Addison-Wesley Professional, pp. 733–746, 2005.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Weihang Zhu.

About this article

Cite this article

Zhu, W., Yaseen, A. & Li, Y. DEMCMC-GPU: An Efficient Multi-Objective Optimization Method with GPU Acceleration on the Fermi Architecture. New Gener. Comput. 29, 163–184 (2011). https://doi.org/10.1007/s00354-010-0103-y

Download citation

  • Received:

  • Revised:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00354-010-0103-y

Keywords

Navigation