Pool Evolution: A Parallel Pattern for Evolutionary and Symbolic Computing

Marco Aldinucci, Sonia Campa, Marco Danelutto*, Peter Kilpatrick, Massimo Torquati

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

7 Citations (Scopus)
252 Downloads (Pure)


We introduce a new parallel pattern derived from a specific application domain and show how it turns out to have application beyond its domain of origin. The pool evolution pattern models the parallel evolution of a population subject to mutations and evolving in such a way that a given fitness function is optimized. The pattern has been demonstrated to be suitable for capturing and modeling the parallel patterns underpinning various evolutionary algorithms, as well as other parallel patterns typical of symbolic computation. In this paper we introduce the pattern, we discuss its implementation on modern multi/many core architectures and finally present experimental results obtained with FastFlow and Erlang implementations to assess its feasibility and scalability.

Original languageEnglish
Pages (from-to)531-551
JournalInternational Journal of Parallel Programming
Issue number3
Early online date18 Mar 2015
Publication statusPublished - Jun 2016


  • Algorithmic skeletons
  • Evolutionary computing
  • FastFlow
  • Multi/many core architectures
  • Parallel design patterns

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Theoretical Computer Science

Fingerprint Dive into the research topics of 'Pool Evolution: A Parallel Pattern for Evolutionary and Symbolic Computing'. Together they form a unique fingerprint.

Cite this