The presented study is made for Cape Town city in South Africa, in which approximately 7.5 million people living in informal settlements and about 2.5 million housing units are needed. This motivates us to develop upgrading strategies for informal settlements. For this purpose, we developed an adaptive and interactive tool for rapid computational urban design prototyping. The tool can be used to generate urban layouts including street networks, blocks, parcels and buildings based on requirements specified by an urban designer. For implementing  the layout generation process, we developed an underlying tree data structure to represent street networks and parcellings. Moreover, network analysis methods were applied for controlling the distribution of buildings in the communities so that preferred neighborhood relationships are considered. Finally we demonstrated how to compare designs based on spatial analysis.

Research Team: Reinhard Koenig (contact author), Peter Bus, Yufan Miao, Chang-Mei Chih, Artem Chirkin.
The presented research evolves within the context of a collaboration with Scott Lloyd from the Urban Think Tank (U-TT) at ETH Zurich.


This page contains accompanying material for the paper Computational Urban Design Prototyping: Interactive Planning Synthesis Methods Demonstrated by a Case Study in Cape Town, published in the International Journal of Architectural Computing (IJAC), [it’s currently under review].

The Computational Urban Design Process

We implemented a new data structure for a slicing tree. The slicing (A) starts from one edge (1). After that, it slices the edge (2) on the left side of the slicing line (B) and next the one on the right (C, 4). A slicing line is stored in the slicing tree by assigning it to the edge it crosses. At the same time, the slicing lines are ranked based on their levels in the tree structure.

The case study area is Enkanini in Cape Town City, South Africa, for which we generate urban planning variants in a fast and interactive way.

Example of two urban layouts for the sliced parcels, generated freely (left) and using initial street segments to guide street network generation (right).

To increase the precision for generating parcels with a defined width, we nested the block and parcel generation.

Using the Speckle plug-in for Grasshopper the generated urban layouts can be made accessible online to share and communicate the design as well as to allow stakeholders to explore design alternatives. In accordance with the initial specifications, the interface allows to change the dimensions of the parcels within a defined parameter range using sliders to adjust the parcels width and depth.

The generated urban layouts can be analysed with various methods. In this example we assessed pedestrian accessibility of the educational and commercial facilities by using a gravity-based method.

Video of the Computational Urban Design Process

Related Publications

Koenig, R., Miao, Y., Knecht, K., Buš, P., & Mei-chih, C. (2017). Interactive Urban Synthesis: Computational Methods for Fast Prototyping of Urban Design Proposals. In G. Çağdaş, M. Özkar, L. F. Gül, & E. Gürer (Eds.), Computer-Aided Architectural Design. Future Trajectories (CCIS 724, Vol. 724, pp. 23–41). Singapore: Springer.
Miao, Y., Koenig, R., Bus, P., Chang, M., Chirkin, A., & Treyer, L. (2017). Empowering urban design prototyping: a case study in Cape Town with interactive computational synthesis methods. In P. Janssen, P. Loh, A. Atomic, & M. A. Schnabel (Eds.), Protocols, Flows and Glitches, Proceedings of the 22nd International Conference of the Association for Computer-Aided Architectural Design Research in Asia (CAADRIA) (pp. 407–416). Suzhou, China. Retrieved from Download
Miao, Y., Koenig, R., & Knecht, K. (2017). City Afforestation : Abstracting the Urban Geometries into Tree Structures for Urban Fabric Optimization City Afforestation : Abstracting the Urban Geometries into Tree. In CUPUM: 15th International Conference on Computers in Urban Planning and Urban Management. Adelaide, Australia. Download
Koenig, R. (2015). Urban Design Synthesis for Building Layouts based on Evolutionary Many-Criteria Optimization. International Journal of Architectural Computing, 13(3+4), 257–270. Download

Download Grasshopper Definitions


The Grasshopper files are created for Grasshopper (build 0.9.0076) with Rhino3D v.5. To open and run the models you need to install the DeCodingSpaces-Toolbox (we used version 2018.01) – food4rhino is not always working.

Download Adaptive EmpowerShack Grasshopper Definition

Pin It on Pinterest