Abstract
Population-based metaheuristics such as Evolutionary Algorithms (EAs) can require massive computational power for solving complex and large scale optimization problems. Hence, the parallel execution of EAs attracted the attention of researchers as a feasible solution in order to reduce the computation time. Several distributed frameworks and approaches utilizing different hardware and software technologies have been introduced in the literatures. Among them, the parallelization of EAs in cluster and cloud environments exploiting modern parallel computing techniques seems to be a promising approach. In the present paper, the parallel performance in terms of speedup using microservices, container virtualization and the publish/subscribe messaging paradigm to parallelize EAs based on the Coarse-Grained Model (so-called Island Model) is introduced. Four different communication topologies with scalable number of islands ranges between 1 and 120 are analyzed in order to show that a partial linear/superlinear speedup is achievable for the proposed approach.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
kubernetes.io.
- 2.
redis.io.
References
Abdelhafez, A., Alba, E.: Speed-up of synchronous and asynchronous distributed genetic algorithms: a first common approach on multiprocessors. In: 2017 IEEE Congress on Evolutionary Computation (CEC), pp. 2677–2682. IEEE (2017)
Abdelhafez, A., Alba, E., Luque, G.: Performance analysis of synchronous and asynchronous distributed genetic algorithms on multiprocessors. Swarm Evol. Comput. 49, 147–157 (2019)
Alba, E., et al.: Efficient parallel LAN/WAN algorithms for optimization. The mallba project. Parallel Comput. 32(5–6), 415–440 (2006)
Alba, E.: Parallel evolutionary algorithms can achieve super-linear performance. Inf. Process. Lett. 82(1), 7–13 (2002)
Alba, E., Troya, J.M.: Analyzing synchronous and asynchronous parallel distributed genetic algorithms. Future Gener. Comput. Syst. 17(4), 451–465 (2001)
Amdahl, G.M.: Validity of the single processor approach to achieving large scale computing capabilities. In: Proceedings of the 18–20 April 1967, Spring Joint Computer Conference, pp. 483–485. ACM (1967)
Arenas, M.G., et al.: A framework for distributed evolutionary algorithms. In: Guervós, J.J.M., Adamidis, P., Beyer, H.-G., Schwefel, H.-P., Fernández-Villacañas, J.-L. (eds.) PPSN 2002. LNCS, vol. 2439, pp. 665–675. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45712-7_64
Belding, T.C.: The distributed genetic algorithm revisited. In: Proceedings of the Sixth International Conference on Genetic Algorithms, pp. 114–121 (1995)
Blume, C., Jakob, W.: GLEAM - an evolutionary algorithm for planning and control based on evolution strategy. In: GECCO Late Breaking Papers, pp. 31–38 (2002)
Blume, C., Jakob, W.: GLEAM - General Learning Evolutionary Algorithm and Method: Ein evolutionärer Algorithmus und seine Anwendungen, vol. 32. KIT Scientific Publishing (2009)
Cahon, S., Melab, N., Talbi, E.G.: ParadisEO: a framework for the reusable design of parallel and distributed metaheuristics. J. Heuristics 10(3), 357–380 (2004)
Cantú-Paz, E.: A survey of parallel genetic algorithms. Calculateurs paralleles, reseaux et systems repartis 10(2), 141–171 (1998)
Cantú-Paz, E.: Topologies, migration rates, and multi-population parallel genetic algorithms. In: Proceedings of the 1st Annual Conference on Genetic and Evolutionary Computation, pp. 91–98 (1999)
Fogarty, T.C., Huang, R.: Implementing the genetic algorithm on transputer based parallel processing systems. In: Schwefel, H.-P., Männer, R. (eds.) PPSN 1990. LNCS, vol. 496, pp. 145–149. Springer, Heidelberg (1991). https://doi.org/10.1007/BFb0029745
Fogel, G.B., Corne, D.W.: Evolutionary Computation in Bioinformatics. Elsevier (2002)
Fortin, F.A., Rainville, F.M.D., Gardner, M.A., Parizeau, M., Gagné, C.: DEAP: evolutionary algorithms made easy. J. Mach. Learn. Res. 13, 2171–2175 (2012)
García-Valdez, M., Merelo, J.J.: evospace-js: asynchronous pool-based execution of heterogeneous metaheuristics. In: Proceedings of the Genetic and Evolutionary Computation Conference Companion, pp. 1202–1208 (2017)
Khalloof, H., Ostheimer, P., Jakob, W., Shahoud, S., Duepmeier, C., Hagenmeyer, V.: A distributed modular scalable and generic framework for parallelizing population-based metaheuristics. In: Parallel Processing and Applied Mathematics (PPAM). Springer (2019, accepted)
Khalloof, H., et al.: A generic distributed microservices and container based framework for metaheuristic optimization. In: Proceedings of the Genetic and Evolutionary Computation Conference Companion, pp. 1363–1370. ACM (2018)
Liu, Y.Y., Wang, S.: A scalable parallel genetic algorithm for the generalized assignment problem. Parallel Comput. 46, 98–119 (2015)
Newman, S.: Building Microservices: Designing Fine-Grained Systems. O’Reilly Media, Inc. (2015)
Salza, P., Ferrucci, F.: An Approach for Parallel Genetic Algorithms in the Cloud using Software Containers. Computing Research Repository (CoRR), pp. 1–7 (2016)
Whitley, D.: A genetic algorithm tutorial. Stat. Comput. 4(2), 65–85 (1994)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Khalloof, H., Ostheimer, P., Jakob, W., Shahoud, S., Duepmeier, C., Hagenmeyer, V. (2019). Superlinear Speedup of Parallel Population-Based Metaheuristics: A Microservices and Container Virtualization Approach. In: Yin, H., Camacho, D., Tino, P., Tallón-Ballesteros, A., Menezes, R., Allmendinger, R. (eds) Intelligent Data Engineering and Automated Learning – IDEAL 2019. IDEAL 2019. Lecture Notes in Computer Science(), vol 11871. Springer, Cham. https://doi.org/10.1007/978-3-030-33607-3_42
Download citation
DOI: https://doi.org/10.1007/978-3-030-33607-3_42
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-33606-6
Online ISBN: 978-3-030-33607-3
eBook Packages: Computer ScienceComputer Science (R0)