Initiator

The Initiator module is the user interface (UI) that enables most of the mixed-initiative aspects of the system. To do that, the module needs to have access to the various geometrical components used for generating design outputs and to the content, and its properties, produced by the Encoder, Generator, Critic, and Aesop modules. The role of the initiator is crrucial as it is the way through which the computational design process is conveyed to the human designer. A poorly implemented UI can obfuscate even the most elaborate AI running in the background and confuse the designer in terms of what the system is doing behind the scenes. The Initiator must be able to perform mundane but time consuming tasks with ease, such as allowing users to import and load past work in different file formats as well as save their work for another design session with this tool or in the next tool in the architectural design pipeline. Similarly, the Initiator should allow the human designer to manually draw or define elements of the design language (chunks, tiles, shapes, components), allow for simple geometry manipulation (rotate, scale, translate), geometrical operations (intersect, difference, union) and editing (assigning colors, textures, materials). In practice, such a tool would need to include a predefined database of these elements with available shapes and components that can be used off the shelf.

There is a long history of applied research on the role of the interface in the communication of information during the design process. Some of the earliest works were by Christopher Alexander with HIDESC3 [Ale63] in the 1960s and Nicholas Negroponte and Yona Frieman with Urban5 [NG67] and YONA [WN76] in the 1970s. Negroponte’s “Architecture Machine” [Neg75b] explores the issue of computer aided-architectural design, with emphasis on man-machine interaction, a model where the machine and its user develop a collaborative relationship and establish a creative and educational dialogue. One interesting idea in this line of work was the goal of enabling the machine to be aware of the user’s preferences, creating the ground for what they called mutual and successful “interruptability”. Another important aspect of the role of interfaces is the vision by Yona Friedman [BLA76] of “democratizing” design, to free the user from the “patronage” of the architect, to enable “non experts” to make their own designs, as they are the ones who better know their needs and desires and, most importantly, bear the risk of failure. (ref: architecture by yourself paper). User participation becomes a major focus on research after that, including the idea of design amplifiers [Neg75a] that constitutes the interface between the infrastructure and the user’s ever changing needs and the ideas by Guy Weinzapfel and Negroponte in which explores an extreme case of an “architecture machine” that handles a unique, ever changing and completely personalized problem of design [WN76]. In all of this work, the machine is conceptualized as a compact entity, whose ways of operation remain obscure to the user. where a communication happens in a higher level language, through a well designed interface. They also point towards the implications of creating a user programmable architecture machine, for which the modular-hierarchical system described earlier is a good archetype.

Despite this work being done mostly between 1960 and 1980, it’s difficult to say that any substantial steps forward have been done in the last 30 years or so. Design interfaces in practice have seen little evolution and almost completely lack MID elements. Most interfaces are tied into a design software, used by practitioners, rather than influenced by new theories and ideas about generative design, human-computer interaction (HCI), and mixed-initiative design (MID). Instead we turn to the Gaming AI field where substantial research and innovative applications have been developed the last decade. Sentient Sketchbook [LYT13] is a game level authoring that allows the design of map sketches via an intuitive interface, allowing for real-time feedback of evaluated metrics for each map (playability, balance) and provides suggestions of alternative map designs to its users. The tool automatically evaluates for different metrics and constraints and provides live feedback to the designer through its visual interface. Finally, using a variant of Novelty Search [LS08] the tool provides unseen, alternative maps, that achieve the designer’s goals. The performance difference between the current and alternative designs is clearly displayed in the interface to reduce designer fatigue and allow for quick iteration. Tanagra [SWM10] is a mixed-initiative tool that allows designers to make and play platform levels that are playable, engaging and meet their expectations. The focus of the tool is on the fact that it is important for designers to be able to test their own designs. The design generation method is quite innovative, using a top-down approach that represents a level as a set of ‘beats’, smaller segments that subdivide the level by both space and time (required to traverse them). The tool also records designer preferences, based on the changes and inputs the designer did on the previously generated design, an important way of communicating information during the design process. Another interesting MID method is the occupancy-regulated extension algorithm [MawhorterMateas10], a general method that supports authoring from the designer without requiring her to know the rules of the game. The methodology, much like Wave Function Collapse, works on a pre-defined collection of chunks, geometric components that can be used to develop designs, and even proposes a methodology for design language extraction from real game levels by dissecting them into smaller images. Ropossum [SST13] is a tool for automatic design of complete and solvable content. It incorporates designer input through the creation of complete or partial designs, automatically checks for playability and optimizes a given design according to playability score. Ropossum includes a physics engine and playability constrains and like the previous tools allows for partial design generation with designer input, enabling a MID approach.

From the examples above we can clearly see that the focus of most modern and classical tools allowing the designer to influence the process of generation in real-time, which is the core of a MID approach. All tools focus on creating valid designs, something extremely important for architecture and engineering. Finally, they all work to develop practical tools that work in real life, a crucial aspect of bringing modern, mixed-initiative, generative design forward. There are numerous challenges that arise in the scope of the Initiator. One obvious challenge is how to find an intuitive way for designers to communicate their constraints across different design spaces and tasks. The second challenge is to how incorporate needed features in a consistent UI, even across different configurations of the system modules. One the other hand, as the gateway of information to the system, the Initiator offers exciting data-collection opportunities. A database of constraint configurations for different design problems can easily be collected through the use of the system. The system can also potentially learn each user’s typical constraints, and value ranges, for different tasks and quickly recommend set ups for future studies. Finally, the data collected at this stage is valuable information that should be communicated to the Critic and Aesop modules, provide a view into the relationship between constraints and performance, a crucial step towards extracting design intelligence.

References:

Ale63

C. Alexander. HIDECS 3: Four Computer Programs for the Hierarchical Decomposition of Systems which Have an Associated Linear Graph. Massachusetts Institute of Technology. Civil Engineering Systems Laboratory. Research report. MIT, 1963. URL: https://books.google.com.my/books?id=u7Z2NwAACAAJ.

BLA76

JUDITH R. BLAU. Toward a scientific architecture by yona friedman. the mit press, cambridge, massachusetts, 1975. 169 pp. (translated by cynthia lang.). International Journal of General Systems, 3(1):68–70, 1976. doi:10.1080/03081077608934740.

LS08

Joel Lehman and Kenneth O. Stanley. Exploiting open-endedness to solve problems through the search for novelty. In Proceedings of the Eleventh International Conference on Artificial Life (Alife XI. MIT Press, 2008.

LYT13

Antonios Liapis, Georgios N. Yannakakis, and J. Togelius. Sentient sketchbook: computer-aided game level authoring. In FDG. 2013.

Neg75a

N. Negroponte. Soft Architecture Machines. MIT Press, 1975. ISBN 9780262140188. URL: https://books.google.com.my/books?id=sRVQAAAAMAAJ.

NG67

N. Negroponte and L.B. Groissier. URBAN 5: An OnLine Urban Design Partner. Cambridge, IBM Report. IBM, 1967.

Neg75b

Nicholas Negroponte. The architecture machine. Computer-Aided Design, 7(3):190 – 195, 1975. URL: http://www.sciencedirect.com/science/article/pii/0010448575900093, doi:https://doi.org/10.1016/0010-4485(75)90009-3.

SST13

Mohammad Shaker, Noor Shaker, and Julian Togelius. Ropossum: an authoring tool for designing, optimizing and solving cut the rope levels. In 9th AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, 215–216. 2013.

SWM10

Gillian Smith, Jim Whitehead, and Michael Mateas. Tanagra: an intelligent level design assistant for 2d platformers. In 01 2010.

WN76(1,2)

Guy Weinzapfel and Nicholas Negroponte. Architecture-by-yourself: an experiment with computer graphics for house design. Association for Computing Machinery, 10(2):74–78, 1976. URL: https://doi.org/10.1145/965143.563290, doi:10.1145/965143.563290.

MawhorterMateas10

P. Mawhorter and M. Mateas. Procedural level generation using occupancy-regulated extension. In Proceedings of the 2010 IEEE Conference on Computational Intelligence and Games, volume, 351–358. 2010.