geometric nonlinear optimization using a

12
For permission to copy or to republish, contact the copyright owner named on the first page. For AIAA-held copyright, write to AIAA Permissions Department, 1801 Alexander Bell Drive, Suite 500, Reston, VA, 20191-4344. AIAA 2000-1580 Cellular Automata for Design of Truss Structures with Linear and Nonlinear Response Zafer Gürdal Virginia Polytechnic Institute and State University Blacksburg, Virginia Tatting Brian ADOPTECH Inc., Blacksburg, Virginia 41 st AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics and Materials Conference & Exhibit April 3-6, 2000 Atlanta, Georgia

Upload: haduong

Post on 03-Jan-2017

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GEOMETRIC NONLINEAR OPTIMIZATION USING A

For permission to copy or to republish, contact the copyright owner named on the first page. For AIAA-held copyright, write to AIAA Permissions Department,

1801 Alexander Bell Drive, Suite 500, Reston, VA, 20191-4344.

AIAA 2000-1580

Cellular Automata for Design of Truss Structures with Linear and Nonlinear Response

Zafer Gürdal Virginia Polytechnic Institute and State University Blacksburg, Virginia

Tatting Brian ADOPTECH Inc., Blacksburg, Virginia

41st AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics and

Materials Conference & Exhibit

April 3-6, 2000 Atlanta, Georgia

Page 2: GEOMETRIC NONLINEAR OPTIMIZATION USING A

AIAA-2000-1580

CELLULAR AUTOMATA FOR DESIGN OF TRUSS STRUCTURES WITH LINEAR AND NONLINEAR RESPONSE

Zafer Gürdal§

Virginia Polytechnic Institute and State University, Blacksburg, VA

Brian Tatting‡ ADOPTECH, Inc., Virginia Tech Corporate Research Center, Blacksburg, VA

ABSTRACT

The feasibility of the use of Cellular Automata (CA) techniques for the design of two-dimensional structural problems, such as trusses and continuum structures under static loading, is investigated. The study implements an integrated analysis and design approach using the methods of CA to achieve an optimal structural configuration. The paper summarizes the basic features of the CA and demonstrates a formulation for the design of two-dimensional truss structures that exhibit linear and geometrically nonlinear response characteristics. The solution variables chosen for the approach include the in-plane displacements of the cells, which represent nodal points of the truss, and the cross sectional areas of the members that connect the neighboring cells. Equations derived from local equilibrium are used as the rules that govern the cell displacements, and simple rules that are based on fully stressed design conditions are used for sizing of the members. In addition to the theoretical formulation, an investigation into the numerical implementation of the CA was performed. Initially the Mathematica programming language was used for demonstration purposes. For large-scale problems, an efficient and flexible Fortran 90 computer code capable of modeling complex two-dimensional geometries was developed. Examples demonstrating the capabilities of the design tools are included.

INTRODUCTION

Much of the increased usage of optimal structural design in industry may be attributed to the popularity of powerful structural analysis tools that exist in the market place. Highly flexible finite element based numerical analysis programs are being used to analyze a variety of products ranging from aircraft and automobiles to bicycles and snowboards. Naturally, product designers find these tools useful in evaluating the response characteristics of a given configuration, and repeatedly utilize these analysis tools during the design cycle. The need to improve the designs in an automated fashion, to make them either lighter or carry more loads for the given weight, eventually led to substantial use of optimization algorithms to drive this process.

Despite its success, the use of finite element analysis in conjunction with optimization for engineering design also seems to be creating computational bottlenecks based on two trends. First, the power of modern computers in terms of both their speed and memory capacity has allowed engineers to analyze

increasingly more complex and detailed structures that often require millions of degrees of freedom. In the design mode, however, replicating this kind of success has proven to be difficult. The complexity of the models increases the number of design variables and constraints, thus requiring large numbers of repetitive analyses within the design process that push the computational cost to impractical limits. The second trend concerns the nature of the analyses being implemented. Similar to the increase in the complexity of the structures, the level of the analytical complexity of the analyses has also increased. It is now possible to perform analysis of highly nonlinear solids and fluids problems that require large computational resources, however the complexity of the solution techniques often inhibit efficient numerical algorithms that are needed within a realistic design environment. A possible solution to the difficulties described above is to attack the governing differential equations of a solid in terms of both the field variables and the design variables. Historically, the methods of variational calculus have been used for problems with simple geometries, such as beams. By treating the cross-sectional area distribution along the beam length as a continuous variable, it is possible to derive an optimality condition that can be used to solve both the optimal area distribution and the

§ Professor, Departments of Aerospace and Ocean Engineering, and Engineering Science and Mechanics, Associate Fellow AIAA. ‡ Senior Researcher, ADOPTECH, Inc. Copyright © 2000 by Zafer Gürdal. Published by the American Institute of Aeronautics and Astronautics, Inc. with permission.

American Institute of Aeronautics and Astronautics

2

Page 3: GEOMETRIC NONLINEAR OPTIMIZATION USING A

corresponding displacement fields. For problems with complicated geometries, solution of the design problem may be accomplished by formulating the constraints of the original optimization problem and the discretized equilibrium equations of the structural analysis model as equality constraints. This approach is commonly referred to as simultaneous analysis and design (SAND) [see for example Haftka and Kamat (1989)], and requires only the solution of one nonlinear optimization problem without the need for complete structural analysis at every design stage. In the SAND approach, the field variables such as displacements and stresses are treated as unknown variables of the optimization problem in addition to the conventional sizing design variables. This method is particularly well suited for problems that require nonlinear analysis.

This paper attempts to use a nontraditional scheme, called cellular automata, to find solutions to the design and state variables using a combined analysis/design approach. The resulting system of differential equations is highly nonlinear, yet the simple techniques of the CA approach should provide an efficient method to reduce the complexity of the system and to improve the efficiency of the numerical solution process.

BACKGROUND OF CELLULAR COMPUTING

Cellular automata are generally attributed to Ulam (1952) and von Neumann (1966), who introduced the concept in the late forties to provide a realistic model for the behavior of complex systems. The literature on the subject is not consistently catalogued in the sense that cellular automata type methods seem to have been invented many times under different names and under somewhat different implementations. Initially CA techniques were introduced under the name automata networks, which were used to model discrete dynamical systems in time and space. In that sense, they can roughly be defined by a finite or infinite graph where each vertex can take on discrete values from a finite set. The state of each vertex can be altered through transition rules, which take into account the vertex’s current state as well as that of its neighbors in the graph. The network may be updated either synchronously or sequentially. In the synchronous mode, which is also called parallel mode, all the sites are updated in a discrete time step simultaneously. The sequential update is applicable to only finite networks, and the sites are updated one by one in a prescribed order.

A particular case of automata networks is the cellular automata, in which the graph is a regular lattice and the updating mode is synchronous. Moreover, the update (transition) rules and the neighborhood

structure are the same for all sites. A variant of the cellular automata uses continuous lattice site values, and is sometimes referred to as a coupled map-lattice or cell-dynamic scheme. The fundamental feature of cellular automata, which make them highly useful computational tools for large systems, is their inherent parallelism. By assigning a simple processor to every so many cells of a large system of cells, one can increase the detail or the size of the system without increasing the time it takes to update the entire system. There does not seem to be a practical limitation or an overhead associated with splitting the problem into small pieces and distributing it. Thus, cellular automata simulations are highly suited for massively parallel computers that possess the proper hardware requirements.

In their modern implementation, cellular automata are viewed as simple mathematical idealizations of natural systems, and are used successfully to represent a variety of phenomena such as diffusion of gaseous systems, solidification, and crystal growth in solids, and hydrodynamic flow and turbulence. In most of the previous applications, they are used to represent macroscopic behavior of a system, which are governed by partial differential equations of the continuum under consideration. This is generally accomplished using simple rules that represent the micromechanics of the medium. By utilizing a sufficiently large number of cells, it is possible to represent a complex continuum response that is governed by highly nonlinear equations.

This paper proposes an implementation of the methods of cellular automata for the design of structural systems by attempting an integrated solution of the state and design variables. Before detailing the specific ideas behind the proposed implementation, we first provide a brief description of the elements of cellular automata.

CA Lattice:

The form of the cellular space directly reflects the physical dimensions of the problem under consideration. Two sample lattice structures, representing one- and two-dimensional cellular spaces, respectively, are shown in Fig 1. A three-dimensional space can be constructed by stacking several layers of the two-dimensional ones in the third direction, spaced equally so that the distance between them is the same as the distance between the cells in the plane of the layers. Lattice configurations, however, are not limited to the rectangular ones shown in the figure. Cellular automata based on other cell geometries, such as two-dimensional triangular and hexagonal lattices, are also possible.

American Institute of Aeronautics and Astronautics

3

Page 4: GEOMETRIC NONLINEAR OPTIMIZATION USING A

Two Dimensional Space

One Dimensional Space

Figure 1: Cellular Spaces.

NE

SE

EC

1-D Neighborhood

2-D von Neumann Neighborhood

2-D Moore Neighborhood

E W C

E W

N

S

C

W

N

S SW

NW

Figure 2: Cellular Neighborhoods.

Wolfram (1986), for example, used a regular two-dimensional lattice of hexagonal cells for a cellular automaton fluid model. Each cell has a set of values that are updated over the course of many iterations. These cell parameters may be a set of discrete, binary (0/1), or continuous values that are allowed to change in a prescribed range.

CA Neighborhood:

The neighborhood structure is one of the most important characteristics of a CA lattice. In updating the parameters of a cell, it is necessary to consider the cell's own parameter and the values of the cells in its corresponding neighborhood. The set of sites that is utilized for the update is highly problem dependent, and relies heavily on the nature of the physical phenomenon that is being modeled. Some common examples of neighborhood structures used in the literature are shown in Fig. 2. The cell to be updated is labeled as C, and the adjacent ones are labeled with letters representing compass directions. Again, these are not the only neighborhood structures. For example, a neighborhood commonly referred to as the "MvonN Neighborhood" combines the nine sites of the Moore neighborhood with four more sites lying two lattice sites away in the north, south, east and west directions.

Boundaries:

Since every cell has the same neighborhood structure, cells on the boundary of a physical domain have neighboring cells that are outside the domain. Traditionally, border cells are assumed to have the cells on the opposite boundary as neighbors. For example, for a two-dimensional rectangular domain a

cell on the left border has the cell in the same row on the right border as its left (west) neighbor. With the same update rule applied to all the cells, this yields what is called a periodic boundary condition, which is representative of an infinite domain. Thus for the classical representation of moving particles, a particle leaving the domain from one side enters the domain from the opposite side in the same row or column. For simulation of solid mechanics problems, which will be described later in the paper, free and constrained boundary representations are needed.

Update Rules:

Computer implementation of an update rule is similar to the function subroutines of procedural programming languages, and is applied uniformly to every cell of the lattice. The arguments for the function subroutine are the parameters of the cells within the neighborhood, and the value returned by the function is the new value of the cell at which the function is being applied. For example, for the von Neumann neighborhood, the function has 5 arguments, function(C,E,W,N,S), which returns the value for the cell C at the time/iteration (k+1) for specified values of the C,E,W,N,S (neighborhood) cells in their previous state. Since the update rule is applied to all the cells simultaneously, the incoming arguments are generally the values of all the cells in the previous cycle (k), though variations to this strategy are often required for optimal convergence of the algorithms.

American Institute of Aeronautics and Astronautics

4

Page 5: GEOMETRIC NONLINEAR OPTIMIZATION USING A

Mathematical representation of this kind of a block update rule for a von Neumann neighborhood can be represented in the following form,

, (1) ],,,,[ )()()()()()1( kW

kN

kE

kS

kC

kC φφφφφφ ℜ=+

where φ represents the state of a cell. Such a general update rule will be used for the results in this paper.

The previous paragraphs outlined basic strategies used within Cellular Computing environments. Based on observations of the equations governing the design of structural solids and the general characteristics of the cellular automata, the present approach is to provide a computational paradigm for the solution of design equations in terms of geometric and field variables using these CA techniques. The development of the concept for two-dimensional elastic systems, and its particular implementation for truss type structural systems, is presented in the remaining sections.

CA REPRESENTATION OF TWO-DIMENSIONAL STRUCTURES

At a macroscopic level, two-dimensional continua represented by a regular grid of cells can be thought of as nodes (corresponding to the cell centers) connected to one another via finite stiffness springs. Although, the domain occupied by each of the cells has some significance in terms of the cell update rules, in general the state of the cell is independent of the cell density and its general shape. Each cell needs to keep track of only its own state, independent of its location, which may be expressed in terms of the field variables and design variables associated with the cell. Based on this assertion, the state of a cell in two-dimensional continuum may be represented by,

(2) ( ) { } { } { }{ )(,,,,, kiyx

ki ffEtvu=φ }

where u and v are the displacements of the cell measured from its undeformed position, t represents the cell thickness (or some other relevant sizing parameter, which may change from one cell to another and is the basic design variable), E is the modulus of the cell (which may depend on deformations in case of plasticity), and fx and fy are the forces applied to the cell along the x and y coordinates, respectively.

Every cell in the domain can be represented by the state presented in Eq. (2) with a few exceptions. First, the external loads are typically applied over a very small region of the domain (in fact often they are applied only at few selected points in the domain); hence, most of the cells do not need an associated applied force. Therefore, it may not be

necessary to retain the force data for most of the cells at each time step. Exceptions to this situation are those cells that have specified zero or nonzero displacements. In this case, again there is a need to keep the last group of data in Eq. (2), which will be the reaction forces associated with the restraints and are needed to compute the associated forces for displacement loading. Therefore, the state representation will be defined so that cells with applied forces and/or displacements will possess the last component group, but this group will be deleted for the remainder of the cells to conserve memory.

As opposed to fluid and gas dynamics problems, where boundary conditions often create complications, boundary conditions for a two-dimensional solid are simpler to handle. Most boundary conditions now take the form of applied forces or displacements, which are handled according to the methods previously discussed. The only other exception is the case of a free boundary, which can be easily modeled by assigning the thickness (or the modulus) of the cells outside the domain to be zero. This effectively allows the cells on the boundary to deform freely.

Finally, the most important element of the CA iterations is the update rule, which will be applied to all of the cells in the domain to change some of the state variables. Based on the assumed state representation, it is possible to change specific components in Eq. (2) based on different criteria. For the displacement update, the philosophy is to determine the location of a cell point given the displacement of all the neighboring points. For a system of nodes connected by springs, this is same as asking the question “if we move all the surrounding nodes to specified positions, what will be the position of the center node under the action of forces induced by the springs”? The simple answer is, “the node will move to a location which will minimize the total potential energy of the local system”. This is of course one of the basic premises of the static equilibrium of all structural systems, and is adopted in the present paper. For the update of the thickness variable of the state, we adopted the concept of fully utilizing the available strength of the material.

In the following sections, these basic concepts will be explained in more detail by demonstrating them for one of the simplest examples of a two-dimensional structural system, namely truss structures.

Two-dimensional Truss Structures

A simple example of a two-dimensional in-plane system that may be used for demonstrating the basic elements of the proposed methodology is a regular

American Institute of Aeronautics and Astronautics

5

Page 6: GEOMETRIC NONLINEAR OPTIMIZATION USING A

array of truss elements that form a rectangular domain. Each node of the domain is connected to the neighboring nodes, thereby forming what is commonly referred to as a "ground truss" configuration. A sample configuration is shown in Fig. 3.

The computational cells are composed of a node and the eight truss members connected to it at every 45° orientation. The neighborhood is, therefore, composed of the eight adjacent nodes as shown by the circles in Fig. 4, which are marked as NW, N, NE, W, E, SW, S, and SE. This is the traditional Moore neighborhood. Although computational cellular domains are continuous without boundaries, as described earlier, it is possible to describe structural domains (rectangular or even irregularly shaped) by the selective assignment of cell properties. For the two-dimensional truss, the vertices of the truss are the center points of the cells and the domain of each cell extends halfway between the neighboring vertices in each direction. Therefore, boundaries are defined by setting the member areas for cells outside of the domain to be zero, which effectively removes those truss members and provides a suitable boundary for the truss structure.

For the definition of the state of a cell at a given time iteration, the cross-sectional areas of the members, {A1, A2, A3, A4, A5, A6, A7, A8}, that define the cell are used instead of the general thickness parameter t used

in the continuum definition. Hence, ( ) { } { } { }{ } )(

87654321 ,,,,,,,,,,,, kiyx

ki ffEAAAAAAAAvu=φ (3)

Analysis Rules:

Minimization of the total potential energy for the truss members of an individual cell leads to simple equilibrium equations in terms of the forces. Considering the forces acting on the cell node, two equilibrium equations, one in the horizontal and another in the vertical direction, exist,

Figure 3: A 2-D “ground” truss structure

(4) ,0,08

1

8

1=+∑=+∑

==y

kykx

kxk fFfF

where and are the horizontal and vertical components of the internal forces in each of the eight members (k = 1, …, 8) attached to the cell. The forces f

xkF ykF

x and fy are the horizontal (x) and vertical (y) components of external forces that may be applied to the cell. The force components and can be calculated from the internal force in the member by using the orientation of the kth member θ

xkF ykF

k.

cell

(5) kkykkkxk FFFF θθ sin,cos ==

The internal forces in each member are expressed in terms of the axial strain in each member,

(6) .8,.....,1, == kEAF kk ε

where the axial strains in each member are computed from the deformed length ldk and the undeformed length lk of the members,

(7) kkdkk lll /)( −=εLinear Analysis Rules: The main difference between a linear and geometrically nonlinear response is in the way the strains are computed and the manner in which the forces are applied to the cell node. For the linear case, each member strain is computed using the projection of the displacements at the two ends of the member onto its undeformed state. This approach yields the following simple expression for the member strain,

Figure 4: The 2-D truss neighborhood.

NW N NE

W

( ) ( )[ ] kokCk

okCkk lvvuu /sincos θθε −+−= (8)

E

cell where {uC, vC} represents the unknown displacements of the cell node, and {uk, vk} are the known displacements of each of the neighboring eight cells. In this equation is the orientation of the kth member in its undeformed (original) state. Therefore, strains are a linear function of the unknown displacements, and the movement rules can be derived in closed form from the equilibrium equations.

θ ok

SW S SE

American Institute of Aeronautics and Astronautics

6

Page 7: GEOMETRIC NONLINEAR OPTIMIZATION USING A

In spite of its simplicity, the linear analysis rules do possess some error that requires discussion. Since the equilibrium equations (4) are based on the undeformed coordinates of each cell location (θ → θo for the linear case), the direction of the member forces act along lines from the undeformed configuration. Thus referring to Fig. 4, the linear solution assumes that the forces act along the light colored lines as opposed to the dark ones. This assumption is suitable if the displacements are small. However, if any of the members undergo substantial rotations with respect to their original orientation, the direction of the force could be significantly altered and lead to a different solution to the equilibrium equations. To fix this problem, nonlinear strain-displacement relations must be used. Nonlinear Analysis Rules: Formulating the direction cosines based on the deformed configuration, it can be easily shown that the cosθk and sinθk of a member connecting the cell center to one of the neighboring cells is given by

dkCkkkk luul /)cos(cos 0 −+= θθ

dkCkkkk lvvl /)sin(sin 0 −+= θθ

, (9) where the deformed length of the kth member ldk is also a function of the unknown cell displacements. From the deformed geometry, the length of the kth member can be computed as

2020 )sin()cos( CkkkCkkkdk vvluull −++−+= θθ . (10)

Application of Eq. (9) and Eq. (10) to the equilibrium equations (4) produces a set of two coupled highly nonlinear equations that require a numerical iterative solution. This is quite a departure from the simple linear equations, which can be solved easily. That is, in contrast to the linear case in which cell node deformations were readily computed, determination of the cell nodes requires solution of a set of nonlinear equations that require an iterative solution for each cell. This nonlinear solution required longer computation time than the linear algorithm, yet it was able to fully capture the nonlinear aspects of highly deformed and rotated truss structures.

Design Rules: The displacement update formulae presented above require the areas of the members connecting the cell to its neighboring cells. These areas are the design variables for the structural optimization problem. The cross sectional update formula proposed in this initial phase is based on a fully stressed design approach. That is, it is assumed that a truss member requires no more area than the minimum needed to carry its internal. Given the displacement of a cell and its neighbors, the stresses

in the members are easily computed,

kEk εσ = k , (11) 8,....,1=

where the strains are computed via Eq. (7) or (8) depending on the degree of nonlinearity. From the member stresses obtained in the previous step, stress rationing produces

all

tkt

kt

k AAσ

σ )()()1( =+ . (11)

Since some of the cells experience no change in their position until the propagation of the displacement reaches them, the internal force at those sites will be zero. In such a case, the cross-sectional area will reduce to zero, and the cell will not be able to participate in the deformation process in future iterations. Therefore in the present implementation, damping of the member area re-sizing along with a small lower bound AL is used for the cross-sectional area of the cells. LINEAR ANALYSIS AND DESIGN EXAMPLES

For the first exhibition of the CA solution algorithm we chose a very simple 10-bar truss example that is well documented in the literature. Mathematica was used to construct a numerical algorithm to implement the CA method. The geometry, loading and boundary conditions for the truss are shown in Fig. 5. The ground truss has three cells in the horizontal direction and two cells in the vertical

direction. Both cells 1 and 4, on the left edge, are constrained. For demonstration purposes, we first perform the analysis of the structure under the given loads with no re-sizing, and then design runs are completed to find the optimal configuration of the structure. All the members are assumed to have an initial cross-sectional area of 1.0 in2. The update formulae were applied repetitively until there was no change in any of the free-cell displacement or area components. In order to establish a very stringent

100 kips100 kips

360 in

360 in 360 in1

2

3

45

6

78

9 10

1 23

4 5 6

Figure 5: Ten bar truss problem

American Institute of Aeronautics and Astronautics

7

Page 8: GEOMETRIC NONLINEAR OPTIMIZATION USING A

criterion for comparison of the various analyses and design run results presented in this report, the machine precision of 16 significant decimal digits was used for a convergence criterion when the Mathematica demonstration program was used. That corresponds to a relative error of less then 10-15.

Analysis Results:

The analysis of the uniform cross-section truss (no re-sizing) required 703 iterations resulting in displacements of {u2, v2} = {-7.36686, -18.0212} and {u3, v3} = {-9.52237, -39.3957} in cells 2 and 3, respectively, where the forces are applied. This result is based on 100% of the loads being applied immediately in the very first iteration, as opposed to slowly increasing the force load values up to their maximum values. A quick numerical study showed that performance degrades when the loads are introduced incrementally. Starting from a zero load initial state, the same results were obtained in 708 iterations for a load increment of 10 kips, 767 iterations for 1 kip, and 851 iterations for 0.5 kips. This suggests that for a liear analysis the loads should be applied with their full strength in the initial iterations (unless the loads are time dependent and the iterations reflect the time coordinate of the problem).

Next, the analysis was repeated by applying displacements instead of forces. The applied forces were removed, and the displacements obtained from the previous runs were applied at cells 2 and 3 at their full strength. With the same precision of 16 digits required for two successive iterations, the analysis required only 61 iterations to converge. Thus compared to the applied load case, the applied displacement case seemed to converge faster in the analysis mode. Design Results: The design runs were started with an initial cross-sectional area of 1.0 in2 for all members, with a lower bound constraint of AL = 0.1 in2. As was done in the case of analysis, the first investigation used force loading by applying the full value at the initial time step. The sizing rules were applied following the application of the displacement update rules. Application of the sizing update for every displacement update cycle proved to yield unstable results for the cross-sectional design. A simple numerical study revealed that during the initial cycles, applying sizing update rules at every time step produces minimum value areas for most of the domain, with the exception of those cells at which the forces are applied. At these loaded cells, the initial areas tended to increased drastically for the members

that are in the same direction as the applied forces, and this increase lead to instability in the sizing calculation.

We next introduced a variable Ns, which controls the frequency at which the sizing update is implemented. The previous case corresponds to Ns = 1, which indicates that the sizing update is performed for every application of the displacement update. This variable proved to be quite crucial for the success of the sizing iterations. That is, instead of applying the sizing update for every application of the displacement update, if we allow the displacement updates to form a more realistic deformation shape before implementing the sizing update, the solution remains stable.

For Ns = 4 or higher the algorithm produces the correct optimal cross-sectional area distribution as determined from the other design techniques used in the literature. The first four cycles from a CA solution that uses Ns = 6 are shown in Fig. 6. The correct optimal cross-sectional area distribution for

this problem is A1 = 8.06213, A2 = 5.56899, A3 = 3.93787, A4 = 5.74472, A7 = 5.56899, A9 = 7.93787, with the rest of the areas at their lower bound of 0.1 in2 .The algorithm reaches an optimal cross-sectional area distribution in 312 displacement iterations. This is quite fast compared to the 708 iterations needed for the convergence of the analysis procedure reported earlier, which seems to indicate that for some problems convergence can be achieved faster by including re-sizing.

Figure 6: Area evolution, Ns = 6.

Changing the frequency of the sizing parameter, Ns, slightly influences the efficiency of the algorithm. For Ns = 8 and 10, the algorithm finds the correct optimal distribution in 336 and 350 displacement updates, respectively. Switching to an incremental load application proved to have little effect in the

American Institute of Aeronautics and Astronautics

8

Page 9: GEOMETRIC NONLINEAR OPTIMIZATION USING A

overall efficiency and stability of the algorithm.

For the sake of completeness, we also performed a strict analysis solution for the optimal truss configuration obtained above. Starting from an undeformed state with the initial areas set to the optimal results as calculated above, the algorithm required 150 displacement iterations to find the final deformation shape ({u2, v2} = {-0.9, -2.7} and {u3, v3} = {-1.8, -7.2}).

NONLINEAR ANALYSIS AND DESIGN For the demonstration of the nonlinear analysis capability, we chose a simple and flexible truss configuration. The truss configuration is shown in Fig. 7, and is one-bay deep and eleven-bay long. The configuration corresponds to a computational mesh of 2 x 12 cells with a cell separation of δ = 1.0 units. The two cells on the left edge, cells 1 and 13, are restrained both in the x and y directions. The structure is loaded by applying a horizontal displacement of ∆ = 1.5 units in the negative x direction at the upper right most cell, {u24, v24} = {-1.5, 0.0}. In order to make the truss flexible (hence, increase the significance of the geometric nonlinearities), the modulus of the material is also assumed to be E = 1.0 units.

In order to assess the accuracy of new methodology, we first performed the linear and nonlinear analysis of the configuration using a finite element program. Deformations computed by the finite element analysis are shown below. As expected, there is a substantial difference between the linear and nonlinear deformations. The largest vertical deformation of the linear analysis was v8 = -1.18 units. The nonlinear deformation at the same cell was 48% larger then the linear one at v8 = -1.75 units.

The CA analysis of the same configuration was performed by using both the linear solution formulation and the different approaches described for the nonlinear formulation. Linear Analysis:

The linear formulation required 3007 iterations, utilizing 334.742 seconds of CPU Mathematica solution time (0.111 sec/iteration). The CPU time is reported to give an indication of relative solution time per iteration. A full-field convergence criterion requiring a difference of less then 10-8 units in all the displacement results between two successive iterations are used. Comparison of the finite element and the CA solutions are shown in Fig. 8, where light colored dots show the solution obtained using CA and the black ones behind them (almost covered by the light ones) show the FEM solution. Undeformed positions of the cells are also shown in light color.

Nonlinear Analysis:

Application of the displacements in one step was the preferred method of load introduction into the linear CA formulation. The same strategy proved to be highly risky in the case of nonlinear analysis. Especially when the applied displacement was larger then the characteristic cell dimension (spacing of the cells), it was possible to converge to an equilibrium solution that corresponded to an unacceptable deformation pattern. For example, upon displacing the tip node by 1.5 units in the first iteration, the truss reached an equilibrium configuration by folding the first bay over the remaining bays. Such a situation was not possible with the linear analysis since the directions of the forces were not effected by the deformations.

This problem was easily solved by applying the displacements in increments that are about the 1/10

9

Figure 8: Comparison of linear FEM and linear CA solutions

∆=1.5

δ = 1.0

δ x

y

Figure 7: Long Truss

American Institute of Aeronautics and Astronautics

Page 10: GEOMETRIC NONLINEAR OPTIMIZATION USING A

of the cell spacing. The full value of the applied displacement could easily be reached in less than a fraction of the iterations needed for full convergence. In case of applied forces, however, application of the full force was still possible since the resulting deformations were typically small in the initial stages of the load application.

Next, the different solution strategies for nonlinear analysis requiring different degrees of solution complexity are investigated. Use of fully nonlinear equations presented earlier became difficult for the nonlinear Mathematica based solver and often resulted in numerical instabilities. It is suspected that writing the code in a more traditional programming language (and/or perhaps using one of the state of the art nonlinear equation solvers) would eliminate this problem.

In an effort to find a computationally efficient solution to the severe nonlinearity, an extreme case of using linear strains along with correct orientation (due to large rotations) of the members computed from the previous iterations was tried. As described earlier, this approach yields a set of two linear equations that can be solved easily. For the present problem, converged solution was obtained in 1319 iterations requiring 199.056 seconds (0.151 sec/iteration). The slight increase in CPU per iteration is a result of additional computations

required for updating the member orientations. However, note that the total number of iteration for convergence is less than half of the number of iterations needed for the linear solution and require smaller total CPU time. Comparison of the results, however, with the traditional finite element solution is not highly favorable. As shown in Fig. 9, compared to the nonlinear finite element solution the maximum cell deformation is substantially smaller. Finally, that includes the nonlinearly in strain, but uses the orientation of the members from the previous iteration, was used for the solution of the problem. Convergence was achieved in 1641 iterations requiring 839.146 seconds (0.511 sec/iteration). As shown in Fig. 10, solution is in good agreement with the nonlinear FEM. The total number of iterations is still less than the number of iterations needed for the linear solution (about little more than half). However, because of the increased CPU per iteration the total CPU is about two and a half times that of the linear solution.

Nonlinear Design:

Development of the nonlinear analysis capability did not influence the way that the design rules operated on the cells. Of course, it is necessary to compute the nonlinear member strains in order to implement the fully stressed design criterion. This requires using an appropriate stress evaluation scheme in the analysis

Figure 9: Long Truss – CA (linear strain - large rotations) versus nonlinear FEM

Figure 10: Long Truss – CA (nonlinear strain - incremental rotations) versus nonlinear FEM

American Institute of Aeronautics and Astronautics

10

Page 11: GEOMETRIC NONLINEAR OPTIMIZATION USING A

cycles. However, as opposed to the analysis, there is no need to simplify strain computation in the case of geometric nonlinearity since the computation of the strain is numerical (does not require the solution of a system of equations). That is, computing fully nonlinear strains in the design cycle is simple substitution of numbers; therefore, there is no need to use simplified equations in the design cycle. Therefore, the strain computation is either linear or nonlinear.

The nonlinear design example solved is a simple three-bar truss configuration, which was used to verify the methodology. The example was taken from "Structural Design Sensitivity Analysis of Nonlinear Response" by Y. S. Ryu, M. Harrian, C. C. Wu, and J. S. Arora. The geometry of the truss is shown in Fig. 11, with an applied load of P = 400 kips acting at a 45-deg from the horizontal direction. Initial areas were A1 = 0.1 in2, A2 = A3 = 0.3 in2. The computational mesh used for the problem is a 3 cell by 2 cell grid. To simulate the three-bar truss, all the unnecessary internal members of the ground structure were set to zero areas initially.

Analysis of the configuration produced the following results.

1) Linear analysis: 2 iterations, {u2, v2} = {3.09384, -1.28151}. 2) Linear strain/nonlinear geometry: 9 iterations, {u2, v2} = {2.75670, -0.74711}. 3) Nonlinear strain / incremental geom: 10 iterations, {u2, v2} = {2.73393, -1.03987}. 4) Nonlinear strain / nonlinear geometry: 2 iterations, {u2, v2} = {2.73392, -1.03988}.

The same combinations that are used in the analysis are used in the design. Only the linear analysis made use of the linear strain computation (Case 1 above). Other cases employed nonlinear strain computations in the design update, although Case 2 used linear strain for the analysis update.

The design runs produced the following results. {A2, A3} = {0.05, 0.05} in all cases.

1) Linear analysis based design: 22 iterations, A1 = 0.4793, Weight=7.98516 {u} = {1.1314, -0.4686}. 2) L. strains and NL. geometry: 21 iterations, A1 = 0.4689, Weight=7.83808, {u} = {1.0699, -0.5232}. 3) NL incremental geometry: 18 iterations, A1 = 0.4720, Weight=7.88247, { u } = {1.0420, -0.5524}. 4) NL strain and geometry: 12 iterations, A1 = 0.4720, Weight=7.88264, { u } = {1.0421, -0.5524}.

The last two results are in excellent agreement with a FEM based design results. The CPU times for these Mathematica based designs do not mean much because of the inefficiency of the programming language and the inefficiency of the nonlinear solver. However, they can be used to give an insight to the relative efficiency of the different methods shown above. The CPU time for the 4 cases are: 1) 0.701 sec., 2) 0.781 sec., 3) 0.942 sec., and 4) 1.171 sec., respectively.

δ = 10Α1

Α2

Α3

P = 400

Figure 11: Three-bar truss. FORTRAN 90 EXAMPLES The previous examples used the Mathematica® programming language to implement the CA methods for the two-dimensional truss. However, for larger structures it was found that a more efficient numerical algorithm was required to solve the equations in a reasonable time. Therefore, the CA implementation was re-worked using Fortran 90. Though several features of the framework had to be re-formulated for the new language, the basic logic and workings of the code remained the same. As a demonstration example of the Fortran 90 code, a

standard truss problem was used to investigate the effect of increasing the mesh cell density for a given problem geometry. The chosen problem was a Mitchell-type structure, shown in Figure 11 for a scale factor of one. The basic model shown in Fig. 11 has three cells in the horizontal direction and two cells in the vertical direction. An increase in the scale parameter increases the density of the mesh, thus for a scale factor of two the computational lattice is 5×3. The fully stressed design for this structure is

25 m

50 m

E = 200 Gpaσa = 65 MPa

100 kN

Figure 11: Mitchell-type Truss Design Example

American Institute of Aeronautics and Astronautics

11

Page 12: GEOMETRIC NONLINEAR OPTIMIZATION USING A

shown in Figure 12 for a scale factor of one, where the displayed widths of the members are scaled according to their actual areas.

Scale = 2

Scale = 4

Figure 12: Truss Design – Scale = 1

Systematically increasing the cell density demonstrates the evolution of the design as the number of design variables is increased. Shown in Figure 13 are the results of a fully stressed design for several values of the scale parameter. Note how the diagonal members that are connected to the supports remain constant, yet the internal region changes according to the degree of mesh density that is allowed. Furthermore, it is evident that the designs shown here are not necessarily practical truss structures. This is because no redundancy exists for the most critical truss members. Ideally, the regions near the supports should contain several branching members that can re-distribute the load more evenly and prevent the possibility of instability in the legs. This omission is due to the formulation of the fully stressed design rules. However, due to the simplicity of the local design methods within the CA, other rule definitions can be configured so that the structure satisfies any constraints that are desired.

Scale = 8

Scale = 25

CONCLUSIONS The implementation of Cellular Automata methods for structural analysis and design of two-dimensional elastic structures has been demonstrated. The specific examples demonstrated the algorithm details and the relative efficiencies of the linear and nonlinear solutions as well as proving the capability of CA within a design environment. It is felt that the CA methods, when applied to more complex geometries such as three-dimensional structures or thin plates and shells, will provide a revolutionary technique for structural design that is more efficient than the present finite element based methods.

ACKNOWLEDGEMENT The authors wish to acknowledge the support and guidance of Jarek Sobieski of NASA-LaRC.

REFERENCES [1] R.T HAFTKA, M.P KAMAT, “Simultaneous Nonlinear Structural Analysis and Design,”

Computational Mechanics, 4, 1989, pp. 409-416. Figure 13: Evolution of Truss Designs

[2] S. ULAM, “Random Processes and Transformations,” Proceedings of the International Congress of Mathematicians, 2, 1952, pp. 85-87. [3] J. VON NEUMANN, Theory of Self-Reproducing Automata, Univ. of Illinois Press, 1966. [4] T. TOMMASO, N. MARGOLUS, Cellular Automata Machines, MIT Press, 1991. [5] S. WOLFRAM, Cellular Automata and Complexity: Collected Papers, Addison-Wesley Publishing Company, 1994. [6] R. J. GAYLORD, K. NISHIDATE, Modeling Nature: Cellular Automata Simulations with Mathematica, Springer-Verlag, Inc., 1996. [7] A. W. BURKS, Editor, Essays on Cellular Automata, Univ. of Illinois Press, 1970.

American Institute of Aeronautics and Astronautics

12