Abstract

Practical optimum design of structures often involves parameters with uncertainties. There have been several ways to deal with such optimisation problems, and one of the approaches is an antioptimisation process. The task is to find the optimum solution of common design variables while simultaneously searching for the worst case scenario of those parameters with uncertainties. This paper proposed a metaheuristic based on population-based incremental learning (PBIL) for solving antioptimisation of trusses. The new algorithm is called two-level PBIL which consists of outer and inner loops. Five antioptimisation problems are posed to test the optimiser performance. The numerical results show that the concept of using PBIL probability vectors for handling the antioptimisation of truss is powerful and effective. The two-level PBIL can be considered a powerful optimiser for antioptimisation of trusses.

1. Introduction

A truss structure is one of the most widely used engineering structures due to its simplicity and low cost for construction and design. Such a structure can be used in many engineering applications such as bridges, roofs, and towers. Throughout its history, a great deal of research work on truss design optimisation has been investigated, for example, [16]. The design process can be categorised as topology, shape, and sizing optimisation. The optimisers used for tackling truss design problems could be the methods with and without using function derivatives. Some of the most popular optimisers are evolutionary algorithms (EAs), which can deal with truss design having single or multiple objective functions. Using EAs, although having low convergence rate and lacking of search consistency, is popular and advantageous since they are simple to use and robust and can deal with any kind of design problems particularly truss design with discrete design variables.

Nevertheless, practical design of trusses and other structures often has inevitable difficulties when uncertainties are involved. For example, it is always difficult to define certain applied loads on structures and material properties. This implies that the real world design problem of trusses will include parameters with uncertainties and it becomes reliability-based optimisation. The simplest way to handle this is by adding the factor of safety to structural constraints. Alternatively, multiobjective design problems which minimise cost and maximise a parameter indicating structural reliability (e.g., structural compliance and natural frequency) are posed and solved for a set of the Pareto optimum structures [68]. The more popular approach is the use of reliability-based optimisation techniques, which involve probabilistic design constraints. For example, the use of gradient-based optimisers [9] and evolutionary algorithms [10] for this design process has been reported.

Apart from the aforementioned approaches, a simple but effective way to deal with optimisation with uncertainties is to use the so-called antioptimisation [11]. In the antioptimisation process, there are two sets of design variables, common design variables and ones with uncertainties predefined in certain intervals. One optimisation run has two simultaneous tasks. The first task is to find the solution for the interval variables giving the worst case scenario for the structure, while the second task is finding the optimum solution for the common design variables. Optimisers for this propose have been developed, for example, two-species genetic algorithm (GA) [12], and hybrid genetic algorithm (HybridGA) [13]. From the literature, it is found that using such evolutionary algorithms for solving an antioptimisation problem is somewhat time-consuming.

This paper is concerned with developing a metaheuristic (MH) for tackling antioptimisation of trusses. The work focuses on the metaheuristic because it can deal with discrete design variables which are usually employed in real-world truss design. Population-based incremental learning (PBIL) is chosen and adapted to deal with truss antioptimisation leading to five variants of PBIL. The five methods and HybridGA are then implemented on five antioptimisation problems of 2D trusses. Optimum results show that PBIL is a powerful optimiser for truss antioptimisation and it is superior to HybridGA.

2. Antioptimisation Problem

A typical single-objective truss optimisation is mass minimisation subject to structural design constraints, which can be expressed as where is a vector sized of common design variables, is structural mass, and are inequality constraints for safety requirements. When variables with uncertainties are included, the problem can be written as where is a vector sized of variables with uncertainty having lower and upper bounds as and , respectively.

For truss antioptimisation, the problem (2) is separated into two subproblems as the design problem (1) for searching for optimum design variables and the design problem for finding the worst case of a structure written as where is a function indicating the maximum violation of structural constraints. For simplicity, can be defined as with the design point being unchanged.

A traditional strategy for solving an antioptimisation problem is to use a two-level approach. The search process starts with initial solutions for and . In one iteration, the method searches for the optimum solution of based on the problem (1) by fixing the value of . Then, use the updated values of for finding the worst solution of based on the problem (3). The process is repeated until the termination conditions are fulfilled.

3. PBIL for Antioptimisation

Over the years, there have been a significant number of metaheuristic algorithms developed for a wide variety of real-world applications, for example, [1418]. PBIL is chosen for this work because it is a simple but powerful MH and suits well with the concept of antioptimisation. PBIL was first proposed by Baluja in 1994 [19]. The method is based upon a simple estimation of distribution algorithm and searches for an optimum using binary strings. Unlike GA which keeps a set of binary design solutions (better known as a population), PBIL uses the so-called probability vector to represent a binary population. Figure 1 shows some probability row vectors which will be used to produce binary population matrices where one row of the matrix represents a binary design solution. The element of the vector determines the probability of having the string “1” on the th column of the binary population. From the figure, it can be seen that one probability vector can produce various binary populations. As the optimisation proceeds, the probability vector is updated iteratively leading to an optimum solution. A typical computational procedure of PBIL is given in Algorithm 1. Initially, the probability vector is set as . Then, the corresponding population is generated where the best binary solution is found. The probability vector is then updated based upon the best solution as where is the th element of the probability vector from the previous iteration, is the updated th element of the probability vector, and is the th element of the best binary solution. is called a learning rate which herein is set to be a uniform random number in the range of generated anew when the probability vector update takes place. In this work, mutation is not used to modify the probability vector, but the value of after being updated will be set to the range of (if the updated value of is lower than 0.1 or higher than 0.9, it will be set as 0.1 and 0.9, resp.) in order to prevent a premature convergence.

Initialisation ,   ,  
Main procedure
(1) Generate a binary population B according to .
(2) Perform function evaluations and find the best
solution b from .
(3) Update using (5).
(4) Set to in cases that it is out of the interval.
(5) If the termination condition is met, stop the procedure;
otherwise, set and go to (1).

When dealing with an antioptimisation problem, the method is modified as shown in Algorithm 2. As it involves two levels of optimisation search, the developed PBIL will be named two-level population-based incremental learning. The algorithm starts with generating an initial binary population where each binary solution contains strings for design variables and variables with uncertainties . Then, the best binary solution containing two parts as for and for is found based on the design problem (1). On the other hand, the worst binary solution is obtained based on the problem (3). The method uses two probability vectors as and for representing binary populations of and , respectively. Afterwards, a set of binary design solutions for (denoted as ) are created based on , while each solution in the population has its second part of a binary string for as . The new best solution is obtained from sorting the current population and the best solution from the previous iteration. The probability vector is updated using the first part of the new best solution . This is the first level of the process which is said to be outer loops.

Initialisation ,   , and find and from an initial population.
Main procedure
(1) For to (outer loop)
(2) Generate a binary population according to and assign as the second part of every solution in . The population is
.
(3) Perform function evaluations .
(4) Find the new best solution b from based on the objective function in (1).
(5) Update with using (5).
(6) Set to in cases that it is out of the interval.
(7) For to (inner loop)
  (8) Generate a binary population according to and assign as the first part of every solution in . The population
  is .
  (9) Perform function evaluations
  (10) Find the new worst solution w from based on the objective function in (3).
  (11) Update with using (5).
  (12) Set to in cases that it is out of the interval.
(13) Next
(14) Next

For inner loops (steps (7)–(13)) which are the search for the worst case scenario, a set of binary solutions for (denoted as ) is generated from the probability vector where each solution has the first part of a binary string for as which is the first part of the current worst solution. The new worst solution is then obtained based on the problem (3) by sorting the current population and the previous worst solution. The probability is updated by using , the second part of . The inner loop procedure is stopped after loops. Similarly, the outer loop search is terminated after loops. This implies that if the population size for both inner and outer loops is , the total number of function evaluations for each simulation run is . It should be noted that we use the worst solution for finding the worst case structures because it is expected to give the worst objective function values which may help accelerate PBIL to the worst case. In the case studies, we will examine the use of best and worst solutions for searching the worst case scenario.

4. Truss Design Case Studies

Five antioptimisation problems (AOPs) of three truss structures will be used to test the proposed algorithms. The first truss is called a 2-bar truss shown in Figure 2. The structure is subject to a vertical load with uncertainty at node 3. The second structure is named a 10-bar truss [20] shown in Figure 3. The structure consists of 6 nodes and 10 bars where nodes 1 and 2 are fixed and nodes 4 and 6 are subject to external forces and , respectively. The third structure is called a 25-bar truss as displayed in Figure 3. The truss has 12 nodes and 25 bars where nodes 1 and 12 are fixed. The structure is applied by loads , , , , and at nodes 2, 4, 6, 8, and 10, respectively. The design problems can be detailed as follows.

AOP1: Optimisation of the 2-Bar Truss. The design problem can be written as: where is the cross-sectional area of the th bar element. is the maximum stress on truss elements. is the axial load acting on the th element, while is the critical buckling load for the element. The structures for all 5 test problems are made up of material with the Young modulus  N/m2, yield stress  N/m2, and density  kg/m3. The common design variables are shape and sizing variables. The external force is set to be variables with uncertainties. The task is to find the external force that gives the worst case scenario for the structure while simultaneously trying to perform mass minimisation.

AOP2: Sizing Optimisation of the 10-Bar Truss. The second design problem can be written as: where is the diameter of the th bar element. is the maximum -direction displacement of the structure. The common design variables are set to be discrete so that it is close to a practical truss design process. The external forces and are set to be variables with uncertainties. The task is to find the external forces that give the worst case scenario for the structure while, at the same time, trying to perform mass minimisation with sizing design variables.

AOP3: Sizing Optimisation of the 25-Bar Truss. The design problem can be written as:

In this case, there are uncertainties in applied loads and material property. The sizing design variables are set to have a symmetric structure. Thus, we have(i) for ,(ii) for and ,(iii) for and ,(iv) for and ,(v) for and ,(vi) for and ,(vii) for and ,(viii) for and ,(ix) for and ,(x) for and ,(xi) for and ,(xii) for and ,(xiii) for and .

AOP4: Shape and Sizing Optimisation of the 10-Bar Truss. The fourth design problem is the same problem as AOP2 with additional 4 shape design variables for . The shape variables determine the positions of nodes 3 and 5 in both and directions. The design variables are used to modify the original positions (shown in Figure 3) of nodes 3 and 5. The bound constraints are set as for .

AOP5: Shape and Sizing Optimisation of the 25-Bar Truss. The fifth design problem is the same problem as AOP2 with additional 3 shape design variables for . The shape variables determine the -direction positions of nodes 3, 5, 7, 9, and 11, where is set for the positions of nodes 3 and 11, is set for the positions of nodes 5 and 9, and is set for the positions of node 7. The design variables are used to modify the original positions (shown in Figure 4) of those nodes. The bound constraints are set as for .

By defining a few set of design parameter settings, various versions of PBIL can be obtained as follows.(i)PBILb5: this optimiser uses from the best solution instead of from the worst solution in step (8) of Algorithm 2. is set to be 5. (ii)PBILw5: this is PBIL detailed in Algorithm 2, where is set to be 5. (iii)PBILw5m: this is PBILw5 with GA mutation. Having generated binary populations in steps (2) and (8), The GA mutation is applied to the populations, where each solution has the probability of being mutated as 0.25. (iv)PBILw1: this is PBIL detailed in Algorithm 2, where is set to be 1.(v)PBILw10: this is PBIL detailed in Algorithm 2, where is set to be 10.

For AOP1, the population size is set to be 40, whereas the total number of function evaluations for stopping the search procedure is 2,400. For other design problems, the population size is set to be 100, whereas the total number of function evaluations for stopping the search procedure is 15,000. PBIL with various values is set to examine the effect of the inner and outer loops on the search performance. The GA mutation is employed under the assumption that it may help improving PBIL convergence rate. Each optimiser is used to solve the antioptimisation problems 30 runs. Since PBIL cannot deal with design constraints directly, the penalty function technique based on the fuzzy set theory [21] is employed. It should be noted that we have tested using several penalty function techniques earlier, and the fuzzy set theory gives the best results. The metaheuristics employed do not have reliable termination criterion, therefore, their search will be stopped based on the maximum number of function evaluations.

Furthermore, in order to verify the performance of the proposed algorithms, an existing evolutionary algorithm for antioptimisation called a hybrid genetic algorithm [13] will be employed to solve the test problems and compared with the various PBILs. For this performance test, HybridGA uses real codes for design variables. The method of Hooke and Jeeves is used for searching the worst case. The number of good solutions taken for mutation is set to be 10. The roulette wheel selection method is used to select design solutions for crossover operation. The optimiser is terminated when the maximum number of function evaluations set for PBILs in the previous paragraph is reached.

5. Optimum Results

The optimum results of AOP1 are given in Table 1. Figure 5 displays the contour of the objective function and the boundaries of buckling constraints with . It should be noted that the stress constraints do not affect the feasible region for this design case. From the figure, it is seen that the buckling constraint where  N gives the most narrow feasible region and therefore leads to the worst case results. The optimum for the worst case scenario is and  N. According to the results obtained from the various optimisers, HybridGA cannot capture the worst case for all runs, while PBILs can find the worst case for some optimisation runs. The best solutions obtained by using five versions of PBIL are the same, that is, and  N, which can be classified as a near optimum of the design problem. Based on the worst cases being explored, PBILw10 gives the best results, while the second best is PBILw1.

The optimum results of AOP2 obtained from the various optimisers are given in Table 2. For this design problem, it is obvious that the worst possible case for the 10-bar truss is when . From the results, it can be seen that HybridGA and PBILb5 fail to explore the worst case, while other optimiser which are based on using in step (8) of Algorithm 2 can find the worst case for almost every optimisation run. According to the mean value of objective function from 30 runs, PBILw1 gives the best results. However, it is found that PBILw1 cannot find the worst case for all 30 runs, although the values are not significant. This is due to the lower number of inner loops used to explore the worst case. In contrast, PBILw10 gives the worst results among PBILw variants because it spends less time in searching for the optimum mass. By comparing between PBILw5 and PBILw5m, the GA mutation gives insignificant improvement for PBIL.

The optimum results of AOP3 obtained from the various PBILs are given in Table 3. The worst case is . Similar conclusions as with the AOP2 case can be drawn except that PBILw5 is slightly better than PBILw5m. Table 4 shows the results of AOP4. Similar to the first two cases, HybridGA and PBILb5 fail to explore the worst case scenario, while, for this case, all the versions of PBILw can capture the worst case for all runs. PBILw1 gives the best results, while the worst among PBILw versions is PBILw10. For the fifth design case as shown in Table 5, PBILw optimisers can capture the worst case scenario for almost 30 runs, while PBILb5 and HybridGA fail to find out the worst case solutions. The best optimiser is PBILw1 whereas PBILw5m is slightly better than PBILw5.

Based on the standard deviation, the variants of PBILw are rather consistent. From the constraint violation values in Tables 15, it can be said that the fuzzy set theory is efficient and effective for constrained truss design. Table 6 shows the total number of worst cases captured by the optimisers having solved the design problems for 30 runs. It can be seen that PBILw is effective for exploring the worst case scenarios for AOP2-5. PBILw10 fails to capture the worst case once for AOP3 and AOP5, although it spends more time to search for the worst case scenario. This can possibly be due to a premature convergence of the algorithm. For the first design problem, all the optimisers have more difficulty to search for the worst case.

The best structures obtained from running PBILw5, PBILw5m, PBILw1, and PBILw10 for AOP2, AOP3, AOP4, and AOP5 are illustrated in Figures 6, 7, 8, and 9, respectively. The structures obtained from the 4 optimisers for each design case are rather similar in size and shape to each other. In cases of the design problems AOP2-5, with 15,000 function evaluations and population size of 100, PBILw1 has a number of outer loops as loops, while PBILw5 and PBILw10 have only 25 and 14 loops, respectively. In the test problems, the number of inner loops is adequate to search for the worst cases for all design cases; thus, PBILw1 which spends more time to search for the optimum solution of gives the best results for all design cases. In order to use the proposed PBIL for antioptimisation of other engineering systems, predefining the proper value of is important since it can affect the search performance. This relies on several factors such as the size of variables and . The hybrid genetic algorithm, on the other hand, is not efficient for the truss design problems. However, optimisation parameter settings can affect its search performance.

6. Conclusions and Discussion

A metaheuristic based on PBIL for antioptimisation of trusses is developed, and it is termed two-level PBIL. The method consists of two levels for two searching tasks. The first level is an outer loop used to explore the optimum of common design variables, while the inner loop is used to find the worst case scenario of the variables with uncertainties. It is shown that when searching for the worst case, the function evaluation based on the current worst solution gives better search results than using the current best solution. The GA mutation applied to a binary population of PBIL does not have significantly impact on PBILw search performance. The results show that the proposed PBILw is an efficient optimiser for tackling a truss antioptimisation problem. Moreover, it is superior to the hybridGA. The performance of PBILw, to a great extent, relies on the predefined number of inner loops for searching the worst case. It can be concluded that the concept of using probability vectors to represent binary populations in PBIL is powerful for dealing with antioptimisation. For future work, the hybrid approach of PBIL will be studied. Also, the applications of the two-level PBIL will be employed to tackle other antioptimisation problems.

Acknowledgments

The authors are grateful for the support from The Royal Golden Jubilee Ph. D. Program (Grant no. PHD/0145/2553) and the Thailand Research Fund (Grant no. BRG5580017).