Exploring the Evoluon of Meta
1 An exmaple of evolon of atumat-
ically generated oor plans shonw
conanted in the grey backgrounds
based on user preference shown by
Sam Conrad Joyce
Meta Design Lab, Singapore Uni-
versity of Tecnology and Design
Meta Design Lab, Singapore Uni-
versity of Tecnology and Design
Parametric associave logic can describe complex design scenarios but are typically non-trivial
and me consuming to develop. Opmizaon is being applied widely in many elds to nd high
preforming soluons to objecve design needs and this is being extended further to include user
input to sasfy subjecve preferences. However, whilst convenonal opmizaon approaches can
set good parameters for a model it cannot currently improve the underlying logic dened by the
associave topology of the model leaving it limited to predened domain of designs.
This work looks at the applicaon of Cartesian Genec Programming as a method for allowing auto-
mac generaon, combinaon and modicaon of valid parametric models including topology. This
has value as it allows much greater ranges of soluons, and potenally computaonal ‘creavity’ as
it can develop unique and surprising soluons. However, the applicaon of a genome based deni-
on and evoluonary opmizaon to describe parametric models and develop beer models for a
problem respecvely introduces many unknowns into how model generaon works.
This paper explains CGP as applied to parametric design and invesgates the dierence between
using mang mung and both strategies as a way of combining aspects of parent models, under
selecon by Genec Algorithm under random, objecve and user (Interacve GA) preferences. We
look into how this eects the resultant over iterated interacon in relaon to both the geometry
and the parametric model.
Computaonal design, specically parametric associave design
has become widely adopted. This method has many strengths,
leveraging a formal but exible relaonal geometry denion
to capture design logic, to drive advanced form generaon and
support analysis and opmisaon. Parametric design is oen
used in early concept stage; where many opons are considered
over a short me in order to explore the design and soluon
space, with parametric variability speeding up exploraon
signicantly. Despite its popular use during the exploratory phase
parametric associave models (PM) are not easy to recongure
especially if a change has not been designed into the model from
the start (Davis et al 2011). To rephrase this more technically:
parametric changes (modifying variables) are trivial, whereas
associave changes (modifying the topology) of a parametric
associave model is dicult.
Considering computaonally assisted design exploraon, we
see a similar bias towards parametric over associave support.
For example, mul-objecve opmisaon allows for explora-
on of trade-os in parameter spaces and performance spaces
(Lin and Gerber 2014) (Vierlinger anda Hofmann 2013) and
interacve-evoluonary-opmisaon allows for user driven
parametric exploraon of design needs and soluons (Mueller
and Ochsendorf 2015). Despite the power of evoluonary
algorithms, there are no equivalent methods to opmise and
explore variaons in associavely dierent models (Harding et al
2013). A principal issue is generavely dening working associa-
ve links suciently complex or variable enough to sasfy real
2 Visual idencaon of the three
data sets comprising of a full CGP
denion of a small parametric
model: A 2D Funconal ‘F’ array of
component types, a 3D Topology ‘T’
array of input links for each compo-
nent and a 1D array of Metric ‘M’
design requirements and produce meaningful working geom-
etry. However, if realized it has great potenal for exible even
‘creave’ systems which could generate new innovave soluons
unaided (DeLanda 2002).
The relave complexity of manipulang parameters vs associaons
can be demonstrated if we consider changing one at random; if
a parametric value is changed it is likely that the model will sll
funcon; but if a component link or component type is changed
randomly then it is likely to break the model. One soluon to
eecvely algorithmically create and change valid topological
denions is applying Cartesian Genec Programming (CGP)
with is a Genec Programming method which uses evoluonary
algorithms to algorithmically create funconal and opmal
designs. Originally developed for designing circuits specically
logic gate based chips (Miller et al 2000). The main innovaon
of CGP is to develop an eecve schema which enables the
‘genome’ of the design (an encoded numerical represenaon
which is easy to manipulate computaonally and which when
processed into a ‘phenotype’ denes a design) to encompass
both topological and funconal elements of a directed-acy-
clic-graph (DAG). In the electrical circuit use case the DAG’s
deinfes the circit with electrical messages passing from inputs
through a potenally large set of logic gates and then producing
outputs, the funcons being the which type of logic gate is used
at each node and the topology dening how they are connected.
This represents a system where the messages go in one direcon
and there is no feedback or recursion hence directed-acyclic.
CGP has been shown to be successfully extended to para-
metric modelling (Harding and Shepherd 2016). The reason
for this is that Parametric Modelling as used in packages such
as Grasshopper, Generave-Components and Dynamo-BIM,
essenally dene a graph like representaon of data ows which
must be a DAG. If we replace the logic gates for components and
the circuits with data connecons then the two systems operate
the same. This is a novel and new approach and potenally very
powerful enabling opmisaon or machine learning to operate
on parametric models both at the parametric and accusave
levels. However, the complexity of automated model generaon
by CGP is lile understood; especially relaonships between
the CGP representaon, the PM and the resultant geometry,
especially the eects of iteravely combining models which is
a principal mechanism for evoluonary approaches, this paper
invesgates these relaonships.
The eld of CGP is relavely new and experience and thus experse in
applying it eecvity is growing with the research. Whilst there is not
yet consensus about eecve approaches to applicaon as there is in
Genec Algorithms say, most current applicaons of CGP follow broadly
similar methods, the current authority on this method can be found in
(Miller 2011). For this study a relavely standard implementaon of the
CGP schema was used for dening a parametric model on a xed-grid
(hence Cartesian) of components.
In our case three arrays were used to dene a complete parametric model
; a 2D ‘Funcon’ array dening the component types from a collecon
of possible components, a 3D ‘Topology’ array for which determines for
each component which input links to which component output and a 1D
3 An example of a mutaon of an
exisng model (le) showing the
result (right) with changes in the
T,F,M genotype and the resultant
parametric and geometric model
shown in red.
‘Metrics’ array of the values of the input parameters; as shown in gure 2.
The use of CGP is similar to its applicaon in circuit programming however
importantly the data is ‘typed’. Whereas circuits simply transfer binary
on-o messages; a parametric system is using a range of incompable
data type such as numbers characters and geometry (points, lines,
surfaces etc.) as inputs which complicates the generaon. As such there
is a DAG generaon constraint that nodes/component inputs must be
connected to the right upstream outputs to to allow the funcon of the
component to work, for example the denion of a line must take two
points if one input is a number then the line cannot be dened adequate.
More detail on this issue is discussed in (Harding and Sheppard 2016).
With this formal but exible denion of a parametric model consistent
with the CGP schema, it is possible to undertake evoluonary process to
generate, change and mix dierent models together. The CGP generaon
works by inially assigning random values for F, T and M. It is possible
to constrain the values of F & T so that all inputs to the components
have the right type. Here we can see that the components or funcons
used in this process are important, these are dened by the user and can
theorecally be any parametric component, for any component to actually
have a chance of working all inputs of a chosen component must be
represented in other component outputs or the metric values M so that
the component will actually have a chance of working.
Beyond inial generaon, to change a model the most simple approach
is ‘mutang’ a model by randomly changing some values in some or all of
F,T or M. Doing this to M is the same as changing parametres in a typical
genec opmizaon. Changing T or F generates a new logic in the model
and assuming only a few elements are changed can result in small but
signicant eects on the results in output geometry, as demonstrated in
We can also ‘mate’ mulple models by mixing the values in T,F,M of two
(or more) models to make a new derivave models. The approach applied
here uses a quite typical spling method where the genome of both
models is cut into pieces and then alternate pieces are used to generate
a new genome, gure 4 shows the process and eect of this. It is worth
nong that this spling is realised by the CGP by using a xed grid size
of elements. However there are other techniques which can remove this
limitaon. This simplies the process as the genome remains the same
size and the locaon of individual genes/values in the genome/matrix are
comparable between models and discernible in the phenotype/generated
parametric model. In our case a simple single but variable posion cross
over point was used.
To explore the eects of mutaon and mang on the development
of soluons a custom lightweight parametric system was developed
elaborates on the choice of components used essenally determines the
pallet of geometry available to the algorithm and thus directs the type
of results achieved, to ensure a level of focus on the design a relavely
limited set of components is preferable to produce meaningful relevant
4 An example of a mang of two
models (top) showing the result
(boom) with the descendent parts
of the T,F,M genotype and the
resultant parametric model colored
5 Example output from the CGP
system: Right: the dense parametric
model produced by CGP with some
ineecve components in read
and the resultant design. Le: a
rendered generated model from the
6 A small sample evoluonary
hereditary history plot using the
‘Farnsworth set’ components plot-
ng 16 models over 4 generaons
(each shown in plan) ordered top
to boom by age (oldest above
youngest) and posioned le
to right by parametric model
designs which are comparable between themselves. For this study a
component set was used for CGP orientated towards producing single
story modernist plans, nicknamed the ‘Farnsworth set’; it includes basic
geometry but also special components to dene the actual ‘built elements’
namely: rectangle oor, rectangle roof, solid wall, glazed wall. An example
automacally generated example is shown in gure 5. The system was
set up to support genec evoluonary processes, using ‘roulee wheel’
selecon based and as part of this exploraon we compared both
objecve tness values, and subjecve tness (user input preference
scores) inpued via the web browser.
To ascertain the potenal of generated models, we explored useful
objecve metrics to measure models, nong that there is an important
dierenaon between parametric model and the geometry model.
Since the sample design is not intended for a parcular programmac
requirement, other aributes were calculated as indicators to determine
whether the resulng model is useful as a design arfact. Indicators such
as number of geometry elements created (number of points, lines etc)
, type and variety of elements (diversity of geometry vs few repeang
elements – all walls, all oors…). Similarly evaluaon metrics were
developed for the parametric model to determine model tness, these
were based on exisng approaches used to analyse computer programs
(Davis et al 2013). This was to get values to masure how ‘correct’ and
well the model was working independent of its actual geometry output.
The main metrics were: stascal variance of components especially the
number of ‘built element’ components, ‘eciency’ the percentage of
components used, and metrics for the complexity of the model (cyclo-
mac complexity). A detailed list and explanaon of the metrics used can
be found in the appendix.
We then setup an experimental approach to look at the eect of an
evoluonary process applied to a pool of parametric models, specically
how the iterated applicaon of a genec algorithm using the CGP schema
to manipulate the deigns eects the models. An inial xed number of
models are randomly generated based on the predened CGP schema/
genome. The key properes of the CGP schema as menoned above are;
components to use, grid size and number of numerical inputs. The GA is
inialized which also requires inputs; primarily: the size of the generaon
and how many generaons to run the algorithm for. The GA can opmize
the models based on a tness based on one of three approaches, 1/
completely random, 2/ objecve model tness metrics, 3/ subjecve
user preference. The GA can be run to user dened evoluonary method
(mate/mutate/both) to create a new generaon of CGP models. A small
example of this process is shown in gure 6. Note that unlike typical
heredity trees, models are ordered on the x-axis le to right based on
their objecve performance values so that we can see how this changes
over me, a larger version of which is shown in gure 8.
As outlined this was applied looking at three key CGP generaon
approaches, mutaon only, mang only and mang then mutaon. The
intent was to idenfy any interesng eects of the methods and see if
it was possible to develop any idenable ‘best’ approach. For objecve
tness the metric was the amount of geometry generated by the soluon;
and the subjecve tness was the vong preference of one user making
model from 1 to 10 based on personal preference; in that case making
the study a use of an interacve evoluonary algorithm.
The system is publically available online and can be trialed here:
The results are complex and sll being analysed more deeply for insight;
however some interesng inial ndings have been found. Current
analysis looks at comparing all the aforemenoned CGP combinaon
methods with all of the dierent GA opmisaon criteria.
Looking broadly at the models generated linier correlaons were found
between component use eciency and geometry output irrespecve
of the generaon criteria (random, objecve or subjecve/user driven)
however an unintuive lack of correlaon between parametric model
complexity and output geometry complexity. It was also shown that
models developed by CGP have higher complexity properes than
human produced counterparts shown in (Davis 2013), implying an ability
solve problems radically dierently but also produce soluons which are
not easily human readable. It was also shown that by looking at large
numbers of randomly generated models that one could show relaon-
ships or not between dierent model metrics, examples of this are shown
in gure 7.
The discussed metrics where applied to provide insight to understand
the eect of model creaon over the whole duraon of an evoluonary
processes looking at the eect of selecon (subjecve vs objecve)
and the method of making new models (mang, mutang or both). It
was found that subjecve human selecon was much more eecve in
converging the design, whereas objecve selecon always produced a
much wider range of soluons. It was also shown that by controlling the
use of mang or mutaon that the metric qualies of the models could
be controlled. As mang tended towards generang more geometrically
complex models, whereas mutaon reduced the complexity and output
7 A collecon of 1000 dierent parametric models (shown as plan models on grey backgrounds) generated by CGP, showing top a linier correlaon between geometry
x-axis and eciency y-axis , and boom a lowly correlated behavior for geometry x-axis and cyclo-mac complexity y-axis.
8 The evoluonary tree of an automated design session using genec algorithm, with 30 generaons containing 30 models per generaon. The models are shown
contained in grey boxes with redlines showing hereditary links from direct mang using CGP. The oldest models are shown at the top with ‘children’ and other decedents
ordered going down. We observe that using only mang the diversity in geometry output (horizontal axis) is broad and tends towards large outputs relave to the inial
generated models but is not convergent
geometry amongst other factors, mang and mutang a CGP model also
reduced the model complexity. The eect of mang was also to result in
disparate ranges of model complexity over the more convergent eects
of mang regimes. The eect of geometric complexity for the dierent
CGP generaon methods over generaons can be seen in gure 9.
This study is by all means not complete and further analysis of current
results are the rst priority. However even based on the inintla ndings,
areas that require further research/exploraon have been idened along
with a few limitaons and potenal new direcons.
One of the main areas that requires deeper consideraon is how to
handle Model complexity. As described in the ndings, the computer
can generate much more complex networks than typical manually built
models, which leads to two issues. Firstly, the more complex models
become more inecient (they have more failed or ‘junk’ components
and does not create more complexity in geometry) and secondly, these
models become increasingly illegible.
To address these two issues, we could examine how humans create asso-
ciave models and develop certain network criteria or similar to ‘guide’
the generave process to create more working complex models, reducing
junk components. We could also develop addional logic that lters and
translates these generated networks into more legible components and
connecons which could be further modied by a designer.
Another area, which requires further invesgaon. is the evoluonary
process using mang. While Mang allowed for much geometrically
diverse soluons to be generated, it oen resulted in inecient CGP
models which reduced the geometric complexity. This issue is a conse-
quence of incompable ‘input’ types that get passed on during slicing and
recombinaon of dierent typologies. An experiment which explores the
eect of dierent types ‘Cross-over’ could be set up to determine which
approach or approaches are most eecve to be used in CGP Parametric
Lastly, the techniques discussed in this study could be further enhanced
by exploring addional metrics and associang them with the models
9 The evoluonary tree of 3 separate interacve sessions 15 generaons containing 15
models per generaon. Each plot shows models ordered top to boom by age, with
the x-axis showing model geometry. Top le uses mutaon to generate next genera-
on models models, top right uses mang and boom uses mang then mutaon for
each new generaon.
created in order for the computer to make beer judgements about
which models are the ‘est’. More metrics that ‘describe’ the visual
quality of the designs would help reduce the gap in convergence
between subjecve selecon and objecve selecon.
The applicaon of CGP to parametric modelling demonstrates an
approach which is able to control exisng widely used design systems
to automacally generate models and with a much wider amount a
variability and potenal as compared to convenonal opmizaons based
on solely input values; but this will only be useful if these methods are
controllable directable and human readable. Inial ndings highlight the
lack of knowledge and understanding in applying computaonal methods
to control parametric modelling and the need for further analysis and
work. The complexity of these models requires new ways to gain insights
into the tractability and eecveness of applying CGP in this context. It
has been shown that some metrics are able to idenfy and potenally
seer resultant evoluon of these models in producve ways for designers.
Encouraging is that the results of such methods are made more useful
with the introducon of human input poinng to producve methods of
human machine interacon.
More work is required to develop good underlying methods for
combining models producvely in a similar way as a human designer
would as well as interfaces which allow the human designer ecient
and praccal ways of direcng this powerful method able to make many
designs into the ones that are actually relevant and desirable by the
We would like to acknowledge the support of SUTD and the SUTD MIT
Internaonal Design Center
Davis, Daniel, Jane Burry, and Mark Burry. 2011 "Untangling parametric
schemata: enhancing collaboraon through modular programming." In
Proceedings of the 14th internaonal conference on Computer Aided
Architectural Design, University of Liege, Liege.
Davis, Daniel., Burry, Jane Burry, and Mark Burry. 2013. "Modelled
on Soware Engineering: Flexible Parametric Models in the Pracce of
Architecture", PhD Theisis, RMIT
DeLanda, Manuel. 2002 "Deleuze and the Use of the Genec Algorithm
in Architecture." Architectural Design 71, no. 7 (2002): 9-12.
Harding, John, Sam Joyce, Paul Shepherd, and Chris Williams. 2013
"Thinking Topologically at Early Stage Parametric Design." In Advances in
Architectural Geometry 2012, pp. 67-76. Springer, Vienna.
Harding, John, and Paul Shepherd. 2016 "Meta-parametric design."
Design Studies (2016).
Lin, Shih-Hsin Eve, and David Jason Gerber. 2014 "Designing-in
performance: A framework for evoluonary energy performance feed-
back in early stage design." Automaon in Construcon 38 (2014): 59-73.
Miller, Julian F., Dominic Job, and Vesselin K. Vassilev. 2000 "Principles in
the evoluonary design of digital circuits—Part I." Genec programming
and evolvable machines 1, no. 1-2 (2000): 7-35.
Miller, J.F., Job, D. and Vassilev, V.K., 2000. Principles in the evoluonary
design of digital circuits—Part I. Genec programming and evolvable
machines, 1(1-2), pp.7-35.
Miller, Julian F. 2011 "Cartesian Genec Programming." In Cartesian
Genec Programming, pp. 17-34. Springer Berlin Heidelberg.
Mueller, Caitlin T., and John A. Ochsendorf. 2015 "Combining structural
performance and designer preferences in evoluonary design space
exploraon." Automaon in Construcon 52 (2015): 70-82.
Vierlinger, Robert, and Arne Hofmann. 2013 "A Framework for exible
search and opmizaon in parametric design." In Proceedings of the
Design Modeling Symposium Berlin. .
A graphical explanaon of the metrics used to measure model and output
geometry is shown on the opposite page.
All gures copyright of the authors.
Sam Conrad Joyce is an Assistant Professor in Architecture and
Sustainable Design at the Singapore University of Technology and Design.
Prior to this he was an Associate at Foster + Partners, in the Applied
Research and Development group leading structural integraon. Before
this he held a role as Design Systems Analyst at Buro Happold working
on geometrical, structural and master-planning projects. His group the
Meta Design Lab focuses on data rich systems for eecve design space
exploraon and decision making. To enable this his work synthesizes and
applies new techniques in distributed and scalable compung, mul-ob-
jecve opmizaon, big data analycs, arcial intelligence and web
Nazim Ibrahim has more than seven years of experience as a researcher.
His work focuses on the use of Parametric tools and Computaonal
workows in the exploraon and evaluaon of various design related
issues. He earned his Masters in Architecture from NUS where he
explored the use of parametric tools and digital fabricaon technologies
at various stages of design. He rmly believes that computaon design
should be employed extensively to resolve the complex issues faced by
design and architecture. He currently works as a Research assistant in
Meta Design Lab, exploring web frameworks in creang generave and
parametric design environments.
Visual explanion of the various
metrics captured for this study
measuring both for the parametric
model itself and the output geom-
etry that it produces