next up previous
Next: The Objectives of Circuit Up: Introduction Previous: Introduction

Algorithms

Most of the discussion applies equally to any evolutionary algorithm (EA), in fact to any search algorithm based on a process of `generate-and-test'. Since our aim is to explore design-space as freely as possible, we avoid incorporating heuristics into the search that make sweeping assumptions about the characteristics of desirable circuits. For performance superior to random search, however, some domain-specific search biases are necessary [2]. Hence evolutionary search is used, the bias of which (that future candidate circuits should be based on variations of the more successful earlier ones) makes minimal -- but not negligible -- assumptions as to the nature of the circuit itself.

Biases also arise, often unintentionally, from the circuit representation to which the operators are applied. Skews in the number of points representing each circuit (or type of circuit), and clustering of circuit types in the representation with respect to the operators, can both bias the searching of even a simple (1+1) evolution strategy [3]. For many EAs, the local gradient of fitness with respect to the operators can bias the direction of search, for example towards relatively `smooth' parts of the fitness landscape [4,5]. Whether helpful or adverse for search efficacy, such biases are not easily avoided, but can sometimes be turned to specific uses such as giving graceful degradation properties to evolved circuits [6].

Later, when more of the uncharted territory of design-space has been investigated, the performance of the EA might be improved by incorporating this heuristic knowledge into the circuit representation, or the variation and selection operators. In this paper we use basic genetic algorithms (GAs), often with very direct `genetic' encodings. This is to aid clarity in describing the experiments, and does not imply that these GAs are particularly effective EAs for these tasks. Note that at any given time, an EA is searching over accessible variations rather than the entire design-space [7]; no attempt is made at global search, but instead at the exploration of new regions.


next up previous
Next: The Objectives of Circuit Up: Introduction Previous: Introduction
Adrian Thompson
1999-10-29