The field of metaheuristics encompasses a diverse array of search algorithms, each incorporating distinct mechanisms that strike a balance between exploration and exploitation. Many of these algorithms share a common framework, differing primarily in their internal implementations. This commonality is especially evident within the realm of evolutionary algorithms.
The primary goal of this project is to develop a type-safe domain-specific language (DSL) in Haskell. This DSL will facilitate the description of key metaheuristic algorithms, enabling end users to effortlessly experiment with various combinations of available search operators. It goes beyond merely implementing vanilla versions of these algorithms; it empowers users to explore hybrid approaches as well. Furthermore, this tool will incorporate a native concurrency module, allowing users to harness the full potential of multicore machines for enhanced efficiency and performance.
Desired knowledges: programming (Haskell), metaheuristics