{'fraction_non_alphanumeric': 0.031690311334915025, 'fraction_numerical': 0.008376507044981359, 'mean_word_length': 4.924698795180723, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Structural Grammar Approach for the Generative Design of Diagrid-Like Structures

An innovative generative design strategy, based on shape grammar, is proposed for the minimum-weight design of diagrid tall buildings. By considering the building as a three-dimensional vertical cantilever beam with a tubular section under horizontal load, it is evident that bending and shear stiffness demands vary along the width and elevation of the building. Further, while the structural design of tall buildings is usually governed by stiffness, the predominant design criterion for diagrids could be the local strength demand, especially for low slenderness values, thanks to the inherent rigidity of the triangular pattern. Starting from these considerations, in this paper, a generative design strategy is proposed, able to find diagrid patterns that accommodate the differentiated stiffness demand along width/elevation and satisfy the predominant design criterion, stiffness or strength. The design strategy is applied to tall building models characterised by different slenderness values. The comparison to diagrid patterns analysed in previous literature works in terms of structural weight and performance parameters highlights the effectiveness of the design strategy and the efficiency of the generated patterns.


Introduction
Design is a typical "wicked problem" [1], namely an ill-structured problem, characterised by open-ended expectations, emerging constraints, non-quantifiable features, absence of global optimality and contradicting solution paths [2]. A problem, thus, that cannot be successfully treated with analytical approaches throughout a linear process. The structural engineers traditionally tame this wickedness and complexity, preserving the human control of the design workflow and relying on: insight into the fundamental mechanical aspects of the problem with simplified models, parameter definition, parametric analysis and iterative calculations, reference to precedents and conservativeness. However, intuition, experience and iterations might not be sufficient for manually exploring unprecedentedly large and complex design spaces.
Recently, a paradigm shift has occurred in the structural design workflow thanks to Computational Design (CD) that fully entails the use of computation for the exploration of structural solutions and the development of design ideas [3,4]. Within CD, generative design (GD) is an approach that employs algorithmic or ruled-based processes to generate multiple and complex solutions [3]. GD tools are able to seek for uncommon solutions that usually do not fall within a standard and defined set of shapes/topology and cannot be anticipated in the phase of the algorithm writing, also including so-called "happy accidents" [5]. These characteristics make the approach widely used in fields like product design, mechanical engineering and architecture. In the case of the structural engineering, the outcomes of GD procedures most of times are used just to encourage divergent thinking rather than becoming an actual design solution. The reason for this mainly lies in the intrinsic nature of the generative procedure, which is hardly able to constrain the design solutions for feasibility sake at the scale and size of a building structure.
Nevertheless, a number of researchers and designers are advancing both the theoretical aspects and the application potentials of GD in the structural engineering context, where, among the most promising approaches, the rule-based or grammar-based strategies show high versatility and effectiveness in generating novel and unexpected structural solutions. Shape grammar, firstly proposed by Stiny and Gips [6] for analysing and interpreting existing design styles and solutions both in art and architecture, as well as for formulating new styles, has been subsequently generalised [7] and imported in the field of engineering design by coupling shape generation and performance assessment [8,9].
Within the academy, worthy contributions are provided by References [2,[10][11][12][13][14][15], only to cite few. In particular, Mirtsopoulos and Fivet [2] propose a rule-based design strategy, which combines shape grammar and graphic statics methods for generating equilibrated truss structures, with a great degree of control allowed to the designer throughout the process. The interaction between the machine intelligence and the human designer, and the exploitation of the relevant potential benefits, is also central in the approach proposed by Saldana Ochoa et al. [10], the so-called Combinatorial Equilibrium Modelling, an algorithm grounded on vector-based three-dimensional (3D) graphic statics and aimed to the fast generation and transformation of non-standard structural forms. As an important part of exploration in the conceptual design phase, Loos et al. [11] emphasise the need of data visualisation in structural design for comparing whole series of structural geometries and topological alternatives, thus enabling designers to make informed decisions, exemplifying the cases of bowstring bridges and grid shells. Computational tools for exploring wide design spaces in the phase of conceptual structural design are thoroughly reviewed by Rolvink et al. [12], while Lee et al. [13] propose an approach that combines shape grammar and graphic statics for exploring trans-typological structural solutions in various design scenarios, with designs obtained using few predefined parts and simple grammar rules.
The above papers constitute a representative sample of recent research works employing grammar or rule-based approaches, which appear mainly focused on truss structures, grid shells or domes for large-span roofs. Few contributions, instead, are devoted to buildings [14][15][16], and in particular to tall buildings, for which this approach seems particularly suitable to generate structural patterns for tube configurations. Among these, the pioneering and sophisticated work by Meyer and Fenves [17] provides a threedimensional grammar for defining a structural and architectural design language for tall buildings, by means of syntactic structures composed of 3D shapes and functional attributes. Kicinger et al. [18] present an evolutionary computation support tool for design of tall buildings that provides both conceptual solutions and detailed designs; after subdividing the building in parallel frame alignments, the procedure identifies cells (i.e., beam column grid units) where different types of bracings can be positioned according to the evolutionary search algorithm. Automated search algorithms are also utilised in the context of the building engineering and design industry, particularly by the most advanced and high-profile companies, such as SOM (Skidmore, Owings & Merrill), for identifying sets of optimal solutions for tall building projects, but also to gain understanding as to why the optimal solutions perform so well [19,20].
In this paper, a generative design algorithm is proposed for creating structural patterns for tall buildings that are both optimal and feasible. Attention is specifically focused to diagrid-like patterns. The diagrid, indeed, emerged in the last two decades as the most efficient solution for tall buildings with tube configurations [21][22][23][24], and is a uniform grid of diagonal members arranged according to triangulated tessellation of the building façades. The diagonals act both as inclined columns and as bracing elements, carry only axial forces and experience only axial deformations, thus minimising racking deformations and shear lag effects [24]. Thanks to the triangulated geometry, once the pattern is defined, the phase of member sizing is straightforward and can be easily carried out by hand calculations, as proposed in References [22,24,25] for regular diagrids. Despite their inherent efficiency, diagrid structures can be further improved. In fact, the analogy between tall building and vertical cantilever beam under lateral load [20,26,27] clearly suggests that the structural pattern should not be uniform for accommodating the variation of bending and shear stiffness demands along elevation, with diagonals gradually steeper going from the top to the base of building. As first contributions in this direction, design procedures for the generation and preliminary sizing of diagrids with variable angle have been proposed in the literature [28][29][30]. A deeper insight into the problem mechanics, however, reveals that optimal diagrid patterns should be made by diagonal with angle and density varying both along building elevation and façade width, as can be obtained by mapping the principal stress trajectories of the equivalent cantilever beam on the building façade [20,31].
The generative design strategy proposed here emerges from the above considerations. It deals with structural patterns made by triangle units, and is based on the use of structural grammar, which is composed by a shape grammar and structural optimisation. The shape grammar defines the design rules for creating the geometry of the pattern, made of triangle units with diagonals' slope and number that can vary along both height and width of the building façade. The design solutions generated by means of the grammar rules are then examined and ranked in the phase of structural analysis and optimisation, and the optimal solution is identified as the lightest one able to satisfy structural performance targets. In the following, a detailed description of the structural grammar is firstly provided. The GD strategy is applied to tall building models characterised by different slenderness ratios and the optimal patterns are obtained. The comparison to diagrid patterns analysed in previous works by the authors [27,[31][32][33] in terms of structural weight and performance parameters highlights the effectiveness of the design strategy and the efficiency of the generated patterns.

Construction of Structural Grammars for the Generation of Topology Optimisation (TO) Patterns
A structural grammar is defined by a shape grammar built within a parametric design space and by structural analysis and optimisation processes. In particular, the parametric design space controls the design of the geometry by means of some parameters that represent the variables of the problem and help to limit and drive the design space generation. The grammar is defined by such parameters and intertwined rules with which the algorithm makes a series of automated choices and decisions. These decisions lead to a number-theoretically-infinite of geometries, where all possible solutions are considered as potentially feasible and efficient, despite not being imagined and anticipated in the phase of algorithm writing. However, shape grammar only explores different solutions in terms of geometry, and thus is completely agnostic about their structural behaviour. Therefore, for each solution generated by the shape grammar, a structural model is created, structural members are sized and analyses are carried out under design loads. Both the generation of the design alternatives and the choice of the optimal one are then demanded to optimisation algorithms. In this study, the fitness function is the structural weight of the diagrid pattern. Concerning the choice of the fitness function, it is well known that minimising the weight of the structure does not necessarily minimize the overall construction cost [27], and, more importantly, other constructional, architectural, even haptic considerations can strongly affect the final design choice. However, the structural weight is an index of structural efficiency, since it gives a measure of the material consumption for satisfying a required performance level, and in the context of tall building design, it represents an item of great interest for ranking and selecting the different structural options.
The structural grammar is developed within the software Grasshopper [34], one of the most popular and advanced visual scripting environments, embedded into the virtual modelling package Rhinoceros [35]. Grasshopper is an algorithm editor that allows for writing custom subroutines intuitively, by means of visual scripting, and with a high level of versatility. For this reason, it is widely employed in both research and professional fields.
The structural analyses are carried out through Karamba [36,37], a finite element analyser integrated into the Grasshopper workflow. The optimisation phase is developed through Galapagos, a genetic algorithm engine integrated into the Grasshopper platform as well.
The whole process of structural grammar is schematised in Figure 1. The flow chart is divided into four blocks (a, b, c, d), each devoted to a different phase of the process, i.e.: • Generation of geometry with rule-based shape grammar (block a).

•
Creation of the structural model (block b). • Structural analysis, cross-section sizing and output processing (block c).

•
Optimisation with genetic algorithms, i.e., generation of Topology Optimisation (TO) patterns (block d). In the following sub-sections, the above phases are described in detail.

The Shape Grammar
The shape grammar conceived here consists of two types of rules: rules for the definition of the design domain, and rules for the discretisation of the design domain. The former rules define building façades as the design domain and divide them along height into a certain number of macro-modules and modules. The latter rules generate the diagrid pattern on the façades, with distribution and cross-sections of the diagonals that vary within a module and from one macro-module to another. These rules, included in block a of Figure 1, are described in the following.

Rules for the Definition and Subdivision of the Design Domain
The first rule concerning the definition of the design domain identifies the volume occupied by the building model. The external surface of this volume represents the building façades, where the diagrid pattern should be applied. The façades are vertically subdivided into a number of stacking macro-modules, each containing a certain number of modules, each of which, in turn, spans an integer number of floors. The geometrical features of the pattern, i.e., the number and slope of diagonals, are the same for the modules within a macro-module, though they vary from one macro-module to the other.
The main geometrical parameters that define the design domain are: Number of modules, n mj , for each macro-module (where j varies from 1 to n M ). • Total number of modules, n m , in the pattern (given by Σj n mj for j from 1 to n M ).
In the applications presented in this paper, the width of the building façade, B, and the inter-story heights, h s , are fixed a priori. Instead, the number of macro-modules, n M , the number of modules, n mj , for each macro-module, and, in turn, the total number of modules, n m , vary to generate building models characterised by different extensions of the macro-modules and, more in general, different building heights. Having set the value of the building width, B, buildings characterised by different slenderness ratios, H/B, are obtained. The parameters and the rules that regulate the definition and subdivision of the design domain are illustrated in the example of Figure 2, which depicts a 68-storey building, subdivided into 3 macro-modules (n M = 3), the lowest one spanning 5 modules (n m1 = 5), while the intermediate and upper ones both cover 6 modules (n m2 = n m3 = 6).

Rules for the Discretisation of the Design Domain
Given the definition and vertical subdivision of the design domain, the rules for the creation of the pattern require the preliminary definition of the pattern unit, i.e., the module. As shown in Figure 3, the single module, m j , within the j-th macro-module, M j , represents the horizontal fascia covering the full width of the building façade and spanning multiple floors. The module height, h mj , is given by h mj = n s,mj ·h s , with n s,mj number of storeys of the single module, and h s inter-storey height. The height of the j-th macro-module, H Mj , is given by H Mj = n mj ·h mj , with n mj already defined as the number of modules. For the sake of simplicity, in Figure 3, two different reference systems are defined on the building façade, i.e., a global system of coordinates (X, Y), and a local system (x, y), referred to the single module. For example, the mid-height of the lowest module in the j-th macro-module has local ordinate y = h mj /2 and global ordinate Y = Y Mj−1 + h mj /2, with Y Mj−1 the distance between the top of the j-th−1 macro-module and the base of the building. The geometrical discretisation of the single module is defined by diagonals, which create a sequence of rhomboid shapes, made by superimposing two triangle units, base-to-base. Since the diagonal pattern is assumed doubly symmetric within each module (Figure 3), the algorithm starts from the definition of the diagonals in one quarter of the module and then mirrors the diagonals with respect of the two axes of symmetry. The discretisation of the relevant macro-module is then obtained by simple replication of the module along the vertical direction. The rules for the definition of the number and slope of diagonals within a module are established starting from the parameters a ij in Figure 4, which define the horizontal distance between the end points of the i-th diagonal (of the generic module within the j-th macro-module), and work as sliders. Starting from the lowest module of the j-th macro-module and exploiting the double symmetry of the module, the algorithm generates the geometry of the triangular units from the left edge to the mid-line of the building facade, namely within one quarter of module (Rules 2.1 and 2.2 in Figure 4). Then, the geometrical layout is mirrored once with respect to the vertical axis, and once with respect to the horizontal axis, to generate the entire module (Rule 2.3 in Figure 4), which is replicated along elevation to cover the relevant macro-module (Rule 2.4 in Figure 4). Finally, all macro-modules are stacked along elevation (Rule 2.5 in Figure 4).
It is interesting to focus on Rules 2.1 and 2.2. They describe the geometry and the possible variation of the triangular units in the single module. It is obtained by means of sliders that control the horizontal distances, a ij , between the diagonals' end points P ij = (x ij , y ij ) (Rule 2.1 in Figure 4). The first end of the first diagonal is not a slider, since it is fixed and defined by local coordinates (0, h mj /2). The other points P ij = (x ij , y ij ) work as sliders, moving on one of the horizontal lines at y = 0 or y = h mj /2, thus varying the abscissas and, in turn, the slopes of diagonals. The parameter a ij is given by Equation (1): It can also be expressed by Equation (2): with i = 1, . . . , n dj /2 and n dj the number of diagonals covering the module. Therefore, the slope of the i-th diagonal in the j-th macro-module θ ij is given by Equation (3) (Rule 2.1 in Figure 4): and the length L d,ij of the i-th diagonal of the j-th macro-module can be derived by Equation (4): The number of diagonals, n dj /2, to be included in the half-width of the building façade is governed by the sum of the distances a ij , i.e., ∑ n dj /2 i=1 a ij , which should be exactly equal to B/2. This is equivalent to state that the abscissa of the end point of the innermost diagonal should be exactly equal to B/2 (Rules 2.2 in Figure 4); if it is greater than B/2, then the algorithm rejects the diagonals' arrangement and moves the sliders to obtain ∑ n dj /2 i=1 a ij = B/2. Within the algorithm, the user should define one of the following: the range of variation for the sliders, the range of variation for the diagonals' slope, or the maximum number of diagonals. The three choices are geometrically interrelated. Setting the range of variation for a ij leads to a definite range of the number of diagonals and, depending on the module height, to a range of θ ij . The most straightforward approach is to restrain the range of the diagonals' slope, since it accounts for both structural logics and considerations on constructional feasibility. Therefore, considering that θ ij should vary between θ ij,max, and θ ij,min (e.g., 45 • and 85 • ) and knowing the module height h mj and the number of storeys in the single module n s,mj (e.g., between 2 and 10), a range for a ij can be preliminarily obtained as a function of h mj (i.e., of h s and n s,mj ), which, in turn, determines the range for the number, n dj , of diagonals. Hence, the parameter a ij varies between a minimum and maximum value, i.e., a ij,min, and a ij,max , according to the Equation (5): where h mj can be expressed as: h mj = h s n s,mj .
Once the discretisation of the macro-modules is done, the algorithm defines the connection between two successive macro-modules. Since the module geometry may change from one macro-module to the other, the number and slope of the diagonals characterising two stacking macro-modules are usually different. In such layouts, the diagonals' ends at the interface between the two macro-modules are staggered, as shown in the example of Figure 5, thus the continuity of the diagrid structure might be undermined. To overcome this problem, potentially arising according to the generation strategy, specific rules are defined in Figure 6 for inserting a special module (i.e., the upper module of the macro-module) which works as a transition belt between the macro-modules. In particular, the first rule identifies the points that should be connected, i.e., the points with maximum ordinate of the lower module and the points of minimum ordinate of the upper module, which are characterised by abscissas offset from each other (Rule 3.1 in Figure 6). The second rule joins the corresponding points of the upper and lower half modules, from the middle to the edge of the module (Rule 3.2 in Figure 6). The third rule inserts diagonals connecting the points of the upper and lower modules located in offset positions, always going from the inner to the edge zone of the module (Rule 3.3 in Figure 6). Finally, the fourth rule mirrors the constructed diagonals, to cover the entire module (Rule 3.2 in Figure 6). It is interesting to note that, already in this phase of geometric design, the rules of shape grammar are able to guarantee the generation of structurally acceptable solutions. An additional aspect dealt with by the generative grammar is the construction of the tapered chamfering of the building corners (bird mouth profile), arising due to the triangulated pattern and lack of corner columns (Figure 7). For this aim, specific scripting is created, which assumes considerable importance in the generative phase, since it redefines the volume of the building, and, in turn, the design domain.

Construction of the Structural Model and Cross-Section Design
Once the geometric model of the building is obtained, the structural model is created and analysed. The structural model is built (block b in Figure 1) by assigning: beam elements to diagonals and floor lines, external restraint conditions for the building model (globally fixed at the base by means pinned supports applied at the ends of the base diagonals), interior constraint conditions (bending moment releases at the end of diagonals) and vertical and horizontal loads. The phase of assessment of structural performance is carried out (block c in Figure 1) by means of: structural analysis, sizing of diagonals' crosssections, check of global top drift and output processing in terms of: top displacement, D top , drift along elevation, D, members' strength demand to capacity ratio (DCR), diagrid structural weight, W, and inter-storey drift ratio (IDR).
The sizing of the diagonal cross-sections is carried out through an iterative optimisation process implemented in the component Optimize Cross-Section of Karamba [36,37]. The iterative process consists of selecting, for groups of structural elements previously defined by the user, the smallest cross-section that guarantees the strength or stability requirement, within a set of user-defined cross-sections, sorted in ascending order of size. In particular, the algorithm starts assigning the first item of the cross-section set to each group of elements and computes the DCR value for each element of the group. If there is an element with DCR larger than one, then the algorithm assigns the next section of the set and stops when the first section that guarantees the strength requirement is found. The DCR values are computed as the ratios between the axial force in the structural member and the relevant yielding or buckling load, according to Eurocode 3 [38], as defined in Equation (6): where N ed is the axial force acting in the diagonal (positive for tension, negative for compression), and N rd and N b,rd are the relevant axial and buckling strengths, respectively [38]. Once this local check is satisfied, the building top drift (D top ) is verified against the design value (D top,lim , usually assumed equal to H/500); then, if necessary, the selected cross-sections are adjusted to satisfy the global drift requirement.

Pattern Optimisation
The last phase of the structural grammar, which in fact involves all the previous ones, concerns the sequential generation of several patterns and the selection of the optimal one by means of a topology optimisation process. Within the process, patterns are generated according to the shape grammar defined in Section 2.1, by simply varying the parameters appointed as a ij (Figure 4) that define the distances between the end points of diagonals in the single module. The phase of cross-section sizing, described in Section 2.2, is fully integrated into the pattern generation process so that each potential pattern is evaluated with the diagonal cross-sections optimally sized. In this study, the optimisation process, based on genetic algorithms, aims to obtain the diagrid pattern characterised by the minimum structural weight, W.
The optimisation problem is stated in Equation (7): with variables : a ij = h s ·n s,mj 2· tan(θ ij ) subjected to : a ij,min ≤ a ij ≤ a ij,max ∑ n dj /2 i=1 a ij = B/2 for i = 1, . . . , n dj /2 and j = 1, . . . , n M with: γ s steel weight, n M number of macro-modules , n mj number of modules in the j-th macro-module, L d,ij and A ij length and cross-section area of the i-th diagonal, n dj number of diagonals and a ij horizontal distance between intersection points of the i-th diagonal. The j subscript identifies quantities in the single module of the j-th macro-module.
The only variables in the pattern optimisation process are the parameters a ij . By varying a ij , the length of diagonals, L d,ij , and the number of diagonals are directly modified, while the cross-section area A ij changes as a consequence of the pattern modifications. As indicated above, the values that the variable a ij can assume are implicitly restrained by the Rules 2.1 and 2.2 ( Figure 4 and Equations (1)-(5)).
No constraints concerning the structural performance, in terms of strength and stiffness design requirements, are included in the definition of the optimisation problem, since for each population generated by the genetic algorithm (GA), the cross-section sizing of the diagonals is carried out through the Karamba component Optimize Cross-Sections.
It is worth observing that the vertical subdivision of the design domain into macromodules and modules also affects the pattern and the consequent structural behaviour of the tall building model. However, in this study, both the number of macro-modules and the number of modules in each macro-module are set by the designer at the beginning of the process to reduce the space of investigation. Therefore, only the number and slope of diagonals (and, in turn, the diagonal cross-sections) vary in each generation according to the shape grammar.
The genetic algorithm employed is implemented in the component Galapagos of Grasshopper and it is based on the principle of natural selection [34,39]. In particular, the basic steps of the automatic random generation algorithm, reported in Figure 8  In this study, the process stops when no progress is made for a specified number of generations, defined by the parameter Max Stagnant, here set to 50.

Building Model and Structural Solutions
A tall building model is considered as an example of application of the proposed procedure. The building model is the same as the one adopted in previous studies, in order to compare the structural solutions of this study to counterparts obtained through other approaches [27,[31][32][33]40]. The building has a prismatic shape, with plan of 54 m × 54 m. The lateral load resistance is entrusted to the diagrid façade, while gravity loads are carried by the diagrid and a central service core structure, as a function of the respective tributary areas. Structural patterns, appointed as TO (topology optimisation), are generated according to the proposed procedure for three building models, characterised by the same plan dimensions and different heights, H, thus obtaining different slenderness ratios, H/B, namely: H/B = 3, 5, 6.6. Once the optimal TO pattern for each H/B is selected, the structural weight and performance indexes are evaluated and compared to counterparts obtained for diagrid and diagrid-like structures of previous studies, in order to validate the procedure and to assess the potential advantages of the TO patterns. The patterns considered for comparison are: Regular (RE) diagrids and Principal Direction Inspired (PDI) patterns. The RE patterns are characterised by uniform angle, namely 60 • for H/B = 3, and 70 • for both H/B = 5 and H/B = 6.6, which are the diagonal angles providing the minimum weight for the relevant slenderness ratios [40]. The PDI patterns are characterised by diagonal slopes that vary along both elevation and width of the building façade, according to a procedure proposed by the authors in Reference [31] for mimicking the principal stress trajectories of cantilever beam equivalent to the building. The PDI and TO patterns are both divided into three macro-modules, M1, M2, M3, each containing a certain number of modules, n m1 , n m2 , n m3 (Figure 9). In order to visually depict the breadth of the design space explored through the generative process, in Figure 10, the solutions generated and analysed for the slenderness ratio H/B = 6.6 are shown utilising a parallel coordinate plot. The plot provides the number and slopes of diagonals in the single module of each macro-module characterising the various solutions. Among them, it is possible to select the best ones, as shown in Figure 11, which contains the solutions characterised by diagrid weight less than 80% (yellow lines) and 50% (blue lines) of the average value, W av , calculated considering all solutions.  In Figure 12, various generated patterns are presented to show the amount of diversity that can be explored with the proposed approach, that, even with macro-modules and modules fixed a priori, still provides a wide choice from which the designer can select the solution, also considering non-structural aspects, not explicitly contemplated in the optimisation process. In fact, it is not straightforward to account for qualitative aspects during the optimisation processes, such as exterior appearance, daylight supply, distances between the diagonals for functional or aesthetic reasons, etc. [16]. Therefore, a wide class of optimised solutions, properly ranked in terms of structural efficiency, offers the possibility of integrating non-quantitative criteria in the selection process, and eventually, prioritising one of them even at an aware, slight sacrifice of efficiency. The solutions selected at the end of the generative and optimisation process and indicated as TO patterns are the ones characterised by the minimum diagrid weight for each slenderness value and are depicted in Figure 13, together with the regular diagrids (RE) and the PDI patterns, adopted as benchmark structures in the comparisons. From a first visual appraisal of the TO patterns (Figure 13), it can be observed that the diagonals are steeper and denser at the edges of the building façade and become less inclined toward the centre. This distribution allows for satisfying the different demands of axial strength due to overturning moment along the width of the building façade, and contemporarily maximises the bending stiffness of the structure. Furthermore, it can be observed that for H/B = 6.6, the PDI and TO patterns are quite similar and both governed by stiffness design criteria. Indeed, analyses and applications in Reference [31] have shown that the PDI pattern exhibits optimal performance and high efficiency for slender buildings. It is worth observing that the proposed design strategy has generated a pattern very close to the PDI on the basis of simple geometric rules, without any underlying mechanical concept. On the other hand, the TO patterns for H/B 3 and 5 show a less legible trend of the diagonal angles and are both governed by the local strength criterion rather than stiffness, thanks to the inherent stiffness gained by means of the optimal members' arrangement.

Weight Comparison and Performance Assessment
In Figure 14, the TO patterns are compared to RE and PDI counterparts in terms of unit structural weight, i.e., the total weight of the structural steel utilised for the pattern solution divided by the total floor area of the building. The graph indicates that: for H/B = 3, the TO pattern provides the minimum weight, while the PDI and RE patterns have similar, slightly larger weight, for H/B = 5, all patterns provide almost the same weight, and for H/B = 6.6, the TO and PDI patterns are characterised by similar weights, rather lower than the RE pattern counterpart.  Figure 15 depicts the normalised drift along elevation for all the analysed patterns. Similar drift trends of TO and PDI patterns can be observed at increasing H/B, with deformed configurations that closely recall the flexural behaviour of a vertical cantilever beam under lateral load. In particular, the almost perfect overlapping of the drifts along elevation obtained for the TO and PDI patterns in the case of H/B = 6.6 is a result somehow expected, considering the strong similarity of the patterns observed in Figure 13. Looking at H/B = 3, the drifts of the TO pattern are larger than the PDI and quite close to the RE counterparts. Recalling Figure 14, that for H/B = 3 shows weights of the RE and PDI patterns larger than the TO counterpart, it can be deduced that the minor stiffness provided by the TO pattern testifies that the proposed design strategy correctly accommodates the demand of both strength and stiffness, avoiding unnecessary stiffness at the expense of weight increase.  Figure 16 shows the values of maximum DCR, DCR max , and D top /D lim for each pattern, which allow to guess the predominant design criterion between stiffness and strength, by varying the pattern type and the slenderness ratio. In order to jointly assess performance and weight of all structural patterns, two comparative efficiency parameters that correlate the structural weight respectively to the stiffness and strength, are suggested in Equations (8) and (9), respectively: where: W min,p is the minimum among the weights derived for the analysed patterns, W is the weight of the current pattern, D top,min is the minimum among the top displacement derived for the analysed patterns, D top is the top displacement of the current pattern, DCR av is the average value of the diagonals DCRs of the current pattern.
To fairly compare the different patterns, the relative strength efficiency ratio (E r,STR ) and the relative stiffness efficiency ratio (E r,STF ) have been defined. In particular, for a specific pattern, these relative efficiency ratios are given by the efficiency parameter (E STF or E STR ) normalised to the relevant maximum value (E STF,max or E STR,max ) obtained among the patterns considered for each slenderness ratio. In Figure 17, these relative efficiency ratios are reported, together with a global efficiency parameter E, given by the product of the two ratios E r,STF and E r,STR . This comparison confirms the ability of the proposed strategy to provide the optimal solution according to the dominant design criterion. It can be observed that the TO patterns are characterised by efficiency parameters always larger than the RE and PDI counterparts, though very close to the values of the PDI patterns for slenderness ratios 5 and 6.6. This comparison further emphasizes the ability of the proposed strategy to provide the optimal solution according to the dominant design criterion, namely according to the slenderness ratio.
Finally, an additional parameter to be monitored in tall building design is the Interstorey Drift Ratio (IDR), given by the relative horizontal displacement between two consecutive storeys divided by the inter-storey height. This parameter is not explicitly taken into account in the design process, but it has been evaluated a posteriori (Figure 18) by considering a limit value equal to 1/200. From the results given in Figure 18, it can be observed that some IDR exceed the limit value, in particular at the upper storeys: this feature generally appears in all structure typologies characterised by a primary bracing system with diagonals or mega-diagonals that span over multiple floors. Indeed, concentrated lateral loads act in the triangular module along the diagonal length, where intermediate floors meet the diagonals. Therefore, while the overall lateral stiffness of the building structure strictly depends on the axial stiffness of the diagonal members, the lateral stiffness within the module height is related to the flexural stiffness of the diagonals, which may not be sufficient to limit the inter-storey drifts. This problem has already been analysed in Reference [33] and solved by proposing (i) a procedure to determine the need of introducing a secondary bracing system (SBS), and (ii) the design criteria for the consequent SBS member sizing. The problem has also been addressed by a structural optimisation process developed for the design of the diagrid, which explicitly assumes a constraint condition on the IDR maximum value [27].

Conclusions
In this paper, a generative design strategy for the topology optimisation of tubular diagrid tall buildings, based on the construction of a structural grammar, was proposed. The structural grammar was specifically developed for generating the geometry of the pattern and sizing the relevant structural members. In particular, the generation process allows for varying the density, the slopes and the number of diagonals along the height and the width of the building façades. The peculiarity of the proposed grammar is that several patterns are generated within the workflow, by automatically changing the parameters that define the location and slope of diagonals, and the most efficient pattern was finally selected by a topology optimisation strategy based on genetic algorithms.
The procedure proposed here was formulated for tall buildings with prismatic form, however, it is characterised by a high level of versatility and can be easily extended to diagrid tall buildings of any size and geometry. The proposed structural grammar is able to generate patterns incorporating the specific language and aesthetics of diagrid that, though simple in outline and undoubtedly reflecting inherent structural stability and efficiency, has almost endless morphological potentials [42]. Furthermore, the same framework can be utilised for defining grammar able to generate different types of patterns, such as hexagonal grids [43,44] or Voronoi diagrams [45,46].
Applications of the procedure to structural models characterised by different slenderness ratios and consistent comparisons with literature works showed that the patterns generated and optimised employing the proposed procedure are characterised by lower weight and better performance than the other ones, for different slenderness ratios, whichever is the predominant design criterion between stiffness and strength.
The proposed approach generates structural patterns characterised by significant geometrical diversity, thus providing a wide choice of optimised solutions, properly ranked in terms of structural efficiency, which allows the designer to integrate non-quantitative criteria in the selection process, and eventually, prioritise one of them even at the expense of an aware, slight sacrifice of efficiency.
It is worth observing that patterns very similar to the ones obtained by mapping the stress lines automatically emerged from the application of the proposed generative strategy, particularly for slender buildings. This result, while it confirms the current understanding of structural shaping of structures for tall buildings, also suggests the fascinating possibility of using such strategies as design knowledge acquisition tools [18,19].