Постановка задачи приближения функции по методу наименьших квадратов

Пусть функция y=f(x) задана таблицей своих значений: Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , i=0,1,-n. Требуется найти многочлен фиксированной степени m, для которого среднеквадратичное отклонение (СКО) Постановка задачи приближения функции по методу наименьших квадратов - student2.ru минимально.

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

Используя необходимое условие экстремума, Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , k=0,1,-m получаем так называемую нормальную систему метода наименьших квадратов: Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , k=0,1,-m.

Полученная система есть система алгебраических уравнений относительно неизвестных Постановка задачи приближения функции по методу наименьших квадратов - student2.ru . Можно показать, что определитель этой системы отличен от нуля, то есть решение существует и единственно. Однако при высоких степенях m система является плохо обусловленной. Поэтому метод наименьших квадратов применяют для нахождения многочленов, степень которых не выше 5. Решение нормальной системы можно найти, например, методом Гаусса.

Запишем нормальную систему наименьших квадратов для двух простых случаев: m=0 и m=2. При m=0 многочлен примет вид: Постановка задачи приближения функции по методу наименьших квадратов - student2.ru . Для нахождения неизвестного коэффициента Постановка задачи приближения функции по методу наименьших квадратов - student2.ru имеем уравнение: Постановка задачи приближения функции по методу наименьших квадратов - student2.ru . Получаем, что коэффициент Постановка задачи приближения функции по методу наименьших квадратов - student2.ru есть среднее арифметическое значений функции в заданных точках.

Если же используется многочлен второй степени Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , то нормальная система уравнений примет вид:

Постановка задачи приближения функции по методу наименьших квадратов - student2.ru .

ПРИМЕР 1. Приближение функции по методу наименьших квадратов.

Пусть функция задана таблицей своих значений:

x -3 -1
y -4 -0.8 1.6 2.3 1.5

Приблизим функцию многочленом 2-ой степени. Для этого вычислим коэффициенты нормальной системы уравнений:

Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , Постановка задачи приближения функции по методу наименьших квадратов - student2.ru

Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , Постановка задачи приближения функции по методу наименьших квадратов - student2.ru

Составим нормальную систему наименьших квадратов, которая имеет вид:

Постановка задачи приближения функции по методу наименьших квадратов - student2.ru

Решение системы легко находится: Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , Постановка задачи приближения функции по методу наименьших квадратов - student2.ru , Постановка задачи приближения функции по методу наименьших квадратов - student2.ru .

Таким образом, многочлен 2-ой степени найден: Постановка задачи приближения функции по методу наименьших квадратов - student2.ru .

Предположим, что функцию f можно с высокой точностью аппроксимировать многочленом Постановка задачи приближения функции по методу наименьших квадратов - student2.ru некоторой степени m. Если эта степень заранее неизвестна, то возникает проблема выбора оптимальной степени аппроксимирующего многочлена в условиях, когда исходные данные Постановка задачи приближения функции по методу наименьших квадратов - student2.ru содержат случайные ошибки. Для решения этой задачи можно принять следующий алгоритм: для каждого m=0, 1, 2,.. вычисляется величина Постановка задачи приближения функции по методу наименьших квадратов - student2.ru . За оптимальное значение степени многочлена следует принять то значение m, начиная с которого величина Постановка задачи приближения функции по методу наименьших квадратов - student2.ru стабилизируется или начинает возрастать.

ПРИМЕР 2. Нахождение оптимальной степени многочлена.

% Функция задана таблицей значений. Аппроксимировать её многочленом по МНК

% Введём функцию (x, f(x))

x=[0,1.13,1.5,2.25,3];

y=[4.57,0.68,0.39,-1.9,-4.4];

% Вычислим приближения с различной степенью

p0 = polyfit(x, y, 0);

p1 = polyfit(x, y, 1);

p2 = polyfit(x, y, 2);

p3 = polyfit(x, y, 3);

% Вычислим ошибки (СКО) в квадрате

y0 = polyval(p0, x);

y1 = polyval(p1, x);

y2 = polyval(p2, x);

y3 = polyval(p3, x);

err0 = 1 / (4 - 0) * sum((y - y0) .^ 2);

err1 = 1 / (4 - 1) * sum((y - y1) .^ 2);

err2 = 1 / (4 - 2) * sum((y - y2) .^ 2);

err3 = 1 / (4 - 3) * sum((y - y3) .^ 2);

% Сравнивая, видим, что лучшую точность даёт n = 1

err0

err1

err2

err3

>>

err0 = 11.0956

err1 = 0.1308

err2 = 0.1962

err3 = 0.1803

Наши рекомендации