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.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
CUDA Zone, http://www.NVIDIA.com/object/cuda_home_new.html, accessed on October 1, 2010.
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.
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.
Zhou, Y. and Tan, Y., “GPU-based Parallel Particle Swarm Optimization,” in Proc. of IEEE Congress on Evolutionary Computation, 2009.
You, Y., “Parallel Ant System for Traveling Salesman Problem on GPUs,” in Proc. of ACM Genetic and Evolutionary Computation Conference, 2009.
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.
General purpose genetic programming on Graphics Processing Units, http://www.gpgpgpu.com, accessed on October 1, 2010.
Wong, M. L., “Parallel Multi-Objective Evolutionary Algorithms on Graphics Processing Units,” in Proc. of ACM Genetic and Evolutionary Computation Conference, 2009.
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.
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.
Hastings, W.K., “Monte Carlo Sampling Methods using Markov Chains and Their Applications,” Biometrika, 57, pp. 97–109, 1970.
Kirkpatrick, S., Gelatt, Jr. C. D. and Vecchi, M. P., “Optimization by Simulated Annealing,” Science, 220, pp. 671–680, 1983.
Marinari, E. and Parisi, G., “Simulated Tempering: a New Monte Carlo Scheme,” Europhysics Letters, 19, pp. 451–458, 1992.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Deb, K., Multi-objective Optimization Using Evolutionary Algorithms, John Wiley&Sons, 2001.
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.
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.
Mersenne Twister random number generator, http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html, accessed on October 1, 2010.
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.
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.
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.
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.
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.
Marsaglia, G., “Xorshift RNGs,” Journal of Statistical Software, 8, 14, pp. 1–6, 2003.
Deb, K., Thiele, L., Laumanns, M. and Zitzler, E., “Scalable Test Problems for Evolutionary Multi-Objective Optimization,” KanGAL Report, Indian Inst. Technol., 2001.
Zitzler, E., Deb, K. and Thiele, L., “Comparison of multiobjective evolutionary algorithms: Empirical results,” Evol. Comput., 8, 2, pp. 173–195, 2000.
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.
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.
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.
Author information
Authors and Affiliations
Corresponding author
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
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00354-010-0103-y