libCudaOptimize: an Open Source Library of GPU-based Metaheuristics
Dept. of Information Engineering, University of Parma, Italy
Fourteenth international conference on Genetic and evolutionary computation conference companion (GECCO Companion ’12), 2012
@inproceedings{nashed2012libcudaoptimize,
title={libCudaOptimize: an open source library of GPU-based metaheuristics},
author={Nashed, Youssef SG and Ugolotti, Roberto and Mesejo, Pablo and Cagnoni, Stefano},
booktitle={Proceedings of the fourteenth international conference on Genetic and evolutionary computation conference companion},
pages={117–124},
year={2012},
organization={ACM}
}
Evolutionary Computation techniques and other metaheuristics have been increasingly used in the last years for solving many real-world tasks that can be formulated as optimization problems. Among their numerous strengths, a major one is their natural predisposition to parallelization. In this paper, we introduce libCudaOptimize, an open source library which implements some metaheuristics for continuous optimization: presently Particle Swarm Optimization, Differential Evolution, Scatter Search, and Solis&Wets local search. This library allows users either to apply these metaheuristics directly to their own fitness function or to extend it by implementing their own parallel optimization techniques. The library is written in CUDA-C to make extensive use of parallelization, as allowed by Graphics Processing Units. After describing the library, we consider two practical case studies: the optimization of a fitness function for the automatic localization of anatomical brain structures in histological images, and the parallel implementation of Simulated Annealing as a new module, which extends the library while keeping code compatibility with it, so that the new method can be readily available for future use within the library as an alternative optimization technique.
June 21, 2013 by hgpu