Метод наименьших квадратов
В большинстве экспериментальных данных, задаваемых с помощью табличной функции, имеется достаточно большой разброс точек. При этом использование кусочной или непрерывной интерполяции не всегда оправдано, поскольку ставится задача исследовать общую тенденцию изменения физической величины. В этом общем случае аппроксимации искомая кривая не обязательно должна проходить через заданные точки.
Рассмотрим рис. 11, отражающий большой разброс точек. В простейшем случае будем искать аппроксимирующую функцию (x)в виде полинома первой степени (прямой):
(x)=a0+a1x.
Рис. 11. Аппроксимация
Таким образом, данная система точек группируется вокруг искомой прямой. Эту прямую легко провести на глаз так, чтобы она наиболее близко подходила к исходным точкам. Однако, можно найти уравнение прямой более строгими математическими методами.
Пусть общее количество точек равно m. Обозначимi - отклонениеi-й точки от искомой прямой:
i=(xi ) – yi.
Как видно из рис.12, отклонения могут быть как положительными, так и отрицательными. Поэтому, для того, чтобы определить близость искомой функции к табличным точкам, необходимо составить сумму квадратов всех отклонений.
Метод наименьших квадратов заключается в минимизации суммы квадратов отклонений. В нашем случае эта функция равна:
Рис. 12. Отклонения
Для нахождения минимума функции S необходимо приравнять нулю ее частные производные. В результате получим систему уравнений:
Опуская промежуточные преобразования, получим систему уравнений для нахождения неизвестных коэффициентов a0 иa1:
Здесь m– количество точек; суммирование здесь и далее предполагается по всем точкам (i = 1,2,…,m).
Метод наименьших квадратов несложно распространить на общий случай, когда мы будем искать функцию (x)в виде полинома степениn:
Отметим, что в случае аппроксимации всегда справедливо следующее соотношение, связывающее количество исходных точек m и степень искомого полинома:
n m– 1,
причем в случае равенства мы приходим к интерполяции (все отклонения равны нулю).
Неизвестные коэффициенты a0,a1, …,an находим из условия минимизации суммы квадратов отклонений искомой функции от исходных точек. По аналогии с полиномом первой степени в нашем случае имеем систему уравнений:
Z A = B,
где Z - квадратная матрица размерностью (n+1)(n+1), составленная из известных координат точек,A– вектор неизвестных коэффициентов,Y– вектор-столбец свободных членов:
Пример 4:Дана табличная функция (5 точек):
x |
1 |
2 |
3 |
4 |
5 |
y |
5 |
1 |
4 |
2 |
3 |
Требуется решить задачу аппроксимации (найти полиномы первой и второй степени методом наименьших квадратов).
Решение:
Ручной счет
Используем метод наименьших квадратов. Решаем систему Z A = B.
А) Полином второй степени.
;
Имеем систему:
B) Полином первой степени.
Имеем систему:
Реализация в Microsoft Excel:
Экспериментальные данные | |||||
x |
1 |
2 |
3 |
4 |
5 |
y |
5 |
1 |
4 |
2 |
3 |
Выполним аппроксимацию полином первой степени методом наименьших квадратов средствами электронных таблиц Excel.
ti |
yi |
xi |
xi2 |
yi |
xi*yi |
1 |
5 |
1 |
1 |
4 |
4 |
2 |
1 |
2 |
4 |
5 |
10 |
3 |
4 |
3 |
9 |
5,5 |
16,5 |
4 |
2 |
4 |
16 |
5,7 |
22,8 |
5 |
3 |
5 |
25 |
5,8 |
29 |
|
Сумма |
15 |
55 |
26 |
82,3 |
5 |
15 |
26 |
a0= |
3,91 |
|
15 |
55 |
82,3 |
a1= |
0,43 |
|
Реализация в Mathcad: