The elective course on Advanced Computational Design makes a step back, zooms out and draws a broad picture on generative design. We look back at the history of the field, early examples like Lindenmayer systems, cellular automata, shape grammars, mesh subdivision schemes, simple evolutionary strategies like simulated annealing and more advanced concepts like genetic algorithms. We bring this history all the way to present-day generative design methods based on statistical methods and machine learning, like for example generative adversarial networks (GAN) or variational autoencoders (VAE). This wide spanning overview allows for many cross references and an abstract view on the notion of the model in architecture. Model not as in cardboard miniature representations, but as an encoding to master the curse of dimensionality and efficiently and creatively navigate the solution space.
The format of the course consists of lecture and tutorial sessions alternating with hands-on exercise sessions. The lectures introduce the students to precedents, both in theory and in built examples to anchor and cross-reference hard to grasp concepts in the history of the field. The tutorials and exercises are prepared as notebooks, containing explanatory text, embedded images, further links mixed with all the necessary executable code. This allows students to modify and play with snippets of code individually, without having to re-run the whole code. All these benefits make the notebooks an excellent teaching instrument, fostering the exploration of alternative paths.
Team DBT: Benjamin Dillenburger, Demetris Shammas, Mathias Bernhard
Official course page on vvz.ethz.ch