RECTANGULAR FLOORPLANS WITH BLOCK SYMMETRY
SHIKSHA SHIKSHA1, KRISHNENDRA SHEKHAWAT2, SUJAY
RASTOGI3 ,AISHWARYA KONDAVEETI4 and OSE´ P. DUARTE5
1,2,3,4
Department of Mathematics, BITS Pilani, Pilani Campus,
333031, India
5
SCDC, School of Architecture and Landscape Architecture, The
Pennsylvania State University, United States
1
p20210044@pilani.bits-pilani.ac.in, 0000-0003-2603-9862
2
krishnendra.shekhawat@pilani.bits-pilani.ac.in,
0000-0002-3408-7912
3
f20190741@pilani.bits-pilani.ac.in, 0000-0002-2633-5429
4
f20170697@pilani.bits-pilani.ac.in, 0000-0003-1458-9103
5
jxp400@psu.edu, 0000-0002-3826-3987
Abstract. The principle of symmetry has beneficial applications in
architecture. Symmetry mainly creates order and equilibrium in
complex designs. This study presents a graph theoretic approach for the
automatic generation of rectangular floorplans with block symmetry.
Existing graph theoretical approaches focus on the floorplan’s outer
boundary design, different room shapes, and spatial arrangements. This
paper introduces block symmetry as a new concept in floorplan
generation. Based on this concept, an algorithm is proposed for
generating a rectangular floorplan with rectangular blocks for a given
adjacency graph if one exists. Further, suppose two blocks are required
to be symmetric, i.e., of equal size. In that case, an optimisation
framework is used to equate the widths and heights of the blocks,
resulting in the generation of a rectangular floorplan with block
symmetry. A GUI is provided for users to perform the automatic
generation of floorplans.
Keywords. Symmetry, Floorplans, Graph Theory, Algorithm, Linear
Optimisation
1. Introduction and Related Work
Symmetry has historically been one of the most important and widely used principles
in architectural design. In architecture, symmetry is regarded as “a unifying concept”
(Hargittai and Hargittai, 1994). It communicates a sense of integrity as well as balance
and stability. In historical architecture, symmetry is used extensively throughout all
cultures. For instance, the Pantheon in Rome exhibits multiple symmetries common in
architecture (Williams, 1999). The great Indian architecture, the Taj Mahal, is a perfect
example of bilateral symmetry on a central axis. In bilateral symmetry, two halves of a
design are identical along an axis.
HUMAN-CENTRIC, Proceedings of the 28th International Conference of the Association for Computer-Aided
Architectural
Design
Research
inON
Asia
(CAADRIA)
2023,
Volume
2023
and1,published
– LEAVE
THIS WHITE
BOX
PAGE01!!–
If it has
moved,
you can 2,
cut391-400.
and paste it©
back
to page
right click onbythethe
Association for Computer-Aided Architectural Design Research in Asia (CAADRIA), Hong Kong.
boundary and choose 'More Layout Options...' and then under 'Vertical', choose 'Absolute position' - 24 cm (below Page).
392
SHIKSHA ET AL.
Symmetry is used most significantly as a design element in the villas of Palladio,
such as Villa Emo at Fanzolo. Stiny and Mitchell referred to it as “the most conspicuous
feature of Palladio’s villa designs” (Stiny and Mitchell, 1978, p. 7). For the past few
decades, researchers have suggested various techniques to generate floorplan designs
concerning historically significant design paradigms. Stiny and Mitchell used a shape
grammar approach for designing a floorplan with Palladian-style room arrangements
(Stiny and Mitchell, 1978). Later, they suggested another shape grammar approach to
generate floorplan layouts resembling the Mughul gardens’ style (Stiny and Mitchell,
1980).
In recent years, a new era of floorplan generation has emerged. Various techniques
for generating floorplan layouts are developed on computers. There has been
significant interest in the automatic generation of floorplans. For example, in 2018,
Xiao et al. (Xiao et al., 2018) presented a graphical approach to design generation
(GADG) to customize existing legacy floorplans by adding or removing a room using
transformation rules. In 2021, Shekhawat et al. (Shekhawat et al., 2021) gave a graphbased application for producing dimensioned rectangular and orthogonal floorplans.
Also, a great deal of research has been published using machine learning techniques
for the automatic generation of floorplans (Wu et al., 2019).
Researchers have developed several approaches to generating dimensioned
floorplans in the last decade. Wu et al. (Wu et al., 2018) used mixed integer quadratic
programming to obtain dimensioned layouts. Upasani et al. (Upasani et al., 2020) used
graph- theoretic tools and linear optimisation to introduce dimensions to a rectangular
floorplan. In 2022, Bisht et al. (Bisht et al., 2022) presented a prototype G2PLAN, it
uses graph-theoretical algorithms and optimisation approaches to generate
dimensioned floorplan that satisfy given adjacency and size constraints. G2PLAN
generates multiple floorplans satisfying the adjacency relations.
In summary, researchers have developed several techniques for constructing floor
plans using graph theoretic approaches, shape grammar, parametric/generative design,
machine learning, and artificial intelligence. However, the layouts generated in the
literature mainly vary based on the outer boundary design, the room’s shape, adjacency
relations, and spatial arrangements in the floor plan. At the same time, the concept of
symmetry in floorplans has yet to be explored. Symmetry is a powerful design tool as
it helps in unifying different components of a floorplan. Floorplans that need more
stability and a robust organizational structure, such as hospitals, schools, etc., can
benefit from a symmetrical layout.
The concept of symmetry can be examined on many scales, such as bilateral, radial,
cylindrical, chiral, etc. (Williams, 1999). In this paper, we aim to study an entirely new
form of symmetry, i.e., block symmetry. The term block describes a structural unit that
binds together various floorplan elements. A block in a rectangular floorplan F refers
to a subset of all given rooms that forms a rectangular sub-floorplan within the
floorplan. Further, we say two blocks are symmetric if they have same width and height
(see Figure 1(a-c)). Block symmetry shows visual balance and structural integrity in
the floorplan. To accomplish this, we propose a two-step approach to generate a
rectangular floorplan exhibiting block symmetry. The input is taken in the form of an
adjacency graph for which an RFP exists and sets of rooms for which blocks are
required in the floorplan. In the first phase, we propose an algorithm, that produces an
RECTANGULAR FLOORPLANS WITH BLOCK
SYMMETRY
393
RFP with blocks for each given set of rooms. Then, if any two blocks need to be
symmetric, in the next phase, we use an optimisation framework for building blocks
with equal heights and widths for each pair of required blocks. It generates an RFP with
symmetric blocks for the given input with optimized heights and widths for each room.
Figure 1: (a) A biconnected PTPG G, (b) An RFP of G with no block for (2,4,5) and a block for (6,8),
(c) An RFP of G with symmetric blocks for the pairs [(1,7), (3)], [(2,4,5), (8,9,10)]
2. Preliminaries
In this section, we present relevant definitions which are used frequently throughout
this paper.
● Floor plan: A floorplan can be seen as a partition of a polygonal boundary into
rooms. If the polygonal boundary and rooms are rectangular, we call it rectangular
floorplan (RFP). This work is restricted to rectangular floorplans only (see Figure
1(b-c)).
● Graph: To every floor plan, there associates a graph which mainly provides the
neighbourhood of each room. It can be obtained by representing each room as a
vertex and two vertices are joined by a line segment called edge if the corresponding
rooms have a common wall segment (see Figure 1(a)). Mathematically, a graph
consists of two finite sets V (vertex set) and E (edge set). An element of V is called
a vertex/node and an element of E is called an edge. Each edge is a set of one or two
vertices, which are called its endpoint.
The graph associated with a rectangular floorplan has the following characteristics
(refer Figure 2):
(a) The walls of the floorplan cannot overlap or cross one another; hence the
graph has no edge crossings, i.e., it is a plane graph. A plane graph partitions
the plane into faces.
(b) A rectangular floorplan has no empty spaces, so every face of the graph
except the exterior is triangular.
SHIKSHA ET AL.
394
(c) Each room in an RFP is rectangular, so every interior vertex has a degree≥ 4.
Figure 2: (a) An RFP and its associated plane triangulated graph G, (b) A floorplan with empty
spaces and its associated graph with non-triangular faces
Graphs with all these characteristics are known as PTPGs (properly triangulated
plane graphs). It has been proven that an RFP exists for PTPGs with certain properties
(Ko ́zmin ́ski and Kinnen, 1985); hence the input graph for our algorithm is taken as a
PTPG for which an RFP exists.
● Encoded Matrix: For an RFP, an encoded matrix is an m × n rectangular matrix
whose entries represent the rooms of the RFP. The rows of the matrix represent the
horizontal adjacency between rooms, whereas columns represent the vertical
adjacency. An encoded matrix is obtained from an RFP by dividing it using uniform
square grids such that every room covers at least one grid block. In Figure 3(c), an
encoded matrix of the RFP (3(a)) is formed using the grid block of size 1 unit (3(b)).
Figure 3: (a) A rectangular floorplan, (b) Partition of the RFP given in (a) using unit
grid blocks, (c) Encoded matrix for the RFP
3. Methodology
This section illustrates the method to construct a rectangular floorplan exhibiting block
symmetry, i.e., an RFP with symmetric blocks for a given adjacency graph if one exists.
The input is taken in the form of an adjacency graph for which an RFP exists and a list
of tuples. Each tuple contains two sets of rooms for which symmetric blocks are
required in the floorplan. As many tuples as are required can be taken. The sets of
rooms need to be disjoint, as two blocks cannot overlap in the floor plan.
RECTANGULAR FLOORPLANS WITH BLOCK
SYMMETRY
395
Figure 4 shows an input adjacency graph with 12 vertices and a list of required
blocks in pairs. As a worked-out example, this input graph is used to construct floorplan
layout that demonstrates block symmetry. The procedure is divided into two steps:
i. Construction of an RFP with blocks for each given set of rooms,
ii. Construction of symmetric blocks in the RFP for all required pair of blocks.
Figure 4: (a) A given graph G, (b) Pairs of required blocks in an RFP of G
The first step involves the formation of multiple encoded matrices for a given graph.
Using G2PLAN developed by (Bisht et al., 2022), numerous RFPs can be generated
for the given graph. Then multiple encoded matrices are formed from the RFPs. Here,
we propose an algorithm to identify the required RFP among all possible RFPs, i.e., an
RFP with blocks for each set of rooms. In the next step, a modified version of (Upasani
et al., 2020) optimisation framework is used to construct the symmetric blocks in the
RFP for every pair of blocks that need to be symmetric.
3.1. CONSTRUCTION OF AN RFP WITH REQUIRED BLOCKS
The encoded matrix of an RFP is analysed to determine whether it has a block for a
given set of rooms. For a given set of rooms, we say a block exists in the RFP if its
encoded matrix has a sub-matrix whose entries correspond to the rooms of the set. For
example, in Figure 5, the encoded matrix has a sub-matrix for (5,6), while there is no
sub-matrix for (1,2), hence no block in the RFP.
Figure 5: (a) A rectangular floorplan F, (b) The encoded matrix of F
396
SHIKSHA ET AL.
The RFP with blocks has an encoded matrix with a sub-matrix for each block, such
that the sub-matrix entries represent the block’s rooms. Here, we propose an algorithm
that produces the required RFP with blocks for each given set of rooms. Using
G2PLAN developed by (Bisht et al., 2022), numerous RFPs are generated for the given
graph. First, multiple encoded matrices are generated from the RFPs. Using these
encoded matrices as input, our algorithm determines the encoded matrix with required
sub-matrices for each set of rooms and generates the required RFP.
3.1.1. Illustration of Algorithm 1
To determine the required encoded matrix, we initially select one of the encoded
matrices generated from the multiple RFPs. Using the function EmAnalyser()
described in Algorithm 1 (refer Figure 9), we determine whether or not; for a given set
of rooms, the encoded matrix has a required sub-matrix. If there is no sub-matrix for
any set of rooms, EmAnalyser() returns False, and analyses the next encoded matrix.
The procedure is reiterated until an encoded matrix is found with sub-matrices for all
given sets of rooms.
The working of Algorithm 1 is described with an example in the following steps:
First, multiple encoded matrices are generated for the graph shown in Figure 4.
Then Algorithm 1 is applied to generate an RFP with blocks for each set of rooms if it
exists.
● The function EmAnalyser() takes an encoded matrix and a list of tuples as input.
Each tuple has two sets of rooms for which symmetric blocks are required in the
RFP. In Figure 6, an encoded matrix is selected, and a list of required blocks is
created.
Figure 6: (a) An encoded matrix corresponding to the adjacency graph in Figure 4, (b) A list of
required blocks in the RFP
● A copy of the encoded matrix is generated for each set of rooms as EM. In the EM,
corresponding entries to the rooms of the set are replaced by −1. Then, EM is
traversed using four pointers (l, r, t, and b). The encoded matrix is analysed for the
existence of sub-matrices for list [1] to list [6]. Figure 7 shows the analysis for list
[3]. EM is generated for list [3] and traversed using the four pointers (l, r, t, and b).
● Initialize, count = 0, l = n (the last column of the EM), r = 0 (the first column of the
EM), t = m (the last row of the EM), b = 0 (the first row of the EM) (refer Figure 7).
● While traversing through the EM, whenever a [i, j] = −1 is encountered, the value
RECTANGULAR FLOORPLANS WITH BLOCK
SYMMETRY
397
of the count gets increased by 1, and the position of the pointers is updated
l = min {l, j}, r = max {r, j}, t = min {t, i}, b = max {b, i} (refer Figure 7).
● A sub-matrix of order (b − t + 1) × (r − l + 1) is formed during the traversal whose
corner elements are given by a [t, l], a [t, r], a [b, l], a [b, r]. In Figure 7, a submatrix of order 3 × 2 is formed in the EM. The number of entries in the sub-matrix
equals the value of count.
Figure 7: A copy of encoded matrix as EM and matrices formed during the traversal of EM
● If the number of elements in the sub-matrix equals the value of count, then the set
of rooms has a sub-matrix in the encoded matrix, hence forming a block in the RFP.
Figure 8 shows there exists a corresponding sub-matrix in the encoded matrix for
the list [3], hence it forms a block in the RFP.
● The list of rooms that occupy the top row and left column of each sub-matrix are
returned by EmAnalyser() as norList and westList respectively. norList = [[8,7],
[2,3], [9,11], [10], [1],[4]], westList = [[8,6], [2], [9], [10], [1], [4]]. For each pair of
blocks, we use the norList and westList to equate the widths and heights of the
blocks for constructing symmetric blocks in the RFP (section 3.2).
Figure 8: (a) The initial encoded matrix, (b) An RFP generated from the encoded matrix in (a)
398
SHIKSHA ET AL.
Figure 9: Algorithm 1
3.2. CONSTRUCTION OF SYMMETRIC BLOCKS IN THE RFP
To compute an RFP with symmetric blocks, we use the modified version of the
network flow model described by (Upasani et al., 2020). With the use of an
optimisation framework, they generate a rectangular floorplan with optimal height and
width for each room, given any size requirements. The input is taken in the form of a
dimensionless RFP (rectangular arrangement). They have considered two types of size
constraints for the height and width of each room, respectively.
We modify their flow network by adding a new constraint to construct symmetric
blocks in the RFP obtained from Algorithm 1 (section 3.1.1). Along with the size
constraints considered in (Upasani et al., 2020), the minimum heights, minimum
widths, and aspect ratios, we introduce a new constraint termed “symmetry constraints”
to equate the heights and widths of the blocks that need to be symmetric. Symmetry
constraints are constructed using the norList and westList returned by EmAnalyzer() in
Algorithm 1. Using the symmetry constraints (see Figure 10), it provides identical
dimensions and areas to the corresponding blocks in the RFP for each pair of blocks,
resulting in the generation of symmetric blocks in the RFP.
Table 1 lists symmetry constraints for the RFP. Here, 𝐻! stands for the height of
room i and 𝑊! stands for the width, respectively.
RECTANGULAR FLOORPLANS WITH BLOCK
SYMMETRY
Symmetric blocks
Height of blocks
Width of blocks
Blocks 1 and 2
𝐻! + 𝐻" = 𝐻#
𝑊" + 𝑊$ = 𝑊# + 𝑊%
Blocks 3 and 4
𝐻& = 𝐻'(
𝑊& + 𝑊'# = 𝑊'(
Blocks 4 and 5
𝐻' = 𝐻)
𝑊' = 𝑊)
399
Table 1: Symmetry Constraints
Figure 10: A rectangular floorplan with block symmetry for the given graph G obtained by using the
optimisation framework
4. Conclusion and Future Work
In this work, we have generated a rectangular floorplan exhibiting block symmetry
from a given adjacency graph. We have achieved it using a two-step approach. In the
first step, we identified an RFP with blocks for each given set of rooms. We have used
the concept of encoded matrices to obtain the required RFP from all possible RFPs of
the given graph. Then, we developed symmetric blocks in the RFP using an
optimisation technique. At this stage, it is assumed that a block exists in an RFP for a
given set of rooms, and such an RFP is generated for the given input if it exists. For
future work, we aim to develop a condition on a set of rooms that gives the existence
of a block in an RFP. We intend to extend the concept of blocks to floorplans with nonrectangular boundaries, such as L-shaped, T-shaped, or Z-shaped floorplans. Block
symmetry will be more effective in non-rectangular floorplans as it provides visual
balance (see Figure 11(a)). Also, we are only generating initial layouts, which may
need to be architecturally acceptable. In the future, we aim to introduce dimensions,
doors, windows, and corridors in the layouts.
Since block is a structural unit that unifies different floorplan elements, building
blocks can be very beneficial in designing complex floorplans such as hospitals,
corporate infrastructures, etc. Nowadays, architects design layouts that partitions the
space into the required number of zones, for example, public, private, and semi-private
zones, to give users various levels of privacy. Designs like this can be generated
400
SHIKSHA ET AL.
efficiently using blocks in the floorplan. In designing a symmetrical floorplan, block
symmetry can also be used with other forms of symmetry, such as bilateral symmetry
(see Figure 11(b)). In future, we aim to extend the concept of block symmetry to other
symmetries as well.
Figure 11: (a) A Z-shaped floorplan with two pairs of symmetric blocks, (b) An RFP displaying
block symmetry and bilateral symmetry along the vertical axis
Appendix A. Supplementary Material
A demonstration of working of the Graphic User Interface with floorplans for various
graphs, is provided online at
https://www.dropbox.com/s/g22qf85nn4lwvlo/Symmetric_Floorplans.mp4?dl=0
References
Bisht, S., Shekhawat, K., Upasani, N., Jain, R., Tiwaskar, R., & Hebbar, C. (2022).
Transforming an adjacency graph into dimensioned floorplan. Computer Graphics Forum,
41(6), 5-22. https://doi.org/10.1111/cgf.14451
Hargittai, C. I., & Hargittai, M. (1994). Symmetry: A Unifying Concept. Bolinas, California:
Shelter Publications.
Ko ́zmin ́ski, K., & Kinnen, E. (1985). Rectangular duals of planar graphs. Networks, 15(2),
145--157.
Shekhawat, K., Upasani, N., Bisht, S., & Jain, R. (2021). A tool for computer computergenerated dimensioned floorplans based on given adjacencies. Automation in
Construction, 127, 1-22. https:// doi.org/10.1016/j.autcon.2021.103718
Stiny, G., & Mitchell, W. J. (1980). The Grammar of paradise: on the generation of Mughul
gardens. Environment and Planning B, 7(2), 209-226.
Stiny, G., & Mitchell, W. J. (1978). The Palladian Grammar. Environment and Planning B,
5(1), 5-8.
Upasani, N., Shekhawat, K., & Sachdeva, G. (2020). Automated generation of dimensioned
rectangular floorplans. Automation in Construction, 113, 103-149.
https://doi.org/10.1016/j.autcon.2020.103149
Williams, K. (1999). Symmetry in Architecture. Visual Mathematics, 1(1).
Wu, W., Fu, X.-M., Tang, R., Wang, Y., Qi, Y.-H., & Liu, L. (2019). Data-driven interior
plan generation for residential buildings. ACM Transactions on Graphics (TOG), 38(6), 112. https://doi.org/10.1145/3355089.3356556
Wu, W., Fan, L., Liu, L., & Wonka, P. (2018). MIQP-based layout design for building
interiors. Computer Graphics Forum, 37(2), 511-521. https://doi.org/10.1111/cgf.13380
Xiao-Yu, W., Yin, Y., Kang, & Zhang. (2018). Customization and generation of floorplans
based on graph transformations. Automation in Construction, 94, 405-416.
https://doi.org/10.1016/j.autcon.2018.07.017