Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
29
Добавлен:
30.04.2013
Размер:
194.05 Кб
Скачать

Московский Технический Университет Связи и Информатики

Лабораторная работа №9

Метод наименьших квадратов (МНК).

2004 г.

Функции F1(x) и F2(x) заданы таблично.

X(i)

F1(x)

F2(x)

6

-0.939

-0.64

8

-1.286

-0.726

10

-0.266

0.634

12

1.12

2.44

14

1.506

3.326

16

0.526

2.926


1)Построить аппроксимирующие функции G1(x) и G2(x), оценить качество аппроксимации.

2)Изобразить графически исходные и аппроксимирующие функции.

Исследование задания:

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

Наиболее распространён выбор функции G(x) в виде:

G(x)=C0G0(x)+C1G1(x)+…+CmGm(x).

G0(x),G1(x)…Gm(x) – базисные функции, m<<n.

Один из возможных базисов- степенной:

G0(x)=1, G1(x)=x,…Gm(x)=x^m.

Степень аппроксимирующего полинома m<<n. n-число узлов.

C^t=(C0,C1…Cm)- вектор коэффициентов, определяемых из условия минимизации:

S={G(xi)-F(xi)}^2  min.

Условие минимума функции S приводит к системе линейных уравнений относительно параметров C0,C1…Cm.

Система называется системой нормальных уравнений, её матрица - матрицей Грамма.

Элементы матрицы Грамма являются скалярными произведениями базисных функций

(gi,gk)= Gi(xi)Gk(xk).

В случае степенного базиса матрица Грамма

N+1 xi xi^2 … xi^m

Z= xi xi^2 xi^3 … xi^m+1

… … … … …

xi^m xi^m+1 xi^m+2 … xi^2m

Столбец правых частей системы нормальных уравнений G*C=B

F(xi)

Xi*F(xi)

B= …

Xi^m*F(xi)

Необходимо аппроксимировать экспериментальные данные линейной функцией(степень m=1, n+1- кол-во узловых точек).

G(x)=C0G0(x)+C1G1(x)

Т.к базис - степенной: G(x)=C0+C1*x.

Матрица Грамма будет иметь вид:

N+1 Xi

Z=

Xi Xi^2

Столбец правых частей системы нормальных уравнений

F(Xi)

B=

Xi*F(Xi)

Тогда система нормальных уравнений будет иметь вид

Z*C=B, C=C0

C1

Или

С1*Xi^2+C0Xi=(Xi*F(Xi)),

C1*Xi +C0*(n-1)= F(Xi)

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

G(x)=C0+C1(x)+C2*X^2

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

(n+1)*C0+(Xi)*C1+(Xi^2)*C2= F(Xi),

(Xi)*C0+(Xi^2)*C1+(Xi^3)*C2=Xi*F(Xi),

(Xi^2)*C0+(Xi^3)*C1+(Xi^4)*C2=Xi^2*F(Xi)

Качество аппроксимации можно оценить, подсчитав среднее квадратичное отклонение:

Для линейной аппроксимации:

S1= (F(Xi)-C0-C1*Xi)^2

N+1

Для квадратичной аппроксимации:

S2=(F(Xi)-C0-C1Xi-C2Xi^2)^2

N+1

Составим таблицу исходных данных для первой функции.

Подставляя исходные значения получим:

Система нормальных уравнений для линейной функции:

796*C1+66C0=24,358

66*C1+6*C0= 0,661.

Получаем

G1(x)=-2,575+0,244*X.

Система нормальных уравнений для квадратичной функции

G2(x)=C0+C1*X+ C2*X^2

имеет вид:

6*С0+66*С1+796*С2= 0,661,

66С0+796С1+10296*С2=24,358,

796*С0+10296*С1+140080*С2= 448,404

Получаем

G2(X)= -5,358+0,804*X-0,025*X^2

Таблица значений аппроксимирующей функции в узловых точках

Xi

6

8

10

12

14

16

F(Xi)

-0,94

-1,29

-0,27

1,12

1,51

0,53

G1(Xi)

-1,11

-0,62

-0,13

0,35

0,84

1,33

G2(Xi)

-1,45

-0,55

0,14

0,63

0,91

0,99

F(Xi)-G1(Xi)

0,17

-0,66

-0,13

0,77

0,66

-0,8

F(Xi)-G2(Xi)

0,51

-0,73

-0,40

0,49

0,6

-0,47

Погрешность для линейной аппроксимации S1=0,6

Для квадратичной S2=0,544

Приведенные расчет показали, что для рассматриваемой функции предпочтительнее квадратичная аппроксимация, так как S2<S1.

Графическая иллюстрация исходной зависимости и функций G1(X) и G2(X):

Таблица исходных данных для второй функции

Подставляя исходные значения получим:

Система нормальных уравнений для линейной функции:

66*C1+6C0= 119,352,

796*C1+66*C0=7,96 .

Получаем

G1(x)=-3,668+0,454*X.

Система нормальных уравнений для квадратичной функции:

G2(x)=C0+C1*X+ C2*X^2

имеет вид:

6*С0+66*С1+796*С2=7,96 ,

66С0+796С1+10296*С2= 119,352,

796*С0+10296*С1+140080*С2=1746,208 .

Получаем

G2(X)= -5,361+0,795*X-0,015*X^2

Таблица значений аппроксимирующей функции в узловых точках

Xi

6

8

10

12

14

16

F(Xi)

-0,64

-0,73

0,63

2,44

3,33

2,93

G1(Xi)

-0,94

-0,04

0,87

1,78

2,69

3,60

G2(Xi)

-1,15

0,01

1,04

1,95

2,73

3,39

F(Xi)-G1(Xi)

0,3

-0,69

-0,24

0,66

0,64

-0,67

F(Xi)-G2(Xi)

0,51

-0,73

-0,40

0,49

0,6

-0,47

Погрешность для линейной аппроксимации S1=0,565

Для квадратичной S2=0,543

Приведенные расчеты показали, что для рассматриваемой функции предпочтительнее квадратичная аппроксимация, так как S2<S1.

Графическая иллюстрация исходной зависимости и функций G1(X) и G2(X):

Проверка решения в математическом пакете (MathCad):

Соседние файлы в папке laba 9 МНК
  • #
    30.04.2013194.05 Кб29laba4.DOC
  • #
    30.04.201310.89 Кб25laba4.mcd
  • #
    30.04.201314.34 Кб26laba9(4).xls
  • #
    30.04.201314.34 Кб28laba9-2(4).xls