Digital code scripts for generative and evolutionary design: De Identitate

 

Professor John Hamilton Frazer, AA Dipl, MA, FCSD, FRSA

Autotectonica

johnfrazer@autotectonica.org

 

With additional contribution by Patrick Janssen

 

 

Abstract

 

The question of De Identitate or identity is addressed by describing the notion of concept-seeding which encodes design characteristics in DNA like code script with generative and evolutionary capability.

 

Introduction

Generative design systems are used to generate large numbers of design alternatives with significant differences between them. These systems define a complex growth process to transform an encoded seed into a design. By making small modifications to either the transformation process or the seed, alternative designs can be generated.

Evolutionary design systems are used to evolve designs adapting to their environment, loosely based on the neo-Darwinian model of evolution through natural selection. These systems consist of a cyclical process of continuous manipulation to ensure the population of designs evolve and adapt gradually.

(Frazer and Janssen 2003)

Three techniques are described in this paper:

Concept-seeding proposes a system generating environment-responding designs. This invokes a set of architectural concepts captured and codified by the designer. Through small command modification, alternative designs are generated.

 

The generative-evolutionary model makes use of an evolutionary design system embedded within a generative system. The generative system generates alternative designs in response to environment, and the evolutionary system manipulates and evolves the generative modifications. In this case, the system does not use any codified architectural concepts.

 

The combined model, combines the generative-evolutionary system and the concept-seeding approach. It allows the generative-evolutionary system to evolve alternative designs, embodying the codified architectural concepts.

 

De Identitate

Most designers employ a highly personalised methodology. This is often apparent stylistically  such as with Gaudí, Mackintosh or Frank Lloyd Wright. Or it can be seen more organisationally or procedurally, or be concerned with abstract space and form. This gives the designer their identity. And this can also apply to whole cities or even cultures up to a point.

This personalised but generic methodology is very abstract, but it can be manifest as sets of standard details formalised to ensure a consistency and to reinforce the style, which can be easily evidenced inside architect’s office. The identifying characteristics go through changes during the development of the designers, sometimes with abrupt changes, more usually with a continuous progression; and even more interestingly, it can continue long after the death of the original designer (Frazer & Janssen 2003)

 

If the designers architectural concepts could be captured and codified in a generic form, a generative system might be able to invoke them to generate designs to embody the concepts. This approach of capturing and codifying architectural concepts is referred to as concept seeding (Frazer, 1974, 1979).

Three tasks are defined. First, a set of generation rules are defined to develop the concept seed into a design. Second, a concept seed is defined to capture certain architectural concepts. Third, with a generative system, designs are generated in response to the environment, both the context and the criteria. The tasks of model’s identifying are not mutually independent, in parallel in most cases.

The architectural concepts can also be codified historically as the endless attempts to recapture the nature of the paintings of Mondrian or the villas of Palladio. The success or failure varies and depends on the sensitivity of the re-creator, often with crass results, particularly when trying to create new works by dead artists. In the case of some living designer’s involvement, such as our work with Cedric Price and Walter Segal, whose timber housing system has been captured for perpetuity in the software (Frazer, 1982).

The concept seeding system is, in itself, not a cyclical system. The system generates a single design proposal from a single seed responding to the design environment. The designer will explore a wide range of design possibilities with small generative modifications to either the concept seed or the generative rules, therefore, resulting in a cyclical process guided by the designers.

The Reptile System

The first attempts to realise this approach was the Reptile System, developed by Frazer from 1968 onwards (Frazer, 1974). This system was developed as a folded plate space-frame system, capable of creating a wide variety of enclosures from two basic structural units, which can be orientated in 18 different ways relative to each other, resulting in over three hundred useful combinatorial possibilities.

As drawing a Reptile enclosure by hand was very tedious, a computer program was developed to draw the enclosures and to create perspective views, initially in 1967. At this stage, with extremely limited capabilities of the computer hardware, much effort focused on how to store and manipulate these enclosures. As the program was enhanced with additional features, by 1971, a generative program was developed to semi-automatically generate complete Reptile enclosures.

Generalised and extended version

A generalised version of the program based on component was later developed. Two kinds of information were required in the program, the conceptual model of the building information in its minimal coded configuration, and a description of the actual components and details for the output stage.

The concept of cultivating the seed to produce different buildings has been extended to mutate details of the seed, producing variants to overcome the great increase in environmental variety encountered with more general purpose of building construction. Individual mutations of the assemblies can be developed interactively and stored as variants.

The configuration of the minimal construction or seed is compared with the brief for the building, and the seed is grown, stretched, deformed and pruned, until it conforms to these requirements. The same seed may bring the variety of forms of building to the same requirements, same as form of building being produced by different cultivation routines. The data structure is modified in two ways. First is the optimisation of the quantifiable and specific brief. Second is the evaluation of solutions produced by the first technique, including aesthetic judgements (Frazer, 1979).

 

Generative evolutionary model

The symbiotic behaviour and metabolic balance of the natural environment are attempted by the generative-evolutionary approach in the built environment. This model proposes the natural evolutionary process to generate the architectural form. The prototype and creative power of natural evolution are emulated by generating virtual architectural designs responding to changing environments. Like the natural world, architecture as an artificial life, subjects to principles of morphogenesis, genetic coding, replication and selection (Frazer, 1995).

A generative system uses code-scripts of instructions to produce computer models of alternative designs to simulate the development of prototypical forms, then, evaluated on the basis of their performance in a simulated environment. By mutating and manipulating the code scripts, new forms are generated, sometimes with unexpected forms emerging.

Typical evolutionary approach

Most engineering applications of the evolutionary approach are interested in convergence on an optimal solution to defined computable criteria for selection. This model identifies two tasks: codifying the parametric model and evolving designs in response to the environment. There are two steps in the first task, one is mapping rules, to map the parameters as a model, and second is evaluating rules to evaluate the model.

A mapping rule produces the design from an encoded set of parameter values by inserting the values into the parametric model. The evolutionary system evolves these parameter values. We define this as convergent evolution by natural selection.

As all the designs are based on the same parametric model, all of them will have the same overall organisation and configuration. Therefore, these programs are seriously limited in their ability to evolve new designs.

However convergent evolution by natural selection is not the only possibility. In the Origin of Species, Darwin talks first of the technique of artificial selection. In our model artificial selection opens up the opportunity to demonstrate preference for user concerns, and provides the opportunity for the designer to jump to faster results.

Nature also relies on divergence to keep a varied gene pool for sudden changes in the environment. Our model provides divergent evolution for the generation of alternative ideas. This gives a matrix of four possible combinations of natural/artificial selection and convergent/divergent evolution (Dawkins, 1986; Simms, 1991; Graham, 1993; Frazer, 1995). However there is no need to slavishly follow nature and short cuts can be made in artificial evolutionary systems such as allowing Lamarckian inheritance.

 

Generative-evolutionary approach

A generative-evolutionary system replaces the mapping step with a generative step. This generative step consists of an embedded generative system. The generative-evolutionary approach requires describing the generative rules in a genetic code in response to a simulated environment. The generative rules tend to be general, without intention to reflect particular architectural concepts. All such rules contain biases and constraints, and the forms produced may nevertheless all share certain characteristics.

The model identifies two tasks: codifying the generative concepts and evolving designs. First, the generation rules generate designs from encoded code-scripts and the evaluation rules evaluate the generated designs. Second, designs are evolved in response to the design environment by a generative-evolutionary system.

Initially, a population of code scripts is created. The evolutionary process consists of four steps. First, designs are generated from the genetic code scripts through some form of epigenetic development in an environment. Second, designs are evaluated by simulating and analysing their performance within their environment. Third, the most successful are selected. Fourth, the selected code scripts are transformed by genetic operators such as crossover and mutation. These four steps then repeat. At some point the process may be stopped.

An important aspect of the generative system is to generate designs in response to an environment. The environment consists of the informative design context and criteria to the generative rules. This allows the developmental process of design as an adaptive process, determining successive structural modifications in response to the environment and measuring the performance of different structures in the environment.

The Interactivator

In 1995, a generative-evolutionary experiment was launched to involve global participation in the evolution of a virtual environment, the evolutionary model of nature was proposed as the generating process for architectural form.

The model proposed a generative-evolutionary system accessible via the Internet, to encourage wide participation and to create biodiversity in the genetic design pool on which Janssen’s model was involved in developing a special demonstration version, the Interactivator. With simplification of the theoretical system, all the key elements are represented.

The developmental process of each member of the family consists of three cyclical parts: cellular growth, materialization and the genetic search landscape. A genetic algorithm is used to ensure that future generations learn from the previous ones and provide for biodiversity during the evolutionary process.

 

Combined model

The concept seeding model combined with the generative-evolutionary model results in a new type of model with both advantages of previous models. The concept-seeding model allows generating designs of particular architectural concepts. The generative-evolutionary model allows designs to evolve, adapting to their environment in complex ways. The combined model synthesises these two previous models, thereby allowing designs to evolve in response to their environment and to embody particular architectural concepts.

In the case of the concept seeding model, the combined model evolves the generative modifications manually by the designer. These modifications introduced small changes to either the seed or to the rules. Representing these modifications allows an evolutionary system to evolve the modifications. The generative modifications are used to generate designs to be evaluated, based on which new populations of modifications are created. This approach requires defining the range of valid generative modifications to develop rules, automatically creating new generative modifications.

With the previous model, generation and evaluation rules are defined. The concept seed is defined, codifying a set of architectural concepts. The design alternatives are evolved in response to the design environment with a generative-evolutionary system and concept seeding.

The embedded generative system generates designs from concept seeds. The generated designs will embody the set of architectural concepts codified by the seed. These modifications will make small changes either to the seed itself or to the rules. These generative modifications result in different designs, with the highest fitness scores being selected. A new population of generative modifications is operated to generate a new population of designs, and so forth.

 

Janssen’s combined model

Broadly speaking, Janssen’s model follows the pattern developed in Frazer’s combined model, which focus on two areas: the nature of the codified concepts and the structure of the overall model.

The idea of capturing and codifying the architectural concept has been refined in a number of ways, which is aimed to develop creative architectural concept. Janssen has defined ‘variety’ more precisely by using a distinction made in evolutionary biology between diversity and disparity (Jaanusson, 1981; Runnegar, 1987; Gould, 2000). Diversity refers designs different in the proportions and dimensions of their parts, with the same overall organisation and configuration of parts in common. Disparity refers to designs that have a fundamentally different organisation and configuration of parts.

The architectural concept must contain enough flexibility and adaptability to allow the birth of disparate designs. The architectural concept should not predefine the overall organisation and configuration of the designs, instead, should focus on defining the parts of the design and their interactions and overlaps. These parts, interactions, and overlaps might be thought of as defining the character of the designs without specifying their overall form. Janssen therefore refers to the set of architectural concepts to as the character schema (or in the context of this conference: De Identitate)

Splitting the design procedure into two phases emphasises the fact that these two phases can be executed in very different ways. The first phase develops, and codifies the design character. This character will reflect the beliefs and preferences of the design team – called the design stance – and will be developed in response to the niche environment. This niche environment can be defined before any specific design environment has actually been found. As a result, this phase creates a generic design entity – the evolution schema – that can be reused many times within different projects.

 

Conclusion

The approach implies some changes in architects’ working methods. The generic approach has to be made explicit, rigorous, and stated in terms which enable a concept to be expressed in genetic code. Ideally, the computer could deduce this information from normal work methods without any conscious changes being necessary. Architects have to be clear about the criteria for evaluating an idea, and prepared to accept the concept of client- and user-participation in the process. The design responsibility changes to one of overall concept and embedded detail, but not individual manifestation. Overall the roles of the architect is enhanced rather than diminished as it becomes possible to seed far more generations of new designs than could be individually supervised, and to achieve a level of sophistication and complexity far beyond the economics of normal office practice.

 

 

 

 

Interactivator: Networked Evolutionary Design System

John Frazer, Julia Frazer, Manit Rastogi, Peter Graham, Patrick Janssen

Architectural Association, London, 1995


Acknowledgements

 

This paper is based on work by the author and his students at the Architectural Association in London, Cambridge University, the University of Ulster and the School of Design in Hong Kong. The valuable contribution of Patrick Janssen is particularly acknowledged – he worked on the Interactivator in 1995 and provided the Janssen model described at the end of the paper.

 

The author would also like express his gratitude to GU Yan for substantial assistance in preparing and editing this paper based on lectures given by the author at the Bartlett School of Architecture, University College, London, 2004, and on a publication by Frazer & Janssen (2003) and other papers.

 

References

 

Dawkins, R. (1986), The Blind Watchmaker, Longman.

Frazer, J. H. (1974), Reptiles. Architectural Design, April, pp. 231 - 239.

Frazer, J. H. and Connor, J. M. (1979), A conceptual Seeding Technique for Architectural Design. PArK 79, Proceedings of the International Conference on the Application of Computers in Architectural Design. (Online Conferences with AMK, 1979), Berlin, pp. 425 – 434.

Frazer, J. H. (1982), Use of Three-Dimensional Computer Input Devices to Encourage Public Participation in Design. Proceedings of the conference on Computer Aided Design 82, Butterworth Scientific, pp. 143 – 151.

Frazer, J. H. (1990), A Genetic Approach to Design – Towards an Intelligent Teacup. In The Many Faces of Design, Nottingham.

Frazer, J. H. (1992), Datastructures for Rule-Based and Genetic Design. In Visual Computing – Integrating Computer Graphics with Computer Vision. Springer Verlag.

Frazer, J.H (1995), An Evolutionary Architecture. London: Architectural Association Publications.

Frazer, J.H. and Frazer, J.M. (1996), The Evolutionary Model of Design. In (Eds. Asanowicz, A. and Jakimowicz, A.) Approaches to Computer Aided Architectural Composition, Technical University of Bialystok, pp. 105-117.

Frazer, J.H. (2002), Creative design and the generative evolutionary paradigm. In (Eds. Bentley, P. and Corne, D.) Creative Evolutionary Systems, San Francisco: Morgan Kaufmann Publishers, pp. 253-257.

FRAZER, J.H. and JANSSEN, P. (2003) Generative and Evolutionary Models for Design, Communication & Cognition Vol 36. Nr 3&4.

Gould, S. J. (2000), Wonderful Life: The burgess shale and the nature of history. London: Vintage.

Graham, P.C., Frazer, J. H. and Hull, M. E. C. (1993), The Application of Genetic Algorithms to Design Problems with Ill-defined or Conflicting Criteria. Conference on Values and  (In)Variants, Amsterdam ((1995), Systematica, 10, pp. 61 – 76).

Holland, J. H. (1975), Adaptation in Natural and Artificial Systems, University of Michigan Press.

Jaanusson, V. (1981), Functional thresholds in evolutionary progress. Lethaia, 14, pp. 251-260.

Janssen, P., Frazer, J. H. and Tang, M. X. (2003a), Evolution Aided Architectural Design: An Internet based evolutionary design system. Proceedings of the 9th EuropIA International Conference, (to appear).

Janssen, P., Frazer, J. H. and Tang, M. X. (2003b), Evolutionary Design Exploration Systems. Proceedings of the International Conference on Construction Information Technology (INCITE 2004).

Runnegar, B. (1987), Rates and modes of evolution in the Mollusca. In (Eds. Campbell, K.S.W. and Day, M.F.) Rates of evolution, London: Allen and Unwin, pp. 39-60.

Simms, K. (1991), Artificial Evolution for Computer Graphics. Computer Graphics, 25(4), pp. 319 – 28.