This tutorial allows you to complete a robustness evaluation of a single degree-of-freedom system excited with initial kinetic energy.
You will complete a robustness evaluation at the deterministic optimum.
Mass m, damping ratio D, stiffness k and initial kinetic energy Ekin are taken as normally distributed random variables.
This tutorial demonstrates how to do the following:
Define the random input variables
Complete a robustness analysis with respect to damped eigen frequency and maximum amplitude
Check the coefficient of variation of the objective and constraints
Check if the safety constraint is outside of the 4.5σ level
Check the importance of input variables
Check explainability by using the Metamodel of Optimal Prognosis (MOP) and Coefficients of Prognosis (CoP)
Iterate the constraints manually until the criteria are fulfilled
Set up an optimization workflow with robustness constraints for a coupled robustness design optimization
Complete a robustness evaluation for each optimization design
You must complete the Optimization of a Damped Oscillator tutorial before starting this one.
The best design of the Adaptive Metamodel of Optimal Prognosis (AMOP) optimization is used as the reference for the robustness analysis.
To set up and run the tutorial, perform the following steps:
- Opening the Damped Oscillator Optimization Project
- Completing the Robustness Wizard
- Running the Project and Viewing the Robustness Evaluation Results
- Editing limits
- Viewing the Objective Function Results
- Viewing the Constraint Equation Results
- Completing Iterative Robust Design Optimization
- Completing Nested Robust Design Optimization
- Running the Project and Viewing Nested Robust Design Optimization Postprocessing
Start optiSLang.
From the Start screen, click .
Browse to the location of the damped oscillator optimization project you created in the previous tutorial and click
.
Drag the Robustness wizard onto the AMOP system and let it drop.
In rows 3 and 4 (D and Ekin), clear the Constant check box.
In row 1 (m), double-click the Parameter type cell and select from the drop-down list.
Repeat step 3 for row 2 (k).
In row 3 (D) double-click the Parameter type cell and select from the drop-down list.
Repeat step 5 for row 4 (Ekin).
Double-click the CoV cell for each row and change the values to the following:
Row 1 (m):
2%
Row 2 (k):
5%
Row 3 (D):
10%
Row 4 (Ekin):
10%
Click
.Do not adjust or add to the currently displayed values for parameters, responses, and criteria.
Click
.Do not adjust the current robustness/reliability method settings.
Click
.Do not adjust the current algorithm settings.
Do not adjust the additional options settings.
Click
.The Robustness system is added to the Scenery pane.
The best design of the optimization is automatically sent as nominal design to the Robustness system and is used as mean values.
Check the connection by double-clicking the arrow.
To save the project, click .
To run the project, click .
The results of the robustness evaluation are displayed. You can observe:
Both responses show almost linear behavior
omega_damped can be explained very well by m and k
x_max is mainly influenced by D, k and Ekin and has a lower CoP as in the design space due to locally more dominant solver noise
In the Monitoring pane, select > > .
Select
> .Double-click the Upper cell under Failure Limit for omega_damped and enter
8.5
.Click
.
Under Common settings, select as the first variable.
In the Show settings for list, select .
In the Fitted PDF list, select .
Review the resulting graph.
Histogram and fitted PDF agree well.
Under the histogram, expand
.Review the statistical data. You can observe:
Mean is not close to deterministic value
CoV is larger as maximum input variation (10%)
Optimum is not robust in terms of the objective function
Under Common settings, select as the first variable.
In the Show settings for list, select .
In the Fitted PDF list, select .
Review the resulting graph.
Histogram and fitted PDF agree well.
In the histogram settings, select the Show as CDF check box.
Review the resulting graph.
Empirical and fitted normal CDF agree well. Estimation of the failure probability by assuming a normal distribution seems reasonable.
Under the fitted CDF graph, expand
.Review the statistical data. You can observe:
Safety margin is only 2.38σ, which corresponds to a 1% failure probability
Optimum is not robust in terms of the constraint condition
To perform iterative robust design optimization:
Modify the design by reducing the mean of omega_damped by an additional deterministic optimization
Consider all previous optimization designs for the new optimization
Check the robustness again
The deterministic constraint for the second optimization step, assuming a constant standard deviation:
Mean value + 4.5 * standard deviation ≤ 8.5 rad/s
Mean omega_damped ≤ 7.6
On the Scenery pane, click the AMOP system.
While pressing the Ctrl key, click all of the systems and nodes connected to the AMOP system.
Postprocessing (1)
Robustness
Postprocessing (2)
MOP (1)
Right-click a selected system and select
from the context menu.Right-click a blank area of the Scenery pane and select from the context menu.
Right-click the AMOP (1) system and select from the context menu.
Change the name to
AMOP_Step2
and press Enter.Right-click the Robustness (1) system and select from the context menu.
Change the name to
Robustness_Step2
and press Enter.Right-click the MOP (1)(1) system and select from the context menu.
Change the name to
MOP_Step2
and press Enter.Right-click the AMOP system and select from the context menu.
Repeat step 11 for the AMOP_Step2, Robustness, and Robustness_Step2 systems.
Select
> .Click the Sending node field and select AMOP from the list.
Click the Receiving node field and select AMOP_Step2 from the list.
Click and drag ODesigns from the Sending node output slots list to IStartDesigns in the Receiving node input slots list and drop it on top.
Click
.Double-click the AMOP_Step2 system.
Switch to the Criteria tab.
Change the omega_damped limit to
7.6
.Click
.To save the project, click .
To run the project, click .
The optimizer increases the mass. The best design of the second AMOP optimization is considered automatically as nominal design of the robustness analysis
The safety margin of omega_damped is now 4.7σ, which corresponds to a failure probability of about 1.2x10-6, if the response would be perfectly normally distributed.
This manual iteration has found a robust optimum within two iterations.
Optimization (Global ARSM) | Robustness (100 ALHS) | ||||||
---|---|---|---|---|---|---|---|
Constraint | m | k | ω | Xmax | Mean ω | Sigma ω | Sigma Level |
ω ≤ 8 | 0.79 | 50.0 | 7.96 | 0.26 | 7.99 | 0.21 | 2.4 |
ω ≤ 7.6 | 0.87 | 50.0 | 7.56 | 0.27 | 7.55 | 0.20 | 4.7 |
Finally, we want to find a robust optimum which minimizes x_max and which fulfills the requirement on omega_damped, for example , by a fully automatic procedure using an optimization with nested robustness evaluation.
On the Scenery pane, right-click the Robustness_Step2 system and select from the context menu.
Right-click a blank area of the Scenery pane and select from the context menu.
Right-click the Robustness_Step2 (1) system and select from the context menu.
Change the name to
Robustness_Nested
and press Enter.In the Systems list, expand the Algorithms and Optimization folders.
Drag an ARSM system to the Scenery pane and let it drop.
Right-click the ARSM system and select from the context menu.
Change the name to
ARSM_Nested
and press Enter.Click the Robustness_Nested system.
While pressing the Shift key, drag the Robustness_Nested system into the ARSM system.
Under Analysis, drag a Data Mining node into the ARSM system and let it drop.
Clear the Receive design from parent system check box.
Click
.Select
> .Click the Sending node field and select ARSM_Nested from the list.
Click the Receiving node field and select Robustness_Nested from the list.
Select the Send nominal design check box.
Click
.Select
> .Click the Sending node field and select Robustness_Nested from the list.
Click the Receiving node field and select Data Mining from the list.
Click and drag ODesigns from the Sending node output slots list to New slot in the Receiving node input slots list and drop it on top.
Click
.Double-click the Data Mining node.
Double-click new filter.
Type
omega_damped
and press Enter.Drag ODesigns from the Input slots list and drop it on top of new function.
Double-click new function.
Expand Show extraction functions.
Select the last Get in the list and change the two fields to and .
Click
.From the Use as response list, select .
Repeat steps 26-33 for x_max.
Switch to the Variables tab.
Click
three times.Update the ID fields and Expression fields as follows:
ID Expression mean_omega mean(omega_damped) mean_x_max mean(x_max) stddev_omega stddev(omega_damped) The Type and Value fields update automatically when the expression is entered.
Drag the three variables created in the previous step into the Responses pane.
Click
.Double-click the ARSM_Nested system.
Switch to the Criteria tab.
Drag mean_x_max to the Objective Minimize icon.
Drag mean_omega to the Constraint Less icon.
Change the mean_omega Expression field to
mean_omega+4.5*stddev_omega
.Change the mean_omega Limit field to
8.5
.Click
.Double-click the Robustness_Nested node
Switch to the Dynamic sampling tab.
In the Number of samples field, enter
20
.Click
.
To save the project, click .
To run the project, click .
ARSM found an optimum that fulfills the robustness criteria. A total of 63x20 = 1260 solver calls were required.
To view the postprocessing of the best design, right-click the Robustness_Nested node and select from the context menu.
Browse to the design directory and open the corresponding postprocessing file.
The safety margin of the best design is 4.8σ. However, since the number of robustness samples was small in the coupled analysis, a validation of the estimated safety margin by a more elaborate robustness evaluation is necessary.