Skip to main content

Concurrent Implementation Techniques Using Differential Evolution for Multi-Core CPUs: A Comparative Study Using Statistical Tests

  • Chapter
Evolution, Complexity and Artificial Life
  • 1361 Accesses

Abstract

In order to utilize multi-core CPUs effectively, a concurrent version of a recently developed evolutionary algorithm, i.e., Differential Evolution (DE), is described. The concurrent version of DE is called Concurrent DE (CDE). CDE is designed based on a programming model known as “MapReduce” and implemented in Java. Two implementations of CDE, namely CDE/D and CDE/S, are proposed and compared from the viewpoint of both quality of solutions and execution time. Through the numerical experiments and the statistical tests conducted on two kinds of popular multi-core CPUs, it is shown that CDE/S uses multi-core CPUs more effectively than CDE/D. However, the quality of solutions obtained by CDE/S tends to fluctuate with the number of threads and the kind of benchmark problems.

An erratum to this chapter can be found at http://dx.doi.org/10.1007/978-3-642-37577-4_18

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 54.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Storn, R., Price, K.: Differential evolution - a simple and efficient heuristic for global optimization over continuous space. J. Global Optim. 4(11), 341–359 (1997)

    Article  MathSciNet  Google Scholar 

  2. Price, K.V., Storn, R.M., Lampinen, J.A.: Differential Evolution - A Practical Approach to Global Optimization. Springer, Berlin (2005)

    MATH  Google Scholar 

  3. Das, S., Suganthan, P.N.: Differential evolution: a survey of the state-of-the art. IEEE Trans. Evolut. Comput. 15(1), 4–31 (2011)

    Article  Google Scholar 

  4. Cantú-Paz, E.: Efficient and Accurate Parallel Genetic Algorithms. Kluwer Academic, Boston (2001)

    Google Scholar 

  5. Alba, E., Tomassini, M.: Parallelism and evolutionary algorithms. IEEE Trans. Evolut. Comput. 5(6), 443–462 (2002)

    Article  Google Scholar 

  6. Tasoulis, D.K., Pavlidis, N.G., Plagianakos, V.P., Vrahatis, M.N.: Parallel differential evolution. In: Proceedings of IEEE Congress on Evolutionary Computation, pp. 2023–2029 (2004)

    Google Scholar 

  7. Zaharie, D., Petcu, D.: Parallel implementation of multi-population differential evolution. In: Nicolau, A., Grigoras, D. (eds.) Concurrent Information Processing and Computing, pp. 223–232. IOS Press, Amsterdam (2005)

    Google Scholar 

  8. Zhou, C.: Fast parallelization of differential evolution algorithm using MapReduce. In: Proceedings of Genetic and Evolutionary Computation Conference, pp. 1113–1114 (2010)

    Google Scholar 

  9. Ishimizu, T., Tagawa, K.: Experimental study of a structured differential evolution with mixed strategies. J. Adv. Comput. Intell. Intell. Inform. 15(9), 1310–1319 (2011)

    Google Scholar 

  10. Breshears, C.: The Art of Concurrency - A Thread Monkey’s Guide to Writing Parallel Applications. O’Reilly, Cambridge (2009)

    Google Scholar 

  11. Goetz, B., et al.: Java Concurrency in Practice. Addison-Wesley, Upper Saddle River (2006)

    Google Scholar 

  12. Diaz, J., Mu\(\tilde{\mathrm{n}}\) oz-Caro, C., Ni\(\tilde{\mathrm{n}}\) o, A.: A survey of parallel programming models and tools in the multi and many-core era. IEEE Trans. Parall. Distr. Syst. 23(8), 1369–1386 (2012)

    Google Scholar 

  13. de Veronese, L., Krohling, R.: Differential evolution algorithm on the GPU with C-CUDA. In: Proceedings of IEEE Congress on Evolutionary Computation, pp. 1–7 (2010)

    Google Scholar 

  14. Kr\(\ddot{\mathrm{o}}\) mer, P., Sná\(\check{\mathrm{s}}\) el, V., Plato\(\check{\mathrm{s}}\), J.: Many-thread implementation of differential evolution for the CUDA platform. In: Proceedings of Genetic and Evolutionary Computation Conference, pp. 1595–1602 (2011)

    Google Scholar 

  15. Tagawa, K., Ishimizu, T.: Concurrent differential evolution based on MapReduce. Int. J. Comput. 4(4), 161–168 (2010)

    Google Scholar 

  16. Syswerda, G.: A study of reproduction in generational and steady-state genetic algorithms. Foundations of Genetic Algorithms, vol. 2, pp. 94–101. Morgan Kaufmann, Los Altos (1991)

    Google Scholar 

  17. Feoktistov, V.: Differential Evolution in Search Solutions, chapter 6. Springer, New York (2006)

    Google Scholar 

  18. Tagawa, K.: A statistical study of the differential evolution based on continuous generation model. In: Proceedings of IEEE Congress on Evolutionary Computation, pp. 2614–2621 (2009)

    Google Scholar 

  19. Tagawa, K., Ishimizu, T.: A comparative study of distance dependent survival selection for sequential DE. In: Proceedings of IEEE International Conference on System, Man, and Cybernetics, pp. 3493–3500 (2010)

    Google Scholar 

  20. Davison, B.D., Rasheed, K.: Effect of global parallelism on a steady state GA. In: Proceedings of Genetic and Evolutionary Computation Conference Workshops, Evolutionary Computation and Parallel Processing Workshop, pp. 167–170 (1999)

    Google Scholar 

  21. Dean, J., Ghemawat, S.: MapReduce: simplified data processing on large clusters. In: Proceedings of 6th Symposium on Operating Systems Design and Implementation, pp. 137–149 (2010)

    Google Scholar 

  22. Sheskin, D.J.: Handbook of Parametric and Nonparametric Statistical Procedures, 5th edn. CRC Press, Boca Raton (2011)

    MATH  Google Scholar 

  23. Dorronsoro, B., Bouvry, P.: Improving classical and decentralized differential evolution with new mutation operator and population topologies. IEEE Trans. Evolut. Comput. 15(1), 67–98 (2011)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kiyoharu Tagawa .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Tagawa, K. (2014). Concurrent Implementation Techniques Using Differential Evolution for Multi-Core CPUs: A Comparative Study Using Statistical Tests. In: Cagnoni, S., Mirolli, M., Villani, M. (eds) Evolution, Complexity and Artificial Life. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-37577-4_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-37577-4_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-37576-7

  • Online ISBN: 978-3-642-37577-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics