The purpose of this paper is to improve the battle royale optimization (BRO) (Rahkar Farshi, 2020) algorithm to solve the problem of castellated beams, so it is integrated with particle swarm optimization (PSO) to achieve better solutions. The flowchart of this algorithm has been shown. The formulation of designing the castellated beams has been mentioned and utilized for three different problems. At last, the results of the proposed algorithm have been compared with BRO. The results show that it got better solutions rather than BRO.
Many metaheuristics algorithm has been developed in recent years, but it should be noted that each one of metaheuristics can be used to solve particular problems and it cannot be used to solve all optimization problems. To overcome this weakness, a combination of two metaheuristics will be used. This approach may solve more problems rather than individual metaheuristics. For example, the PSO algorithm may reach a premature result, and the final result may differ from the actual solution. The proposed algorithm in this study is a combination of BRO and PSO.
Regarding the results, the BRO couldn't handle this problem, and the results obtained by the BRO are not close to the results obtained by the BRO-PSO algorithm. However, the best results obtained by BRO-PSO for three problems are 146.14, 347.06 and 321.74, respectively. Moreover, for the three problems cost functions resulting from BRO are 326.92, 366.08 and 337.57. The cost functions show that the proposed algorithm has been improved by 54.9% for the first problem, 5.19% for the second and 4.7% for the last problem.
A novel hybrid algorithm has been proposed and tested.
1. Introduction
Castellated beams can suggest an efficient solution in modern structures. One reason for using castellated beams in structures is the lower weight of these beams due to their openings. Moreover, their distinctive geometry allows for better integration of mechanical, electrical and plumbing systems within the beam openings, making them particularly suited for multi-functional and space-efficient designs. As a result, castellated beams find widespread application in industries ranging from construction and infrastructure to industrial facilities and warehouses. Moreover, the appearance of castellated beams is more appealing in roofs than in other beams.
Despite the advantages of castellated beams, such as material efficiency and reduced weight, their design presents notable challenges. The presence of web openings introduces complexities, including stress concentrations, buckling risks and intricate fabrication requirements. These factors complicate both the structural analysis and construction process. For instance, the shear and buckling strength of castellated beams can be extremely affected by the openings (Soltani et al., 2012). Another critical challenge is that castellated beams are susceptible to additional failure modes compared to solid-web beams. One example of a mode failure is the Vierendeel mechanism. Web-post buckling due to shear is another failure mode. The other mechanism that could be mentioned here is web weld rupture modes, which have been studied and illustrated experimentally by Kerdal and Nethercot (1984). To ensure structural stability, these failure mechanisms must be carefully accounted for in the design process. In addition, Tsavdaridis and D'Mello (2011) studied the web buckling of castellated beams and found that the failure occurs under the combined action of shear and moment.
There is no strict rule not to use castellated beams in steel design standards, and the reason for not having rules is from a lack of studies on these kinds of beams and insufficient studies regarding the seismic behavior of castellated beams. However, these beams are used for secondary beams rather than main girders. Most applications of secondary beams are transferring gravity loads to the main girder beams. Secondary beam connections to the main beams are typically designed as simple connections to prevent the transfer of additional moments to the primary supporting beams.
Castellated beams are typically classified by their opening shape, with circular and hexagonal being the most common, though other forms such as sinusoidal, elliptical, square and octagonal are also used. Circular castellated beams are made by cutting a solid-web beam along a defined pattern, then shifting and welding the halves to form openings, avoiding material waste and extra effort. The uncut beam is referred to as the original beam. For hexagonal castellated beams, the cutting follows a zig-zag pattern, and the separated sections are reassembled using a welding process.
The design of castellated beams involves determining the dimensions of web openings along with the section properties of the original beam. Consequently, the number of design parameters for castellated beams is greater than that for solid-web beams, as the cutting shape parameters must also be considered. Furthermore, as previously mentioned, castellated beams exhibit more complex structural behavior, like the works done by Kerdal and Nethercot (1984) and Tsavdaridis and D'Mello (2011), necessitating additional design criteria compared to solid-web beams. The increased number of design parameters and criteria makes the design process for castellated beams more complex than that of conventional solid-web beams.
Designing castellated beams requires selecting the appropriate parameters to ensure structural performance meets the required criteria. While a trial-and-error approach can be used, it is often inefficient, time-consuming and may result in a suboptimal or costly design (Bei et al., 2012). To minimize costs, including cutting, welding and construction costs and make the design process easier, the problem can be approached as an optimization task, allowing for more efficient and effective solutions.
Optimization problems refer to finding a minimum or maximum for a target value by determining the factors that contribute to the value. Moreover, some criteria should be met. The contributing factors are called design variables, and for each set of them, there is a cost function that will be explained later. In this problem, two sets of design variables are the solid-web beam cutting parameters and cross-section parameters. The cost function is the function that should be minimized or maximized in the problem.
There are various methods for solving constrained optimization problems, generally grouped into two categories: (1) classical optimization methods and (2) metaheuristic algorithms.
Classical optimization methods: to solve optimization problems using these methods, some information about the cost function and constraints is needed. Some of this information is gradient and Hessian information. For calculating the gradient or Hessian, the cost function and constraints should have a closed form (have a formula). These methods start from one random point in the search space, which is called a reference point. Finding a new point that has a lower cost function (better solution) is the next step. After finding a new point, the reference point is changed to the new point. This process will continue until the stopping criteria are met. For example, two criteria that are mostly used are (1) max iteration and (2) a very small difference between the two cost functions of the reference point and the new point. The main weak point of classical methods is that they can easily get stuck in local minima. The other weak point of these methods is that, to solve a problem using these methods, the problem should have a closed form cost function, but in real problems, many of them don't have a closed-form or the closed-form is so complex that it cannot be solved by these methods.
Metaheuristics optimization algorithms: These algorithms were first developed in 1965 by Rechenberg (1965), and the reason for the appearance of these algorithms is to overcome the disadvantages of the classical optimization methods mentioned before. Instead of relying on complex mathematical formulations, these algorithms mimic natural processes to find optimal solutions. In nature, many systems achieve optimal outcomes without explicitly solving mathematical equations. Interestingly, while the mathematical representation of these natural phenomena can be highly complex or even impossible to solve directly, metaheuristic algorithms offer an efficient alternative. They provide powerful tools for tackling problems that classical optimization methods struggle to solve efficiently. Additionally, metaheuristic algorithms' ease of implementation makes them a practical choice for various optimization challenges. There are plenty of metaheuristic algorithms. These algorithms are usually categorized into three main groups. The first group is evolutionary algorithms (EA). The EAs are inspired by the process of natural evolution; these algorithms simulate mechanisms like selection, mutation and crossover. Some examples of this category are genetic algorithms (GA) that mimic natural selection to evolve solutions through crossover, mutation and differential evolution (Holland, 1975). Differential evolution combines vectors of solutions to explore the search space efficiently (Liu and Lampinen, 2005). Another example of an EA is the work done by Emami (2022) that mimics how the coronavirus spreads and infects other healthy people. Moreover, the forest optimization algorithm (Ghaemi and Feizi-Derakhshi, 2014) and bird mating optimization (Askarzadeh, 2014) are considered other EAs. The second category is swarm intelligence (SI) algorithms. This category is based on the collective behavior of groups such as flocks of birds or swarms of insects. For this category, some of the most famous algorithms that can be named are particle swarm optimization (PSO), which models the movement and interaction of particles in a search space to find optimal solutions (Kennedy et al., 1995), and ant colony optimization, which simulates the behavior of ants finding paths to food, useful for pathfinding and combinatorial problems (Dorigo et al., 2007). Another example of SI algorithms is the work done by Kaveh and Farhoudi (2013) that mimics the echolocation of dolphins to hunt in new environments. The dragonfly algorithm developed by Mirjalili (2016) and cat swarm optimization (CSO) (Chu et al., 2006) can be mentioned as other SI algorithms. The last category is physics-based algorithms. The inspiration of this group is physical phenomena. For example, simulated annealing (Kirkpatrick et al., 1983) and the gravitational search algorithm (Rashedi et al., 2009) are from this category. Moreover, charged system search (CSS) (Kaveh and Talatahari, 2010) uses the Coulomb law from electrostatics and the Newtonian laws of mechanics is another example of this kind. Two more examples of this category that could be worth mentioning here are central force optimization, which is introduced by Formato (2009), and black hole, which is presented by Hatamlou (2013). There are other algorithms beyond the three categories mentioned above, like the work done by Mahdavi et al. (2007) that simulates the improvisation of music players. Other famous examples that could be noted here are Tabu Search (Glover, 1989), water evaporation optimization (Kaveh and Bakhshpoori, 2016) and Yin-Yang pair optimization (Punnathanam and Kotecha, 2016).
Metaheuristics have been used to solve many real problems. For example, Mashayekhi et al. (2019b) used PSO to generate endurance time functions. Utilizing the Imperialist Competitive Algorithm (ICA) to simulate the endurance time function is another work done by Mashayekhi et al. (2019a). This method was used in many studies to reduce the time for analyzing structures (Majdi et al., 2023, 2025; Sadeghi-Movahhed et al., 2023, 2024a, b, 2025). Moreover, Shabakhty et al. (2024) used a colliding bodies optimization algorithm to find the optimal design of offshore jacket platforms. Another example of using a metaheuristic algorithm is the work of Cazacu and Grama (2014), who applied the GA to find the optimal design of truss structures. CSS for finding the optimal design of steel structures has been used (Kaveh et al., 2021). A new metaheuristic algorithm named Multi-objective Uniform Damage Optimization (MUDO) has been used to design optimal steel structures for life cycle cost (Ghasemof et al., 2021). Kaveh and Ghafari (2018) used PSO and GA to study the effects of composite actions and semi-rigid connections on castellated beam problems. Another example is that Mashayekhi and Mosayyebi (2023) used three different metaheuristic algorithms to find the optimal design of TMDs. Optimal routing for gas pipelines by PSO has been investigated by Alavi et al. (2024). In order to find the optimal design for double-tuned mass dampers under seismic excitation, different multi-objective algorithms have been used (Zamani et al., 2025). An artificial neural network based on metaheuristics has been used to determine the collapse load of 2D frames (Kaveh, 2024).
Different problems of castellated beams have been solved by several algorithms. For example, Gray Wolf optimization has been applied to find an optimum solution for designing castellated beams (Kaveh and Shokohi, 2016a). CSS has been utilized to find the optimized cost of castellated beams (Kaveh and Shokohi, 2014). Sorkhabi et al. (2014) used the PSO algorithm to optimize the design of castellated beams. Another work studied by Budi and Partono (2017) is the size and spacing between holes of castellated beams. The cost of castellated beams in composite floors was investigated in a work done by Yossef and Taher (2019).
These algorithms can be combined to create new metaheuristic algorithms, which are called hybrid metaheuristic algorithms. Nowadays, these hybrid algorithms are being used to solve different optimization problems. For example, in civil engineering, a truss problem has been optimized using a hybrid Charged System Search– Big Bang Big Crunch (CSS-BBBC) algorithm (Kaveh and Zolghadr, 2012). Two simple metaheuristics, i.e. Grey Wolf and JAYA, and the invented Simulated Hybrid Grey Wolf and JAYA Algorithm (SHGWJA) have been integrated to solve mechanical and civil engineering problems (Furio et al., 2024). Three different hybrid metaheuristics have been compared for optimization of structural problems in the civil engineering era (Ficarella et al., 2021). Moreover, these hybrid algorithms can be used in other subjects as well. For example, they can be used in order to solve network design problems (Poorzahedy and Rouhani, 2007). A hybrid metaheuristic algorithm has been utilized to solve the dynamic vehicle routing system (Euchi et al., 2015).
In addition, some hybrid metaheuristic algorithms have been used, like A. Kaveh and Shokohi (2016b) benefit from hybrid algorithms to find the optimal design of a laterally supported castellated beam. M. R. Mashayekhi et al. (2023) utilized a hybrid algorithm of PSO and Harris Hawk optimization to find the optimum solution for the cost of castellated beams. This paper is done in order to find better solutions for castellated beam problems. The formulation of the castellated beam could be improved by containing more constraints and other prices that could be included in the cost function.
The purpose of this paper is to improve the battle royale optimization (BRO) (Rahkar Farshi, 2020) algorithm to solve the problem of castellated beams; therefore, it is integrated with PSO to achieve better solutions. The flowchart of this algorithm has been shown in Figure 7. The formulation of designing the castellated beams has been mentioned and utilized for three different problems. At last, the results of the proposed algorithm have been compared with BRO.
2. Design of castellated beams
The code requirements and limitations of designing castellated beams can be expressed in three groups:
Ultimate limit state (ULS): Ensures beams possess sufficient strength to resist external loads. Failure modes include flexural failure, shear failure, web-post buckling, Vierendeel mechanism failure and web compressive buckling.
Serviceability limit state (SLS): Focuses on user comfort and functionality, particularly deflection control.
Hole dimension limitation: The limitation is due to hole dimensions that cannot be exceeded during cutting or other processes.
2.1 Ultimate limit state (ULS)
In ultimate limit states, structural members experience forces exceeding their nominal strength or become unstable. These requirements are defined in terms of member strength and demand, with each limit state determined based on failure modes observed in experimental studies. For castellated beams, the presence of web openings and welds introduces unique failure modes that do not occur in solid-web beams.
The strength of castellated beams at each limit state depends on the original beam's cross-section, as well as the geometry and shape of the web openings. Figure 1 illustrates the basic geometry and notations of castellated beams, including the construction stages of hexagonal castellated beams.
The illustration consists of four sections labeled (a) to (d) with corresponding illustrations: (a): A cutting plan for the base beam, showing a regular pattern of lines representing the cuts along the top and bottom of the beam. (b): Two separated parts of the cutting plan in section (a). A zigzag pattern along the top and bottom sections, with the flat surface in between. (c): The unrotated top and bottom sections of the beam, showing the cut-out pattern of the beam’s sections before they are rearranged. (d): The final shape of the castellated beam after the sections have been assembled. The pattern is now hexagonal in the middle of the beam, with the top and bottom sections clearly labeled. Each section is labeled accordingly with “Top” and “Bottom” on each part of the beam.(a) The cutting plan for the base beam; (b) two separated parts; (c) the unrotated top and bottom sections and (d) the final shape of the castellated beam. Source: Authors’ own work
The illustration consists of four sections labeled (a) to (d) with corresponding illustrations: (a): A cutting plan for the base beam, showing a regular pattern of lines representing the cuts along the top and bottom of the beam. (b): Two separated parts of the cutting plan in section (a). A zigzag pattern along the top and bottom sections, with the flat surface in between. (c): The unrotated top and bottom sections of the beam, showing the cut-out pattern of the beam’s sections before they are rearranged. (d): The final shape of the castellated beam after the sections have been assembled. The pattern is now hexagonal in the middle of the beam, with the top and bottom sections clearly labeled. Each section is labeled accordingly with “Top” and “Bottom” on each part of the beam.(a) The cutting plan for the base beam; (b) two separated parts; (c) the unrotated top and bottom sections and (d) the final shape of the castellated beam. Source: Authors’ own work
In Figure 1, the net space between two adjacent openings, which is welded to join the two sections, is represented by , while denotes the center-to-center distance between adjacent openings. The total depth of the original I-section is represented by , while denotes the height of the openings and refers to the cutting angle of the web openings. The total depth of the castellated beam is denoted by , and indicates the total width of the web openings. These parameters are shown in Figure 2.
The diagram displays a cross-sectional of a castellated beam, showing the overall height “d”, defined by the formula “d equals d subscript g plus h over 2”. The beam features hexagonal openings, each with a height labeled “h”. The spacing between these openings is marked as “s”, and the distance between the centers of the hexagons is labeled as “e”. The angle formed between the edges of the hexagons is denoted by “theta”. The top and bottom parts of the beam are labeled as “Top subscript 1”, “Top subscript 2”, “Bottom subscript 1”, and “Bottom subscript 2” on the left and right edges, respectively.Parameters of the castellated beam. Source: Authors' own work
The diagram displays a cross-sectional of a castellated beam, showing the overall height “d”, defined by the formula “d equals d subscript g plus h over 2”. The beam features hexagonal openings, each with a height labeled “h”. The spacing between these openings is marked as “s”, and the distance between the centers of the hexagons is labeled as “e”. The angle formed between the edges of the hexagons is denoted by “theta”. The top and bottom parts of the beam are labeled as “Top subscript 1”, “Top subscript 2”, “Bottom subscript 1”, and “Bottom subscript 2” on the left and right edges, respectively.Parameters of the castellated beam. Source: Authors' own work
In this study, the compression flange of the castellated beams is assumed to be embedded in the floor concrete, providing lateral support and preventing lateral-torsional buckling. This assumption is reasonable for composite floor systems; therefore, lateral-torsional buckling is not considered in the design process.
The first failure mode examined is the overall beam flexural capacity. According to this limit state, a castellated beam must possess sufficient flexural strength to withstand external loads. The equation for verifying this limit state is provided in Equation (1), and the required parameters of the castellated beam's cross-section are illustrated in Figure 3.
The diagram shows that the height of the overall tee beam is labeled as “d subscript g”. The tee section shows the following labeled dimensions: “b subscript f” represents the width of the flange, “d subscript T” is the height of the tee section, “t subscript w” indicates the thickness of the web, and “t subscript f” is the thickness of the flange. The bottom tee section is positioned at the vertical distance labeled “h” from the top tee section.Castellated beam section. Source: Authors' own work
The diagram shows that the height of the overall tee beam is labeled as “d subscript g”. The tee section shows the following labeled dimensions: “b subscript f” represents the width of the flange, “d subscript T” is the height of the tee section, “t subscript w” indicates the thickness of the web, and “t subscript f” is the thickness of the flange. The bottom tee section is positioned at the vertical distance labeled “h” from the top tee section.Castellated beam section. Source: Authors' own work
where:
: Material yield strength;
: Distance between the centroids of the top and bottom tee sections;
: Flange width, flange thickness and web thickness of the original I-section and
: The height of the web opening
These values have been illustrated in Figure 2.
: The maximum internal moment in the castellated beam due to external factored loads, which is determined through structural analysis and
: The depth of the top and bottom tee sections.
The second failure mode considered in this study is shear failure, which can occur as either vertical or horizontal shear. In castellated beams, vertical shear is primarily resisted by the top and bottom tee sections. The vertical shear capacity () is determined using Equation (2).
where can be retrieved from Equation (3).
The top tee section resists half of the vertical shear force, while the bottom tee section carries the remaining half. Consequently, the following condition, expressed in Equation (4), must be satisfied in the design of castellated beams.
The is the reduction factor that based on American Society of Civil Engineers (ASCE) can be assumed to be 0.9.
The difference in axial forces between the top and bottom tee sections around a web opening generates horizontal shear in the web post. This shear transfer mechanism is illustrated in Figure 4. The horizontal shear force is determined using Equation (5).
The illustration presents two views of a mechanical assembly. On the left, shear stress is applied on the castellated beam horizontally over the top surface with a shaded region. The height of the area of consideration of the beam is labeled “g”, and the shearing force between the hexagonal sections is labeled “V subscript h”. On the right, a detailed view of the shaded component is shown, with labeled forces and dimensions: “V subscript 1 over 2” and “V subscript 2 over 2” directed vertically upward and downward, respectively. Forces “F subscript 1” and “F subscript 2” are directed inward on both sides of the shaded component, “V subscript h” represents the shearing force, and “P” represents another applied force.Horizontal shear in castellated beams. Source: Authors' own work
The illustration presents two views of a mechanical assembly. On the left, shear stress is applied on the castellated beam horizontally over the top surface with a shaded region. The height of the area of consideration of the beam is labeled “g”, and the shearing force between the hexagonal sections is labeled “V subscript h”. On the right, a detailed view of the shaded component is shown, with labeled forces and dimensions: “V subscript 1 over 2” and “V subscript 2 over 2” directed vertically upward and downward, respectively. Forces “F subscript 1” and “F subscript 2” are directed inward on both sides of the shaded component, “V subscript h” represents the shearing force, and “P” represents another applied force.Horizontal shear in castellated beams. Source: Authors' own work
Also, horizontal shear Capacity is calculated by Equation (6).
Therefore, the criterion of Equation (7) should be met where:
Web-post buckling is another failure mode considered in this study, occurring due to the combined influence of horizontal shear forces and bending moments at the mid-height of the web post. This phenomenon can be analyzed using either column or beam analogy methods (Aglan and Redwood, 1974). To assess the web-post buckling resistance in bending, the design approach developed by Ward (1990) employs Equation (8).
where:
: Elastic bending moment at the critical web-post section. It is calculated in Equation (9).
: Elastic bending resistance of the critical web-post section and can be obtained from Equation (10).
: Equal to
: Geometric constant parameters. These values can be calculated using Equation (11).
where
The Vierendeel mechanism is another failure mode considered in this study, characterized by the formation of four plastic hinges around a single web opening, in this scenario, the top and bottom tee sections each support half of the total shear force, leading to the development of a secondary moment, known as the Vierendeel moment. This moment acts in addition to the primary bending moment, increasing the overall demand on the tee sections. To ensure structural integrity and prevent this failure mode, the design must comply with the condition specified in Equation (12):
where:
: The resistance factor for flexure and can be assumed 0.9;
: Secondary moment;
: Primary moment;
: Nominal flexure strength of the tee section that can be calculated by Equation (13) and
: Nominal flexure strength of the castellated beam at the mid-length opening that can be calculated by Equation (14).
where:
: Plastic section modulus of the tee section.
where:
: Plastic section modulus of castellated beam section.
The compressive strength of webs is the last failure mode that should be mentioned in this study. Also, the compressive force acting on the web of the castellated beam is illustrated in Figure. (5). The compressive force acting on the web () is equal to and this force could be understood from the free body diagram of the web-post. Also, the web-post area () at the critical section is . Moreover, the gyration radius of the web-post section is equal to . The nominal compressive strength of the web-post, can be calculated from the Euler buckling stress , that this value can be calculated based on the slenderness of the column. Column slenderness: is that should be lower than 200 to not be considered slender. The elastic buckling stress is determined using Eq. (15):
The illustration shows a cross-sectional view of a castellated beam with labeled top and bottom sections labeled “Top subscript 1”, “Top subscript 2”, “Bottom subscript 1”, and “Bottom subscript 2” on the left and right edges, respectively. The beam features multiple hexagonal openings, with an inset view shown above the beam. The inset view of the hexagonal openings includes the labeled dimensions: “L subscript 1” and “L subscript 2” represent the lengths of the two sides of the hexagonal opening, “theta” represents the angle between these sides, and “h over 2” represents the half height of the hexagonal opening.The one cut of a hexagonal castellated beam. Source: Authors' own work
The illustration shows a cross-sectional view of a castellated beam with labeled top and bottom sections labeled “Top subscript 1”, “Top subscript 2”, “Bottom subscript 1”, and “Bottom subscript 2” on the left and right edges, respectively. The beam features multiple hexagonal openings, with an inset view shown above the beam. The inset view of the hexagonal openings includes the labeled dimensions: “L subscript 1” and “L subscript 2” represent the lengths of the two sides of the hexagonal opening, “theta” represents the angle between these sides, and “h over 2” represents the half height of the hexagonal opening.The one cut of a hexagonal castellated beam. Source: Authors' own work
So, the critical buckling stress is determined by Eq. (16):
After computing the web compressive buckling can be investigated using Eq. (16). The nominal compressive strength is equal to
where:
: the compression reduction factor that can be assumed 0.9.
2.2 Serviceability limit state (SLS)
The serviceability limit state (SLS) ensures the structure maintains adequate performance for user comfort and functionality. In this study, controlling deflection is a primary focus. Importantly, shear deformation in castellated beams significantly affects deflection and must be accounted for. The maximum permissible deflection () is defined as , where L is the beam span. For a more detailed discussion on deflection calculations in castellated beams, refer to Raftoyiannis (2006)
2.3 Hole dimension limitation
One more limitation that is crucial in this study is the hole dimensions. The first rule to apply holes in castellated beams is that the ratio of hole to castellated beam depth should be less than 0.7 as shown in Eq. (18):
The second rule to be satisfied is that the ratio of to must lie between 0.25 and 0.5. This rule is shown in Eq. (19):
Because is equal to the above rule can be rewritten as Eq. (20):
The third criterion is that the ratio of the hole width to the hole height must be less than two. This rule is illustrated in Eq. (21):
As mentioned before is equal to so by substituting the in the above equation, Eq. (22) can be expressed:
The fourth design rule states that the ratio of the total web height of the castellated beam to the overall height of the tee sections must be less than 5, as expressed in Eq. (23). The factor of 2 in the denominator accounts for the inclusion of both the top and bottom tee sections in the calculation.
The last rule is the cutting rule that the cutting angle should vary between 45 and 64°.
3. Optimization of castellated beams
This section summarizes the formulation of the design of castellated beams. The design variables, constraints and cost function will be defined in this section. The purpose of an optimization problem is to find the minimum or maximum of a cost function by a set of design variables. In this problem, the cost function includes costs of construction, cutting and welding. Moreover, some of the design variables are I-section properties and hole dimensions.
3.1 Design variables
The first step of defining an optimization problem is to define the design variables of the problem. The number of design variables in this problem is seven, which is defined from to . The design variables are:
Width of original I-shape section;
Height of original I-shape section;
Flange thickness of original I-shape section;
Web thickness of original I-shape section;
Cutting depth ();
The hole spacing () and
Cutting angle (.
3.2 Cost function
In this section, the cost function of the problem should be defined. The cost function represents the value that we aim to minimize or maximize. In this problem, the total cost is the cost function. The total cost consists of three different parts. Three different parts are: (1) the original beam cost, (2) cutting price and (3) welding price. The implementation of the cost function has been explained in Appendix A. The cost function can be described by Equation (25):
where:
: Prices of materials per unit weight;
: Price of cutting and
: Price of welding.
Additionally, the is the weight of the original I-shape section that can be calculated from Equation (26):
where:
: is density of steel and
: Span of the beam
For calculating , first, it is better to calculate the cutting length for one hexagon. One length is illustrated in Figure 5.
where:
And is:
Therefore, by substituting Equation (28) and Equation (29) into Equation (27) can be rewritten in Equation (30).
And for , the is omitted from the above formula, so:
3.3 Constraints
In any optimization problem, constraints are conditions that must be satisfied for each set of variables. These constraints define the feasible solution space and vary depending on the problem. In this study, the constraints fall into three categories: (1) ultimate limit state (ULS), (2) SLS and (3) hole dimension limits. The constraints are expressed in Equation (32) to Equation (45):
3.3.1 The hole dimension limitation constraints
As mentioned, the first constraint will be derived from Equation (18).
Equation (20) will result in the second and third constraints that are given in Equation (33) and Equation (34):
The next constraint is from Equation (22):
By sorting out Equation (23), the next constraint can be written in Equation (36):
The upper and lower bounds for the cutting angle can be described in Equation (37) and Equation (38):
3.3.2 Serviceability limit state constraint
As mentioned earlier in Section 2.2, the maximum drift should not exceed , so this constraint is expressed in Equation (39):
3.3.3 Ultimate limit state constraint
The first constraint for an ULS is flexural strength that could be calculated from Equation (1). This should bear the external load and Equation (40) would describe this:
The next constraint is about the shear strength of the section that is expressed in Eq. (4). By sorting out Eq. (4), the next constraint can be expressed in Eq. (41):
In addition, horizontal shear should be checked, and Figure 3 demonstrates how it will be calculated. Furthermore, it can be calculated from Equation (7). Therefore, the next constraint can be written in Equation (42):
Another thing that needs to be checked is web-posting buckling. As mentioned earlier, a formula for checking this criterion is mentioned in Equation (8). Therefore, the next constraint could be expressed by Equation (43).
The Vierendeel moment is the next constraint that is expressed in Equation (44):
The last constraint for this problem is to check elastic nominal buckling, which could be calculated using Equation (17). Equation (17) leads to the next constraint, which is mentioned in Equation (45).
3.4 Penalty function
In each problem, constraints should be satisfied to remain in a feasible area. To ensure that all of the constraints are met, the penalty function should be defined. As mentioned in the previous section, all of the constraints from to are negative. Therefore, if one of them becomes positive, it means that the constraint is not satisfied. So that set of variables is not valid. In order not to receive this kind of variable, a penalty function is a choice. This function can vary between different problems. However, in most cases, a very large number is added to or multiplied by the cost function to ensure that this set of variables is not the desired solution. The penalty function in this problem is described in Equation (46):
where is a very large number, assumed to be that in this problem. This function adds up the unsatisfied constraints. In the case where all of the constraints are satisfied, the penalty function () remains zero.
4. Battle royale optimization
Recently, many metaheuristics have been developed for different real problems. Every metaheuristic is used to solve problems and cannot be used to solve all problems.
One of the recent metaheuristic algorithms that developed recently is BRO developed by Rahkar Farshi (2020). This algorithm is inspired by battle royale games like Call of Duty Warzone or Apex Legends. The steps of this algorithm are expressed in the following subsections.
4.1 Exploitation
After all variables are set in the problem space, each soldier attempts to attack its nearest enemy by shooting at them. Therefore, soldiers with better positions can hurt the other soldiers, and the damage to soldiers in the worse position will be calculated by Equation (47):
It should be considered that the damage that is given to each soldier in the first step is 0. Then, the players that are damaged would change their position to a position between their previous position and the best position that is known so far. It can be described by Equation (48):
where:
: A uniformly distributed random number between 0 and 1 and
: Position of a damaged soldier at the dimension .
Also, if the damaged players who changed their position could hurt other players the damage will be reset, and it will be 0.
4.2 Exploration
In this step, if the damage level of a soldier reaches the predefined threshold, he will die and respawn in a new random location. The new random location can be expressed by Equation (49).
where:
: Upper bound and lower bound at the dimension .
Furthermore, the feasible search space of the problem will shrink toward the best solution in each iteration. The initial value was presented by Equation (50).
where: is the maximum number of generations
Then, would change by Equation (51).
Since the shrink phase is a contribution of both exploration and exploitation the upper and lower bounds of the shrank search space can be calculated by Equation (52) and Equation (53):
where:
: is the standard deviation of the whole population in dimension .
It should be noted that if the new upper and lower bounds exceed the initial value, it should be set as the initial value. The flowchart of the BRO algorithm is shown in Figure 6.
The flowchart begins with the labeled oval “Start” at the top. A downward, which connects to the process to the first step: “Initiate random Population (Soldiers)” and “Initiate algorithm parameters”. From here, the process proceeds to the next step, “Finding nearest soldier to each one”, A “No” from the Finding nearest soldier to each one leads to the decision box “Stopping Criteria met?” Another downward line from the Finding nearest soldier to each one leads to the next step “Dam equals index of damaged soldier” and “V i c equals index of victorious soldier”. The process checks whether the fault of the damaged soldier in the next step reads “Fault(X dot Dam) is less than threshold?” If the condition is yes, the flow proceeds to “Relocate X dot Dam based on Equation 49”. Then, the fault of the damaged soldier is incremented by one “Fault (X dot Dam) equals Fault (X dot Dam) plus 1”) and the process continues to “Fault(X dot V i c) equals 0”. If the condition (Fault(X dot Dam) is less than threshold) is no, the next step is “Relocate X dot Dam based on Equation 46” and the faults for both the damaged soldier, processed to “Fault (X dot Dam) equals 0” and the victorious soldier, “Fault (X dot Vic) equals 0” are reset to zero. The process then moves to “Calculate the cost function of X dot Dam”. Afterward, the process continues with “Shrink the search space by Equation 49 and Equation 50”, followed by the step “Stopping Criteria met?”. If the stopping criteria are satisfied, the process moves to “Select the best soldier as final solution”, and the process ends to the last step.Flowchart of BRO algorithm. Source: Authors' own work
The flowchart begins with the labeled oval “Start” at the top. A downward, which connects to the process to the first step: “Initiate random Population (Soldiers)” and “Initiate algorithm parameters”. From here, the process proceeds to the next step, “Finding nearest soldier to each one”, A “No” from the Finding nearest soldier to each one leads to the decision box “Stopping Criteria met?” Another downward line from the Finding nearest soldier to each one leads to the next step “Dam equals index of damaged soldier” and “V i c equals index of victorious soldier”. The process checks whether the fault of the damaged soldier in the next step reads “Fault(X dot Dam) is less than threshold?” If the condition is yes, the flow proceeds to “Relocate X dot Dam based on Equation 49”. Then, the fault of the damaged soldier is incremented by one “Fault (X dot Dam) equals Fault (X dot Dam) plus 1”) and the process continues to “Fault(X dot V i c) equals 0”. If the condition (Fault(X dot Dam) is less than threshold) is no, the next step is “Relocate X dot Dam based on Equation 46” and the faults for both the damaged soldier, processed to “Fault (X dot Dam) equals 0” and the victorious soldier, “Fault (X dot Vic) equals 0” are reset to zero. The process then moves to “Calculate the cost function of X dot Dam”. Afterward, the process continues with “Shrink the search space by Equation 49 and Equation 50”, followed by the step “Stopping Criteria met?”. If the stopping criteria are satisfied, the process moves to “Select the best soldier as final solution”, and the process ends to the last step.Flowchart of BRO algorithm. Source: Authors' own work
5. The proposed hybrid BRO-PSO method
Many metaheuristic algorithms have been developed in recent years, but it should be noted that each one of the metaheuristics can be used to solve particular problems and cannot be used to solve all optimization problems. To overcome this weakness, a combination of two metaheuristics will be used. This approach may solve more problems than individual metaheuristics. For example, the PSO algorithm may reach a premature result, and the final result may differ from the actual solution. The proposed algorithm in this study is a combination of BRO and PSO. These two algorithms are population-based models that will use a certain number of samples in each iteration. The BRO has been discussed earlier and pointed out that each soldier will change position rather than the best soldier known (best cost function). PSO will update the particle position based on the best-known particle in each iteration and the best cost function that the particle has experienced. It is shown that the PSO cannot establish a good connection between exploration and exploitation and may reach premature convergence, as shown in A. Kaveh and Shokohi (2016b). After several iterations, the space of the problem will shrink and provide better results. Therefore, the search space becomes smaller, and it will most likely not get into premature convergence. Also, the velocity of each particle can be calculated from Equation (54).
In the proposed algorithm, the BRO has been selected as the main algorithm, and PSO has been added to it. It should be noted that each soldier in BRO would be counted as a particle in PSO. After PSO has been completed in each iteration, the best solution will be selected as the best soldier for the next iteration for BRO. The flowchart of BRO-PSO will be shown in Figure 7.
The flowchart begins with the labeled oval “Start” in the top oval, which directs the process to the first step: “Initiate random Population (Soldiers)” and “Initiate algorithm parameters”. From here, the process proceeds to the next step, “Finding nearest soldier to each one”, and a “No” from this step leads to “Stopping Criteria met?”. Finding the nearest soldier to each one connects to the next step, “Calculating the cost of each soldier”. The process then proceeds to identify the “Dam equals index of damaged soldier, Vic equals index of victorious soldier”. The flowchart checks whether the fault of the damaged soldier, “Fault(X dot Dam) is less than the threshold?”. If the condition is yes, the flow proceeds to “Relocate X dot Dam based on Equation 49”, which further leads to “Fault (X dot Dam) equals Fault (X dot Dam) plus 1”.It is then looped to “Fault (X dot Vic) equals 0”. If the condition “Fault(X dot Dam) is less than the threshold?” is no, the next step is “Relocate X dot Dam based on Equation 46”, and then the process further leads to “Fault(X dot Dam) equals 0” followed by “Fault (X dot Vic) equals 0”. The next steps in the process include “Calculate the cost function of X dot Dam”, followed by “Shrink the search space by Equation 49 and Equation 50”, and “Calculate the velocity of each particle”. The flowchart then proceeds to “Moving all particles based on Equation 51”. Afterward, the process checks whether the stopping criteria have been met (“Stopping Criteria met?”). If the stopping criteria are met, the process moves to “Select the best particle as final solution”, and the process finally ends.The flowchart of the proposed algorithm (BRO-PSO). Source: Authors' own work
The flowchart begins with the labeled oval “Start” in the top oval, which directs the process to the first step: “Initiate random Population (Soldiers)” and “Initiate algorithm parameters”. From here, the process proceeds to the next step, “Finding nearest soldier to each one”, and a “No” from this step leads to “Stopping Criteria met?”. Finding the nearest soldier to each one connects to the next step, “Calculating the cost of each soldier”. The process then proceeds to identify the “Dam equals index of damaged soldier, Vic equals index of victorious soldier”. The flowchart checks whether the fault of the damaged soldier, “Fault(X dot Dam) is less than the threshold?”. If the condition is yes, the flow proceeds to “Relocate X dot Dam based on Equation 49”, which further leads to “Fault (X dot Dam) equals Fault (X dot Dam) plus 1”.It is then looped to “Fault (X dot Vic) equals 0”. If the condition “Fault(X dot Dam) is less than the threshold?” is no, the next step is “Relocate X dot Dam based on Equation 46”, and then the process further leads to “Fault(X dot Dam) equals 0” followed by “Fault (X dot Vic) equals 0”. The next steps in the process include “Calculate the cost function of X dot Dam”, followed by “Shrink the search space by Equation 49 and Equation 50”, and “Calculate the velocity of each particle”. The flowchart then proceeds to “Moving all particles based on Equation 51”. Afterward, the process checks whether the stopping criteria have been met (“Stopping Criteria met?”). If the stopping criteria are met, the process moves to “Select the best particle as final solution”, and the process finally ends.The flowchart of the proposed algorithm (BRO-PSO). Source: Authors' own work
6. Case studies
In order to evaluate the performance of the proposed algorithm, three castellated beams have been modeled, and the optimization process has been applied to them. The outcome of these castellated beams has been shown in sections 6.1, 6.2 and 6.3.
6.1 Castellated beam with 4-m span
For the first beam, a cantilever beam has been selected to be designed. The beam is under a distributed load of and a concentrated live load of at the end of the beam. Figure 8 shows this beam.
The cantilever beam is fixed at the left end with a length labeled “4 m”. A uniformly distributed load of 5 kilonewtons per meter is applied along the length of the beam. A point load of 50 kilonewtons is applied vertically downward at the right end of the beam, shown by a large downward-pointing arrow.Cantilever beam. Source: Authors' own work
The cantilever beam is fixed at the left end with a length labeled “4 m”. A uniformly distributed load of 5 kilonewtons per meter is applied along the length of the beam. A point load of 50 kilonewtons is applied vertically downward at the right end of the beam, shown by a large downward-pointing arrow.Cantilever beam. Source: Authors' own work
6.1.1 BRO
The convergence plot for BRO from five runs has been shown in Figure 9. As can be seen, the solutions obtained from this algorithm are too diverse and cannot be compared together. Furthermore, the lowest number is far away from the lowest number from PSO and BRO-PSO. Also, the parameters for this algorithm are maximum fault is equal to 10, the maximum iteration is 1,000 and the population in each iteration is 100.
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and shows markings 400, 500, 600, 700, 800, 900, 1000, 1100, and 1200 with unequal intervals. The legend of the graph includes a blue line for B R O 1, a red line for B R O 2, a yellow line for B R O 3, a purple line for B R O 4, and a green line for B R O 5. All lines begin at the vertical axis, descend with fluctuations, and remain flat from around 440 iterations till the end.Convergence plot for 5 runs of BRO for the Cantilever problem. Source: Authors' own work
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and shows markings 400, 500, 600, 700, 800, 900, 1000, 1100, and 1200 with unequal intervals. The legend of the graph includes a blue line for B R O 1, a red line for B R O 2, a yellow line for B R O 3, a purple line for B R O 4, and a green line for B R O 5. All lines begin at the vertical axis, descend with fluctuations, and remain flat from around 440 iterations till the end.Convergence plot for 5 runs of BRO for the Cantilever problem. Source: Authors' own work
6.1.2 BRO-PSO
The cantilever problem has also been solved by BRO-PSO and the convergence plot for five runs has been shown in Figure 10. As can be seen, the problem converges so fast and the cost function in this algorithm is lower than BRO and has less standard deviation. The parameters are like the previous sections, and for the PSO, population size is 100, the personal and social acceleration coefficients are 1 and 1, respectively.
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 100 to 900 with an increment of 100 units. The legend of the graph includes a blue line for B R O P S O 1, a red line for B R O P S O 2, a yellow line for B R O P S O 3, a purple line for B R O P S O 4, and a green line for B R O P S O 5. All lines begin at the vertical axis; lines B R O P S O 3, and B R O P S O 5 descend and remain flat from around 5 iterations till the end. Other lines terminate on the vertical axis.Convergence plot for BRO-PSO for the cantilever problem. Source: Authors' own work
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 100 to 900 with an increment of 100 units. The legend of the graph includes a blue line for B R O P S O 1, a red line for B R O P S O 2, a yellow line for B R O P S O 3, a purple line for B R O P S O 4, and a green line for B R O P S O 5. All lines begin at the vertical axis; lines B R O P S O 3, and B R O P S O 5 descend and remain flat from around 5 iterations till the end. Other lines terminate on the vertical axis.Convergence plot for BRO-PSO for the cantilever problem. Source: Authors' own work
Figure 11 indicates that BRO couldn't solve the problem properly, but the proposed algorithm could solve the problem. Another advantage of BRO-PSO rather than BRO is that the findings obtained from BRO-PSO have less standard deviation. Also, the best solution obtained from algorithms has been shown in Figure 12.
The box plot with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 100 to 500 with an increment of 50 units. The data values in the bars are as follows: B R O: Lower Quartile: 325. Median: 370. Upper Quartile: 480. Minimum: 350. Maximum: 450. B R O P S O: Minimum: 140. Maximum: 150. Note: All numerical data values are approximated.Chart box of solved 4 m castellated beam. Source: Authors' own work
The box plot with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 100 to 500 with an increment of 50 units. The data values in the bars are as follows: B R O: Lower Quartile: 325. Median: 370. Upper Quartile: 480. Minimum: 350. Maximum: 450. B R O P S O: Minimum: 140. Maximum: 150. Note: All numerical data values are approximated.Chart box of solved 4 m castellated beam. Source: Authors' own work
The bar chart with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 0 to 350 with an increment of 50 units. The data values in the bars are as follows: B R O: 326.92 units. B R O P S O: 146.14 units.Comparative values of the solved 4 m castellated beam. Source: Authors' own work
The bar chart with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 0 to 350 with an increment of 50 units. The data values in the bars are as follows: B R O: 326.92 units. B R O P S O: 146.14 units.Comparative values of the solved 4 m castellated beam. Source: Authors' own work
Figure 12 illustrates that the best values obtained from BRO-PSO are less than BRO, and the suggested algorithm could solve the cost function in this case more efficiently.
6.2 Castellated beam with 8-m span
The second problem that is going to be studied is an 8 m castellated beam that is simply supported. This beam is under a distributed live load of 0.4 KN/m throughout the beam and a 280 KN concentrated force at the middle of the beam. The beam is shown in Figure 13.
The cantilever beam is supported by a triangular support at both ends with a length labeled “8 m”. A uniformly distributed load of 0.4 kilonewtons per meter is applied along the length of the beam. A point load of 280 kilonewtons is applied vertically downward at the center of the beam, shown by a large downward-pointing arrow. The point load is applied at a distance of 4 meters from both ends.Simply supported beam. Source: Authors' own work
The cantilever beam is supported by a triangular support at both ends with a length labeled “8 m”. A uniformly distributed load of 0.4 kilonewtons per meter is applied along the length of the beam. A point load of 280 kilonewtons is applied vertically downward at the center of the beam, shown by a large downward-pointing arrow. The point load is applied at a distance of 4 meters from both ends.Simply supported beam. Source: Authors' own work
6.2.1 BRO
The convergence plot for the second problem, which has been run five times, is shown in Figure 14. The final findings of the problem are diverse, as could be seen in the previous problem. The time of this algorithm was long. In order to fix this weakness, using BRO-PSO is advised, as can be shown in a future section. The parameters for solving this problem are like the previous problem. The maximum iteration is 1,000 and the population in each iteration is 1,000 and the maximum fault of each soldier is considered 10.
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 360 to 450 with an increment of 10 units. The legend of the graph includes a blue line for B R O 1, a red line for B R O 2, a yellow line for B R O 3, a purple line for B R O 4, and a green line for B R O 5. All lines begin at the vertical axis, descend with fluctuations, and remain flat from around 400 iterations till the end.Convergence plot for BRO for the simply supported beam problem. Source: Authors' own work
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 360 to 450 with an increment of 10 units. The legend of the graph includes a blue line for B R O 1, a red line for B R O 2, a yellow line for B R O 3, a purple line for B R O 4, and a green line for B R O 5. All lines begin at the vertical axis, descend with fluctuations, and remain flat from around 400 iterations till the end.Convergence plot for BRO for the simply supported beam problem. Source: Authors' own work
6.2.2 BRO-PSO
The problem in Section 6.2 is solved by the BRO-PSO algorithm five times. Moreover, the convergence plot of this algorithm is shown in Figure 15. The convergence is so fast in this algorithm. It should be noted that the result is less than previous algorithms, and they don't differ a lot. Since the comparison between algorithms is wanted, the parameters for this algorithm are like the previous ones in this section, which means the maximum iteration is 1,000 and the population of each iteration is 1,000, and the personal and social acceleration coefficients are 1 and 1, respectively.
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 340 to 440 with an increment of 10 units. The legend of the graph includes a blue line for B R O P S O 1, a red line for B R O P S O 2, a yellow line for B R O P S O 3, a purple line for B R O P S O 4, and a green line for B R O P S O 5. All lines begin at the vertical axis; lines B R O P S O 2, B R O P S O 3, and B R O P S O 5 descend and remain flat from around 5 iterations till the end. Other lines terminate on the vertical axis.Convergence plot for BRO-PSO for the simply supported beam problem. Source: Authors' own work
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 340 to 440 with an increment of 10 units. The legend of the graph includes a blue line for B R O P S O 1, a red line for B R O P S O 2, a yellow line for B R O P S O 3, a purple line for B R O P S O 4, and a green line for B R O P S O 5. All lines begin at the vertical axis; lines B R O P S O 2, B R O P S O 3, and B R O P S O 5 descend and remain flat from around 5 iterations till the end. Other lines terminate on the vertical axis.Convergence plot for BRO-PSO for the simply supported beam problem. Source: Authors' own work
The chart box of solutions obtained from different algorithms for the 8 m castellated beams problem is shown in Figure 16. It shows that, like the previous problem, the BRO algorithm could not handle the problem well, but the proposed algorithm could solve it better. Furthermore, the results obtained by BRO-PSO have a lower standard deviation than BRO.
The box plot with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 345 to 375 with an increment of 5 units. The data values in the bars are as follows: B R O: Lower Quartile: 366. Median: 368. Upper Quartile: 374. Minimum: 366.5. Maximum: 372. B R O P S O: Upper Quartile: 349. Minimum: 347. Maximum: 348.5. Note: All numerical data values are approximated.Chart box of solved 8 m castellated beam. Source: Authors' own work
The box plot with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 345 to 375 with an increment of 5 units. The data values in the bars are as follows: B R O: Lower Quartile: 366. Median: 368. Upper Quartile: 374. Minimum: 366.5. Maximum: 372. B R O P S O: Upper Quartile: 349. Minimum: 347. Maximum: 348.5. Note: All numerical data values are approximated.Chart box of solved 8 m castellated beam. Source: Authors' own work
As shown in Figure 17, the BRO could not find the best solution to the problem, but the proposed algorithm managed to get a better solution.
The bar chart with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 0 to 400 with an increment of 50 units. The data values in the bars are as follows: B R O: 366.09 units. B R O P S O: 347.06 units.The comparison of the cost function for the 8 m span problem. Source: Authors' own work
The bar chart with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 0 to 400 with an increment of 50 units. The data values in the bars are as follows: B R O: 366.09 units. B R O P S O: 347.06 units.The comparison of the cost function for the 8 m span problem. Source: Authors' own work
6.3 Castellated beam with 9-m span
The last problem that has been studied is a 9-m two-fixed-end beam under a uniform dead load and a concentrated live load. The beam is shown in Figure 18. This beam has also been optimized by BRO and BRO-PSO, and the results are in future subsections. Because the metaheuristics are stochastic, this problem has been optimized five times, and the best and worst results have been illustrated in future sections.
The cantilever beam is fixed at both ends with a length labeled “9 m”. A uniformly distributed load of 40 kilonewtons per meter is applied along the length of the beam. A point load of 100 kilonewtons is applied vertically downward at the center of the beam, shown by a large downward-pointing arrow. The point load is applied at a distance of 4.5 meters from both ends.Two-fixed-end beam problem. Source: Authors' own work
The cantilever beam is fixed at both ends with a length labeled “9 m”. A uniformly distributed load of 40 kilonewtons per meter is applied along the length of the beam. A point load of 100 kilonewtons is applied vertically downward at the center of the beam, shown by a large downward-pointing arrow. The point load is applied at a distance of 4.5 meters from both ends.Two-fixed-end beam problem. Source: Authors' own work
6.3.1 BRO
The problem in Section 6.3 is solved by the BRO algorithm five times. The convergence plot for five runs has been shown in Figure 19. The best values obtained so far have a lot of standard deviation. Max iteration is 1,000, population is 1,000 and max fault of each soldier is 10. These are the parameters used to solve this problem.
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 330 to 420 with an increment of 10 units. The legend of the graph includes a blue line for B R O 1, a red line for B R O 2, a yellow line for B R O 3, a purple line for B R O 4, and a green line for B R O 5. All lines begin at the vertical axis, descend with fluctuations, and remain flat from around 500 iterations till the end.Convergence plot for BRO for the two-fixed-end beam problem. Source: Authors' own work
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 330 to 420 with an increment of 10 units. The legend of the graph includes a blue line for B R O 1, a red line for B R O 2, a yellow line for B R O 3, a purple line for B R O 4, and a green line for B R O 5. All lines begin at the vertical axis, descend with fluctuations, and remain flat from around 500 iterations till the end.Convergence plot for BRO for the two-fixed-end beam problem. Source: Authors' own work
6.3.2 BRO-PSO
The mentioned problem in Section 6.3 has also been solved by the proposed algorithm. The convergence plot is shown in Figure 20. The results of these algorithms converged fast, and the values of each run are close together, meaning they have little standard deviation. The parameters of this algorithm are taken similarly to the previous algorithms in order to compare the results. The parameters are max iteration of 1,000, the population is 1,000 and social and personal acceleration coefficients are 1 and 1, respectively.
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 320 to 400 with an increment of 10 units. The legend of the graph includes a blue line for B R O P S O 1, a red line for B R O P S O 2, a yellow line for B R O P S O 3, a purple line for B R O P S O 4, and a green line for B R O P S O 5. Lines B R O P S O 2 and B R O P S O 5 descend and remain almost flat from around 5 iterations till the end. Other lines are not prominently visible on the graph.Convergence plot for BRO-PSO for the two-fixed-end beam problem. Source: Authors' own work
The line graph with the horizontal axis contains the markings “Iteration” and ranges from 0 to 1000 with an increment of 200 units. The vertical axis of the graph is labeled “Cost Function” and ranges from 320 to 400 with an increment of 10 units. The legend of the graph includes a blue line for B R O P S O 1, a red line for B R O P S O 2, a yellow line for B R O P S O 3, a purple line for B R O P S O 4, and a green line for B R O P S O 5. Lines B R O P S O 2 and B R O P S O 5 descend and remain almost flat from around 5 iterations till the end. Other lines are not prominently visible on the graph.Convergence plot for BRO-PSO for the two-fixed-end beam problem. Source: Authors' own work
Figure 21 illustrates that the BRO algorithm could not find the best value, but the BRO-PSO algorithm has achieved better results. Furthermore, the BRO-PSO algorithm has less standard deviation than BRO, as shown in Figure 22.
The box plot with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 320 to 355 with an increment of 5 units. The data values in the bars are as follows: B R O: Lower Quartile: 338. Median: 350. Upper Quartile: 353. Minimum: 339. Maximum: 351. B R O P S O: Minimum: 322. Maximum: 322. Note: All numerical data values are approximated.Chart box of solved 9 m castellated beam. Source: Authors' own work
The box plot with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function”, and ranges from 320 to 355 with an increment of 5 units. The data values in the bars are as follows: B R O: Lower Quartile: 338. Median: 350. Upper Quartile: 353. Minimum: 339. Maximum: 351. B R O P S O: Minimum: 322. Maximum: 322. Note: All numerical data values are approximated.Chart box of solved 9 m castellated beam. Source: Authors' own work
The bar chart with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function” and ranges from 0 to 400 with an increment of 50 units. The data values in the bars are as follows: B R O: 337.57 units. B R O P S O: 321.74 units.The comparison of the cost function for the 9 m span problem. Source: Authors' own work
The bar chart with the horizontal axis contains the markings “B R O” and “B R O P S O” from left to right. The vertical axis of the graph is labeled “Cost Function” and ranges from 0 to 400 with an increment of 50 units. The data values in the bars are as follows: B R O: 337.57 units. B R O P S O: 321.74 units.The comparison of the cost function for the 9 m span problem. Source: Authors' own work
7. Conclusion
In this study, the hybrid metaheuristic algorithm based on BRO and PSO has been developed to enhance the BRO algorithm. The proposed algorithm solved three different castellated beam problems. The problems have different support conditions and loadings. The openings of the castellated beams were hexagonal. The cost function of the problem was the price of the beam including construction, cutting and welding prices. The constraints were from three different categories that were an ULS, an SLS and the geometry limitations. The penalty function has been used in order to deal with constraints. The proposed algorithm has been compared with the BRO algorithm. The results of this article are as below:
The BRO couldn't handle the mentioned problems, and the results obtained by the BRO are not close to the results obtained by the BRO-PSO algorithm. However, the best results obtained by BRO-PSO for 3 problems are 146.14, 347.06 and 321.74, respectively. Moreover, for the three problems, cost functions resulting from BRO are 326.92, 366.08 and 337.57. The cost functions show that the proposed algorithm has been improved by 54.9% for the first problem, 5.19% for the second and 4.7% for the last problem.
While the standard deviation in BRO for the three problems is high, BRO-PSO suggests a lower standard deviation than BRO. The results obtained by BRO-PSO have a standard deviation of 5.45, 0.9 and 0.09, respectively. BRO's results are 57.22, 3.13 and 6.37 for the three problems. These values show that the proposed algorithm suggests a lower standard deviation than BRO. Therefore, the proposed algorithm is more accurate than BRO.
By noticing the convergence plots, it can be seen that BRO could not converge after 500 iterations, while the proposed algorithm converged only after five iterations.
Appendix Optimal design variables and cost function values for the three case study problems
In this appendix the complete mathematical formulation of structures and how the cost of each castellated beam has been calculated are presented.
For the cost of each castellated beam the following prices have been assumed.
The modulus of elasticity for steel is equal to 210 gigapascal (GPa) and special weight of steel is 7,850 .
For a 4 m beam, the cost function is:
For an 8 m beam:
For a 9 m beam:
The deflection of each beam has been calculated using the principle of superposition.
For a 4 m beam:
For an 8 m beam:
For a 9 m beam:
Moment of inertia of a castellated beam section can be computed using below formula:
Also, in terms of design variables it can be expressed as below:

