Помощь в написании студенческих работ
Антистрессовый сервис

Моделирование процесса параметрической идентификации динамического объекта

КурсоваяПомощь в написанииУзнать стоимостьмоей работы

А также, на каждом шаге подставив полученные значения, рассчитываем Выберем шаг h=0.5, выполним необходимые вычисления и построим график функции. Здесь нам нужно найти значения функции Y теоретического, для того, чтобы потом получить Y экспериментальное, с помощью шума. Результаты пошагового приближения показаны в таблице 6 «Зависимость CF от значений a1 и T», график CF представлен на рис. 7… Читать ещё >

Моделирование процесса параметрической идентификации динамического объекта (реферат, курсовая, диплом, контрольная)

1. Постановка задачи

В нашей работе нам нужно создать модель, которая будет удовлетворять исходным данным и сможет найти оптимальные параметры для идентификации исходной функции. Результатом работы должны быть графики поиска минимума значения функции, гистограмма распределения точек генератора случайных чисел, а также график Y теоретического, Y экспериментального от времени.

Моделирование используется, если эксперимент с реальным объектом:

1) опасный

2) дорогой

3) долговременный / краткосрочный

4) невозможный / трудный Условная схема моделирования:

Т.к. у нас отсутствует объект, то мы заменяем его на Y теоретическое + шум

Y экспериментальное = Y теоретическое + шум

2. Нахождение Y теоретического. Преобразование формулы и решение ее с помощью Метода Эйлера

Здесь нам нужно найти значения функции Y теоретического, для того, чтобы потом получить Y экспериментальное, с помощью шума.

Используя метод введения дополнительной переменной, получим:

Перейдём в вещественную форму:

Обозначим:

Получим систему уравнений в канонической форме:

Далее решаем систему методом Эйлера. Начальные условия:

А также, на каждом шаге подставив полученные значения, рассчитываем Выберем шаг h=0.5, выполним необходимые вычисления и построим график функции.

Полученный график представлен на рис. 1. По графику видно, что функция

y (t)-> к числу чуть больше 0. А выходит она из точки ~ -1500.

Узнаем точные значения этих точек. Для этого вычислим пределы:

= 30

= -1500

Некоторые значения y представлена в таблице 1 «Зависимость значения функции от времени».

Наилучший период наблюдения t=1…300, шаг h=0.5.

Взято 300 точек, т. к. уже на этом периоде наблюдения видно как график функции сходится к положительному числу около 0. График функции искажается при шаге больше 0.5 (при шаге больше 0,8 — расходится). А при меньшем шаге сходимость получим за большее число шагов. Поэтому выбран шаг h=0.5.

Таблица 1. Зависимость значения функции от времени

t

y (t)

— 1500,000

1130,336

— 407,472

— 131,811

546,368

— 554,815

465,039

— 156,678

— 15,510

218,653

— 192,945

201,441

— 48,697

18,974

98,544

— 54,763

97,352

— 2,843

28,262

54,751

— 2,138

56,381

16,410

30,295

38,875

17,849

40,304

24,418

30,484

33,157

3. Моделирование метода оптимизации

3.1 Описание метода поиска

Метод предназначен для нахождения экстремума (минимума) функции, но в нашем случае: .

1. Задается начальная точка, отличная от точки минимума. Задаются точность (E) и шаг (h).

2. Далее выбираем координату (направление), по которой будем двигаться по функции:

а все остальные координаты фиксируем. И ищем минимальное значение функции как функцию одной переменной (Х1)

В случае если новое значение функции больше предыдущего, то меняем шаг на противоположный (h = - h).

3. Когда находим значение координаты, при котором значение функции минимально, то выбираем другую координату, по которой будем двигаться по функции:

а все остальные координаты снова фиксируем.

Выбор остановки задан 4 условиями:

1.

2.

3.

4. Число обращений (итераций)

k(f) > kmax

3.2 Результаты работы программы

Квадратичная функция (Эллипс)

Функция имеет вид

Начальная точка А0 (2, 2).

Таблица 2. Изменение x1 и x2, исходя из поиска min значения квадратичной функции

№ шага

X1

X2

1,8

1,6

1,4

1,2

0,8

0,6

0,4

0,2

2,78E-16

2,78E-16

1,8

2,78E-16

1,6

2,78E-16

1,4

2,78E-16

1,2

2,78E-16

2,78E-16

0,8

2,78E-16

0,6

2,78E-16

0,4

2,78E-16

0,2

2,78E-16

2,78E-16

N = 21

Функция Розенброка

Функция имеет вид:

Начальная точка А0 (2, 2).

EPSILON = 0.001; %Точность

h = 0.1; %Шаг Таблица 3. Изменение x1 и x2, исходя из поиска min значения функции Розенброка

№ шага

X1

X2

1,9000

1,8000

1,7000

1,6000

1,5000

1,4000

N = 7

Начальная точка А0 (1, -4).

EPSILON = 0.001; %Точность

h = 0.1; %Шаг Таблица 4. Изменение x1 и x2, исходя из поиска min значения функции Розенброка

№ шага

X1

X2

— 4

0,8

— 4

0,6

— 4

0,4

— 4

0,2

— 4

5,55E-17

— 4

5,55E-17

— 3,8

5,55E-17

— 3,6

5,55E-17

— 3,4

5,55E-17

— 3,2

5,55E-17

— 3

5,55E-17

— 2,8

5,55E-17

— 2,6

5,55E-17

— 2,4

5,55E-17

— 2,2

5,55E-17

— 2

5,55E-17

— 1,8

5,55E-17

— 1,6

5,55E-17

— 1,4

5,55E-17

— 1,2

5,55E-17

— 1

5,55E-17

— 0,8

5,55E-17

— 0,6

5,55E-17

— 0,4

5,55E-17

— 0,2

5,55E-17

1,28E-15

0,2

1,28E-15

N = 27

4. Реализация ГСЧ

Создание ГСЧ и поиск модели зашумленного сигнала. В нашем случае используем метод усечения для создания ГСЧ. Чтобы испытать ГСЧ строим гистограмму на 10 000 точек. Сгенерированные точки должны соответствовать закону:

. y_max — максимальное значение Y по модулю из всех точек графика Y теор.

возьмем, т. к. y_max по модулю больше 500 (1500).

Проверка генератора «Треугольного шума» при N = 10 000 и delta_y = 7.5:

График Y теоретического и Y экспериментального (зашумленный график Y теоретического).

Таблица 5. Значения Yэкс в зависимости от шума

№ точки

Yэкс (1), =0,005

Yэкс (2), =0,01

Yэкс (3), =0,02

— 1506,561

— 1496,972

— 1496,153

85,083

84,577

88,712

1245,416

1256,870

1264,160

112,760

98,695

92,571

— 939,953

— 938,000

— 946,931

— 131,166

— 132,577

— 145,555

775,672

777,251

796,285

232,010

231,750

229,776

— 547,185

— 551,959

— 555,088

— 191,216

— 194,543

— 181,249

465,503

455,118

452,909

252,133

241,894

263,565

— 293,631

— 286,842

— 295,902

— 173,814

— 186,403

— 181,508

264,253

267,846

265,955

218,090

216,414

215,207

— 136,696

— 134,625

— 138,823

— 141,899

— 136,791

— 149,690

151,825

139,051

159,285

175,463

182,452

196,729

— 50,295

— 57,314

— 57,741

— 87,542

— 81,579

— 99,699

73,835

80,696

73,237

132,399

125,263

120,820

3,160

— 6,364

— 15,126

— 56,997

— 53,019

— 57,606

42,379

37,533

47,935

97,419

95,323

81,791

22,288

23,213

28,786

— 23,178

— 25,147

— 38,311

30,386

32,702

31,370

67,780

72,577

95,659

35,731

44,098

24,397

— 7,754

0,426

— 22,380

24,917

21,248

18,903

60,712

55,789

54,944

35,090

33,137

46,121

12,417

12,223

2,387

19,943

27,383

9,027

49,462

36,241

51,913

42,892

48,288

37,082

23,786

18,381

17,030

24,232

16,265

28,930

41,899

42,570

24,516

33,159

38,792

45,036

20,799

25,678

39,845

20,084

34,589

13,267

33,599

47,143

29,720

36,889

31,634

33,448

28,651

35,716

36,139

5. Нахождение минимума заданной целевой функции

Создадим математическую модель процесса с коэффициентами a1=8 и T=1 и подберем их таким образом, чтобы при данных значениях целевая функция была минимальна.

Выберем шаг h = 0.2. Точность EPSILON = 0.0001. Количество итераций ITERATION_AMOUNT = 1000.

Результаты пошагового приближения показаны в таблице 6 «Зависимость CF от значений a1 и T», график CF представлен на рис. 7

CF1min = 8,901 453

CF2min = 44,5 068

CF3min = 132,7882

Таблица 6. Зависимость CF от значений параметров a1 и T

№ шага

A1

T

CF1 (m=0,005)

CF2 (m=0,01)

CF 3 (m=0,02)

1,884E+12

1,884E+12

1,884E+12

1,884E+12

1,884E+12

1,884E+12

7,8

1,784E+12

1,784E+12

1,784E+12

7,6

1,686E+12

1,686E+12

1,686E+12

7,4

1,591E+12

1,591E+12

1,591E+12

7,2

1,499E+12

1,499E+12

1,499E+12

1,409E+12

1,409E+12

1,409E+12

6,8

1,323E+12

1,323E+12

1,323E+12

6,6

1,239E+12

1,239E+12

1,239E+12

6,4

1,158E+12

1,158E+12

1,158E+12

6,2

1,079E+12

1,079E+12

1,079E+12

1,004E+12

1,004E+12

1,004E+12

5,8

9,309E+11

9,309E+11

9,309E+11

2,4

1,166E+11

1,166E+11

1,166E+11

2,2

9,359E+10

9,359E+10

9,359E+10

7,337E+10

7,337E+10

7,337E+10

1,8

5,592E+10

5,592E+10

5,592E+10

1,6

4,124E+10

4,124E+10

4,124E+10

1,4

2,933E+10

2,933E+10

2,933E+10

1,2

2,019E+10

2,019E+10

2,019E+10

1,381E+10

1,381E+10

1,381E+10

0,8

1,021E+10

1,021E+10

1,021E+10

0,6

9,37E+09

9,37E+09

9,371E+09

0,6

1,2

586 850,911

585 505,007

588 790,108

0,6

1,4

124 642,353

124 498,296

125 774,153

0,6

1,6

105 470,917

105 284,132

105 939,099

0,6

1,8

98 001,114

98 219,831

98 781,217

0,8

1,8

94 310,316

94 510,650

95 055,002

1,8

90 793,658

90 975,608

91 502,927

4,8

1,8

57 063,664

56 896,317

57 100,004

1,8

57 029,796

56 844,065

57 030,719

32 987,463

33 084,055

33 539,979

5,2

30 410,132

30 504,267

30 945,503

5,4

27 937,650

28 029,328

28 455,877

5,6

25 570,018

25 659,237

26 071,099

5,8

23 307,234

23 393,996

23 791,170

21 149,300

21 233,604

21 616,090

6,2

19 096,214

19 178,060

19 545,860

6,4

17 147,978

17 227,366

17 580,478

6,6

15 304,590

15 381,521

15 719,945

6,8

13 566,052

13 640,525

13 964,261

11 932,362

12 004,378

12 313,427

7,2

10 403,522

10 473,079

10 767,441

7,4

8979,530

9046,630

9326,304

7,6

7660,388

7725,030

7990,017

7,8

6446,094

6508,279

6758,578

5336,650

5396,377

5631,989

8,2

4332,055

4389,323

4610,248

8,4

3432,308

3487,119

3693,356

8,6

2637,411

2689,764

2881,314

8,8

1947,362

1997,258

2174,120

1362,163

1409,601

1571,776

9,2

881,813

926,793

1074,280

9,4

506,311

548,834

681,634

9,6

235,659

275,724

393,836

9,8

69,856

107,463

210,888

8,901

44,051

132,788

розенброк эйлер моделирование идентификация

Выводы

Ввиду того, что метод покоординатного спуска нулевого порядка, он довольно неточен. Из-за того, что функция Розенброка имеет овражный рельеф, дойти до точки минимума не удалось. Точка остановки в этом случае была довольно далеко от точки минимума. В случае с функцией Эллипса точка минимума была достигнута за 21 итерацию, при шаге h = 0.2. Несмотря на это точка минимума заданной целевой функции была достигнута абсолютно точно за 91 итерацию, при шаге h = 0.2, и точностью 0,0001.

Список источников

1. http://ru.wikipedia.org/wiki/Функция_Розенброка

2. http://nsft.narod.ru/Programming/colmetopt.html

3. http://www.mathworks.com

4. http://www.exponenta.ru/soft/matlab/potemkin/book/matlab/chapter0/00.asp

5. http://matlab.exponenta.ru

6. Н. Ю. Золотых. Использование пакета Matlab в научной и учебной работе — Нижний Новгород, 2006 — 165 с.

Показать весь текст
Заполнить форму текущей работой