Aproksymacja funkcji

Transkrypt

Aproksymacja funkcji
aproksymacja.doc
Aproksymacja funkcji
1. Sformułowanie problemu
Rys. 1. Aproksymacja liniowa funkcji.
Dane:
x0, x1, ..., xn
(1.1)
oraz
y0 = f(x0), y1 = f(x1), ..., yn = f(xn)
(1.2)
Postać funkcji y = f(x) nie znana lub znana.
Poszukiwana jest funkcja F(x) o następujących właściwościach:
F(x)  f(x)
w przedziale xmin < x < xmax
(1.3)
gdzie:
xmin = min xi
(1.4a)
xmax = max xi
(1.4b)
2015-01-13 13:47:00
1/7
aproksymacja.doc
Rys. 2. Aproksymacja nieliniowa danych pomiarowych.
Funkcję F(x) nazywa się funkcją aproksymującą.
Funkcję F(x) można przedstawić w postaci liniowej kombinacji założonych z
góry funkcji  0 ( x), 1 ( x), ..., l ( x)
y  F x   a00  x   a11  x   ...  all  x 
(1.5)
gdzie l  n .
Współczynniki ak dobieramy w taki sposób, aby jak najlepiej było spełnione
przyjęte przez nas kryterium zgodności F(x) z f(x). Kryterium tym może być np.
spełnienie warunku, aby miara sumarycznego błędu dla i  0, 1, ... n była jak
najmniejsza.
2015-01-13 13:47:00
2/7
aproksymacja.doc
Błąd aproksymacji funkcji f(x) funkcją F(x) oblicza się następująco
yi  yi  F( xi )  yi  a00  xi   a11  xi   ...  all  xi 
(1.6)
Metoda najmniejszych kwadratów
Kryterium doboru współczynników funkcji aproksymującej, ak
S    yi  Fxi   min
n
2
(1.7)
i 0
Gdy funkcja y = f(x) jest dana równaniem, kryterium (1.7) przyjmuje formę
S    y  F( x) dx  min
b
2
(1.8)
a
Warunek konieczny i wystarczający na minimum funkcji (1.7) lub (1.8)
S S
S

 ... =
0
a0 a1
al
(1.9)
2. Aproksymacja metodą najmniejszych kwadratów ciągu punktów wielomianem
Jest dany ciąg n + 1 par danych (xi, yi), i = 0, 1, 2, ..., n. Należy dokonać aproksymacji wielomianem stopnia l, przy l + 1  n + 1.
Fx   a0  a1 x  a2 x 2 + ...  al xl
(2.1)
Kryterium dokładności aproksymacji
S    yi  Fxi   min
n
2
(2.2)
i 0
Warunek konieczny i wystarczający
S S
S

 ... =
0
a0 a1
al
(2.3)
Po obliczeniu pochodnych (2.3) otrzymujemy układ l + 1 równań normalnych
2015-01-13 13:47:00
3/7
aproksymacja.doc
a0 S0  a1S1  ... + al Sl  T0
a0 S1  a1S2  ... + al Sl 1  T1
a0 S2  a1S3  ... + al Sl  2  T2
(2.4)
...................
a0 Sl  a1Sl 1  ... + al S2l  Tl
n
gdzie: Sk   xik
(2.5)
i 0
n
Tk   yi xik
(2.6)
i 0
Wyznacznik układu (4) jest niezerowy dla wszystkich xi parami różnych. Dla
dużych l macierz układu (4) może być źle uwarunkowana.
Aproksymacja wielomianem pierwszego stopnia
Dla l = 1
F x   a0  a1 x
(2.7)
W celu wyznaczenia współczynników a0 oraz a1 należy rozwiązać następujący
układ dwóch równań liniowych
a0 S0  a1S1  T0
(2.8)
a0 S1  a1S2  T1
gdzie:
n
S0   xi0  n  1
(2.9)
i 0
n
n
i 0
i 0
S1   xi1  xi  x0  x1  xn
(2.10)
n
S2   xi2  x02  x12    xn2
(2.11)
i 0
n
n
i 0
i 0
n
n
i 0
i 0
T0   yi xi0   yi  y0  y1  yn
(2.12)
T1   yi xi1   yi xi  x0 y0  x1 y1  xn yn
(2.13)
2015-01-13 13:47:00
4/7
aproksymacja.doc
Rozwiązaniami układu (8) są
a0 
s2T0  s1T1
s0 s2  s12
(2.14)
a1 
s0T1  s1T0
s0 s2  s12
(2.15)
Po wykorzystaniu zależności (9) - (13) otrzymujemy
n
n
n
n
i 0
i 0
i 0
 x   yi   xi   xi yi
a0  i0
2
i
n
n  1   x    xi 
i 0
 i 0 
a1 
n
(2.16)
2
2
i
n  1   xi yi   xi   yi
n
n
n
i 0
i 0
i 0
2
(2.17)
n
n  1   x    xi 
i 0
 i 0 
n
2
i
3. Sprowadzanie aproksymacji nieliniowych do zagadnienia liniowego
Należy wyznaczyć współczynniki A oraz n następującego równania aproksymacyjnego
Ae

2
x
n y
(3.1)
dla danych k par punktów xi, yi. Równanie (3.1) logarytmujemy stronami i
otrzymujemy
2
1
ln A  ln e  ln y
x
n
ln y  n ln A 
(3.2a)
2n
x
(3.2b)
Wprowadzamy nowe zmienne
x* 
1
x
(3.3a)
2015-01-13 13:47:00
5/7
aproksymacja.doc
y*  ln y
(3.3b)
i otrzymujemy równanie liniowe
y *  a0  a1 x*
(3.4)
gdzie
a0  n ln A
(3.5)
a1  2n
W celu znalezienia współczynników a0 oraz a1, należy punkty xi, yi, dla i = 1,2,
..., k, przeliczyć wzorami (3.3a) i (3.3b)
xi* 
1
xi
(3.6)
yi*  ln yi
Po obliczeniu a0 oraz a1, wykorzystujemy wzory (3.5), by obliczyć A oraz n.
4. Spotykane typy funkcji aproksymujących F(x)
1. Kombinacje liniowe funkcji
F x   a00  x   a11  x   ...  all  x 
(4.1)
gdzie funkcje i(x) mogą być np. wielomianami ortogonalnymi. Poszukujemy
wartości a0, a1, ..., al.
2. Funkcje trygonometryczne
l
F( x)   ai sin ix
(4.2)
i 1
Poszukujemy wartości a1, a2, ..., al.
3. Funkcje wymierne
F( x) 
Pn ( x)
Q m ( x)
(4.3)
2015-01-13 13:47:00
6/7
aproksymacja.doc
gdzie
Pn ( x)  a0  a1 x    an x n
(4.3a)
Qm ( x)  b0  b1 x    bm x m
(4.3b)
Poszukujemy wartości a0, a1, ..., an oraz b0, b1, ..., bm.
4. Funkcje wykładnicze
F( x)  A0 exp a0 x   A1 exp a1 x     Ak exp ak x 
(4.4)
Poszukujemy wartości a0, a1, ..., ak oraz A0, A1, ..., Ak.
5. Oszacowanie dokładności aproksymacji
W metodzie najmniejszych kwadratów za miarę dokładności aproksymacji
można przyjąć wartość minimalizowanej sumy kwadratów:
- dla przypadku dyskretnego
S   p( xi ) yi  Fxi 
n
2
(5.1)
i 0
- dla przypadku ciągłego
S   p( x) y  F( x) dx
b
2
(5.2)
a
Odchylenie średniokwadratowe
- dla przypadku dyskretnego
  yi  F xi 
n
S 
2
i 0
(5.3)
n 1
- dla przypadku ciągłego
  y  F( x) dx
b
S 
2
a
(5.4)
ba
2015-01-13 13:47:00
7/7