Keywords

1 Introduction

In the past decades, the CAAD approaches with emphasis on complexity theories, information systems, and human-computer interaction, were widely accepted. Among those pioneer explorations, Alexander’s work on patterns might be a notable one. Although Alexander developed the methodologies for his “pattern language” with “aggregation in an associative network” [2, 3], in-depth investigations into a formalized framework, the process and mechanics of pattern formation, and pattern-based design methodologies are still absent [13, 43, 45] (especially comparing with the paradigms, such as, “Pattern Grammars and Syntax-Directed Analysis” [19] developed by K.S. Fu in 1960 s and “Design Patterns” [20] in software engineering, pattern recognition, and other relevant academic fields).

We argue that the main bottlenecks are spatial-structural complexity and the spatial cognitive limitations of human beings (either for designers and users) (Fig. 1), considering (1) complex dynamics in human-environment coupled systems; and (2) the spatial-locational characteristics of planning and design work [46, 9, 10, 2628, 3234, 36, 37].

Fig. 1.
figure 1

Tree vs. semi-lattice (Alexander’s representations of “structural complexity” [2, 3])

To address the issue, our research is focused on the exploring of the relation of design cognition and spatial organization, i.e. the representations of the spatial layout of architectural design, and the relevant computational design methodologies and tools for design thinking and spatial-semantic analytics in design process.

The subsequent sections of this paper are organized as follows: Sect. 2 briefly reviews existing design representations, and detail analysis on these methods is discussed; Sect. 3 presents a novel representation for spatial-structural complexity (focused on dynamic hierarchies and adaptive layouts with spatial-semantic awareness) based on Spatial Graph Grammars (SGG) [31, 46]. A formalized framework of the process and mechanics of pattern formation is proposed; Sect. 4 applies this presented method in design representation of spatial layouts in actual architectural works, and detailed examples are illustrated. Finally, the paper is summarized in Sect. 5.

2 Design Representations

Architectural design activities and design thinking depend upon multiple representations, which afford distinctive opportunities for communicating and transforming ideas during the process of design analysis, synthesis and evaluation [1, 14, 15, 21]. From the viewpoint of cognitive-developmental linguistics [49, 50] and the complex adaptive systems [4, 9, 10, 35], representations are rooted to spatial information processing, i.e., the interaction between human beings (designers and users) and environment. Thus, we should consider representations as “design media” [41], either acting as the intermedium between designers with others, or designers themselves (Fig. 2).

Fig. 2.
figure 2

Representations of patterns within various cognitive levels – a viewpoint of complex adaptive systems and cognitive linguistics [4, 8, 50]

Fig. 3.
figure 3

Pattern formation with agent’s spatial-semantic intelligence [8]

The academic discussions on design representations date back to the Vitruvius’ treatise, on the role of plan, elevation and perspective in architectural practice. The Renaissance architects indulged in geometry, and also adopted the physical model. Nowadays, architects employ different representational modes and strategies, from various drawings, diagrams, physical or digital models, to various forms of analysis, written or text/linguistic specifications, and so on [16]. From the perspectives of human cognition and spatial information processing, we conduct a brief review on the representation models of spatial layout design, mainly in the computational medium as follows.

2.1 2D Drawing

The representation model is applied to modeling physical space by using orthographic projections – plans, sections, and elevations. Within the drawings, each Cartesian point has its own correspondence within real or proposed physical space. Disjoint spatial domains within a two-dimensional projective plan are delineated by lines on papers. As attributes are also ascribed, all spatial information – about its dimensions, shape, and attributes – is available [17].

This representation model emphasizes both of topological and metric considerations of spatial layouts. From the cognitive perspective, it is a static, low-level, and the fundamental model of design representations (Table 1).

Table 1. A comparative analysis of the multiple representations < √ = Yes; (√) = Maybe >

2.2 Bubble Diagram (and Other Diagrams)

The “Bubble Diagram” or “Relationship Diagram” is a simplified graphic description that consists of roughly drawn round/elliptical bubbles (to represent individual configurational/spatial entities) connected by various lines (to specify the relation between them), drawn to explore ideas and solutions in the early, conceptual phases of design.

Including many other kinds of diagram, they are usually freehand drawings, emphasizing topological relations and/or architectural images without adequate metric/shape specifications [14]. Thus, a diagram might be recognized as ‘a set of simple symbols (glyphs) and a set of spatial relations between them’ [23]. From the viewpoint of design cognition, they are abstract, cognitively high-level and intuitively closed to human mind and memory (Table 1).

2.3 Design Patterns (and Other Graph-Based Topological Representations)

Alexander represented his “pattern language” by using “aggregation in an associative network”, graph-based models of spatial structure. In such a kind of models, environments are usually described by means of nodes and edges, roughly corresponding to places (or spatial units) and their spatial relations (Fig. 1). Semantic information seems to be identified; however there is not a unified formalized framework of integrating design information with geometric/metric entities, except for graph-based topological representation (Table 1).

On the basis of John Grason’s “Dual Graph” [42], and the related Graph Grammars approaches, there are also other similar, graph-based representations for two-dimensional spatial layouts existed in CAAD [11, 22].

2.4 Shape Grammars

As “a specific class of production systems” of generating geometric shapes, a shape grammar consists of (1) shape rules (a start rule, at least one transformation rule, and a termination rule) that define how an existing shape (or a part of shape) can be transformed; and (2) a generation engine that selects and processes rules. [43].

Owe to the generative mechanics within its recursive structure, the shape patterns could be emergent with using transformational rules [28]. Thus, we may consider it as a certain kind of dynamic model of design representations. However, due to lack of adequate architecture-specific spatial-feature modeling, the widespread use has not being found in architectural design applications (Table 1).

2.5 Ontologies and Semantics

Distinct with visual-image category of design representations, spatial ontologies approach is related to the technologies of natural language processing and information systems. With the model, the transformation could be implemented between building schema and semantic expression. It has been successfully applied as ‘a semantic enabler of communication between both users and applications of building information modeling in AEC domain’ [12, 39].

However, as far as we known, there is no investigation of the formal ontological/semantic modeling on spatial information processing during design process. Therefore, our proposed representation model is designed for spatial cognition-based layout design to integrate both spatial and spatial-related semantic information modeling, i.e., spatial-structural, pattern-based “design semantics” [44] (Table 1).

2.6 Spatial Cognition- and Knowledge-Based Model

One of the key problems of CAAD is to connect computational design methodologies and tools with the representation of design knowledge and integrate both of them into design systems. The relevant research on representation, description and the cognitive processes in design could be found in the early explorations since 1960s [18, 24, 25], and the lasting works in recent years [1, 40, 41].

However, for the relevant theoretic models, there is a cognitive gap between low-level spatial data/information and high-level design knowledge. This deficiency prevents a direct cross-linking between spatial-coordinate information and generic knowledge representation during the design process (Table 1).

2.7 Summary

These existing representation models could be roughly distinguished into the main categories: topology, geometry/metrics, semantics, and so on. However, all of them are hybrids combining with various levels-of-abstraction from the perspective of spatial cognition (Table 1).

Aims to a unified and formalized framework, our proposed model attempts to cover all capabilities of these models, being focused on the pattern formation with complex dynamics (a recursive production mechanics) [46, 3234] and spatial-semantics [44].

3 A Generic Representation and Spatial-Semantic Analytic Model

On the basis of the above theoretic explorations, we propose a representation model for the “structural complexity” of two-dimensional spatial layouts, with dynamic, multi-level hierarchies, inspired by the information theory of complex systems [4, 3537], and the spatial semantics of cognitive linguistics [49, 50]. In our model, patterns are no longer pre-dominated beings, but becoming (which is out of dynamic hierarchies and structural information emergence). The pattern formation results from dynamic hierarchies and adaptive layouts (driven by complex dynamics, and controlled by the relevant “spatial-semantic aware” specifications) within various cognitive levels (Figs. 4, 7 and 13). The proposed model consists of abstract syntax, together with the consistent rules of spatial-semantic compositionality.

Fig. 4.
figure 4

A node with a hierarchical structure (consists of its low-level multiple vertexes) within various levels of granularity (also see Fig. 7)

Fig. 5.
figure 5

A graph grammar production

Fig. 6.
figure 6

Spatial-semantic notations

Fig. 7.
figure 7

The first level of granularity (also see Fig. 4)

Fig. 8.
figure 8

Spatial-semantic zooming for a layout adaptation

Fig. 9.
figure 9

Applications of spatial-semantic zooming, and distance rules, to achieve the effect in Fig. 8 (The first step: location/direction adapting and downsizing with the notation of “-B”; and the second step: distance reducing with the notations of “E-” and “W-”)

Fig. 10.
figure 10

An example of office floor plan

Fig. 11.
figure 11

A graph grammar < WS, An acronym of office workstations/workspace >

Fig. 12.
figure 12

A host graph representing the floor plan in Fig. 10

Fig. 13.
figure 13

The diagram of layout hierarchical structure, with possible spatial-semantic information interactions between their nodes (and vertexes), for the pattern-based design evolution using grammar induction and graph transformation [30, 47, 48]

Fig. 14.
figure 14

Three house projects by Frank Lloyd Wright [38]

3.1 Overview of Solution

At the technical level, we present a computational analytic method and design representation by using the spatial graph grammar formalism (SGG) [31, 46]. Pattern-based design is formalized as a process of specifying multi-level, dynamic hierarchies using the SGG, with (1) graph-based descriptive and generative model of the spatial topology; and (2) spatial-semantic analytic model for layout geometric/metric specifications, on the basis of spatial information processing for patter formation.

With the proposed generic analytic representation, a formalized pattern formation language would be developed, with the essential features: normativity/conventionality (communicable to context information), representation, and intentionality (accessible to human mind) [49, 50]. Within a design system [24, 25], each pattern or “design unit” [18] (driven by its innate pattern formation mechanics) acts as an agent (with its spatial-semantic awareness/intelligence) interacting with other patterns or units, and their environment (Fig. 3).

3.2 Spatial Graph Grammar (SSG)

SGG has been successfully applied to a number of areas, including adaptive webpage design and webpage interpretation [29, 30], which are in principle similar to environmental plans and designs. Graph grammars with their well-established theoretical background can be used as natural and powerful syntax-definition formalism for visual languages, which model structures and concepts in a two-dimensional fashion.

Various grammar formalisms have been proposed for different purposes. Most of those formalisms use nodes to represent objects and edges to model relations between objects in the abstract syntax. Distinctive with other conventional graph grammar formalisms, SGG is enhanced context-sensitive graph grammar formalism, with its unique extension of “spatial-semantic awareness” by introducing a set of spatial-semantic notations as a complement to the abstract syntax. The “direct representation of spatial-semantic information” into the abstract syntax makes grammatical rules (i.e., productions) easy to understand since grammar designers often design rules with similar appearances as the represented graphs (Figs. 4 and 5). In other words, it is consistent with the concrete representation by using spatial-semantic information to directly model relationships in the abstract syntax.

In a word, allowing designers to specify design knowledge in both spatial-structural and spatial-semantic properties simultaneously, the SGG approach is ideal for specifying dynamic hierarchical structures and their adaptive layouts, and well-adopted into our model.

3.2.1 Spatial-Semantic Notations

SGG is context-sensitive graph grammar formalism, with a set of notations for spatial-semantic specifications: direction, topology, distance and alignment (Fig. 6).

3.2.2 Spatial Granularity and Spatial Hierarchy

There is a hierarchical structure inside a node, consisting of multiple vertexes within various levels of granularity (Figs. 4 and 7).

3.2.3 Layout Production and Spatial Hierarchy

SGG also supports the syntax-directed computation through action code. An action code is associated with a production, and is executed when the production is applied. Writing an action code is like writing a standard event handler in Java programming language. This mechanism would therefore support dynamic adaptation of any specified two-dimensional structure, as well as interpretation of the given structure.

A graph grammar consists of a set of graph transformation rules (i.e. productions) (Fig. 5), which dictate the way of constructing a meaningful graph through a variety of nodes. Formally, a graph grammar formalism usually consists of a set of graph transformation rules of the form, with being called pattern graph (or left-hand side) and being called replacement graph (or right-hand side of the rule). A production is applied to the host graph by searching for an occurrence of the pattern graph (pattern matching) and by replacing the found occurrence by an instance of the replacement graph.

Since all possible inter-connections among the nodes have been stated in the grammar, any connection between a pair of objects in a graph with a valid meaning can be eventually derived from a sequence of production applications, which incrementally rewrite one graph to another. Conversely, an un-expected connection signals a violation on structural requirements. Given a graph grammar, beginning from the initial graph, a generating process, i.e. a graph grammar is applied in a forward direction, can generate all well-formed graphs defined by the graph grammar; a parsing process, i.e. a graph grammar is applied in a reverse direction, can evaluate the structural validity of a graph, which is usually called a host graph (Fig. 12).

3.2.4 Layout Transformation

To reduce the representation space while maintaining the original spatial structure, the adaptive layout transformation method applied, which includes: distance transformations, zooming transformations, and location transformations (Figs. 8 and 9).

4 Examples and Applications

Figure 10 Footnote 1 presents an office floor plan. Assuming the floor plan follows a general guideline, i.e. a set of layout rules that can be formally defined as a graph grammar; we can then automatically verify any other floor plans conforming to the guideline. In the grammar formalization, nodes represent different entities in the floor plan, such as rooms or office workstations/workspace (WS), and links indicate an adjacent relation between two entities (or entity groups). Spatial relations among different entities are implicitly specified through the layout of the right graph in a production.

More specifically, Fig. 11 illustrates a spatial graph grammar, which summarizes the essential properties (i.e. the given guideline) of the above floor plan. The entire floor plan includes three major areas (i.e., left, center and right) from left to right, as defined in Production 9 (Fig. 11, P9). The left area is denoted as a non-terminal node left in P1, includes three rooms, i.e., reception, store and meeting, and the right area (P2) includes two rooms, restroom and kitchen. The center area indicates the office space, which has a set of office workstations/workspace (WS). Workstations can be organized in different ways. Four workstations, two workstations or one workstation can form one block, as defined in Productions 3, 4 and 5, respectively. Finally, Productions 6, 7 and 8 integrate blocks together as the whole office space. Figure 12 illustrates a host graph, which is an abstraction of the floor plan in Fig. 10, which is one instance of the floor plan conforming to the defined graph grammar. Based on the graph grammar, the generation process can produce all possible instances of the floor plan that conform to the graph grammar definition.

A graph grammar specification, parsing and induction tool, called VEGGIE (a Visual Environment of Graph Grammar Induction Engineering) (Figs. 15 and 16) developed by Zhang and Kong [7, 31, 46]. A designer could use VEGGIE to specify his/her design in the spatial graph grammar and VEGGIE would be able to automatically validate any correct instances of the design meeting the requirements specified in the graph grammar.

Fig. 15.
figure 15

The screenshot of a VEGGIE-generated, task-specific spatial-semantic analytic map (spatial-semantic attributed graph, etc.) for the spatial organization in the three house design

Fig. 16.
figure 16

A screenshot image of the graph grammar, the Production (grand courtyard) := (Entrance - family room – terrace – pool) for the large block of E- F-T-P (with a “grand courtyard”) (Figs. 14 and 15)

The same specification principle also applies to any architectural layouts that follow a given set of design regulations. We select the three house projects by Frank Lloyd Wright as our second study case for experimental design.

According to the analysis of March and Steadman [38, p. 27–28], the spatial organization in the three house design is sharing in the same/similar design pattern (in terms of spatial topology) (Fig. 15).

However, through parsing with SGG, we would be able to represent, retrieve and pertain to those multiple, complemented and combined features of relevant design knowledge and spatial information (either in spatial-topological and spatial-semantic recognition and representations) for both precedent design analysis and novel design synthesis, for instance, automatic searching for design solutions with case-based reasoning via “Spatial-Semantic Analytics” (Fig. 17).

Fig. 17.
figure 17

A conceptual model of “spatial information processing” with multiple design representations towards “spatial-semantic analytic intelligence” for design-pattern mining, retrieving, (re-)configuring, transforming and adapting to a variety of context conditions

For the three house design by F.L. Wright, we suggest that a “Pivotal Pavilion” (locates at “F”, the family room area for each) acts as the circulation nexus, social communication hub and visual/compositional crux of the layout design. Respectively, the floor plan of Fig. 14(a) includes rectangle, (b) includes square, and (c) is hexagon (with -30 degree rotation), as shown above (Fig. 14).

Setting up the Pivotal Pavilion as the origin of coordination system and the start point of spatial layout, we conduct “Parsing” operation with the Spatial-Semantic Analytics on the layout design using the VEGGIE system, so as to generate the graph grammar and the Spatial-Semantic Analytic Maps (Fig. 15).

By the “Parsing” with the VEGGIE Spatial Semantic Analytics, we might be able to obtain the “systematic spatial information” of layout design patterns formally, consisting both of the spatial topology of design configuration and/or composition/compositional units, and their correspondent spatial-semantic attributes, in terms of spatial organization in architectural design. With the three house design case, we try to present a formal spatial-semantic paradigm for the spatial information processing in design knowledge representations. A spatial-semantic representation and layout design analytics for the “Parsing” process is implemented using VEGGIE.

5 Conclusions and Discussions

Our work presents a theoretic framework and a conceptual solution of the “structural complexity” problem in Alexander’s “pattern language”, i.e., introducing spatial-semantic analytic intelligence for spatial information processing into abstract syntactic representation of the spatial layouts in architectural design. With the model, both of the configurational and compositional information (out of design cognition) as additional/complement connections could be able to knit to the topological structure of spatial layouts (validated by the spatial-semantic compositionality which is defined by the design goal).

A formalized and operable method of design representation for various complex structures/patterns is developed, and implemented by using SGG. With the above the preliminary case study, we testify our theoretic framework and computational tool to demonstrate our proposed approach for practical applications.

The spatial-semantic analytics approach is the crucial contribution of our work, which bridges the gap between low-level data/information of layout configurations, spatial-semantic awareness and high-level design knowledge, within a unified design cognition-based framework of spatial information processing.

However, our work is still at a preliminary stage. In the next step, we will optimize our model, the procedure of spatial information processing, the relevant spatial-semantic notations/parameters and computation tool. More actual architectural design works (spatial layout exemplars) will be adopted into our experiments.