GEM-NI: A System For Creating and Managing Alternatives In Generative Design
Loutfouz Zaman1, Wolfgang Stuerzlinger2, Christian Neugebauer2, Robert Woodbury2, Maher Elkhaldi2, Naghmi Shireen2, Michael Terry3
1York University, Toronto, Canada, [email protected], 2Simon Fraser University, Vancouver, Canada, University of Applied Sciences Bonn Rhein-Sieg, Germany, 3University of Waterloo, Canada
Figure 1. GEM-NI enables users to work with alternative generative designs simultaneously. Specifically, GEM-NI provides tools to manage the set of alternatives affected by edit operations, post-hoc merging of (parts of) alternatives, and several ways to create new alternatives, such as resurrection of past states with full undo lineage duplication or selection from an enhanced design gallery implementation. The leftmost alternative is the original design and is active, the center one is passive, and the rightmost one is idle.
We present GEM-NI – a graph-based generative-design tool that supports parallel exploration of alternative designs. Producing alternatives is a key feature of creative work, yet it is not strongly supported in most extant tools.
GEM-NI enables various forms of exploration with alternatives such as parallel editing, recalling history, branching, merging, comparing, and Cartesian products of and for alternatives. Further, GEM-NI provides a modal graphical user interface and a design gallery, which both allow designers to control and manage their design exploration.
Figure 2. The alternative on the right is sandboxed. The first two alternatives are therefore idle.
Experts typically generate sets of alternative solutions when solving ill-defined problems. This has been shown to result in higher quality outcomes. For example, it is common practice for web designers, architects and software engineers to generate sketches of potential designs as they solve problems. These sketches help designers externalize knowledge, better understand the problem, and explore the space of potential solutions.
Due to the ease with which parameters can be varied, parametric modeling, where solutions are represented as models, is a particularly compelling technology to assist in exploring a design space. A parametric model represents the structure and hierarchy of a solution, the result of which is determined by relationships, constraints, and choices of parameter values at a given time. While building such models requires more effort, parametric modeling systems make variations easier and are now used in various domains.
A prominent example is architectural design, as in the construction of the International Terminal Waterloo in London, England. Parametric models are often presented as networks of operations in a dataflow programming environment. As a given parametric model can quickly generate multiple options, the design process is often referred to as a generative one.
Figure 3. Merging and parallel editing: (a) Initial state with highlighted nodes selected for merging. (b) Merging replicates new nodes and connections into all other alternatives and overwrites parameters of existing nodes. The user then globally changes NUMBER1 to 15.
Parametric and generative design qualitatively changes the design process. The inherent capabilities of such systems also create new opportunities for design support tools. With generative design, it is possible to easily create a very large set of viable design options that satisfy a given set of constraints, as defined in the model.
These alternatives represent points in a high-dimensional design space that must be explored, narrowed, and filtered. Current systems represent models as graphs, e.g., AutoCAD DesignScript Studio, Grasshopper 3D, GenerativeComponents, Houdini, NodeBox, and Max/MSP; or as trees, e.g., CATIA, Inventor, ProE, and SpaceClaim. Adoption is widespread in avantgarde practice and design schools and there are established textbooks and professional development courses.
Figure 4. Dialog for creating an alternative from history: the history list on the left and the state of the alternative at that time on the right. The current entry is highlighted. The state can be selected from the list directly or by dragging the slider.
The name GEM-NI, Generative Many-Nodes Interpreter, is inspired by the many-worlds interpretation in quantum physics. It implies that all possible alternative histories and futures are real, each representing an actual “world”. We focused on 2D graphics, a domain that offers sufficient complexity for common issues and patterns in generative modeling to emerge, yet still practical for user studies. Also, GEM-NI supports exploratory design tasks widely used in the design literature and in HCI in Green’s cognitive dimensions of notations.
In GEM-NI the creation of nodes, their positions, parameter values as well as selection state are synchronized by default across all editable alternatives. Thus, moving a node or changing a node parameter affects all of its instances in other editable alternatives. Such parallel editing can be enabled or disabled. We found that uniformity in network layout makes it easier for designers to identify common elements and to compare networks visually across alternatives.
Figure 5. Design Gallery. (a) Cartesian product menu; (b) parameter range exploration preview of the selected node.
Figure 1 was selected in the leftmost alternative and is now selected everywhere with the corresponding parameter views. For the same reasons, zooming and panning on the network and output view are also synchronized. Every operation is accessible through the menu bar. Important ones are also accessible through GUI buttons or keyboard shortcuts.
We presented GEM-NI—a new system for creating and managing alternatives in generative design. The system supports parallel editing via checkmarks and sandboxing, two new methods to control which alternatives are affected by a parallel edit. Also, we introduced a novel method for post-hoc merging of alternatives.
Moreover, GEM-NI provides several methods to create alternatives, including a new method for resurrecting alternatives from a graphical history with previews, with full lineage preservation. Another way to create alternatives is a new design gallery, which enables users to select which ranges of parameters and/or parts of the generative network model to use for exploration. Moreover, our design gallery supports a new method to explore products of generative networks.