MV-3021: Optimize an Impact Absorber
In this tutorial you will learn how to setup an optimization problem using MotionView's Optimization Wizard for an impact absorber.
- Defining stiffness and damping of SpringDamper element as design variables
- Defining responses of type MaxVal
- Using the responses as objectives
- Running the optimization and post-processing the results
- Introduction
- An impact absorber is modeled as a single degree of freedom system with a mass m, a linear stiffness k and a linear damping coefficient c. The velocity of the mass is 1 m/s; Mass m = 1 kg and a transient analysis end time of 12 seconds is used.The objective of the optimization is to minimize the maximum acceleration of the mass in the time interval 0 to 12s subject to the condition that the maximum displacement is less than 1m. In order to achieve this, stiffness k and damping ratio c are modeled as design variables. MotionSolve's FD (Finite Differencing) capability is used to calculate sensitivities.
Add Design Variables
In this step, you will add design variables for the optimization.
- Open mv_3021_initial_impact_absorber.mdl in MotionView.
- In the Project Browser, right-click on Model and select Optimization Wizard from the context menu.
- Under the Design Variables page, click on the Springs tab.
-
Make the k and c of SpringDamper
0 design variables. Select k and c
datamembers from the Model Tree under the spring damper
and click Add.
-
Modify the upper and lower bounds of the design variables according to Table 1.
Table 1. DV Lower Bounds Upper Bounds sd_0.k 0.2 1.0 sd_0.c 0.2 1.0
Add Response Variables
In this step you will add response variables for the optimization.
- Maximum z direction acceleration of mass
- Maximum z direction displacement of mass
- Click on the Responses page.
- Click to add a response variable. Retain the default Label and Variable name and click OK.
- Once the response variable is created, under Response Type, choose MaxVal.
-
In the Response Expression field, enter
`ABS(ACCZ({b_0.cm.id},{m_0.id}))`
(the absolute value of ACCZ of CM of Mass).The Response Variable should look as shown in Figure 3: -
Follow these steps again to create a second 'MaxVal' response. Use the Response
Expression
`ABS(DZ({b_0.cm.id},{m_0.id}))`
.You have created all the necessary Response Variables. The completed page will look as shown in Figure 4:
Add Objectives and Constraints
Now you will add objectives and constraints to the problem.
-
Navigate to the Goals page. Under Objectives, click
.
This will add an objective with the response rv_0.
- Choose a Weight of 1.0 and retain the Type as Min.
- Under Constraints, click and modify the created response rv_0 to be rv_1.
-
Retain the sign as '< =' and type
1.0
for value.This will ensure that the value of rv_1 is less than 1.0. Now all objectives and constraints are defined, and the model is ready to run.
Run the Optimization
In this step you will run the optimization.
- Navigate to the Solutions page to specify optimization settings and run the analysis.
- Click Optimization Settings.
-
Change the DSA type to FD.
Note: You also have the option to choose AUTO. When you choose AUTO, MotionSolve will detect the simulation type and choose the best approach to compute sensitivity. The simulation type is dynamic, so MotionSolve will choose FD.
-
Click Save & Optimize to start the
optimization.
While the optimization is running, a plot of total weighted cost vs. iteration number and constraint value is displayed in a separate window.
Once the optimization process is complete, the text window in the Solution page displays the optimized design variables values, final value of the responses and optimized cost function.
The expected values of design variables are provided in Table 2:Table 2. RV/VD Expected From Optimizer rv_0 0.5206 0.5206 sd_0.k 0.3606 0.36003 sd_0.c 0.4851 0.48569
Post-Process
In this step, you will post-process the optimization results of the impact absorber.
-
Navigate to the Review Results page.
The Summary tab is displayed with lists of values for design variables, responses and objective being tabulated iteration-wise. For this tutorial, the optimized design variables are from the last iteration 5.
-
Click the Plot tab to visualize variation of design
variables, response variables and cost function using graphs.
- Click the Animation tab to animate the configuration generated during any iteration.
-
Choose Iteration 5 and click on Load
Result to load the H3D file from that iteration.
You can click the / buttons to start and stop the animation.From this tab, you can also export an archive of the model in a state corresponding to any iteration.
- Click the Archive Model Location browser to specify a file path.
-
Click the Export button.
This will create an archive folder which contains all files necessary to open/run/optimize the model. The design variable values are set to the values in the iteration number you choose.