Efficient Metaheuristics in Higher-level Programming Languages

- 326345
Complete Articles (CA)
Favorite this paper
How to cite this paper?
Abstract

This paper studies the impact of modern programming languages in the design of metaheuristic algorithms. Well-known metaheuristics have been proposed and studied over the last decades, including population-based and evolutionary algorithms like Genetic and Memetic Algorithms, trajectory-based Simulated Annealing, Tabu Search, Variable Neighborhood Search, among others. Despite efforts from community in proposing generic metaheuristic frameworks in low-level languages like C/C++, the growth of developers in higher-level programming languages --- such as Julia and  Python --- demands existing efficient C/C++ tools to be adapted for the languages, so that new users can also benefit from them. This work proposes a Julia version of the OptFrame, a C/C++ combinatorial optimization framework for metaheuristics, comparing performance with other higher-level languages, like Python, considering well-known challenging combinatorial optimization problems. Results indicate that Julia is able to provide similar C/C++ performance, outpacing Python, while being easier to code and explore newer efficient metaheuristic techniques.

Share your ideas or questions with the authors!

Did you know that the greatest stimulus in scientific and cultural development is curiosity? Leave your questions or suggestions to the author!

Sign in to interact

Have a question or suggestion? Share your feedback with the authors!

Institutions
  • 1 UFF
  • 2 Elmore Family School of Electrical and Computer Engineering - Purdue University
  • 3 Instituto de Computação - Universidade Federal Fluminense
  • 4 Universidade Federal Fluminense
Track
  • 12. MH – Metaheurístics
Keywords
Optimization
Metaheuristics
OptFrame
Julia
Python