Multidisciplinary non-linear optimization with Optimizing Structural ...

2 downloads 0 Views 554KB Size Report
OptiSLang is introduced. The software concept of SLang was primarily developed for reliability analysis and is excellent qualified to be used as optimization.
Multidisciplinary non-linear optimization with Optimizing Structural Language OptiSLang Christian Bucher*, Johannes Will, Jörg Riedel* DYNARDO GmbH, Weimar, Germany * Bauhaus-Universität Weimar, Weimar, Germany

Summary An optimization platform for multidisciplinary optimization based on SLang (Structural Language, Bauhaus-Universität Weimar, Bucher et al.) OptiSLang is introduced. The software concept of SLang was primarily developed for reliability analysis and is excellent qualified to be used as optimization platform. The software can be used for arbitrary multidisciplinary non-linear optimization and robustness evaluation. Key features of the optimization platform are the connecting of arbitrary solvers, the parsing of input and output parameter of the optimization problem, gradient algorithms (NLPQL), genetic and evolutionary algorithms, Response Surface methods, design of experiments and robustness evaluation. The powerful possibilities for non-linear optimization and robustness evaluation will be shown on benchmark tests and practical examples.

Keywords SLang, multidisciplinary optimization, robustness, genetic, RSM, NLPQL, stochastic, statistic

19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

1

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

0.

SLang for general non-linear optimization

The software SLang, mainly developed since more than ten years by Bucher and co-workers is a powerful script language and so far used for Finite Element analyses, probability based evaluation, optimization and signal processing. In this fields of application SLang is suppose to be one of the leading academic software codes. The software concept of SLang was primarily developed for reliability analysis. This led to a program structure that makes SLang excellently qualified to be used as an optimization platform. The software development company DYNARDO (Dynamic Software & Engineering) was founded to develop the necessary usability for successful commercial use of SLang. In cooperation with the software development group around Bucher at the Institute for Structural Mechanics (ISM) at the Bauhaus University of Weimar all necessary features to perform non-linear optimization and robustness evaluation were completed. In the meantime SLang participated a benchmark program of the German Verband der Automobilindustrie (Arbeitskreis Crash) for non-linear Optimization and Robustness of crash worthiness. This paper shortly introduces all features of SLang so far bundled in the sub product OptiSLang (Optimizing Structural Language) and some application examples. Key features of the new optimization platform OptiSLang are the following: a) b) c) d) e) f) g)

connecting of arbitrary solvers the parsing of input and output parameter of the optimization problem optimization with gradient algorithms (NLPQL) optimization with genetic and evolutionary algorithms, approximation of the optimization problem with Response Surface methods design of experiments robustness evaluation.

The main advantage of the script based programming of the optimization flow and strategy is the exceptional flexibility of the software. Arbitrary optimization strategies (limited by functional modules NLPQL, RSM, DOE, Genetic/Evolutionary Algorithms, Robustness) can be composed and performed. Especially the flexible implementation of genetic and evolutionary programming allows efficient genetic/evolutionary optimization. Current development efforts focus on the development of a user-friendly Graphical User Interface (GUI). In this context, soon after successfully passing the benchmark DYNARDO started a cooperation with science+computing AG, Tübingen, Germany to integrate OptiSLang in the job flow software FlowGuide. Within a short time the key functionality of OptiSLang for definition of a design flow, the optimization problem and strategy will be available in a very modern job flow environments (FlowGuide), including sophisticated job distribution in heterogeneous hardware environments (LSF).

1.

The optimization platform OptiSLang

The software SLang and the sub product OptiSLang, respectively, are available on all commonly used computer platforms (SGI/IRIX, HPUX, IBM/AIX, Linux/Intel, Linux/PPC, DEC/OSF, WIN-32NT, MAC/OS). The main features of OptiSLang for the definition of the workflow of optimization, for monitoring the optimization progress and finally for evaluation of robustness of the final design are as follows. After definition of optimization strategy the graphical monitoring as well as binary and ASCII output has to be defined. OptiSLang will then save a binary session protocol file. With that protocol files a replay mode of the complete OptiSLang session without calling the external programs is available. Based on the replay mode, arbitrary restarts are possible, depending on the restart possibilities of the applied optimization strategy. For example the replay mode is extremely helpful in case of a system crash. The flow can then be restarted easily from the status immediately before the crash.

1.1 Definition of Optimization Problem After setting up the flow of external solvers and post processing programs the parsing (definition of input and output parameters) has to be performed. OptiSLang can parse arbitrary multiple solver ASCII input and output decks. OptiSLang can read and write standard ANSI C & C++ formats, and if 19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

2

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

necessary unique solver formats can be defined. For dynamic changing ASCII output files parsing via keywords or blocks is possible. For robustness evaluation standard distribution functions (Gaussian, Rayleigh, …) are available. Nonstandard distribution function can be defined via programming Language SLang.

1.2 Optimization using direct optimization methods Within OptiSLang we offer a gradient method and genetic/evolutionary strategy for direct optimization.

Gradient Method NLPQL The gradient method is the well-known NLPQL (Nonlinear Programming Quadratic Line search) algorithm originally introduced by Schittkowski /…/. With a quadratic approximation of Langrange function a stepwise solution of quadratic approximated sub-problem is performed. The numerical gradients are calculated with difference quotients. The recommended area of application is reasonably smooth problems with up to 50 continuous variables. The algorithm has fast convergence. Disadvantages are tendency to local optima and expensive gradient calculation. There is a possibility of failure with no valid solution. The algorithm is restricted to continuous variables. In case of discrete or binary optimization variables we recommend GA/EA.

Genetic Algorithms (GA) & Evolutionary Algorithms (EA) In general Genetics/Evolution are a stochastic search strategy. Within OptiSLang there is a very flexible implementation of genetic and evolutionary algorithms and programming or combinations of GA/EA [bit & float (Riedel) /../] implemented. The most important features to perform an efficient GA/EA strategy are proper adjustment of selection, reproduction and mutation. Fig. 1, 2 & 3 show on overview of some available features of GA/EA within OptiSLang.

Genetic Algorithms (GA)

versus

Evolutionary Algorithms (EA)

Goldberg, & other

Rechenberg, & other initialize population

design improvement due to combination of genes

evaluate individuals

selection

weak selection (clean gene pool) different crossover methods for reproduction/recombination (main evolution process)

reproduction mutation evaluate individuals

weak mutation (fresh up gene pool)

design improvement due to heredity of genes strong selection copy for reproduction of individuals strong mutation (main evolution process due to mutation)

replace individuals

finished ?

no yes end

Fig. 1 Flowchart of GA/EA

19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

3

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

genetic xover, multipoint , 1 parents 3, /

genetic xover, segmented , 1 parents p1 p2, /

p1

p2

p1

p2

genetic xover, uniform, 1 parents .5, /

genetic xover, arithmetic , 1 parents .3, /

Fig. 2 Different crossover procedure in OptiSLang

genetic select, sel_num, low_rank ... genetic select, sel_num, nosort ... extracting without replacement

genetic roulette, sel_num, nopressure ... extracting with replacement genetic roulette, sel_num rank linear ...

0,10 0,05 0,00 Rang

Fig. 3 Reselection/Replace procedure in OptiSLang GA/EA belongs to the family of first order search strategies. That means no gradient information is necessary and the constraints have to be treated by punishing the objective function. The penalty function can be a linear combination of the violated constrains - which takes into account the weight of the violated constrain - and a constant for a clearly division of valid and invalid designs. In contrast to gradient methods and other first order strategies - like simulated annealing and hill climbing - GA/EA manages a population of several design vectors at each time. The task of GA/EA is to improve the whole population generation by generation. This is done using random mechanisms like mutation and crossing over (fig. 2) on the on side and selective mechanisms (fig. 3) on the other side. Recommended area of application is all problems concerning discrete & binary variables respectively all mathematical 0/1-problems and highly non-linear problems like in system identification tasks. The 19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

4

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

number of variables is not that strictly limited like with gradient or response surface methods. We worked successfully on practical problems up to 30.000 discrete variables. The development of collective memory and the recombination mechanisms of GA are the key to tread a huge quantity of design variables. Because GA/EA is a stochastic search strategy convergence to the optimum is slower than in gradient strategies, but the development of the convergence velocity behaves very friendly with increasing the number of variables. Of course the convergence velocity during the final state of the optimization depends on the kind of optimizing problem. If the problem is highly nonlinear searching for the ultimate optimum may be an endless task, but very often design improvements are the engineering goal.

1.3 Design of Experiments (DOE) Design of Experiments (DOE) is a collection of procedures used to create a set of design samples. The generation of design samples can be done either pseudo-randomly according to a probability distribution or deterministically according to a predefined scheme (Box-Jenkins, factorial design, etc.). This set of samples is then commonly used as a set of support points for response surface approximation or as stochastic realization for robustness evaluation.

1.4 Optimization using Response Surface Approximations Due to the inherent complexity of many engineering optimization problems it is quite popular to apply the Response Surface Method (RSM), especially for non-linear problems. Based on a suitable set of support points a global approximation of the objective function or the Lagrange function is performed. Thus the entire optimization run can be based on fast evaluations of the Response Surface. For the calculation of supporting points (typically explicit solver runs with input parameter variation) usually Design of Experiments (DOE) is used.

Approximation with Response Surface Methods (RSM) example of different interpolation with 4 support points

quadratic interpolation good smoothness but possibly weak approximation near and far of the support points

weighted interpolation weak smoothness but possibly better approximation near and far support points

Fig. 4 Example of different resulting response surface due to different approximation function

19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

5

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

Within OptiSLang there are different approximation functions available (linear, quadratic, weighted interpolation, sequential polyhedral, tangential polyhedral). The optimization of the sub-problem on the response surface can then be performed via NLPQL or GA. Of course the approximate optimum found on the response surface has to be checked at least for admissibility with an explicit solver run of the design. If there is significant difference within the evaluation of the objective function an adaptive refinement process of the response surface with calculation of additional support point may become necessary. But the evaluation of the response surface approximation for a real problem may be quite difficult (Fig. 4) and the number of necessary support points for reasonably precise response surface can be very high. Recommended area of application are reasonably smooth problems with a maximum 50 continuous variables. Main attraction of RSM is the extreme fast convergence.

1.5 Evaluation of Robustness The evaluation of robustness of the optimized final design is extremely important. Very often optimal designs tend to be very sensitive to small (sometimes random) fluctuations of parameters. Such phenomena may occur due system instabilities like bifurcation problems in the structure. This can be checked by applying a systematic perturbation analysis based on randomly generated values for the parameters. For creation of the stochastic realization of design samples with random input parameters OptiSLang uses Monte Carlo Simulation. A large number of different probability distributions are available. For convenience, statistical correlation between different random variables can easily be taken into account, even if the random variables are not normally distributed. Even empirical and user-defined distribution functions can be incorporated into the analysis. For the subsequent evaluation of robustness a large set of statistical analysis procedures is available: - mean value, coefficient of variation, histogram - matrix of correlation, anthill plots - Principal Component Analysis (PCA) - cluster analysis

2.

Applications of OptiSLang

The possibilities of OptiSLang for non-linear optimization and robustness evaluation will be shown on benchmark tests and practical examples. First example is an optimization problem with four continuous variables, two objective functions and three constrains. Because of the low number of continuous variblel we choose the NLPQL algorithm for optimization. After 31 (design runs & gradient runs) solver calls on optimium was found (with a design improvement of 10 %).

19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

6

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

Benchmark Non-linear Optimization of crash worthiness

GRADIENT ALGORITHM (NLPQL) Optimization of design values of two load cases with 2 constrains OPTIMIZING_HISTORY

- 4 continuous variables 8.0 GRADIENT VALUE

- weighted design values 7.5

7.0

6.5 0

5

10

15

20

25

30

SLang the Structural Language, Version 4.2.0. Created on 17−Sep−2001.

Design Evaluations: 31 (Design & Gradient)

Design Improvement: 10 % Solver: MADYMO

Fig. 5 Optimization with weighted design values using NLPQL Second example is an optimization problem with continuos, discrete and binary variables, two objective functions and two constrains. Because of the mix of variable types we choose genetic algoritm. The GA had a week elitism, that means mostly the fittest (best) individuum of a generation survive. This was performed using the manipulated roulette wheel (Fig. 3). In case of violating constrains a cliff (penalty term) is added for the fittness to reduce the survival probability (compare Fig. 6). Because mutation of continous, discrete and binary variables follow different procedures the population was split into 3 seperate populations for this purpose.

Benchmark Non-linear Optimization of crash worthiness BEST_HISTORY

GENETIC ALGORITHM (GA) II

Object BEST_HISTORY 8.5E−2

8.0

7.5

7.0 0.0

OPTIMIZING_HISTORY

0.5

OPTIMIZING_HISTORY

.20

1.

1.0

1.5E1

SLang the Structural Language, Version 4.2.0. Created on 16−Sep−2001.

new_Generation

new_Generation

.15

.5 .10

0 0.0

.05

50

100

150

0

200

50

100

150

200

SLang the Structural Language, Version 4.2.0. Created on 16−Sep−2001.

SLang the Structural Language, Version 4.2.0. Created on 16−Sep−2001.

Optimizing history of the design value with penalty cliff

Optimizing history of the design value without penalty cliff

Fig. 6 Monitoring of GA- Algorithms 19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

7

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

After 10 generations, 174 solver runs we stopt the optimization with an design improvement of 58 % compared with the start design.

Benchmark Non-linear Optimization of crash worthiness

GENETIC ALGORITHM (GA) II

initialize population

Optimization of design values of two load cases with 2 constrains

evaluate individuals

selection

- 14 continuous, 5 discrete & 1 binary variables

reproduction

- weighted design values

mutation evaluate individuals replace individuals

finished ?

no yes end

Design Evaluations: 174 Design Improvement: 58 %

Solver: MADYMO

Fig. 7 Optimization with continuous, discrete & binary variables using GA Third example is an optimization with discrete and binary variables. Again because of the variable type we chose a genetic algorithm.

Benchmark Non-linear Optimization of crash worthiness

GENETIC ALGORITHM (GA) I Optimization of design values with 3 constrains

initialize population evaluate individuals

selection

5 discrete & 2 binary Variables

reproduction

Genetic strategy with weak elitism

mutation evaluate individuals replace individuals

finished ?

no yes end

Design Evaluations: 173 Design Improvement: 27 % Solver: NASTRAN & ABAQUS

Fig. 8 Optimization of discrete and binary variables using GA 19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

8

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

Here two solvers had been attached via parsing of the ASCII input decks. One specific problem occurs with a dynamic solver output. The parsing of the output variables was done with block identification. The genetic algorithm we used was similar to example two. A genetic strategy with weak elitism was used. After four generations the improvement process slowed down. After discussion of the so far reached design improvement we stopped the optimization after 173 solver runs with a design improvement of 27 %. The fourth example is a parameter identification of two continuous parameters (material parameters). Optimization of a moderate amount of continuous parameter with highly nonlinear system response is a popular area of application for response surface methods. With DOE we created a set of 16 support points over the assumed range of material parameter values. After a first optimization with NLPQL on the response surface with 16 support points we refined in two steps the response surface with additional support points. With 33 support points we identified a region of the optimum of design improvement of approximately 12 %. Fig. 9 shows the response surface of the two material parameters.

Benchmark Non-linear Optimization of crash worthiness

RESPONSE SURFACS METHOD (RSM) Optimization & Identification of continuous variables - 2 continuous material parameter

- adaptive design evaluation strategy (variation of design space, adaptive refinement of RS) - NLPQL-Optimization on Response Surface

Design Evaluations: 33 Design Improvement: 12 % - solver: LS-DYNA 3D Fig. 9 Parameter Identification of continuous variables using DOE & RS

19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

9

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

Next example shows an evaluation of robustness. The box beam example will be crashed with an impactor. With DOE we created 100 design samples. Within the DOE we used Monte Carlo Simulation with different distribution (normal, Gaussian, discrete) for the 27 input variables. With all together 41 parameter and 100 samples we approximated (with sufficient statistical accuracy) mean value, coefficient of variation and the matrix of linear correlation. To identify system instabilities and dominant random correlation we evaluated histograms and anthill plots of input and output parameter. Additionally we calculated the principal components of the matrix of correlation (eigenvalue of the matrix of correlation). To identify system instabilities in higher dimensions we performed cluster analysis. As the main result we identified the dominant random sensitivity of one dominant input parameter (angle of impactor) due to one dominant output parameter (global structural deformation).

Benchmark Non-linear Optimization of crash worthiness ROBUSTNESS ANALYSIS 100 designs generated with Design of Experiments (DOE) - 5 continuous, 22 binary input variables - 14 continuous/discrete output variable

- statistical evaluation with mean value, coefficient of variation, histogram, matrix of correlation, anthill plots, Principal Component Analysis (PCA), cluster analysis

solver: PAM-CRASH

Fig. 10 Robustness Evaluation Last example is an optimization with a very large number of parameter (30.000) and a very large number of constrains (30.000). The objective function was the reduction of the total weight. Such problem size is definitely not possible to optimize with gradient algorithms or response surface methods. Due to the size of the finite element model and the small amount (compared to the number of variables) of planned solver calls (3000) a special mix of GA and EA with a self-regulation algorithm was chosen. The mutation was performed on grouped variables (with respect to sensitivity criteria) and some optimizer parameters had been formulated by a self-regulating algorithm. After approximately 400 generations the self-regulation had slowed down the optimizing process and the self-regulation process was varied and restarted at this point. On the best history plot of the generations (Fig. 11) the jump of design improvement after this intersection can be observed clearly. After 3000 solver calls we stopped with very successful reduction of total weight. The whole analysis was done an SGI-workstation with 20 processors. The machine was permanent loaded with other network users and we had to cover successfully some system and solver crashes within the total analysis time of about three weeks.

19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

10

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam

Genetic Optimization of very large Ship vessel EVOLUTIONARY ALGORITHM (EA) I Optimization of total weight of two load cases with constrains (stresses) 30.000 Variables self regulating Evolutionary strategy - Population of 4, uniform crossover for reproduction

Design Evaluations: 3000 Design Improvement: > 10 %

- active search for dominant genes with different mutation rates

Solver: ANSYS on SGI 20 proc. with kind permission of

Fig. 11 Optimization of very large number of parameters with EA

Conclusions The software OptiSLang is a very powerful software to perform arbitrary multi objective non-linear optimization. Within OptiSLang state of the art gradient method, DOE and RSM is available. The extreme flexible implementation of GA/EA allows significant design improvements with a moderate number of solver calls for problems where gradient algorithms or RSM fail or give insufficient results. The complete set of statistics allows the user to evaluate the robustness of the optimized design, a task that is very important to evaluate the risks of optimized structures. DYNARDO GmbH, science+computing AG and the Bauhaus University of Weimar are integrating OptiSLang in the FlowGuide environment and will offer potential user soon a very powerful userfriendly software tool for general non-linear optimization and robustness evaluation.

References [1] [2] [3] [4]

Bayer V., Bucher C. et al.: SLang - the Structural Language Version 4.2, Institute of Structural Mechanics - Bauhaus-University Weimar August 2, 2001. Bucher C., Y. Schorling, W. Wall.: SLang - the Structural Language, a tool for computational stochastic structural analysis, In S. Sture, Editor, Proc. 10th ASCE Eng. Mech. Conf., Boulder, CO, May 21-24, 1995, pages 1123 -1126. ASCE, New York, 1995. Riedel J.: Gewichtsoptimierung eines Schiffes unter Spannungsrestriktionen; 6. Institutskolloquium, Institut für Stukturmechanik der Bauhaus Universität Weimar, Weimar 2000 Schittkowski K.: NLPQL: A Fortran subroutine solving constrained nonlinear programming problems, Annals of Operation Research, Vol. 5, 485-500, (1985/86)

19th CAD-FEM Users’ Meeting 2001 International Congress on FEM Technology

11

October 17-19, 2001 Hotel Dorint Sanssouci Berlin, Potsdam