1
optiSLang v4
DYNARDO • © Dynardo GmbH 2012
2
DYNARDO • © Dynardo GmbH 2012
Redesign and rewrite of algorithmic base (SLang replacement) as C++ Library to be ready for high performance computing and integration in third party applications - independent use of MOP‘s - Customer application using Sensi/MoP/Optimizer - Integration into ANSYS Workbench Redesign and rewrite of Graphical user Interface (FlowGuide replacement) to serve user expectations of automation and integration - optiSLang Version 4 Third party integration‘s and optiSLang GUI version 4.0 use identical C++Libraries. With that move Dynardo is ready for future challenges to integrate third party CAE-flows as well as to be integrated into parametric modeling environments.
Dynardo Software Strategie
3
Customer Application: optiFrame/Movie + Fully automatic parameterization of ABAQUS passenger car models + Load case, parameter, response name mapping + Accessing job distribution systems, Parallel processing, Job monitoring, Status control + Methodology: ALHS sampling -> MOP ->Optimization on MOP-Solver -> Best design verification
User Application of optiSLang v4 Library
DYNARDO • © Dynardo GmbH 2012
4
Customer Application: optiFrame/MovieCombination of user defined GUI optiSLang post processing and optiSLang v4 libraries
User Application of optiSLang v4 Library
Source: Drücker; Optimization of Restraint Systems of a Vehicle Architecture using Meta Models; SAE Conference 2011, Paper Number 11-0110
DYNARDO • © Dynardo GmbH 2012
5
DYNARDO • © Dynardo GmbH 2012
optiSLang inside ANSYS Workbench
6
ANSYS User Conferences © Dynardo GmbH © October 2012
Excellence of optiSLang
• optiSLang is the commercial tool that has completed the necessary functionality of sensitivity analysis, optimization and stochastic analysis to measure Robustness and Reliability to run real world industrial RDO applications
• optiSLang offers easy and safe to use workflows with algorithmic wizards having robust default settings
• Since 2009 ANSYS interfacing via optiPlug• Since 2012 ANSYS workbench integrated
version
7
ANSYS User Conferences © Dynardo GmbH © October 2012
ANSYS is a very powerful parametric modeling environment
minimize
- including process automation, third party CAE integration, bidirectional CAD interfaces, parallel computing
- easy acces to parametric via parameter manager
- with these important technology ANSYS Workbench is ready to address RDO task‘s
8
optiSLang inside ANSYS © Dynardo GmbH © 2012
Modules Sensitivity+MOP, Optimization and Robustness+MOP provide „best practise“ optiSLang functionality
optiSLang inside ANSYS Workbench v14
9
Safe to use. automate best practice to „black box“ flows minimize the risk to miss better designs (optimization) minimize the risk to estimate misleading measures for robustness,
safety and reliability offer easy to use measurements of prognosis quality
That task requires sophisticated technology with carefully balance between number of solver calls and safety to reach the RDO goal.
Technology takes care that “non expert” can use it!
optiSLang Flows of best Praxis
optiSLang inside ANSYS © Dynardo GmbH © 2012
10
ANSYS Workbench easy parametric set up of complex simulations
- intelligent scanning of parameter space- generation of Meta model of optimal Prognosis (MOP)- easy to use optimization and robustness modules
optiSLang inside ANSYS Workbench
optiSLang inside ANSYS © Dynardo GmbH © 2012
Easy to use: minimize user input offer best practise
defaults for modules offer pre defined post
processing modes
User-friendliness takes care that it will be used!
11
What do we mean with that? “classic” DOE+RSM technology ask user to reduce number of
variables, choose a suitable DOE with a suitable regression function and check the quality of the resulting response surface (RS) and the “optima” on the RS.
optiSLang provides a automatic flow to reduce variables and generate the best possible response surface for every response with a given number of solver calls [Meta model of optimal Prognosis (MoP)] and checks MoP Prognosis quality and “optima” in real space.
optiSLang inside ANSYS WorkbenchEasy and safe to use!
optiSLang inside ANSYS © Dynardo GmbH © 2012
12
Sensitivity Module Minimal required user input:
Definition of parameter variation
optiSLang inside ANSYS © Dynardo GmbH © 2012
13
The Meta Model of optimal Prognosis (MOP) is automatically created out of the DOE-Sampling Minimal required user input: non Additional features:
supports removing designs out of DOE Post Processing
Sensitivity Module
optiSLang inside ANSYS © Dynardo GmbH © 2012
14
Optimization using MOP After sensitivity optimization using of MOP is supported. Minimum required user input:
drop the optimization module onto MOP
defining objective and constraints
“Optima” which are based on meta models need to be verified! Proof optima:
Automatic verification with real ANSYS call
Check differences in post processing
optiSLang inside ANSYS © Dynardo GmbH © 2012
15
optiSLang inside ANSYS © Dynardo GmbH © 2012
Optimization Wizzard
optiSLang helps you to select a suitable optimization algorithm. Support the underlying (automatic) selection process with some additional information about the solver and the problem itself.
Exampel for using MOP and best_design_Sensitivity:
1. Set the analysis status as “Preoptimized” (best design from Sensitivity)
2. Set the constraint violations to “Seldom”
3. Set failed designs to “None” (MOP gives always response values)
4. Set solver noise to “None” (MOP gives a smooth surface)
16
optiSLang inside ANSYS © Dynardo GmbH © 2012
Optimization Wizzard using MOP
Suggested algorithm is NLPQL
Start point is automatically selected
Press “Next”
1.
3. 2.
17
Optimization with real design calls
After sensitivity und optimization on MOP the user can continue with gradient-based, NOA-based optimization or ARSM optimization. Minimum required user input:
define objectives and constraints choose method (Gradient-based including
start design, NOA-based including best designs’s out of sensitivity/MOP, ARSM in the domain of the most important optimization parameter)
For all optimizer robust default settings are provided. NOA - Nature inspired optimization contains: evolutionary, genetic, particle swarm optimization ARSM – Adaptive Response Surface Method
optiSLang inside ANSYS © Dynardo GmbH © 2012
18
Robustness Evaluation
Minimum required user input: definition of input variation /scatter definition of robustness criteria number of samples for ALHS
optiSLang inside ANSYS © Dynardo GmbH © 2012
19
optiSLang saves every design which was successfully calculated
using update at optiSLang container continue or reset can be chosen
using continue optiSLang only send unsolved designs
Continue crashed session option inside ANSYS
optiSLang inside ANSYS © Dynardo GmbH © 2012
ANSYS Conference & 30th CADFEM Users Meeting, Kassel, October 24.-26, 2012
20
Recalculate failed designs
• Due to different reasons design evaluations may fail
• With “Recalculate Failed Design Points” you can start them again
optiSLang inside ANSYS © Dynardo GmbH © 2012
ANSYS Conference & 30th CADFEM Users Meeting, Kassel, October 24.-26, 2012
21
Interrupt, save, send & continue• Stop your analysis
• At the end of the day
• If licenses are not available
• …
• Save the Workbench project
• Continue later
• saves every successful design run!
• external optimization using MOP possible!
optiSLang inside ANSYS © Dynardo GmbH © 2012
ANSYS Conference & 30th CADFEM Users Meeting, Kassel, October 24.-26, 2012
22
Parallel evaluation using Ansys RSM• ANSYS RSM is the powerful tool to distribute jobs
• optiSLang can fill the Workbench design table with a predefined number of designs
• ANSYS RSM organizes distribution of jobs
• If ANSYS RSM is installed you only need to:
• Choose RSM Mode
• Set max. number of parallel jobs
optiSLang inside ANSYS © Dynardo GmbH © 2012
ANSYS Conference & 30th CADFEM Users Meeting, Kassel, October 24.-26, 2012
23
Update via Python scripting
• ANSYS initialize per default an update mechanism, which updates a complete ANSYS Workbench project
• Mechanism can be overridden via python file
• optiSLang provides this feature for optiSLang design evaluations
• user has full access to his ANSYS model update
optiSLang inside ANSYS © Dynardo GmbH © 2012
ANSYS Conference & 30th CADFEM Users Meeting, Kassel, October 24.-26, 2012
24
optiSLang inside ANSYS © Dynardo GmbH © 2012
ANSYS HPC Parametric PackoptiSLang inside Ansys Workbench v14.5
optiSLang Algorithm Settings• Select “Use RSM Mode” to enable parallel design point submission
• Set the “Preferred Number of Design Points in Parallel” to the intended RSM job size
25
DYNARDO • © Dynardo GmbH 2012
optiSLang4
26
DYNARDO • © Dynardo GmbH 2012
Nodes - operation• Input• Properties• Output
Edges• Data flow• Triggering
Graphical programming
27
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
• Support v3 problem definition• Load or• Double - click .pro
• Postprocessing• v4.0 uses v3 postprocessing• Double - click .bin
v3 Compatibility
28
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
Documentation• Tutorials• Examples• Supportmail• Method documentation• Context sensitive help
• Tabs• Search
29
DYNARDO • © Dynardo GmbH 2012
Fast creation of solver chain via wizard
Solver appears as a node in the flow• Data flow• Triggering • solver specific paramtrization
Integrations
30
DYNARDO • © Dynardo GmbH 2012
Integrations Direct integration • Matlab • Excel • Python • SimulationX • Mathcad Supported connection • Ansys • Abaqus • LS-Dyna • Adams • Madymo Arbitrary connection of ASCII file based solvers
31
DYNARDO • © Dynardo GmbH 2012
Easy, safe and fast flow creation• Parametrization - solver chain• Sensitivity (including MOP generation)• Optimization (with decision tree)• Robustness• Post processing
Proven flows and defaults
Wizards
Sensitivity (including MOP generation)
32
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
• Use templates • Drag & Drop • Automatic connect (Parameter, Designs, …)
• Algorithms are nodes with inputs and outputs
(compact view)
Wizard based flow creation
33
DYNARDO • © Dynardo GmbH 2012
• Set up solver chain • Test run • Templates • Online help • Batch mode – no window system needed, no interaction • Postprocessing • .bin -> .csv Export • MOP on v3 .bin files • MOP solver with v3 .bin files • Import of optiSLang version 3.x *.pro files
What optiSLang4 can do – Project
34
DYNARDO • © Dynardo GmbH 2012
• DOE • ARSM • NOA • NLPQL • Robustness • MOP • MOP as Solver • Iterative Variance based RDO
What optiSLang4 can do – Algorithms
35
© Dynardo GmbH 2012
The Sensitivity Flow
• The MOP is now fully inte- grated in the sensitivity flow
• User-interaction may be enabled before the MOP is built
36
© Dynardo GmbH 2012
Neglection of Outliers
• Outliers or (physical) meaningless designs may be deactivated and the reduced data set is taken automatically for the MOP generation
37
© Dynardo GmbH 2012
Optimization on the MOP
• Optimization on the MOP is now directly linked to the sensitivity flow
• Validation of best design is directly per- formed with predefined solver template
38
© Dynardo GmbH 2012
Decision Tree for Optimizer Selection
• An optimizer is automatically suggested depending on the parameter properties, the defined criteria as well as user specified settings
• Preoptimized reference without failed or noisy solver responses -> NLPQL
39
© Dynardo GmbH 2012
Decision Tree for Optimizer Selection
• Single-objective optimization with no user defined settings
ARSM is the default method
40
© Dynardo GmbH 2012
Decision Tree for Optimizer Selection
• For multi-objective optimization the global Evolutionary Algorithm is recommended
41
© Dynardo GmbH 2012
Advanced Optimization Flow
• In optiSlang 4 different optimization steps can be connected by automatically importing the best design of e.g. a global optimization to a following local optimization
• Such flows can be defined before any solver is called
42
© Dynardo GmbH 2012
Advanced Optimization/Robustness Flow
• Similar to hierarchical optimization steps, single-objective optimization and robustness analysis can be connected e.g. by automatically considering the best design of an optimization as nominal design (mean values) for a following robustness analysis
43
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
Comfortable extraction of known output file formatsTo be integrated in process chain
Nodes for:• Abaqus• Adams• Ansys
Output extraction with ETK
44
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
MatlabSolver specific dialog and execution
45
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
PythonSolver specific dialog and execution
46
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
Excel Solver specific dialog and execution
47
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
Solver specific dialog and execution
Simulation X
48
WOST 9.0 • 29.11.2012 • © Dynardo GmbH 2012
• Create or modify a project • In GUI • With python script
• Run the project
• In batch • No graphical environment needed
optislang – – batch myproject.opf
Command Line Interface (CLI)
49
optiSLang modes of operation
DYNARDO • © Dynardo GmbH 2012
50
DYNARDO • © Dynardo GmbH 2012
Flowchart of optiSLang sensitivity analysis
• Full design variable space X for sensitivity analysis• Scanning the design space with DoE by direct solver calls• Generating MOP on DoE samples • Sensitivity analysis gives reduced design variable space Xred
• MOP may be used as approximation model for optimization• Best design from DoE as start point may accelerate local optimization
DoE
Solver
Sensitivity analysis
MOP
51
DYNARDO • © Dynardo GmbH 2012
Perform sensitivity analysis for external data
• Use Excel plugin to transform data in optiSLang binary file:
• MOP uses external DoE to perform sensitivity analysis:
Excel plugin MOP External
DoE
52
DYNARDO • © Dynardo GmbH 2012
MOP-Solver: Using MOP in external applications
• The MOP-Solver is a stand-alone executable
• Connection to existing optiSLang MOP-results files
• Inputs and outputs are available in ASCII-files
• Connection to arbitrary post-processing tools by file parsing
MOP Solver
MOP binary file
Inputs Outputs
53
DYNARDO • © Dynardo GmbH 2012
MOP-Solver: Using MOP in external applications
• Initialization: mopsolver.exe --init MOP_resultfile.bin -i inputs.txt -o outputs.txt
• Evaluation: mopsolver.exe -i inputs.txt -o outputs.txt
• ASCII-based input/output definition:
54
• Full design variable space X for sensitivity analysis• Scanning the design space with DOE by direct solver calls• Generating MOP on DOE samples • Sensitivity analysis gives reduced design variable space Xred
• Optimization requires objective function f(x) and constraint conditions gj(x), optional start value x0
• Optimizer determines optimal design xopt by direct solver calls
Standard optimization
DOE
Solver
Optimizer• Gradient• ARSM• EA/GA
Sensitivity analysis
Optimization
Solver
MOP
Dynardo • optiSlang Seminar method overview
DYNARDO • © Dynardo GmbH 2012
55
Optimization with MOP pre-search
• Full optimization is performed on MOP by approximating the solver response
• Optimal design on MOP can be used as – final design (verification with solver is required!) – as start value for second optimization step with direct solver
• Good approximation quality of MOP is necessary for objective and constraints (CoP ≥ 90%)
DOE
Solver
Optimizer• Gradient• ARSM• EA/GA
Sensitivity analysis
Optimization
SolverMOP
MOP
Optimizer• Gradient• ARSM• EA/GA
Dynardo • optiSlang Seminar method overview
DYNARDO • © Dynardo GmbH 2012
56
Optimization with MOP using external DOE
• External DOE exists from experiments or other sources• Excel plugin is used to generate optiSLang binary file• MOP uses external DOE scheme to generate approximation and to
perform sensitivity analysis• Optimization is performed on MOP to obtain approximate optimum
ExternalDOE
Optimizer• Gradient• ARSM• EA/GA
Sensitivity analysis
Optimization
MOP
MOPExcel plugin
Dynardo • optiSlang Seminar method overview
DYNARDO • © Dynardo GmbH 2012
57
• Full optimization variable space X for sensitivity analysis• Sensitivity analysis gives reduced optimization variable space Xred
• Optimizer determines optimal design xopt by direct solver calls• Robustness evaluation (varianced-based or reliability-based)
in the random variable space Xrob at optimal design xopt
Optimization + Robustness evaluation
DOE
Solver
Optimizer• Gradient• ARSM• EA/GA
Sensitivity analysis
Optimization
Solver
MOP
Robustness• Variance• Sigma-level• Reliability
Robustness
Solver
Dynardo • optiSlang Seminar method overview
DYNARDO • © Dynardo GmbH 2012
58
• Sensitivity analysis gives reduced optimization variable space Xred• Optimizer determines optimal design xopt by direct solver calls• Robustness evaluation
– Robust optimum – end of iteration– Non-robust optimum - update constraints and repeat optimization
+ robustness evaluation
Iterative Robust Design Optimization
DOE
Solver
Optimizer• Gradient• ARSM• EA/GA
Sensitivity analysis
Optimization
Solver
MOP
Robustness• Variance• Sigma-level• Reliability
Robustness
Solver
Update constraints
No Yes
End
Dynardo • optiSlang Seminar method overview
DYNARDO • © Dynardo GmbH 2012
59
• Sensitivity analysis gives reduced optimization variable space Xred
• Optimizer determines optimal design xopt by direct solver calls with simultaneous robustness evaluation for every design
• Each robustness evaluation determines robustness values by direct solver calls
Simultaneous Robust Design Optimization
DOE
Solver
OptimizerSensitivity analysis
Robust Design Optimization
Solver
MOP
Robustness
Solver
Dynardo • optiSlang Seminar method overview
DYNARDO • © Dynardo GmbH 2012
60
DYNARDO • © Dynardo GmbH 2012
optiPlug SoS - Statistics on Structure ETK - Extraction Tool Kit
optiSLang Integration Environment
61
Extraction Tool Kit (ETK) • Extraction toolkit to replace the
scripting for result extraction and processing
• GUI interface for extraction and processing
• Batch execution mode • Creates optiSLang *.pro file
• Full functional support of Abaqus
*.odb and ANSYS binary files (RST, RTH,RMG, RFL)
• Support of Adams XML format • Support of ASCII output for
MADYMO • Available on Windows/Linux
DYNARDO • © Dynardo GmbH 2012
62
• Operations with scalar, vector and signal objects
• Definition of optiSLang output parameters
Extraction Tool Kit (ETK)
DYNARDO • © Dynardo GmbH 2012
63
• Output objects are written in additional ASCII text file
• Parametrization of the outputs is done by ETK
• Definition of objectives and constraints has to be done by hand
• Integration of ETK in solver batch script is necessary
Extraction Tool Kit (ETK)
DYNARDO • © Dynardo GmbH 2012
64
ETK will be integrated part of solver extraction in new optiSLang GUI version 4.0
Future of Extraktion Tool Kit (ETK)
DYNARDO • © Dynardo GmbH 2012
65
ETK inside optiSLang v4 Fast Output parameter definition in GUI Apply your mathematics Visualize preview Save ETK - Project Use ETK inside your batch solver-chain Batch execution mode creates optiSLang *.pro file
Extraktion Tool Kit (ETK)
DYNARDO • © Dynardo GmbH 2012