Evolution as a metaphor borrowed from nature can be used to describe a
design process. However, this has generally been applied to the evolu
tion of a solution which assumes the problem does not change throughou
t the process. This is a naive assumption in design because the proble
m indeed changes. This paper considers the evolution of both the probl
em and solution and introduces coevolutionary design. This paper propo
ses two approaches to implementing coevolutionary design and also addr
esses the related issues of evaluation and termination in a computatio
nal model. Finally, the paper considers how a coevolutionary system ca
n generate and recognize emergent structure and behaviour. (C) 1997 El
sevier Science Limited.