Introduction
This special issue frames the topic of computer implementations of shape grammars, both with a theoretical and an applied focus. Articles in this issue display the state of the art of these computer implementations, as well as their applicability in real design scenarios. The development of this special issue was combined with a special workshop “Advances in Shape Grammars: Implemented Shape Grammars”, chaired by Pieter Pauwels and Sara Eloy and held in Evanston, Chicago preceding the Design Cognition and Computation 2016 Conference (DCC2016).
During the DCC workshop (Pauwels & Eloy, Reference Pauwels and Eloy2016), the 23 participants had the opportunity to discuss the recent developments in shape grammar research. The aims of the workshop were: (i) to enable hands-on demonstrations, (ii) to receive on-topic feedback and discussions, (iii) to discuss recent developments, (iv) and to discuss on three topics: technical design, interface design, and use cases. These last three topics were also the main topics that were planned to be addressed in the AIEDAM special issue. Terry Knight and Thanos Economou each gave a brief talk in the beginning followed by the hands-on demonstrations provided by Thomas Grasl with GRAPE and Andrew Li with The Interpreter Project during which they showed the potentials and drawbacks of both interpreters. Presentations were done by Hau Hing Chau “Exploring lattice structures in shape grammar implementations”, and Luca Zimmerman “A generative design framework integrating spatial grammars, simulation and optimization”, allowed to discuss technical advancements. Sara Garcia with “A multipurpose chair grammar implementation”, and Nikolaos Vlavianos with “Shape grammars Augmented Reality (SGr): A novel rule-based method for designing with eyes” brought the use of shape grammars in a practical context.
The starting point of this special issue is the current state of the art regarding computer implementations of shape grammars and a discussion about how those systems can evolve in the coming years so that they can be used in real-life design scenarios. Shape grammars have been researched for more than 40 years now reaching several areas of design as architecture, engineering, and product design. Besides the intellectual challenge involved in the development and use of shape grammars, the potential they would have in addressing real-life design problems is enormous. Several shape grammar implementations have been developed the last years but a true impact in the design methods is still to be proven possible and illustrated. To be able to show shape grammars to industry partners, the grammarians need to implement them in working software prototypes that fully demonstrate their potentials and their generative power. Besides the focus on pure computer implementations of shape grammars, this special issue also called for contributions regarding real design scenario applications. Several recent computer implementations use parametric design tools to generate design alternatives. Nevertheless, most of these implementations realize only a part of the potentials that were originally attributed to shape grammars, thereby leaving some important features as emergence, interactivity, and ambiguity behind in favor of other features. Considering this myriad of implementation approaches, computer-implemented shape grammar interpreters might be usable for diverse application scenarios, ranging from shape grammars for personalized customization for mass-housing to flexible, on-the-spot design grammars that are able to evolve with the design process of the designer.
With the above two main tracks (computer implementations and real-world use cases), this special issue aims at: (1) addressing current shape grammar design computer tools and (2) discussing future paths of implementations towards the real use case scenarios. In the next subsections, we present a brief state-of-the-art overview (the section “State of the art”), to be complemented with the state-of-the-art review of the articles in this special issue. In the section “Advances in implemented shape grammars”, we present a short summary of the articles that are included in the current special issue, after which we give a comprehensive outlook into the future in the section “An outlook”.
State of the art
Shape grammars applications have been developed for over 40 years addressing several areas of design, most particularly architectural design, engineering, and product design. Significantly, several shape grammars implementations developed over the last 10 years have managed to successfully integrate early pioneering work on shape representation and computation and begin to explore emerging applied technologies, including parametric design tools, generative design tools, procedural modeling tools, information modeling applications, and rule-based design systems. These recent applications offer extensive support for Euclidean and parametric rules, visual definition of rules, interactive rule application including manual, semi-automatic, and automatic modes, and address issues of interoperability between shape grammar interpreters and state-of-the-art modeling tools.
Parallel to these advances, several classifications have been proposed over the last 15 years to classify shape grammar applications: some concentrate on the tasks for programs that implement shape grammars, for example, generation, parsing, and inference tasks and their interactions with CAD modelers (Gips, Reference Gips1999). Others focus on technical and/or expressive characteristics of interpreters, including underlying computing language, subshape recognition, the dimensionality of shapes, etc. (Chau, Reference Chau2002). Others focus on usage in design, including general interpreters versus specific domain applications; schematic design versus design development; industrial strength interpreters versus proof-of-concept applications, etc. (Chase, Reference Chase2010; McKay et al., Reference McKay2012); and others focus on the systematization of concepts (Garcia, Reference Garcia and Gero2017).
Our approach builds upon all these trajectories and generously recasts them in two distinct approaches to reflect upon the current-state-of-the-art as well as speculate on the design of new shape grammar applications: the first one privileges the design of software that allows the visual querying of a design in any conceivable way. The second privileges the design of software that allows the specification of visual rules in any conceivable way. Both approaches complement each other and both address the core of the shape grammar formalism: the dynamic play between seeing and doing and the need to accommodate both in a seamless manner in design. Note that these two approaches are related to the classic distinction in the shape grammar discourse between general interpreters and specific design domain applications, but not entirely. For example, existing general interpreters may not support emergence at all, or they may support some types of emergence, say, for example, identification of polygons, stars, and so on, but not all possible shapes and spatial relations; and existing specific design domain applications may support visual specification of rules or not while they may not support any emergence none so ever. Still the initial distinction between general interpreters and specific domain interpreters is useful, and is used below in Table 1 to rework the evolving shape grammar software list in the bibliography currently given in a variety of sources (see, e.g., Gips, Reference Gips1999; Chau et al., Reference Chau and Gero2004; Kunkhet, Reference Kunkhet2011; McKay et al., Reference McKay2012).
Advances in implemented shape grammars
In this section, we give a brief summary of the diverse papers that are included in this special issue. The papers chosen for this volume reflect current research and concerns within the shape grammar research community on two main topics: (i) technical advancements and (ii) practical implementations both concerning interface and/or real-life design scenarios. Hence, we have divided the accepted papers into a number of categories, namely: (i) technical design, (ii) interpreters and interface design, and (iii) use cases.
Technical design
On the first topic, technical design, five articles have been included. The selected papers in this category are highly technical in nature and delve into very specific advances that can be made on the purely technical level. They include existing software implementations, yet advance beyond the current state of the art by giving a detailed impression of the strengths and weaknesses of the available systems, and making suggestions for future development opportunities at the heart of technology.
The paper by Wortmann and Stouffs discusses the algorithmic complexity of shape grammar implementations and categorizes existing implementations by their algorithmic complexity. Instead of just discussing subshape detection and emergence as the way to discuss algorithm complexity, the authors consider complexity in terms of the number of potential target shapes (or possibilities for rule application). More specifically, the authors describe how different sets of transformations (isometries, similarities, affinities, and so on) admit a number of potential possibilities for rule application in both shape grammars and parametric shape grammars and how important this is to secure design freedom. In the end, the authors propose new matching algorithms for non-parametric and parametric shape grammar implementations along with an analysis of their complexity.
Chau, Mckay, Earl, Behera, and Pennington provide a robust framework for a general shape grammar interpreter that brings together various theoretical inquiries that have remained so far somewhat independent. The key idea of the work to use lattices to transform rapidly and on-the-fly a given shape grammar to a set grammar that can be computed by a machine before it reverts back to a shape grammar representation. The results are very convincing: the structure of the design depends on the rules that are used to structure it; the emergent parts of the design (temporal atoms) are all represented as nodes in a lattice and are all computed efficiently; all rule matchings and resulting applications are readily visualized; and as if all these are not enough, the computations are all using curves in two-dimensional (2D) and 3D space (along with straight lines too) and both under a similar representation so that a straight line can be represented as a degenerate Bezier curve. The work is nicely presented within a useful overview of current shape grammar interpreters and its contribution is discussed within a more critical overview of visual ambiguity in creative design.
The paper by Stouffs aims at the implementation of a generic shape grammar implementation, similar to the aim pronounced by Chau et al. Stouffs indicates how algebras of shapes have been defined for elements of different kinds, as well as for shapes augmented with varying attributes. Grammar forms could hence potentially be expressed in terms of a direct product of basic algebras. Stouffs extends this algebraic approach in this paper: he derives combinations of basic shape algebras with attribute algebras. This algebraic abstraction at the same time serves as a procedural abstraction, giving insights into the modular implementation of a general shape grammar interpreter for different grammar forms. In addition, Stouffs considers practical limitations on algebraic compositions of basic shape algebras with attribute algebras.
The paper by Whiting, Cagan and Leduc discusses the possibility of efficiently generating grammars in design and analysis from arbitrary sets of data. Indeed, the authors point to the lack of automated ways to induce grammars from arbitrary structured datasets. They argue that machine translation methods can allow inducing grammars from coded data. Their proposed process for Efficient Probabilistic Grammar Induction for Design includes four steps: (1) extracting objects from the data; (2) forming structures from the object; (3) expanding structures into rules based on frequency; and (4) finding rule similarities that lead to consolidation or abstraction. To evaluate this method, grammars are induced from generated data, architectural layouts and 3D design models of Andrea Palladio's Villa Foscari, La Malcontenta. This evaluation demonstrates that this method is capable of automatically offering usable grammars which are functionally similar to grammars produced by hand.
Zimmermann, Chen, and Shea discuss the adoption of spatial grammars in engineering applications by providing a method that enables the automated link between the designs generated by the spatial grammar [developed in spapper (Hoisl & Shea, Reference Hoisl and Shea2011)] and their evaluation through finite-element analysis. The authors propose a framework that combines a 3D spatial grammar interpreter with automated finite-element analysis and stochastic optimization using simulated annealing and tests it in the automated design and optimization of spokes for inline skate wheels. The results presented verify that the framework can generate structurally optimized designs within the style and additive manufacturing constraints defined in the spatial grammar, and produce a set of topologically diverse, yet valid design solutions.
Interpreters and interface design
On the topic of interpreters and interface design, two key contributions have been included. They both document existing software implementations of shape grammars, including their newest features and technological advances. Both articles focus on the connection with the end user, giving an idea of what sort of features can be made available to an end user.
Li reports the implementation of a grammar editor using Rhinoceros3D and Python, and a stand-alone general interpreter that supports subshape detection. The grammar can be modified directly in Rhinoceros3D and exported to the interpreter, and a derivation file can be exported back from the interpreter to Rhino. Users have an intuitive way of using the system being shielded from most of the subdomain tasks. This shape grammar implementation has been developed from the earlier work by Chau et al. (Reference Chau and Gero2004) through the inclusion of a graphical interface to shapes and rules. The current implementation also evolves from the stand-alone interpreter report in Li et al. (Reference Li2009). Li reports as well the good feedback of participants during several classes and workshops where he tested the implementation under design scenarios.
Grasl and Economou describe the structure of a generic parametric shape grammar interpreter named GRAPE. The interpreter is based on graph grammars and supports emergence, parametric rules, and several types of geometric objects. The shape grammar engine is an agent-based rule selection system designed to be independent of other packages and platforms. Several plugins for commercial CAD packages, such as Rhino, AutoCAD and Revit, and one web application have been created. Users may create rules by directly using the GrGen.NET graph grammar rule modeling language or via the visual editor implemented in the web interface. This paper evolves from a previous article by the authors, namely Grasl & Economou (Reference Grasl and Economou2013), by discussing the graph model, the visual rule editor, incorporating additional geometries (curvilinear and 3D), and introducing rule selection agents. A number of designs developed in structured workshops starting from existing grammars or from scratch show telling results and the potential of the interpreter too.
Use cases
Finally, we included two use case contributions which document applications of shape grammars in product design and urban design. These articles indicate how computer implementations of shape grammar system can be used in practice and where some of the key difficulties lie in building a wide end-user base. Both papers present practical implementations close to real-life design scenarios. They discuss the technological advances of the documented systems in close relation with advances in design and decision support tools, including parametric design tools, generative design tools, optimization algorithms and approaches, and semantics-based applications.
The problem addressed by Beirão and Duarte in their paper is the development of generic grammars that, instead of generating designs specific from one design language may encode design principles that are general and common to a large group of designs. A generic urban grammar is then presented which was inferred from specific urban grammars that resulted from the analysis of different corpi in the same design domain. To implement the grammar authors converted the shape grammar into a parametric design model and implemented it using Rhinoceros and Grasshopper to facilitate computer implementation. According to the authors, parametric design interfaces are more suitable for designers than state-of-the-art shape grammar's interpreters and represent better visual stimuli. Nevertheless, with the adoption of such process emergence is not supported. Such a design system can be used by designers that starting from existing elements in the urban area, references, may create an urban design solution step by step.
The second case contribution is by Garcia and Leitão that present a multipurpose chair grammar and its implementation in the design tool ChairDNA. The aim of this research is the development of a parametric set grammar design tool that allows the generation and exploration of chair design alternatives. Such a system could be used during the conceptual stages of chair design to help designers explore design alternatives that simultaneously are unexpected solutions and comply with the chair design's restrictions. In order to help designers non-familiar to shape grammars to use the interface authors opted to translate the set grammar into graphical user interface elements that are presented to users and control rule application and the derivation process. In this sense, the grammar is cast primarily as a schema whereas the designers pass numerical values to variables and sets of variables to instantiate a model based on these numbers. The authors provide an evaluation of ChairDNA done by design students and design practitioners. In this evaluation, designers assessed several criteria related to usability and others related to the usefulness of ChairDNA as a design tool. The results appear to be positive and useful providing insights on how to improve the tool and integrate it into daily life design practice.
An outlook
This special issue contributes to the debate on how shape grammars are finding their way into the design process and will, as such, extend beyond the current state of the art. A question raised in the call concerns with what more can be done in shape grammars’ implementation to make them useful to a real-life design scenario. Another issue raised relates to the path being followed by current research and its focus aiming both at the design market and at the academic challenge of innovation.
Future challenges highlighted both by authors and by current literature cover four main topics: (i) the creation of new algorithms to expand the power of computer design generation, (ii) the inclusion of evaluation strategies during the computer generation process, (iii) the development of computer implementations that are easy to use and adaptable to designers’ knowledge and work processes, (iv) and the development of specific and generic shape grammars that can be used immediately in the design practice.
The need to create new algorithms, highlighted in this issue by Wortmann and Stouffs, contributes to the expansion of computer-automated design systems’ generation power and therefore the possibilities to make a larger type of visual calculations reachable. Further research is needed in order to extend the presented bounds and algorithms to higher dimensions and other types of geometries.
Parallel to the generation capabilities of shape grammars, design solutions need to be evaluated using several criteria. The main aim is that the processes of evaluation can be conducted during the generation process and not just at the end in such a way that the generation process may only produce valid design solutions. Zimmermann et al. bring an example of how this process is helpful for structural optimization problems that require manufacturing constraints, a variety of solutions, and the compliance with a personal style.
Concerning the development of computer implementations, two main lines of research exist. On one hand, authors aim at implementing a general shape grammar interpreter that includes all the shape grammar formalisms but does not have the concern of generating designs with a programming purpose (as housing, product design, etc.). On the other hand, there are authors that sacrifice some shape grammar characteristics, as emergence, so that a feasible computer-automated design system is developed. The evolution of software is a common concern, also referred by Li, and Grasl and Economou, since the now existing compatibility between interpreters and design software may be lost in future updates. Even though, the next steps will include the development of interpreters inside commonly used CAD systems. This will lead to a less formal way of using grammars and, as stated by Li, to a more congenial one to designers. Simultaneously, the development of shape grammar design tools that enable designers with few or no programming or grammar knowledge to use the generative power of such systems should also play a role in the current development.
The developments of specific and generic shape grammars that can be immediately used in design processes will foster its use by designers. Grammars that are applied to specific design problems in for example, product design and architecture may have an immediate use by designers if they respond to an existing problem. Also, the application of the concept of generic grammars to several design domains by designers from different fields can create specific styles, specific contexts, customizations, or any combinations of these.
Acknowledgements
We would like to thank Yan Jin, the former Editor-in-Chief of Artificial Intelligence for Engineering Design, Analysis and Manufacturing (AIEDAM), for supporting the proposal and development of this special issue, and Amaresh Chakrabarti, the journal's current Editor-in-Chief for his help in realizing it. We would also like to praise the authors for their contributions and views and also the reviewers for making this issue possible.
Sara Eloy is an Assistant Professor at Instituto Universitário de Lisboa (ISCTE-IUL). Her main research interest is shape grammars and the possibilities of using them in real design scenarios. Other areas of research are CAAD, the use of immersive virtual and augmented Reality for the design process, and the analysis of the building space namely considering space perception and space syntax. She graduated in Architecture (FAUTL 1998) and has a PhD in Architecture (IST UL 2012) where she investigated on a transformation grammar-based methodology for housing rehabilitation. She is the Director of the Information Sciences and Technologies and Architecture Research Center (ISTAR-IUL), and was the Director of the Department of Architecture and Urbanism (DAU), and of the Integrated Master in Architecture at ISCTE-IUL in Lisbon between 2013 and 2016.
Pieter Pauwels is an Assistant Professor at Ghent University, Department of Architecture and Urban Planning. He holds Master (2008) and PhD degrees (2012) in Engineering: Architecture from Ghent University. He teaches Computer-Aided Design (CAD) and Building Information Modelling (BIM) to architectural engineering students and industry professionals. His research focuses on Building Information Modelling; Linked Building Data; ontologies (ifcOWL); regulatory compliance checking; (semantic) web technologies; information integration, exchange, and management. He actively chairs two technical international community groups, namely the W3C Community Group on Linked Building Data and the BuildingSMART Int'l Linked Data Working Group (LDWG). In that context, he is actively involved in the definition and management of an ifcOWL ontology that can be used as a recommended standard for capturing and publishing building data using the latest web technologies.
Athanassios Economou is a Professor in the College of Design at Georgia Institute of Technology. Dr Economou's teaching and research are in the areas of shape grammars, computational design, computer-aided design, and design theory. He is the Director of the Shape Computation Laboratory, a research group that explores how the visual nature of shape can be formally implemented with new software technologies to assist seeing and doing in design in new ways. Dr Economou holds a Diploma in Architecture from NTUA, Athens, Greece, an MArch from USC, and a PhD in Architecture from the University of California, Los Angeles (UCLA).