nextupprevious
Next:The Analyst's Toolbox Up:Analysis of Unconventional Evolved Previous:Analysis of Unconventional Evolved

Introduction

In recent years, several research groups have demonstrated the potential for artificial evolution to design electronic circuits automatically. An `evolutionary algorithm' is implemented, usually as a computer program, which mimics some aspects of Darwinian evolution: small random variations (`mutations') are repeatedly made to one or more candidate circuit designs. Natural selection is replaced by a `fitness' measure of the degree to which a circuit meets the target engineering specification of behaviour, size, power-consumption, and so on. Mutations resulting in a poorer fitness measurement are rejected, whereas those producing an improvement (or at least no deterioration) are allowed to persist and be built upon by further rounds of variation and selection. Commencing with either randomly generated circuit designs, results of previous evolutionary experiments, or an initial hand-designed attempt, repeated cycles of automated evolution can eventually produce circuits which satisfy the specification. Many elaborations to this basic scheme exist, such as allowing `recombination' of features from two or more individuals in an evolving population of variants.

Electronics design through artificial evolution is becoming practical for some real-world applications [Sipper, Mange, & Péres-Uribe 1998], especially in domains where conventional design methodologies struggle. These include automated analogue circuit design [Rutenbar 1993], and design under difficult implementation constraints such as size, power-consumption, or even fault-tolerance [Thompson 1997a]. Here there are applications even for relatively simple evolved circuits.

When setting-out to evolve a circuit for some task, there is a fundamental decision to be made: whether the evolutionary process is free to explore any possible design, or whether it is constrained to encourage `sensible' circuits more like those arising from conventional design methods. In many ways, the constrained approach seems like a good idea. The search-space of possible designs through which evolution must navigate is reduced in size, to a set of circuits that we can readily understand, and some of which we know should be able to perform the task. Superficially, this suggests an increased chance of success, and a guaranteed utility of the final result, in that we know it is likely to be `well-behaved' and amenable to analysis using established techniques.

The unconstrained approach, however, is alluring [Thompson 1998]. Evolution is free to explore very unusual designs: circuits with strange structures and intricate dynamical behaviours beyond the scope of conventional design and analysis. In this larger search-space, there is the possibility of better solutions, if we are prepared to set aside our prejudices (based on existing design methods) of how an electronic circuit should be. The unrestricted design-space may also contain more evolvable circuits: those more susceptible to gradual adaptation, through a sequence of small changes, towards meeting the specification. Attempts to aid evolution by restricting it to conventional architectures, usually the products of top-down design, may actually hinder it if these structures are not so easily improved through evolution's more bottom-up activities. Furthermore, if the most promising application domains are the ones problematic for conventional design, then the exploration of new strategies is appropriate. Finally, if we are to learn or be inspired by the products of artificial evolution, then we must give it the freedom to produce circuits working in an unexpected way.

Clearly, to learn from an evolved circuit, we need to be able to discern some of its principles of operation. However, even if the goal is merely to evolve a circuit that works (and we don't need to know how), some degree of analysis may still increase its utility as an engineering product. In particular, if bounds on possible long-term changes in the circuit's behaviour can be derived, then the circuit can be applied with confidence more widely. The need for extended consistent performance is difficult to accommodate within an evolutionary framework, because usually the tests for fitness measurement of candidate solutions (the bottleneck in the evolutionary process) are as brief as possible. The evolutionary approach can be made more viable if, through analysis, it can be predicted that a circuit will perform adequately in the long term, even though it was never tested for long during its evolution.

There are two components to long-term stability of behaviour. First, the circuit must be insensitive to certain variations in its implementation or environment, or able to adapt to them. Examples include thermal drift, noise, and ageing effects in semiconductor devices and integrated circuits. Second, it is possible for even simple dynamical systems to display intermittent behaviour over long time-scales [Pomeau & Manneville 1980]. This is not due to any external fluctuations, but is a property of the system's own dynamics. Circuits can be constructed which will inevitably -- though after a long period of normal operation -- suddenly and unpredictably change in their qualitative mode of behaviour; possibly forever, or perhaps to return to normal operation for another long interval [Jefferies & Deane 1997]. An evolutionary algorithm, unless using debilitatingly long fitness evaluation tests, would be blind to this pathological behaviour, and could present such a circuit as a solution to the engineering specification. Inherently erratic dynamics of this kind can also interact with the time-dependent exogenous influences mentioned above. If analysis can provide reassurance against long-term sporadic misbehaviour, the circuit is rendered more useful.

In critical applications, complex circuits can be embedded within an error-recovering framework [Anderson 1985]. The error recovery mechanisms themselves can be simpler, and perhaps formally verified. For example, if a failure condition is detected, the circuit responsible could be automatically reset to a safe initial state. The more a circuit's potential failure modes are understood, the more feasible it becomes to construct a resilient system containing it.

When encouraging evolution to explore beyond the scope of conventional design, there can be engineering benefits to some sort of analysis even without a complete understanding of how the circuit works. In the next section, we discuss what `analysis' is, and how it can be done. We then apply these techniques to illuminate an unconventional evolved circuit, showing that one can indeed address some analysis questions even if the circuit is so strange that parts of its inner workings remain unknown.


nextupprevious
Next:The Analyst's Toolbox Up:Analysis of Unconventional Evolved Previous:Analysis of Unconventional Evolved
Adrian Thompson

1998-11-18