Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сборник ЛР Ад системы.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.63 Mб
Скачать

1.2 Метод наименьших квадратов

Предположим, что функция задана в виде F(xi, yi), i=1,2, …, n.

Задача состоит в аппроксимации этой функции аналитической зависимостью между x и y многочленом заданной степени k:

.

Согласно методу наименьших квадратов коэффициенты многочлена надо выбрать такими, чтобы сумма отклонений значений найденного многочлена от заданных значений функции была минимальной. Это означает, что коэффициенты p0 , p1,…, pk должны минимизировать функцию

.

В точке минимума функции φ её производные dφ / dpi обращаются в нуль. Дифференцируя φ и приравнивая нулю производные, получим так называемую нормальную систему метода наименьших квадратов:

Это система линейных алгебраических уравнений относительно неизвестных p0 , p1,…, pn. Можно показать, что определитель этой системы отличен от нуля, т.е. решение системы существует и единственно. На практике ограничиваются обычно степенью многочленов не выше четырех.

Для аппроксимации эмпирических данных полиномом первой степени P1(x)=p0+p1x нормальная система уравнений имеет вид:

Для аппроксимации эмпирических данных полиномом второй степени P2(x)=p0+p1x+p2x2 нормальная система уравнений имеет вид:

B этих уравнениях: k - количество точек в таблице значений функции; yi- значения эмпирической функции (i=1,2,…,k ); xi- значения аргумента (i=1,2,…,k ).

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

Табличные данные, полученные, например, экспериментальным путём, часто удобно интерпретировать как некоторую функцию. В данной работе в качестве такой функции предлагается использовать полиномиальную функцию или сплайн – непрерывную, гладкую функцию, которая на отрезках области определения равна полиномам определённой степени. Речь, таким образом, идёт о построении полиномиальной (или кусочно-полиномиальной) функции, сплайна, для приближения заданных данных.

2 Порядок выполнения работы

  1. Открыть командное окно MATLAB.

  2. Скопировать программу № 1 (см. приложение А).

  3. Вставить её в командное окно.

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

Линейная интерполяция приводит к соединению соседних точек отрезками прямых, согласно соответствующих табличным данным.

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

Рисунок 1 – Различные способы интерполирования функции

  1. Очистить командное окно.

  2. Скопировать и загрузить программу № 2 (см. приложение А).

  3. В результате выполнения этой программы в командном окне будут выведены значения коэффициентов полиномов 4-го и 8-го порядков. В графическом окне (см. рис. 2) будут построены графики этих полиномов.

Интерполирующий полином выводится в командном окне в виде вектора коэффициентов, например,

а b c d,

что соответствует полиному третьего порядка

p3 = a*x^3 + b*x^2 + c*x +d.

Рисунок 2 – Интерполирующие полиномы

  1. Повторите работу для новых индивидуальных выборок. Варианты заданий представлены в приложении Б.

  2. Аппроксимируйте индивидуальную выборку. Разработайте программу вычисления коэффициентов аппроксимирующих полиномов по методу наименьших квадратов. Сравните полученные результаты с результатами интерполирования.

  3. Сформулируйте выводы по работе.