Selfish Gene

In recent years biologists developed new interpretations and theories for understanding the mechanisms of evolution, but the biological foundations of evolutionary algorithms has not been debated with an analogous fervor. Most of the work performed by biologists has not been considered for inclusion into the Evolutionary Algorithm framework yet, and important debates between biologists have been almost completely disregarded. An interesting controversy that recently puzzled the biological world concerns natural selection.

The orthodox premise is that natural selection acts on the individual or, more properly, on differences among individuals within a population. However, in recent years, different authors argued that evolution can be better explained considering selection at higher levels such as kin, groups or species, while some others claimed that is preferable a lower level, such as genes.

The theory of gene selection was introduced in mid 70s by Richard Dawkins in his famous book, The Selfish Gene, and subsequently developed in The Extended Phenotype. In these works, Dawkins argues that genes, and genes alone, are the units of selection (replicators in his terminology) while organisms are simple vehicles, the packaging for replicators.

With the Selfish Gene Algorithm (SG), we propose to apply the shift of paradigm brought by the selfish gene theory to the field of Evolutionary Computation. We propose to rely directly on genes as unit of selection. In our opinion the simulated selection mechanism should be able to maintain essential gene correlation (i.e., the fact that a gene can be good or bad depending on the context of the other genes) as the real process does. In fact, in nature linkages between genes tend to emerge although, according to Dawkins' claims, selection works locally on genes.

The SG algorithm can leads to a very fast convergence towards a local optimum, but still explores the neighborhood of an upward sloping path. Furthermore the SG, adopting a mechanism similar to biological speciation, is able to discover interdependencies between genes even with highly deceptive, epistatic fitness functions like John Holland's Royal Roads.


Papers exploiting the Selfish Gene Algorithm published by the CAD Group:
  1. On the Transformation of Manufacturing Test Sets into On-Line Test Sets for Microprocessors
    E. Sanchez, M. Sonza Reorda, G. Squillero
    DFT'05: The 20th IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems, pp. 494-502
  2. A New Evolutionary Paradigm for Cultivating Cellular Automata for Built-In Self Test of Sequential Circuits
    F. Corno, M. Sonza Reorda, G. Squillero
    [chapter in] Evolutionary Algorithms for Embedded System Design , edited by R. Drechsler and N. Drechsler, Kluwer Academic Publishers, October 2002, ISBN 1-4020-7276-7, pp.? 143-173
  3. Evolving Effective CA/CSTP BIST Architectures for Sequential Circuits
    F. Corno, M. Sonza Reorda, G. Squillero
    SAC2001: 16th ACM Symposium on Applied Computing, March 2001, Las Vegas (USA), pp. 345-350
  4. Exploiting the Selfish Gene Algorithm for Evolving Cellular Automata
    F. Corno, M. Sonza Reorda, G. Squillero
    IJCNN2000: IEEE-INNS-ENNS International Joint Conference Neural Networks, Como (I), July 2000, pp. 577-581
  5. Exploiting the Selfish Gene Algorithm for Evolving Hardware Cellular Automata
    F. Corno, M. Sonza Reorda, G. Squillero
    CEC2000: Congress on Evolutionary Computation, San Diego (USA), July 2000, pp. 1401-1406
  6. Low Power BIST via Hybrid Cellular Automata
    F. Corno, M. Rebaudengo, M. Sonza Reorda, G. Squillero, M. Violante
    VTS2000: 18th IEEE VLSI Test Symposium, Montreal, Canada, May 2000, pp. 29-34
  7. Evolving Cellular Automata for Self-Testing Hardware
    F. Corno, M. Sonza Reorda, G. Squillero
    ICES2000: Third International Conference on Evolvable Systems: From Biology to Hardware, Edinburgh (UK), April 2000, pp. 31-39
  8. Prediction of Power Requirements for High-Speed Circuits
    F. Corno, M. Rebaudengo, M. Sonza Reorda, G. Squillero, M. Violante
    EvoTel2000: European Workshops on Telecommunications, Edinburgh (UK), May 2000, pp. 247-254
  9. Optimizing Deceptive Functions with the SG-Clans Algorithm
    F. Corno, M. Sonza Reorda, G. Squillero
    CEC99: 1999 Congress on Evolutionary Computation, Washington DC (USA), July 1999, pp. 2190-2195
  10. A New Evolutionary Algorithm Inspired by the Selfish Gene Theory
    F. Corno, M. Sonza Reorda, G. Squillero
    ICEC98: IEEE International Conference on Evolutionary Computation, May 1998, pp. 575-580
  11. The Selfish Gene Algorithm: a New Evolutionary Optimization Strategy
    F. Corno, M. Sonza Reorda, G. Squillero
    SAC98: 13th Annual ACM Symposium on Applied Computing, Atlanta, Georgia (USA), February 1998, pp. 349-355

Contact information

Giovanni Squillero
Politecnico di Torino
Dipartimento di Automatica e Informatica
Corso Duca degli Abruzzi 24
I-10129 Torino
Tel: +39-011564.7186
Fax: +39-011564.7099
E-mail: giovanni . squilleroat
Personal web page:
Politecnico info page: