Principles in the Evolutionary Design of Digital Circuits—Part I

  • Julian F. Miller
  • Dominic Job
  • Vesselin K. Vassilev

DOI: 10.1023/A:1010016313373

Cite this article as:
Miller, J.F., Job, D. & Vassilev, V.K. Genetic Programming and Evolvable Machines (2000) 1: 7. doi:10.1023/A:1010016313373


An evolutionary algorithm is used as an engine for discovering new designs of digital circuits, particularly arithmetic functions. These designs are often radically different from those produced by top-down, human, rule-based approaches. It is argued that by studying evolved designs of gradually increasing scale, one might be able to discern new, efficient, and generalizable principles of design. The ripple-carry adder principle is one such principle that can be inferred from evolved designs for one and two-bit adders. Novel evolved designs for three-bit binary multipliers are given that are 20% more efficient (in terms of number of two-input gates used) than the most efficient known conventional design.

evolutionary computingevolvable hardwarecicuit design

Copyright information

© Kluwer Academic Publishers 2000

Authors and Affiliations

  • Julian F. Miller
    • 1
  • Dominic Job
    • 2
  • Vesselin K. Vassilev
    • 3
  1. 1.School of Computer ScienceThe University of BirminghamBirminghamEngland
  2. 2.School of ComputingNapier UniversityEdinburghScotland
  3. 3.School of ComputingNapier UniversityEdinburghScotland