Visible to the public Evolutionary and swarm-intelligence algorithms through monadic composition

TitleEvolutionary and swarm-intelligence algorithms through monadic composition
Publication TypeConference Paper
Year of Publication2019
AuthorsPamparà, Gary, Engelbrecht, Andries P.
Conference NameProceedings of the Genetic and Evolutionary Computation Conference Companion
PublisherAssociation for Computing Machinery
Conference LocationPrague, Czech Republic
ISBN Number978-1-4503-6748-6
Keywordscomposability, compositionality, Evolutionary algorithm, Functional programming, monadic composition, open-source, pubcrawl, reproducible, swarm intelligence, swarm-intelligence
AbstractReproducible experimental work is a vital part of the scientific method. It is a concern that is often, however, overlooked in modern computational intelligence research. Scientific research within the areas of programming language theory and mathematics have made advances that are directly applicable to the research areas of evolutionary and swarm intelligence. Through the use of functional programming and the established abstractions that functional programming provides, it is possible to define the elements of evolutionary and swarm intelligence algorithms as compositional computations. These compositional blocks then compose together to allow the declarations of an algorithm, whilst considering the declaration as a "sub-program". These sub-programs may then be executed at a later time and provide the blueprints of the computation. Storing experimental results within a robust data-set file format, which is widely supported by analysis tools, provides additional flexibility and allows different analysis tools to access datasets in the same efficient manner. This paper presents an open-source software library for evolutionary and swarm-intelligence algorithms which allows the type-safe, compositional, monadic and functional declaration of algorithms while tracking and managing effects (e.g. usage of a random number generator) that directly influences the execution of an algorithm.
URLhttps://doi.org/10.1145/3319619.3326845
DOI10.1145/3319619.3326845
Citation Keypampara_evolutionary_2019