tutorial 2, part 2: calibration of a damped oscillator

Post on 12-Feb-2016

77 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Tutorial 2, Part 2: Calibration of a damped oscillator. Damped oscillator. Mass m , damping c , stiffness k and initial kinetic energy Equation of motion:. Undamped eigen-frequency: Lehr's damping ratio D Damped eigen-frequency. Damped oscillator. - PowerPoint PPT Presentation

TRANSCRIPT

Tutorial 2, Part 2: Calibration of a damped oscillator

2 Tutorial: Calibration

Damped oscillator

• Mass m, damping c, stiffness k and initial kinetic energy

• Equation of motion:

• Undamped eigen-frequency:

• Lehr's damping ratio D

• Damped eigen-frequency

3 Tutorial: Calibration

Damped oscillator• Time-dependent displacement

function

• Identification of the input parameters m, k, D and Ekin to optimally fit a reference displacement function

• Objective function is the sum of squared errors between the reference and the calculated displacement function values

4 Tutorial: Calibration

Task description

• Parametrization of the input parameters• Parametrization of the displacement vs. time functions as signals• Extraction of objective from output and reference signals• Definition and evaluation of a sensitivity analysis• Check for dependent parameters• Identification of the damper parameters using global and local

optimization strategies• Identification using noisy reference function• Estimation of model representation quality

5 Tutorial: Calibration

Project manager

1. Open the project manager2. Define project name3. Create a new project directory4. Copy optiSLang Examples/Oscillator into project directory

1.

2.

3.

6 Tutorial: Calibration

Parameterization of the problem

1. Start a new parametrize workflow2. Define workflow name3. Create a new problem specification4. Enter problem file name

1. 2.

3.

5.

4.

7 Tutorial: Calibration

Parameterization of the inputs

1. Click “open file” icon in parametrize editor2. Browse for the SLang input file oscillator.s 3. Choose file type as INPUT

1.

3.

2.

8 Tutorial: Calibration

Parameterization of the inputs

1. Mark value of m in the input file2. Define m as input parameter3. Define parameter name

1.

2.

3.

9 Tutorial: Calibration

Parameterization of the inputs

1. Open parameter in parameter tree2. Enter lower and upper bounds

(0.1 … 5.0)3. Repeat procedure for k, D, Ekin

1.

2.

10 Tutorial: Calibration

Parameterization of the inputs

11 Tutorial: Calibration

Parameterization of the inputs

12 Tutorial: Calibration

1. Click “open file” icon in parametrize editor2. Browse for the SLang output file oscillator_signal.txt 3. Choose file type as OUTPUT

Parameterization of the output signal

1.

3.

2.

13 Tutorial: Calibration

Parameterization of the output signal

1. Mark output object string in editor2. Add string to repeated block marker set3. Select “set super marker”, set start, increment,

end values and “single steps”

2.

3.

1.

14 Tutorial: Calibration

1. Mark first value of time column2. Add string to a vector3. Select marker4. Define name of vector

2.

3.

4.

1.

Parameterization of the output signal

15 Tutorial: Calibration

Parameterization of the output signal

1. Repeat for the displacement column2. Block marker and vectors appear in parameter tree

2.

1.

16 Tutorial: Calibration

Definition of the output signal object

1. Create a new signal object2. Define signal object disp_time and activate3. Choose abscissa reference and define label4. Add disp as signal channel5. Define channel name, label and activate

2.

1.

3.

4.

1.

17 Tutorial: Calibration

1. Click “open file” icon in parametrize editor2. Browse for the SLang output file oscillator_reference.txt 3. Choose file type as OUTPUT

Parameterization of the reference signal

1.

3.

2.

18 Tutorial: Calibration

Parameterization of the reference signal

1. Mark output object string in editor2. Add string to repeated block marker set3. Select “set super marker”, set start, increment,

end values and “single steps”

2.

3.

1.

19 Tutorial: Calibration

1. Mark first value of time column2. Add string to a vector3. Select marker4. Define name of vector

2.

3.

4.

1.

Parameterization of the reference signal

20 Tutorial: Calibration

1. Mark first value of displacement column2. Add string to a vector3. Select marker4. Define name of vector

2.

3.

4.

1.

Parameterization of the reference signal

21 Tutorial: Calibration

1. Mark first value of second displacement column (noisy reference)2. Add string to a vector3. Select marker4. Define name of vector

2.

1.

Parameterization of the reference signal

3.

4.

22 Tutorial: Calibration

1. Open the reference vectors in the parameter tree

2. Set vectors as active and constant

2.

1.

Parameterization of the reference signal

23 Tutorial: Calibration

Definition of the reference signal object

1. Create a new signal object2. Define signal object disp_time_ref and activate

and set as constant3. Choose abscissa reference and define label4. Add disp_ref and disp_ref_noise as channels5. Define channel name, label and activate

2.

1.

3.

4.

1.

24 Tutorial: Calibration

Definition of difference from reference

1. Create a signal function2. Add signal function SIG_DIFF_EUCLID as difference between solver

output and reference channel

2.

1.

1.

2.

25 Tutorial: Calibration

Definition of maximum values in time slots

1. Create new signal functions2. Add signal functions SIG_MAX_Y and SIG_MAX_Y_SLOT to get

maximum displacement values after a certain time (0, 2, 4, 6, 8s)

1.2.

26 Tutorial: Calibration

Definition of difference from noisy reference

1. Create new signal functions2. Add signal function SIG_DIFF_EUCLID as difference between solver

output and noisy reference channel

1.2.

27 Tutorial: Calibration

Definition of objective functions

1. Create new objective function2. Define objective as difference between solver output and reference channel

(second objective using noisy reference)

2a.

1.2b.

28 Tutorial: Calibration

Parameterization of the problem

1. Close parametrization editor2. Check overview for inputs3. Check overview for outputs

2.

1.

29 Tutorial: Calibration

Parameterization of the problem

1. Check overview for signals2. Check overview for objectives

2.

1.

30 Tutorial: Calibration

Design Of Experiments (DOE)

1.

2.

2.

3.

1. Start a new DOE workflow2. Define workflow name and workflow identifier3. Enter problem file name

31 Tutorial: Calibration

Design Of Experiments (DOE)

1.

1. Enter solver call (slang –b oscillator.s)2. Start DOE evaluation with 100 LHS samples

32 Tutorial: Calibration

Design Of Experiments (DOE)

• Coefficient of Determination of quadratic approximation of rmse_all_diff is very low (38% CoD)

• Single values as maximum in time slot can be approximated much better (96% - 99% CoD)

100 samples

33 Tutorial: Calibration

Meta-Model of Optimal Prognosis (MOP)

1.

2.

4.

3.

1. Start a new MOP workflow2. Define workflow name 3. Define workflow identifier4. Choose DOE result file

34 Tutorial: Calibration

Meta-Model of Optimal Prognosis (MOP)

1.

2.

3.

4.

1. CoP settings (sample splitting or cross validation)2. Investigated approximation models3. Set CoP (accepted reduction in prediction quality to simplify model) to 0.014. Filter settings

35 Tutorial: Calibration

Meta-Model of Optimal Prognosis (MOP)

• Coefficient of Prognosis of rmse_all_diff is very low (45% CoP) and only m and k are found to be significant

• CoP of maximum values in time slot are much better (95% - 99% CoD) and all inputs are indicated to be significant

100 samples

36 Tutorial: Calibration

Meta-Model of Optimal Prognosis (MOP)

• Coefficient of Prognosis of rmse_all_diff increases if number of samples is increased (from 45% to 84%) and additionally Ekin becomes significant

Sensitivity study of objective function itself may require many samples due to a certain complexity

Analysis of single values may be more efficient

100 samples 500 samples 2000 samples

37 Tutorial: Calibration

Meta-Model of Optimal Prognosis (MOP)

• All inputs are significant for at least some of the output values

Identification of all input parameters is generally possible

100 samples 500 samplesFull m k D Ekin Full m k D Ekin

RMSE 45% 19% 44% - - 72% 27% 53% - 21%Max0 99% - 42% - 57% 99% - 46% - 56%Max2 97% 7% 41% 9% 47% 99% 10% 45% 8% 43%Max4 97% 15% 42% 18% 29% 98% 15% 44% 16% 30%Max6 98% 23% 36% 23% 23% 99% 20% 41% 22% 24%Max8 95% 23% 28% 35% 16% 96% 19% 36% 26% 20%

38 Tutorial: Calibration

Evolutionary algorithm (global search)

1. Start a new NOA workflow2. Define workflow name and workflow identifier 3. Enter problem file name4. Choose optimization algorithm (EA with global search as default)5. Enter solver call (slang –b oscillator.s) and start workflow

1. 2.

3.

4.

2.

39 Tutorial: Calibration

Evolutionary algorithm (global search)

1.

1. Choose start population size2. Keep defaults for Selection,

Crossover and Mutation

40 Tutorial: Calibration

Evolutionary algorithm (global search)

• Global optimization converges to small difference between output and reference

41 Tutorial: Calibration

Dependent parameters

• Different optimization runs lead to different parameter sets with similar differences

Run 1: RMSE=0.183 Run 2: RMSE=0.434

42 Tutorial: Calibration

Dependent parameters

Reason for non-unique solution:• The parameters Ekin and m as well as k and m appear only

pair-wisely in the displacement function Only the ratio between Ekin and m as well as k and m can be

identified We keep the value of m as constant

General procedure:• Check designs from DOE with almost equal objective values• Or perform multiple global optimization runs• Sensitivity indices quantify the global influence of each input,

But: the dependency between input parameters with respect to the minimum objective values can not be identified

43 Tutorial: Calibration

Modify the parametrization

1. 2.

3.4.

1. Start a new parametrize workflow2. Define workflow name3. Create a copy and modify it4. Enter original problem file name5. Enter new problem file name

5.

44 Tutorial: Calibration

Modify the parametrization

2.

3.

4.

1. Open the parameter m in the parameter treee2. Modify reference value3. Set parameter as constant4. Close parametrization editor and check inputs

45 Tutorial: Calibration

Evolutionary algorithm (global search)

• Different optimization runs lead to similar parameter sets with similar differences

No parameter dependencies

Run 1: RMSE=1.587 Run 2: RMSE=0.287 Run 3: RMSE=0.769

46 Tutorial: Calibration

Gradient-based optimization

2.

3.

1. Start a new Gradient-based workflow2. Define workflow name and workflow identifier3. Enter problem file name4. Choose optimization method5. Enter solver call (slang –b oscillator.s)6. Start gradient workflow

2.

4.

47 Tutorial: Calibration

1. Decrease size of differentiation interval

2. Choose best design from EA optimization as start value

Gradient-based optimization

1. 2.

2.

48 Tutorial: Calibration

Gradient-based optimization

• Local gradient-based optimization gives exact reference values for inputs

• Fitting is perfect (almost zero rmse)

49 Tutorial: Calibration

Identification using noisy reference

• Measurements are more or less precise• Reference displacement function is disturbed by Gaussian noise

with zero mean and standard deviation of 0.1 m• Second objective is used for parameter identification• Again global + local optimization with reduced input parameter

set k, D and Ekin

50 Tutorial: Calibration

Identification using noisy referenceEvolutionary Algorithm(global search)

51 Tutorial: Calibration

Identification using noisy referenceGradient based (local search)

• Measurements errors may reduce the identification quality

• The accuracy of the identified parameters depends on the number of measurements and the sensitivity of the parameter

top related