This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Novelty-Driven Binary Particle Swarm Optimisation for Truss Optimisation Problems

Hirad Assimi [email protected] Frank Neumann [email protected] Markus Wagner [email protected] Xiaodong Li [email protected]
Abstract

Topology optimisation of trusses can be formulated as a combinatorial and multi-modal problem in which locating distinct optimal designs allows practitioners to choose the best design based on their preferences. Bilevel optimisation has been successfully applied to truss optimisation to consider topology and sizing in upper and lower levels, respectively. We introduce exact enumeration to rigorously analyse the topology search space and remove randomness for small problems. We also propose novelty-driven binary particle swarm optimisation for bigger problems to discover new designs at the upper level by maximising novelty. For the lower level, we employ a reliable evolutionary optimiser to tackle the layout configuration aspect of the problem. We consider truss optimisation problem instances where designers need to select the size of bars from a discrete set with respect to practice code constraints. Our experimental investigations show that our approach outperforms the current state-of-the-art methods and it obtains multiple high-quality solutions.

1 Introduction

Trusses are used in the construction of bridges, towers  [12, 31], aerospace structures [32] or in robots [10] and they carry applied external forces on nodes to support structures. Truss topology optimisation can be expressed as a combinatorial optimisation problem. The goal of topology optimisation is to decide whether to include or exclude necessary bars so that the structure’s weight is as light as possible while adhering to structural constraints.

The ground structure method [35] gives the excessive potential connections between nodes and the preliminary nodal positions in the design space, representing an upper bound in the combinatorial search space of the topology. Therefore, the optimal design is found as a subset of ground structure. Truss optimisation also includes size and shape optimisation, where size optimisation determines the optimal sizing of active bars in the design and shape optimisation finds the optimal nodal positions to determine the truss layout.

Achieving an overall minimum weight of a truss is the most common objective to save costs and improve efficiency [3] in truss optimisation problems based on ground structure. Truss optimisation is challenging due to its nature, and it has been an active research area for decades in structural engineering. It is important because it can be used to quickly find preliminary designs for further detailed investigation and design [34]

Bilevel optimisation [33] has been an effective approach for tackling truss optimisation problems, while dealing with different design variables and considering interactions among them [17, 1].

Topology optimisation trusses is a combinatorial and multi-modal problem that for bilevel optimisation of trusses, we consider the topology search space in the upper level and size and shape optimisation of the truss in the lower level.

1.1 Related Work

Truss optimisation problems are subject to structural constraints such as stability, failure criteria and design codes by practice and manufacturing specifications. The constraints can conflict with objectives which makes the problem more challenging.

For decades, several numerical methods have been applied to different truss optimisation problems. Conventional methods such as gradient-based showed limited efficiency in dealing with structural constraints and handling the discreteness and discontinuities in truss optimisation problems which led to trapping in local optima [5]. The inadequacy of classical optimisation methods led to the development of population-based algorithms and metaheuristics in truss optimisation [22].

Two-stage approaches for topology, size and shape optimisation in the literature considers these design variables are linearly separable and initially find optimal topology considering fixed equal size for all active bars. Next, it determines the optimal sizing for the obtained topology. The assumption of linear separability can lead to missing out good solutions and may result in infeasible solutions with respect to real practice [5].

Other approaches, namely single-stage approaches consider topology, size and shape design variables simultaneously and consequently expand the search space considering both design variables. The search is guided towards finding one ultimate single solution and still may ignore interactions among different variables.

Bilevel optimisation is a more effective approach than previous two approaches to deal with truss optimisation problems because it can model the interaction among different aspects of the problem more explicitly. In the bilevel formulation, the upper level optimisation problem determines the truss configuration, such as topology, where the lower level optimises bars’ sizing.

Islam et al. [17] adopted a bilevel representation for the truss optimisation problem, where the weight of the truss was the main optimisation objective for both upper and lower levels. In the upper level, a modified binary Particle Swarm Optimisation (PSO) with niching capability was used to enhance its population diversity while still maintaining some level of exploitation. The niching technique was based on a speciation scheme that applies a niching radius to subdivide the swarm, in an effort to locate multiple high-quality solutions. For the lower level, a standard continuous PSO was employed to supply good sizing solutions to the upper level.

However, using standard PSO for such constrained engineering problems can lead to trapping in local optima [15]. It has been showed that truss optimisation should incorporate domain-specific information of the problem instead of only considering pure optimisation [2].

It has been observed that there exist multiple distinct topologies with almost equal overall weight in the truss optimisation search space [5, 17, 27]. Therefore finding multiple equally good truss designs with respect to the topology, size and shape can enable practitioners to choose according to their preferences.

Niching methods [27] and novelty search [24] are capable of finding multiple optima in multi-modal search space. Niching techniques employ rules to keep diversity in the population by primarily focusing on optimising a fitness function. However, novelty search drives the search towards different candidate solutions from the ones previously have been encountered. Novelty search was proposed in [24] enhances the ability of exploration in population-based algorithms, and keeps the diversity by looking for more novel solutions considering their similarity to other previously visited solutions. Novelty search aims to improve diversity with respect to the behavioural space instead of exclusively considering objective function value [28, 25].

1.2 Our Contribution

In this paper, we consider the bilevel optimisation of trusses with a primary focus on the upper level as a combinatorial optimisation problem. We propose two approaches considering the upper level search space in the truss test problems. We introduce an exact enumeration approach for rigorous analysis of the upper level search space for small test problems. Exact enumeration iterates over all possible upper level topologies, and we apply the lower level optimisation to every feasible upper level design. Using exact enumeration enables us to remove randomness in the upper level and better characterise its search space and report on the quality of potential designs.

For larger problems, we propose a novelty-driven binary particle swarm optimisation for bilevel truss optimisation. We aim to discover new designs at the upper level by maximising novelty, and we apply the lower level optimisation to obtained novel solutions. Using novelty search can guide the search in the upper level towards unseen topologies instead of using only the overall weight to explore the search space. Therefore we set different objective functions for the upper and lower levels. Our proposed novelty search driven binary PSO for bilevel optimisation of trusses consists of a modified binary PSO in the upper level to deal with the exploration of topology search space and maximise novelty. The upper level of truss optimisation is subject to primary essential constraints.

We employ a repair mechanism to fix infeasible produced solutions. As lower level sizing in truss optimisation is challenging due to the nature of the problem, we use a reliable evolutionary optimiser that incorporates domain-based knowledge to determine the size of bars.

We carry out the proposed approaches to truss optimisation test problems. Our experimental investigation shows that our approaches can outperform the current state of art methods and achieve multiple high-quality truss designs. The source code is available at https://github.com/hiraaaad/BinaryNoveltyPSOTruss.

The rest of the paper is organised as follows. In the next section, we state the bilevel truss optimisation problem, explain the lower level optimiser and give background on standard and binary PSO. Afterwards, we introduce the exact enumeration and propose the bilevel novelty search framework including the upper level repair operator. We carry out experimental investigations and report on the quality of obtained solutions for different truss test problems. We finish with some concluding remarks and some suggestions for future work.

2 Bilevel truss optimisation problem

In this section, we define the bilevel truss problem according to [17]. Next, we explain the lower level optimiser, and afterwards, we provide some preliminaries on binary PSO used in [17] and this study. Bilevel truss problem embeds lower level size optimisation problem into an upper level topology optimisation problem.

2.1 Problem Definition

Bilevel truss optimisation problem embeds an upper level topology optimisation problem into a lower level size optimisation problem. The bilevel optimisation problem can be stated as,

find x,y,x{0,1}m\displaystyle\quad\vec{x},\vec{y}\text{,}\quad\vec{x}\in\{0,1\}^{m}
optimise F(x,y)\displaystyle\quad F(\vec{x},\vec{y})
subject to G1(x),G2(x),G3(x)\displaystyle\quad G_{1}(\vec{x}),\,G_{2}(\vec{x}),\,G_{3}(\vec{x})
where G1(x)=TrueNecessary nodes are active in truss\displaystyle\quad G_{1}(\vec{x})=\text{True}\iff\text{Necessary nodes are active in truss}
G2(x)=TrueTruss is externally stable\displaystyle\quad G_{2}(\vec{x})=\text{True}\iff\text{Truss is externally stable}
G3(x)=yargmin{W(x,y),gj(x,y)0,j=1, 2, 3}\displaystyle\quad G_{3}(\vec{x})=\vec{y}\in\text{argmin}\{W(\vec{x},\vec{y}),\,g_{j}(\vec{x},\vec{y})\leq 0,\,j=1,\,2,\,3\}

where x\vec{x} refers to the binary topology variable in the upper level where it shows if a truss bar is active (1) or excluded (0). mm shows the length of upper level topology design variables. For instance, in 25-bar truss mm is 8 due to symmetry. For the same problem, we can show the upper bound of topology as the ground structure where all bars are active as x=[11111111]\vec{x}=[11111111].

y\vec{y} denotes the design variable in the lower level optimisation problem including size and shape with respect to the test problem. The size variables of y\vec{y} should be selected from an available size set (SS). F(x,y)F(\vec{x},\vec{y}) shows the objective function considered in the upper level such as weight minimisation used in [17] or maximising novelty in this study.

Solutions in the upper level should satisfy the topology constraints for feasibility. G1G_{1} enforces that the design should have active nodes that support the truss and carry the external load, because they are necessary elements in the design space’s predefined boundary conditions. For example for 10-bar truss (depicted in Figure 1 (I)) nodes 1 and 4 are support nodes and nodes 2 and 3 are carrying external loads. Therefore these four nodes are necessary nodes in the design space.

Refer to caption
Figure 1: Ground structure of 10-bar truss (I), 25 bar truss (II) and 15-bar truss (III).

G2G_{2} states the external stability of a truss. The external stability satisfaction criteria are fully detailed in Section 4.2. Feasible topology solutions should meet G1G_{1} and G2G_{2}. In this case, the lower level optimiser aims to find the optimum y\vec{y} to minimise the overall weight of truss (WW) which is the summation of the weight of all included bars (m^\hat{m}) in the truss.

W(x,y)=ρi=1m^xiyiliW(\vec{x},\vec{y})=\rho\sum_{i=1}^{\hat{m}}x_{i}y_{i}l_{i}

where ρ\rho and ll show the density of the material used in the truss (such as aluminium or steel) and length of a bar with respect to its end points in the design space, respectively. upper level external stability satisfaction is necessary but not sufficient. Therefore, in the lower level, the internal stability should be checked through lower level function evaluation.

If (x,y)(\vec{x},\vec{y}) meets the internal stable condition, extra constraints should be satisfied. These constraints state that the computed stress in bars (σi\sigma_{i}, i{1,2,..,m^}i\in\{1,2,..,\hat{m}\}) and displacement of truss nodes (δk\delta_{k}, k={1,2,..,n}k=\{1,2,..,n\}) after applying the external loads should not exceed their problem-dependent allowable values σimax,i{1,2,..,m^}\sigma_{i}^{max},i\in\{1,2,..,\hat{m}\}, and δkmax,k{1,2,..,n}\delta_{k}^{max},k\in\{1,2,..,n\}, respectively.

The lower level constraints gjg_{j}, j=1,2,3j=1,2,3, used as part of G3(x)G_{3}(\vec{x}) are therefore defined as follows.

g1(x,y)\displaystyle g_{1}(\vec{x},\vec{y}) =TrueTruss is internally stable\displaystyle=\text{True}\iff\>\text{Truss is internally stable}
g2(x,y)\displaystyle g_{2}(\vec{x},\vec{y}) 0g2,i(x,y)=σiσimax0i{1,2,..,m^}\displaystyle\leq 0\iff g_{2,i}(\vec{x},\vec{y})=\sigma_{i}-\sigma_{i}^{max}\leq 0\quad\forall i\in\{1,2,..,\hat{m}\}
g3(x,y)\displaystyle g_{3}(\vec{x},\vec{y}) 0g3,k(x,y)=δkδkmax0k{1,2,..,n}\displaystyle\leq 0\iff g_{3,k}(\vec{x},\vec{y})=\delta_{k}-\delta_{k}^{max}\leq 0\quad\forall k\in\{1,2,..,n\}

2.2 Lower Level Optimisation

We use a domain knowledge-based evolutionary optimiser for lower level optimisation [2] to determine the optimum layout. The loweroptimiser is a variant of Covariance Matrix Adaptation Evolution Strategy algorithm (CMA-ES) that is customised to be problem-specific. loweroptimiser follows the main principles of evolutionary strategies to evolve the solutions. However, it uses specific operators to adjust solutions with respect to the allowable stress and displacement in the truss. loweroptimiser uses a probabilistic scheme to round the values to the discrete set to avoid biasing the search towards sub-optimal solutions.

loweroptimiser employs a mapping strategy with respect to the response after performing finite element analysis to adjust the sizing of a violating bar by multiplying its current size with a factor that depends on the amount of violation. Another operator is a resizing strategy for producing new individuals near boundary designs of the problem and the problem-dependent constraints. For brevity, we refer the reader to [2, 1] for detailed explanations on different components of the loweroptimiser.

2.3 Particle Swarm Optimisation (PSO)

PSO is a population-based algorithm evolving a swarm where it contains particles as candidate solutions to a problem [20]. Each particle has three vectors at the time (tt) of evolution : position (zt\vec{z_{t}}), velocity (vt\vec{v_{t}}) and personal best where it keeps the best position is has been evolved to as (pt\vec{p_{t}}). PSO updates particle positions based on the velocity for each component (ii) as follows.

vt+1\displaystyle\vec{v}_{t+1} =ωvt+c1r1×(ptzt)+c2r2×(pgzt)\displaystyle=\omega\vec{v}_{t}+c_{1}r_{1}\times(\vec{p}_{t}-\vec{z}_{t})+c_{2}r_{2}\times(\vec{p}_{g}-\vec{z}_{t})
zt+1\displaystyle\vec{z}_{t+1} =zt+vt+1\displaystyle=\vec{z}_{t}+\vec{v}_{t+1}

where pg\vec{p_{g}} is the global best position in the swarm. ω\omega is the inertia factor to control the impact of current velocity in velocity updating. r1r_{1} and r2r_{2} are vectors with size of a particle containing random values from a uniform distribution in the range [0, 1]. c1c_{1} and c2c_{2} are cognitive and social factors to attract particles toward their personal best and global best.

2.4 Binary PSO

PSO is typically used as a continuous optimisation algorithm. Therefore, to use it for binary search spaces, we need to employ a transfer function, such as Sigmoid transfer function, to map a continuous search space into a binary search space. In this study, we use global topology for the PSO and employ a time-varying transfer function [17] to balance between exploration and exploitation. Velocities of all particles are updated according to the velocity update equation. The following equation determines the probabilities for flipping the position vector elements (ii).

zit={1if rand()TV(vit,φ)0otherwise,z_{i}^{t}=\begin{cases}1&\text{if $rand()\geq TV(v_{i}^{t},\varphi)$}\\ 0&\text{otherwise,}\end{cases}

where rand()rand() denotes a random value in a uniform distribution in the range [0, 1] and, TVTV is given as [17],

TV(vit,ϕ)=11+evitφTV(v_{i}^{t},\phi)=\frac{1}{1+e^{{-\frac{v_{i}^{t}}{\varphi}}}}

ϕ\phi is the control parameter to balance exploration and exploitation in the course of evolution where it linearly decreases from 5.0 to 1.0 in this study according to [17].

3 Exact Enumeration

We apply exact enumeration to the truss problems where the upper level dimension of the search space is small (m12m\leq 12). Exact enumeration enables us to enumerate over all possible combinations of binary strings in the search space in the upper level, where each represents a topology design. Therefore we can remove the randomness for these problems from the upper level and investigate its search space rigorously. Algorithm 1 shows the pseudocode of our exact enumeration. This algorithm takes the upper level dimension mm as the input and iterates over all possible binary string combinations of mm-bits.

for i=1;i2m;i=i+1i=1;\ i\leq 2^{m};\ i=i+1 do
      compute xi\vec{x_{i}}
        \triangleright generate the bit string
       if xi\vec{x}_{i} is feasible then
            yi\vec{y}_{i} = loweroptimiser(xi\vec{x}_{i})
            
      Store W(xi,yi)W(\vec{x_{i}},\vec{y_{i}})
Algorithm 1 Exact Enumeration

If a binary string satisfies the upper level’s feasibility criteria G1G_{1} and G2G_{2}, it will be sent to the lower level. loweroptimiser finds the optimum vector for size (and shape), and we store its overall weight.

4 Bilevel Novelty Search

In this section we first introduce the components of our bilevel method, and then we combine these components and introduce the framework of proposed novelty PSO for bilevel truss optimisation.

4.1 Novelty-Driven PSO

Novelty-Driven PSO (NdPSO) is a variant of PSO employing novelty search to drive particles toward novel solutions that are different from previously encountered ones [11]. The main idea is to explore the search space by ignoring objective-based fitness functions and reward novel individuals. NdPSO uses the score of novelty to evaluate the performance of particles. For this purpose, it maintains an archive of past visited solutions to avoid repeatedly cycling through the same series of behaviours.

NdPSO evaluates the novelty of particles by computing the average distance of a behaviour to its k-nearest neighbours in the archive as follows:

nov(x)=1ki=0kdist(x,μi).\text{nov}(x)=\frac{1}{k}\sum_{i=0}^{k}\textit{dist}(x,\mu_{i}).

where μi\mu_{i} is the iith nearest neighbour of xx and dist is the Hamming distance metric. Novelty score ensures that individuals in less dense areas with respect to the archive get higher novelty scores.

NdPSO employs core principles of PSO and mainly replaces the objective function with novelty evaluation. Note that personal best and global best value in NdPSO show a dynamic behaviour. For more details on NdPSO, we refer the reader to [11]. We use NdPSO in the upper level of truss optimisation to discover novel topology designs.

4.2 Repair Mechanism in the Upper Level

Topology designs in the upper level are feasible if they meet G1(x)G_{1}(\vec{x}) and G2(x)G_{2}(\vec{x}).

The following conditions should be satisfied for G2(x)G_{2}(\vec{x}) [2]:

  • The degree of freedom (DoF) in a truss should be non-positive [5].

  • The summation of the number of members and restrain forces on a node must be equal or greater than the truss dimension.

  • The summation of the number of members and restraint forces on a non-carrying node must be greater than the truss dimension.

As stated in [5], necessary node constraints are more important than the DoF constraint. To deal with infeasible topologies, we use the (1+1)-EA [8] with the following comparator to repair solutions:

xy:=\displaystyle x\succeq y:= (α(x)α(y))\displaystyle\left(\alpha(x)\leq\alpha(y)\right)\vee
(α(x)=α(y)β(x)β(y))\displaystyle\left(\alpha(x)=\alpha(y)\wedge\beta(x)\leq\beta(y)\right)\vee
(α(x)=α(y)β(x)=β(y)θ(x)θ(y))\displaystyle\left(\alpha(x)=\alpha(y)\wedge\beta(x)=\beta(y)\wedge\theta(x)\leq\theta(y)\right)

where α\alpha is the violation degree of active necessary nodes, β\beta is the violation degree of truss DoF and θ\theta is the violation degree of second and third criteria in external stability. (1+1)-EA is a simple evolutionary algorithm where it produces an offspring by mutation and the offspring replaces the parent if the offspring is better with respect to the objective function mentioned above.

4.3 Bilevel Novelty-Driven Binary PSO Framework

Randomly generate the initial population of Binary PSO
Repair the initial population into feasible topologies
Set the velocity of particles in population
Evaluate the novelty score for each particle
yi\vec{y}_{i} = loweroptimiser(xi\vec{x}_{i})
Store W(xi,yi)W(\vec{x}_{i},\vec{y}_{i})
Update ptp_{t} and pgp_{g}
Update the archive
repeat
       for i=1 to population size do
             Update position of particle
             Update velocity of particle
             Repair the particle into feasible upper level solution
             Evaluate novelty score of the particle
             yi\vec{y}_{i} = loweroptimiser(xi\vec{x}_{i})
             Store W(xi,yi)W(\vec{x_{i}},\vec{y_{i}})
             Update ptip_{t}^{i} and pgp_{g} according to novelty score
             Update the archive
            
until termination criterion is met
Algorithm 2 Novelty-Driven Binary PSO for Bilevel Truss Optimisation

Our proposed approach works as follows (see Algorithm 2). Initially, the binary PSO generates a random population of binary strings. Next, the repair mechanism performs on the population to ensure the feasibility of particles. The particles’ velocities are drawn randomly from [υ,υ][-\upsilon,\upsilon]. Then, the novelty score is computed for particles with respect to the archive. Because all particles are feasible, loweroptimiser computes the corresponding optimal size (and shape) for the upper level topology. With this, we update the archive with the current population. Next, the position and velocity of particles are updated, and the above process repeats till the termination criterion is met.

5 Experimental investigations

In this study, we use multiple truss test problems with discrete sizing from the literature [26, 7, 2]. We investigate them in ascending order of length of topology design variable.

We split the problems into small and large instances. We apply exact enumeration to small problems where their topology search space is tractable (m12m\leq 12). To show its outcome, we set the ground structure of the problem as an upper bound reference. We sort the other designs with respect to their Hamming distance with this reference design (denoted by dHd_{H}). We report on the quality of solutions using the median of 30 independent runs in the lower level.

For large instances, we apply the proposed bilevel novelty search PSO and report on the quality of top best-found solutions. We investigate the obtained designs and identification of redundant bars and nodes in the design space. To setup our algorithms, we use the following parameters. For lower level optimisation, we use the parameter settings in [2, 1]. For the upper level optimisation, the swarm consisted of 30 particles, υ=6\upsilon=6 [17], c1=c2=1.0c_{1}=c_{2}=1.0, ω\omega linearly decreases from 0.9 to 0.4, and the maximum number of iterations is set to 300. We use k=3k=3 nearest neighbours to calculate novelty at the upper level.

5.1 25-bar truss

Figure 1 (II) shows the ground structure of 25-bar truss which is a spatial truss for size and topology optimisation [7]. This problem splits into two cases with respect to different load cases. The truss undergoes a single and multiple external loads for the first and second cases, respectively. The sizing of bars should be selected from different discrete sets for each case [7].

This is a symmetric truss where 25 truss bars are grouped into eight groups of bars. Therefore, there are 256 possible topologies at the upper level. Figures 2 and 3 show the outcome of exact enumeration on this test problem where we observed that up to first 50 and 55 designs with respect to dHd_{H} are feasible and the rest of the search space is infeasible. We can see that most of the feasible designs are in the upper bound vicinity where dH3d_{H}\leq 3. We can also observe that the high-quality solutions exist in the region where dH2d_{H}\leq 2 and dH3d_{H}\leq 3 for cases 1 and 2, respectively.

Table 1: Comparison of optimised designs for 25-bar truss.

[30] [16], [4], [7] This Study Case 1 (a) (b) (c) Best weight (lb) 546.01 484.85 482.6 483.35 484.3 [23] [26], [7] This Study Case 2 (a) (b) (c) Best weight (lb) 556.43 551.14 546.97 547.81 548.64

Table 1 shows our findings for both cases.

Refer to caption
Figure 2: Exact enumeration on 25-bar truss case 1 (right side truncated). dHd_{H} denotes the hamming distance with the upper bound reference.
Refer to caption
Figure 3: Exact enumeration on 25-bar truss case 2 (right side truncated).dHd_{H} denotes the hamming distance with the upper bound reference.

5.2 10-bar truss

10-bar truss is a well-known size and topology optimisation problem which its ground structure is depicted in Figure 1 (I). It undergoes single load and the sizing of bars should be selected from a discrete set where There are 10 bars in the topology design, which results in 1024 possible upper level topologies. See [26] for details on the simulation.

Figure 4 shows the outcome of exact enumeration and the designs are ordered according to their dHd_{H}. We only show the first 320 sorted designs because the rest of the designs are infeasible. This figure also shows the top obtained designs for this problem.

Refer to caption
Figure 4: Exact enumeration on 10-bar truss. dHd_{H} denotes the hamming distance with the upper bound reference.

We can see feasible designs are where dH4d_{H}\leq 4 and the best-found design’s dHd_{H} is 4. Table 2 shows our findings, and we can see that designs (b) and (c) with dH=2d_{H}=2, both identify two bars as redundant and incorporate all six nodes in their designs.

Table 2: Comparison of optimised designs for 10-bar truss.

[26] [4], [16], [7] [9] [21] This Study (a) (b) (c) Best weight (lb) 5531.98 5490.74 5056.88 4980.10 4965.70 5107.50 5131.70

However, design (a) which is the best-found design identifies four bars (A2A_{2}, A5A6A_{5}-A_{6} and A10A_{10}) as redundant and eliminates node 6. We can also see that other state of art methods, including [9] and [21] also identified the same topology as the optimal topology. However, our approach can obtain a solution with a lower weight due to the efficient lower lover optimiser.

5.3 52-bar truss

This is a size and topology optimisation problem where 52-bar truss are grouped into 12 bar groups resulting in 4096 possible designs. The truss undergoes three load cases and the sizing of bars should be selected from a discrete set [36]. Figure 5 (I) shows the ground structure of 52-bar truss, which is composed of 12 bars resulting in 4096 possible designs.

Refer to caption
Figure 5: Ground structure of 52-bar truss (I) and 72-bar truss (II).

Figure 6 shows the outcome of exact enumeration where we only show the first 250 designs sorted according to their dHd_{H}. For clear presentation, Out of all sorted combinations, 1900 designs are feasible, and the rest of the search space is infeasible. We also observed that feasible designs are located where dH6d_{H}\leq 6.

Refer to caption
Figure 6: Exact enumeration on 52-bar truss (right side truncated).

Table 3 shows our findings and, we can see that the top three designs for this problem identify one to three group of bars redundant, respectively.

Table 3: Comparison of optimised designs for 52-bar truss.

[36] [23] [26] [18] [16], [4], [7] This Study (a) (b) (c) Best weight (kg) 1970.14 1906.76 1905.5 1904.830 1902.610 1862 1880.3 1869.7

Design (a) depicted in Figure 7 (I) shows the best-found design that eliminates all redundant bars identified in design (b) and (c) and removes A37A39A_{37}-A_{39} summing up to nine redundant bars.

Refer to caption
Figure 7: Best-found designs for 52-bar (I), 15-bar truss (II) and 72-bar (III).

5.4 15-bar truss

This is a size and topology truss optimisation problem which is non-symmetric truss composed of 15 bars and truss undergoes three load cases and the sizing should be selected from a discrete set [37]. Figure 1 (III) shows the ground structure of 15-bar truss which is a non-symmetric truss composed of 15 bars.

Table 4 shows our findings by the proposed bilevel novelty search compared with other methods. We can see that designs (b) and (c) find the same weight, and they are symmetric around the vertical axis with respect to the topology and size of bars. Both designs remove 6 bars from the design space, and symmetrically they eliminate nodes 2 and 4 from the design space, respectively. Design (d) eliminates five bars and node 2 from the design space.

Figure 8 shows these three designs. Design (a) is the best-found design depicted in Figure 7 (II) eliminates five bars in the design space and provides a lighter solution compared with other methods.

Refer to caption
Figure 8: Second to fourth (b-d) best-found designs for 15-bar truss.
Table 4: Comparison of optimised designs for 15-bar truss.

[37] [4] This Study (a) (b), (c) (d) Best weight (kg) 142.12 105.74 89.899 90.223 91.874

5.5 72-bar truss

Table 5: Comparison of optimised designs for 72-bar truss.

[36] [23] [4], [7] This Study (a) (b) (c) Best Weight (lb) 400.66 387.94 385.54 368.16 369.15 370.15

72-bar truss represents a four storey structure for size and topology optimisation where which is a symmetric truss composed of 72 bars grouped into 16 groups of bars. The truss undergoes two load cases and the sizing of bars should be selected from a set [36].

Table 5 shows our findings by the proposed bilevel novelty search compared with other methods. We can see that designs (b) and (c) identify five groups of bars as redundant, including four common groups. This will lead to the elimination of 16 bars from the design space. Design (a) depicted in Figure 7 (III) is the best-found design. It combines the identified redundant bars in designs (b) and (c) and removes 20 bars in total from the design space and achieves a lighter solution.

5.6 47-bar truss

Table 6: Comparison of optimised designs for 47-bar truss.

[13] [29] [6] [2] This Study (a) (b) (c) Best weight (lb) 1885.070 1871.700 1836.462 1727.624 1724.947 1726.044 1727.624

This problem represents a transmission tower with symmetric truss bars grouped into 27 groups, and it considers size and shape optimisation in the lower level. See [13] for structural constraints and technical information to simulate the problem. Table 6 shows our findings in comparison with state of the art. We can see that our method obtained three different designs with respect to the topology. Design (a) incorporates 23 topology bars, and design (b) and (c) both incorporate 21 groups of bars and the main difference is including member groups of 23 and 26, respectively.

5.7 200-bar truss

Table 7: Comparison of optimised designs for 200-bar truss where \dagger denotes the reported solution is infeasible.

[4] [16] [19] [7] This Study (a) (b) (c) Best weight (lb) 27163.59 27858.50 25156.50 27282.54 27144.0 27575.0 27744.0

This size and topology optimisation problem includes 200-bars grouped into 29 bar groups. The truss undergoes three loading conditions and is subject to no displacement constraint. See [19] for details on simulation. Table 7 shows our findings and compared with reported weights in state of the art. The best-reported weight is 25156.5 lb, but this is an infeasible design because it violates the stress constraint by about 8%. We can see that the best design obtained by our method (design (a)) outperforms other designs. Design (a) and (c) both include 24 group bars but with different topologies; however, Design (b) incorporates all group members as 29.

5.8 224-bar truss

Table 8: Comparison of optimised designs for 224-bar truss.

[13] [14] [2] This Study (a) (b) (c) Best weight (lb) 5547.500 4587.290 3079.446 3063.866 3079.446 3102.079

This problem represents a pyramid truss where the truss bars are grouped into 32 groups and considers size, shape and topology optimisation subject to complex design specifications. See [13] for details on the simulation. Table 8 lists obtained designs by our method compared with state of the art. Design (a) outperforms other designs, and design (b) is as alike as the optimum design obtained in [2].

5.9 68-bar truss

Table 9: Comparison of optimised designs for 68-bar truss.

[29] [2] This Study (a) (b) (c) Best weight (lb) 1385.800 1166.062 1166.062 1167.528 1169.039

This size, shape and topology optimisation problem is a multi-load truss optimisation with 68 non-symmetric topology design variables. The optimum design should be feasible considering the structural reactions subject to 8 different loading conditions. See [2] for details on the simulation. Table 9 shows our findings in comparison with state of the art. We can see that our method obtained the best design alike to the one obtained in [2], where this design incorporates 34 group bars. However, designs (b) and (c) include 37 and 39 bars, respectively.

6 Conclusions

In this paper we considered bilevel optimisation of topology and size of trusses subject to discrete sizes. For the lower level optimisation, we use a reliable evolutionary optimiser. For the upper level, we employ exact enumeration and novelty-driven binary particle swarm optimisation to explore the upper level. We also use a repair mechanism to fix the infeasible solutions in the upper level that violate truss constraints.

In our experiments, we analysed the search space of smaller problems without randomness in the upper level. We also observed that we can find multiple distinct high-quality solutions with respect to the topology – moreover, we have found new best solutions for 8 out of 9 test problems.

Bilevel optimisation problems nest an optimisation problem into another where it increases the computational expense. This is the main drawback of this study. We also setup our algorithms with standard parameters. For future studies, it could be interesting (1) to investigate automated tuning of the algorithm, (2) to study this approach for large-scale trusses and (3) to improve it considering the computational expense of the problem.

References

  • [1] Ali Ahrari, Ali-Asghar Atai, and Kalyanmoy Deb. A customized bilevel optimization approach for solving large-scale truss design problems. Engineering Optimization, 52(12):2062–2079, 2020.
  • [2] Ali Ahrari and Kalyanmoy Deb. An improved fully stressed design evolution strategy for layout optimization of truss structures. Computers & Structures, 164:127–144, 2016.
  • [3] Timothy R Brooks, Gaetan K Kenway, and Joaquim RRA Martins. Undeflected common research model (ucrm): an aerostructural model for the study of high aspect ratio transport aircraft wings. In 35th AIAA Applied Aerodynamics Conference, page 4456, 2017.
  • [4] M Cheng. A Hybrid Harmony Search algorithm for discrete sizing optimization of truss structure. Automation in Construction, 69:21–33, 2016.
  • [5] Kalyanmoy Deb and Surendra Gulati. Design of truss-structures for minimum weight using genetic algorithms. Finite Elements in Analysis and Design, 37(5):447 – 465, 2001. Genetic algorithms and finite elements in engineering.
  • [6] Sadık Ozgur Degertekin, Luciano Lamberti, and IB Ugur. Sizing, layout and topology design optimization of truss structures using the jaya algorithm. Applied Soft Computing, 70:903–928, 2018.
  • [7] S.O. Degertekin, L. Lamberti, and I.B. Ugur. Discrete sizing/layout/topology optimization of truss structures with an advanced jaya algorithm. Applied Soft Computing, 79:363–390, 2019.
  • [8] Stefan Droste, Thomas Jansen, and Ingo Wegener. On the analysis of the (1+1) evolutionary algorithm. Theoretical Computer Science, 276(1):51 – 81, 2002.
  • [9] Michael Fenton, Ciaran McNally, Jonathan Byrne, Erik Hemberg, James McDermott, and Michael O’Neill. Automatic innovative truss design using grammatical evolution. Automation in Construction, 39(C):59–69, 2014.
  • [10] Vitor C Finotto, Wilson RL da Silva, M Valášek, and P Štemberk. Hybrid fuzzy-genetic system for optimising cabled-truss structures. Advances in Engineering Software, 62:85–96, 2013.
  • [11] Diana F. Galvao, Joel Lehman, and Paulo Urbano. Novelty-driven particle swarm optimization. In Stéphane Bonnevay, Pierrick Legrand, Nicolas Monmarché, Evelyne Lutton, and Marc Schoenauer, editors, Artificial Evolution, pages 177–190. Springer, 2016.
  • [12] OĞUZHAN Hasancebi. Optimization of truss bridges within a specified design domain using evolution strategies. Engineering Optimization, 39(6):737–756, 2007.
  • [13] OĞUZHAN Hasancebi and F Erbatur. Layout optimization of trusses using improved ga methodologies. Acta mechanica, 146(1):87–107, 2001.
  • [14] Oğuzhan Hasançebi and Fuat Erbatur. Layout optimisation of trusses using simulated annealing. Advances in Engineering Software, 33(7):681–696, 2002. Engineering Computational Technology & Computational Structures Technology.
  • [15] S He, E Prempain, and QH Wu. An improved particle swarm optimizer for mechanical design optimization problems. Engineering optimization, 36(5):585–605, 2004.
  • [16] V Ho-Huu, T Nguyen-Thoi, T Vo-Duy, and T Nguyen-Trang. An adaptive elitist differential evolution for optimization of truss structures with discrete design variables. Computers & Structures, 165(C):59–75, 2016.
  • [17] Md. Jakirul Islam, Xiaodong Li, and Kalyanmoy Deb. Multimodal truss structure design using bilevel and niching based evolutionary algorithms. In Genetic and Evolutionary Computation Conference (GECCO), page 274–281. Association for Computing Machinery, 2017.
  • [18] A Kaveh and S Talatahari. A particle swarm ant colony optimization for truss structures with discrete variables. Journal of Constructional Steel Research, 65(8-9):1558–1568, 2009.
  • [19] A Kaveh and S Talatahari. A particle swarm ant colony optimization for truss structures with discrete variables. Journal of Constructional Steel Research, 65(8-9):1558–1568, 2009.
  • [20] James Kennedy and Russell Eberhart. Particle swarm optimization. In International Conference on Neural Networks (ICNN), volume 4, pages 1942–1948. IEEE, 1995.
  • [21] Hamid Khayyam, Ali Jamali, Hirad Assimi, and Reza N Jazar. Genetic programming approaches in design and optimization of mechanical engineering applications. In Nonlinear approaches in engineering applications, pages 367–402. Springer, 2020.
  • [22] Rafal Kicinger, Tomasz Arciszewski, and Kenneth De Jong. Evolutionary computation and structural design: A survey of the state-of-the-art. Computers & structures, 83(23-24):1943–1978, 2005.
  • [23] Kang Seok Lee, Zong Woo Geem, Sang-ho Lee, and Kyu-woong Bae. The harmony search heuristic algorithm for discrete structural optimization. Engineering Optimization, 37(7):663–684, 2005.
  • [24] Joel Lehman and Kenneth O Stanley. Exploiting open-endedness to solve problems through the search for novelty. In ALIFE, pages 329–336. Citeseer, 2008.
  • [25] Joel Lehman and Kenneth O Stanley. Abandoning objectives: Evolution through the search for novelty alone. Evolutionary computation, 19(2):189–223, 2011.
  • [26] L J Li, Z B Huang, and F Liu. A heuristic particle swarm optimization method for truss structures with discrete variables. Computers & Structures, 87(7-8):435–443, 2009.
  • [27] Xiaodong Li, Michael G Epitropakis, Kalyanmoy Deb, and Andries Engelbrecht. Seeking multiple solutions: an updated survey on niching methods and their applications. IEEE Transactions on Evolutionary Computation, 21(4):518–538, 2016.
  • [28] Aritz D Martinez, Eneko Osaba, Izaskun Oregi, Iztok Fister, Iztok Fister, and Javier Del Ser. Hybridizing differential evolution and novelty search for multimodal optimization problems. In Genetic and Evolutionary Computation Conference (GECCO) Companion, pages 1980–1989, 2019.
  • [29] Natee Panagant and Sujin Bureerat. Truss topology, shape and sizing optimization by fully stressed design based on hybrid grey wolf optimization and adaptive differential evolution. Engineering Optimization, 50(10):1645–1661, 2018.
  • [30] S Rajeev and C S Krishnamoorthy. Discrete optimization of structures using genetic algorithms. Journal of Structural Engineering, 118(5):1233–1250, 1992.
  • [31] G Visweswara Rao. Optimum designs for transmission line towers. Computers & structures, 57(1):81–92, 1995.
  • [32] Guclu Seber, Hongjun Ran, Taeqoo Nam, Joseph Schetz, and Dimitri Mavris. Multidisciplinary design optimization of a truss braced wing aircraft with upgraded aerodynamic analyses. In 29th AIAA Applied Aerodynamics Conference, page 3179, 2011.
  • [33] Ankur Sinha, Pekka Malo, and Kalyanmoy Deb. A review on bilevel optimization: from classical to evolutionary approaches and applications. IEEE Transactions on Evolutionary Computation, 22(2):276–295, 2017.
  • [34] Mathias Stolpe. Truss optimization with discrete design variables: a critical review. Structural and Multidisciplinary Optimization, 53(2):349–374, 2016.
  • [35] BHV Topping. Shape optimization of skeletal structures: a review. Journal of Structural Engineering, 109(8):1933–1951, 1983.
  • [36] S J Wu and P T Chow. Steady-state genetic algorithms for discrete optimization of trusses. Computers & Structures, 56(6):979–991, 1995.
  • [37] Yan-Nian Zhang, Ping Liu, Bin Liu, Chao-Yan Zhu, and Yi Li. Application of improved hybrid genetic algorithm to optimized design of architecture structures. Huanan Ligong Daxue Xuebai(Ziran Kexue Ban)/ Journal of South China University of Technology(Natural Science Edition)(China), 33(3):69–72, 2005.