Presentation is loading. Please wait.

Presentation is loading. Please wait.

Tutorial 3, Part 1: Optimization of a linear truss structure

Similar presentations


Presentation on theme: "Tutorial 3, Part 1: Optimization of a linear truss structure"— Presentation transcript:

1 Tutorial 3, Part 1: Optimization of a linear truss structure

2 Truss structure Optimization goal is to minimize the mass of the structure (initial mass is 8393 lbs) Maximum stress is psi (limit stress=40166/global safety factor=1.6) Maximum displacement is 20 in Design variables: cross section areas of trusses 0.1 in² ≤ Xi=ai ≤ 20 in² Load parameters: F= lbf Material parameters: E=107 psi, =0.2, =0.1 lbs/in³ Element length: L=360 in Responses from linear finite element analysis are mass, displacements at loading points and stresses for each element Parametric optimizer like oS are running a black box CAE-process, therefore the gradients are determined with single side or central differences. Tutorial 3, Part 1: Optimization

3 Task description Parameterization of the problem
Definition and evaluation of DOE scheme Definition and evaluation of MOP Single objective, constraint optimization Gradient based optimization Adaptive response surface method Evolutionary algorithm Multi objective optimization Pareto optimization with evolutionary algorithm Tutorial 3, Part 1: Optimization

4 Project manager Open the project manager Define project name
1. 2. 3. Open the project manager Define project name Create a new project directory Copy optiSLang Examples/10bar_truss into project directory Tutorial 3, Part 1: Optimization

5 Parameterization of the problem
1. 2. 3. 4. 5. Start a new parametrize workflow Define workflow name Create a new problem specification Enter problem file name Start parametrize editor Tutorial 3, Part 1: Optimization

6 Parameterization of the problem
1. 2. 3. Click “open file” icon in parametrize editor Browse for the SLang input file 10bar_truss.s Choose file type as INPUT Tutorial 3, Part 1: Optimization

7 Parameterization of the problem
2. 1. 3. Mark value of a1 in the input file Define a1 as input parameter Define parameter name Tutorial 3, Part 1: Optimization

8 Parameterization of the problem
1. 2. Open parameter in parameter tree Enter lower and upper bounds (0.1 … 20.0) Set settings as default for other parameters 3. Tutorial 3, Part 1: Optimization

9 Parameterization of the problem
Repeat the procedure for the other cross section areas Lower and upper bounds are automatically set to 0.1 … 20.0 Tutorial 3, Part 1: Optimization

10 Parameterization of the problem
2. 1a. 1b. 3b. Open output file of solver 10bar_response.out Mark output value in editor Define mass as output parameter Repeat for displacements and stress values (take care of sign) Tutorial 3, Part 1: Optimization

11 Parameterization of the problem
2. 1. Mark final string Define it as success string Tutorial 3, Part 1: Optimization

12 Parameterization of the problem
3. 1. 2. Open objective section (double click) Create new objective function Define mass as objective Tutorial 3, Part 1: Optimization

13 Parameterization of the problem
2. 3. 1. Open constraint section (double click) Create inequality constraint equation for each displacement value 1-|disp_node/20| (scaled to one) Create inequality constraint equation for each stress value 1-|stress_element/25000| (scaled to one) Tutorial 3, Part 1: Optimization

14 Parameterization of the problem
Close parametrization editor Check overview for inputs Check overview for outputs Tutorial 3, Part 1: Optimization

15 Parameterization of the problem
Check overview for objectives Check overview for constraints Tutorial 3, Part 1: Optimization

16 Design Of Experiments (DOE)
2. 1. 2. 3. Start a new DOE workflow Define workflow name and workflow identifier Enter problem file name Tutorial 3, Part 1: Optimization

17 Design Of Experiments (DOE)
1. 3. Enter solver call (slang –b 10bar_truss.s) Start DOE evaluation Generate 100 Latin Hypercube samples Tutorial 3, Part 1: Optimization

18 Design Of Experiments (DOE)
2. 1. 4. 3. 1. 2. Check input samples Check input distributions Check input correlations Continue to evaluate response values Tutorial 3, Part 1: Optimization

19 Design Of Experiments (DOE)
Reload file in optimization mode to find best design from DOE samples as possible start value for optimization task Best design with valid constraints: mass = 3285 (39% of initial mass) Tutorial 3, Part 1: Optimization

20 Meta-Model of Optimal Prognosis (MOP)
2. 1. 3. 4. 5. Start a new MOP workflow Define workflow name Define workflow identifier Choose DOE result file Choose optional problem file Tutorial 3, Part 1: Optimization

21 Meta-Model of Optimal Prognosis (MOP)
1. 4. 2. 3. 5. CoP settings (sample splitting or cross validation) Investigated approximation models DCoP - accepted reduction in prediction quality to simplify model Filter settings Selection of inputs and outputs Tutorial 3, Part 1: Optimization

22 Meta-Model of Optimal Prognosis (MOP)
MOP indicates only a1, a3, a8 as important variables for maximum stress and displacements, but all inputs are important for objective function Tutorial 3, Part 1: Optimization

23 Meta-Model of Optimal Prognosis (MOP)
a a a a a a a a a a10 max_stress max_disp stress10 stress9 stress8 stress6 stress5 stress4 stress3 stress2 stress1 disp4 disp2 mass MOP filter For single stress values used in constraint equations, each input variable occurs at least twice as important parameter Reduction of number of inputs seems not possible Tutorial 3, Part 1: Optimization

24 Gradient-based optimization
2. 1. 2. 3. 4. Start a new Gradient-based workflow Define workflow name and workflow identifier Enter problem file name Choose optimization method Enter solver call (slang –b 10bar_truss.s) Start gradient workflow Tutorial 3, Part 1: Optimization

25 Gradient-based optimization
3. 1. 2. Decrease size of diffentiation interval Choose single sided differences to reduce number of solver calls Choose best valid sample from DOE workflow as start value 3. Tutorial 3, Part 1: Optimization

26 Gradient-based optimization
Best design with valid constraints: mass = 1595 (19% of initial mass) Elements 2,5,6 and 10 are set to minimum Stresses in remaining elements reach maximum value 153 solver calls (+100 from DOE) Tutorial 3, Part 1: Optimization

27 Adaptive response surface
2. 1. 2. 3. Start a new ARSM workflow Define workflow name and workflow identifier Enter problem file name Enter solver call (slang –b 10bar_truss.s) Start ARSM workflow Tutorial 3, Part 1: Optimization

28 Adaptive response surface
2. 1. 2. 3. GA & NLPQL as optimization method Approximation settings: keep polynomial regression Advanced settings: no recycle of previous support points Tutorial 3, Part 1: Optimization

29 Adaptive response surface
Best design with valid constraints: mass = 1613 (19% of initial mass) Elements 2,6 and are set to minimum, 5 and 10 are close to minimum 360 solver calls Tutorial 3, Part 1: Optimization

30 Evolutionary algorithm (global search)
2. 1. 2. 3. 4. Start a new NOA workflow Define workflow name and workflow identifier Enter problem file name Choose optimization algorithm (EA with global search as default) Enter solver call (slang –b 10bar_truss.s) and start workflow Tutorial 3, Part 1: Optimization

31 Evolutionary algorithm (global search)
1. Choose start population size Keep defaults for Selection, Crossover and Mutation Tutorial 3, Part 1: Optimization

32 Evolutionary algorithm (global search)
Best design with valid constraints: mass = 2087 (25% of initial mass) 392 solver calls Tutorial 3, Part 1: Optimization

33 Evolutionary algorithm (local search)
1. 2a. 2b. Keep defaults for Start population, Selection, Crossover and Mutation Choose start design from global EA optimization Tutorial 3, Part 1: Optimization

34 Evolutionary algorithm (local search)
Best design with valid constraints: mass = 2049 (24% of initial mass) 216 solver calls (+392 from global search) Tutorial 3, Part 1: Optimization

35 Overview optimization results
Method Settings Mass Solver calls Constraints violated Initial - 8393 DOE LHS 3285 100 75% NLPQL diff. interval 0.01%, single sided 1595 153(+100) 42% ARSM defaults (local) 1613 360 80% EA global defaults 2087 392 56% EA local 2049 216(+392) 79% PSO global 2411 400 36% GA global 2538 381 25% SDI local 1899 70% Parametric optimizer like oS are running a black box CAE-process, therefore the gradients are determined with single side or central differences. NLPQL with small differentiation interval with best DOE as start design is most efficient Local ARSM gives similar parameter set EA/GA/PSO with default settings come close to global optimum GA with adaptive mutation has minimum constraint violation Tutorial 3, Part 1: Optimization

36 Parameterization of second objective
1. 2. 3. 4. Start a new parametrize workflow Define workflow name Create a copy and modify it Open truss.pro and enter new problem file name Tutorial 3, Part 1: Optimization

37 Parameterization of second objective
2. 1. 4. 3. Create a new objective Enter name, activate and enter function obj2 = max_stress Delete stress constraints Close editor and check objectives Tutorial 3, Part 1: Optimization

38 Pareto optimization with EA
2. 1. 2. 3. 4. Start a new Pareto workflow Define workflow name and workflow identifier Enter problem file name Choose EA as optimization algorithm Enter solver call (slang –b 10bar_truss.s) and start workflow Tutorial 3, Part 1: Optimization

39 Pareto optimization with EA
1. Find optimal designs for start population: Open ARSM optimization results in statistic mode Select anthill plot mass vs. max_stress Select some designs around the optimum which seem to be Pareto optimal Remember the design numbers Tutorial 3, Part 1: Optimization

40 Pareto optimization with EA
1. 2. Select “specify start population” Increase minimum and maximum number of generations Keep defaults for Selection, Crossover and Mutation Tutorial 3, Part 1: Optimization

41 Pareto optimization with EA
2. 1. 1. Import design from ARSM optimization Choose 20 designs (preferred designs from anthill plot and the remaining from the designs with minimal mass) Tutorial 3, Part 1: Optimization

42 Pareto optimization with EA
Pareto front Tutorial 3, Part 1: Optimization


Download ppt "Tutorial 3, Part 1: Optimization of a linear truss structure"

Similar presentations


Ads by Google