NEURAL SELF-ORGANISING MAPS
AND
GENETIC ALGORITHM:
EVOLVING 3D CELLULAR AUTOMATA
ARCHITECTURAL MODEL

A.BAKUNOWICZ
MSc
201...
AMIINA BAKUNOWICZ

A thesis submitted in partial fulfilment of the requirements of the School of
Architecture, Computing a...
Table of Contents:
Chapter 1. Abstract
Chapter 2. Introduction
2.1 The New Aesthetics and the Ecology of Design
2.2 Coding...
5.3. The Evolution of the Proposed Code
5.3.1. Stage 1.Classic GA for the Current Architectural Scenario
5.3.2. Stage 2. A...
Chapter 6. Conclusion
Chapter 7. References
Chapter 8. Further Reading
Chapter 9. Appendixes
Appendix 1. Traditional Genet...
“... Game did not display perfection to the outward eye.
Rather, it guided the player…”
Herman Hesse, 1943
“The Glass Bead...
Chapter 1. Abstract

Since the dawn of Computer Aided Design for a long time architects were coming up with
digitally mode...
Chapter 2. Introduction

2.1. The New Aesthetics and the Ecology of the Design
In 1917 D’Arcy Wentworth Thompson introduce...
The associative or interior aspect of perception is based on immediate feeling or seeing that
extends the experience. That...
Such computational systems have “competition-cooperation duality”. Cooperation reflects in a
global behaviours of agents, ...
recognise configurations that were not obvious or even present to begin with. This property is
called emergence. There are...
Figure 4.Final design: exploded axonometric projection

Having taken into account everything said above I propose a code t...
Chapter 3. The Concept of the Architectural Problem

3.1 Architectural Scenario
The task of the proposed algorithm is to g...
Steadman adapted the graph by applying Kirchhoff’s first law of electrical flow, which states that
electricity flows from ...
Figure 6. The principles of physical notion of mechanical strings to connect spaces
The essential characteristic of this p...
Figure 8. The system works out the geometric objectives

Figure 9. The topological actualisation stage, the spaces are sim...
Chapter 4. Classic Genetic Algorithm

4.1 Traditional Genetic Algorithm
4.1.1. Brief Description
Genetic Algorithm (GA) ha...
b. Explicit embryogeny
It specifies each step of the growth process in the form of explicit instructions. In computer
scie...
4.2 Classic GA for the Current Architectural Scenario

4.2.1. Description of the Code
The architectural problem described ...
Parameterisation of the body-plan:
Each CA unit is parameterised according to its own state being either "working", or "li...
4.2.1.3. The Fitness Function
The Fitness Criteria is still very simple and aimed to maintain the spatial arrangement of t...
Figure 16(b).

Figure 17. The Golden Ratio programmed into the Fitness Function

22 
4.2.1.4. The Process of Selection
Selection method applied is Goldberg's Roulette Wheel, or pie chart (Mitchell 1998). The...
Figure 19. 1st generation (colourful individual is the fittest with the Fitness Factor being 8.4).

Figure 20. 50th genera...
The models can evolve more sophisticated shapes as more creative forms are programmed
into the CA units instead of simple ...
Another example where GA is used for a shape-optimisation purpose based on analysis of the
lines of principal stress is th...
Figure 27. Visibility polyhedra along a visitor's path

Figure 28. Volume of space visible from a single point in the exhi...
Chapter 5. Self-Organising Maps and Genetic Algorithm

5.1 Artificial Neural Networks and Self-Organising Maps
Artificial ...
On the other hand, AG belongs to the class of stochastic methods that find solutions to
problems by examining random parts...
Figure 30. Wundt Curve: Graphic representation of the Paradox of Choice.
Self-Organising Map can represent a multidimensio...
5.2.3. The Evaluation of the Aesthetics
The challenge of managing the expanded choice was tackled suggesting that the user...
5.3. The Evolution of the Proposed Code
5.3.1. Stage 1.Classic GA for the Current Architectural Scenario
The algorithm was...
The emerging properties of the resulting models of the algorithm were not consistent as the
fitness function was confusing...
5.3.3. Stage 3. Introducing Self-Organising Maps to the Genetic Algorithm
Each Self-Organising Map trains its neurons to b...
5.3.4. Stage 4. Turning Chromosomes into Neurons and Back
In order for neurons to participate in the selection process, ch...
Colour-coding of the models:
PURPLE - individuals of Genetic Algorithm generations
BLACK - Self-Organising Map trained on ...
Figure 37. Example of the first generation and its Self-Organising Map
Observations:
- All the fittest models are within S...
Conclusion:
- Manage the expanded choice by introducing the elimination criteria;
- Introduce the threshold for Fitness Fa...
Observations and Conclusions:
-

At this stage filtering out the population with the elimination criteria and applying
art...
As a solution, off-springs of all couples can compose the next generation and therefore
increase the size of the neural ma...
The resulting maps showed well-defined clustering (due to the fitness factor being geometry
dependent), displaying the con...
5.4. The Final Algorithm
5.4.1. The Structure of the Algorithm
The algorithm is described in the stages of its performance...
After that the ellipse is drawn from the centroid of each CA unit as shown on the
Figure. 42 and then its extruded (Fig. 4...
Both top and bottom ellipse of each unit is divided into equal amount of segments. The division
points are shown of Fig. 4...
Figure 46. Surfaces of the new model with the bridges between the units

Figure 47. Top view of the model

45 
 
All similar types of units are connected with each other by a bridge-platform, providing the
connectivity between the func...
Figure 49. Perspectives of the model

47 
 
Figure 50. The bridges viewed from the interior of the towers
The alternative models that can be programed into the propos...
Figure 52. Abu Dhabi Education Council: massing derived from layout application

Figure 53. Abu Dhabi Education Council: D...
5.4.1.2. The First Generation
The first generation is composed from the “fit” models hand-picked by the designer from the
...
5.4.1.4. The Fitness Function
One of the biggest challenges in evolving the optimal design solution with multi-objective c...
Figure 57(a). Middle point of all the edge units’ centroids.

Figure 57(b). Centroid curves of the models

Figure 57(c). C...
Composition of Fitness Criteria
At this stage the proposed algorithm assumes that all Fitness criteria components are equa...
Fitness Topography
As it was mentioned earlier due to the pure geometrical fitness criteria, the fitness values of the
map...
Figure 60. Example 1: The Fitness Topography Surface of the population evolved over six
SOM-expanded generations (b)

Figu...
Figure 62. Example 2: The Fitness Topography Surface of the population evolved over six
SOM-expanded generations (a)

56 
...
Figure 63. Example 2: The Fitness Topography Surface of the population evolved over six
SOM-expanded generations (b)

Figu...
Figure 65. Example 2: The Fitness Topography Surface of the best individuals of each SOMexpanded generation

58 
 
5.4.1.5. Selection Options
5.4.1.5.1. The Final Decision-Making Rules
-

Provide the user with the minimum parameters, onl...
After the neural map is trained, of all fit individuals in each cluster only those are qualified to go
through this stage ...
Figure 66. SOM, its clusters and the selection principle

61 
 
5.4.1.5.4. Selection Option 3: Goldberg Roulette
The mechanics of this selection method were described in the chapter 4.2 ...
Figure 67. The example of the population evolved over three generations.

63 
 
Figure 68. The example of the population with the example of the developed body-plan evolved
over two generations.

Figure...
So far, neurons' vector parameters were 100% geometrical. That gives the map a very welldefined visual clustering. As more...
5.5. Advantages and Disadvantages of GA-SOM
5.5.1. Advantages
As more and more complicated design tasks are being set in f...
Main characteristics of SOM that are automatically are passed to GA search space that uses
neural maps to expand each gene...
5.6. Further Research and Algorithm Development
The proposed algorithm and the associated research so far were only concen...
Figure 72. Taiwan Tower: Site plan with the scheme’s concentric guide arc

Figure 73. Taiwan Tower: Elevation the parametr...
5.6.2. Swarms and SOM Pattern Recognition
Various examples of swarms in nature demonstrate how certain perceptive capabili...
Figure 74. Sketch of an apartment within in cluster

Figure 75. Perspective aerial view of the clusters

71 
 
Figure 76. Model photograph

5.6.4. Co-Evolution Instead of Fitness Criteria
Benefit of using co-evolution instead of the ...
Amiina Bakunowicz 2013 | 27

Figure 78.Creatures evolved for jumping.
Sims presents a system for evolving virtual creature...
-

Modifier genes can be added, whose allelic values control the genetic operators (e.g.
loci controlling recombination or...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURA...
Upcoming SlideShare
Loading in...5
×

Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURAL MODEL

232

Published on

Published in: Design, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
232
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Amiina Bakunowicz_MSc Thesis_NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURAL MODEL

  1. 1. NEURAL SELF-ORGANISING MAPS AND GENETIC ALGORITHM: EVOLVING 3D CELLULAR AUTOMATA ARCHITECTURAL MODEL A.BAKUNOWICZ MSc 2013
  2. 2. AMIINA BAKUNOWICZ A thesis submitted in partial fulfilment of the requirements of the School of Architecture, Computing and Engineering, University of East London for the degree of Master of Science September 2013 2 
  3. 3. Table of Contents: Chapter 1. Abstract Chapter 2. Introduction 2.1 The New Aesthetics and the Ecology of Design 2.2 Coding vs Traditional Design Methods Chapter 3. The Concept of the Architectural Problem 3.1 Architectural Scenario 3.2 Proposed Solution to the Architectural Problem 3.3 Other Ways of Solving Similar Problems? 3.3.1. Electrical Graph Approach 3.3.2. Physically based modelling Chapter 4. Classic Genetic Algorithm 4.1 Traditional Genetic Algorithm 4.1.1. Brief Description 4.1.2. Evolutionary Embryogenies. 4.2 Classic GA for the Current Architectural Scenario 4.2.1 Description of the Code 4.2.1.1. Original CA Model and Body-Plan 4.2.1.2. The First Generation 4.2.1.3. The Fitness Function 4.2.1.4. The Process of Selection 4.2.1.5. Crossover and Mutation 4.2.2 Outcome of the Algorithm 4.3 Examples of GA Applications in Architecture Chapter 5. Self-Organising Maps and Genetic Algorithm 5.1 Artificial Neural Networks and Self-Organising Maps 5.2 Introducing SOM to the Classic GA 5.2.1 Why Combining GA with SOM? 5.2.2 Managing the Expanded Choice 5.2.3 The Evaluation of the Aesthetics 3 
  4. 4. 5.3. The Evolution of the Proposed Code 5.3.1. Stage 1.Classic GA for the Current Architectural Scenario 5.3.2. Stage 2. Adding Golden Ratio to the Fitness Criteria 5.3.3. Stage 3. Introducing Self-Organising Maps to the Genetic Algorithm 5.3.4. Stage 4. Turning Chromosomes into Neurons and Back 5.3.5. Stage 5. Co-evolving Threshold of the Fitness Factor Components 5.3.6. Stage6. Optional Selection Method 5.4. The Final Algorithm 5.4.1.The Structure of the Algorithm 5.4.1.1. Original CA Model and Body-Plan 5.4.1.2. The First Generation 5.4.1.3. Introducing Self-Organising Maps 5.4.1.4. The Fitness Function 5.4.1.5. Selection Options 5.4.1.5.1. The final decision-making rules of the proposed algorithm 5.4.1.5.2. Selection Option 1: Optimised Random Selection by Clusters 5.4.1.5.3. Selection Option 2: Artificial Selection and Evaluation of Aesthetics 5.4.1.5.4. Selection Option 3: Goldberg Roulette 5.4.1.6. Crossover 5.4.1.7. Mutation 5.4.1.8. The following Generations 5.4.1.9. Visualisation of the Search Space by Clustering and Evolution of Colour 5.4.2. Main Results and Observations 5.5. Advantages and Disadvantages of GA-SOM 5.6. Further Research 5.6.1 Parameterisation of the Body-Plan 5.6.2 Swarms and SOM Pattern Recognition 5.6.3 Discovering the Potential of Clusters 5.6.4. Co-Evolution Instead of Fitness Criteria 5.6.5. Exploring Other Ways in Which CA Can Generate Body-Plans 5.6.6. Other Visualisation Techniques of the Search Space 5.6.7. Adapting Genetic Operators to Evolve the Evolvability 4 
  5. 5. Chapter 6. Conclusion Chapter 7. References Chapter 8. Further Reading Chapter 9. Appendixes Appendix 1. Traditional Genetic Algorithm: a Brief Description Appendix 2. Comparing the Types of the Evolutionary Embryogenies Appendix 3. Example of a SOM Algorithm Application in 3D Modelling and Its Applications Appendix 4. Piasecki and Sean's Wundt Curve Experiment Appendix 5. First Ever SOM for Multi-Objective Evolutionary Algorithm Appendix 6. Brudaru's Cellular Genetic Algorithm with Communicating Grids and SOM Appendix 7. Kita's Real-Coded Genetic Algorithm (RCGA) and SOM Appendix 8. Optional Body-Plans for the Proposed Algorithm Appendix 9. Proposed Algorithm (Python) 5 
  6. 6. “... Game did not display perfection to the outward eye. Rather, it guided the player…” Herman Hesse, 1943 “The Glass Bead Game” 6 
  7. 7. Chapter 1. Abstract Since the dawn of Computer Aided Design for a long time architects were coming up with digitally modelled projects that were very radical, but impossible to build. Later on with the development of the fabrication techniques a lot of the designs have materialised. Currently, architects started using computational methods to re-evaluate designs. In addition to that there always has been the urge for architectural significance and designs became very economic and performance- orientated. Thus the exploration of the alternative computational ways of the architectural morphogenesis was left behind. I would like to propose a possible solution to the form-finding challenge in a given architectural context by scripting. This paper describes a design process that mostly uses code that combines Genetic Algorithm and Self-Organising Maps and evolves a predetermined Cellular Automata model. A computer forms a team with an architect to develop a design, where the solution is formed gradually during the process of running the algorithm. Together, the designer and the machine go through the architectural design procedure starting from the phase at which the appraisal is carried out, concepts are finalised and the basic mass study is done until both are satisfied with the algorithm's outcome. The eventual model can be then given back to the architect for final adjustments and detailing. The proposed algorithm has two tasks. Firstly, based on the information available after the completed initial design stages, to develop a schematic body-plan of the architectural model and parameterised it. Secondly, applying the principles of the processes of natural evolution and biological neural networks, use the genetic algorithms (GA) and neural Self-Organising Maps (SOM) to evolve optimal solutions. This paper will concentrate mostly on the second stage of the algorithm, where the selforganising mapping will be applied to each generation of the alternated body-plan in order to widen, classify, structure and exploit the search space of the GA. I believe that the algorithm can create and amplify the synthetic intuition and give a designer yet another powerful tool and a new skill to be applied in the process of the forming the matter around the architectural concept. Also by structuring and optimising the possibilities space I would like to test if SOM could help to speed up the process of finding the optimal solution and avoid premature convergence. At the same time the proposed algorithm attempts to deal with the challenge of “...moving from the creation of inventive articulated patterns, and the small-scale installations to the full scale architectural projects where scripting can unleash the entire universe of opportunities for architectural space” (Matias Del Campo) Also certain relevant theoretical problems will be looked at, such as the paradox of the expanded choice, coding compared to traditional methods of design, philosophical meaning of “the sympathy of things”, the challenges of the evaluation of aesthetics and many other. 7 
  8. 8. Chapter 2. Introduction 2.1. The New Aesthetics and the Ecology of the Design In 1917 D’Arcy Wentworth Thompson introduced an idea that form is never a given, but an emerged product influenced by dynamic forces that are shaped by flows of energy and stages of growth. Later on with the birth of the mathematical and scientific hypotheses known as “Complexity Theory” in 1995 Kauffman gave another dimension to Thompson’s ideas. He argued that the form can replicate an organic life and become an example of “organised complexity”. The meaning behind its geometry is not necessarily the accidental “form follows function”, but it could be viewed as a complex system that has “self-organising” properties and being able to evolve and be sustainable in the absence of any external influence (Kauffman 1995). Applying this concept to the design process, in order to give the system maximum possible autonomy it is essential to determine a distinction between behaviour which emerges as a result of self-organizing processes, and behaviour which was deliberately prefigured in the design of that organism, or organisms. Also certain behaviours can emerge from an initial set of simple rules written for locally interacting units that was neither implied nor foreseen to happen. As independent behaviours emerge, here comes a possible solution to a problem of programming the certain level of “creativity” or “individuality”. All above leads back to the perceptual morphogenesis. Perception itself, As beauty is "intrinsic" and it cannot emerge ex nibilo ("out of nothing") or be applied, the design acquires the aesthetic properties from the aspiration to make something beautifully and keeping it throughout the entire design process has been studied by Gestalt psychology and philosophical systems since the beginning of 19th century (Wertheimer). The perception of complex systems is mostly generated not so much by its individual elements (for example, human neurons) as by their dynamic interrelation representing the collective behaviour – a phenomena that can be found easily in Artificial Neural Networks, where data generalisation, pattern classification or forecasting abilities are the key features (Ramos 2012). Another way to approach morphogenesis was analysed by Lars Spuybroek. He took the brave role to reinterpret the notion of beauty: "Everything feels to some degree, and the feelings we have towards the object are of the same nature as the ones that have made it or are still making it...the feelings are of the same nature in the sense of resonating or sympathizing". Spuybroek claims that “a feeling, a resonance, a sympathy” is a characteristic or parameter of the design by which we perceive it, that exists in another dimension, that cannot be measured or valued. The forces that were driving the process of creation stay present and active even after the object is finished. The notion of design in a complex system can be viewed as "self-assemblage" or "self-design". The thought is contradictory in its essence as no self exists prior to the process... Against the logic, Spuybroek believes in design without a designer. He repeated Paley just leaving God out: "Things are beautiful because they are made" and then corrected himself through Ruskin: "Things are beautiful because they are made beautifully". As beauty is "intrinsic" and it cannot emerge ex nibilo ("out of nothing") or be applied, the design acquires the aesthetic properties from the aspiration to make something beautifully and keeping it throughout the entire design process. 8 
  9. 9. The associative or interior aspect of perception is based on immediate feeling or seeing that extends the experience. That happens when the exterior is internalised, when the objects share the exterior quality, like flatness of the table top and the glass bottom. Internalised means "felt”, as when lifted off the table, glass longs for it (Manuel DeLanda). As a result feelings make things act: take or change shape, in accordance with others. Carl Jung had similar views. His famous saying "The meeting of two personalities is like the contact of two chemical substances. If there is any reaction, both are transformed" can be also viewed in an architectural context. Henri Bergson refers to the “interior aspect of perception” as intuition: "An absolute can only be given in an intuition, while all the rest has to do with analysis. We call intuition here the sympathy by which one is transported into the interior of an object in order to coincide with what there is unique and consequently inexpressible in it. Analysis, on the contrary, is the operation which reduces the object to elements already known." This thought puts a big question mark over the suggestion that computers CAN actually be creative as at this point in time they are merely analytical tools. Hopefully one day we will learn to recognise, comprehend and share “feelings” as a main source of information. Even at this point we perceive everything as a sensation of various degrees of sympathy and make our decisions based on the resonance to this "felt" assessment. Then, the process of creating will be the ONE with the result, especially if the complexity of the potential architectural project could be understood not analytically, but intuitively (Bergson) or “emotionally” (Spuybroek). Then the context can be parameterised to shape the new interlinked functional spaces, and then, to close the circle - it updates and adapts the existing, ready to be changed again. This way an ever-adapting sustainable architectural complex system will be emerging. 2.2 Coding versus Traditional Design Methods The evolution of computer-aided design (CAD) demonstrates the search for the ways of how technology can either fulfil certain pre-allocated roles or how it can carry out the most appropriate role or combination of roles. Nowadays they mostly serve either as design tools or as means of communication or as design assistants or as design environments or even as habitable physical environments and virtual environments (Kalay 2004). The process of design, which has been practiced over hundreds years and formalised in the 1960s (Minsky 1968) consists of four interconnected phases: problem analysis, solution synthesis, evaluation and communication. The process of design carried out either with the traditional methods or by scripting remains the same and consists of these four stages. The advantage that computers give to the evolution of design during the first three stages is that they are powerful enough to turn a design into a complex system, evolve it automatically passing on its qualities to the design: - Flexibility (being able to cope with incorrect, ambiguous or distorted information or even to deal with unforeseen or new situations without showing abrupt performance breakdown) - Versatility (Dorigo and Colorni) - Robustness that insures the functionality of the system even when some parts are locally damaged - Damásio) 9 
  10. 10. Such computational systems have “competition-cooperation duality”. Cooperation reflects in a global behaviours of agents, that interact by communicating information, or hints (usually concerning regions to avoid or likely to contain solutions) to each other while solving a problem (Langton). An example of cooperative problem solving is the use of the Genetic Algorithm to find states of high fitness in some abstract space. In Artificial Neural Networks, we can also find similar features, where the output of one neuron affects the behaviour or state (Cellular Automata theory) of the neuron receiving it, and so on (Ramos 2012). Also there are various design methods that join together the stages of the design process. At present the design methods can be categorised into four types: trial-and-error searches, constraint-satisfaction methods, rule-based design and precedent-based methods (Kalay 2004). Scripting gives bigger flexibility and broader exploration of all design methods and even more valuably, develops the new or combines the existing ones. Also it permits a broad processing of information work as it has no intrinsic size. “The computer is the tool for the manipulation of information, whether that manipulation is a consequence of our actions or a consequence of the actions of the information structure themselves” (Ramos 2012). Of course, it’s all well said that computers provide great advantages during the design process. However, the methods that were discussed earlier on in this chapter were developed by a human designer, for human designers and were formed based on human design experience. Only very small new adaptations to these methods were made taking into account the new design partner - the computer. Consequently, the question arises, could the new synthesised design methods be evolved that do not depend on both positive and negative human influence? Also, of course, the ultimate puzzling and unsettling questions, can the procedural methods be “creative” and yield novel design solutions? If we apply the criteria of unexpectedness to the results, then the logical (still arguable) answer is yes. They can, very occasionally generate unexpected results only because of the unique ability to produce and analyse vast amount of solutions, a skill that humans do not possess. Some may agree that we can program “creativity” and “individuality” into the code by ensuring that: - The bottom-up methodological design is followed by allowing only autonomous implicitly programmed mechanisms to be embedded in any artificial organism; - The role of intrinsic co-evolution between parts of the artificial system, on how it can be implemented, and on his intrinsic scientific properties for each particular project is well analysed and understood (Ramos 2012); - The rules of self-organization are implemented; - A member of a complex system goes through various virtual design encounters. As the more one’s past experience differs from the others, the more “individual” its behaviour becomes. However novelty and unexpectedness are not the only criteria for creativity. What about designer’s personal uncontainable desire to express his/her experience and intuition? What about the mental intention to create and innovate? What about the search for inspiration and actual state of being inspired? I don’t think these aspects can ever be programmed into any algorithm. At the same time by being excellent at mimicking the results of human creativity (implemented by analogical methods) or evolve shape based on pre-evaluated knowledge (used by expert systems and grammars) no computer can qualify to be truly creative. Actually it really does not matter if computers can or cannot be creative. There is a highly valuable skill that they can contribute to the design methods, they are able to generate and 10 
  11. 11. recognise configurations that were not obvious or even present to begin with. This property is called emergence. There are certain projects that demonstrate the computational methods as an irreplaceable collaborator in the design process. One of them is a project that was a response to the first tender of the Khalifa-bin-Zayed Al Nehayan Foundation competition. The Computational Design and Research group divided the brief into three areas of applications: roof – circle packing and connectivity graph, elevations – barycentre coordinate systems for mesh population, residential units – polyomino tiling for 3D Tetris with evolutionary optimisation (Aedas Computational Design and Research group 2013). The deliberate lack of foreseeing the final cladding, roof and residential patterns resulted from the design of algorithmic and heuristic search methods: Figure 1. Roof circle packing based on underlying schedule Figure 2. Geometrical studies for apartment units Figure 3. Designs for all facades based on underlying uses 11 
  12. 12. Figure 4.Final design: exploded axonometric projection Having taken into account everything said above I propose a code that combines Genetic Algorithm and Self-Organising Maps aiming to suggest another way to give a solution to certain spatial and morphogenetic architectural problems. The approach to the introduced design process follows computer-aided “bottom-up” principle to ensure that the evolving system emerges maintaining the autonomic qualities. The following chapters will describe the proposed design process in full detail. 12 
  13. 13. Chapter 3. The Concept of the Architectural Problem 3.1 Architectural Scenario The task of the proposed algorithm is to give a shape to the building according to the predetermined functional and spatial arrangement of the spaces. It must be achieved in a way that the required layout remains unchanged and the form emerges from the behaviours between the agents of the complex system of the building. To simplify the task the evolution of a single family house was chosen as a base for the project. The house has three functional areas: living, resting and working. 3.2 Proposed Solution to the Architectural Problem To find a potential solution or solutions to the problem described above a vast search of all the solutions called a search space will need to be performed. In order to make the design process feasible the search space has to be narrowed down by creating a group of random solutions, measuring their relevance or fitness level against the set criteria, crossing over the fittest ones in order to generate new, hopefully fitter solutions. Genetic Algorithm (GA) will be responsible for this part of the code. However GA has its drawbacks and it minimises the search space too much, resulting in the problem known as “local optima”. Meaning that the algorithm tends to find an optimal solution in a small part of a search space and finds it very difficult, in most cases almost impossible to be able to move on to another part of the space for the search of the possible solutions. In order to try to handle this challenge alongside with other smaller ones (which will be described later on in this paper) an Artificial Neural Networks algorithm called Self-Organising Maps is introduced. It expands the search space by producing possible “in-between” solutions of each generation and classifies them in topological maps, thus allowing for a bigger diversity of the potential fit models that are arranged in clusters to choose from. 3.3 Other Ways of Solving Similar Problems 3.3.1. Electrical Graph Approach Philip Stedman was first to propose applying the principles behind the electrical networks to guide the computational synthesis of architectural form (March, Steadman 1974). He proposed to use the similarity between a graph representation of architectural floor plans and the physics of electricity, as expressed by Kirchhoff’s laws of electrical flow. The idea behind the conventional graph representation is the use of a network of nodes and edges, which represent architectural elements and relationships between them: Steadman expressed horizontal walls as nodes of the graph. Each edge in the graph represents the relationship between the two horizontal walls of the same room. Each edge is labelled with the length of the wall and each node has a label that shows the distance between the node and the bottom-most wall in the floor plan. 13 
  14. 14. Steadman adapted the graph by applying Kirchhoff’s first law of electrical flow, which states that electricity flows from a higher voltage node to a lower voltage node, giving the graph directionality. Applying the second law, which states that the total current entering a node is equivalent to the current leaving it, permitted Steadman to turn the graph into a floor plan generator. The method allows generating the process to determine the height of the rooms as well: Figure 5. Applying the principles of the electrical networks to guide the computational synthesis of architectural form. A different electrical-flow analogy was used by Schwartz to develop his Automated Building Design (ABD) floor plan generator (Schwatrz, Berry, Shaviv 1994). 3.3.2. Physically Based Modelling Physically based modelling is a technique that applies the principles of dynamic motion and geometrical deformations to rigid and non-rigid objects for the purpose of simulating realistic behaviours and visual effects (Witkin, Baraff 1997). The method was adopted by Arvin and House for the purpose of generation of floor plans that correspond to a wide range of constraints (Arvin, House 2002) They apply the principles of physical notion of mechanical strings to connect spaces. These strings draw or repel the spaces according to their spatial arrangement and the length of each string that connects the spaces. The idea of the system is quite simple at its core: as the masses move further away from each other, the spring tries to move them closer, and as they approach each other the spring tries to separate them. The motion of the masses is dampened by producing the forces proportional to their relative velocity along the trajectory of their movement: 14 
  15. 15. Figure 6. The principles of physical notion of mechanical strings to connect spaces The essential characteristic of this particular method is that topological design objectives, such as desired proximity between spaces, are represented as forces that operate on point nodes at the centres of the spaces. Geometrical objectives, such as the sizes, proportions, alignment or offset of the spaces, are represented by forces on line nodes. A global “gravity” objective stimulates spaces to grow together without gaps. The system first resolves the topological problems until it is in equilibrium: Figure 7. Resolving the topological problems. 15 
  16. 16. Figure 8. The system works out the geometric objectives Figure 9. The topological actualisation stage, the spaces are simulated as circles to allow them to “slide” over each other. The methods described above provide with a wide range of solutions. However, the methods at the same time are too deterministic as the boundaries and sizes are well defined from the beginning. Both algorithms are responsible solely for an adjustment of the possible layouts. The principle that is proposed in this paper attempts to leave more transparent boundaries between spaces of a model allowing for better continuity of space and possible future adjustment by the end user. 16 
  17. 17. Chapter 4. Classic Genetic Algorithm 4.1 Traditional Genetic Algorithm 4.1.1. Brief Description Genetic Algorithm (GA) has an essence of evolution in its domain: the Darwinian process of generating a vast amount of random “solutions”, appropriate in terms of fitness between form, function and context. The solutions that are defined “unfit” are abandoned; the survivors are copied and modified generating the pool of newly created individuals ready for the next leap of the same evolutionary process of mating and mutation, until one or more solutions exhibit a greater degree of “fit”. The fit normally is not absolute and can be controlled by modifying the number of individuals and generations that adapt them. Synthetic genetic algorithms closely resemble the natural model of evolution. Artificial Chromosomes are represented as string structure made of “genes”. The detailed description of the traditional Genetic Algorithm and its embryogenies are described in the Appendix 1. 4.1.2. Evolutionary Embryogenies. Out of the four main types of evolutionary algorithms only GA evolves the computational models motivated by genotype-phenotype mappings in biological systems. In other words it performs artificial development, also known as artificial embryogeny. There are three main types: implicit, explicit and external. a. Implicit embryogeny. The growth process is implicitly specified by a set of rules or instructions, similar to a ’recipe’ that govern the growth of a shape. Examples of implicit criteria: - amount of novelty survival ratio similarity with the neighbours (for data-mining) mass customization, or the degree of possible customization of the product ratio of similarity of FC's components to each other, i.e. if the fitness value of each component is within a range and/or close to each other Through emergence during evolution, these implicit embryogenies incorporate all concepts of conditional iteration, subroutines, and parallel processing which must be manually introduced into explicit GP embryogenies (Bentley, Kumar 1999). 17 
  18. 18. b. Explicit embryogeny It specifies each step of the growth process in the form of explicit instructions. In computer science, an explicit embryogeny can be viewed as a tree containing a single growth instruction at each node. Typically, the genotype and the embryogeny are combined and both are allowed to evolve simultaneously. The advantage of using this type is that there no need to design embryogenies. However, it is difficult to evolve their representations and often specialised genetic operators are required to ensure disruption is minimised (Koza et al, 1999). Examples of explicit criteria: - intersection of the objects proximity of the objects sensitivity to light c. External embryogeny It is “hand-designed” and is defined globally and externally to genotypes and a designer retains higher control over the resulting evolved solutions. It can be manipulated by carefully changing the design of the embryogeny. Also it produces the fewest harmful effects for evolution, and require no specialised genetic operators". The biggest drawback of the type is that embryogenies do not evolve during the evolution of genotypes. The challenge is "to ensure that this complex mapping process will always perform the desired function" (Koza et al, 1999). Examples of external criteria: - total floor area or volume of the building height of the building area of the southern facade (to make it more sustainable) Ratio of floor area to volume (to make it more sustainable) - proximity of the proportion of the elements to the golden ratio - etc. Examples of researches and experiments in the area of artificial embryogenies are explained in Appendix 2. 18 
  19. 19. 4.2 Classic GA for the Current Architectural Scenario 4.2.1. Description of the Code The architectural problem described in section 3.1 Architectural Scenario is proposed to be solved by evolving the predetermined Cellular Automata (CA) model using the conventional GA, where decoded values of the chromosomes are used to parameterise the original CA model thus creating the first generation of its variations. Then the parents are chosen for crossover using the Goldberg Roulette selection method. Offsprings are mutated and replace their parents, thus creating the new generation. The process repeats for a certain number of loops. 4.2.1.1. Original CA Model and Body-Plan Cellular Automata (CA) model at this point created randomly. It represents a building with the three functional areas: BLUE – working RED – living GREEN - resting Figure 10. Cellular Automata model of one floor. Figure 11. Cellular Automata model of many floors. 19 
  20. 20. Parameterisation of the body-plan: Each CA unit is parameterised according to its own state being either "working", or "living" or "resting". At this point the parameters are purely geometrical and GA genes are programmed to define the sizes and positions of the units. Figure 12. CA unit's width and length depending on its state being "working", "living" or "resting" (3 + 3 genes) Figure 13. CA unit's position in relation to the unit's original location on the grid and at the same time keeping the original spatial arrangement provided by the CA model 4.2.1.2. The First Generation The first generation is created out of the individuals that represent the geometrical variations of the original CA model: Figure 14. The first generation of GA individuals 20 
  21. 21. 4.2.1.3. The Fitness Function The Fitness Criteria is still very simple and aimed to maintain the spatial arrangement of the units of the original CA model: - Intersecting volumes are kept to minimum (fig.14); - The distances between non-edge unit and its Moore neighbours kept to minimum (Fig.16 a,b); - Non-edge unit and its Moore neighbours should intersect; - The proportion of the width and the length of each unit should be close to the Golden Ratio (Fig. 15); - The “Living” area must be bigger than “Working”, and “Working” – bigger than “Resting”. Figure 15. Intersecting volumes Figure 16(a). 21 
  22. 22. Figure 16(b). Figure 17. The Golden Ratio programmed into the Fitness Function 22 
  23. 23. 4.2.1.4. The Process of Selection Selection method applied is Goldberg's Roulette Wheel, or pie chart (Mitchell 1998). The principle is that the fittest individual has more chances to be chosen as a parent, compared to the individual with the smaller fitness value: Figure 18. The principle behind the Goldberg Wheel selection method. 4.2.1.5. Crossover and Mutation Mutation Rate was set to be 0.5, meaning that an individual has 50/50 chance to be mutated. The mutation rate is relatively high, just to make sure that the algorithm does work and evolves fitter individuals over the generations and also to gives better diversity to the phenotypes. Crossover Rate: 1.0, meaning that every single couple of chosen parents is crossed-over. Crossover Type: One Point, where a single crossover point on both parents' organism strings is selected. All data beyond that point in either organism string is swapped between the two parent organisms. The resulting organisms are the children: Both general processes of mutation and a one point crossover were explained in detail in the section 4.2.1. A Brief Description of Genetic Algorithm. 4.2.2 Outcome of the Algorithm 10 individuals evolved over 50 generations showing the emergence of the model that maintain a certain spatial arrangement of the different types of units and keeping them next to each other with the slight intersection of the masses. 23 
  24. 24. Figure 19. 1st generation (colourful individual is the fittest with the Fitness Factor being 8.4). Figure 20. 50th generation (colourful individual is the fittest with the Fitness Factor being 9.4). Figure 21. Example of the fittest model of one level (Fitness Factor of 10.4). Figure 22. Example of the fittest model of three floors (Fitness Factor of 7.4). 24 
  25. 25. The models can evolve more sophisticated shapes as more creative forms are programmed into the CA units instead of simple boxes, the search space becomes more structured and the selection methods improve. Figure 23. Part of the search space 4.3.3 The Drawbacks of the Algorithm The most obvious and crucial drawback is algorithm’s lack of produced solution diversity as a result of a problem known as “local optima” and extremely narrow search space. The others are: - the intensification process is not accurate - genetic drift - the production of a vast amount of data during an optimization process without actually using much of it - high convergence rate 4.3 Examples of GA Applications in Architecture Genetic Algorithms have been applied to a variety architectural problems, mostly spatial, structural or performance optimisation and also to floor plan generation. Only recently GAs started to take on board morphogenetic tasks, however still most of them tend to be a result of any sort of performance analysis and development. For example, SOM architects programmed a Genetic Algorithm revealed surprising structurally-efficient shape of the tower - a teardrop: Figure 24. A teardrop tower by SOM architects 25 
  26. 26. Another example where GA is used for a shape-optimisation purpose based on analysis of the lines of principal stress is the TransBay Transit Centre by SOM architects: Figure 25. Trans Bay Transit Centre by SOM architects. Not many are working on giving GA’s field of application another dimension: shape evolution that emerges from the behaviours of other agents of building’s complex system. Among them are Aedas|R&D and Davis Brody Bond who have designed The National September 11 Memorial Museum in New York. They built a suite of software that allows architects as well as exhibition designers to simulate the cognitive effect of geometry on visitors as they view and move through the building. By calculating expanse of views, maps of intuitive orientation are produced that help designers to understand transitions between spaces where no obvious delineation exits (Aedas Computational Design and Research group 2013) Figure 26. The models of movement and volumetric visual perception 26 
  27. 27. Figure 27. Visibility polyhedra along a visitor's path Figure 28. Volume of space visible from a single point in the exhibition Figure 29. Strength and direction of visual field 27 
  28. 28. Chapter 5. Self-Organising Maps and Genetic Algorithm 5.1 Artificial Neural Networks and Self-Organising Maps Artificial Neural Networks (ANNs) were first introduced in the 1950s, but only in the mid-1980s their algorithms have become sophisticated enough for general applications. A self-organizing map (SOM) (Kohonen 1982) produces a low-dimensional structured representation of the high dimensional input space of the training samples, called a map. The data is represented by prototypes, called weight vectors. SOM is trained using unsupervised learning, which means that no human intervention is needed during the learning and that little needs to be known about the characteristics of the input data. An example of a SOM Algorithm Application in 3D Modelling, its applications and other types of SOM algorithms are described in appendix 3. 5.2. Introducing Self-Organising Maps to the Classic Genetic Algorithm 5.2.1 Why Combining Genetic Algorithm with Self-Organising Maps? Having decided to engage computational methods of design and implement the process of emergence during the design process the two main challenges have arisen: how to generate novel, unique and unexpected forms; and how to distinguish “interesting” and meaningful shapes once they have emerged. One of the best ways to tackle the first problems known to date is through a technique known as genetic programming. A possible solution to the second problem could be to involve artificial neural networking. Being the only one of four types of Evolutionary Algorithms, the GA treats genotypes separately from phenotypes, i.e. maps "from genotypes (evolved parameter values), to phenotypes, (to problems)." (Bentley, Kumar 1999) This quality on its own gives increased advantages like "better enumeration of search space, permitting two very differently organised spaces to coexist" (Bentley 1999). On the other hand, SOM represents the quality similar to the associative type of memory of the brain. The brain naturally associates one thing with another. It can access information based on contents rather than on sequential addresses as in the normal digital computer. The associative, or content-addressable, memory accounts for fast information retrieval and permits partial or approximate matching (Ramos 2012). Naturally, Genetic Algorithm reduces the search space. As only highly compact genotypes are permitted to characterise phenotypes, genotypes have fewer parameters than their corresponding phenotypes. It results in the reduction of the dimensionality of the search space (Bentley 1999). I believe that SOM could help to reverse the process of a constantly shrinking possibilities space, allowing higher parameterisation of the genotypes. However, at the same time the expansion of the search space creates a challenge of how to manage the massively expanded choice. 28 
  29. 29. On the other hand, AG belongs to the class of stochastic methods that find solutions to problems by examining random parts of the search space. SOM permits the thorough exploration of well-defined parts of the search space. If essential, more control is gained by using the artificial selection of the potential parents where the designer hand-picks the individuals for crossover and mutation. Moreover, traditional GA generates a large number of solutions rather than a single possible solution at a time, thus exhibiting a sophisticated quality of operational parallelism. Meaning that GA has a greater chance to find the meaningful solution, but it has a tendency of getting “stuck” in a local optimum. SOM attacks this challenge by allowing an in-depth search of the expanded neighbourhood of solutions similar to the ones that caught the attention of the designer. Also if there are few potential candidate solutions the whole spectrum of the resulting models that lies in between them can be assessed as well. Design cannot be carried out without the visualisation of the potential models. In traditional methods most of the visualisation happens in the imagination of the designer and only the selected elements are brought to life by sketching or drawing. SOM in a way becomes that virtual imagination that structures, classifies and records the broader search space of the traditional GA and enhances the creative intuition of the designer. Therefore by combining the two approaches, organising the search space with the help of SelfOrganising Maps algorithm, the design of the possibilities space can be classified thus enabling better optimisation of the search process, providing with a more advanced visualisation of the solutions. 5.2.2. Managing the Expanded Choice As mentioned earlier, the expanded search space is an advantage and a drawback at the same time. Why it is beneficial, was looked at earlier. The reasons why its size has to be controlled is described below. Expanded choice can lead to "...less happiness, less satisfaction and can even lead to paralysis" (Piasecki, Hanna 2000). A designer can experience the same confusion when faced with a massive solution space offered by a Genetic Algorithm, even more so when it is expanded at each generation with the SOM. Being different to machines, human beings have a very powerful filter of information – their subconscious, when it comes to making a decision. Subconscious is formed by one's experience, knowledge and inherited genes. However the verdict in most cases is made by the conscious mind. When having to make a choice between two fairly equal options, most of us often feel confused and distressed. I believe that this is due to another characteristic of human beings - a personal attachment. Luckily computers do not possess personal attachment and a way around the problem can be worked out. Now, how do I imitate both the sub-consciousness and the consciousness of human beings in a program to help the computer to make the right choice even with the helping hand of the designer? What will the fitness factor consist of? Will there be a fitness factor at all? Or will it be evolving over the duration of the algorithm? Keller and Stealin suggested that the results of the decision-making process depend on the correlation between the quality and quantity of information. If the amount of information increases whilst maintaining its quality, the efficiency of good decision making will decrease, and visa versa. This concept is represented in Wundt Curve Representation of the Paradox of Choice: 29 
  30. 30. Figure 30. Wundt Curve: Graphic representation of the Paradox of Choice. Self-Organising Map can represent a multidimensional Wundt curve, where each product attribute is mapped onto a separate dimension. The shape of the curve will vary in each dimension going from user to user. When it comes to architectural design an architect faces certain challenges of being able to successfully define the meaningful attributes of the design: - The importance of the parameters varies whilst they all have to be read in conjunction with each other. It can be represented in the weighed complex fitness criteria - The end user simply may not know what he/she needs. The idea of co-evolution emerges. - By nature the architectural design due to its complexity is an "ill-defined problem" or a "wicked problem", in which potential solutions evolve together with the formulation of the problem itself (Rittel 1973) Below is the proposed breakdown of the important factors to consider whilst coding the process of selecting the right individuals for the crossover based on selected thoughts of Piasecki and Hanna (2000): 1. Limit the solution space by choosing the individuals based on evaluation of their mostessential and meaningful parameters, parameters that the designer wishes to work with or customise. 2. Let multiple users to experiment with the population and the algorithm to adjust thedefining selection criteria for a particular problem. 3. Create an algorithm that learns from users and creates a model of their preferencesbased on a definition of meaningful solutions. It can be used later on to narrow down the solution space. Alternatively, use a selection method based on the recognition of the remaining meaningful choices based on artificial or "manual" selection. Users are not forced to explicitly define values of all the parameters available to customize. Instead they express preferences among a couple of different options. 4. Implement a Recommender System Appendix 4 shows Piasecki and Sean's experiment that proves that by using GA in rationalising the "meaningfulness" of choice the Wundt curve relation of users satisfaction and the scope of choice doesn't apply. 30 
  31. 31. 5.2.3. The Evaluation of the Aesthetics The challenge of managing the expanded choice was tackled suggesting that the user assesses the essential criteria that determine both performance and aesthetical values of the emerged models. But how the evaluation of aesthetic qualities can be performed? How can they be controlled in the bottom-up computer-aided design process? The formal study of aesthetics dates back at least to the ancient Greeks, who were trying to establish the connection and analogies between architecture and other forms of art like dance and music. This is why the principles of rhythm, proportion and symmetry were widely applied in Greek and Roman architecture. Until now architects, critics, artists, psychologists, and philosophers are persistently trying to develop the objective methods for evaluating aesthetic qualities of building or even simple objects. Still their efforts did not result in the establishment of neither agreed-upon aesthetic “standards” nor methods that will compare the objects or buildings to such standards. The experimental methods do exist and they are described as “Habitual” or “Computational” (Kalay 2004). They include an “objective” or mathematical approach, a “subjective” or perceptual approach, shape grammars, computational approximation of “acquired taste” and so on. To establish aesthetic criteria is extremely challenging if not impossible, as the relation of the design formation and the architect can be seen as a process of co-evolution. One way to define an aesthetic evaluation is as a translation from the evolving over-all perception image of an architectural model to an automatic set of mathematical selection rules. In the absence of such mathematical function the final result will remain an exploration of some random sub-spaces of possible and hypothetical novel solutions. Alternatively, however, the objective and analytical evaluation of any final design could be misleading if those aesthetical fitness functions were implemented, mapping genotypes into the “usefulness” of the hypothetical novel forms. Probably this is mostly because this aesthetical “mapping” uses a compression method, where the diversity of any multidimensional conceptual world of the design reduced and represented by its only few aspects. Luis Borges words on these matters are wise: the only true map of the world is the world itself. There is however one way to avoid those mathematical mappings. That is of using the human observer or “artist”, as an “aesthetical mapping machine”, connected in real-time to the artificial evolutionary process. (Ramos 2012). In other words, the human being selects the images which are aesthetically pleasing, or otherwise interesting, and these are used to breed the next generation. For the first time the idea was introduced in 1991 by Karl Sims, where the computer-graphics program called Primordial Dance uses genetic algorithms to generate new images, or patterns, from pre-existing images(Sims 1991): Figure 31. Images evolved during the Primordial Dance uses genetic algorithms. 31 
  32. 32. 5.3. The Evolution of the Proposed Code 5.3.1. Stage 1.Classic GA for the Current Architectural Scenario The algorithm was described in the section 4.3. Classic GA for the Current Architectural Scenario. 5.3.2. Stage 2. Adding Golden Ratio to the Fitness Criteria An arguable aesthetic factor was added to the model's existing Fitness Criteria. The idea was to encourage the proportions of the width and length of the boxes to be close to Golden Ratio number 1.618, whilst maintaining the spatial arrangement of the units of the original CA model. Observations and Conclusion: The more factors are added to the Fitness Factor the more problematic becomes the problem of local optima. The algorithm has a tendency to stick to one or two fitness criteria and evolve them, compensating with their very high ratio the low level fitness of the other criterias, like in the example shown below. The units' proportions became very close to the ratio of 1.618 thus achieving very high fitness factor. However the intersection and proximity to each other requirements are far from being met. Example of the evolved model with very high total fitness factor that gets its value mostly from meeting the criteria of the proximity to Golden Ratio, leaving the other fitness factor constituents un-evolved: Figure 32. A model with a high fitness value assessed on meeting the Golden Ratio criteria 32 
  33. 33. The emerging properties of the resulting models of the algorithm were not consistent as the fitness function was confusing the process of evolution. To attempt to solve the problem the following code adjustments could be implemented: to introduce the process of expanding and structuring the search space with the SelfOrganising Maps. Alternatively to ensure that only that model is allowed to become a parent if each component of the fitness criteria is above the certain acceptable level; to create an elimination criteria. It can also be getting stricter with each generation thus still encouraging evolution however at the same time promoting diversity and avoiding the problem of local optima. Nevertheless the algorithm did work and produced some good results. For example, below is the comparison of the best individual of the 1st generation and the best individual of the 250th generation. Figure 33. The best individual of the 1st generation Figure 34. The best individual of the 250th generation: 33 
  34. 34. 5.3.3. Stage 3. Introducing Self-Organising Maps to the Genetic Algorithm Each Self-Organising Map trains its neurons to become a close match to every individual of each generation that represent “inputs” of the neural map. The neurons highlighted in RED are the best match of an individual of the generation or “winners”. The fitness of the neurons within the map at this stage was not checked therefore they couldn’t become parents yet and fuel the evolution. Figure 35. SOM expanding each generation of GA. 34 
  35. 35. 5.3.4. Stage 4. Turning Chromosomes into Neurons and Back In order for neurons to participate in the selection process, chromosomes and neurons have to be compatible in their parameterisation as they represent two classes in the algorithm. One that produces and works with GA individuals and their chromosomes, and another with SOM neurons. At the stage when SOM inputs are generated every individual from the current generations has to serve as an input neuron. To do that, chromosomes and their values have to be encoded into the vectors of corresponding neurons. As the chromosome coding and neuron’s vector parameterisation are exactly the same, their fitness assessment can be performed with the same function. However, later on, after the SOM is trained and the parents have to be selected, neurons have to pass their coded vectors’ values to form chromosomes for crossover. In order to achieve this the resulting vectors of the trained neurons have to be encoded to represent the binary string of the chromosome. Turning GA individual into a neuron of SOM In a standard GA algorithm a decode function does the following. It takes a chromosome list that contains zeroes and ones. Then it decodes it and turns it into the list of corresponding to each gene values (please see section 3.2 .Traditional Genetic Algorithm: a Brief Description). These values are assigned to their corresponding neurons’ vectors. Turning neuron back to GA individual In order to SOM neurons have generated lists of values and a "reverse decoding" had to be performed in order to be able to have chromosome lists ready for crossover and mutation of the individuals. In other words the task was to create a chromosome list like this: From values list like that: Also all neurons' values are decimal numbers (as they were trained by artificial neural networks) so the values have to be rounded up to the closest even number and not bigger than the max decode value for the defined gene length Now neurons have all the information necessary for crossover and they now can become parents. 35 
  36. 36. Colour-coding of the models: PURPLE - individuals of Genetic Algorithm generations BLACK - Self-Organising Map trained on each generation RED - the SOM "winners" or a model that is the closest match to the individuals in their generation. GREEN - the fittest models among each GA generation and neurons of SOM. The Fitness Criteria is unchanged The Selection Process is carried out among the individuals of the particular generation and its corresponding Self-Organising Map using Goldberg's Roulette Wheel method Mutation rate 0.2 Crossover: One Point type with 1.0 rate. Siblings replace random individuals of the current GA generation thus becoming the population of the next generation. Self-Organising Maps & their values: Winner learning strength is 0.98; others learning strength is 0.95; convergence rate is 0.3. Figure 36. The example of the resulting evolution of the SOM-expanded generations. 36   
  37. 37. Figure 37. Example of the first generation and its Self-Organising Map Observations: - All the fittest models are within SOM - With the evolution there are less winners as the training individuals from the later generations are getting more and more identical to each other. Therefore one "winner" can be a match to a few individuals of the GA; - By the 7th generation the algorithm got stuck on its local optima. The population of each generation should be refreshed each time by replacing the old individuals with the neurons of high fitness. Alternatively an age criteria could be incorporated into the fitness value. However on the other hand, it will not yield good results as complicating fitness criteria leads to losing some values and concentrating on others. It can be fixed however by introducing the filter that determines the individuals with equal proportions of fitness criteria components as mentioned earlier; - There is a linear correlation between the fitness values of the neurons and their location within the map if fitness criteria is mostly dependent on the geometry of a model. 37   
  38. 38. Conclusion: - Manage the expanded choice by introducing the elimination criteria; - Introduce the threshold for Fitness Factor components; - Artificial Selection; - The population of each generation could be refreshed each time by replacing the old individuals with the neurons of high fitness 5.3.5. Stage 5. Co-evolving Threshold of the Fitness Factor Components In order to gain some fitness an individual (or a neuron) must have the components of the fitness factor defined accepted level. If one of the Fitness Factor constituents is below the defined threshold, its total fitness is written down to zero. This is introduced for two reasons. Firstly, so individuals evolve their fitness evenly across all its components. The individuals whose fitness is zero are not participating in the selection process at all. Secondly, to manage the problem of expanded choice and structure the search space by narrowing it down and eliminating the individuals that are not fit across all the components of the fitness factor. Also the computational time is saved as the neurons with fitness zero, do not go through the laborious process of encoding their values to binary chromosome code. Figure 38. Extract from the code: assessing the fitness value However if the population is too small the chance to have fitness value of zero is bigger and no crossover can happen. If all individuals are of fitness zero, the algorithm communicates this and suggests setting up more individuals in the next run. Much fitter individuals started to appear straight away in the next generation. However the evolution speed slows down. To keep it up, a co-evolving threshold can be introduced, i.e. the defined level will be getting higher and higher depending on the growth of the Fitness Factor components of each individual. In this case, to keep it simple for the sake of the experiment, each component fitness factor increases by 5% with each generation. Co-evolving fitness components threshold and composing the next generation from the siblings after the crossover processes resulted in a surprisingly slow fitness criteria increase. However the algorithm gave back something much more valuable: from the second generation onward almost 90% of neurons were over the fitness components threshold structured in a clustering manner. At the same time the variety was very poor. The algorithm was behaving very similar to the classic GA - tending to get stuck on the local optima. 38   
  39. 39. Observations and Conclusions: - At this stage filtering out the population with the elimination criteria and applying artificial selection a designer has a great choice of good quality models, but of poor diversity. To increase it a Fitness Factor has to contain non-geometrical criteria; - as the algorithm structures the search space and only concentrates on the individuals with higher fitness, the Goldberg's Roulette or even artificial selection was not a very logical choice. A totally random pick of parents from the group of already selected individuals could be perfectly adequate, as the selection is already programmed into the fitness threshold. The problem with Goldbergs Roulette is that it tends to select the fittest individuals thus creating a perfect environment for the future local optima. By randomly selecting parents from the cloud of the fit candidates hopefully the results can be more diverse especially restructured by SelfOrganising Maps; - the problem of limited variety of the models' geometry is down to the facts that the fitness factor is composed of 100% external criteria; - by changing the learning factor from 0.3 to 0.5 (the lower the factor the closer neuron's parameters will be to the individual it is trying to match), bigger diversity was noticed among neurons and resulting in a very aggressive fitness increase; - keeping the learning factor at 0.5, the mutation process was eliminated. Much more structured space, slightly faster fitness evolution; - not many generations the population needs to be evolved over in comparison with the classc GA; even if all the individuals in the generation have fitness of zero, a map can produce couple of neurons with some sort of fitness. It is like driving a car using only clutch; - the fitness grows so fast from generation to generation even with the co-evolving fitness threshold that it is necessary to introduce a fitness assessment function to determine the reasonable threshold level for each generation; - this algorithm gains its effectiveness with the larger populations and neural maps, that takes a lot of the computational power and time. 5.3.6. Stage 6. Optional Selection Method As the selection of individuals is already programmed into fitness, the assumption is that there is no point to even use Goldberg Roulette as a selection method. A random coupling can be performed and their off-springs can compose the next generation. The experiments showed that if there are more couples than the number of individuals in each generation and the fitness threshold is not set very high, than the evolution dies out. At best the fitness remains exactly the same throughout generations, without even giving much of form diversity. That is due to a vast variety of certain level fitness values, so it fluctuates from generation to generation without steadily going up. 39   
  40. 40. As a solution, off-springs of all couples can compose the next generation and therefore increase the size of the neural map, so its efficiency is not lost. Coincidentally the phenomenon of the ever changing size of the population of each generation is very similar to what occurs in nature. The size of population depends on so many factors and luck itself and is never constant. The drawback of this method can be excessively large size of the population and their corresponding maps. To control the situation the fitness threshold must be evaluated properly and adjusted to represent only the appropriate range for the selection purposes. Only the parents with the right characteristics should participate in creation of the next generation. Figure 39. SOM participates in crossover function. The dark and light orange coloured individuals represent the parents of the next generation. As a result, the potential parents were filtered leaving only those with the fitness of greater than half of the best one of the current map. It was done in order to minimise the size of the further generations and their neural self-organising maps. So the algorithm evolves the fitter generation from the expanded search space extremely fast. However, the biggest drawback is that it has to run many times before it can create the first generation where the components of the fitness criteria are at the right balance. If it doesn't happen then the code just terminates with the message informing that the fitness of all individuals is of zero value. In a way it is not a bad thing as it stops the user from wasting a lot of computational time and evolving the wrong generations. However, even though the algorithm works perfectly well, something can be done in order to produce a more appropriate first generation as at the moment it is created randomly. Alternatively, the fitness components threshold can be more intelligent and be set depending on the fitness values of each component of the current generation. The second option is more realistic to program. The same goal was achieved by simply lowering the Fitness Components Threshold and increasing the minimum fitness level for the parents’ selection. Also the maximum size for the neural maps was set to keep the computing time to realistic limits as sometimes the map can be so large that it concentrates too long on one generation without any benefit for the evolution process. 40   
  41. 41. The resulting maps showed well-defined clustering (due to the fitness factor being geometry dependent), displaying the concentration of the fittest models on the maps: Figure 40. Clustering of potential parents. 41   
  42. 42. 5.4. The Final Algorithm 5.4.1. The Structure of the Algorithm The algorithm is described in the stages of its performance. 5.4.1.1. Original CA Model and Body-Plan The initial part of this stage remains unchanged and is described in the section 4.2.1.1. Original CA Model and Body-Plan. An example of the possible architectural application and parameterisation of the body-plan is described below. Once the parameterised CA volumes are built the morphogenetic process of the final architectural model begins. Firstly the centroids of the edge boxes are located. Then the centroid of the area between the points is determined. Figure 41. Locating the centre point between the centroids of all edge CA units 42   
  43. 43. After that the ellipse is drawn from the centroid of each CA unit as shown on the Figure. 42 and then its extruded (Fig. 43). Figure 42. Creating ellipses. Figure 43. Extruding ellipses. 43   
  44. 44. Both top and bottom ellipse of each unit is divided into equal amount of segments. The division points are shown of Fig. 44. Figure 44. New shape of the CA units and their division points. Figure 45. Double loft surfaces going through the division points. 44   
  45. 45. Figure 46. Surfaces of the new model with the bridges between the units Figure 47. Top view of the model 45   
  46. 46. All similar types of units are connected with each other by a bridge-platform, providing the connectivity between the functional zones. Figure 48. Colour-coded connection bridges between the similar units on each floor. 46   
  47. 47. Figure 49. Perspectives of the model 47   
  48. 48. Figure 50. The bridges viewed from the interior of the towers The alternative models that can be programed into the proposed algorithm are shown in Appendix 8 The task of this stage is to find the ways to parameterise the defined functional zones so they can be moulded together in one connected space and let the user choose the method. Alternatively, mould the spatially allocated masses together by combining all the objects with different sets of parameters to form one (with the sum of the characteristics of all the separate parts). Parameters do not necessarily need to represent geometry. Qualities can be both extensive and intensive. A different initial model can be chosen for development. For example, a spatial layout as a result of an automated space planning by Computational Design group at Aedas R could be used. The concept behind this planning is that the accommodation schedule is loaded, and its components try to arrange themselves automatically according to an adjacency matrix (Aedas Computational Design and Research group 2013): Figure 51. Abu Dhabi Education Council: accommodation schedule 48   
  49. 49. Figure 52. Abu Dhabi Education Council: massing derived from layout application Figure 53. Abu Dhabi Education Council: Design principles 49   
  50. 50. 5.4.1.2. The First Generation The first generation is composed from the “fit” models hand-picked by the designer from the number of random “fit” models generated by the algorithm. Each of them is given a unique colour that will be evolving together with the form of the models. The first generation is created out of the individuals that represent the geometrical variations of the original CA model. Each CA unit is parameterised according to its own state being either "working", or "living" or "resting" and located within chromosome-defined distance from the CA’s origin of each unit: Figure 54. The first generation hand-picked by the designer. 5.4.1.3. Introducing Self-Organising Maps The detailed process is described in the section 5.3.4. Stage 4. Introducing Self-Organising Maps to the Genetic Algorithm Clustering of the neural map is performed based on the proximity of each neuron to the winners. Each neuron chooses the closest one and assigns itself to become a part of that winner’s cluster. At the same time each list of the cluster's individuals contains the corresponding original individual from the current population. For visualisation purposes each individual has its own colour and the same colour has individual's best match on the neural map. Every neuron on the map changes its colour to match the colour of the closest input or teaching neuron (marked with the circle around it). This way the self-organising map displays colour-coded clusters: Figure 55. Colour-coded clusters of the map classifying it according to the similarity of neurons to each input (or individual of the current generation). 50   
  51. 51. 5.4.1.4. The Fitness Function One of the biggest challenges in evolving the optimal design solution with multi-objective criteria is to balance out the fitness criteria components or overall performance of the solution. The goal is to overcome the problem when a design proposal excels with regard to some performance objectives and yet prove insufficient on others. In order to achieve that one of the most crucial principles of the current algorithm is the condition to assign a sum of all components to the total fitness of the individual only if a value of each fitness constitute is above its minimum corresponding threshold level. The initial fitness constituents were described in the chapter 4.2 Classic GA for the Current Architectural Scenario, section 4.2.1.3. The Fitness Function. Additional two fitness components are added: - Minimising the total intersection area of the elliptical slabs of the new architectural model (Fig. 56); Minimising the length of the centroid curve of the model (Fig. 57 a, b, c). Figure 56. Intersection areas of the elliptical slabs. 51   
  52. 52. Figure 57(a). Middle point of all the edge units’ centroids. Figure 57(b). Centroid curves of the models Figure 57(c). Centroid curves of various length 52   
  53. 53. Composition of Fitness Criteria At this stage the proposed algorithm assumes that all Fitness criteria components are equally important. However, fitness constituents can be programmed to have their own weightings within the total fitness value, thus mathematically assigning their importance in the overall fitness assessment, if after the process of the evaluation it is clear that all design objectives cannot be equally satisfied. This ensures that GA will not evolve an individual with a high total fitness value that is represented only by one or two fitness criteria constituent and at the same time it naturally narrows down SOM-expanded search space. Furthermore, depending on the selection method a fit neuron is selected from each cluster for crossover and mutation in order to keep the diversity rate high. Figure 58. Composition of Fitness Criteria Fitness Function Explained Mathematically: max(TFabc) = max(Fa) + max(Fb) + max(Fc); max(TFabc) is the maximum value of total fitness, where max(Fa), max(Fb), max(Fc) are the maximum possible values of constituents Fa, Fb, Fc of the actual total fitness TFabc; max(Fa), max(Fb), max(Fc) are calculated at the beginning of the algorithm; max(TF) = 100 is a preassigned new maximum total fitness value of 100 so the actual value will be mapped to have a value between 0 and 100; β = max(TF)/max(TFabc) = 100/max(TFabc), where β is the mapping index; TFabc = Fa + Fb + Fc is actual total fitness, where Fa, Fb, Fc are the constituents of the actual total fitness; Fthr = 20% is the fitness threshold that represents the minimum value all of the fitness constituents must have in order for an individual to qualify as a candidate to become a parent; if any of the fitness components is less that this threshold, then the total fitness of that individual automatically goes to zero; Actual min value of the fitness component a: min(Fta) = Fthr * max(Fa) If Fa > min(Fta) then the value of the fitness constituent a is mapped to be within the range between 0 and 100: Fa acquires the value of (Fa * β) the new total fitness value will be: TF = Fa + Fb + Fc and its maximum value will be 1: 53   
  54. 54. Fitness Topography As it was mentioned earlier due to the pure geometrical fitness criteria, the fitness values of the maps and GA individuals are arranged in clusters throughout generations. The Surfaces below represent the Fitness Topography of the entire evolved population over the generations. This visualisation is useful for analysis of the performance of each neuron, their maps and datamining. The cooler the colour, the higher the fitness value. Figure 59. Example 1: The Fitness Topography Surface of the population evolved over six SOM-expanded generations (a) 54   
  55. 55. Figure 60. Example 1: The Fitness Topography Surface of the population evolved over six SOM-expanded generations (b) Figure 61. Example 1: The Fitness Topography Surface of the best individuals of each SOMexpanded generation 55   
  56. 56. Figure 62. Example 2: The Fitness Topography Surface of the population evolved over six SOM-expanded generations (a) 56   
  57. 57. Figure 63. Example 2: The Fitness Topography Surface of the population evolved over six SOM-expanded generations (b) Figure 64. Example 2: The Fitness Topography Surface of the population evolved over six SOM-expanded generations (c) 57   
  58. 58. Figure 65. Example 2: The Fitness Topography Surface of the best individuals of each SOMexpanded generation 58   
  59. 59. 5.4.1.5. Selection Options 5.4.1.5.1. The Final Decision-Making Rules - Provide the user with the minimum parameters, only with those that they wish to work with or customise; - Define multiple constraints. Define a separate very simple multiple fitness criteria that consists of pure functional values that increase feasibility of the building (min/max floor area, min/max height, structural capacity, etc). Eliminate the least fittest individuals of each benchmark from the current SOM-expanded generation instead of classic "choose the fittest". This will stop the algorithm from taking into account the attractive features of non-suitable individuals during the next few steps; - Offer simple visualisation of each architectural solution thus enabling user to access it quickly and efficiently; - Artificial selection of the individuals for the cross-over. The individuals can be assessed in pairs to increase efficiency of choice and promote the intuitive choice of "good enough" individuals instead of looking for the optimal ones (Schwartz, B. 2004). This step can be repeated a few times in order to narrow down the parents to a desirable number of potential parents; - Choose when to choose parents for crossover. Sometimes only mutation needs to be applied. The choice can be left for a Recommender System to find the patterns (not part of this thesis); - Regardless the chosen selection method the first selection process is performed on the background during the stage of the fitness assessment. The total fitness is assigned to the individual only if a value of each fitness constitute is above its min corresponding threshold level. Otherwise it is set to zero, thus carrying out the first filtration of the potential parents; - The parents are chosen one from each cluster. However, if there are no fit individuals in the cluster then a brand new individual is created that has fitness above the average of that particular cluster. This fulfils three purposes. Firstly, it keeps evolution from dying out by lowering the number of the individuals as the selection criteria are relatively high. Secondly, it serves as another more effective variation of mutation function and keeps the diversity levels up. Thirdly, non-intrusively broadens the relevant search space by bringing occasional individual of a relatively high fitness. Even the preferred and the most logical method for handling the expanded choice is Artificial selection, the other two selection methods are introduced for comparison and proved to perform equally well if not sometimes better when facing various design objectives. 5.4.1.5.2. Selection Option 1: Optimised Random Selection by Clusters As the neural map is trained classifying the neurons according to their vector parameterisation and is dividing the map into clusters, the selection process takes place. The initial selection of individuals is already programmed into the fitness function. Only those individuals are given fitness whose fitness constituents are above a certain evolvable threshold. 59   
  60. 60. After the neural map is trained, of all fit individuals in each cluster only those are qualified to go through this stage if their total fitness is above the average of all the fit neurons within the cluster .The cut-off level can be set even higher if the purpose is to speed up the evolution process. The following rules are applied to the process of the parents’ selection among the neurons that are fit enough and have a fitness value above certain threshold over the average cluster fitness: - If there are two or more fit enough neurons in the cluster, then two random ones are selected for the crossover; If there is only one, then it becomes a parent automatically; If there are no fit enough neurons, then a brand new fit enough individual is created to become a parent (Fig. 66 on the next page). This selection method is used when the designer is more confident with the programmed fitness evaluation rules and wishes to give more control to the machine which is programmed to look for a potential parent in the certain area of each cluster. 5.4.1.5.3. Selection Option 2: Artificial Selection by Clusters and the Evaluation of Aesthetics The proposed selection method gives power to a designer’s experience and intuition in order to evaluate the aesthetics of the evolving model when the artificial selection method is chosen. At the same time designer influences the aesthetics by programming low level implicit rules into the code. Also it helps to avoid the local optima problem. The individuals are assessed in pairs going from cluster to cluster in order to increase efficiency of choice and promote the intuitive choice of "good enough" individuals instead of looking for the optimal ones (Schwartz, B. 2004). This step must be repeated a few times in order to narrow down the parents to a desirable number of potential parents. The structure of the algorithm allows the designer to choose a different number of parents for crossover at each generation. Also at this stage the crossover rate controls which parents to mate, not the designer. An option for the user to choose which individuals to carry on to the next generation and which to pair could be suggested as a possible variation to the code. The following rules are applied to the process of the parents’ selection among the neurons that are fit enough and have a fitness value above certain threshold over the average cluster fitness: - If there are two or more fit enough neurons in the cluster, then the designer chooses two among them for the crossover; If there is only one, then it becomes a parent automatically; If there are no fit enough neurons, then a brand new fit enough individual is created to become a parent (Fig. 66 on the next page). The Artificial Selection method can be used when the priorities are the aesthetical qualities of the model or/and the architect feels essential to personally carry out the assessment of the offered solutions by him/herself and needs to put his/her hands directly into the design process. 60   
  61. 61. Figure 66. SOM, its clusters and the selection principle 61   
  62. 62. 5.4.1.5.4. Selection Option 3: Goldberg Roulette The mechanics of this selection method were described in the chapter 4.2 Classic GA for the Current Architectural Scenario, section 4.2.1.4. The Process of Selection. It was introduced in the proposed algorithm as a comparison to more deterministic methods described above. Even being the simplest and the closest to a natural selection process it has its drawbacks. It may lead to biased selection towards high fitness individuals. It can also possibly miss the best individuals of a population. There is no guarantee that good individuals will find their way into the next generation. 5.4.1.6. Crossover Depending on the chosen selection method a list of parents is generated. Then the couples are formed randomly from the individuals on that list. The same type of one point crossover is applied. The unique quality of this algorithm is that the size of each generation and therefore their corresponding neural maps can change, depending on the number of the parents chosen during the selection stage. It helps to maintain the diversity at the early stages of the design process. However if the point where the small solution space is defined as relevant and optimal, then the number of individuals can go down allowing thorough investigation of this particular area of the search space. 5.4.1.7. Mutation The mutation rate can be changed depending on the level of the genetic diversity that needs to be maintained. However if a new individual is created for any of the clusters because there were no fit ones then mutation doesn’t apply. Mutation as a genetic operator was described more in detail in the section 4.2.1. Brief Description of Genetic Algorithm. 5.4.1.8. The Following Generations All chosen parents are mated and the siblings compose the next generation. The same process performed again for a certain number of generations or until the individual/s with the adequate characteristics has/have evolved. 5.4.1.9. Visualisation of the Search Space by Clustering and the Evolution of Colour The illustration below shows the neural maps in clusters. The colour of each cluster represents the colour of the corresponding training individual of the current generation. Each neuron acquires the colour of the closest to it winner (a neuron closest to the training individual of the current generation). When the parents are chosen their off-springs inherit their averages of R and G colour indexes spliced in a randomly chosen proportion. B is constant for all individuals and their off-springs to keep the colours readable. Therefore the colour of the clusters evolves with generations in parallel with the shape of the models: 62   
  63. 63. Figure 67. The example of the population evolved over three generations. 63   
  64. 64. Figure 68. The example of the population with the example of the developed body-plan evolved over two generations. Figure 69. The perspective of the same population. 64   
  65. 65. So far, neurons' vector parameters were 100% geometrical. That gives the map a very welldefined visual clustering. As more implicit types of parameters are programmed into the vector (or chromosome values) and also into the Fitness Factor, the more diverse will be the appearance of the search space. 5.4.2. Main Results and Observations As the algorithm finishes running it produces the summary of the data of each generation (Fig.__) Figure 70. The example of the algorithm’s report The key observations over the process of the algorithm development: - The evolution of the model is recorded for further reflection as the fittest solution does not always mean the most appropriate in both functional and aesthetical sense; - By changing the neural learning factor from 0.3 to 0.5 (the lower the factor the closer neuron's parameters are to the individual it is trying to match), bigger diversity was noticed among neurons resulting in a rapid fitness increase and much more structured space; - Even if all the individuals in the generation have fitness of zero, a map can produce couple of neurons with some sort of fitness. It is like driving a car using only the clutch. - By changing the converge rate, “winners” and “non-winners” learning strength the designer can control which part of the GA's search space will be explored next - In order to avoid the local optima problem, the best solutions are the artificial selection and introduction of other non-geometrical fitness criteria components. The relationship between the units of each model must understood as a notion of “sympathy” and be reflected in the way they are acquiring their form; - The majority of the fittest models are located on the neural map; - With the evolution there are less winners as the training individuals from the later generations are getting more and more identical to each other. Therefore one "winner" can be a match to a few individuals of the GA; - There is a linear correlation between the fitness values of the neurons and their location within the map if the fitness criteria is mostly dependent on the geometry of a model. 65   
  66. 66. 5.5. Advantages and Disadvantages of GA-SOM 5.5.1. Advantages As more and more complicated design tasks are being set in front of the computers, it is essential to take care of the "representation of the solutions", otherwise the increase in complexity of the genetic algorithms can cause certain problems such as "disruption of inheritance and premature convergence to local minima often preventing the generation of fit solutions altogether" (Bentley & Kumar 1999). Conventionally architects use sketching technique known as “thinking with diagrams” - a process where the designer “lets his/her hand do the thinking” (Akin 1978). Sketching is performed with the context of a specific problem in mind, when the solution to it is not fixed to begin with. Rather, it emerges as the process unfolds (Habraken 1985). It has been argued that this process of the emergence of form and the meaning behind it from a representation is the essence of creative design. SOM provides the designer with such visual feedback of the possible solutions and a reinforcing system to recognise and understand the possibilities and implications of the evolving design. The explored search space of the Genetic Algorithm is mapped only according to the fitness criteria. The biggest advantage of SOM-GA algorithm is that its search space is also mapped based on the results of the evolution of the neurons’ vectors or individuals’ chromosomes. The design process is led towards that part of the possibilities space where the combination of model’s programmed parameters and fitness are found to be appropriate. The other ways in which SOM benefits to the current algorithm: - Re-structures and expands the possibilities space; - Better performance at generating unexpected solutions and thus potentially being able to compete with human creativity; - Introduces clustering property to the search space of GA, a characteristic that is a direct consequence of the data visualization- and exploration capabilities of the topographic map - ability to evaluate the solutions in non-procedural ways; - Tot as many generations the population needs to be evolved over in comparison with the classic GA; - SOM classifies the search space in order to make the essential choice of regions of the space should be explored next; - Out of all known algorithms only SOM handles the challenge of working with the models of Large dimensionality. GA individuals are parameterised following the similar principle as the neurons in SOM, making GA and SOM compatible; - - Minimises many drawbacks of the traditional GAs, such as inaccuracy of the intensification process, genetic drift, production of vast amount of the data during an optimization process without actually using much of it, high convergence rate, limited diversity, and problem of "local optima", helps to broaden and amplify the synthetic intuition of the designer. 66   
  67. 67. Main characteristics of SOM that are automatically are passed to GA search space that uses neural maps to expand each generation: - Unsupervised learning algorithm that reduces the dimensionality of a certain number of units (Kohonen, 1997); - The map is able to maintain the topology of a data space by using the neighbourhood function, thus creating clusters of units that correspond to similar data patterns; - The uniqueness of SOM is in its ability to handle the problems of large dimensionality; - Processes information as patterns, rather than executing explicit instructions one at a time exhibiting the properties of parallelism and pattern recognition; - Generalisation capability meaning that the network can recognize or characterize inputs it has never encountered before. A new input is assimilated with the map unit it is mapped to. 5.5.2. Disadvantages The main disadvantages of the proposed algorithm, excluding the typical ones for each GA and SOM: - The algorithm gains its full effectiveness with the larger populations and neural maps, that takes a lot of the computational power and time; - there are too many combined factors between GA and SOM (like fitness factor, mutation rate, selection rate, convergence rate, winner strength, etc.) that proves it very challenging to find the right equilibrium between them for each design problem; - The problem of the expanded choice and evaluation of the aesthetics of the models; 5.5.3 Examples of other SOM-GA algorithms and their applications - Appendix 5: First ever Self-Organising Maps for Muliti-Objective Evolutionary Algorithm (SOM-MOEA) by Buche et. al. in 2002 - Appendix 6: Brudaru's Cellular Genetic Algorithm With Communicating Grids and SOM - Appendix 7: Kita's real-coded genetic algorithm (RCGA) and SOM 67   
  68. 68. 5.6. Further Research and Algorithm Development The proposed algorithm and the associated research so far were only concentrated on the SOM/GA part of the potential final code. The chapters below show the other areas of exploration that could turn the current algorithm into a very productive architectural design tool. 5.6.1. Parameterisation of the Body-Plan Using the main advantage of using machine in the design process is being able to explore various parameterisation strategies of the body-plan for shape finding purposes. While D’Arcy Thompson proposed the idea that natural form may be better understood through biological process, Christopher Alexander has taken the concept of morphogenesis further, formulating the principles and applying it to all kinds of natural phenomena. He proposed three natural processes of form-making. The first one is “smooth unfolding” in nature, the second is “structure-preserving transformation” and the third is “formation of centers and fields of centers” (Alexander 2002). Alexander’s work could inspire few different ways of evolving the form that could be programmed into the proposed algorithm. Other various form-finding methods can be tested, like for example grammars, expert systems, case-based methods, mechanical or electrical metaphors, recipe like instructions, attempts to draw inspiration from divine sources, “rational” methods, “formalistic” methods, and of course simple trial-and-error methods. For example, Aedas R&D, developed a concept design for the Taiwan Tower in Gateway Park of Taichung City in Taiwan (Aedas Computational Design and Research group 2013). The tower’s shape derived from the form that emerges when a falling object hits the surface of water. The scheme’s plan takes the geometry of the new Gateway Park and forms a series of ripples that weave the tower into it surroundings, forming terraces, bridges and the main structure of the tower itself: Figure 71. Taiwan Tower: Close-up of the parametric 3D model for the general form, structural ribbons and walkways 68   
  69. 69. Figure 72. Taiwan Tower: Site plan with the scheme’s concentric guide arc Figure 73. Taiwan Tower: Elevation the parametric 3D model for the general form, structural ribbons and walkways 69   
  70. 70. 5.6.2. Swarms and SOM Pattern Recognition Various examples of swarms in nature demonstrate how certain perceptive capabilities can emerge and evolve from the interaction of many simple local rules. These can be studied and adapted to become the algorithm’s pattern recognition system/s. 5.6.3. Discovering the Potential of Clusters The Neural Maps' clusters and their properties can be explored further in order to optimise GA selection methods. For example a set of several neural maps can be created for each generation. Each of the maps can classify the neurons according to different external, explicit or implicit criteria that not even necessarily were programmed into the fitness function. Thus the designer has better understanding of the search space that is structured according to different parameters. The proposed algorithm can also be used in a slightly different context, where clustering of the search space can be used more efficiently. The large pool of individuals is generated. The ones are chosen for neural training that possess a high value of only one part of the fitness criteria or extreme end of one of its parameters. For example, if the fitness criteria consists of four components or all individuals have four parameters, than four individuals with sharply distinguished single characteristics are chosen as inputs for the self-organising map. After the map is trained it presents clusters of neurons categorised by the presence of a single welldefined parameter or fitness component. The search space is better structured this way and the process of selection of the parents becomes more systemised and visualised. The data-mining process can be used that recognises different clusters the SOM and figures out the suitable candidate to become a parent. This way the SOM-expanded search space of the GA can be explored, managed and used in evolutionary algorithm even better. Another principle can be applied to the Optimised Random option. From the remaining individuals within each cluster choose the neuron that is closest to the winner (or within certain radius from it) in order to maximise diversity of the parents and consequently the off-springs. The closer the individuals are to the border between two clusters the more similar phenotype they have. Another clustering method application was explored by Aedas R&D as part of Masdar MIST 340. They developed a sketching tool to test variations for one of the concepts for Aedas Dubai’s proposal. Each apartment type in the area schedule is loaded onto the site and clustered around a number of cores. The apartments without direct access to a core are raised onto the next floor. The clustering process is repeated until all the apartments have access (Aedas Computational Design and Research group 2013). 70   
  71. 71. Figure 74. Sketch of an apartment within in cluster Figure 75. Perspective aerial view of the clusters 71   
  72. 72. Figure 76. Model photograph 5.6.4. Co-Evolution Instead of Fitness Criteria Benefit of using co-evolution instead of the fixed fitness criteria is that it prevents large portions of the population become stuck in local optima. The first people to work with co-evolution were Daniel Hills and Karl SIms. Daniel Hillis co-evolved sorting networks (Hillis 1991). Also he developed on the algorithm that co-evolves the artificial parasites. His code works with the two independent gene pools whose evolution rates are naturally comparable, one representing "prey" and other "parasites". Each of the populations evolve according to GA's selection /mutation/ recombination sequence. Both gene pools evolve on the same grid and their interaction is through their fitness functions. The prey is scored according the failure of parasites at the same grid location. The parasites are scored based on how well they find flaws in prey's fitness. The fitness functions of the prey and the parasites are complementary in the sense that a success of one represents a failure of another and vice versa. As another example, Karl Sims co-evolved virtual creatures (Sims 1994). Figure 77.Creatures evolved for walking.
  73. 73. Amiina Bakunowicz 2013 | 27 Figure 78.Creatures evolved for jumping. Sims presents a system for evolving virtual creatures and each creature is tested for their ability to perform a given task, such the ability to swim in a simulated water environment. Those that are most successful survive, and their virtual genes containing coded instructions for their growth, are copied, combined, and mutated to make offspring for a new population. The new creatures are again tested, and some may be improvements on their parents. As this cycle of variation and selection continues, creatures with more and more successful behavio urs can emerge. 5.6.5. Exploring other ways in which CA can generate Body-Plans One of the many possible methods to test is when CA can be used each time when creating the next generation. So the genes would simply define the position of the CA seed. 5.6.6. Other visualisation techniques of the search space The following visual references can be created in order to aid the analysis of the performance of the algorithm: - Fitness landscape of both generations and their corresponding neural maps - Graphs that show the evolution of the fitness and models’ parameters over the generations - Graphs showing the areas of the search space that is explored by the algorithm - etc. 6.6.7. Adapting Genetic Operators to Evolve the Evolvability - Elimination criteria can be used instead of or together with the defined fitness criteria. It can represent the ratio of similarity of FC's components (same as one of the examples of implicit FC). EC gets stricter with each generation thus still encouraging evolution however at the same time avoiding the problem of local optima; - Fitness constituents can be programmed to have their own weightings within the total fitness value, thus mathematically assigning their importance in the overall fitness assessment; - An option for user to choose which individuals to carry on to the next generation and which to mate; - Survival ratio determines the percentage of the population that will survive each generation. If the initially generated population has fewer individuals with positive fitness than the number that should survive, another round of seed genotypes is generated to replace those with zero fitness (Sims 1999);  73
  74. 74. - Modifier genes can be added, whose allelic values control the genetic operators (e.g. loci controlling recombination or mutation rates and distributions) (Back, Hoffmeister and Schwefel 1991; Bergman and Feldman 1992; Shaffer and Morishima 1987); - Meta-level GA can be running on parameters of the operators, in which each run of the primary GA produces a performance measure used as the fitness of the operator parameter (Grefenstette 1986); - “Messy GAs”, a form of representation which allows more complex transformations from parent to offspring (Goldberg, Deb, and Korb 1990); - Focusing the probabilities of operator events to those that have had a history of generating fitter individuals (Davis 1989); - Mutation distribution adjustment to maintain certain properties of the fitness distribution, e.g. the “one-fifth” rule of Evolution Strategies (Back, Hoffmeister and Schwefel 1991); - Dynamic parameter encoding (O’Neil and Shaefer 1989; Pitney, Smith, and Greenwood 1990; Schraudolph and Belew 1992; Shaefer 1987; Szarkowicz 1991).  74

×