07_2011_042_Stankovic_05

Embed Size (px)

Citation preview

  • 8/13/2019 07_2011_042_Stankovic_05

    1/10

    *Corr. Authors Address: Faculty of Mechanical Engineering and Naval Architecture, I. Luia 5, Zagreb, Croatia, [email protected] 203

    Strojniki vestnik - Journal of Mechanical Engineering 58(2012)3, 203-212 Paper received: 23.2.2011, paper accepted: 12.1.2012

    DOI:10.5545/sv-jme.2011.042 2012 Journal of Mechanical Engineering. All rights reserved.

    Synthesis of Truss Structure Designs by NSGA-II

    and NodeSort AlgorithmStankovi, T. torga, M. Marjanovi, D.

    Tino Stankovi* Mario torga Dorian Marjanovi

    University of Zagreb, Faculty of Mechanical Engineering and Naval Architecture, Croatia

    This paper presents a genetic algorithm based approach for synthesis of truss structure designs. Genotype represented as a collection of

    binary encoded nodes is decoded into the phenotype by applying the NodeSort algorithm. A genotype extension to consider a cross-section as

    variable and variable length chromosomes to produce designs to successfully meet the boundary conditions are all being incorporated into

    the NodeSort to provide an efficient truss structures synthesis framework. The introduction of multi-objective optimisation using NSGA-II will

    help to address more real life engineering problems.

    Keywords: truss structure design synthesis, genetic algorithms, NodeSort, NSGA-II

    0 INTRODUCTION

    The work presented in this paper proposes a genetic

    algorithm based approach for synthesis of trussstructure designs. It builds on the NodeSort [1]algorithm, which takes a collection of binary encodednodes from a 2D domain and decodes these into a trussstructure in a process similar to FEM meshing. In ourprevious work it was shown that theNodeSortis wellsuited for the generation of optimal truss structuredesigns [1]. To continue the development of a trussstructures synthesis framework, within this paper thefollowing points are set as the research goals: To account for the multiple search objectives

    a non-dominated sorting genetic algorithm II(NSGA-II) [2] and [3] will be applied.

    Rather than being just a parameter, the cross-section area of trusses is defined as a variablewhat should improve the quality of producedsolutions. Thus, the genotype is extended withone more binary encoded gene.

    To avoid the formation of node clusters occurringin near-optimal designs that had excessivenumber of predefined nodes, or in the opposite, toprovide nodes to resolve a design solution whenthe course of evolution demands more trusses, avariable length chromosomes are introduced.

    To facilitate versatility and user-centricity, anarbitrary number of nodes with imposed loads areallowed to be specified.The next section will address the applicability

    of evolutionary algorithms as powerful and aptoptimizers. Then, the related work section willprovide an overview of truss structures optimizationapproaches and drawn from these will justify themotivation for the NodeSort. To be able to accomplishthe genotype extension and the introduction ofvariable length chromosomes, the adjustments needto be performed at the evolutionary operators level.

    How are the crossover and mutation resolved toaccommodate these changes, as well as the NodeSortalgorithm, is presented in the third section. Section 4

    gives FEM model of truss girder system and Section5 formulates the objectives and constraints of multi-objective optimisation problem. Modifications ofthe search process parameters and penalty functionswith the search algorithm given in pseudo-codeare presented in Section 6. Case study and resultsdiscussion are presented afterwards. Conclusions andthe future work notice close this paper.

    1 EVOLUTIONARY ALGORITHMS

    Evolutionary algorithms (EA) are population basedstochastic optimisers that are built on mimicking thenotions from the natural evolution. Charles Darwinstated that evolution begins with the inheritance ofgood gene variations and that basically defines whatthe evolutionary algorithms are all about. Enforcingthe survival of the fittest principle is managed byallowing higher ranked solutions to participate in anevolution process by the most. In a random processof mixing together the building-blocks taken from twoparent solutions an offspring is produced. Presumably,if building blocks originate from a higher fitnessindividuals than there is a chance that newly generatedindividual might get a bit closer to a solution optimum.With the whole process iterated over populationgenerations to produce offspring which replace theirparents at least to an extent, the emergence of solutionoccurs as a consequence of the most fit building-blockcombinations being frequently utilised in a solutionconstruction. For such behaviour, it can be said thatalgorithm exhibited a learning process in identificationof which building blocks to use and how [4] and [5].

    The key issue of computational modelling [5] isto find out suitable problem representation acceptableboth to the computational environment and to the

  • 8/13/2019 07_2011_042_Stankovic_05

    2/10

    Strojniki vestnik - Journal of Mechanical Engineering 58(2012)3, 203-212

    204 Stankovi, T. torga, M. Marjanovi, D.

    task at hand. Thus, the problem representation has toconcur to the algorithms requirements and it shouldbe devised in a fashion that captures the most ofthe form and attributes of the design search space.With EAs, the problem representation is most often

    brought down to finding out the appropriate genotypeencoding and its counterpart, decoding into aphenotype, thus representing a key point in designingan evolutionary computation based optimizationmethod [4] and [5]. The extension of the genotype toinclude truss thicknesses, the utilization of variablelength chromosomes, as well as the NodeSortdependent decoding are viewed as part of an effort toprovide a good material for the truss design evolutionprocess. In that way by expanding the set of means torealize the required behaviour, the navigation to moreapplicable design solutions is made possible.

    2 RELATED WORK AND PROBLEM FORMULATION

    From the literature review, it can be found thatthe methods for the truss structure optimizationare specialized either for the structure propertiesoptimization [6] and [7] or the structure topologyoptimization [8] to [10]. By all means not diminishingthe complexity of the problem, still the parametricoptimisation genotypes are easily encoded becausethe layout of trusses is known and remains unchangedduring the optimisation. As the initial variability

    of the shape is not being accounted for; instead theoptimisation is carried over the usual truss designrelated variables, i.e. cross-sectional area, length,etc. By contrast, a different type of encoding isapplied in the topological optimum design (TOD)cases [8] to [10]. The structure is represented in adiscrete domain, most often in the form of materialdistribution, which is a straightforward approach inshape optimization. The genotype encodings may beaccomplished in many ways, for example as matrices,Voronoi representations [9], or even by using 3-DFEM building blocks. The phenotype representation

    then visually depicts the resulting structure. Aninteresting cantilever optimization problem has beenresearched by Kim and de Weck [10], who addressedthe quality of search with the domain resolution andchromosomal length [5]. They increased domainresolution gradually throughout the evolution tosimulate the concretization process starting up from avague concept as a small sized matrix to end up with arefined and concrete solution. TOD is computationallyvery demanding, it optimizes the structure in the formof the in-domain material distribution, but the other

    design variables, such as the cross-sectional area,remain predefined and out of reach.

    A more subtle approach using the simulatedannealing (SA) method together with shapegrammars for the structural optimization purposes

    was developed by Shea and Cagan (1998) [11].Shape grammars provide a formal language, a designlanguage for the structure shape manipulation.Grammars are driven by a set of production rules, orsimply productions, by which the solution is obtainedfrom a series of transformations according to possiblerules implementation sequences. However, for thedescription of all the possible truss structures, the setof rules must be equally large. Therefore, for a genericapproach, to evolve the structures, the rules should beevolvable as well [12].

    F

    ?Domain

    y

    x

    Fig. 1. 2-D continuous search domain [1]

    The problem of truss structure design in the2-D continuous domain as seen within this work ispictured in Fig. 1. Assuming a random distributionof nodes and a number of predefined fixed nodes(supports and load nodes) all of which are containedwithin a chromosome, the topology of truss girderdesign emerges after the application of the NodeSortdecoding algorithm [1] (Section 3.3 of this paper).

    The genotype encoding and decoding applied inthe NodeSort enable the search space to be as large andunconstrained as possible. It goes beyond parametric

    optimisation by allowing the optimisation of topology,it surpasses TOD approaches since it is much lesscomputationally demandable with girder FEMs beingparametric and optimised in a continuous domain. Thephenotype represented as a truss structure emergingout of inter-nodal arrangement is an algorithmicallydriven approach. It offers an alternative to shapegrammars which being knowledge-driven achievethe increase in the performance by addition of newrules, thus retaining the same rule transformationprinciples. Usually, there is a trade-off between the

  • 8/13/2019 07_2011_042_Stankovic_05

    3/10

    Strojniki vestnik - Journal of Mechanical Engineering 58(2012)3, 203-212

    205Synthesis of Truss Structure Designs by NSGA-II and NodeSort Algorithm

    algorithmic and the knowledge-driven approachessince the former requires code interventions for theperformance increase and the latter requires the sharedunderstanding about the domain and objective ruledefinitions, otherwise formalized knowledge becomes

    inconsistent and biased. Extensions to our previouswork reflecting the new encoding/decoding schemeare presented within the next section.

    3 EXTENDED ENCODING/DECODING SCHEME

    FOR 2D CONTINUOUS DOMAINS

    The model of truss structure is defined as the systemcomprised of a number of trusses and nodes. Boundaryconditions specify the load cases, thus taking intoaccount the amount of the loads being applied, aswell as the type and the location of truss girders

    supports. The load is modelled as a distribution ofnodal forces. Within each of the evolution turns forevery candidate solution the FEM system stiffnessmatrix is re-calculated. The position and length of thetruss elements are defined as a consequence of thenodal arrangements within the 2-D domain. Assumingcircular cross-section, an extension of previous workis the introduction of a truss cross-section diameteras a variable. Hence, a new structural model that isestablished with the addition of the cross-sectiondiameter enables refinement in the search thus,allowing getting closer to the optimal system topology.

    Not being explicitly written in the chromosomalgenes, the trusses emerge as a consequence of in-planenodal positions. Thus, in order to be able to introducea truss cross-section dependant attributes it has beendecided to extend the length of the binary encodednode by one gene to contain a gamete of a truss cross-section. The diameter of each truss is then obtained asan average calculated over two gametes belonging tothe nodes which define the span of a truss.

    According to [1], both fixed nodes and freenodes where predetermined in numbers. To clarify adistinction, in contrast to free nodes, the fixed nodeshave a static position in the 2-D search domain thusnot being subjected to a position change during thecourse of the evolution. However, because of the waythe cross-section area is calculated, the new thicknessgamete addition has to be taken into account evenwith the fixed nodes. The number of fixed nodesis denoted as NoNx. The improvement introducedwithin this work enables an increase or decrease offree nodes to occur as demanded by the course ofevolution. For example, by prescribing the boundaryconditions including the maximal allowed cross-section thickness, the search might be put in a dead

    end situation with no feasible results being generatedunless it is allowed to increase the numberNoN of freenodes. Hence, the increase in node numbers createsthe possibility to generate more trusses since theyappear as the result of nodal arrangements within the

    2-D search domain. Consequently, a more stiffenedand load capable structure will be designed. Incontrast, by allowing the number of free nodes to bedecreased is required in the case where the search hasstrayed in producing too complex solutions in respectto the defined loads. Then, it is necessary to reduce thenumber of trusses in order to obtain a best-fit solution.

    3.1 Genotype Encoding

    The genotype is assembled two folded; on the primarylevel each of the nodes is represented as a bit string,

    and the secondary level comprises of a collection ofdecoded nodes from which truss structure will bedetermined. For free nodes, three binary encodedgenes are required, two to represent in-plainpositioning of the node and one for the determinationof the cross-section diameter (Table 1). Fixed nodesonly comprise one gene to participate in the cross-section diameter calculation. Genotype encoding withchromosome represented as a collection of nodesis shown in Table 2. Parameter nmax represents theallowed number of nodes per chromosome.

    Table 1.Binary encoding of nodesNodei

    xicoordinate,binary stringli1

    yicoordinate,binary stringli2

    didiameter gamete,binary stringli3

    Table 2.Chromosome structureChromosomej

    Node1, ...,Nodei, ...,Noden

    nj=NoNx+NoNjnmax

    Decoding is performed using standard decodingfunction [5]. Decoding per gene ifor desired interval

    u vk k

    ,

    is defined by the following expression:

    kl

    k kik u v: 0 1, , .{ } (1)

    The complete decoding of each gene within asingle free node iproduces a vector of real numbers:

    i= 1 2 3. (2)

    3.2 Evolutionary Operators

    The mutation is performed simply, in a bit-flipmanner, thus directly altering the nodal position

  • 8/13/2019 07_2011_042_Stankovic_05

    4/10

    Strojniki vestnik - Journal of Mechanical Engineering 58(2012)3, 203-212

    206 Stankovi, T. torga, M. Marjanovi, D.

    or changing the cross-section diameter gamete ina random fashion. In order to improve the searchprocess in the early stages of the solution evolutionit was necessary to introduce scaling of the mutationrate. In the literature, there are a number of such

    mutation approaches [4] and [5]. They are driven bythe notions from the natural evolution, justifying theinitial mutation rate levels by the harsh environmentalconditions. A bit-flip mutation rate is defined as afunction of its initial ratepm= 0.1 and the number ofevolution iterationsN. The static mutation rate is beingset topm= 0.02. The bit-flip mutation probability iscalculated by a linear scaling formula defined over adesired number of iterations:

    pp p

    N p N

    p otherwise

    m

    m mm

    m

    =

    + nmax, asthe result of an arbitrary nodal level crossover pointselection. The formalism in Eq. (5) presents a wayhow to keep the size of the offspring k within the

    preset boundaries as defined by nmax:

    Turn wise crossover point reposition :

    towards beginparent1 iing,

    owards end.

    if

    One point crossover :

    tparent

    n >n

    ,

    2

    k max

    on free nodes,

    on fixed nodes.

    if nk

    n .max

    (5)

    For the condition nk > nmax, both chromosomesegments are being shortened for one node in a turnwise manner until the condition nk = nmax has been

    met. The turn wise relocation of the crossover pointtries to average the loss in diversity of genetic materialto both parents. Afterwards, the standard one pointcrossover is performed separately on the collections offree nodes and fixed nodes. At the end, the nodes areunified into a single collection to form new offspringindividual.

    3.3 Phenotype Generation with the NodeSort Algorithm

    Performing an automated search for the optimalsystem topology which employs the FEM methods

    for the system behaviour evaluation requires acreation of structural stiffness matrices absent of anysingularities. Although the singular solutions can beranked as infeasible by the constraint handling, theirfrequent occurrences will slow down and complicatethe search process. To overcome the latter, drawn upon the engineering practice it is known that arrangingtrusses to form triangular substructures is the leastrequirement for the avoidance of mechanical jointsformation in truss structures. Thus, if all of the sub-structures are triangular, the search space is narroweddown only to computable non-singular solutions,

    which helps to boost the efficiency of the search.Therefore, theNodeSortemploys a mapping to createphenotype out of the encoded chromosome resultingin a mesh composed of triangular schemes to satisfytopological stiffness requirement. This mapping issimilar to the meshing techniques applied withinvarious FEM methods. The NodeSort algorithm forgenerating a phenotype based on the nodal positionsand truss thickness gametes is presented with thefollowing pseudo-code:

  • 8/13/2019 07_2011_042_Stankovic_05

    5/10

    Strojniki vestnik - Journal of Mechanical Engineering 58(2012)3, 203-212

    207Synthesis of Truss Structure Designs by NSGA-II and NodeSort Algorithm

    1. sort and collect nodes ascending over x, if equalcompare overy,

    2. point to first node in chromosome i 0,3. while i < (ni 2) do A. if nodei.y nodei+1.y

    foreach truss definition collect nodei+1,nodei+2 ,..., nodei+k which are ordered

    ascending overydo break the search if nodei+k+1satisfies any

    of the following: a. is not ordered ascending overy, b. is the second node in ascending order

    satisfying nodei+k+1.y > nodei.y , c. i+k+1 > ni. od

    B. else: similar as in A but collecting nodes indescending ordering overywith two break criteria

    redefinitions: (a) is not ordered descending overy, and (b) is the second node in descending ordersatisfying node.y < nodei.y.

    C. define trusses between nodei and all nodesidentified inAandB.

    D. move to next node i i+ 14. od.

    The NodeSort algorithm starts with all ofthe nodes being sorted ascending based on theirx coordinate. The first node from chromosome istaken into consideration by setting the counter i tozero (see pseudo-code line 2). In the following while-do loop which is marked with 3, the algorithm willsearch for possible ways to define truss elementsbetween the considered node i and all of the nodeswith greaterxcoordinate. The resulting structure mustbe composed of triangular schemes with no trussescreating intersections. Inside the while-do loop twopossibilities which are marked with letters A and Bcan appear: based on its position the first followingnode i+ 1 can either be below or on equal height (A)or above the considered node i (B). Inside A all ofthe nodes will be ranked legible for truss definition ifthey do not violate the conditions a, band c. The first

    condition (a), makes sure whether all of the followingi+k+1 nodes are in an ascending order over y, thefollowing (b) stops the search if the node is the secondone above the node iand in the end (c) it is preventedfor the counter to be larger the number of nodes ni.The conditionBtakes into account situations oppositeofA- the first following node being above node ithuscollecting truss definition nodes in a descending order.Except for the step (c) which considers the counterexceeding the number of nodes, the break criteria (a)and (b) are redefined for B to consider descending

    order of nodes as shown in pseudo-code. Afterwards,the trusses are defined (C) over all possible attributesincluding truss cross-section diameter and the wholeprocedure is repeated for the following node (D). Fig.2 pictures a truss structure phenotype generated by the

    NodeSort algorithm which corresponds to the nodalarrangement which has already been shown in Fig. 1:

    Fig. 2. Truss structure obtained from nodal positions shown in Fig.1 [1]

    The singular condition that may occur whentwo or more nodes are very close to each other orwhen they overlap is regulated with a constraint thatproscribes the minimal allowed length of trusses:

    l lmin . (6)

    4 STRUCTURAL FEM MODEL

    The structure is modelled using FEM planar trusses

    with possessing in total 6 degrees of freedom each.It was necessary to introduce bending to trusses andimplicitly convert them into beams. Otherwise, theresult of the evolution taking the infinite stiffness tobending of truss FEM element will always convergeto a single horizontal truss. Such structure wouldhave zero displacement since it cannot bend, it wouldbe minimal in mass since it is just a horizontal line.Normal forces would also be equal to zero for theforce vector put vertically as in Fig. 1. The relationbetween loadFand the systems nodal displacement uis given here by with the following expression:

    {F}=[K]{u}. (7)

    The [K] is a standard stiffness matrix defined forplanar girder elements. The load vector consideringthe start and end points of each of the trusses is givenin its transposed form as:

    {FT}={N1, Q1, M1, N2, Q2, M2}. (8)The vector of displacements per truss element is

    given with the following expression:

    {uT}={u1, w1, 1, u2, w2, 2}. (9)

  • 8/13/2019 07_2011_042_Stankovic_05

    6/10

    Strojniki vestnik - Journal of Mechanical Engineering 58(2012)3, 203-212

    208 Stankovi, T. torga, M. Marjanovi, D.

    5 MULTI-OBJECTIVE OPTIMIZATION MODEL

    The search goal is to find an optimal distribution oftrusses that comprise topology of the structure inrespect to minimal mass mand minimal deflection .

    The results will be obtained as a Pareto optimal frontof truss structure designs. The optimisation problem isformulated with the following expression:

    min m F d E n NoNx m BC

    min F d E n NoNx

    max max

    max max

    , , , , , ,

    , , , ,

    '( )

    ,, ,

    | |

    m BC

    l l

    n n

    max

    min

    tmint

    T

    '( )

    subject to:

    1

    0

    = =

    = = >

    = = >

    . (12)

  • 8/13/2019 07_2011_042_Stankovic_05

    7/10

    Strojniki vestnik - Journal of Mechanical Engineering 58(2012)3, 203-212

    209Synthesis of Truss Structure Designs by NSGA-II and NodeSort Algorithm

    Violation of minimal length is regarded asa severe constraint violation since it may lead tooverlapping of the nodes in the search domain thusresulting in the systems singular stiffens matrix.Secondly the violation of allowed deflection is also

    significant. These two constraints influence the initialsearch stages the most thus requiring the formation ofso severe weighting factors. The other two constraintsbegin to significantly influence the search only inthe later stages when most of the solutions beinggenerated are meaningful solutions. Therefore,the weighting factor is set to 1.0 for the last threeconstraint violations. For the recursive constraint thenormalized violations are calculated by subtractingthe number of trusses of the considered solution andthe least number of trusses found in feasible solutionsof the previous iteration step. For the last two

    constraints the normalized violations are calculatedby a division of current stresses found in trusses withthe corresponding allowed stresses for tension andbuckling.

    6.1 The Search Algorithm

    The pseudo-code of the search algorithm is given inconcordance with the general model of evolutionaryalgorithm [5]:1. t 0;2. P(t) init(, nmax,NoNx,BC);3. F(t) eval(P(t),,F, d

    max,E, m',x

    D,y

    D,

    c) do;

    A. decoding_(dmax,xD,yD); B. check_points(P(t)); C.NodeSort((P(t)); D. [K] create_[K](P(t),E) E. {F} create_{F}(P(t),F, m); F. {u} calculate_{u}((P(t), [K], {F}); G. {} calculate_{}((P(t), {u}); H. apply_((P(t), c);od

    4. while(t< n) do a.P'(t) cross(P(t),F,,pc, nmax,NoNx,BC); b.P(t) bit-flip(P(t),,pm); c.P(t) node_mut(P(t),,pm, nmax,NoNx); d.F(t) eval(P(t),,F, dmax,E, m,xD,yD, c)

    do... od

    e.P(t+1) NSGA_II(P(t) +P(t),); f. t t+ 1;od

    A random creation of the initial populationcomposed of chromosomes refers to step 2 of thepseudo-code. Populations of free and fixed nodesare created separately and then joined together. Theevaluation considers decoding (A) form integer to real

    values (as given by Eq. (1)), displacing overlappingnodes (B), applying NodeSort (see Section 3.3),calculating displacements and stresses in trusses (stepsD-G) as explained in Section 4. Step H concludesthe evaluation by applying a constraint check using

    the Eqs. (11) and (12) to obtain constraint violationmeasure. For the sake of convenience all the relevantconstraint parameters are denoted as c. Step 4 onwardsdenotes the iterative while-do loop which lasts untilthe halting condition is satisfied. The crossover instep a. which produces offspring population of size is defined as given by the Eq. (5). To stress out thedifference in respect to the parent population, theoffspring population generated at step a is denotedwith P(t). The mutation of offsprings involvingsteps band c is defined by expressions for mutationprobability calculation (Eq. (3)) for bit-flip mutation

    to form P(t) and nodal mutation (Eq. (4)) to formP(t), respectively. The evaluation procedure at stepdis comprised of the same subroutines as in the initialin steps D-G.The difference is that the evaluation isbeing applied to offspring populationP(t). Finally,the NSGA-II (e) creates a new population of size involving the Pareto based ranking.

    7 TEST EXAMPLE

    Test example involves a multi-objective optimisationcase with the boundary conditions selected as shownin Fig. 1. The input parameters are: loadF = 2 t (~20kN), maximal truss thickness dmax= 50 mm, Youngsmodulus of elasticity for steel E = 210 MPa, maximalnumber of nodes involved nmax= 13, number of fixednodesNoNx= 3. In respect to formalism in Eq. (11)the optimisation problem is given by the followingEq. 13:

    min m F d E n NoNx m BC

    min F d E n NoNx m

    max max

    max max

    , , , , , ,

    , , , , ,

    '( )

    '',

    :

    ..

    . /

    BC

    l

    n nt mint

    ( )

    subject to

    mm

    N mm

    0 0150 250

    100 0

    1

    22 0

    0

    0 15 0

    0 7 5