Available online at www.sciencedirect.com
Procedia Engineering 14 (2011) 1392–1398
The Twelfth East Asia-Pacific Conference on Structural Engineering and Construction
Simple Particle Swarm Optimization for Solving Beam-Slab Layout Design Problems A. NIMTAWAT1, and P. NANAKORN2ab 1 2
Faculty of Technology, Udon Thani Rajabhat University, Thailand
Sirindhorn International Institute of Technology, Thammasat University, Thailand
Abstract This study presents a particle swarm optimization (PSO) algorithm for beam-slab layout design. Design of beam-slab layouts is considered a heuristic task rather than an algorithmic task since its process cannot be written as an algorithm. In this study, this design task is expressed as an optimization problem. This is done by establishing appropriate objective and constraint functions based on selected suitable engineering consideration. The obtained optimization problem is then solved by a simple PSO algorithm. PSO is a rather new optimization method that is inspired by the flocking behavior of fishes and birds. Recently, it has gained popularity because its algorithm is simple and there has been evidence of its excellent performance. To employ PSO in solving the optimization problem that represents the beam-slab layout design problem, a suitable coding scheme for beam-slab layouts is used. Since the beam-slab layout design problem deals with a discrete search space of beam-slab layouts, a discrete version of PSO is employed in this study. The proposed PSO algorithm is tested by solving the beam-slab layout design problem of a rectangular floor. The validity of the proposed algorithm is observed from the obtained results.
© 2011 Published by Elsevier Ltd. Open access under CC BY-NC-ND license. Keywords: Beam-slab layout design; rectangular floors; particle swarm optimization.
1. INTRODUCTION For floors that use the beam-slab system, beam-slab layout design is one of the first structural design tasks that designers have to perform. In most cases, the task is considered simple and is normally
a b
Corresponding author: Email:
[email protected] Presenter: Email:
[email protected]
1877–7058 © 2011 Published by Elsevier Ltd. Open access under CC BY-NC-ND license. doi:10.1016/j.proeng.2011.07.175
1393
A. NIMTAWAT and P. NANAKORN / Procedia Engineering 14 (2011) 1392–1398
accomplished by using designers’ experiences. The task does not have a clear algorithm and is considered heuristic. Subsequently, the task has become an obstacle to the complete automation of the whole design process. Many research works related to floor layout design automation have been performed. Computing technologies that are employed include knowledge-based expert systems (KBESs) (Sriram 1987; Maher and Balachandran 1994; Sacks, et al. 2000), case-based reasoning (CBR) (Bailey and Smith 1994; Kumar and Raphael 1997; Soibelman and Pena-Mora 2000), and genetic algorithms (GAs) (Park and Grierson 1999; Rafiq, et al. 2003; Nimtawat and Nanakorn 2009). Knowledge-based expert systems and casebased reasoning utilize knowledge and past experiences to obtain the design. On the contrary, when genetic algorithms are used, the layout design problem is treated as an optimization problem. In many cases, the objective of a representative optimization problem is constructed based on the estimated cost or profit of the building project as well as the space utilization (Park and Grierson 1999; Grierson and Khajehpour 2002; Rafiq, et al. 2003). Nimtawat and Nanakorn (2009) proposed an atypical representative optimization problem that is based on heuristic engineering consideration. In their study, the objective function mimics real designers’ reasoning by heuristically considering how well slabs are supported by columns. Particle Swarm Optimization (PSO) is a comparatively new heuristic optimization technique that mimics the flocking behavior of animals, such as fishes and birds. The technique was proposed by Kennedy and Eberhart (1995) and has been gaining popularity in recent years because its algorithm is simple and there has been evidence of its excellent performance (Gaing 2003; Hasançebi, et al. 2009). As the name implies, this optimization technique employs many search points, called particles, to find the optimal solution. As a result, it becomes difficult for PSO to be trapped in local optimal points. PSO has been used to solve various engineering optimization problems (Banks, et al. 2007; Banks, et al. 2008). This study aims to explore the applicability of PSO in solving the beam-slab layout design problem. The methodology used in solving the problem via GAs proposed by Nimtawat and Nanakorn (2009) is reworked for PSO. Only rectangular floors are considered. The primary input of the proposed algorithm is an architectural floor plan with given positions of columns and walls. The validity of the proposed algorithm is shown by designing the beam-slab layout of an example rectangular floor. 2. PSO For beam-slab layout design 2.1. Binary PSO The beam-slab layout design problem considers a discrete search space of beam-slab patterns. Therefore, the binary version of PSO has to be used. Particles in PSO move to different positions by following certain rules. Each particle has memory to help it follow these rules. A particle remembers the historically best solution that it has ever experienced. A particle’s best solution is usually denoted as pBest . A particle also knows the historically best solution of all solutions that all particles have experienced so far. This globally best solution is usually denoted as gBest . In each search iteration, a particle moves in the direction that is somewhere between the particle’s current velocity direction, the direction toward the particle’s best solution, and the direction toward the globally best solution. Normally, the inclination toward the particle’s own best solution or the globally best solution is stochastically adjusted. Denote the dth coordinate of the ith particle at iteration t as X id (t ) and the dth coordinate of the particle’s historically best position as pBestid (t ) . In addition, denote the dth coordinate of the globally best solution as gBestd (t ) . Moreover, denote the particle’s velocity in the same coordinate as Vid (t ) . Binary PSO moves particles using the following equations (Kennedy and Eberhart 1997):
Vid (t 1) WVid (t ) r1C1[ pBestid (t ) X id (t )] r2C2 [ gBestd (t ) X id (t )]
(1)
1394
A. NIMTAWAT and P. NANAKORN / Procedia Engineering 14 (2011) 1392–1398
X id (t 1) 1
if r3 S [Vid (t 1)]
X id (t 1) 0
otherwise.
(2)
Here, W , C1 , and C2 are constants. In addition, r1 , r2 , and r3 are uniform random numbers, each ranged from 0 to 1. The coefficient W is used to control the momentum of the particle. The coefficients, C1 and C2 are employed to adjust the significance of pBestid and gBestd , respectively. Finally, S is the sigmoid function. 2.2. Coding The coding scheme of beam-slab layouts used by Nimtawat and Nanakorn (2009) is employed in this study. To begin coding, a grid is superimposed on a given architectural floor plan. The grid is so placed that there are grid lines passing through all columns and wall lines. Each line segment of this grid represents a possible position of a beam segment. A bit is attached to each line segment and a string of bits from all line segments represents a beam-slab layout. If the bit of a line segment is zero, it means that there is no beam segment at that position. However, when the value is one, the line segment will have a beam segment if that beam segment is not invalid. Invalid beam segments include 1) any isolated beam segment, 2) any beam segment with one free end, 3) any two beam segments that form an L-shaped interior beam. Figure 1 shows all types of invalid beam. When the value of a bit is one, it is necessary to find whether a beam segment, if placed at that position, is valid or not. However, in order to know that, the existence of beam segments at other locations is required. This is reciprocally true for every other bit whose value is equal to one and, hence, is a problem. The coding scheme employed in this study uses the following algorithm to determine invalid beam segments and also remove them to finally obtain the beam-slab layout (Nimtawat and Nanakorn 2009).
Figure 1: Examples of invalid beams.
1395
A. NIMTAWAT and P. NANAKORN / Procedia Engineering 14 (2011) 1392–1398
Figure 2: Example of coding. Algorithm: Bit String to Beam-Slab Layout Input: A bit string Output: A beam-slab layout 1. Place beam segments on all line segments whose bits are equal to one 2. while there is at least one invalid beam do 3. Remove all isolated beam segments 4. Remove all beam segments with one free end 5. Remove all pairs of beam segments that form an L-shaped interior beam Figure 2 shows an example of coding. The coding scheme has a disadvantage. It is possible that many different bit strings correspond to the same beam-slab layout. As a result, different beam-slab layouts will not have the same number of representatives in the search space. The employed coding scheme tends to yield more representatives in the search space for those layouts that have larger slabs and fewer beams. The bias is alleviated in this study by prescribing a special layout that contains all possible beam segments in the initial set of particles. 2.3. Representative Optimization Problem The objective function of the representative optimization problem has to capture the merit of different beam-slab layouts. In this study, the objective function proposed by Nimtawat and Nanakorn (2009) is employed. The objective function is constructed by considering the efficiency of column utilization. The column utilization of a slab is considered better if the slab has more corner columns. In addition, the column utilization of the whole floor is considered better if there are fewer slabs in the floor. Based on this consideration, the objective function F is written as
F ( x)
1 NS ¦ Si (x). N S ( x) i 1
(3)
Here, x denotes the bit string. In addition, Si denotes the score assigned to slab i, and N S is the total number of slabs in the layout. The slab score is given as 1, 0.75, 0.5, 0.25, or 0 if the slab has 4, 3, 2, 1 or 0 corner columns, respectively. The representative optimization problem is the maximization problem of this objective function. In this study, the following two constraints are employed, i.e. 1) Wall constraint: All walls must be directly supported by beams. 2) Slab constraint: Each dimension of a slab must not exceed its prescribed maximum length. For the wall constraint, walls mean permanent walls. The outer boundary of the floor is treated as walls. The total degree of constraint violation E ( x) is defined as
1396
A. NIMTAWAT and P. NANAKORN / Procedia Engineering 14 (2011) 1392–1398
E ( x)
LWc (x) ASc (x) . LW AS
(4)
c denotes the total length of wall segments that are not directly supported by beams while LW Here, LW denotes the total wall length. In addition, ASc is the total area of slabs that have at least one side longer than the corresponding prescribed maximum length and AS is the total floor area. 2.4. Proposed PSO In each PSO iteration, the best particle must be identified. In this study, the following rule of comparison is used to determine the best particle of each iteration. Layouti is better than Layoutj when 1) Layouti is feasible while Layoutj is not. Note that feasible layouts are layouts that satisfy both wall and slab constraints. 2) Both layouts are feasible but Layouti has a higher F than Layoutj. 3) Both layouts are feasible and have the same F. Nevertheless, Layouti has a shorter total length of beams than Layoutj. 4) Both layouts are feasible and have the same F and total length of beams. Nevertheless, Layouti has fewer beams than Layoutj. Note that connecting beam segments on the same grid line are counted as one beam. 5) Both layouts are infeasible but Layouti has a lower E than Layoutj. 6) Both layouts are infeasible and have the same E. Nevertheless, Layouti has a higher F than Layoutj. The proposed PSO algorithm can be summarized as follows: Algorithm: Simple_PSO_for_Beam_Slab_Layout_Design Input: An architectural floor plan, the maximum slab size, the maximum number of iterations (N), and the PSO parameters Output: The best beam-slab layout 1. Randomly initialize positions and velocities of all particles 2. Replace the first particle with a special particle that contains all possible beam segments 3. Calculate the objective values and the total degrees of constraint violation of all particles 4. Update pBests of all particles 5. Update gBest 6. for i m 1 to N 7. Move all particles 8. Calculate the objective values and the total degrees of constraint violation of all particles 9. Update pBests of all particles 10. Update gBest 3. RESULTS To show the validity of the proposed algorithm, the layout design problem of an architectural floor plan shown in Figure 3a. is solved. A uniform grid with spacing of 0.5 m is employed as shown in Figure 3b. By placing beams on the boundary of the floor in advance, the grid results in 418 design variables. The maximum allowable length of a slab is preset to 4 m. The problem is run for 20 times and 500 iterations are used for each run. The number of particles used is 100. In addition, W , C1 , and C2 are set to 1.0, 2.0, and 2.0, respectively. Among the 20 best solutions from the 20 runs, the best one determined by the
1397
A. NIMTAWAT and P. NANAKORN / Procedia Engineering 14 (2011) 1392–1398
employed rule of comparison is reported as the best solution of the problem. It is found from the results that the best and worst layouts among the 20 best solutions from the 20 runs have the objective values of 0.667 and 0.428, respectively. The average objective value of the 20 best solutions from the 20 runs is 0.564. The algorithm requires on average 169.6 iterations to obtain the convergence. The obtained best layout is shown in Figure 3c. This solution is found 9 times out of the 20 runs. An example evolution of layouts is shown in Figure 4. The best layout is unquestionably a good layout that satisfies both wall and slab constraints and can really be used in the next design process. 3.5
2
Kitchen & Dining
1.5 WC 2.5 1.5
Living Bedroom y x
4 Unit: m
(a)
(b)
(c)
Figure 3: (a) The given floor plan. (b) The grid. (c) The best solution.
Iter-0
Iter-40
Iter-80
Iter-171-best
Iter-500
Figure 4: An example evolution of layouts. 4. CONCLUSIONS This study employs a simple PSO algorithm to solve the beam-slab layout design problem. The input of the proposed algorithm is an architectural floor plan with given positions of columns and walls. The methodology used earlier in solving the problem via GAs by Nimtawat and Nanakorn (2009) is reworked for PSO. To begin with, the beam-slab layout design problem is written as an optimization problem. The objective function is written heuristically based on how well slabs are supported by columns. In addition, two constraints considering positions of walls and dimensions of slabs are employed. The results from the example problem show the validity of the proposed algorithm. Since PSO employed in this study is simpler than the GA previously used, PSO can be a good alternative to GA for solving the beam-slab layout design problem. REFERENCES [1]
Bailey SF and Smith IFC (1994). Case-based preliminary building design. Journal of Computing in Civil Engineering. 8(4), pp. 455-468.
1398
A. NIMTAWAT and P. NANAKORN / Procedia Engineering 14 (2011) 1392–1398
[2]
Banks A, Vincent J and Anyakoha C (2007). A review of particle swarm optimization. Part I: Background and development.
[3]
Banks A, Vincent J and Anyakoha C (2008). A review of particle swarm optimization. Part II: Hybridisation, combinatorial,
[4]
Gaing ZL (2003). Particle swarm optimization to solving the economic dispatch considering the generator constraints. IEEE
[5]
Grierson DE and Khajehpour S (2002). Method for conceptual design applied to office buildings. Journal of Computing in
[6]
Hasançebi O, Çarbaú S, Doۜan E, Erdal F and Saka MP (2009). Performance evaluation of metaheuristic search techniques in
[7]
Kennedy J and Eberhart R (1995). Particle swarm optimization. Proceedings of the 1995 IEEE International Conference on
[8]
Kennedy J and Eberhart RC (1997). Discrete binary version of the particle swarm algorithm. Proceedings of the 1997 IEEE
[9]
Kumar B and Raphael B (1997). CADREM: A case-based system for conceptual structural design. Engineering with
Natural Computing. 6(4), pp. 467-484. multicriteria and constrained optimization, and indicative applications. Natural Computing. 7(1), pp. 109-124. Transactions on Power Systems. 18(3), pp. 1187-1195. Civil Engineering. 16(2), pp. 83-103. the optimum design of real size pin jointed structures. Computers and Structures. 87(5-6), pp. 284-302. Neural Networks, pp. 1942-1948. International Conference on Systems, Man, and Cybernetics, Orlando, FL, USA, pp. 4104-4108. Computers (Historical Archive). 13(3), pp. 153-164. [10] Maher ML and Balachandran B (1994). Multimedia approach to case-based structural design. Journal of Computing in Civil Engineering. 3, pp. 359-376. [11] Nimtawat A and Nanakorn P (2009). Automated layout design of beam-slab floors using a genetic algorithm. Computers & Structures. 87(21-22), pp. 1308-1330. [12] Park K-W and Grierson DE (1999). Pareto-optimal conceptual design of the structural layout of buildings using a multicriteria genetic algorithm. Computer-Aided Civil and Infrastructure Engineering. 14(3), pp. 163-170. [13] Rafiq MY, Mathews JD and Bullock GN (2003). Conceptual building design---evolutionary approach. Journal of Computing in Civil Engineering. 17(3), pp. 150-158. [14] Sacks R, Warszawski A and Kirsch U (2000). Structural design in an automated building system. Automation in Construction. 10(1), pp. 181-197. [15] Soibelman L and Pena-Mora F (2000). Distributed multi-reasoning mechanism to support conceptual structural design. Journal of Structural Engineering. 126(6), pp. 733-742. [16] Sriram D (1987). Knowledge-Based Approaches for Structural Design. Computational Mechanics Publications.