MALLBA: a software library to design efficient optimisation algorithms

In this paper we discuss on the MALLBA framework, a software tool for the resolution of combinatorial optimisation problems using generic algorithmic skeletons implemented in C++. Every skeleton in the MALLBA library implements an optimisation method (exacts, metaheuristics and hybrids) and provides three different implementations for it: sequential, parallel for Local Area Networks and parallel for Wide Area Networks. This paper introduces some aspects about the software design of the MALLBA library, details of the most recent implemented skeletons and offers computational results for a scheduling problem to illustrate the utilisation of our library.

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

[2]  El-Ghazali Talbi,et al.  ParadisEO: A Framework for Parallel and Distributed Metaheuristics , 2003 .

[3]  R. Eberhart,et al.  Comparing inertia weights and constriction factors in particle swarm optimization , 2000, Proceedings of the 2000 Congress on Evolutionary Computation. CEC00 (Cat. No.00TH8512).

[4]  Luca Di Gaspero,et al.  EasyLocal++: An Object-Oriented Framework for the Design of Local Search Algorithms and Metaheuristics , 2001 .

[5]  Jason M. Daida,et al.  Biological Symbiosis as a Metaphor for Computational Hybridization , 1995, ICGA.

[6]  Rafael Martí,et al.  Scatter Search: Diseño Básico y Estrategias avanzadas , 2002, Inteligencia Artif..

[7]  Jano I. van Hemert,et al.  A Comparison of Genetic Programming Variants for Data Classification , 1999, IDA.

[8]  Cynthia A. Phillips,et al.  Pico: An Object-Oriented Framework for Parallel Branch and Bound * , 2001 .

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

[10]  Marc Parizeau,et al.  Open BEAGLE: A New C++ Evolutionary Computation Framework , 2002, GECCO.

[11]  Enrique Alba,et al.  Efficient parallel LAN/WAN algorithms for optimization. The mallba project , 2006, Parallel Comput..

[12]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[13]  Thomas Bäck,et al.  An evolutionary approach to combinatorial optimization problems , 1994, CSC '94.

[14]  Lawrence. Davis,et al.  Handbook Of Genetic Algorithms , 1990 .

[15]  Riccardo Poli,et al.  Particle swarm optimization , 1995, Swarm Intelligence.

[16]  Russell C. Eberhart,et al.  A discrete binary version of the particle swarm algorithm , 1997, 1997 IEEE International Conference on Systems, Man, and Cybernetics. Computational Cybernetics and Simulation.

[17]  Enrique Alba,et al.  Parallel Metaheuristics: A New Class of Algorithms , 2005 .

[18]  David H. Wolpert,et al.  No free lunch theorems for optimization , 1997, IEEE Trans. Evol. Comput..

[19]  Coromoto León,et al.  A Distributed Divide and Conquer Skeleton , 2004, PARA.

[20]  Zbigniew Michalewicz,et al.  Handbook of Evolutionary Computation , 1997 .

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

[22]  Thomas Stützle,et al.  Ant Colony Optimization , 2009, EMO.

[23]  Marco Laumanns,et al.  PISA: A Platform and Programming Language Independent Interface for Search Algorithms , 2003, EMO.