EvoArch: An evolutionary algorithm for architectural layout design

Samuel S.Y. Wong, Chun Chung Chan

Research output: Journal article publicationJournal articleAcademic researchpeer-review

36 Citations (Scopus)


The architectural layout design problem, which is concerned with the finding of the best adjacencies between functional spaces among many possible ones under given constraints, can be formulated as a combinatorial optimization problem and can be solved with an Evolutionary Algorithm (EA). We present functional spaces and their adjacencies in form of graphs and propose an EA called EvoArch that works with a graph-encoding scheme. EvoArch encodes topological configuration in the adjacency matrices of the graphs that they represent and its reproduction operators operate on these adjacency matrices. In order to explore the large search space of graph topologies, these reproduction operators are designed to be unbiased so that all nodes in a graph have equal chances of being selected to be swapped or mutated. To evaluate the fitness of a graph, EvoArch makes use of a fitness function that takes into consideration preferences for adjacencies between different functional spaces, budget and other design constraints. By means of different experiments, we show that EvoArch can be a very useful tool for architectural layout design tasks.
Original languageEnglish
Pages (from-to)649-667
Number of pages19
JournalCAD Computer Aided Design
Issue number9
Publication statusPublished - 1 Sept 2009


  • Architectural space topology
  • Crossover
  • Evolutionary algorithm
  • Genetic algorithm
  • Graph algorithm
  • Mutation

ASJC Scopus subject areas

  • Computer Science Applications
  • Computer Graphics and Computer-Aided Design
  • Industrial and Manufacturing Engineering


Dive into the research topics of 'EvoArch: An evolutionary algorithm for architectural layout design'. Together they form a unique fingerprint.

Cite this