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

www.uchites.ru

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

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

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

Одним из таких методов является метод наименьших квадратов (МНК). Суть его заключается в следующем.

Пусть дана экспериментальная таблица (3.1).

 

xi

x0

x1

...

xn

 

 

 

 

 

 

 

 

 

 

 

 

 

yi

y0

y1

...

yn

 

 

 

 

 

 

 

 

 

 

 

 

Поставим ей в соответствие функцию вида

 

F (x, a0 , a1 ,..., am ) = a0ϕ0 (x) + a1ϕ1 (x) +... + amϕm (x) ,

(3.17)

где ϕ j (x) ,

j =

 

 

- базисные функции, a j - коэффициенты,

подлежащие

1, m

определению. В частности, если в качестве базисных функций использовать степенные ϕj (x) = x j , задача сводится к поиску полинома степени m (m<<n),

приближающего исходную таблицу: F (x, a0 , a1 ,..., am ) = a0 + a1 x +... + am x m .

С целью определения коэффициентов a j будем искать такую функцию

F (x, a0 , a1 ,..., am ) , отклонение значений которой от заданных таблицей (3.1)

значений yi , i = 0, n минимально в некотором среднеинтегральном смысле.

1

www.uchites.ru

y

F(x,a0,a1,...,am)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y0

 

y1

 

y2

 

 

yn-1

 

yn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x0

x1

x2 .......................

 

xn-1

xn

x

Рис 3.6. К методу наименьших квадратов

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

S(a0 , a1 ,..., am ) = n

[ F ( xi , a0 , a1 ,...,am ) yi ]2 ,

(3.18)

i =0

 

 

который геометрически представляет собой сумму квадратов отклонений значений yi от значений аппроксимирующей функции (3.17) в точках xi , i = 0, n

(на рис.3.6 показаны двусторонними стрелками).

Необходимым условием минимума функции многих переменных является равенство нулю ее частных производных первого порядка по независимым переменным. В функционале (3.18) такими независимыми переменными являются коэффициенты a0 , a1 ,..., am разложения (3.17), которые до их

определения являются не постоянными, а варьируемыми переменными.

 

 

S

 

 

n

 

 

 

 

 

 

= 2[F (xi , a0 , a1 ,..., am ) yi ]ϕ0 (xi ) = 0

 

a0

 

 

 

 

i=0

 

 

S

 

 

n

 

 

 

 

 

 

= 2[F (xi , a0 , a1 ,..., am ) yi ]ϕ1 (xi )

= 0

 

a1

(3.19)

 

 

 

i=0

 

.............................................................

 

 

 

 

 

 

 

 

 

 

 

S

 

 

n

 

 

 

 

 

= 2[F (xi , a0 , a1 ,..., am ) yi ]ϕm (xi ) = 0.

 

am

 

 

 

 

 

 

i=0

 

 

Система (3.19) представляет собой систему линейных алгебраических

уравнений

порядка m +1 относительно

неизвестных a0 , a1 ,..., am . Ее матрица

2

www.uchites.ru

является симметрической и положительно определенной. Решения a0 , a1 ,..., am

доставляют минимум функционалу (3.18). Введем в рассмотрение следующие объекты:

- матрицу Φ размерности (n +1) ×(m +1) , содержащую значения базисных

 

 

 

 

 

 

 

ϕ

0

(x

0

)

ϕ

(x

0

)

...

ϕ

m

(x

0

)

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ϕ0 (x1 )

ϕ1 (x1 )

...

ϕm (x1 )

,

функций в узлах таблицы ϕ j (xi ) , Φ =

 

 

 

 

 

 

...

 

 

...

 

 

...

 

 

 

 

 

 

 

 

...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ϕ0 (xn )

ϕ0 (xn )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

... ϕ0 (xn )

 

- вектор наблюдения y размерности

 

n +1,

 

содержащий

табличные

значения y

,

y = ( y

0

, y ,..., y

n

)T ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-искомый вектор коэффициентов a размерности m +1, a = (a0 , a1 ,..., am )T .

Тогда СЛАУ (3.19) может быть представлена в виде

 

Λa = β ,

(3.20)

где Λ = ΦT Φ, β = ΦT y .

Решение данной СЛАУ может быть осуществлено любым из известных методов (см. раздел 1). Подставляя найденные в результате решения СЛАУ значения a0 ,a1 ,...,am в (3.18), получаем непрерывную функцию F (x) , наилучшим образом приближающую дискретную функцию (3.1) в среднеквадратическом смысле.

Качество такого приближения может быть оценено, например, величиной

 

 

1

n

2

1/ 2

среднеквадратичного отклонения δ

=

 

(F (xi ) yi )

 

.

 

 

 

n +1 i=0

 

 

Винтегральном методе наименьших квадратов рассматривается

интегрируемая с квадратом функция y = f (x),

x [a, b] ,

которая трудна для

исследования (например, трудно вычислить производные).

 

Будем аппроксимировать эту функцию

некоторой

функцией F (x) с

минимизацией заштрихованной площади (см. рис. 3.7), например, с помощью многочлена

3

www.uchites.ru

y

 

f(x)

F(x)

 

 

a

b

x

Рис. 3.7. К интегральному методу наименьших квадратов

F (x, a0 , a1 ,..., am ) = a0ϕ0 (x) + a1ϕ1 (x) +... + amϕm (x) ,

где a0 , a1 ,..., am находят из условия минимизации следующего квадратичного функционала:

b

S(a0 ,a1 ,..., am ) = [F (x, a0 , a1 ,..., am ) f (x)]2 dx .

a

Необходимые условия минимума данного функционала имеют вид:

S

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

 

= 2[F (x, a0 ,..., am ) f (x)]ϕ0 (x)dx = 0

a0

 

 

 

a

 

 

 

 

 

 

 

 

S

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

= 2

[F (x, a

0

,..., a

m

) f (x)]ϕ

1

(x)dx = 0

a

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

a

 

 

 

 

 

 

 

 

..................................................................

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S

 

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

= 2

[F (x, a0 ,..., am ) f (x)]ϕm (x)dx = 0,

a

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

Таким образом, задача сводится к решению следующей СЛАУ:

Λa = β ,

(3.21)

где Λ- матрица размерности

m +1×m +1, элементами которой являются

скалярные произведения базисных функций (скалярное произведение интегрируемых на отрезке [a, b] функций p(x) и q(x) определяется как

4

www.uchites.ru

(p, q)= b

p(x)q(x)dx ),

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(ϕ

0

(x),ϕ

0

(x))

(ϕ

(x),ϕ

0

(x)) ...

(ϕ

m

(x),ϕ

0

(x))

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(ϕ0 (x),ϕ1 (x))

(ϕ1 (x),ϕ1 (x)) ...

(ϕm (x),ϕ1

(x))

 

 

 

 

 

 

Λ =

 

 

...

 

 

 

...

 

...

 

 

 

...

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(ϕ0 (x),ϕm (x))

(ϕ1 (x),ϕm (x)) ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(ϕm (x),ϕm (x))

 

 

 

 

 

 

β - вектор размерности m +1 с элементами β j = b

f (x)ϕj (x)dx ,

 

 

,

 

 

 

j =1, m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

a - вектор искомых коэффициентов размерности m +1, a = (a

0

, a ,..., a

m

)T .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

В нормальной СЛАУ (3.21) относительно коэффициентов a0 ,a1 ,...,am

правые

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

f ( x) . В

этом случае правые части вычисляются с помощью методов численного интегрирования, которые рассматриваются ниже.

Пример 3.4. Точечным методом наименьших квадратов аппроксимировать

заданную таблицу линейным и квадратичным полиномами.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xi

2

3

 

4

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

yi

7

5

 

8

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Решение.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В

случае

 

линейного

аппроксимационного

 

 

полинома

имеем

F (x, a0 , a1 ) = a0 + a1 x , т.е. ϕ0 (x) =1, ϕ1 (x) = x .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ϕ

 

(x )

ϕ

(x )

 

1

x

 

1 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

 

1

0

 

 

0

 

 

 

 

 

 

 

 

Матрица Φ

 

 

 

 

 

 

 

ϕ0 (x1 ) ϕ1

(x1 )

 

1

x1

 

1 3

 

 

 

 

принимает вид Φ =

 

 

 

 

 

 

 

=

 

 

=

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

ϕ0

(x2 )

ϕ0

(x2 )

 

1

x2

1 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ϕ

0

(x )

ϕ

0

(x )

 

1

x

 

1 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

3

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

0

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

Вектор наблюдений y

 

 

 

 

 

 

 

 

 

 

 

 

 

y1

 

 

 

 

выглядит следующим образом y =

 

=

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

2

 

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y3

 

 

 

 

Составим систему уравнений (3.31) для рассматриваемого случая:

5

www.uchites.ru

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Λ = Φ

T

 

 

1 1 1 1 1 3

 

4 14

 

= Φ

T

 

 

1 1 1 1

5

 

27

 

 

 

 

Φ =

 

 

 

 

 

 

=

 

 

, β

 

y =

 

 

 

 

 

 

 

=

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

 

 

 

 

 

 

 

 

 

 

2 3 4 5 1 4

 

14 54

 

 

 

 

 

 

2 3 4 5

 

96

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5,7

Решая систему Λa = β , получаем вектор искомых коэффициентов a =

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,3

Таким образом, искомый полином F (x) = 5,7 + 0,3x .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 3

 

 

 

2

1/ 2

 

Оценим погрешность такой аппроксимации:

δ =

 

 

(F (xi

) yi )

 

 

=1,0368 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4 i=0

 

 

 

 

 

 

 

В

 

случае

квадратичного

 

аппроксимационного полинома

имеем

F (x, a

0

, a , a

2

) = a

0

+ a x + a

2

x 2 , т.е. ϕ

0

(x) =1,

ϕ

(x) = x

, ϕ

2

(x) = x2 .

 

 

 

 

 

 

 

 

1

 

 

1

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ϕ0

Матрица Φ принимает вид Φ = ϕ0

ϕ0ϕ0

(x0 ) (x1 ) (x2 ) (x3 )

ϕ

 

(x

 

)

ϕ

 

(x

 

)

 

1

x

 

x2

 

1 2

4

 

1

 

0

 

ϕ

2

 

0

 

 

 

 

0

0

 

 

9

 

ϕ

 

(x )

 

(x )

 

1 x

x2

 

1 3

 

 

1

 

1

 

 

2

 

1

 

 

=

 

1

12

 

=

16

.

ϕ0 (x2 ) ϕ2 (x2 )

 

1 x2

x2

 

1 4

 

ϕ0 (x3 ) ϕ2 (x3 )

 

 

 

 

2

 

 

25

 

 

1 x3

x3

 

1 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

0

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

Вектор наблюдений y остается без изменений y =

y1

 

 

 

 

 

 

=

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

2

 

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y3

 

 

 

Система уравнений (3.20) для рассматриваемого случая выглядит

следующим образом:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 1 1 1

1

2

 

4

 

 

 

4 14 54

 

 

 

 

 

 

 

 

 

 

 

3

 

9

 

 

 

 

 

 

 

 

 

Λ = Φ

T

Φ =

 

2

3

4

5

1

 

 

=

 

14

54

224

 

,

 

 

 

 

 

 

 

 

 

 

4

 

16

 

 

 

 

 

 

 

 

 

 

 

 

4

9

16

 

1

 

 

 

 

54

224

978

 

 

 

 

 

 

 

 

 

 

 

25

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

25

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 1 1 1

7

 

 

 

27

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

β = Φ

T

y =

 

2 3 4 5

 

 

=

 

96

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

9

16

25

 

 

 

376

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8,45

 

 

 

 

 

 

 

Решая систему Λa = β , получаем вектор искомых коэффициентов a =

1,45 .

 

 

 

 

0.25

 

 

 

 

 

 

Таким образом, искомый полином F (x) = 8,45 1,45x +0,25x2 .

 

 

 

Оценим

погрешность

такой

аппроксимации:

6

www.uchites.ru

 

1

3

2

1/ 2

δ =

 

(F (xi ) yi )

 

 

=1,0062 .

 

 

 

4 i=0

 

 

 

Найдите больше информации на сайте Учитесь.ру (www.uchites.ru)!

7