Generative design is often mistakenly used to describe design processes involving any kind of computer programming or scripting. It almost seems that calling design generative is intended to obscure the used methods and make the outcome look and sound esoteric. In my opinion, this is exactly the opposite of what generative design should be about – being explicit. While all design exercises are typically generative, they are not necessarily computational. In this article, I am using the term generative design only in the computational context.
Perhaps it is good to first explain what generative design is not, before trying to nail what it exactly is.
I believe that the most important and distinguishing part that makes a computational model generative is the feedback loop. The feedback ranges from simple mechanisms, where the model takes its own output for input, to relatively complex ones incorporating design evaluation routines. Generative methods have their roots deep in the systems dynamics modelling and are by nature repetitive processes where the solution is developed during several iterations of design operations. In the generative design process the production of complexity usually happens through aggregation.
Two types of models
There are two essentially different patterns that generative models follow. Let’s call these tentatively the evolutionary pattern and the self-organisational pattern. In models following the evolutionary pattern the full design sequence typically involves modelling, analysis and interpretation. When this sequence is closed and the information from design analysis is fed back into the modelling procedure, the feedback loop is formed and the model becomes generative.
The self-organisational models feature feedback loops that takes place between design agents and the modelled environment. The whole concept is built around the sematectonic or stigmergic communication. During the design process, the agent evaluates its environment and makes some changes to it. The changes in the environment constantly trigger new actions which, in turn, cause further changes. This type of feedback loop can be used for creating highly dynamical systems of design.
The following presentation helps to explain the two patterns
In the future articles, I will talk about some generative models of both types.