The epiGenetic Algorithm

We present a new set of ideas on how to build bio-inspired algorithms based on the new field of epigenetics. By analyzing this domain and extracting working computational ideas we want to offer a set of tools for the future creation of representations, operators, and search techniques that can competitively solve complex problems. To illustrate this, we describe an epiGenetic Algorithm, analyze its behavior and solve a set of instances of the multidimensional knapsack problem. Since we are in some measure opening a new line of research, we include a description of epigenetics and computational search, show their working principles and show an example algorithm solving a real problem. Our aim is to offer ideas as well as put them to work, to show that they are actually competitive, not just a nice new inspiration.

Download Source Code: JAVA | JAVADOCs and Python

DNA packaged by the chromatin
DNA packaged by the chromatin in eukaryotic cells and an epigenetic factor, i.e. methylation, bound to a histone in a nucleosome.
Epigenetic Mechanisms
Schema of each epigenetic mechanism and the modifications made to the cell’s DNA thru methylation.


  • Daniel H. Stolfi and Enrique Alba. Epigenetic algorithms: A New way of building GAs based on epigenetics. In: Information Sciences, vol. 424, No. Supplement C, pp. 250-272, 2018.

    doi> 10.1016/j.ins.2017.10.005 | [BibTex] | [Files1] | [Files2]

This research was partially funded by the Spanish MINECO and FEDER projects TIN2014-57341-R (moveON). Daniel H. Stolfi was supported by a FPU grant (FPU13/00954) from the Spanish Ministry of Education, Culture and Sports.

Creative Commons License