On-line implementation of generative design methods to create custom furniture.

Aquesta comunicació va ser presentada a la 2nd International conference of biodigital architecture and genetics a Barcelona el 2014.

This paper was presented to the 2nd International conference of biodigital architecture and genetics in Barcelona 2014.

Abstract. This paper introduces a particular use of generative design in a web platform in order to create custom made furniture. Customization is present in on-line furniture but only through standard design processes. Generative design is an opportunity since it can produce novelty and complexity through simple user interaction. In the example taken, the generative design process used is a simplified genetic algorithm where the designer is responsible for coding (genotype) and interface design. The web user will insert the external values (context), and then choose a final design amongst the infinite possible ‘solutions’. Mutation is set through the use of random computer generated numbers. The example used serves to address the subjects of outcome control, interaction, usability, software and manufacturing.


Generative design has been mainly associated to investigation and formation, since putting it in practice for commercial purposes is still at a very early stage. Generative design remains as a procedural design process in the hands of artists, architects and designers in general, not conceived usually as an interactive method with other non-designer users.

But, as a matter of fact, generative design is an extremely interesting way to get the public to interact in the creation of their unique design solution. Generative design can take customization in design a step further, by adding value to products and simplifying user interaction. The existing software and the available technologies, in their never-ending evolution, have created the necessary tools to permit a fulfilling generative design experience available to everyone.

Even though user interaction in generative design still remains experimental, some very interesting examples can be found applied to necklaces, earrings, rings, tables or decorative elements[1][2]. These examples of generative design rely on web-integrated software to interact with users and the use of CAM (computer assisted manufacturing) techniques to produce their products.


This paper introduces the implementation of a generative design process in the web platform ‘imotiu’, an internet page developed by the author where users can interact to create unique generative bookcases. The implementation of generative design in a web platform constitutes both an exploration and a response to the technological advance, even more so, if generative design has the purpose of making commercially viable projects.

The aim of the Imotiu platform is to design and sell custom generative furniture. It will be discussed in this paper what implies translating generative design to a non-designer user interface, and what potential has generative design from a commercial point of view.


It has to be pointed out that not all products have the potential to be customized and have customer demand (Zipkin 2001). Furniture falls into the category of customizable goods, since it has traditionally been customized to fit in different physical dimensions but also to cater for different storage needs. In this sense the Imotiu project fulfills those customization needs.

Customization is present in the furniture industry, but it is basically limited to the parametric variation of geometry, the choice of different materials or finishes or the creation of custom configurations through the use of modular components. The digital leap has represented a great advance for the industry since parametric configuration and visualization of customized goods in real time can be easily achieved in web pages.

There are a series of downloadable programs to customize kitchen furniture, or web applets to visualize different spatial configurations of modular furniture components [3]. Shelving systems that can parametrically be modeled to custom dimension are also available in the web [4]. The first example is made out of mass produced modular components. Only in the second case, the manufactured product is each time different, since it is manufactured precisely to the exact measures desired. Nonetheless it can’t be said that the outcomes are unique since they can be reproduced exactly by simply introducing the same inputs in the software. Neither can it be said that the modeled designs are ’emergent’ since all outcomes are totally predictable. Therefore, these design processes cannot be said to be generative.

Generative design

Generative design constitutes a viable option for customized products; some authors even consider it the future of mass customization [5], but what is generative design? Many authors have been describing what generative design is, the concept has been running for over 25 years, and due to tool usage it is related to digital design. (McCormack, Dorin, and Innocent. 2004)

Soddu (1992) defines it as: “a morphogenetic process using algorithms structured as not-linear systems for endless unique and unrepeatable results performed by an idea-code, as in Nature”. As it has been explained earlier, the unrepeatability of the result excludes simple parametric design out of the definition, even though the generative design process is a parametric process.

Some authors include a number of different categories under the definition of generative design systems, but the boundaries of this categories are often blurred (van der Zee and de Vries 2008). So it can be deduced that generative design systems are not formerly set: systems can be modeled and tailored by designers.

The generative design system applied in Imotiu can be understood as a simplified genetic algorithm, belonging to the area of evolutionary design (Bentley 1998), defined by the following steps: choice of a type (genotype), input of external information (context), introduction of variation (mutation), generation of candidate solutions (phenotypes) and final selection.


The introduction of mutation is a key issue in generative design. As opposed to parametric modeling, it confers design with the concept of ’emergence’, in this case adding unpredictability to the process’ outcome. Emergence is explained by Gero (1996) as “A property that is only implicit, i.e. not represented explicitly, is said to be an emergent property if it can be made explicit”. The emergent properties of the generative designs add complexity to the models. It can be argued that users that interact in the design process experience novelty as defined by Saunders and Gero (2000) thanks to the emergent properties of generative design. Complexity and novelty are both desired properties in the design process’ outcome, since they are value adding factors.

A generative design process

In practice, the imotiu design process is a multi-actor process where the designer becomes a designer-programmer, creating the genotypes and setting the limits of mutation to assure that all candidate solutions are constructable. The user of the web platform will insert the external values (context), and then choose a final design amongst the infinite possible ‘solutions’.  The process is show in the diagram in Fig.1.

Microsoft Word - Document1Figure 1.

Generative desing process diagram.

Creating genotypes

A generative designer needs to learn how to code, or at least have the sufficient notions on coding to be able to translate ideas to a computer programmer. Genotypes -the furniture coded DNA- are in this case an evolution of an earlier bookcase project. This first project was first coded using Grasshopper, a graphical algorithm editor integrated in the Rhinoceros 3-D modeling software. Web integration demanded use of other programming platforms, and hence Processing, an open source programming language with an integrated development environment (IDE), was chosen to code genotypes.

There are, at the moment, 4 different types of genotypes in the Imotiu library that can be applied to generate bookcase models (phenotypes). The dimensional variation of the models result in a range of furniture types, from bed side tables, to TV cabinets or bookcases.

The Imotiu bookcases can be assimilated to extruded grids, and each kind of genotype includes differential morphological variations of the edges geometries; a differential shape grammar.

The models’ configuration is determined by user inputs and randomly generated numbers. The user’s inputs determine global morphological values such as width, height, number of shelves and maximum depth, all of these affecting the model parametrically. On the other hand, the randomly generated numbers modify edge geometry defined by the genotypes’ shape grammars, and confer generative properties to the models, giving as a result an ’emergent’ behavior.

The different shape grammars for the shelves are described in Fig. 2 where md is the maximum depth set by user and A1,A2,A3… Ai are random computer generated numbers.

fig 2

Figure 2.
Shape grammars for the different genotypes.

The 3d outcome is the addition of vertical shelves and horizontal shelves, that share dimensions in their intersections as shown in Fig. 3.

fig 3

Figure 3.
Examples of outcomes from each one of the 4 genotypes.

As it has been pointed out by other researchers, the utilization of generative techniques does not preclude the option of creating a distinctive style (McCormack, Dorin, Innocent, 2004). Indeed, generative design and programming leave room for designer expression, even thought the final object produced is not fully controlled.

In the case of Imotiu, the geometrical grammar applied to the bookcases differentiates the types of bookcase, leaving a distinctive mark on the finished product. Input data retrieved from the user, such as color, dimensions, or number of shelves do not confer a recognizable trace of the designer’s mark. The differentiating element –the designer’s mark- is the geometrical response to the random input generated by the computer.

Controlling outcomes

It is vital to perform constraint handling with care, for if evolutionary search is restricted inappropriately, the evolution of good solutions may be prevented.(Bentley 1999)

In the case of generative design systems open to user interaction, the issue of control is crucial, since non-fit outcomes have to be out-ruled.

It can be extremely disappointing for a user to generate and visualize non-realizable design, therefore the designer-programmer has to control generated outcomes so that all have the potential to be produced. Hence, generated solutions have to take in account the manufacturing constraints derived from available material sizes and manufacturing techniques. Other constraints derive from product assembly, physical stability, material resistance and also from aesthetics.

In the case of Imotiu generative bookshelves the following factors set constraints to the generated outcome.

  • Material availability determines the maximum width and height of bookcase.
  • In order to facilitate bookcase assembly a minimum distance between shelves is set.
  • Height is limited in relation to bookcase depth to prevent it from falling over.
  • Maximum distance between vertical and horizontal shelves is set according to the material’s physical properties and storage use requirements.
  • According to material resistance and storage use requirements a minimum depth of shelves is set.
  • Maximum depth of shelves is set in response to packaging and transportation requirements.

There are other limitations so that the outcomes have a particular aesthetic appearance. It is the case of the randomly generated dimensions that are limited in a numerical range set by the designer and related to the maximum depth of the bookcase.

Material, production and assembly

Computer assisted manufacturing is mandatory due to piece complexity; other methods of production would not be cost effective. Imotiu bookcases are conceived and fabricated as 2d pieces to be assembled after production. Working on 2d products facilitates production, since 3d CAM production is not commonly available in the standard industry, and moreover planar separate pieces facilitate product manipulation and bring down packaging and transportation costs. Fig 4. shows an example of the vectorial shapes used for fabrication.

fig 4

Figure 4.
Example of vectorial shapes used for fabrication.

The bookcases are made out of MDF or plywood boards, normally in thicknesses varying between 15mm and 19mm.

To diminish the number of pieces and ease the assembly process, the vertical and horizontal shelves are continuous and join together using halved joints. Observing tolerances in the dimensions of the joints is crucial, since the lacquered coating of the woods can vary significantly and if the joins are too narrow this can difficult assembly, and on the other hand if the joins are too wide, they can affect negatively the aesthetics of the furniture and the desired rigidity could be compromised.

Joinery is made with metallic fittings, a glue-less solution commonly used in the furniture industry, thought so that bookcases can easily be assembled and disassembled.

Numbering the pieces is of especial importance since they are all different and their similar dimensional range can lead to confusion when assembling. Users have to be provided with detailed instructions as shown in Fig. 5.

fig 5

Figure 5.
Example of assembly of an Imotiu bookcase.

Usability and generative design

As defined by Shugan (1980): “The mechanism for interacting with the customer and obtaining specific information is called elicitation. Customers can be easily overwhelmed by too many selections on a Web page. An elicitation process is the correct way to lead customers through the process of identifying exactly what they want.”

It would be possible to get users to completely control the form of the bookcase, but it would certainly create an excessive number of choices that would tire the non-designer or it would produce undesired low complexity results. The generative approach simplifies the introduction of furniture variables relying in part on the software self-generation of random variables.

The increase of auto-generated values diminishes the predictability of the outcome – the user’s control is decreased-, but eases the usability of the generating program. On the other hand, using a generative approach the outcomes gain in complexity and thus increase their ‘uniqueness’ value. Generative design allows for multiple unique solutions whilst simple-parametric design needs of different inputs to generate new solutions.

Setting simple-parametric properties and generative properties of models

The equilibrium between simple-parametric properties and generative properties, is an important factor to assure a correct elicitation process. Deciding what values are to be generated automatically and what values are to be introduced by users has to be understood as part of the designer’s job: the designer determines what properties are simple-parametric and what properties are generative.

In our case, values entered by user, define functional settings of the solutions such as height, width and shelf placement. The random seed introduce morphological variations that can be considered as ornamental, not affecting functionality in practice, since these shape variations are always limited within a set dimensional range to maintain functional characteristics.

Users can regenerate random numbers infinitely, affecting ornamental configuration of the models; hence, when they select one of the models, they are choosing a model from an aesthetic point of view, not making a decision on functional values. In this way, all models produced are constructable and functional, there are no unfit solutions.

User interaction in the design process

The Imotiu web platform takes a step by step approach to facilitate user interaction. Users enter the web platform and once they’ve decided to generate a piece of furniture, they choose the type of furniture (genotype).

Once the users have chosen a type, they enter the furniture configurator, consisting of five steps. In the first step, the users choose whether they want a wall bookshelf or a free-standing bookshelf and the maximum depth of the bookcase. In the second step, users can set with and height of the bookcase. In the third step, users can set the number of vertical and horizontal shelves, and set their position. In the fourth step, users choose colour of the bookcase. In the fifth step, a 3D view of the bookcase is shown with the randomly generated geometry. At this point, users can produce infinite randomly generated bookcases from their initial inputs by just clicking a button, and the outcomes can be saved to be retrieved later on. With any of the outcomes users can make an order to the company and the bookcase will be produced.

The design process, as seen by the web-platform user, follows the schema in Fig. 6.

(Microsoft Word - diagrama informaci363 'inputs' 2.doc)

Figure 6.
Schema of the design process from the user’s side.


The Imotiu design process is fully integrated in a web platform. As it has been said before, standard web programming languages are sufficient to create full-experience design interfaces. Imotiu serves as example to illustrate this: the interface is designed using HTML, CSS and JavaScript, all of them basic web programming languages.  Input introduction is done using sliders, buttons and draggable objects. Genotypes are coded in Processing, and the 3D rendered models are embeded as Java applets in the web platform. Visualization is still not optimal, but 3D viewing in internet is quickly evolving and, certainly, with the optimization of rendering software in browsers, 3d object viewing will become usual in on-line product libraries. New web standards adopted by browsers are pointing to the the webgl javascript API as the way to embed on-line interactive 3D graphics.

From creation to fabrication

Conception and production in mass customization ultimately conform a global process that can be explained by the concept of ‘associativiness’ in architecture as explained by Beaucé and Cache (2003): “it is the software method of constituting the architectural project in a long sequence of relationships from the first conceptual hypotheses to the driving of the machines that prefabricate the components that will be assembled on site”.

This principle of associativiness is not far from being accomplished in the Imotiu case but it has to be pointed out that document and digital file production is not fully automatized and the industrial process of production still needs of human intervention.

Going back to the Imotiu example, the design process finishes once the users have made the command and, at this point, the web platform sends the resulting code to the designers. The code is introduced in the processing API to generate a dxf file containing the shape paths that will be milled in the cnc machine. This dxf file is used as well to produce technical documentation containing all relevant measures and descriptions to be sent and validated by the user. Once validated, the bookcase’s pieces are milled using a cnc machine, and afterward they follow a semi-industrial process of lacquering and packaging. The packaged pieces are sent to the client who will in turn assemble the bookcase (fig. 7).

fig 7

Figure 7.
Assembled Imotiu bookcase.


Generative design can be seen as a value adding procedure in consumer oriented products. In the first place it enhaces user interaction and allows non-designers to ‘design’ high complexity results. Secondly, generative design can produce unique custom products that retain designer’s mark.

Nonetheless, generative design implementation in an open on-line platform has to be carefully conceived to assure a correct elicitation process. In the example seen, generative properties are placed on ornamental geometry, not participating in functional features of the models. A future challenge will be to develop new generative design systems and new furniture genotypes whose generative qualities will overcome decorative responses within a consumer minded framework. Technology has advanced sufficiently; interactive design systems have still room for evolution.


Beaucé, Patrick, and Cache, Bernard, ‘Towards a non-standard mode of production’ in Leupen, Bernard, Heijne, René and van Zwol, Jasper (eds), Time based architecture, 010 Publishers, Rotterdam.

Bentley, Peter, ed. Evolutionary design by computers, Morgan Kaufmann, San Francisco.

Gero, John S. ‘Creativity, emergence and evolution in design’, Preprints Computational Models of Creative Design, University of Sydney, Sydney.

McCormack, J., Dorin, A. and Innocent, T. ‘Generative Design: a paradigm for design research’ in Redmond, J. et. al. (eds) Proceedings of Futureground, Design Research Society, Melbourne.

Saunders, Rob, and Gero, John S., ‘The importance of being emergent’, Proceedings of Artificial Intelligence in Design 2000.

Soddu, C, ‘New Naturality: a Generative approach to Art and Design’, Leonardo, Magazine 35, MIT press, July 2002.

Shugan, Steven M., ‘The Cost of Thinking’, Journal of Consumer Research,
vol. 7, no. 2, pp. 99-111.

Zee, Aant van der, and de Vries, Bauke, ‘Design by Computation’ ,11th Generative Art Conference 2008.

Zipkin, Paul, ‘The Limits of Mass Customization’, MIT Sloan Management Review, Spring 2001,42, 3, ABI/INFORM Global pp. 81.






One thought on “On-line implementation of generative design methods to create custom furniture.

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out /  Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out /  Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out /  Canvia )

S'està connectant a %s

A %d bloguers els agrada això: