ABSTRACT

Principles for designing complex systems with specified forms of behaviour are discussed. Multiple scale cellular automata are suggested as dissipative dynamical systems suitable for tasks such as pattern recognition. Fundamental aspects of the engineering of such systems are characterized using computation theory, and some practical procedures are discussed. This chapter discusses some approaches to forms of engineering with complex systems. Mathematical models such as cellular automata seem to capture many essential features of such systems, and provide some understanding of the basic mechanisms by which complexity is produced for example in turbulent fluid flow. Complexity in natural systems typically arises from the collective effect of a very large number of components. The basic problems of complexity engineering thus presumably already arise in cellular automata. Arbitrary complexity can arise in cellular automata. But for engineering purposes, it may be better to consider basic models that are more sophisticated than cellular automata, and in which additional complexity is included from the outset.