Conference PaperPDF Available

Generative Evolutionary Design: A system for generating and evolving three-dimensional building models.


Abstract and Figures

This paper describes a comprehensive framework for generative evolutionary design. The key problem that is identified is generating alternative designs that vary in a controlled manner. Within the proposed framework, the design process is split into two phases: in the first phase, the design team develops and encodes the essential and identifiable character of the designs to be generated and evolved; in the second phase, the design team uses an evolutionary system to generate and evolve designs that incorporate this character. This approach allows design variability to be carefully controlled. In order to verify the feasibility of the proposed framework, a generative process capable of generating controlled variability is implemented and demonstrated.
Content may be subject to copyright.
Patrick Janssen
School of Design, Hong Kong Polytechnic University
John Frazer
Digital Practice Ecosystem, Gehry Technologies
Ming-Xi Tang
School of Design, Hong Kong Polytechnic University
This paper describes a comprehensive framework for generative evolutionary design.
The key problem that is identified is generating alternative designs that vary in a
controlled manner. Within the proposed framework, the design process is split into
two phases: in the first phase, the design team develops and encodes the essential and
identifiable character of the designs to be generated and evolved; in the second phase,
the design team uses an evolutionary system to generate and evolve designs that
incorporate this character. This approach allows design variability to be carefully
controlled. In order to verify the feasibility of the proposed framework, a generative
process capable of generating controlled variability is implemented and demonstrated.
Keywords: evolutionary design, generative design, generative system, genetic
algorithm, evolutionary algorithm
Evolutionary design systems are loosely based on the neo-Darwinian model of
evolution through natural selection. A population of individuals is maintained and an
iterative process applies a number of evolution steps that create, transform, and delete
individuals in the population. Each individual has a genotype representation and a
phenotype representation. The genotype representation encodes information that can
be used to create a model of the design, while the phenotype representation is the
actual design model. The individuals in the population are rated for their effectiveness,
and on the basis of these evaluations, new individuals are created using ‘genetic
operators’ such as crossover and mutation. The process is continued through a number
of generations so as to ensure that the population as a whole evolves and adapts.
A wide variety of evolutionary algorithms exist, with the four main types being
genetic algorithms (Holland1975), evolution strategies (Rechenberg1973),
evolutionary programming (Fogel1963), and genetic programming (Koza1992).
The evolutionary process typically has a centralised control structure consisting of a
main loop that repeatedly invokes the evolution steps. Individuals are processed in a
synchronous manner, whereby the evolutionary process stops and waits for the
processing of all individuals by one evolution step to be completed before proceeding
onto the next evolution step.
The evolution steps include a reproduction step that creates new genotypes by
combining genetic material from randomly selected parents; a developmental step that
creates design models (phenotypes) from encoded genotypes; and an evaluation step
that evaluates the performance of the design with respect to one or more objectives. In
addition, selection and survival steps allow the genetic material of the best individuals
to pass from one generation to the next.
Types of evolutionary design
Two types of evolutionary design may be broadly identified: parametric evolutionary
design and generative evolutionary design.
Parametric evolutionary design is usually used late in the design process and focuses on
the optimisation of design solutions to well-defined design problems. An existing design
is defined and parts that require improvement are parameterised. The evolutionary
system evolves the parameter values. Such systems are generally described as
convergent search systems that search the parameter space for an optimal or satisficing
set of parameter values. Two recent examples of parametric evolutionary design systems
are Rasheed (1998); Caldas (2001).
Generative evolutionary design, on the other hand, may be used early on in the design
process and focuses on the discovery of inspiring or challenging design alternatives for
ill-defined design tasks. A generative process is created that uses information in the
genotype to generate alternative design models. The evolutionary system will tend to
evolve a divergent set of alternative designs, with convergence on a single design often
being undesirable or even impossible. Such systems are sometimes described as
divergent systems or exploration systems. Examples of generative evolutionary design
systems include Frazer and Connor (1979), Graham et al. (1993); Frazer (1995b);
Bentley (1996); Rosenman (1996a); Coates et al. (1999); Funes and Pollack (1999); Sun
With regard to the types of designs produced, the main difference between these two
approaches relates to the variability of designs. With the parametric approach, design
variability is low. Since the designs are all based on the same parametric model, the
designs will all have the same overall organisation and configuration. With the
generative approach, the variability in designs can potentially be much greater.
Of these two approaches, the parametric approach is the more common and well
developed. The generative approach, although more complex, can be much more
For generative evolutionary design, a distinction can be made between systems whose
main purpose is to inspire, versus systems whose main purpose is to challenge. Many
of the existing systems evolve forms that may be inspiring to designers. These types
of systems may produce highly abstract forms that trigger new possibilities in the
minds of the designers. However, if the forms do not incorporate a relatively explicit
and comprehensive description of the design, then the designers will be required to
interpret and read meaning into the forms. The designers thereby perceive a design
within the form.
In order to challenge, designs rather than forms must be evolved. Such designs must
fulfil four key criteria. The designs must be:
Complex: The level of complexity within the designs must be commensurate
with the complexity of the entities being designed. Designs must therefore
consist of three-dimensional models consisting of a realistic number and
variety of related elements.
Intelligible: The forms must be directly intelligible as designs by both people
and by other software systems. Important characteristics of the forms must
therefore be explicitly represented, thereby allowing for unambiguous
Unpredictable: The forms must vary from one another in significant ways.
This must include variation in the organised and configured of the elements
that comprise the form.
Desirable: The forms must embody certain qualities that are seen to be
desirable by the designers using the system. These qualities may be either
qualitative or quantitative.
The first three criteria – for designs to be complex, intelligible and unpredictable –
depend primarily on how the generative process is implemented. Such a process must
use a set of generative rules to generate individual designs.
The fourth criterion – for designs to be desirable – typically depends on the
implementation of the evaluation process, which may include both an automated and
manual component. The automated component will invoke simulate and analysis
software in order to evaluate quantitative qualities. The manual component will rely
on human judgement to evaluate qualitative qualities. As well as the evaluation
process, it may also be possible to hard-code such qualities within the generative
The variability problem
In order for a generative evolutionary system to challenge the designers, the
generative process must generate designs that are complex, intelligible and
unpredictable. This brings to light a fundamental problem: given a certain level of
complexity, it is very difficult to create a generative process that generates designs
that are both intelligible and unpredictable. If unpredictability is required, then the
generative process tends to become under-restricted, resulting in forms that are chaotic
and unintelligible. If intelligibility is required, then the generative process tends to
become over-restricted, resulting in designs that are all very similar and predictable.
This conflict is referred to as the variability problem.
The generative process consists of a set of generative rules that are applied to some
starting condition. The same set of rules will be used to generate each design. The
genotypes encode variations in the starting condition and in how the rules are applied.
In order to overcome the variability problem, a generative process is required where
the variability of designs is carefully controlled in order to ensure that designs are both
intelligible and unpredictable. This is referred to as controlled variability.
Developing such rules requires the identification of a set of characteristics common to
all the designs to be generated. Rules can then be created based on these shared
characteristics. Such characteristics may relate to issues of aesthetics, space, structure,
materials, construction, and so forth.
In the domain of architecture, it is difficult to identify any significant characteristics
that are shared by all possible designs (including future designs as well as existing
designs). Buildings simply vary too much for this to be possible. Even for existing
designs, attempting to pin-down shared characteristics is problematic. As a result,
some sub-set of designs needs to be considered that includes designs that are similar in
some way, but excludes others that are not similar. Since the included designs will
share certain characteristics, they may be described as a family of designs. A decision
must be made as to how to define this family.
One approach to defining the family of designs is to focus on conventional designs.
This involves defining a sub-set of designs based on typical characteristics found in
existing designs. However, such an approach is problematic since it fundamentally
limits the creativity of the designer. The aim of developing a generative evolutionary
design system is to enhance the creative process by allowing designers to explore
populations of alternative designs. If the designs being generated are required to be
conventional, then the creative process will be hindered rather than enhanced.
An alternative approach is to focus on the oeuvre or body of work of one design team.
This involves defining a sub-set of designs based on a set of characteristics developed
by a particular design team. This is the approach pursued in this research.
A framework has been developed that allows designers to incorporate and express
their own design ideas. The core concept within this framework is the notion of a
design entity that captures the essential and identifiable character of a varied family of
designs by one designer or design team. This conceptualisation is defined as a design
schema. It encompasses those characteristics common to all members of the family,
possibly including issues of aesthetics, space, structure, materials and construction.
Although members of the family of designs share these characteristics, they may
differ considerably from one another in overall organisation and configuration. Design
schemas are seen as formative design generators; their intention is synthetic rather
than analytic.
When a design schema is codified in a form that can be used by a generative
evolutionary system, it provides a way of overcoming the variability problem. The
encoded schema allows complex designs to be generated that are both intelligible and
predictable. This approach is based on the work of Frazer and Connor (1979); Frazer
(1995a); Sun (2001).
The schema framework consists of two parts: a design method and an evolutionary
system. The design method broadly defines a set of tasks to be carried out by the
designer team. The evolutionary system is a software system used by the designer
team for generating and evolving alternative designs. Both the design method and the
evolutionary system are introduced below. For a more detailed discussion, see Janssen
Design method
The design method breaks the design process down into two sequential phases. Figure
1 shows the overall structure of the design method. In the first phase, a design schema
is developed that may be used to evolve designs for a range of different projects. In
the second phase, the schema developed in the first phase is applied to a specific
project and a detailed design proposal is developed.
Each project defines a specific environment for a design, encompassing both design
constraints and design context. Examples of design constraints may include the
budget, the number of spaces, floor areas, performance targets and so forth. The
design context may include site dimensions, site orientation, neighbouring structure,
seasonal weather variations, and so forth. The schema developed in the first phase is
not specific to one design environment. Instead, the design team develops it with a
certain type of environment in mind, referred to as the niche environment. This niche
environment encompasses a range of possible constraints and a range of possible
contexts. The schema can be used in any project whose design environment falls in
the niche environment for which the schema was designed. The first phase may
therefore be viewed as a generalization process, and the second phase as a
specialization process.
Figure 1: The schema-based generative evolutionary design method.
The encoded schema will consist of a set of small programs, or routines, that
encapsulate the rules and representations for all of the evolution steps within the
evolutionary system. In order to generate and evolve alternative designs, the
evolutionary system requires the encoded schema and the encoded environment. Both
need to be encoded in a format that is compatible with the system and with one
Evolutionary system
The evolutionary system maintains a single population that is manipulated by four
evolution steps: reproduction, development, evaluation and survival. In addition there
is also a visualization step that allows users to select and visualise designs in the
population, and initialisation and termination steps for starting and stopping the
evolutionary process.
One of the key requirements for the evolutionary system is customisability. The
design team must be able to encode and input both the design schema and the design
environment within the system. In addition, the design team is also likely to want to
make use of existing software applications for modelling, visualising and evaluating
design models.
The evolutionary system is therefore broken down into two parts: a generic core and a
set of specialised components. The generic core defines the main structure of the
evolutionary system and can be used unmodified by any design team, on any project.
This core consists of underlying program modules that communicate and interact with
one another. However, in order to be functional, these modules must be linked to the
specialised components. The specialised components are completely customisable and
must be defined by the design team. Three types of specialised components exist:
routines, data-files, and applications.
Routines encapsulate the rules and representations used by the evolutionary
system. The design team must create a set of such routines that together
constitute the encoded schema.
Data-files encapsulate information about the design environment. The design
team must create these data-files that together constitute the encoded
Applications are existing software applications whose functionality the design
team may require, in particular for modelling, visualising and evaluating
design models.
Figure 2: Schema-based generative evolutionary design system.
As well as customisability, a second key requirement is scalability. The system should
allow for the evolution of large complex designs without performance being adversely
affected. This is especially pertinent for the evaluation step, since the simulation or
analysis of the performance of a building design can be time consuming.
In order to support scalability, a parallel architecture has been developed using a
standard client-server model in a networked computing environment. The architecture
of the system is shown in figure 2. The server manages the population of designs and
performs the reproduction and survival steps, while multiple client computers perform
the most time consuming developmental and evaluation steps.
The architecture uses an asynchronous evolutionary process in combination with a
decentralised control structure. The four evolution steps are therefore not centrally
controlled and act independently from one another. Each step extracts a small number
of individuals from the population, processes these individuals, and either inserts the
resulting individuals back into the population or – in the case of the survival step –
deletes a number of individuals in the population.
The asynchronous evolutionary process reduces the execution time and is highly
effective in situations where the development and evaluation steps are costly. The
decentralised control allows client computers to be easily be added and removed from
the evolutionary process and allows the system to cope gracefully with failure of one
or more client systems.
The evolutionary system is currently under development. In order to verify the
feasibility of the schema-based framework, the process of encoding a design schema
has been demonstrated. The demonstration consists of three parts:
An example design schema has been created for a family of multi-story
buildings. The overall building form, the organisation of spaces, and the
treatments of facades may all vary significantly. Some additional
complications such as sloping walls have been included, but not curved walls.
A generative process has been created for generating design models in the
example schema. This process consists of a series of transformations that
gradually transform a three-dimensional orthogonal grid structure into a design
for a building.
A developmental routine, an initialisation routine and a visualization routine
have been implemented for the example schema. These routines have been
used to generate and visualise a variety of design models. The designs that are
generated are complex, intelligible, and unpredictable. Controlled variability
has therefore been achieved.
Generative process
The generative process consists of a sequence of eight generative transformations that
gradually change an orthogonal grid into a 3-dimensional building model. Figure 3
shows (diagrammatically in two-dimensions) the eight generative transformations:
positioning of the grid in the site, translation of the grid-faces, inclination of outer
grid-faces, insertion of the staircase, creation of spaces, selection of outside spaces,
insertion of doors, and insertion of windows.
Most transformations require a set of parameters encoded within the genotype. The
genotype consists of a fixed length string of parameters, with each parameter being
encoded as real values in the range 0.0 to 1.0. The encoded value may be mapped to a
value within a different continuous or discrete range as required. Some
transformations may also require certain parameters or data encoded in the
environment data-file.
Figure 3: The generative process
In order to verify the character and variability of the designs that would be produced
by the generative process described above, the initialisation, developmental and
visualization routines were implemented:
The initialisation routine was used to generate a population of individuals with
randomly generated genotypes, but with no phenotypes or evaluation scores.
This routine calculates the length of the required genotype, and creates a
random value for each parameter.
The developmental routine was used to create phenotypes for each individual.
The generative process used by this routine has already been described above.
A visualization routine has been created that uses Ecotect by developed by
Square One Research to visualise the design models that are generated. This
routine extracts the phenotype from each individual, translates the phenotype
representation to the model representation used by Ecotect, and then allows the
design to be visualised using the Ecotect interface.
The initialisation routine was used to generate a population of genotypes, the
developmental routine was then used to generate a population of design models, and
finally the visualization routine was use to view these models. Figure 4 shows a
selection of models generated.
Figure 4: A set of generated (but not evolved) designs.
The demonstration has shown that it is possible to create a generative process that
generates complex three-dimensional models of building designs that are both
intelligible and unpredictable. Controlled variability has therefore been achieved.
Since the designs have not yet been evolved, they do not yet incorporate desirable
qualities. The next stage of the research will focus on developing the complete
evolutionary system. This will allow designs to evolve and adapt in response to the
environment and the evaluation criteria, thereby resulting in qualities that are seen to be
Our research project is supported by a UGC PhD project grant from the Hong Kong
Polytechnic University.
Bentley, P. J. (1996). “Generic Evolutionary Design of Solid Objects using a Genetic Algorithm.”
Doctoral dissertation, Division of Computing and Control Systems, Department of Engineering,
University of Huddersfield.
Caldas, L. (2001). “An Evolution-Based Generative Design System: Using Adaptation to Shape
Architectural Form.” Doctoral dissertation, Massachusetts Institute of Technology.
Coates, P., Broughton, T., and Jackson, H. (1999). “Exploring three-dimensional design worlds using
Lindenmayer Systems and Genetic Programming.” In Bentley, pages 323–341.
Fogel, D. B. (1995). “Evolutionary computation: Towards a new philosophy of machine intelligence.”
IEEE Press.
Frazer, J. H. (1995a). “An Evolutionary Architecture.” AA Publications, London, UK.
Frazer, J. H. (1995b). “The interactivator.” AA Files, 72–73.
Frazer, J. H. and Connor, J. (1979). “A conceptual seeding technique for architectural design.” In
Proceedings of International Conference on the Application of Computers in Architectural Design and
Urban Planning (PArC79), pages 425–434, Berlin. AMK.
Funes, P. and Pollack, J. (1999). “Computer evolution of buildable objects.” In Bentley, P. J., editor,
Evolutionary Design by Computers. Morgan Kaufmann Publishers, San Francisco, CA., pages 387–
Graham, P. C., Frazer, J. H., and Hull, M. C. (1993). “The application of genetic algorithms to design
problems with ill-defined or conflicting criteria.” In Glanville, R. and de Zeeuw, G., editors,
Proceedings of Conference on Values and, (In) Variants, pages 61–75.
Holland, J. H. (1975). “Adaptation in Natural and Artificial Systems.” University of Michigan Press,
Ann Arbor.
Janssen, P. H. T. (2004). “A design method and a computational architecture for generating and
evolving building designs.” Doctoral dissertation, School of Design Hong Kong Polytechnic University
(submitted October 2004).
Koza, J. R. (1992). “Genetic Programming: On the Programming of Computers by Means of Natural
Selection.” MIT Press, Cambridge, MA.
Rasheed, K. M. (1998). “GADO: A Genetic Algorithm for Continuous Design Optimization.” Doctoral
dissertation, Department of Computer Science, Rutgers University, New Brunswick, NJ. Technical
Report DCS-TR-352.
Rechenberg, I. (1973). “Evolutionstrategie: Optimierung Technisher Systeme nach Prinzipien der
Biologischen Evolution.” Frommann-Holzboog Verlag, Stuttgart, Germany.
Rosenman, M. A. (1996). “An exploration into evolutionary models for non-routine design.” In AID’96
Workshop on Evolutionary Systems in Design, pages 33–38.
Sun, J. (2001). “Application of Genetic Algorithms to Generative Product Design Support Systems.”
Doctoral dissertation, School of Design, Hong Kong Polytechnic University.
... Dexen is based on a previous multi-objective evolutionary developmental design environment called EDDE (Janssen 2004, Janssen et al 2005, Janssen 2009). Dexen has been developed with a fundamentally different type of architecture to achieve improvements in both speed and flexibility. ...
Conference Paper
Full-text available
Evolutionary developmental design (Evo-Devo-Design) is a design method that combines complex developmental techniques with an evolutionary optimisation techniques. In order to use such methods, the problem specific developmental and evaluation procedures typically need to be define using some kind of textual programming language. This paper reports on an alternative approach, in which designers can use Visual Dataflow Modelling (VDM) instead of textual programming. This research described how Evo-Devo-Design problems can defined using the VDM approach, and how they can subsequently be run using a Distributed Execution Environment (called Dexen) on multiple computers in parallel. A case study is presented, where the Evo-Devo-Design method is used to evolve designs for a house, optimised for daylight, energy consumption, and privacy.
... Source code is meant to formulate the design variables in order to generate the preferred design solution. Thus, it challenges the idea of form-finding instead of form-making to accomplish the four criteria of the design, which are complex, intelligible, unpredictable, and desirable [12]. The next step in the generative algorithm is the investigation of the optimized solution, so-called design exploration, the platform develop by Thornton Tomasseti through grasshopper plugin TT Toolbox which is act as generator for iterating all possible solution from the involved parameters and visualize it in designer-friendly parallel coordinate plot [13]. ...
Full-text available
Along with the enormous impact on computational development in architecture and urban design, the way in approaching the built environment is shifting and intended to look closer to performance and evidence-based design. This development holds promise in handling complex computation to approach desired targeted design goals. However, the implementation of form-finding and design performance optimization still lacks, particularly in Japan’s sub-tropical climate. This paper describes the parametric design and design exploration process’s implementation through the generative algorithm platform to develop a benchmark model to predict building energy and daylight performance and find possible design solutions from the iteration process during the early phase of the design process. The variables incorporated related to the glazing ratio, the length of the overhang, and building orientation. Grasshopper, a parametric-based plugin that works in Rhinoceros, is used to arrange a parametric definition for the overall experiment. The tools used to investigate the environmental analysis and energy consumption are Ladybug and Honeybee, and the exploration process will be conducted using Design Explorer. The context will be situated in Orio district and uses the EPW file of Kitakyushu city, Fukuoka, Japan. The results of this research furthermore can potentially be a comparison for more dynamic factors.
Full-text available
Architecture has a strong relationship with the daylight universe. It implicates further occupants’ behaviour toward visual comforts, healthiness, and energy consumption. The daylight simulation in the early phase of design benefits the architect in predicting the possibilities of daylight-related target goals during the design process. A shading system is one of the strategies in approaching passive design to prevent an excessive amount of undesirable daylight intensity. This paper investigates different sun louvers shading patterns and their relation to the Useful Daylight Illuminance (UDI) in the context of Indonesia, presented by incorporating the EPW file of Jakarta. Parametric and multi-objective optimization has been used to optimize, explore, and map the design possibilities based on the louver shading component as dynamic parameters. Rhinoceros and Grasshopper, as parametric-based modelling software, were used as the primary modelling platform, while the Honeybee and Ladybug plugin were used to undergo the daylight-related environmental analysis. The design exploration iterates 2.160 design solutions with a value of dynamic parameters and the targeted UDI value embedded in each. The results show that the solution founded from iteration process has more areas of illuminance within 300 lx to 500 lx by about 15%.
The preconceptions that designers bring to the table when they are considering a particular design task are an unavoidable and necessary part of the design process. This paper first reviews the literature relating to the role of preconceptions in design, and then goes on to discuss computational tools that support the development and expression of such design preconceptions. As an example of such a tool, an outline is given of a generative evolutionary design system that allows designers to evolve families of designs that embody preconceived values and ideas.
Full-text available
This research paper exemplifies upon a novel information integrated generative design method: Morphogenomics, being experimented with at Hyperbody, TU Delft. Morphogenomics, a relatively new research area, which deals with the intricacies of morphological informatics. This paper furthermore discusses an ongoing Morphogenmoics oriented design-research case: the development of a Distributed Network-city along the A2 highway, Netherlands. The A2 highway, development is a live project seeking urban development on either side of this busy highway. Hyperbody, during the course of this research initiative developed a series of real-time interactive computational tools focusing upon the collaborative contextual generation of a performative urban and architectural morphology for the A2 highway. This research paper elaborates upon these computational techniques based Morphogenomic approach and its resultant outcomes.
Full-text available
This thesis investigates the novel idea of using a computer to create and optimise conceptual designs of a range of differently-shaped three-dimensional solid objects from scratch. An extensive literature review evaluates all related areas of research and reveals that no such system exists. The development of a generic evolutionary design system, using a genetic algorithm (GA) as its core, is then presented. The thesis describes a number of significant advances necessitated by the development of this system. Firstly, a new low-parameter spatial-partitioning representation of solid objects is introduced, which allows a wide range of solid objects to be appropriately defined and easily manipulated by a GA. Secondly, multiobjective optimisation is investigated to allow users to define design problems without fine-tuning large numbers of weights. As a result of this, the new concepts of acceptability, range-independence and importance are introduced and a new multiobjective ranking method is identified as being most appropriate. Thirdly, variable-length chromosomes in GAs are addressed, to allow the number of primitive shapes that define a design to be variable. This problem is overcome by the use of a new hierarchical crossover operator, which uses the new concept of a semantic hierarchy to reference chromosomes. Additionally, the thesis describes how the performance of the GA is improved by using an explicit mapping stage between genotypes and phenotypes, steady-state reproduction with preferential selection, and a new lifespan limiter. A library of modular evaluation software is also presented, which allows a user to define new design problems quickly and easily by picking combinations of modules to guide the evolution of designs. Finally, the feasibility of the generic evolutionary design of solid objects is demonstrated by presenting the successful evolution of both conventional and unconventional designs for fifteen different solid-object design tasks, e.g. tables, heatsinks, penta-prisms, boat hulls, aerodynamic cars.
Full-text available
"October 2004" Thesis (Ph.D.)--The Hong Kong Polytechnic University, 2005. Includes bibliographical references.
Since the end of the last century it has commonly been seen as decadent to simply apply aesthetics to the structure of a building to make it beautiful (with the exception of the deliberately ironic, although irony itself would have been thought decadent by the stern moralists of the modern movement ). Architects such as Louis Sullivan, Mies Van der Rohe, Le Corbusier and so on used the example of engineering to help to explain the relationship between form and function. Based on the simplistic assumption that engineers do not design form, but that it emerges from the correct solution to mechanical realities (cf. the Eiffel tower, Brunel's bridges and the "dom-ino" concrete frame) the modern movement declared such objects as pure and right . The functionalist tradition has suffered many blows in the last 50 years, partly because it was always an oversimplification, and partly because technology has now reached a point where the constraints of structure have almost vanished, with form becoming the precursor of function rather than it's determinant, ie. anything is possible (cf. Utzon's Sydney Opera House, The new Bilbao gallery etc.) The study of evolutionary algorithms allows us to get back to a more rigorous analysis of the basic determinants of form, where the global form of an object not only should not but actually cannot be predetermined on an aesthetic whim. Thus with genetic algorithms we have an opportunity to experiment with the true determinants of form in a way that the pioneers of the modern movement would have relished - an aesthetic of pure function whose outcome is totally embedded in the problem to be solved. Published (author's copy) Peer Reviewed
This dissertation dwells in the interstitial spaces between the fields of architecture, environmental design and computation. It introduces a Generative Design System that draws on evolutionary concepts to incorporate adaptation paradigms into the architectural design process. The initial aim of the project focused on helping architects improving the environmental performance of buildings, but the final conclusions of the thesis transcend this realm to question the process of incorporating computational generative systems in the broader context of architectural design. The Generative System [GS] uses a Genetic Algorithm as the search and optimization engine. The evaluation of solutions in terms of environmental performance is done using DOE2.1E. The GS is first tested within a restricted domain, where the optimal solution is previously known, to allow for the evaluation of the system's performance in locating high quality solutions. Results are very satisfactory and provide confidence to extend the GS to complex building layouts. Comparative studies using other heuristic search procedures like Simulated Annealing are also performed. The GS is then applied to an existing building by Alvaro Siza, to study the system's behavior in a complex architectural domain, and to assess its capability for encoding language constraints, so that solutions generated may be within certain design intentions. An extension to multicriteria problems is presented, using a Pareto-based method.
In "An Evolutionary Architecture", John Frazer presents an overview of his work for the past 30 years. Attempting to develop a theoretical basis for architecture using analogies with nature's processes of evolution and morphogenesis. Frazer's vision of the future of architecture is to construct organic buildings. Thermodynamically open systems which are more environmentally aware and sustainable physically, sociologically and economically. The range of topics which Frazer discusses is a good illustration of the breadth and depth of the evolutionary design problem. Environmental Modelling One of the first topics dealt with is the importance of environmental modelling within the design process. Frazer shows how environmental modelling is often misused or misinterpreted by architects with particular reference to solar modelling. From the discussion given it would seem that simplifications of the environmental models is the prime culprit resulting in misinterpretation and misuse. The simplifications are understandable given the amount of information needed for accurate modelling. By simplifying the model of the environmental conditions the architect is able to make informed judgments within reasonable amounts of time and effort. Unfortunately the simplications result in errors which compound and cause the resulting structures to fall short of their anticipated performance. Frazer obviously believes that the computer can be a great aid in the harnessing of environmental modelling data, providing that the same simplifying assumptions are not made and that better models and interfaces are possible. Physical Modelling Physical modelling has played an important role in Frazer's research. Leading to the construction of several novel machine readable interactive models, ranging from lego-like building blocks to beermat cellular automata and wall partitioning systems. Ultimately this line of research has led to the Universal Constructor and the Universal Interactor. The Universal Constructor The Universal Constructor features on the cover of the book. It consists of a base plug-board, called the "landscape", on top of which "smart" blocks, or cells, can be stacked vertically. The cells are individually identified and can communicate with neighbours above and below. Cells communicate with users through a bank of LEDs displaying the current state of the cell. The whole structure is machine readable and so can be interpreted by a computer. The computer can interpret the states of the cells as either colour or geometrical transformations allowing a wide range of possible interpretations. The user interacts with the computer display through direct manipulation of the cells. The computer can communicate and even direct the actions of the user through feedback with the cells to display various states. The direct manipulation of the cells encourages experimentation by the user and demonstrates basic concepts of the system. The Universal Interactor The Universal Interactor is a whole series of experimental projects investigating novel input and output devices. All of the devices speak a common binary language and so can communicate through a mediating central hub. The result is that input, from say a body-suit, can be used to drive the out of a sound system or vice versa. The Universal Interactor opens up many possibilities for expression when using a CAD system that may at first seem very strange.However, some of these feedback systems may prove superior in the hands of skilled technicians than more standard devices. Imagine how a musician might be able to devise structures by playing melodies which express the character. Of course the interpretation of input in this form poses a difficult problem which will take a great deal of research to achieve. The Universal Interactor has been used to provide environmental feedback to affect the development of evolving genetic codes. The feedback given by the Universal Interactor has been used to guide selection of individuals from a population. Adaptive Computing Frazer completes his introduction to the range of tools used in his research by giving a brief tour of adaptive computing techniques. Covering topics including cellular automata, genetic algorithms, classifier systems and artificial evolution. Cellular Automata As previously mentioned Frazer has done some work using cellular automata in both physical and simulated environments. Frazer discusses how surprisingly complex behaviour can result from the simple local rules executed by cellular automata. Cellular automata are also capable of computation, in fact able to perform any computation possible by a finite state machine. Note that this does not mean that cellular automata are capable of any general computation as this would require the construction of a Turing machine which is beyond the capabilities of a finite state machine. Genetic Algorithms Genetic algorithms were first presented by Holland and since have become a important tool for many researchers in various areas.Originally developed for problem-solving and optimization problems with clearly stated criteria and goals. Frazer fails to mention one of the most important differences between genetic algorithms and other adaptive problem-solving techniques, ie. neural networks. Genetic algorithms have the advantage that criteria can be clearly stated and controlled within the fitness function. The learning by example which neural networks rely upon does not afford this level of control over what is to be learned. Classifier Systems Holland went on to develop genetic algorithms into classifier systems. Classifier systems are more focussed upon the problem of learning appropriate responses to stimuli, than searching for solutions to problems. Classifier systems receive information from the environment and respond according to rules, or classifiers. Successful classifiers are rewarded, creating a reinforcement learning environment. Obviously, the mapping between classifier systems and the cybernetic view of organisms sensing, processing and responding to environmental stimuli is strong. It would seem that a central process similar to a classifier system would be appropriate at the core of an organic building. Learning appropriate responses to environmental conditions over time. Artificial Evolution Artificial evolution traces it's roots back to the Biomorph program which was described by Dawkins in his book "The Blind Watchmaker". Essentially, artificial evolution requires that a user supplements the standard fitness function in genetic algorithms to guide evolution. The user may provide selection pressures which are unquantifiable in a stated problem and thus provide a means for dealing ill-defined criteria. Frazer notes that solving problems with ill-defined criteria using artificial evolution seriously limits the scope of problems that can be tackled. The reliance upon user interaction in artificial evolution reduces the practical size of populations and the duration of evolutionary runs. Coding Schemes Frazer goes on to discuss the encoding of architectural designs and their subsequent evolution. Introducing two major systems, the Reptile system and the Universal State Space Modeller. Blueprint vs. Recipe Frazer points out the inadequacies of using standard "blueprint" design techniques in developing organic structures. Using a "recipe" to describe the process of constructing a building is presented as an alternative. Recipes for construction are discussed with reference to the analogous process description given by DNA to construct an organism. The Reptile System The Reptile System is an ingenious construction set capable of producing a wide range of structures using just two simple components. Frazer saw the advantages of this system for rule-based and evolutionary systems in the compactness of structure descriptions. Compactness was essential for the early computational work when computer memory and storage space was scarce. However, compact representations such as those described form very rugged fitness landscapes which are not well suited to evolutionary search techniques. Structures are created from an initial "seed" or minimal construction, for example a compact spherical structure. The seed is then manipulated using a series of processes or transformations, for example stretching, shearing or bending. The structure would grow according to the transformations applied to it. Obviously, the transformations could be a predetermined sequence of actions which would always yield the same final structure given the same initial seed. Alternatively, the series of transformations applied could be environmentally sensitive resulting in forms which were also sensitive to their location. The idea of taking a geometrical form as a seed and transforming it using a series of processes to create complex structures is similar in many ways to the early work of Latham creating large morphological charts. Latham went on to develop his ideas into the "Mutator" system which he used to create organic artworks. Generalising the Reptile System Frazer has proposed a generalised version of the Reptile System to tackle more realistic building problems. Generating the seed or minimal configuration from design requirements automatically. From this starting point (or set of starting points) solutions could be evolved using artificial evolution. Quantifiable and specific aspects of the design brief define the formal criteria which are used as a standard fitness function. Non-quantifiable criteria, including aesthetic judgments, are evaluated by the user. The proposed system would be able to learn successful strategies for satisfying both formal and user criteria. In doing so the system would become a personalised tool of the designer. A personal assistant which would be able to anticipate aesthetic judgements and other criteria by employing previously successful strategies. Ultimately, this is a similar concept to Negroponte's "Architecture Machine" which he proposed would be computer system so personalised so as to be almost unusable by other people. The Universal State Space Modeller The Universal State Space Modeller is the basis of Frazer's current work. It is a system which can be used to model any structure, hence the universal claim in it's title. The datastructure underlying the modeller is a state space of scaleless logical points, called motes. Motes are arranged in a close-packing sphere arrangement, which makes each one equidistant from it's twelve neighbours. Any point can be broken down into a self-similar tetrahedral structure of logical points. Giving the state space a fractal nature which allows modelling at many different levels at once. Each mote can be thought of as analogous to a cell in a biological organism. Every mote carries a copy of the architectural genetic code in the same way that each cell within a organism carries a copy of it's DNA. The genetic code of a mote is stored as a sequence of binary "morons" which are grouped together into spatial configurations which are interpreted as the state of the mote. The developmental process begins with a seed. The seed develops through cellular duplication according to the rules of the genetic code. In the beginning the seed develops mainly in response to the internal genetic code, but as the development progresses the environment plays a greater role. Cells communicate by passing messages to their immediate twelve neighbours. However, it can send messages directed at remote cells, without knowledge of it's spatial relationship. During the development cells take on specialised functions, including environmental sensors or producers of raw materials. The resulting system is process driven, without presupposing the existence of a construction set to use. The datastructure can be interpreted in many ways to derive various phenotypes. The resulting structure is a by-product of the cellular activity during development and in response to the environment. As such the resulting structures have much in common with living organisms which are also the emergent result or by-product of local cellular activity. Primordial Architectural Soups To conclude, Frazer presents some of the most recent work done, evolving fundamental structures using limited raw materials, an initial seed and massive feedback. Frazer proposes to go further and do away with the need for initial seed and start with a primordial soup of basic architectural concepts. The research is attempting to evolve the starting conditions and evolutionary processes without any preconditions. Is there enough time to evolve a complex system from the basic building blocks which Frazer proposes? The computational complexity of the task being embarked upon is not discussed. There is an implicit assumption that the "superb tactics" of natural selection are enough to cut through the complexity of the task. However, Kauffman has shown how self-organisation plays a major role in the early development of replicating systems which we may call alive. Natural selection requires a solid basis upon which it can act. Is the primordial soup which Frazer proposes of the correct constitution to support self-organisation? Kauffman suggests that one of the most important attributes of a primordial soup to be capable of self-organisation is the need for a complex network of catalysts and the controlling mechanisms to stop the reactions from going supracritical. Can such a network be provided of primitive architectural concepts? What does it mean to have a catalyst in this domain? Conclusion Frazer shows some interesting work both in the areas of evolutionary design and self-organising systems. It is obvious from his work that he sympathizes with the opinions put forward by Kauffman that the order found in living organisms comes from both external evolutionary pressure and internal self-organisation. His final remarks underly this by paraphrasing the words of Kauffman, that life is always to found on the edge of chaos. By the "edge of chaos" Kauffman is referring to the area within the ordered regime of a system close to the "phase transition" to chaotic behaviour. Unfortunately, Frazer does not demonstrate that the systems he has presented have the necessary qualities to derive useful order at the edge of chaos. He does not demonstrate, as Kauffman does repeatedly, that there exists a "phase transition" between ordered and chaotic regimes of his systems. He also does not make any studies of the relationship of useful forms generated by his work to phase transition regions of his systems should they exist. If we are to find an organic architecture, in more than name alone, it is surely to reside close to the phase transition of the construction system of which is it built. Only there, if we are to believe Kauffman, are we to find useful order together with environmentally sensitive and thermodynamically open systems which can approach the utility of living organisms.