Evolutionary design is an approach that evolves populations of design variants through the iterative application of a set of computational procedures. Since most designers have limited programming skills, we need to be able to define the key computational procedures without having to write computer code.