Evolutionary optimisation + generative AI · UCL Digital Ecologies · 2025
Performance-driven urban form for a hot, sprawling city — visualised by a model that knows what Hejazi architecture looks like.
01 · Genetic algorithm
A plot-threshold gene grows streets, parcels, land use and volumes. NSGA-II searches it.

Site

Parcels

Land use

Simulation 1 — Pareto-front phenotypes
Evolution across generations

Three selected individuals and their objective ranks
Layout → massing

Best solution — hierarchical streets, varied heights

Phenotype catalogue
02 · AI visualisation
A captioned dataset of coral-stone houses, Shibam towers and modern-traditional façades, fine-tuned into a LoRA. Segmentation and depth from the massing condition every image.

Dataset — classes × views

Palette extracted from references

Five checkpoints — 4 to 29 epochs

Conditioning — segmentation + depth from the massing

Without / with LoRA — same prompt, same seed
Denoising, frame by frame
Denoising — second seed






03 · Image to 3D
Hunyuan3D 2.0 lifts generated façades into textured meshes; octree resolution benchmarked against time.

Input

Normals

Textured mesh
Turntable — 01, single image
Turntable — 02
Turntable — 03
Turntable — multi-image cluster

Octree 32 → 640 — chunks and seconds

Multi-image workflow
04 · Ray-cast texture projection
A ray from each camera to each vertex; if nothing occludes it, the pixel colour is written to the vertex. Written in Python inside Grasshopper.

Five cameras, five images

Vertex ownership by camera

100 quads

500 quads

1,000 quads

Retextured — camera 1

Camera 2

Camera 3
05 · Film
Final film — from GA layout to textured 3D to AI walkthrough
Clip — image-to-video from a LoRA render
Clip — plaza at dusk