Co-generative 3D Form: The Framework of Co-generative Design System
Graduate Institute of Architecture, National Chiao Tung University, Hsinchu, Taiwan.
Generative design system develops the purpose that is can generate a large number of design plans. Generative design system can let designer unceasingly explore the new design plans. At present generative design system, they all only have one kind of generative mechanism. Therefore, one can’t provide enough feasibility for designer to explore new plans. So, in this paper, we propose a framework of Co-Generative Form System (COgenForm). COgenForm is a 3D form exploration system that invokes two set of generative mechanisms. This system used co-evolutional characteristics to build the steps and framework of co-generative design process. This system includes two groups of generative mechanisms and these will evolve and interact with each other. Using this system, the form exploration and generation process can be more dynamic and more alternatives.
Generative design system offers an important mechanism for combining both design generation and computation mechanism. But, most of generative design systems developed require either well-defined design problems or the design knowledge embedded should be logical sound.
This limitation with its computational strength allows generative mechanism to be explored with logical expression and operation such as SEED project [1, 2]. In addition, generative design system can also take advantage of current artificial intelligence trend such as genetic algorithms and then generate form and shape anonymously, such as GENR8  and Agency-GP  with evolutionary agent-based mechanism
One thing for sure is the generative mechanism will be the keys for generating design as well the representation (or exploration metaphor and design rules) for the generated design. Different generative mechanism and representation will generate different design alternatives. Among those, two main generative mechanisms often mentioned are evolutionary-based mechanisms and symbol-based mechanisms.
Most of the current research trend regarding of generative design system is focusing only one generative mechanism. This makes the development simplified and computable. On the other hand, the trade-off is to sacrifice the feasibility and inter-relation between different generative mechanisms. If there is a mechanism that can incorporate more than one generative mechanism, the system generated or the design generated by the system might be closer to design process.
Therefore, in this paper, we proposed a framework of co-generative design process that can incorporate two different generative mechanisms and a generative system for form-exploration is proposed and implemented.
For generative design process model, one mechanism called co-evolution is adapted for its integration between two diverse evolutionary steps. While proposed by , Maher described the co-evolution as a cyclic process that sketches the influence between two species in the natural world. In recent years, the concept of co-evolution has been applied in different domains, such as co-evolutionary learning  and game developing work. The model of co-evolution design is comprised of three characteristics:
(1) Two design problems extend in parallel way.
(2) Design problems can affect each other via in intercourse way.
(3) One design problem will keep changing while changing another one’s answers.
General speaking, generative design systems are comprised of four elements: (1) the design representation (2) a generation engine (3) an expression engine (4) evaluation and selection mechanism. The generation engine is the main part of the mechanism of evolving, and new design instance will be generated within the evolving steps. In this research, we combine these two mechanisms (generative design system and co-evolution model) into the generative engine and make them affect each other through the features of co-evolution process. The process that combines these two mechanisms is called co-generation.
The strategies applied for combining generative design system and co-evolution model are:
(1) Only have two groups of generative mechanisms in the co-generative process;
(2) The representation of two mechanisms should be the same or interchangeable;
(3) Under the same representation, the factors or rules must be different;
(4) One of generative factors or rules to change that because has another one;
(5) Using evolutionary concepts to combine two groups of generative mechanisms, and the generative factors and rules-like genes. There will Influence each other like crossover and mutation. We show the co-generative process in (Figure 1). In this framework we presented main part was co-evolve mechanism.
Figure 1. The framework of co-generative process
For testing the computability of our framework of co-generative process, we implement a design system for the purpose of 3D form exploration. The implementation steps of a design system using co-generative design process are described as following.
3.1 The framework of co-generative design system
In this section, we presented framework of co-generative design system, in figure 2. In this system include four parts, representation、generator engine、expression and evaluation and selection. The main part is generator engine that compiled two mechanisms and co-evolved each other.
Figure 2. The framework of co-generative design system.
3.2 The steps
Three steps are applied for our preliminary implementation are selecting two three-dimensional form generative mechanisms, developing the inter-relationship between these two mechanisms, and the selection operators based on the mechanisms and representation chosen. The details of each step are described below.
First, two groups of generative mechanisms will be chosen according to the principles that their representation must be the same or interchangeable. In addition, each other can generate form by oneself or the other. In this research, two groups of generative mechanisms set up are L-System mechanism and Rotate.
Secondly, co-generative design process must be able to let two groups of generative mechanisms interact with each other in co-generative process. We used the evolutionary concepts to combine these mechanisms. Generative rules or factors such as gene are defined and they will interactive with each other through mutation in the example shown in the example.
Finally, user-controlling strategies the generative process is divided into two parts: 1) controlling the timeline, and 2) adjusting the rules and parameters of design. User can also decide when to process the mutation among generative processes, in figure 3. Both two generative mechanisms will keep generating alternatives according to the set rules until the user stops the timeline. Once stopped, user can import other generative mechanism to change the rules or the generative form. Thereafter, the natural selection will be decided according to the user satisfaction of the results.
Figure 3. User controlling strategies in co-generative design system.
A co-generative 3D form system called COgenForm is implemented according to the analysis above. COgenForm is comprised of four elements: (1) Two groups of generative mechanisms (L-System mechanism and Rotation mechanism); (2) Co-generative interaction; (3) Selection operator unit; (4) User interface. This version of COgenForm is implemented using MEL/Maya. MEL (Maya Embedded Language) was the main programming language of COgenForm.
4. An example
A housing design is used as the application of COgenForm. The requirements of this housing design are (1) a 3-bedroom apartment which it located at Taichung central park; (2) participants need to discover diverse form strategy for fulfill the function and site requirements. We provide the system COgenForm lets a designer with architecture design background to test this project. The purpose of this housing design is to explore more alternatives and more possibilities with two parallel logic form generative mechanisms. The results are shown in Figure 4. It shows two generative processes A and B. Process A uses L-system and Process B uses rotation features as the mechanism to generate free form of housing design. The top left window shows the generation 22 of a sequence of alternatives using L-systems, and the right is the generation 55. The timeline and parameters of generation process are shown at the left side of the windows.
Figure 4. Two generative process that are used L-system and rotate
In Figure 5, we show how combine the two generative processes with mutation and user controlling. This situation occurs once designer decide to mutate the design mechanisms. The Generation 82 of process A is then generated by mutating both mechanism a and mechanism b based on its parent node.
Figure 5. The co-generative process with mutation operations
In this paper we present a “co-generative form” framework and generative system called COgenForm. Via the feature of co-evolving, the generative engine of COgenForm includes two groups of generative mechanisms and through the influences and stimulation between each other. COgenForm enriches the varieties and possibilities of the children generation and its processes as shown in example above. Therefore, the inspiring results that inherit both mechanisms are shown in the display.
By directly manipulating these mechanisms, designers can discover more alternatives or detours from the original fixed generation patterns. The computability of applying co-evolution metaphor onto design generation is clear and useful. As well, as its constraints by the representation and the mechanisms of it are also unleashed in the paper.
In the future, more generative mechanisms that fulfil the four requirements of co-generative process can be implemented in COgenForm. And the interfaces of COgenForm for the users can be evaluated and argued through the refinement of the system. Hopefully, it can make the form generated by COgenForm be more inspirable and interesting.
 Chang, T-W and Woodbury, RF: 2004, Highly Structured Design Spaces with Geometry, in H Orbak (ed.), The eCAADe 2004 22nd conference, Copenhagen, Denmark, pp: 248-254.
 Flemming, U. and Woodbury, RF.: 1995, Software environment to support early phases in building design (SEED): overview, Journal of Architecture Engineering, 1(4), 147-152.
 Hembreg, M., O’Reilly, U. M. and Nordin, P.: 2001, A Design Tool for Surface Generation, Submitted as a late-breaking paper, Genetic and Evolutionary Computation Conference, GECCO 2001.
 O’Reilly, U. M., Testa, P., Greenword, S. and Hembreg, M.: 2001, Agency GP: Agent-Based Genetic Programming for Surface Design, Submitted as a late-breaking paper, Genetic and Evolutionary Computation Conference, GECCO 2001.
 Maher, M. L. and Poon, J.: 1997, Co-evolution and Emergence in Design, Artificial Intelligence in Engineering, 11(3), 319-327.
 Sklar, E., Blair, A. D. and Pollack, J. B.: 1998, in G. Ayala (ed), Workshop on Current Trends and Applications of Artificial Intelligence in Education: Fourth World Congress on Expert Systems, pp. 98-105.