Решение нелинейной задачи наименьших квадратов

  • Вид работы:
    Практическое задание
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    7,4 Кб
  • Опубликовано:
    2015-05-06
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Решение нелинейной задачи наименьших квадратов

Липецкий государственный технический университет

Кафедра автоматизированных систем управления











ЛАБОРАТОРНАЯ РАБОТА №5

по математическому программированию

Решение нелинейной задачи наименьших квадратов

Студент Лакомов С. Л.

Группа АС-11

Руководитель

доцент, к. т. н. Домашнев П. А.





Липецк 2014 г.

. Задание

1.      Решить задачу методами Гаусса-Ньютона и Левенберга-Марквардта.

2.      Решить задачу квазиньютоновскими методами.

.        Представить результаты решения задачи различными методами в таблице.

.        Сделать выводы о согласованности экспериментальных данных.

.        Сделать выводы о результатах работы методов.

.        Сравнить ньютоновские и квазиньютоновские методы.

Вариант 3-5

При выполнении лабораторной работы по физике “Определение ускорения свободного падения с помощью физического маятника” студентами было проведено 9 опытов. В каждом из опытов использовались различные физические маятники одинаковой длины . В каждом опыте измерялся период колебания маятника  и расстояние от точки подвеса до центра масс .

Период колебания физического маятника определяется по формуле:


Необходимо найти ускорение свободного падения методом наименьших квадратов.

Данные для задачи приведены в таблице 3.

Таблица 3. Данные задачи

Координаты





5

49

1

28,41



1,3

24,93



2

20,14



1,9

20,66



1,7

21,82



0,8

31,76

19,66



2,3

18,8



0,7

33,95



. Методы Гаусса-Ньютона и Левенберга-Марквардта

Расчет методом Левенберга-Марквардта Условия останова: Достигнуто значение нормы градиента: 1,000E-3 Начальное значение параметра мю: 10000,000 Количество параметров: 1 Количество уравнений: 9 Начальное значение параметров: A = (6,000) ------------------------------------------------ Итерация 0 Текущее приближение: A = (6,000) Вектор невязок: R = (7,963 7,026 5,771 5,898 6,208 8,870 5,652 5,438 9,469) Значение невязки: 443,532 Якобиан: -3,031 -2,663 -2,159 -2,213 -2,336 -3,386 -2,109 -2,020 -3,618 Норма градиента: 170,058 Значение параметра мю: 5000,000 Итерация 1 Текущее приближение: A = (6,017) Вектор невязок: R = (7,912 6,981 5,734 5,861 6,168 8,813 5,616 5,404 9,408) Значение невязки: 432,467 Якобиан: -3,018 -2,652 -2,150 -2,204 -2,326 -3,372 -2,100 -2,011 -3,603 Норма градиента: 168,261 Значение параметра мю: 2500,000 Итерация 2 Текущее приближение: A = (6,050) Вектор невязок: R = (7,812 6,893 5,663 5,788 6,091 8,701 5,547 5,338 9,289) Значение невязки: 411,699 Якобиан: -2,993 -2,630 -2,132 -2,186 -2,307 -3,344 -2,083 -1,995 -3,573 Норма градиента: 164,782 Значение параметра мю: 1250,000 Итерация 3 Текущее приближение: A = (6,114) Вектор невязок: R = (7,621 6,726 5,527 5,649 5,944 8,488 5,414 5,210 9,061) Значение невязки: 374,909 Якобиан: -2,946 -2,589 -2,099 -2,151 -2,270 -3,291 -2,050 -1,963 -3,517 Норма градиента: 158,247 Значение параметра мю: 625,000 Итерация 4 Текущее приближение: A = (6,235) Вектор невязок: R = (7,271 6,418 5,277 5,393 5,674 8,096 5,170 4,977 8,642) Значение невязки: 315,981 Якобиан: -2,861 -2,514 -2,038 -2,089 -2,205 -3,196 -1,991 -1,907 -3,416 Норма градиента: 146,646 Значение параметра мю: 312,500 Итерация 5 Текущее приближение: A = (6,450) Вектор невязок: R = (6,671 5,891 4,850 4,955 5,212 7,427 4,753 4,577 7,927) Значение невязки: 235,516 Якобиан: -2,719 -2,389 -1,937 -1,986 -2,095 -3,038 -1,892 -1,812 -3,246 Норма градиента: 127,955 Значение параметра мю: 156,250 Итерация 6 Текущее приближение: A = (6,801) Вектор невязок: R = (5,753 5,085 4,197 4,285 4,505 6,402 4,114 3,966 6,831) Значение невязки: 147,427 Якобиан: -2,512 -2,207 -1,789 -1,834 -1,935 -2,805 -1,748 -1,674 -2,998 Норма градиента: 102,020 Значение параметра мю: 78,125 Итерация 7 Текущее приближение: A = (7,310) Вектор невязок: R = (4,543 4,021 3,334 3,401 3,572 5,049 3,271 3,159 5,386) Значение невязки: 73,516 Якобиан: -2,254 -1,980 -1,606 -1,646 -1,737 -2,518 -1,568 -1,502 -2,690 Норма градиента: 72,432 Значение параметра мю: 39,063 Итерация 8 Текущее приближение: A = (7,947) Вектор невязок: R = (3,195 2,837 2,374 2,417 2,533 3,543 2,333 2,261 3,777) Значение невязки: 27,360 Якобиан: -1,988 -1,747 -1,416 -1,452 -1,532 -2,221 -1,384 -1,325 -2,374 Норма градиента: 45,118 Значение параметра мю: 19,531 Итерация 9 Текущее приближение: A = (8,623) Вектор невязок: R = (1,931 1,726 1,474 1,494 1,559 2,132 1,454 1,418 2,268) Значение невязки: 6,854 Якобиан: -1,759 -1,546 -1,253 -1,285 -1,356 -1,965 -1,224 -1,172 -2,100 Норма градиента: 24,342 Значение параметра мю: 9,766 Итерация 10 Текущее приближение: A = (9,213) Вектор невязок: R = (0,942 0,858 0,770 0,772 0,798 1,028 0,766 0,760 1,088) Значение невязки: 0,998 Якобиан: -1,593 -1,399 -1,135 -1,163 -1,227 -1,779 -1,108 -1,061 -1,901 Норма градиента: 11,006 Значение параметра мю: 4,883 Итерация 11 Текущее приближение: A = (9,613) Вектор невязок: R = (0,326 0,316 0,330 0,322 0,323 0,339 0,337 0,349 0,352) Значение невязки: 0,100 Якобиан: -1,495 -1,313 -1,065 -1,091 -1,152 -1,670 -1,040 -0,996 -1,784 Норма градиента: 3,871 Значение параметра мю: 2,441 Итерация 12 Текущее приближение: A = (9,801) Вектор невязок: R = (0,048 0,072 0,133 0,119 0,109 0,029 0,144 0,164 0,021) Значение невязки: 0,042 Якобиан: -1,452 -1,275 -1,034 -1,060 -1,119 -1,622 -1,010 -0,967 -1,733 Норма градиента: 0,935 Значение параметра мю: 1,221 Итерация 13 Текущее приближение: A = (9,856) Вектор невязок: R = (-0,030 0,003 0,077 0,062 0,048 -0,059 0,089 0,112 -0,073) Значение невязки: 0,041 Якобиан: -1,440 -1,265 -1,026 -1,051 -1,109 -1,608 -1,002 -0,959 -1,719 Норма градиента: 0,135 Значение параметра мю: 0,610 Итерация 14 Текущее приближение: A = (9,864) Вектор невязок: R = (-0,043 -0,007 0,068 0,053 0,039 -0,073 0,081 0,103 -0,087) Значение невязки: 0,041 Якобиан: -1,438 -1,263 -1,024 -1,050 -1,108 -1,606 -1,001 -0,958 -1,716 Норма градиента: 0,011 Значение параметра мю: 0,305 ------------------------------------------------ Расчет окончен Достигнута заданная норма градиента. Значение функции: 0,0409164. Номер итерации: 15. Норма градиента: 0,000425955 Текущее приближение: A = (9,865) Проведено итераций: 15 Значение невязки: 0,041 Норма градиента: 4,260E-4

Расчет демпфированным методом Гаусса-Ньютона Условия останова: Достигнуто значение нормы градиента: 1,000E-3 Начальное значение параметра лямбда: 1,000 Количество параметров: 1 Количество уравнений: 9 Начальное значение параметров: A = (6,000) ------------------------------------------------ Итерация 0 Текущее приближение: A = (6,000) Вектор невязок: R = (7,963 7,026 5,771 5,898 6,208 8,870 5,652 5,438 9,469) Значение невязки: 26,463 Якобиан: -3,031 -2,663 -2,159 -2,213 -2,336 -3,386 -2,109 -2,020 -3,618 Норма градиента: 170,058 Значение параметра лямбда: 2,000 Итерация 1 Текущее приближение: A = (8,642) Вектор невязок: R = (1,898 1,698 1,450 1,470 1,534 2,095 1,431 1,397 2,229) Значение невязки: 12,356 Якобиан: -1,754 -1,541 -1,249 -1,280 -1,351 -1,959 -1,220 -1,169 -2,093 Норма градиента: 23,861 Значение параметра лямбда: 4,000 Итерация 2 Текущее приближение: A = (10,856) Вектор невязок: R = (-1,369 -1,173 -0,877 -0,916 -0,984 -1,555 -0,843 -0,781 -1,671) Значение невязки: 0,120 Якобиан: -1,245 -1,094 -0,887 -0,909 -0,960 -1,391 -0,867 -0,830 -1,487 Норма градиента: 11,569 Значение параметра лямбда: 2,000 Итерация 3 Текущее приближение: A = (9,792) Вектор невязок: R = (0,063 0,085 0,143 0,130 0,120 0,045 0,154 0,173 0,038) Значение невязки: 0,117 Якобиан: -1,454 -1,277 -1,036 -1,062 -1,120 -1,624 -1,012 -0,969 -1,736 Норма градиента: 1,082 Значение параметра лямбда: 4,000 Итерация 4 Текущее приближение: A = (9,938) Вектор невязок: R = (-0,147 -0,100 -0,007 -0,024 -0,042 -0,190 0,008 0,033 -0,213) Значение невязки: 0,041 Якобиан: -1,422 -1,249 -1,013 -1,038 -1,096 -1,588 -0,990 -0,948 -1,697 Норма градиента: 1,035 Значение параметра лямбда: 2,000 Итерация 5 Текущее приближение: A = (9,865) Вектор невязок: R = (-0,043 -0,008 0,068 0,053 0,038 -0,073 0,080 0,103 -0,088) Значение невязки: 0,041 Якобиан: -1,438 -1,263 -1,024 -1,050 -1,108 -1,606 -1,001 -0,958 -1,716 Норма градиента: 0,006 Значение параметра лямбда: 4,000 Итерация 6 Текущее приближение: A = (9,866) Вектор невязок: R = (-0,044 -0,009 0,067 0,052 0,038 -0,074 0,080 0,102 -0,089) Значение невязки: 0,041 Якобиан: -1,438 -1,263 -1,024 -1,050 -1,108 -1,606 -1,000 -0,958 -1,716 Норма градиента: 0,006 Значение параметра лямбда: 2,000 ------------------------------------------------ Расчет окончен Достигнута заданная норма градиента. Значение функции: 0,0409164. Номер итерации: 7. Норма градиента: 1,76729E-7 Текущее приближение: A = (9,865) Проведено итераций: 7 Значение невязки: 0,041 Норма градиента: 1,767E-7

колебание наименьший квадрат ускорение

3. Квазиньютоновские методы

Расчет методом DFP Условия останова: Достигнуто значение нормы градиента: 1,000E-3 Количество параметров: 1 Количество уравнений: 9 Начальное значение параметров: A = (6,000) Начальная матрица A: 1,000 ------------------------------------------------ Итерация 0 Текущее приближение: A = (6,000) Вектор невязок: R = (7,963 7,026 5,771 5,898 6,208 8,870 5,652 5,438 9,469) Значение невязки: 449,249 Якобиан: -3,031 -2,663 -2,159 -2,213 -2,336 -3,386 -2,109 -2,020 -3,618 Норма градиента: 170,058 Матрица A: 1,000 Шаг : 1,000 Итерация 1 Текущее приближение: A = (8,601) Вектор невязок: R = (1,969 1,760 1,501 1,522 1,589 2,175 1,481 1,444 2,314) Значение невязки: 28,433 Якобиан: -1,766 -1,552 -1,258 -1,289 -1,361 -1,973 -1,229 -1,177 -2,108 Норма градиента: 24,910 Матрица A: 5,860 Шаг : 1,000 Итерация 2 Текущее приближение: A = (9,500) Вектор невязок: R = (0,496 0,466 0,452 0,447 0,454 0,529 0,456 0,463 0,556) Значение невязки: 2,085 Якобиан: -1,521 -1,337 -1,084 -1,111 -1,172 -1,699 -1,059 -1,014 -1,816 Норма градиента: 5,758 Матрица A: -4,830 Шаг : 1,000 Итерация 3 Текущее приближение: A = (10,005) Вектор невязок: R = (-0,243 -0,184 -0,075 -0,094 -0,116 -0,297 -0,059 -0,030 -0,327) Значение невязки: 0,320 Якобиан: -1,408 -1,237 -1,003 -1,028 -1,085 -1,572 -0,980 -0,938 -1,680 Норма градиента: 1,969 Матрица A: 4,515 Шаг : 1,000 Итерация 4 Текущее приближение: A = (9,898) Вектор невязок: R = (-0,091 -0,050 0,033 0,017 0,001 -0,127 0,047 0,071 -0,146) Значение невязки: 0,057 Якобиан: -1,430 -1,257 -1,019 -1,044 -1,102 -1,598 -0,995 -0,953 -1,708 Норма градиента: 0,479 Матрица A: -4,587 Шаг : 1,000 Итерация 5 Текущее приближение: A = (9,849) Вектор невязок: R = (-0,021 0,012 0,083 0,069 0,056 -0,048 0,096 0,118 -0,062) Значение невязки: 0,045 Якобиан: -1,441 -1,266 -1,027 -1,052 -1,111 -1,610 -1,003 -0,960 -1,720 Норма градиента: 0,230 Матрица A: 4,621 Шаг : 1,000 Итерация 6 Текущее приближение: A = (9,861) Вектор невязок: R = (-0,038 -0,004 0,071 0,056 0,042 -0,068 0,084 0,106 -0,082) Значение невязки: 0,041 Якобиан: -1,439 -1,264 -1,025 -1,050 -1,108 -1,607 -1,001 -0,959 -1,717 Норма градиента: 0,055 Матрица A: -4,613 Шаг : 1,000 Итерация 7 Текущее приближение: A = (9,867) Вектор невязок: R = (-0,046 -0,011 0,065 0,050 0,036 -0,077 0,078 0,101 -0,092) Значение невязки: 0,041 Якобиан: -1,437 -1,263 -1,024 -1,049 -1,108 -1,606 -1,000 -0,958 -1,716 Норма градиента: 0,026 Матрица A: 4,609 Шаг : 1,000 Итерация 8 Текущее приближение: A = (9,866) Вектор невязок: R = (-0,044 -0,009 0,067 0,052 0,038 -0,075 0,080 0,102 -0,089) Значение невязки: 0,041 Якобиан: -1,438 -1,263 -1,024 -1,050 -1,108 -1,606 -1,000 -0,958 -1,716 Норма градиента: 0,006 Матрица A: -4,610 Шаг : 1,000 Итерация 9 Текущее приближение: A = (9,865) Вектор невязок: R = (-0,043 -0,008 0,067 0,052 0,038 -0,074 0,080 0,103 -0,088) Значение невязки: 0,041 Якобиан: -1,438 -1,263 -1,024 -1,050 -1,108 -1,606 -1,001 -0,958 -1,716 Норма градиента: 0,003 Матрица A: 4,611 Шаг : 1,000 ------------------------------------------------ Расчет окончен Достигнута заданная норма градиента. Значение функции: 0,0409164. Номер итерации: 10. Норма градиента: 0,000702205 Текущее приближение: A = (9,865) Проведено итераций: 10 Значение невязки: 0,041 Норма градиента: 7,022E-4

Расчет методом BFGS Условия останова: Достигнуто значение нормы градиента: 1,000E-3 Количество параметров: 1 Количество уравнений: 9 Начальное значение параметров: A = (6,000) Начальная матрица A: 1,000 ------------------------------------------------ Итерация 0 Текущее приближение: A = (6,000) Вектор невязок: R = (7,963 7,026 5,771 5,898 6,208 8,870 5,652 5,438 9,469) Значение невязки: 28,433 Якобиан: -3,031 -2,663 -2,159 -2,213 -2,336 -3,386 -2,109 -2,020 -3,618 Норма градиента: 170,058 Матрица A: 1,000 Шаг : 1,000 Итерация 1 Текущее приближение: A = (8,601) Вектор невязок: R = (1,969 1,760 1,501 1,522 1,589 2,175 1,481 1,444 2,314) Значение невязки: 11,060 Якобиан: -1,766 -1,552 -1,258 -1,289 -1,361 -1,973 -1,229 -1,177 -2,108 Норма градиента: 24,910 Матрица A: 33,948 Шаг : 1,000 Итерация 2 Текущее приближение: A = (9,047) Вектор невязок: R = (1,210 1,093 0,960 0,968 1,004 1,327 0,953 0,938 1,408) Значение невязки: 0,685 Якобиан: -1,637 -1,438 -1,166 -1,195 -1,261 -1,829 -1,139 -1,091 -1,954 Норма градиента: 14,384 Матрица A: 4,803 Шаг : 1,000 Итерация 3 Текущее приближение: A = (9,658) Вектор невязок: R = (0,260 0,258 0,283 0,274 0,272 0,265 0,291 0,305 0,273) Значение невязки: 0,060 Якобиан: -1,484 -1,304 -1,057 -1,084 -1,144 -1,658 -1,033 -0,989 -1,772 Норма градиента: 3,154 Матрица A: 2,971 Шаг : 1,000 Итерация 4 Текущее приближение: A = (9,829) Вектор невязок: R = (0,009 0,038 0,104 0,090 0,078 -0,015 0,116 0,138 -0,026) Значение невязки: 0,041 Якобиан: -1,446 -1,270 -1,030 -1,056 -1,114 -1,615 -1,006 -0,963 -1,726 Норма градиента: 0,530 Матрица A: 0,674 Шаг : 1,000 Итерация 5 Текущее приближение: A = (9,863) Вектор невязок: R = (-0,041 -0,006 0,069 0,054 0,040 -0,071 0,082 0,104 -0,086) Значение невязки: 0,041 Якобиан: -1,438 -1,263 -1,024 -1,050 -1,108 -1,606 -1,001 -0,958 -1,717 Норма градиента: 0,024 Матрица A: 0,119 Шаг : 1,000 ------------------------------------------------ Расчет окончен Достигнута заданная норма градиента. Значение функции: 0,0409164. Номер итерации: 6. Норма градиента: 0,000201886 Текущее приближение: A = (9,865) Проведено итераций: 6 Значение невязки: 0,041 Норма градиента: 2,019E-4



. Решение НЗНК разными методами

Метод

Итераций

Параметры

Норма градиента

Значение невязки

Левенберга-Марквардта

15

4,260E-4

0,041

Гаусса-Ньютона

7

A = 9,865

1,767E-7

0,041

DFP

10

A = 9,865

7,022E-4

0,041

BFGS

6

A = 9,865

2,019E-4

0,041



Выводы

Для данной задачи метод Гаусса-Ньютона достиг решения в два раза быстрее метода Левенберга-Марквардта. Из квазиньютоновских методов лучшую сходимость показал метод BFGS. Всеми методами получено одинаковое значение параметра.

Найденный параметр A=9,865 может соответствовать действительности в рамках погрешности вычислений, поскольку реальное ускорение свободного падения на поверхности Земли варьируется от 9,780 м/с² на экваторе <http://ru.wikipedia.org/wiki/%D0%AD%D0%BA%D0%B2%D0%B0%D1%82%D0%BE%D1%80> до 9,832 м/с² на полюсах <http://ru.wikipedia.org/wiki/%D0%93%D0%B5%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%BF%D0%BE%D0%BB%D1%8E%D1%81%D1%8B>. К тому же на решение повлияли не совсем согласованные эмпирические значения.

Похожие работы на - Решение нелинейной задачи наименьших квадратов

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!