Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
S I I M P L I I F Y I I N G D E S I G N O F T R U S S S Y S T E M U S I I N G
G E N E T I I C A L G O R I T H M S
*A A Adedeji and S. P. Ejeh
*Department of Civil Engineering, University of Ilorin. PMB 1515, Ilorin,
Nigeria. Email: amadeji@yahoo.com
Department of Civil Engineering, Ahmadu Bello University, Zaria, Nigeria
Abstract
Genetic Algorithm is a powerful search tool enabling an optimum objective function to converge rapidly. Here, two variable formations were used, but functions of more variables were easily incorporated and implemented. The use of binary coding, in a Genetic Algorithm procedure indicated a simple application of this method to a wide variety of optimization problems in design. However, the optimum value of cost function of the truss members was obtained by minimizing the section of the members, which was later compared favourably to and more economically viable than the values obtained from BS 5950 design results.
Keywords
Design, truss system, genetic algorithm, optimization, cost function
1. Introduction
The design of a system is a major field of the engineering profession. The process of designing a system result in a set of drawing, calculations and reports, and the system can be fabricated based on these. Design is an iterative process. The designer’s experience, intuition and ingenuity are required in the design of a system. The use of iteration implies analyzing several trial systems in a sequence before an acceptable design is obtained.
The analysis problem is concerned with determining behaviour of an existing system, or a trial system being designed for a given task. Determination of behaviour of an engineering system is by calculating its response under the specified input (loads). In the highly competitive world of modern technology, it is no longer sufficient to design a system that performs the required task satisfactorily, but it is essential to design an efficient, versatile, unique and cost effective system. To design such system, proper analytical, experimental, and numerical tools are needed.
33
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
It is therefore a challenge for an engineer to design efficient and cost effective systems without compromising their integrity. The conventional design process depends on the designer’s intuition, experience, and skill.
This overwhelming presence of human element can sometimes leads to erroneous and uneconomical results in the synthesis of a complex system.
Furthermore, the conventional design process can involve a lot of calendar time. The optimal design process forces the designer to identify explicitly a set of design variables, a cost function to be minimized, and the constraint functions for the system. Proper mathematical formulation of the design problem is a key to good solutions. Optimization process is more organized by using rigorous information to make decision, and it has been effective and leads to saving construction material during the design process.
The aim of this project is to design a roof truss using Genetic Algorithms to optimize the design variables. In order t o obtain the optimum value of cost function of the material, section of the members was minimized. The results were compared with the conventional method of design. The Pratt type of roof truss was adopted using steel roof truss system for a lecture theater room. Axial forces of the truss system model were computed by using the method of joint resolution. Design consideration to BS 5950 was adopted, while Genetic Algorithm operators such as the selection, cross over, and mutation to the selected structure was employed for the search of optimal design
2. Evolution Algorithms and Search Types
Optimal design process has various conventional methods of computation such as Graphical Optimization, Simpson Optimization Method (Arora,
1989) and of recent the Evolutionary Algorithms. Evolutionary algorithms is an umbrella term used to describe computer-based problem solving systems which use computational model of evolutionary processes as key elements in their design and implementation. A variety of evolutionary algorithms have been proposed. The major ones are: Genetic Algorithms, Evolutionary
Programming, Evolution Strategies, Classifier System and Genetic
Programming. They all share a common conceptual base of simulating the evolution of individual structure via processes of selection, mutation and reproduction. Genetic algorithms method of optimization is adopted in this project
Genetic Algorithms (GAs) are search procedure that uses the mechanics of natural selection and natural genetics (Goldberg 1989). It uses evolutionary
34
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P. techniques, based on function optimization and sometimes artificial intelligence, to develop a solution. Genetic Algorithm (GA) differs from conventional search techniques in several ways. For example, it works with a coding of solution set not the solutions themselves. Also searches are done from a population of solutions and not from a single solution. GA users do not rely on information (fitness function) such as derivatives or other auxiliary knowledge. It uses probabilistic transition rules and not deterministic rules as in conventional methods.
Engineering systems are designed to perform specific tasks. Usually, many alternative designs can perform the same tasks. The important thing is to look for the alternatives that are the best. Economic problems are integral part of engineering because engineers are sensitive to the direct cost of a design.
They must anticipate maintenance and operating cost.
3. History of Genetic Algorithms
The observation of Genetic Algorithms was first mathematically formulated by Holland (1975). Usually the algorithm breeds a predetermined number of generations; each generation is populated with a predetermined number of fixed length binary strings. Holland’s book published in 1975 is generally acknowledged as the beginning of the research of genetic algorithms. Until the early 1980s, the research in genetic algorithms was mainly theoretical with few real applications. De Jong’s (1975) work attempted to capture the features of the adaptive mechanisms in the family of genetic algorithms that constitute a robust search procedure.
Holland (1992) work on adaptive systems laid the foundation for later development; most notably, he was also the first scientist to explicitly propose crossover and other recombination operators. These foundational works established more widespread interest in evolutionary computation. By the early to mid 1980s, genetic algorithms were being applied to a broad range of subjects.
4. Research Methodology
The General Principles of Truss Design to BS 5950: Part I was used in the analysis of the truss system. It was assumed that the members are joined together by smooth pin and the loads consist of concentrated forces applied at the joints. The loads were assumed to be applied at the node points of the members, so that they are principally subjected to direct stresses was used for structural analysis by the joint resolution method.
35
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Based on limit state philosophy for building trusses according to BS 5950, the members were designed at the ultimate limit state for strength, stability and fatigue where applicable, and at the serviceability limit state for deflection and durability. Tension members need only be designed at the ultimate limit state.
The compressive strength P
C
depends on the slenderness and the design strength P y
. Tests on axially loaded, pin ended struts show that their behaviour can be represented by a number of curves which relate to the type of section and the axis of buckling. These curves are dependent on material strength and the initial imperfections, which affect the inelastic behaviour and the inelastic buckling load. The appropriate table (Table 25 of BS 5950) was chosen by reference to the section type and thickness, and the axis of buckling. The compressive resistance P
C is,
P c
= A g p cs
(1)
P c
= A g p c for slender sections.
(2) for all other sections. where A g
is the gross sectional area, p cs
is the compressive strength based on a reduced design strength.
The tension capacity of a member P t
= A e p y
in which A e
is the effective sectional area. Where a member is connected eccentrically to its axis then allowance should be made for the resulting moment. Alternatively, such eccentric effects may be neglected by using a lower value of the effective A e
.
For single angle connected through one leg,
3a
1
A e
= a
1
+ a
2
(3a
1
+ a
2
)
(3) where a
1 is the net sectional area of the connected leg and a
2
is the sectional area of the unconnected leg.
5. Problem Formulation
The design of most engineering systems is a fairly complex process. Many assumptions must be made to develop models that can be subjected to
36
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P. analysis by the available methods and the models must be verified by experiments.
(a) Design variables
Formulation of an optimum design problem involves transcribing a verbal description of the problem into a well-defined mathematical statement. The formulation process begins by identifying a set of variables to describe the design variables. Once the variables are given numerical values, we have a design of the system. One must be able to change the variables independently to obtain alternative design; in other words, design variables must be independent of each other as far as possible. These variables are regarded as free because the designer can assign any value to them. An important first step in the proper formulation of the problem is to identify design variables for the system.
(b) Design function
The objective function or cost function is a criterion needed to judge whether or not a given design is better than another. To be meaningful, valid objective function is influenced by the design variables.
( c) Design constraints
All systems are designed to perform within a given set of constraints which include limitations on resources, material failure, response of the system, member sizes, etc. The constraints must be influenced by the design variables of the system, because only then can they be imposed; i.e. a meaningful constraint must be a function of at least one design variable.
Most constraints for design problems are expressed as inequalities. For example, the actual member stress must not exceed the material allowable stress.
6. Generic System of Genetic Algorithms
Genetic algorithms are not too hard to program or understand, since they are biological based. Thinking in terms of real life evolution helps to understand the following operation system.
6. 1 Creating a Random Initial State
An initial population is created from a random selection of solution (which is analogous to chromosomes). This is unlike the situation for Symbolic
Artificial Intelligent Systems, where the initial state in a problem is already given instead.
37
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
6.2 Fitness Evaluation
A value for fitness is assigned to each solution (chromosome) depending on how close it actually is to solving the problem (thus arriving to the answer of the desired problem). These “solutions” are not to be confused with
“answers” to the problem, but as possible characteristics that the system would employ in order to reach the answer.
6.3 Selection
According to Dawkins (1986), national selection means differential survival of entities where some entities live and others die. There are many different techniques (such as elitist, linear rank, roulette wheel, stochastic universal sampling and truncated selections) which a Genetic algorithm can use to select the individuals to be copied over into the nest generation. In this work
Tournament selection method (Tang et al, 1996) is employed, where subgroup of individuals is chosen from the large population and the member of each subgroup compete against each other, while only one from each subgroup is chosen to reproduce.
6.4 Reproduction
According to Dawkins (1986), natural selection means differential survival of entities where some entities live and other die. For this to happen there must be a population of entities capable reproduction. In genetic algorithm, the two basic operators for reproduction are: Crossover and Mutation. Performance of genetic algorithm depends on the two aforementioned operations.
6.5 Crossover
Crossover is a Genetic Algorithm operator that entails choosing two individuals to swap segments of their parents. This process is intended to stimulate the analogous process of recombination that occurs to chromosomes during sexual reproduction. In other words, crossover causes genotypes (set of genes that builds a life form or phenotype) to be cut and spliced.
6.6 Mutation
This operator forms a new chromosome by making (usually small) alterations to the values of genes in a copy of a single parent chromosome, just as mutation in things changes one gene to another, so also in a genetic algorithm.
38
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Binary encoding for single-point crossover was adopted for easy identification of the main variables of short chromosome with less design information for the phenotype.
6.8 Next Generation
If the new generation contains a solution that produces an output that is close enough or equal to the desired answer, then the problem has been solved. If this is not the case, then the new generation will go through the same process ad their parents did. This will continue until a solution is reached. Simple outline of genetic algorithm is shown in Figure 1. And in Appendix I programme procedure for a simple GA pseudo-code is illustrated.
Initial Population
Fitness Objective function
Selection
Crossover
Mutation
GEN > MAX GEN
NO
GEN ~ GEN + 1
YES choose initial population evaluate each individual’s fitness repeat
Stop select individuals to reproduce mate pairs at random apply crossover operator apply mutation operator evaluate individual’s fitness until terminating condition
Fig. 1. Outline of genetic algorithm
7. Genetic Algorithms in Optimal Design
Genetic algorithms were developed to solve unconstrained optimisation problems. However, engineering design problems are usually constrained
(Obayashi et al, 2000). They are solved by transforming the problem to an unconstrained problem. The transformation is not unique and one possibility is to use the following strategy:
Find x = [ b x
1
,…, b x
NEBV
; i x
1
,…, i x
NNIV
; s x
1
,…, s x
NSBV
] (4)
39
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Minimise : f ( x )
i c i
Max ( 0 , g i
)
i
c j
h j
( 5 ) where design variables b, i and s = Boolean, inequalities and continuous respectively, c i
and c j
= penalty parameters used with inequality and equality constraints. Determining the appropriate penalty weights is always problematic. An algorithm can be proposed here where the penalty weight is computed automatically and adjusted in an adaptive manner. First the objective function is expressed: f ( x )
c a i
Max ( 0 , g i
)
i
h j
( 6 )
In order to select c a
: (i) c a
is set as the minimum f(x) among all feasible designs in the current generation, if there are feasible designs in the current generation. And if the maximum f(x) among all feasible designs is used, infeasible designs will have a smaller probability to survive even if the constraint violations are small; (ii) c a
is set as the f(x) that has the least constraint violation if there is no feasible design.
The general constrained nonlinear programming problem can be stated as follows:
Minimize f(x) = cost (fitness) function (7a)
Subject to g j
(x)
0, j = 1, 2, …q
(7b) where x = {x
1
, x
2
,….x
n
} T = a vector of n design variables, g j
(x) = constraints functions. This can be transformed into the following model:
Minimise f(x) = cost (fitness) function
Subject to
(8a) g
( x )
1
ln n i
1 exp[
g i
( x ))
0
The parametric constraint evaluation functions
( 8 b )
1
ln i n
1 exp[
g i
( x ))
0 and if
the optimisation problems in equations (7) and (8) would have the same Kuhn-Tucker points. In other word equation (8) can be solved by using quasi-exactness penalty function.
40
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
( x , a )
f ( x )
a
ln i n
1 exp[
g i
( x ))
0 ( 9 )
Parameter
can be chosen in the range10 3 to 10 5 and a > 0 is the penalty factor. The fitness function of GA therefore is:
Max F(x, a) = c -
(x, a) (10) c is a large positive number to ensure F > 0.
Typically, cost is the most popular optimisation criterion in structural design.
Cost is a function of the total weight of the structure. Other important factors that may be considered in estimation of the cost of a structure are associated with maintenance (relating to the total surface area for structural element) and connections. For framed structures, where total weight is the only term in the objective function subjected to stress, displacement, and fabrication constraints, the optimisation problem may be defined as:
Minimise, z
W
H e
e
L e
A e
( 11 )
Subject to the following constraints:
{
l
}
{
all
}
{
u
}, d l
d all
d u
and A l
A all
A u
(12) where
e
, L e
and A e
= material density, length and cross-sectional area of the element e respectively, {
}, d and A represent the constraints for stress, displacement and area respectively. Subscripts i and u refer to the prescribed lower and upper boundaries of each constraint.
In GA, to evaluate the performance of a solution string, the string’s binary characters are decoded into values of the design variable representing the properties of the structure. Using these design variables, a structural analysis is performed (using Finite Element method of analysis), after which the value of the objective function as given in equation (12) is computed. Now if any constraints are violated, a penalty (i.e. the degree in which the constraints are violated) is applied to the objective function. Therefore the penalised objective function provides a relatively meaningful measurement of performance of the solution string. Typically the penalty functions are of the form:
41
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
i
1
k
c c max
1
n
( 13 ) where
i
= the penalty constraint i, k = penalty factor, c = value of the constraint from a solution string, c max
= value of the constraint i and n = penalty rate. The penalty objective function of a particular string can be obtained by multiplying the fitness value or cost objective (ie weight of the stricture) by the corresponding penalty factor k. so that:
P
W m
i
( 14 ) where P = penalized objective function, W = weight of the structural member and m = total number of points where the constraints are checked and the product representing the total penalty for i constraints.
Once the fitness of each string in the population is determined from the penalised objective function values, a new generation of string is produced using reproduction operator (see Reproduction for crossover and mutation (of
0.1%) methods). After a mutation operation is applied to the population a new generation is reproduced.
In this case the population is divided into several partitions. The strings inside each partition are assigned the same probability of being selected as parent strings. This reproduction scheme may be based in the elitist model
(see selection) as proposed by De Jong (1975) where the partitioning may improve local search in the neighborhood of the upper partition of the population. As such global exploration of the search space may be prohibited.
8. Numerical design Example
8.1 Design Information
The stucture: Lecture Theater Building,
Code of Practice: BS 5950
General Loading is shown in Table. 1
8.2 Design Load
Factor of Safety: Live Load = 1.6, Dead load = 1.4
Total Dead Load = 0.515 x 9.12 x 2 = 9.39 KN
Figure 2 shows the plan and section of the Pratt truss system.
42
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Loading conditions
Table 1. Loadings
Loading ( kN/m 2 )
Roofing Sheet 0.075
Fixing 0.045
Services
Purlins
Self Weight
0.100
0.028
0.267
Live Load 0.250
X
X
20 m
TRUSS SYSTEM PLAN
9 m
1.5m
6 @ 1.5m = 9.00 m
SECTION X-X
Fig. 2 Truss system
43
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
8.3 Imposed and Design Load
Impose loads on roof = 0.250 KN/m 2
Total Impose Load = 0.250 x 9.00 x 2 = 4.50 KN
Design Load (w) = 1.4G
K
+ 1.6Q
K
Load at Node = 3.4 KN
8.5 Design of Steel truss
The roof truss design is grouped into four; the top chord, the bottom chord, the vertical chord, and the diagonal chord. The maximum axial load for each member was used for each section. The tension and compression capacity only were determined here since the purlins was expected to be on the nodes.
No load is expected to be along span of the top members and thus implies that no need for checking the load capacity. Appendix II shows the truss system loadings and dimensions as well as the results of the axial forces used in the design according to BS 5950.
For the construction of the trusses in steel, an Equal angle sections are used.
This section provides the strength and rigidity require of members in such a frame, while at the same time having a good strength-to-weight ratio and easy handling and fixing characteristics. All the designs conform to Table 2 of BS 5950 shows members’ properties.
Table 2. Members’ properties (geometrical and material)
Parameters
Material:
Shape:
Cross-section Area,
Characteristic strength
Allowable compressive stress
Maximum Applied Member loads
Values
Steel
Equal angle
A = 2ht – t 2
p c =
273 N/mm 2
σ a
= 148 N/mm 2
P cmax
= 51.72 KN (Top
Member)
P
T
max
P c max
P
T
max
Applied Stress,
Member Length
L
2
L
3
L
4
51.01 KN (Bottom Member)
10.3 KN (Vertical Member)
14.57 KN (Diagonal Member)
σ = P/A
L
1
= 1.52 m (Top member)
1.50 m (Bottom member)
1.50 m (Vertical member)
2.12 m (Diagonal member)
Source: Adeyemo (2004)
44
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
9. Optimization Procedure
9.1 Problem Formulation
Minimize Z
(h, t)
= 2 ht – t 2
Subjected to:
(a) Stress in Compression where g
1
≡ σ – σ a
≤ 0
σ = P/A
(15)
(16)
(17)
and
2 ht
P c
t
2
148
0 ( 18 )
(b) Stress in Tension
2 ht
P c
t 2
275
0 ( 19 )
(c) Other Constraints
P ≤ (2ht – t 2 ) P c
(20)
9.2 Genetic Algorithms Numerical Analysis
To find the Minimum of the function f(h
2
t) = 2ht – t 2 with both h and t as an integer, the code generation involves the use of binary representation of nine bits has been chosen for top and bottom chords where the six bits on the left represent the h value and the three bits on right represent the t value (Table
3). Also, eight bits has been chosen for vertical and diagonal chords where the five bits on right represent the h and three bits on right represent the t value.
Let’s take an optimal steel section of 43 x 43 x 5 i.e. (43, 5). Its cross sectional area A = 405
Then, (2ht – t 2 ) – 405 = 0
45
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Table 3. Code Generation for top and bottom chords
String h t
Fitness Expected
Count
Actual
100110 101
101010 100
101101 100
100010 110
101000 101
100011 110
38
42
45
34
40
35
5
4
4
6
5
6
0.020
0.012
0.016
0.030
0.033
0.048
0.75
0.45
0.60
1.13
1.24
1.81
1
1
2
1
0
1
For the first string, 2ht – t 2 = 355
Then, 405 – 355 = 50
Therefore, Fitness = inverse of 50 (i.e. 50 -1 ) = 0.020
Fitness Average = 0.0265
0.020
Expected count = = 0.75 ≈ 1
0.0265
By dividing an individual’s fitness value with the average of all fitness value, we can calculate the expected count of this individual in the next generation.
Table 3. Reproduction of Selected String
Selected
String
After
Crossover
& Mutation
h
(mm)
t
(mm)
Reproduction
Actual
100110101 100110110
100011110 100011101
100010110 100000101
101000101 101010110
38
35
32
42
6
5
5
6
Fitness Expected
Count
- 0.00
0.013
0.009
-
2.24
1.35
0.00
0
2
2
0
101101100 101101110
100011110 101011100
45
43
6
4
-
0.013
0.00
2.24
0
2
After several iterations using the Genetic Algorithm operators Table 4 gives the last iteration in which the result was found.
46
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Table 4. Final Iteration
String
101010101
101010101
100010101
101010101
100011101
101010101
After
Crossover
h
(mm)
& Mutation
101010101 42
101010101 42
100010101 34
101010101 42
100011110 34
101010101 42
t
(mm)
5
6
6
5
5
5
Fitness Expected
Count
0.100
0.100
0.011
0.100
0.011
-
1.85
1.85
0.20
1.85
0.20
0.00
Actual
2
0
0
2
2
0
The code generation for vertical and diagonal member uses eight bits of string, where five bits at the left represent h-value and three bits at the right represent the t-value.
Table 5: Code Generation for vertical and diagonal members
String h
(mm)
1011 1101
1011 0100
1010 0110
1100 1101 27 t
(mm)
5
4
4
6
3
5
Fitness
0.06
0.02
0.03
0.06
0.014
-
Expected
Count
1.94
0.65
0.97
1.94
0.45
0.00
Table 6. Reproduction of Selected Strings.
Selected
String
After
Crossover
& Mutation
h
(mm) t
(mm)
Fitness Expected
Count
Actual
2
0
0
2
1
1
Actual
10111101
10100110
10111101
11001100
10110100
10100110
10110110
10101101
10111100
11001111
10100110
10100100
22
21
23
25
20
20
6
5
4
4
6
4
-
0.03
0.02
0.03
0.06
0.01
0
1.2
1.8
1.2
2.4
0.4
0
1
2
1
2
0
After several iterations, using Genetic Algorithm operators the best solution to the problem was found in Table 7 and Figure 2 gives the graph of fitness against generation.
47
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Table 7. Final Iteration
Selected
String
After crossover
&
Mutation h
(mm) t
(mm)
Fitness
Expected
Count
Actual
10100110
11000101
10100110
11000101
11000101
11000101
10000101
11100110
10000101
11100110
11000101
11000101
16
28
16
28
24
24
6
5
5
5
6
5
0.01
-
0.01
-
0.20
0.20
0.14
0.00
0.14
0.00
2.86
2.86
0
3
3
0
0
0
Figure 2 shows the graph of fitness against the generation, while the best solution for the vertical and diagonal members was found. in Figure 3.
0.12
0.1
0.08
0.06
0.04
0.02
0
0 2 4 6
8
Fig. 2 Fitness against generation for top and bottom chords
48
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
0.25
0.2
0.15
0.1
0.05
0
0 2 4
6 8
Fig.3 Fitness against generation for vertical and diagonal members
10. Discussion of Results
An important aspect in Genetic Algorithm is to decide which individuals should be chosen as parents for the purpose of procreation. With Genetic
Algorithm, this selection is based on the string fitness: according to the
‘Survival of the Fittest’ principle. Once two parents had been selected the
Genetic Algorithms combines them to create two new offspring. A new string with high fitness appears in the next generation.
Table 8 Comparison of Results for the Truss System
Members Position
Top Member
BS 5950
45 x 45 x 6
Area = 504 mm 2
Genetic Algorithm
42 x 42 x 5
Area = 395 mm 2
Bottom Member
Vertical Member
Diagonal Member
45 x 45 x 6
Area = 504 mm 2
25 x 25 x 5
Area = 225 mm 2
25 x 25 x 5
Area = 225 mm 2
42 x 42 x 5
Area = 395 mm 2
24 x 24 x 5
Area = 215 mm 2
24 x 24 x 5
Area = 215 mm 2
49
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
The results obtained by BS 5950 (1985) was compared with the bit string coded Genetic Algorithm Solution as shown in Table 8. It was observed that the area which is the function of mass obtained by Genetic Algorithm is minimal when compared to that of BS 5950, therefore the best possible solution has emerged.
11. Conclusion
The simple Genetic Algorithm for a problem formulation is a powerful tool that is able to converge rapidly to an optimum value of objective function. In this project, two variable formations were used, but function of more variables was also easily employed.
However, the optimum value of cost function of the material was obtained by minimizing the section of the member, which was later compared to the values obtained from BS 5950. It could be concluded here that the cost function of the GA application is 0.85 of the BS 5950 design application.
Aside the rapid convergence by the GA application, the results obtained are economical and unique and could be relied upon due to its operation simplicity. However in a multi-dimensional problem, the algorithm may require powerful software, such as MATLAB programming facility, for a number of generations following the Pseudo-Code of a simple GA in this work.
1 2 .
.
R e f f e r e n c e s
Adedeji, A. A., (2005), Genetic (Evolutionary) Algorithm: Introduction and
Its Use as an Automatic Structural Design Tool, Seminar Presented to the
Faculty of Engineering, University of Ilorin.
Adeyemo, A. A. (2004). Analysis and Design of Steel Roof Truss of a
Lecture Theatre for 300 seats, A Project report submitted to Civil
Engineering Department, University of Ilorin. pp 1 – 32
Arora, J. S. (1989), Introduction to Optimum Design, McGraw-Hill Inc, pp 1-
12.
British Standards, BS 5950: Structural Use of Steelwork in Building: Part 1:
1985, code of Practice for Design in Simple and Cautious Construction, Part
2: 1985, London.
50
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Dawkins, R, (1986), The Blind Watchmaker: Why the Evidence of Evolution
Reveals a Universe Without Design, W. W. Norton. pp 125.
De Jong, K. A. (1975), An analysis of the Behaviour of a Class of Genetic
Adaptive Systems, Doctoral Dissertation, University of Michigan, Diss.
Abstract (No. 76-9381) on International Vol.36, No. 10, pp51.
Goldberg, D. E. and Samtani, M.P. (1989) Engineering Optimization via genetic algorithm, Proc. 9th Conf. on Electronic Computation, ASCE, New
York, NY, pp.471-484.
Holland, J. H. (1975) Adaptation in Natural and Artificial Systems, the
University of Michigan Press, Ann Arbor. MI University of Michigan Press
Holland, J. H. (1992) Genetic algorithms, Scientific American, July 1992, pp.66-72.
Obayashi, S., Daisuke, S., Yukihiro, T. and Naoki, H. (2000) Multiobjective evolutionary computation fro supersonic wing0shape optimisation, IEEE
Transactions on evolutionary computation, Vol.4, No.2, pp.183 – 187.
Park, G. .J. and Lee, W. I (1992) A Structural Optimization Post-Processing
Taguchi Method, Proc. Korea-Japan Joint Seminar on Structural
Optimization, Seoul, Korea, pp.109-117.
Porto, V., Fogel, D. and Lawrence. F. (1995) Alternative neural network training methods, IEEE Expert, Vol.10 No.3, pp.16-22
Radford, A. D. and Gero, J. S. (1998), Design by Optimisation in
Architecture, Building and Construction, Van Nostrand Reinhold Company,
N.Y.
Rajeev, S and Krishnamoorty, C. S. (1992) Discrete Optimization of
Structures Using Genetic Algorithms, J.S. Engrg, ASCE, Vol.118 No.5, pp.1233-1250.
Rawlins, G. J. E., (1991) Introduction. in, Foundations of Genetic Algorithms
1, editor Morgan Kaufmann. pp 1 – 12.
Sasaki, D., Masashi, M., Obayashi, S. and Nakahashi, K. (2001)
Aerodynamic Shape Optimisation of Supersonic Wings by Adaptive Range
51
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
Multiobjective Genetic Algorithms, First International Conference, EMO
2001, Zurich, Switzerland, Proceedings Vol.1993, pp.639 – 652.
Tang, K. S., Man, K. F., Kwong, S. and He, Q. (1996) Genetic algorithms and their applications, IEEE Signal Processing Magazine, Vol.13 No.6, pp.23
– 37.
Appendix I
5.
6.
7.
8.
9.
10.
11.
12.
13.
Programme Steps of a Simple GA
1.
2.
3.
4.
proc Step_Up(cea) : for s = 1 to MAX_STEPS do
for x = 1 to WIFTH do
for y = 1 to HEIGHTdo
n_list = Compute_Neigh(cea, position(x,y)) ;
Selected_inds = Perform_Selection(n_list) ; aux_pop= Apply_Reproduction_Operators(selected_index) ; end_for ; end-for ;
cea= Replace(cea, aux-pop) ;
Evaluate>population(cea) ;
end_for ; end_proc STEP_UP ;
PseudoCode of a simple GA
Move the pointer over the words
Present a brief explanation with the mean of the main algorithm’s line
LINE 2
The algorithm runs until one of the two following stopping conditions is satisfied:
The algorithm finds an optimal solution to the problem
The algorithm reaches a certain number of generation (represented by
MAX_STEPS) without finding an optimal solution and stops
LINE 3 and 4
In such generation, the algorithm examines all the individuals of the population. This population is hold in a 2_D toroidal grid shape of size WIGTH x HEIGHT (more details).
LINE 5
The neighbours of the individual placed on position (x, y) are stored in an empty list.
LINE 6
52
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
The parents of the individual of position (x, y) are selected from the list created in line
5 and placed in a neqw list.
LINE 7
The parents of the individual of position (x, y) are selected from the list created in line
5 and placed in a new list
LINE 10
Reproduction
LINE 11 – LINE 13
Evaluate and end
A p p e n d i i x I I I I
Angle at the diagonals
Theta 1 =
Theta 2 =
Theta 3 =
9.46
o Theta 4 =
18.45
0 Theta 5 =
26.57
o Theta 6 =
33.69
o
39.81
0
45.00
o
Length of the Members
BOTTOM TOP
MEMBER
LENGTH (m)
VERTICAL DIAGONAL
MEMBER MEMBER MEMBER
LENGTHS (m) LENGTHS (m) LENGTHS(m)
1.50
1.50
1.50
1.50
1.50
1.50
1.52
1.52
1.52
1.52
1.52
1.52
No. of Nodes and their Loads
NODE NO.
1
2
3
4
5
6
7
0.25
0.50
1.58
1.68
0.75
1.00
1.80
1.95
1.25 2.12
1.50
NODE LOAD (KN)
1.70
3.40
3.40
3.40
3.40
3.40
1.70
53
Adedeji, A A USEP, Journal of Research Information in Civil Engineering, Vol. 3, No.1, 2006 and Ejeh, S. P.
AXIAL FORCES FOR EACH MEMBER
BOTTOM TOP VERTICAL
MEMBER
FORCE (KN)
MEMBER
FORCE (KN)
MEMBER
FORCE (KN)
DIAGONAL
MEMBER
FORCE (KN)
51.01
40.81
30.08
19.61
9.26
1.04
-51.72
-51.72
-43.02
-32/14
-21.53
-11.03
Span of Roof Truss =
Right Roof Height =
9.00 m
1.50 m
- 3.40
-5.37
-6.98
-8.63
-10/30
-10.20
10.75
12.00
12.58
13.48
14.57
54