Parallelization of bio-inspired algorithms in functional environments
Loading...
Official URL
Full text at PDC
Publication date
2023
Authors
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Citation
Abstract
This bachelor’s thesis investigates the parallelization of bio-inspired algorithms in functional environments, specifically using Haskell and the Accelerate library. All implementations of the investigated algorithms, namely Ant Colony Optimization, Particle Swarm Optimization, and Differential Evolution is collected in a new library called Shizen. The thesis focuses on implementing these bioinspired algorithms and then using the parallelization capabilities of Haskell and the Accelerate library to enhance their performance. The implementation and parallelization techniques employed in this thesis are analyzed and compared against traditional imperative approaches to parallel computing, as well as sequential functional implementations of the same algorithms. The findings of this study suggest that while functional programming and the Accelerate library offer parallel implementations of algorithms, their performance falls short compared to traditional imperative approaches and sequential functional implementations of the same algorithms.
Este Trabajo de Fin de Grado (TFG) investiga la paralelización de algoritmos bioinspirados en entornos funcionales, específicamente utilizando Haskell y la biblioteca Accelerate. Todas las implementaciones de los algoritmos investigados, a saber, Optimización de Colonias de Hormigas, Optimización por Enjambre de Partículas y Evolución Diferencial, se recopilan en una nueva biblioteca llamada Shizen. El trabajo se centra en implementar estos algoritmos bioinspirados y luego utilizar las capacidades de paralelización de Haskell y la biblioteca Accelerate para mejorar su rendimiento. Se analizan y comparan las técnicas de implementación y paralelización empleadas en este TFG con enfoques tradicionales imperativos para la computación paralela, así como con implementaciones funcionales secuenciales de los mismos algoritmos. Los resultados de este estudio sugieren que si bien la programación funcional y la biblioteca Accelerate ofrecen implementaciones paralelas de algoritmos, su rendimiento es inferior en comparación con enfoques imperativos tradicionales y con implementaciones funcionales secuenciales de los mismos algoritmos.
Este Trabajo de Fin de Grado (TFG) investiga la paralelización de algoritmos bioinspirados en entornos funcionales, específicamente utilizando Haskell y la biblioteca Accelerate. Todas las implementaciones de los algoritmos investigados, a saber, Optimización de Colonias de Hormigas, Optimización por Enjambre de Partículas y Evolución Diferencial, se recopilan en una nueva biblioteca llamada Shizen. El trabajo se centra en implementar estos algoritmos bioinspirados y luego utilizar las capacidades de paralelización de Haskell y la biblioteca Accelerate para mejorar su rendimiento. Se analizan y comparan las técnicas de implementación y paralelización empleadas en este TFG con enfoques tradicionales imperativos para la computación paralela, así como con implementaciones funcionales secuenciales de los mismos algoritmos. Los resultados de este estudio sugieren que si bien la programación funcional y la biblioteca Accelerate ofrecen implementaciones paralelas de algoritmos, su rendimiento es inferior en comparación con enfoques imperativos tradicionales y con implementaciones funcionales secuenciales de los mismos algoritmos.
Description
Trabajo de Fin de Grado en Ingeniería Informática, Facultad de Informática UCM, Departamento de Sistemas Informáticos y Computación, Curso 2022/2023.
The library is open-source and available on GitHub https://github.com/sergiodguezc/shizen