Weaving Architectural Façades: Exploring Algorithmic Stripe-Based Design Patterns
Weaving Architectural Façades: Exploring Algorithmic Stripe-Based Design Patterns
Weaving Architectural Façades: Exploring Algorithmic Stripe-Based Design Patterns
1,2
INESC-ID, Instituto Superior Técnico, Universidade de Lisboa
1
ines.caetano@tecnico.ulisboa.pt
2 antonio.menezes.leitao@tecnico.ulisboa.pt
1 Introduction
Architecture, society, and its culture, have always been tightly connected, influencing
each other and accompanying the cultural and technological trends. The Arts and
Crafts movement is one good example: combined with recent computation-based
approaches, the different traditional art techniques are becoming increasingly
important in architecture, e.g., glass-blowing methods [1], bamboo structures [2],
folding and knotting [3], wreath designs [4], ceramics [5], wall paper design [6], and
weaving techniques [7] [11]. Regarding the latter, it has a visible promising
application in the development of geometrical patterns for architectural screens and
façades and, in fact, architects have explored the tectonic expressivity of weaving to
achieve both aesthetical and performance design goals. This trend has been also
supported by the latest computation-based design approaches, including Algorithmic
Design (AD), which (1) promoted the generation and manufacture of façade designs,
(2) facilitated the modeling of more complex solutions, and (3) empowered
creativity, namely in terms of design expressiveness.
Despite previous efforts, weaving design strategies are still largely unexplored,
particularly those related to AD. In this paper, we address the creation of weaving
façade designs by using a novel AD approach suitable for architects with
programming experience. The proposed approach provides specific support to: (1)
devise algorithms that emulate weaving techniques, (2) combine the different
envisioned algorithms to efficiently express weaving patterns, (3) embed optimization
algorithms and rationalization techniques to assess the fabrication feasibility and
refine the fabrication process of the produced weaving designs, and (4) apply the
approach to algorithmically describe building envelopes.
Generally, most geometric patterns on façades result from the repetition of a certain
shape or element, which can be kept unchanged along the façade domain or can be
transformed regarding its shape, size, etc. In some cases, the distribution of these
elements along the façade results from its discretization in two directions, which
results in the repetition of the elements along both dimensions of the façade (see Fig.
1A). In others, their distribution derives from the façade discretization in a single
direction, which means that the elements are repeated in only one of the dimensions,
being therefore continuous in the other (see Fig. 1B). In this paper, we address the
algorithmic generation of the second case. To this end, we start by focusing on the
mathematical representation of this type of geometric patterns with respect to:
Considering that most weaving patterns are composed of stripe-shaped elements, i.e.,
elements that are continuous in one of the surface dimensions but discrete in the other,
the proposed GS focuses on the mathematical development of such elements to then
create weaving patterns. In the following two sections, we explain the mathematical
strategy behind (1) the creation of different stripe-shaped elements and (2) the
application of geometric transformations to produce multiple weaving patterns.
Currently, we can find several examples of façade designs composed by elements that
are discrete in one of the surface dimensions but are continuous in the other. In this
research, we address the generation of geometric patterns for façades based on such
elements, presenting a GS whose algorithmic structure was designed to consider two
main tasks: (1) the creation of stripe-shaped elements, which we named striped
elements; (2) the application of geometric transformations, especially the
interweaving of elements. The resulting geometry derives from a combination of
algorithms addressing different geometric features.
To make the GS more flexible, it relies on the use of anonymous functions, i.e.,
functions that do not have a name, and Higher-Order Functions (HOF) [19], i.e.,
functions that receive functions as arguments or return functions as result. Therefore,
to mathematically describe each continuous element, the GS provides a function
(stripe) that receives a set of other functions as input, each one representing a
different geometric feature: (1) the stripe central axis (Saxis), (2) the stripe section
shape (Ssection), and (3) the transformation to apply (Stransformation). Equation 1 represents
this HOF.
Note that the stripes obtained in this example are regular, i.e., they share the same
curvature as the surface because no transformation was applied to them. In the
following section we explore the application of transformations to produce different
weaving patterns.
Fig. 2. Top: the surface discretization into a matrix of points. Bottom: the generation of
vertical stripes A. selection of a matrix column; B. creation of a stripe axis at each column;
C. generation of the stripes.
3.2 Geometric Transformations
Bending
As the name suggests, the Tbend algorithm controls the wavelike movement (bending)
of each stripe and it receives two inputs:
and
The result is a continuous pattern composed of three types of stripes, each one
resulting from one of the transformations in Mbend, whose application follows the
sequence .
To address different types of bending movements, the GS includes algorithms to
handle multiple wavelike effects, which receive as parameters an undulation
amplitude ( amplitude), phase ( phase), and frequency ( frequency). In case the amplitude,
phase, and frequency are fixed values, the wavelike effect is constant throughout the
surface domain. On the other hand, in case one or more of these parameters is
changeable, the wavelike movement therefore changes along the façade surface: e.g.,
when one of the parameters (1) increases or decreases according to the horizontal,
vertical, or both surface directions, or (2) varies according to a certain mathematical
rule. Fig. 1B is an example of a continuous variation of both phase and frequency
parameters : observing closely, we realize that the initial
curvature of each balcony changes from floor to floor, as does its frequency.
To better understand the use of these algorithms, we develop, in a step-by-step
process, a conceptual example resulting from their application. Consider a straight
surface horizontally divided in stripes (Fig. 3A-B) where we want to apply a
bending transformation affecting only alternated stripes. This means that, on each pair
of stripes, the first one must remain unchanged, while the second one suffers a
transformation. To treat both the same way, we introduce the identity transformation
function ( that does not change its argument, i.e., . In mathematical
terms, we need the Tbend algorithm to receive:
1. a row vector containing two types of bending transformations, one for the odd
stripes and one for the even ones:
Mbend
In practice, as we are dealing with an alternating sequence, it means the shape of the
odd stripes, i.e., the first, third, fifth, etc., are affected by the identity transformation
algorithm ( , whereas the even ones are affected by the 1 algorithm (see Equation
4). Since an function returns the value given as its argument, in this case, its use
will return the original stripe shape, creating no bending transformation as a result.
This means that the stripes to which this algorithm was applied were kept unchanged.
In contrast, the stripes affected by the algorithm 1 become undulated (see Fig. 3C).
Fig. 3. The application of both stripe and Tbend functions: A. The initial surface; B. Creation of
horizontal stripes; C. Tbend algorithm with one transformation; D. Amplitude increasing with
the direction; E. Amplitude increasing with the horizontal direction; F. Tbend algorithm
with two transformations.
Now, imagine that the 1 algorithm is combined with another algorithm that controls
the bending amplitude value according to the position along the façade domain. Such
algorithm is implemented in the GS as intensity, in which intensity is a factor
varying between 0 and 1. To make the amplitude value vary along the façade
we need to combine the algorithm with the algorithm, which selects the ordinate
value of a given coordinate: . The result is a new algorithm, the , which
is implemented as follows: . In practice, the result of
combining both 1 and algorithms is an alternation between straight stripes and
bended stripes, whose undulation amplitude increases with the façade height (see Fig.
3D). Conversely, to increase the bending amplitude with the surface length, as shown
in Fig. 3E, we need to combine the algorithm with the algorithm instead, which
is implemented in the GS as , thus obtaining the algorithm.
Finally, in case we exchange the algorithm for another bending transformation,
the stripes that previously were straight, now become undulated according to the
received parameters. Fig. 3F and Equation 5 illustrate this last example.
(5)
Weaving
This section focuses on the implementation of weaving transformations in the GS.
Also known as woven structures, these transformations are based on stripes going
over and under each other without knotting [20]. Currently, we can find several
buildings whose façade designs are inspired by the traditional weaving techniques
(Fig. 4).
At this stage, one of the main challenges was to establish the best strategy to
mathematically represent different weaving types in the weaved matrix. After studying
several possibilities, we decided to follow the approach of Grünbaum and Shephard
[21] to represent fabrics: using a 2D squared regular mesh to represent the different
weaving patterns, where each squared-unit can be colored black, meaning the stripe
along the vertical direction passes over the stripe in the horizontal direction, or
colored white, meaning the opposite (see Fig. 5).
Fig. 5. Left: a sketch of the fabric; Right: the conceptual representation of the fabric [22].
Fig. 6. A weaving movement created using the Tweaved algorithm: A. the obtained model in
Rhinoceros 3D; B. the weaving pattern conceptual representation.
4 Evaluation
To use the GS, the user can simply select the weaving type to use, which corresponds
to a weaved matrix, and, then, combine it with the Tweaved algorithm. As a result, this
not only accelerates the design exploration of weaving patterns, but also facilitates the
generation and evaluation of a wider range of weave-based solutions. Fig. 7 shows a
set of weaving patterns resulting from different weaved matrices.
Additionally, to augment the visual expression of the weaving patterns explored,
the Tweaved algorithm allows the use of different colors/materials for both vertical and
horizontal stripes. To this end, the Tweaved algorithm was designed to support an
additional parameter containing this information ( colors), which corresponds to a pair
of matrices: a column vector with the colors/materials of the horizontal stripes and
another one regarding the vertical stripes. As an example, the models in Fig. 8 result
from two different colors:
([ ], [ and
Fig. 7. Three weaving patterns available in the GS: A. chess, B. double-chess, and C. triple-
chess.
Fig. 8. The same weaving pattern resulting from two different colors matrices and generated in
two different CAD tools: Rhinoceros 3D and AutoCAD.
Note that the left-side model was generated in Rhino and the right-side one in
AutoCAD. This, therefore, demonstrates the independence of the GS regarding
particular CAD tools. In fact, one advantage of using a mathematical description is
that it can be easily implemented in different AD systems. Regarding Fig. 9, the set of
examples demonstrate that the use of different colors/materials increases the visual
expression of the different weaving patterns available in the GS.
Another advantage of the GS is the automatic adaptation of the weaving pattern
being explored to the different design changes. Fig. 10 proves this ability by
presenting a set of design solutions resulting from the same algorithm: the same
weaving pattern is used with a varying number of stripes or applied on surfaces of
different geometries.
Fig. 9. Different weaving patterns available in the GS.
The GS also supports the development of design solutions influenced by their own
performance. To this end, each design solution must be subjected to an analysis
process regarding a fitness criterium and, then, the results obtained must be used to
inform the generation of the next design iteration. In practical terms, this scenario
requires the combination of the algorithms that create different weaving patterns with
a set of analysis and optimization algorithms.
In this section, we focus on the creation of weaving design solutions based on their
natural lighting illumination performance. Thereupon, we added to the GS an
algorithm to control the fraction of opaque vs. transparent areas of the weaving
patterns being created. This algorithm allows the architect to establish the weaving
percentage of opaque area ( opaque) in addition to the previously mentioned
parameters: surf, stripes, stripes, amp, and weaved. This results in a set of visually
diverse design solutions that simultaneously respect the imposed percentage. Equation
7 conceptually describes the opaque algorithm, in which surf, stripes, stripes, amp, and
weaved, are the same parameters as in Equation 6 and the opaque is the parameter that
controls the fraction of opaque area.
To evaluate the indoor illumination level that each variation promotes, we apply the
opaque algorithm to generate a set of design solutions deriving from:
Then, the algorithm automatically adjusts the width of the stripes to match the given
opaqueness values. Fig. 11 presents some of the solutions obtained: the values of both
stripes and stripes parameters vary between 10 and 20, whereas the opaque parameter
ranges between 0.15, 0.55, and 0.95.
Despite the simplicity of this example, the use of algorithms similar to the opaque
promises to be quite useful for the optimization of weave-based façade solutions.
Additionally, the application of such algorithms can be done during the entire design
process, i.e., from conceptual design stages to more advanced and detailed ones. More
algorithms of the same type are being developed to further complement the GS,
addressing different design analysis and optimization strategies, as well as
performance criteria.
Fig. 11. A set of optimized weaving patterns: the top solutions have 10 10 stripes and the
bottom ones have 20 20 stripes, and each column matches a percentage of opaque area - 15%,
55%, and 95%, correspondingly.
Fig. 12. Left: Discretization process of a façade weaving pattern based on a piedpull pattern;
Right: a set of different façade modules resulting from different weaving patterns.
Regarding the third issue, the GS provides the algorithm weaved. This algorithm is
affordable design solution. Since the number of stripes is the design parameter that
has the strongest impact on the solution s affordability, the available algorithm
focuses mainly on balancing this design property. To better explain this process, we
develop a simple façade pattern composed by 10 horizontal and vertical stripes and
we use a type of weaving pattern whose matrix has a 4 4 size. As the corresponding
façade module has also a size of 4 4 stripes, the resulting pattern requires the use of
2.5 2.5 modules in both directions. This means manufacturing two types of pieces: an
entire module and half of a module, which is unnecessarily expensive. In fact, if the
pattern had 12 12 stripes instead of 10 10, it would allow us to use 3 3 modules and
avoid the manufacturing of half modules. This example is illustrated in Fig. 13 (left
side).
Besides the simplicity of this example, it demonstrates that a simple change in the
number of stripes facilitates the manufacturing process. Fig. 13 (right side) illustrates
the application of the weaved algorithm in a façade design inspired by the piedpull
weaving pattern with a varying number of stripes. Note that there is a range of values
for which the algorithm produces the exact same solution, because it is considered the
most affordable one, e.g., for the range between 10 to 13, the algorithm suggests a
solution with 12 stripes, for the range between 14 and 17, it suggests a 16 stripes
solution, and so on.
Fig. 13. On the left: Rationalization process of a weaving pattern. On the right: The application
of the weaved algorithm according to the number of stripes given, the algorithm returns the
solution that is more affordable to fabricate.
5 Conclusion
Architecture has always been influenced by society and its culture. By combining the
Arts and Crafts movement with recent computation-based approaches, the different
traditional art techniques became increasingly usable in architecture. Within these
techniques, this paper focused on traditional weaving processes due to their promising
application in the development of patterns for architectural screens and façades.
As the adoption of weaving patterns in architecture has been little explored,
especially when considering Algorithmic Design (AD) approaches, this paper
addressed the creation of weave-based façade designs by using an AD approach. The
proposed approach was implemented in an algorithmic-based Generative System (GS)
that provides algorithms to: (1) emulate different types of weaving patterns, (2)
efficiently apply such patterns in the development of building façades, (3) optimize
the obtained designs regarding a fitness criterion, and (4) embed rationalization
techniques to both assess and refine the fabrication feasibility of the produced
weaving designs.
In the paper, we described the GS algorithmic structure and we explained the
application of the different types of algorithms. To this end, a set of simple examples
were developed to evaluate the suitability of the GS for creating different weaving
façade patterns. As a result, the set of examples ended up evidencing the GS
flexibility by proving its ability to support the systematic application of design
changes. Also, the examples demonstrated the GS ease of use, as the user takes
advantage of a large variety of algorithms specially designed for the creation of
different weaving façade patterns. Furthermore, they also proved that the use of the
proposed GS reduces the time spent on the programming task, while facilitating the
algorithmic resolution of the geometric problems that typically emerge during the
development of weave-based patterns.
Moreover, the GS ability to combine both geometric and simple optimization
algorithms was evaluated. An example was developed, which uses optimization
algorithms to adapt the geometric characteristics of the weaving pattern to meet a
given fitness criterion. This is a promising research area that we plan to further
develop by implementing additional optimization algorithms within the GS.
Finally, the potential of the GS for integrating rationalization strategies was also
illustrated by (1) discretizing a set of façade weaving patterns, while creating the
corresponding façade modules/panels, and (2) establishing a balance between the
intended design and its fabrication viability. Nonetheless, it already denotes the
relevance of such methods in designing weave-based façade patterns. We will also
consider this research area in our future work, extending the algorithms available in
the GS to support the rationalization of curved surfaces, while considering other
constructive features that have an impact on the manufacturing process.
References
1. -
Glass Blowing and Automated Digit
Comprehensive Design: Speculative Counterculture, Proceedings of the 19th International
Conference on Computer- Aided Architectural Design Research in Asia CAADRIA 2014,
2014, pp. 389 398.
2. J. M. H ting Computational Design and Traditional Crafts: A Reinvention of
the 22nd
International Conference of the Association for Computer-Aided Architectural Design
Research in Asia (CAADRIA) 2017, 2017, pp. 437 445.
3. -Piece Weaving: Reconfiguring folding and knotting algorithm in