Building with ParadisEO reusable parallel and distributed evolutionary algorithms

Numerous parallel and distributed evolutionary algorithms (PDEAs) and their implementations have been proposed and are available on the Web. A robust approach to make easier their code and design reuse is the framework approach. In this paper, we present some existing frameworks for PDEAs and their development requirements, and propose a new C++ open source framework, named Parallel and distributed Evolving Objects (ParadisEO). ParadisEO is basically devoted to the reusable and flexible design of parallel and distributed metaheuristics, but we focus here only on PDEAs. Compared to other related frameworks, ParadisEO allows more reuse flexibility, and provides more implemented parallel and distributed models. Furthermore, these models can be exploited by the user in a transparent way, and deployed as well on shared memory multi-processors as on distributed memory machines. The architecture has been experimented on two real-world applications: the radio network design and the spectroscopic data mining. The experimental results demonstrate the efficiency and robustness of the different models.

[1]  Brian Foote,et al.  Designing Reusable Classes , 2001 .

[2]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[3]  El-Ghazali Talbi,et al.  Parallel GA-based wrapper feature selection for spectroscopic data mining , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[4]  Marc Parizeau,et al.  Distributed Beagle: An Environment For Parallel And Distributed Evolutionary Computations , 2003 .

[5]  Ian T. Foster,et al.  Globus: a Metacomputing Infrastructure Toolkit , 1997, Int. J. High Perform. Comput. Appl..

[6]  Ian T. Foster,et al.  Condor-G: A Computation Management Agent for Multi-Institutional Grids , 2004, Cluster Computing.

[7]  강문설 [서평]「The Unified Modeling Language User Guide」 , 1999 .

[8]  Natalio Krasnogor,et al.  MAFRA: A java memetic algorithms framework , 2000 .

[9]  Maarten Keijzer,et al.  Evolving Objects: A General Purpose Evolutionary Computation Library , 2001, Artificial Evolution.

[10]  Enrique Alba,et al.  Parallelism and evolutionary algorithms , 2002, IEEE Trans. Evol. Comput..

[11]  El-Ghazali Talbi,et al.  A multiobjective genetic algorithm for radio network optimization , 2000, Proceedings of the 2000 Congress on Evolutionary Computation. CEC00 (Cat. No.00TH8512).

[12]  Elizabeth Goodman,et al.  An Introduction to GALOPPS-the "Genetic Algorithm Optimized for Portability and Parallelism" System , 1994 .

[13]  Enrique Alba,et al.  MALLBA: A Library of Skeletons for Combinatorial Optimisation (Research Note) , 2002, Euro-Par.

[14]  Peter Sommerlad,et al.  Active Guidance of Framework Development , 1995, Softw. Concepts Tools.

[15]  Ben Paechter,et al.  A Framework for Distributed Evolutionary Algorithms , 2002, PPSN.

[16]  Miron Livny,et al.  Interfacing Condor and PVM to harness the cycles of workstation clusters , 1996, Future Gener. Comput. Syst..

[17]  Don Roberts,et al.  Evolving Frameworks A Pattern Language for Developing Object-Oriented Frameworks , 2004 .

[18]  David L. Woodruff,et al.  Building Reusable Software Components for Heuristic Search , 1999 .

[19]  Hervé Meunier,et al.  Algorithmes évolutionnaires parallèles pour l'optimisation multi-objectif de réseaux de télécommunications mobiles , 2002 .

[20]  El-Ghazali Talbi,et al.  A Taxonomy of Hybrid Metaheuristics , 2002, J. Heuristics.