APROKSY1, POLITECHNIKA LUBELSKA


politechnika Lubelska

Wydział Elektryczny

Katedra Metod Numerycznych

Temat: Aproksymacja średniokwadratowa

Plik: Wykład został udostępniony w formie elektronicznej w G:\Konspect.sic\aproksy1.doc

Jest to plik edytora WORD 2.0c for Windows.

Student: Prowadzący:

Piotr Osmałek dr hab. J. Sikora

Styczeń 1997, Lublin Spis Treści

1. Wstęp 3

2. Aproksymacja średniokwadratowa. 7

2.1 Aproksymacja średniokwadratowa funkcji dyskretnej 7

2.1.1 Aproksymacja wielomianowa 9

2.1.2 Przykład 1 11

2.1.3 Przykład 2 13

2.2 Aproksymacja średniokwadratowa funkcji ciągłych 17

1. Wstęp

Zadanie aproksymacyjne może być sformułowane bardzo różnie. W klasycznym przypadku dla danej funkcji f spośród funkcji ustalonej klasy poszukujemy tej funkcji F (też ustalonej klasy), która w określonym sensie najlepiej przybliża f. Innym zadaniem jest wyznaczenie, możliwie niskim kosztem, przybliżenia F funkcji f z zadaną dokładnością. Można wreszcie stawiać problem aproksymacji nie jednej, ale całej klasy funkcji funkcjami innej klasy. Rozwiązania tak różnie postawionych zadań są oczywiście różne, nie istnieje więc jedna "optymalna" aproksymacja.

Funkcję f(x), znaną lub określoną tablicą wartości, będziemy aproksymować (zastępować) inną funkcją F(x), zwaną funkcją aproksymującą lub przybliżeniem funkcji f(x). Oczywiście przybliżenie takie powoduje powstanie błędów aproksymacji.

Niech f(x) będzie funkcją, którą chcemy aproksymować, X - pewną przestrzenią liniową unormowaną (tzn. określona jest w niej funkcja nazywana normą)
a Xm - m-wymiarową podprzestrzenią liniową przestrzeni X.

Aproksymacja funkcji f(x) polega na wyznaczeniu takich współczynników

a0, a1, a2, ..., am funkcji

(1)

gdzie 0, 1, ..., m są funkcjami bazowymi m+1 wymiarowej podprzestrzeni liniowej Xm+1, aby funkcja F(x) spełniała pewne warunki, np. minimalizowała normę różnicy ||f(x) - F(x)||.

Norma:

Funkcja która każdemu elementowi f X przyporządkowuje liczbę rzeczywistą ||f|| i spełnia następujące warunki:

a) ||f|| 0 ;||f|| = 0 f = 0

b) ||af|| = |a| ||f||

c) ||f+g|| 0x01 graphic
||f|| + ||g||

Wybór odpowiedniej podprzestrzeni Xm i związanej z nią bazy (funkcji bazowych k(x)) jest zagadnieniem istotnym ze względu na numeryczny koszt rozwiązania i błędy zaokrągleń.

Często obieraną podprzestrzenią Xm jest:

a) Podprzestrzeń funkcji trygonometrycznych z bazą

1, sin x, cos x, sin 2x, cos2x, ..., sin kx, cos kx

szczególnie przydatna, gdy aproksymowana funkcja f(x) jest funkcją okresową.

b) Podprzestrzeń wielomianów stopnia co najwyżej m z bazą jednomianów

1, x, x2, x3, ..., xm

Mimo prostoty działań na wielomianach baza ta ma istotną wadę - wrażliwość na błędy zaokrągleń; kumulujące się błędy w przypadku działań na małych oraz niewiele różniących się liczbach mogą całkowicie zniekształcić obliczenia.

c) Podprzestrzeń wielomianów stopnia co najwyżej m, określonych
na przedziale <-1, 1> z bazą wielomianów Czebyszewa

T0, T1(x), T2(x), ..., Tm(x)

czy też wielomiany Legendre'a

L0, L1(x), L2(x), ..., Lm(x)

Zagadnienie najlepszej aproksymacji przy wybranych funkcjach bazowych k(x) sprowadza się do znalezienia wartości współczynników ak takich, aby otrzymać minimum normy

||f(x) - F(x)||

||f(x) - ||

i aby istniało jedyne możliwe rozwiązanie tego zagadnienia ze względu na ak.

Normą taką może być na przykład:

a) norma Czebyszewa

Zagadnienie aproksymacji sformułujemy wówczas:

Dla funkcji f(x) określonej na przedziale <a, b> poszukujemy funkcji F(x) dającej najmniejsze maksimum różnicy między F(x) a f(x) na całym przedziale <a, b>

Aproksymacja taka nazywa się aproksymacją jednostajną.

0x01 graphic

Rys. 1 Interpretacja graficzna aproksymacji jednostajnej. Aproksymacja jednostajna polega na takim wyznaczeniu funkcji F(x) aby największa odległość punktów (wartości funkcji danej - f(x)) była
jak najmniejsza. Odległość ta określa nam jednocześnie maksymalny błąd bezwzględny jaki wystąpi jeśli funkcję f(x) zastąpimy funkcją F(x).

b) dla funkcji znanej f(x) określonej na przedziale <a, b> normą L2 z wagą

gdzie: w(x) jest ciągłą, nieujemną funkcją wagową, dodatnią poza zbiorem miary zero.

dla funkcji f(x) określonej na dyskretnym zbiorze punktów xi, tablicą wartości xi, f(xi) normą:

gdzie: w(xi) - funkcja wagowa taka, że w(xi) 0 dla i = 0, 1, 2, ..., n

Zagadnienie aproksymacji sformułujemy wówczas:

Dla funkcji f(x) określonej na przedziale <a, b> poszukujemy minimum całki

(2)

a dla funkcji f(xi) danej na dyskretnym zbiorze argumentów poszukujemy minimum sumy (metoda najmniejszych kwadratów)

(3)

gdzie: w(x) i w(xi) określono j.w.

Aproksymacja taka nazywa się aproksymacją średniokwadratową.

0x01 graphic

Rys. 2 Interpretacja graficzna aproksymacji średniokwadratowej. Aproksymacja średniokwadratowa polega na takim wyznaczeniu funkcji F(x) aby suma kwadratów odległości punktów (wartości funkcji danej - f(x)) była jak najmniejsza. Aproksymacja ta znacznie lepiej od aproksymacji jednostajnej "eliminuje" duże błędy przypadkowe np. wynikające z pomyłek przy pomiarach.

Istnieją twierdzenia mówiące, że zawsze można znaleźć wielomian Pn(x) (n=n())
o dowolnie małym odchyleniu od funkcji f(x) ciągłej na danym przedziale jeśli tylko weźmiemy dostatecznie duże n.

2. Aproksymacja średniokwadratowa.

Aproksymacja średniokwadratowa funkcji dyskretnej

Zajmiemy się teraz przypadkiem aproksymacji średniokwadratowej, gdy funkcja aproksymowana f(x) dana jest jedynie na dyskretnym zbiorze argumentów X
(w postaci tablicy xi, f(xi)). Idea tej aproksymacji jest zilustrowana na rysunku:

0x01 graphic

Rys. 3 Interpretacja graficzna aproksymacji i interpolacji. Funkcja interpolacyjna przechodzi dokładnie przez węzły interpolacji, funkcja aproksymacyjna natomiast "wygładza" je.

Niech będzie dana funkcja y = f(x), która na pewnym zbiorze X punktów
x0, x1, x2, ..., xn przyjmuje wartości y0, y1, y2, ..., yn. Wartości te możemy znać tylko w przybliżeniu, z pewnymi błędami (np. jako wyniki pomiarów obarczone błędami obserwacji). Będziemy poszukiwać takiej funkcji F(x) przybliżającej daną funkcję f(x), która umożliwi wygładzenie funkcji f(x), tzn. pozwoli z zakłóconych błędami danych wartości funkcji przybliżanej otrzymać gładką funkcję przybliżającą, z dużym prawdopodobieństwem mało odchylającą się od funkcji przybliżanej zarówno między węzłami, jak i w węzłach x0, x1, x2, ..., xn, jeżeli tylko przyjmiemy, że funkcja przybliżana ma dość gładki przebieg.

Niech j(x), j = 0, 1, 2, .., m, będzie układem funkcji bazowych podprzestrzeni Xn. Poszukujemy wielomianu uogólnionego:

(1)

lub

(1')

będącego najlepszym przybliżeniem średniokwadratowym funkcji f(x), przy czym

współczynniki ai są tak określone, aby wyrażenie

było minimalne.

Oznaczmy

(4)

gdzie: w(x) - funkcja wagowa ustalona z góry taka, że w(xi) 0 dla i = 0, 1, 2, ..., n.

Rj jest odchyleniem w punkcie Xj.

Najczęściej przyjmuje się, że funkcja wagowa w(x) ma stałą wartość,
równą tożsamościowo jedności, można jednak dobrać inną funkcję wagową (np. jeżeli znamy wartości funkcji w pewnych punktach z mniejszym błędem i chcemy aby otrzymane przybliżenie było w tych punktach lepsze
to przyjmujemy w tych punktach większe wartości funkcji wagowej.

Aby znaleźć takie współczynniki ak dla których funkcja H ma minimum obliczamy pochodne cząstkowe względem zmiennych ai.

0x01 graphic

otrzymamy wówczas układ m+1 równań z m+1 niewiadomymi ai.

(5)

k = 0, 1, 2, ..., m

zwany układem normalnym. Ponieważ funkcje j(x) tworzą bazę przestrzeni Xm, więc układ ten ma wyznacznik różny od zera (układ ma jednoznaczne rozwiązanie) i rozwiązanie tego układu daje minimum funkcji H.

W zapisie macierzowym układ ten przyjmuje postać

DTDA=DTf (6)

gdzie

, ,

Macierz współczynników układu jest macierzą symetryczną i dodatnio określoną
co zapewnia jednoznaczność rozwiązania.

Układ (5) lub (6) można otrzymać z równania (1) po podstawieniu wartości punktów węzłowych xi(i=0, 1, 2, ..., n). Otrzymujemy wówczas nadokreślony układ n+1 równań z m+1 niewiadomymi

DA=f

z którego popomnożeniu(lewostronnie)przezDTotrzymujemy (6)

2.1.1 Aproksymacja wielomianowa

Jeżeli jako funkcje bazowe j(x) przyjmiemy ciąg jednomianów

1, x, x2, x3, ..., xm

to wzór (5) przyjmie postać

lub po przekształceniu

k = 0, 1, 2, ..., m (7)

oznaczając

otrzymujemy układ normalny postaci

0x01 graphic

lub

gdzie wszystkie sumowania są od j = 0 do j = n

Można wykazać, że jeżeli punkty xo, x1, x2, ..., xn są różne i m 0x01 graphic
 n, to wyznacznik układu jest różny od zera, a więc układ ten ma jednoznaczne rozwiązanie.
Jeżeli m = n, to wielomian aproksymacyjny F(x) pokrywa się z wielomianem interpolacyjnym dla punktów xo, x1, x2, ..., xn i wówczas H = 0. W praktyce stopień wielomianu m jest i powinien być znacznie niższy od liczby punktów n, wtedy bowiem korzystamy z dużej ilości informacji (np. wyników pomiarów) uzyskując równocześnie prostsze (niskiego stopnia) funkcje aproksymujące.

Wielomian aproksymujący daną funkcję f(x) w sensie najmniejszych kwadratów powinien mieć stopień na tyle wysoki, aby dostatecznie przybliżać aproksymowaną funkcję, a jednocześnie stopień ten powinien być wystarczająco niski, aby wielomian ten wygładzał losowe błędy wynikające np. z pomiarów. W praktyce stopień wielomianu określamy a piori
na podstawie analizy modelu fizycznego badanego zjawiska bądź też przeprowadzamy aproksymację kolejno wielomianami coraz to wyższych stopni i obliczamy odchylenia funkcji H. Proces ten prowadzimy tak długo, jak długo ze wzrostem stopnia wielomianu funkcja H maleje w znaczny sposób.

Dla m 0x01 graphic
6 układ jest źle uwarunkowany, wskutek czego otrzymane wyniki obliczeń na maszynach cyfrowych mogą być tak bardzo zaburzone, iż nie nadają się
do praktycznego wykorzystania przy aproksymacji.

Złe uwarunkowanie:

Niech xi będą rozłożone w jednakowych odstępach w przedziale <0, 1>. Liczby gik można dla dużych m przybliżyć następująco

i,k = 0, 1, 2, ..., m

Elementy macierzy odwrotnej A-1 są rzędu 31012 co powoduje błędy zaokrągleń tak duże, że wyniki praktycznie tracą sens.

Tak więc stosowanie aproksymacji z funkcjami bazowymi typu jednomianów xi ma sens jedynie dla małych m (m < 6). Aby można było aproksymować wielomianami wyższych stopni można:

- zastosować specjalną metodę rozwiązywania układów równań, których macierz współczynników ma wyznacznik bliski zeru.

- zwiększyć precyzję (dokładność) wykonywania obliczeń na maszynie cyfrowej.

- zamienić bazę jednomianów xi bazą złożoną z wielomianów ortogonalnych.

Przykład 1

Dane są wyniki pomiarów

x

1

3

4

6

8

9

11

14

y

1

2

4

4

5

7

8

9

Poszukujemy zależności między x i y postaci

ax + by = 1

przy czym należy dobrać "optymalne" wartości współczynników a i b.

Przy tak sformułowanym zadaniu pojawia się problem: czy rozpatrywać odchylenia x czy y ?

Tabela pomocnicza n=7

j

0

1

2

3

4

5

6

7

j

x

1

3

4

6

8

9

11

14

56

y

1

2

4

4

5

7

8

9

40

xy

1

6

16

24

40

63

88

126

364

x2

1

9

16

36

64

81

121

196

524

y2

1

4

16

16

25

49

64

81

256


y = 1/b - (a/b)x y = f(x)

y = -(a/b)x + 1/b

a1 = -a/b a0 = 1/b

0x01 graphic

wszystkie sumowania od j = 0 do j = n

otrzymujemy:

i poszukiwane równanie

11y - 7x = 6

x = 1/a - (b/a)y x=f(y)

x = - (b/a)y +1/a

a1 = -b/a a0 = 1/a

0x01 graphic

wszystkie sumowania od j = 0 do j =n

otrzymujemy:

i poszukiwane równanie

2x - 3y = -1


Tak więc rozpatrując odchylenia x lub y otrzymujemy różne równania, chociaż ich wykresy prawie się pokrywają.

0x01 graphic

Przykład 2

Dane są wyniki pomiarów

x

1

2

3

f(x)

1

2

4

Poszukujemy funkcji aproksymującej kolejno stopnia 1,2,3:

a) 0x01 graphic
n=2 m=1

b) 0x01 graphic
n=2 m=2

c) 0x01 graphic
n=2 m=3

gdzie m - stopień wielomianu, n+1 - liczba węzłów aproksymacji

Ogólna postać wzoru na obliczenie "optymalnych" współczynników ak :

Tabela pomocnicza n=2 m=1,2,3

j

0

1

2

suma

x

1

2

3

6

f(x)

1

2

4

7

x2

1

4

9

14

x3

1

8

27

36

x4

1

16

81

98

x5

1

32

243

276

x6

1

64

729

794

f(x)*x

1

4

12

17

f(x)*x2

1

8

36

45

f(x)*x3

1

16

108

125

a) 0x01 graphic
n=2 m=1

Wzór ogólny przyjmie postać:

po rozwiązaniu otrzymujemy

0x01 graphic
= -0,6667

0x01 graphic
= 1,5

b) 0x01 graphic
n=2 m=2

Wzór ogólny przyjmie postać:

po rozwiązaniu otrzymujemy

0x01 graphic
= 1

0x01 graphic
= -0,5

0x01 graphic
= 0,5

c) 0x01 graphic
n=2 m=3

Wzór ogólny przyjmie postać:

Po dokonaniu eliminacji Gaussa otrzymujemy

otrzymaliśmy więc układ 3 równań z 4 niewiadomymi, którego rozwiązanie
nie jest jednoznaczne. Jeśli podstawimy zamiast dowolnej zmiennej (np. 0x01 graphic
) parametr t (0x01 graphic
=t) to otrzymamy rozwiązanie zależne od parametru t.

0x01 graphic
= 1 - 6 t

0x01 graphic
= - 1/2 + 11 t

0x01 graphic
= 1/2 - 6 t

0x01 graphic
= t

Jeśli liczba n (n = liczba danych węzłów aproksymacji - 1) jest większa
od stopnia wielomianu m to otrzymujemy wielomian aproksymacyjny.

Jeśli n = m to otrzymujemy wielomian interpolacyjny (krzywa przechodzi dokładnie przez węzły aproksymacji).

Jeśli n < m to otrzymujemy całą rodzinę funkcji (charakterystyk) zależną
od parametru. Wszystkie te przypadki dla naszego przykładu przedstawia rys.5.

Wyznaczymy kilka wielomianów

t

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

-1

7

-11,5

6,5

-1

0

1

-0,5

0,5

0

1

-5

10,5

-5,5

1

2

-11

21,5

-11,5

2

0x01 graphic

Rys. 5 Wyniki aproksymacji danych z przykładu 2 wielomianami stopnia 1, 2 i 3.

2.2 Aproksymacja średniokwadratowa funkcji ciągłych

Przyjmijmy, że daną funkcję f(x) ciągłą na przedziale <a, b> mamy aproksymować funkcją postaci

(8)

gdzie 0, 1, ..., m są elementami bazy pewnej podprzestrzeni funkcji całkowalnych z kwadratem na przedziale <a, b>.

Aproksymacja średniokwadratowa funkcji ciągłych polega na znalezieniu takiego ciągu współczynników ai (i = 0, 1, 2, ...,m) aby otrzymać minimum normy

(9)

gdzie: w(x) jest ciągłą, nieujemną funkcją wagową, dodatnią poza zbiorem miary zero. Oznaczmy jak poprzednio

H(a0, a1, a2, ..., am)

Jak poprzednio aby rozwiązać zadanie obliczamy pochodne cząstkowe

0x01 graphic

otrzymamy wówczas układ m+1 równań z m+1 niewiadomymi ai.



Wyszukiwarka

Podobne podstrony:
PKM, Politechnika Lubelska, Studia, Studia, organizacja produkcji, laborki-moje, od majka, SPRAWOZDA
Zal-lab-BP-zaoczne, politechnika lubelska, budownictwo, 3 rok, semestr 5, fizyka budowli, wykład
Drgania Ćwiczenie nr 13, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, Laborka, Lab
2.3, Politechnika Lubelska, Studia, Studia, organizacja produkcji, laborki-moje, laborki-mojeókrzste
test-B, politechnika lubelska, budownictwo, 3 rok, semestr 5, fizyka budowli, wykład
Str.4 - Karta technologicza zbiorcza, Politechnika Lubelska, Studia, Studia, organizacja produkcji,
TM10, Politechnika Lubelska, Studia, Studia, organizacja produkcji, laborki-moje, Wydział Mechaniczn
Karty technologiczne, Politechnika Lubelska, Studia, Studia, organizacja produkcji, laborki-moje, te
Protokół Smtp, Studia, sprawozdania, sprawozdania od cewki 2, Dok 2, Dok 2, POLITECHNIKA LUBELSKA, P
Urządzenia 101 - parametry łączników protokół (tylko dla ZAO, Politechnika Lubelska, Studia, semestr
06, Politechnika Lubelska, Studia, semestr 5, Sem V, Sprawozdania, sprawozdania, Sprawozdania, Labor
Karta operacyjna 80, Politechnika Lubelska, Studia, Studia, wszystkie, Uczelnia, Technologia Maszyn,
Sieci 9, Politechnika Lubelska, Studia, semestr 5, Sem V, Nowy folder
Jednomodowe czujniki interferencyjne, Studia, sprawozdania, sprawozdania od cewki 2, Dok 2, Dok 2, P
Teoria ster. 4, Politechnika Lubelska, Studia, semestr 5, Sem V, Nowy folder
Oświetlenie 11, Politechnika Lubelska, Studia, semestr 5, Sem V, Nowy folder

więcej podobnych podstron