Nieadaptacyjne algorytmy minimalnokwadratowe estymacji

Transkrypt

Nieadaptacyjne algorytmy minimalnokwadratowe estymacji
Nieadaptacyjne algorytmy minimalnokwadratowe
estymacji parametrów predyktorów optymalnych
** No author given **
19 marca 2008
Spis treści
1 Algorytm Durbina
1.1 Sformułowanie problemu . . . . . . . . . . . . . . . . . . . . . . .
1.2 Wyprowadzenie równań Yule’a-Walkera poprzez różniczkowanie .
1.3 Wyprowadzenie równań Yule’a-Walkera w oparciu o zasadę ortogonalności . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.1 Predyktor optymalny rzędu trzeciego szeregu czasowego
AR(4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2
2
2 Algorytm Levinsona
2.1 Sformułowanie problemu . . . . . . . . . . . . . . . . . . . . . .
2.2 Wyprowadzenie równań normalnych przez różniczkowanie . . . .
2.3 Wyprowadzenie równań normalnych w oparciu o zasadę ortogonalności . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4 Rekursywny algorytm Levinsona . . . . . . . . . . . . . . . . . .
2.4.1 Predyktor optymalny rzędu trzeciego szeregu czasowego
AR(1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.2 Model MA(1) o znanych parametrach . . . . . . . . . . .
8
8
8
3 Algorytm faktoryzacji Choleskiego-Banachiewicza
4
6
9
10
13
14
15
4 Numeryczne algorytmy estymacji autokorelacji
19
4.1 Metoda autokorelacyjna . . . . . . . . . . . . . . . . . . . . . . . 20
4.2 Metoda autokowariancyjna . . . . . . . . . . . . . . . . . . . . . 21
4.3 Dwie metody z okienkowaniem jednostronnym . . . . . . . . . . 21
5 Predykcja wstecz i predykcja w przód
22
5.1 Sformułowanie problemu . . . . . . . . . . . . . . . . . . . . . . 22
5.2 Lattice minimalizujący moc błędu . . . . . . . . . . . . . . . . . 24
5.3 Lattice minimalizujący energię błędów. Algorytm Burga . . . . . 25
5.4 Przykład zastosowania algorytmu Levinsona-Durbina i algorytmu Burga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.4.1 Algorytm Levinsona-Durbina . . . . . . . . . . . . . . . . 28
5.4.2 Algorym Burga . . . . . . . . . . . . . . . . . . . . . . . 29
1
1
Algorytm Durbina
W tym punkcie przedstawimy algorytm Durbina, który służy do estymacji wartości próbki szeregu dyskretnego w oparciu o ciąg wcześniejszych próbek. Taką
estymację zmiennej losowej Yi – próbki szeregu czasowego {Yi } w oparciu o próbę, która stanowi M poprzednich próbek tego szeregu Yi−M , Yi−M +1 , . . . , Yi−1
nazywa się powszechnie predykcją jednokrokową, a ściśle jednokrokową predykcją w przód.
1.1
Sformułowanie problemu
Załóżmy, że mamy do czynienia z szeregiem czasowym {Di } opisanym przez
model autoregresji (AR). Obserwacja {yi }, tj. realizacja próby {Yi } jest sumą
przebiegu {di } i przebiegu {ni } będącego realizacją stacjonarnego szumu białego, tj.
yi = di + ni ; i = 1, 2, . . . , N
(1)
gdzie N jest liczebnością (długością) obserwacji.
Minimalizacja błędu średniokwadratowego pomiędzy obserwacją {yi } a jej
estymatą liniową {ŷi } prowadzi do układu równań, których rozwiązaniem są
parametry αm predyktora
ŷi =
M
X
i = . . . , −1, 0, 1 . . .
αm yi−m ;
(2)
m=1
gdzie αm ; m = 1, . . . , M w ogólnym przypadku są zespolonymi współczynnikami
predykcji. Liczbę całkowią M nazwywa się rzędem predyktora. Predykcja liniwa
może być realizowana bezpośrednio, zgodnie ze wzorem (2) przy pomocy filtru
transwersalnego (z ang.: tapped-delay line), przedstawionego na rysunku 1, gdzie
zi−1 jest operatorem jednostkowego odstępu szeregu czasowego.
1.2
Wyprowadzenie równań Yule’a-Walkera poprzez różniczkowanie
Współczynniki w zależności (2) dają się określić poprzez minimalizację mocy
szeregu czasowego reprezentującego ciąg błędów, czyli minimalizację MSE zdefiniowanego jako wartość oczekiwana zmiennej losowej Fi2 .
M
X
2
σM
≡ E|Yi −
αm Yi−m |2
(3)
m=1
reprezentującej kwadrat błędu predykcji
fi = yi − ŷi .
(4)
Ponieważ ciąg estymat {ŷi } reprezentuje przewidywalną część {Ŷi } szeregu czasowego {Yi }, szereg czasowy reprezentujący błąd jest w przybliżeniu szumem
białym. Zależność (4) można wyrazić w postaci
fi =
M
X
am yi−m
i=0
2
(5)
yi
z −1
yi−1
xi
axi
−a1
xi
xi + yi
P
yi
yi
yi−1
z −1
z −1
−a1
yi−2
z −1
yi−M
−a2
−aM
P
P
−1
P
fi
Rysunek 1: Filtr transwersalny
gdzie am są parametrami filtru błędu predykcji związanymi ze współczynnikami
predykcji oczywistymi równościami
a0 = 1, . . . , am = −αm ;
m = 1, 2, . . . , M
(6)
i z tego powodu nazywane są parametrami predyktora.
Podstawienie (6) do (3) prowadzi do
2
σM
=
M X
M
X
M X
M
X
∗
am a∗j E Yi−m Yi−j
=
am a∗j rj−m
m=0 j=0
(7)
m=0 j=0
gdzie
∗
rj−m = E(Yi−m Yi−j
);
j, m = . . . , −1, 0, 1
(8)
jest ciągiem współczynników autokorelacji szeregu czasowego {Yi }, który dalej
będziemy nazywać ciągiem autokorelacyjnym.
2
Minimalizacja σM
względem parametrów a∗i prowadzi do układu równań
liniowych
M
2
X
∂σM
=
2
am rl−m = 0; l = 1, 2, . . . , M.
(9)
∂a∗i
m=0
Równania (9) można przekształcić do postaci znanej jako równania Yule’a-Walkera [?, 145, ?]
M
X
am rl−m = r1 ; l = 1, 2, . . . , M.
(10)
m=0
3
1.3
Wyprowadzenie równań Yule’a-Walkera w oparciu o zasadę ortogonalności
2
Minimalizacja σM
względem parametrów {a∗j } może być również przeprowadzona przy wykorzystaniu zasady ortogonalności. Zasada ortogonalności wymaga,
aby szereg czasowy {Yi } był ortogonalny do szeregu czasowego {Fi } reprezentującego ciąg błędów. Tak więc, zgodnie z definicją ortogonalności stacjonarnych
szeregów czasowych w przestrzeni Hilberta mamy
E Yi−l Fi∗ = 0; l = 1, . . . , M.
(11)
Po uwzględnieniu zależności (5) i (6) wzór (11) przyjmuje po obliczeniu wartości
oczekiwanej postać
M
X
a∗m rm−l = 0;
l = 1, . . . , M.
(12)
m=0
∗
Ponieważ dla stacjonarnych szeregów czasowych rm−l = rl−m
, zatem równania
(12) mogą być zapisane w postaci
M
X
am rl−m = 0;
l = 1, . . . , M.
(13)
m=0
Równania (12) są identyczne jak równania (10) uzyskane na drodze minimalizacji MSE. Minimalny błąd średniokwadratowy (MMSE), innymi słowy, moc
szeregu czasowego {Fi } może być wyznaczona w oparciu o parametry {am }
predyktora optymalnego w sensie MSE jako
2
σM
min
2
= E|Fi | =
M
X
a∗j
j=0
X
M
am rj−m
m=0
=
M
X
am r−m .
(14)
m=0
PM
Wynik (14) uzyskano dzięki temu, że wyrażenie m=0 am ri−m jest równe zeru
dla j = 0, jak we wzorze (13). Ujmując (13) i (14) w jedną zależność otrzymamy
M
X
2
am rl−m = σM
δ(l);
min
l = 0, 1, . . . , M
(15)
m=0
αM,M r1 + αM,M −1 r0 + · · · + αM,1 rM −2 = rM −1
...............................................
αM rM −1 + αM,M −1 rM −2 + · · · + αM,1 r0 = r1
W postaci macierzowej M równań (16) przyjmuje formę

 

αM,M
M
RM  . . .  =  . . . 
αM,1
r1
gdzie macierz autokorelacyjna

RM
r0
 r1∗
=
 .....
∗
rM
−1
r1
r0
∗
rM
−2
4

rM −1
rM −2 


...
r0
...
...
(16)
(17)
(18)
jest macierzą Toeplitza, w której na każdej przekątnej wszystkie elementy są
sobie równe. RM jest czasem nazywana macierzą kowariancyjną lub kowariancją
rzędu M. Równania (16) zawierają M − 1 równań postaci

 

αM,M −1
rM −1 − αM,M −1 r1
 =  .................. 
...
RM −1 
(19)
αM,1
r1 − αM,M rM −1
gdzie RM −1 jest macierzą autokorelacyjną rzędu M − 1.
Mnożąc lewostronnie (19) przez R−1
M −1 otrzymamy






αM,M −1
rM −1
r1

 = R−1  . . .  − αM,M R−1  . . . .
...
M −1
M −1
αM,1
r1
rM −1
(20)
Wykorzystując toeplitzowskie własności macierzy autokorelacyjnej oraz to, że
macierz autokorelacyjna rzędu M − 1 również spełnia równanie Yule’a-Walkera,
równanie (20) można uprościć do postaci



 

∗
αM
αM,M −1
αM −1,M −1
−1,1
 − αM,M 

=
.
...
...
...
(21)
∗
αM −1,1
αM,1
αM −1,M −1
Równoważność równań (20) i (21) będzie wyjaśniona bardziej szczegółowo w punkcie 2.4.
Równanie (21) może być teraz zapisane w postaci układu
αM,k = αM −1,k − αM,M αM −1,k ;
k = 1, . . . , M − 1.
(22)
Współczynnik αM,M (ze znakiem minus) w zastosowaniach technicznych nazywany jest współczynnikiem odbicia (z ang.: reflection coefficient) zaś w statystyce współczynnikiem korelacji cząstkowej (PARCOR).
Współczynniki odbicia α1,1 , α2,2 , . . . , αM,M mogą być obliczane w sposób
rekursywny jak następuje.
Pierwsze równanie w (16) można zapisać w postaci wektorowej


αM,M −1
 = rM
...
αM,M r0 + r1 , r2 . . . rM −1 
(23)
αM,1
Po podstawieniu (21) do (23) otrzymujemy
αM,M

αM −1,M −1
...
rM − r1 , r2 , . . . , rM −1 
αM −1,1

=
∗
αM
−1,1
...
r0 − r1 , r2 , . . . , rM −1 
∗
αM
−1,M −1


.
(24)

Znajomość αM −1,k dla k = 1, 2, . . . , M − 1 z poprzedniego kroku rekursji pozwala na wyznaczenie αM,M . Następnie αM,k dla k = 1, . . . , M jest wyznaczane
5
z (22) i (24). Zależność (22) nazywa się rekursją Levinsona [88]. Pomijając indeks
określający rząd, mianownik (24) może być zapisany w postaci


M
−1
α1∗
X
r0 − r1 , r2 , . . . , rM −1  . . .  =
a∗m rm
(25)
∗
m=0
αM −1
Minimalna moc szeregu czasowego {FM −1 , i} reprezentującego ciąg błędów predyktora rzędu (M − 1) może być wyrażona jako
2
σ(M
−1)min =
M
−1
X
am r−m =
m=0
M
−1
X
a∗m rm .
(26)
m=0
Ponadto uwzględniając (6) z (25) i (26) widać, że mianownik (24) jest równo2
ważny σM
−1min . Wzór (24) może być przepisany jako
aM,M =
1
2
σM
−1min
n
− rM


aM −1,M −1 o

...
− r1 , r2 , . . . , rM −1 
aM −1,1
(27)
Dodając indeks oznaczający rząd do parametrów predyktora uzyskujemy zamiast wyrażenia (14)
M
X
2
σM
=
a∗M,m rm .
(28)
min
m=0
Rozwijając (28) przy uwzględnieniu (22), (26) i (27) uzyskujemy
2
σM
min
=
M
M
−1
−1
X
X
aM,M rM +
aM −1,M −m rm +
a∗M −1,m rm + r0
m=1
=
m=1
2
σM −1min 1 − |aM,M |
(29)
gdzie, jak poprzednio aM,0 = 1 i aM,M = −αM,m ; m = 1, 2, . . . , M .
2
Zależność (29) dowodzi, że MMSE σM
może być wyznaczony rekursywnie
min
2
2
z σ(M −1) i aM,M . Oczywiście, bez predyktora wartość początkowa σ0,min
= r0 .
min
Rekursja Levinsona (22) może być przepisana w postaci
aM,k = aM −1,k + aM,M a∗M −1,M −k ;
k = 1, . . . , M − 1
(30)
przy czym aM −k = −αM,k dla k = 1, 2, . . . , M − 1.
Wyrażenia (22) lub (27) i (29) są podstawą rekursywnego wyznaczania
współczynników predykcji lub parametrów predyktora. Algorytm oparty na nich
jest nazywany algorytmem Durbina [50] lub Levinsona-Durbina [68].
1.3.1
Predyktor optymalny rzędu trzeciego szeregu czasowego AR(4)
Dla przykładu załóżmy, że znane są współczynniki autokorelacji rn = γ n , |γ| <
1; n = 0, 1, 2, 3. Współczynniki predykcji mogą być wyliczone bezpośrednio
poprzez rozwiązanie układu równań Yule’a-Walkera (10) „blokowo”, np. metodą wyznaczników lub rekursywnie przy pomocy algorytmu Levinsona-Durbina.
6
Otrzymane wyniki są jednakowe. Rozpatrzmy najpierw metodę wyznaczników.
Ułóżmy układ równań Yule’a-Walkera jak w (10)


  3 
1
γ γ2
α3
γ
 γ∗
1 γ   α2  =  γ 2 
(31)
(γ 2 )∗ γ ∗ 1
α1
γ
Rozwiązanie bezpośrednie tych równań prowadzi do wyniku

 3 


1
−γ
0
γ
α3
2
1 − |γ|
 −γ ∗ 1 + |γ|2 −γ   γ 2 
 α2  = 1
γ γ 2 0
−γ ∗
1
γ
α1
γ∗
1
γ
2 ∗
(γ ) γ ∗ 1 (32)
gdzie wyznacznik
1
γ∗
2 ∗
(γ )
γ
1
γ∗
γ2
γ
1
= (1 − |γ|2 )2 .
Podstawiając (33) do (32) otrzymamy


 
α3
0
 α2  =  0 .
α1
γ
(33)
(34)
Rozwiązanie rekursywne przy wykorzystaniu algorytmu Levinsona-Durbina wygląda następująco. Pierwszy krok rekursji daje parametr predyktora rzędu pierwszego w oparciu o zależności (27), (29) i (30) jako
−a0,0 r1
r1
a1,1 =
= − = −γ
(35)
2
σ0min
r0
a1,0 = 1
oraz
σ12min = σ02min (1 − |a1,1 |2 ) = r0 (−|a1,1 |2 ) = 1 − |γ|2
(36)
gdzie a0,0 = 1. Drugi krok rekursji, którego wynikiem jest predyktor drugiego
rzędu ma postać
a2,2
=
−a1,0 r2 − a1,1 r1
−r2 + r1
−γ 2 + γ 2
=
=
=0
σ12min
−1 − |γ|2
−1 − |γ|2
(37)
a2,1
=
a1,1 + a2,2 a∗1,1 = −γ
(38)
a2,0
=
1
oraz
σ22min = σ12min 1 − |a2,2 |2 = 1 − |γ|2 .
(39)
W trzecim kroku rekursji otrzymujemy predyktor trzeciego rzędu o parametrach
a3,3
=
−r1 − γr2
−a2,0 r3 − a2,1 r2 − a2,2 r1
−γ 3 + γ 3
=
=
=0
2
2
σ2min
1 − |γ|
1 + |γ|2
(40)
a3,2
=
a2,2 + a3,3 a2,1 = 0 = −α2
(41)
a3,1
=
a2,1 + a3,3 a2,2 = −α1 = −γ.
(42)
Z powyższych obliczeń można zauważyć, że rozwiązanie a1 = 0, a2 = 0, a3 = 0
jakie uzyskano w oparciu o algorytm Levinsona-Durbina jest identyczne jak
rozwiązanie otrzymane bezpośrednio metodą wyznaczników.
7
2
Algorytm Levinsona
W tym punkcie przedstawimy rekursywny algorytm Levinsona [88, ?]. Algorytm
ten podobny jest do algorytmu Levinsona-Durbina.
2.1
Sformułowanie problemu
Algorytm Levinsona różni się tym od algorytmu Durbina, że pierwszy z nich dokonuje predykcji niezaszumionego (pożądanego) szeregu czasowego {Di }, podczas gdy drugi dokonuje predykcji zaszumionego szeregu czasowego {Yi }. Zakładamy, że zaszumiony szereg czasowy {Yi } reprezentujący obserwację {Yi } jest
stacjonarny i jest sumą szeregu czasowego wygenerowanego przez model autoregresji (AR) i szumu białego {Ni }. Taki szereg czasowy może być wyrażony
jako
Yi = Di + ni ; i = 1, 2, . . . , N
gdzie N oznacza liczbę próbek w obserwacji.
Załóżmy, że chcemy przewidzieć wartość niezaszumionej próbki di w oparciu
o ciąg próbek obserwacji yi−m ; m = 1, 2, . . . , M za pomocą predyktora liniowego
dˆi =
M
X
αm yi−m
(43)
m=1
gdzie dˆi jest sygnałem estymowanym, αm są współczynnikami predykcji zaś
M oznacza rząd predyktora.
2.2
Wyprowadzenie równań normalnych przez różniczkowanie
Współczynniki predykcji mogą być określone poprzez minimalizację mocy szeregu czasowego {Fi } reprezentującego ciąg błędów predykcji (MSE) zdefiniowanej
jako
M
2
X
2
σM
= E|Fi |2 = E Di −
αm Yi−m (44)
i=1
gdzie fi jest błędem w estymacji i-tej próbki obserwacji.
fi = di − dˆi .
(45)
2
Minimalizując σM
względem współczynników {αi∗ } otrzymujemy
2
∂σM
∂αi∗
=
M
h
X
i
∗
−2E Yi−l
Di −
αm Yi−m
=
M
h
i
X
−2 gl −
αm rl−m = 0;
m=1
l = 1, . . . , M
(46)
m=1
gdzie
∗
gl = E(Di Yi−l
);
l = . . . , −1, 0, 1, . . .
8
(47)
jest współczynnikiem korelacji wzajemnej pomiędzy „czystym” {Di } i zaszumionym szeregiem czasowym {Yi }, zaś {rl } jest ciągiem autokorelacyjnym szeregu
czasowego {Yi } zdefiniowanym wzorem (8).
Równania (46) mogą być zapisane w postaci:
gl =
M
X
αm rl−m ;
l = 1, 2, . . . , M.
(48)
i=1
Układ (48) nazywany jest układem równań normalnych. Współczynniki {αm }
wyznaczone z rozwiązania tych równań znane są także pod nazwą współczynników predyktora (filtru) Wienera [?].
2.3
Wyprowadzenie równań normalnych w oparciu o zasadę ortogonalności
Równania normalne mogą być także wyprowadzone w oparciu o założenie, że
szeregi czasowe {Yi } i {Fi } powinny być nieskorelowane, a tym samym interpretowane w przestrzeni Hilberta jako ortogonalne, czyli
E(Yi−l Fl∗ ) = 0;
l = 1, 2, . . . , M
(49)
Wykorzystując definicję błędu (45) w zależności (49) i uwzględniając własności
ciągu korelacyjnego stacjonarnych i stacjonarnie powiązanych szeregów czasowych mamy
M
X
E(Yi−l Di∗ ) =
∗
αm E[Yi−m − Yi−m
];
l = 1, 2, . . . , M
(50)
m=1
lub
gl∗ = −
M
X
∗
αm
rm−l ;
l = 1, 2, . . . , M.
(51)
m=1
∗
Ponieważ rm−l = rm−l
równania normalne (48) są równoważne równaniom (51).
2
Minimalna moc przebiegu błędu predykcji σM
może być łatwo wyznaczona
min
poprzez wykorzystanie zasad ortogonalności w rozwinięciu (44)
2
σM
min
2
h
= E|Fi | = E Di −
M
X
i
αm Yi−m Fi∗ .
(52)
m=1
Wykorzystując postać (49) zasady ortogonalności, wyrażenie (52) przyjmuje
postać
M
h
X
i
2
∗
∗
∗
∗
σM
=
E(D
F
)
=
E
D
D
−
αm
Yi−m
.
(53)
i i
i i
min
m=1
Definiując
σd2
=
E(Di Di∗ )
i wprowadzając (47) do (53) mamy
2
σM
= σd2 −
min
M
X
m=1
2
jako, że σM
jest rzeczywiste i nieujemne.
min
9
∗
αm gm
(54)
2.4
Rekursywny algorytm Levinsona
Współczynniki predykcji αm mogą być wyznaczone bezpośrednio, np. metodą
współczynników poprzez rozwiązanie układu równań normalnych (48) lub wykorzystując algorytm Levinsona – w sposób rekursywny. Dodając nowy indeks M ,
aby wskazać rząd predyktora, równania normalne (48) mogą być przedstawione
w postaci
M
X
αM,m rl−m = gl ; l = 1, 2, . . . , M
(55)
m=1
lub rozwinięte do postaci
αM,M r0 + αM,M −1 r1 + · · · + αM,1 rM −1 = gM
αM,M r−1 + αM,M −1 r0 + · · · + αM,1 rM −2 = gM −1
.................................................
αM,M r1−M + αM,M −1 r2−M + · · · + αM,1 r0 = g0 .
(56)
Równania (56) różnią się od równań (16) tylko prawą stroną. Zapiszmy (56)
w postaci macierzowej

 

αM,M
gM
RM  . . .  =  . . . 
(57)
αM,1
g1
gdzie macierz autokorelacyjna RM jest zdefiniowana wzorem (18). Ostatnie M −
1 równań w (56) można przepisać w postaci


 
αM,M −1
gM −1 −αM,M r1∗
 =  . . . . . . . . . . . . . . . . . . .
(58)
RM −1  . . .
∗
αM,M
g1
αM,M rM
−1
Mnożąc lewostronnie zależność (58) przez R−1
M −1 otrzymujemy






αM,M −1
gM −1
r1
 ...
 = R−1  . . .
 − αM,M R−1  . . .

M −1
M −1
αM,1
g1
rM −1


 ∗

αM −1,M −1
r1
 − αM,M R−1  . . .

=  ...
M −1
∗
αM −1,1
rM
−1
(59)
gdzie wektor współczynników predykcji [αM −1,M −1 , . . . , αM −1,1 ]T po prawej
stronie równania uzyskany został z rozwiązania M − 1 równań przy wykorzystaniu (57). Zdefiniujmy pośredni wektor pomocniczy


 ∗

φM −1,1
r1
 ...
 = R−1  . . .
.
(60)
M −1
∗
∗
φM −1,M −1
rM −1
Równanie (59) można zapisać wtedy w postaci uproszczonej





φM −1,1
αM,M −1
αM −1,M −1
 ...
 ...
 αM,M  . . .
.
αM,1
αM −1,1
φM −1,M −1
10
(61)
Równanie (59) może być wyrażone w postaci układu
αM,k = αM −1,k − αM,M φ∗M −1,M −k ;
k = 1, . . . , M − 1.
(62)
Współczynnik odbicia αM,M można wyznaczyć z pierwszego równania układu
(56) jako


αM,M −1
 = gM
...
αM,M r0 + [r1 , r2 , . . . , rM −1 ] 
(63)
αM,1
Podstawiając (61) do (63) otrzymujemy

αM,M

αM −1,M −2

δM + [rM − r1 , r2 , . . . , rM −1 ]  . . .
αM −1,1
 ∗
 .
=
φM −1,1

r0 − [r0 − r1 , r2 , . . . , rM −1 ]  . . .
∗
φM −1,M −1
(64)
Znajomość αM −1,k dla k = 1, . . . , M − 1 z poprzedniego kroku rekursji oraz
z wektora pośredniego (60) pozwala na wyznaczenie αM,M , a następnie αM,k .
Do uzupełnienia rekursji Levinsona wymagane jest jeszcze wyznaczenie wektora
pośredniego z definicji (60), po czym równania normalne mogą być zapisane
w postaci
∗
r0 φM −1,1 + r1∗ φM −1,2 + · · · + rM
−2 φM −1,M −1 = r1
∗
r1 φM −1,1 + r0 φM −1,2 + · · · + rM −3 φM −1,M −1 = r2
.........................................................
rM −2 φM −1,1 + rM −3 φM −1,2 + · · · + r0 φM −1,M −1 = rM −1 .
(65)
Zmieniając kolejność równań i porządek wyrazów w równaniu (65) można je
przepisać w postaci
r0 φM −1,M −1 + · · · + rM −2 φM −1,2 = rM −1
.........................................
∗
rM
−2 φM −1,M −1 + · · · + r0 φM −1,1 = r1
lub



φM −1,M −1
rM −1
−1
 ...
=R
 ...

M −1
φM −1,1
r1
(66)

(67)
Równania (66) lub (67) mają tą samą postać co rekursja Durbina dla M − 1
równań por. (17), (22) i (24). Wektor


φM −1,M −1
 ...

φM −1,2
można wyznaczyć używając rekursji Durbina jak następuje.
Równania (??), (??), (62) i (64) stanowią rekursywny algorytm Levinsona [88, ?].
W tablicy 1 zestawiono wzory na rozwiązanie układu równań normalnych
dla predyktorów rzędu 1, 2, 3 lub 4 szczególnie przydatnych w praktyce.
11
Tabela 1: Równania normalne i ich rozwiązania uzyskane przy zastosowaniu
algorytmu Levinsona
Równania normalne
α1,1 r0 = g1
α2,2 r0 + α2,1 r1 = g2
α2,2 r1 + α2,1 r0 = g1
Rozwiązanie równań normalnych
Rząd predyktora M = 1
g1
α1,1 =
r0
Rząd predyktora M = 2
r1
α1,1 =
r0
g2 − r1 α1,1
α2,2 =
r0 − r1 φ∗1,1
α2,1 = α1,1 − α2,2 φ∗1,1
Rząd predyktora M = 3
r2 − r1 φ1,1
α3,3 r0 + α3,2 r1 + α3,1 r2 = g3
φ2,2 =
r0 , −r1 φ∗1,1
α3,3 r1∗ + α3,2 r2 + α3,1 r1 = g2
φ2,1 = φ1,1 − φ2,2 φ∗1,1
g3 − r1 α2,2 − r2 α2,1
∗
∗
α3,3 r2 + α3,2 r1 + α3,1 r0 = g1
α3,3 =
r0 − r1 φ∗2,1 − r2 φ∗2,2
α3,3 r2∗ + α3,2 r1∗ + α3,1 r0 = g1
α3,1
α3,2
=
α2,1
α2,2
g3 − r1 α2,2 − r2 α2,1
r0 − r1 φ∗2,1 − r2 φ∗2,2
=
φ∗2,2
φ∗2,1
φ∗2,2
φ∗2,1
φ∗2,1
φ∗2,2
− α3,3
α3,3 =
α3,1
α3,2
α2,1
α2,2
− α3,3
Rząd predyktora M = 4
φ2,2
φ2,1
φ∗2,1
φ∗2,2
r3 − [r1 , r2 ]
α4,4 r0 + α4,3 r1 + α4,2 r2 + α4,1 r3 = g4
φ3,3 =
r0 − [r1 , r2 ]
α4,4 r1∗ α4,3 r0
+ α4,2 r1 + α4,1 r2 = g3
α3,2
α3,1
=
α2,2
α2,1
− α3,3
"
α3,3
α3,2
α3,1
#
"
φ∗3,1
φ∗3,2
φ∗3,3
#
g4 − [r1 , r2 , r3 ]
α4,4 r2∗ + α4,3 r1∗ + α4,2 r0 + α4,1 r1 = g2
α4,4 =
r0 − [r1 , r2 , r3 ]
"
α4,4 r3∗
+
α4,3 r2∗
+
α4,2 r1∗
+ α4,1 r0 = g1
12
α4,1
α4,2
α4,3
#
"
=
α3,1
α3,2
α3,3
#
"
− α3,3
φ∗3,3
φ∗3,2
φ∗3,1
#
2.4.1
Predyktor optymalny rzędu trzeciego szeregu czasowego AR(1)
Podamy teraz przykład zastosowania rekursywnego algorytmu Levinsona. Niech
re = γ n i gm = β n−1 dla n = 1, 2, 3 w (55), przy czym |γ| < 1 i |β| < 1.
Pokażemy, że parametry predyktora uzyskane według algorytmu Levinsona są
równoważne parametrom uzyskanym bezpośrednio – metodą „blokową” poprzez
rozwiązanie układu równań liniowych, np. metodą wyznaczników. Tak więc naszym zadaniem jest rozwiązać układ równań


  2 
1
γ γ2
α1
β
 γ∗
1 γ   α2  =  β .
(68)
(γ 2 )∗ γ ∗ 1
α3
1
Odwracając macierz otrzymujemy



 2 
α1
1
γ γ2
β
 α2  =  γ ∗
1 γ  β 
α3
(γ 2 )∗ γ ∗ 1
1
(69)

=

1
1 
∗
−γ
|γ|2
0
−γ
1 + |γ|2
−γ ∗
 2  

0
β




−γ
β
=


1
1

β 2 − γβ
1 − |γ|2
β(1 + |γ|2 − γ − β 2 γ ∗ )
1 − |γ|2
1 − βγ
1 − |γ|2
Z drugiej strony, stosując rekursywny algorytm Levinsona w pierwszym kroku
rekursji, tj. dla predyktora pierwszego rzędu otrzymujemy
γ1
α1,1 =
=1
(70)
r0
r1
(71)
φ1,1 =
r0
γ2 − r1 α1,1
β−γ
(72)
α2,2 =
=
r0 − r1 φ1,1
1 − |γ|2
β−γ
1 − βγ ∗
α2,1 = α1,1 − α2,2 φ∗1,1 = 1 −
g=
(73)
2
1 − |γ|
1 − |γ|2
r2 − r1 φ1,1
γ2 − γ2
φ2,2 =
=
(74)
∗
r0 − r1 φ1,1
1 − |γ|2
φ2,1
= φ1,1 − φ2,2 φ∗1,1 = γ.
(75)
Następnie w trzecim kroku rekursji
α3,3
α3,1
α3,2
β−γ 2 1−βγ 2 β 2 − γ 1−|γ|
2 γ 1−|γ|2
β 2 − βγ
γ3 − r1 − α2,2 − r2 α2,1
=
=
=
r0 − r1 φ∗2,1 − r2 φ∗2,2
1 − |γ|2
1 − |γ|2
∗
1 − βγ
= α2,1 − α3,3 φ∗2,2 =
1 − |γ|2
β−γ
β 2 − βγ ∗
β(1 − |γ|2 ) − γ − β 2 γ
= α2,2 − α3,3 φ∗2,1 =
−
γ
=
.
1 − |γ|2
1 − |γ|2
1 − |γ|2
(76)
(77)
(78)
Porównując (69) z (76), (77) i (78) można stwierdzić, że parametry predyktora
uzyskane metodą bezpośrednią i za pomocą rekursywnego algorytmu Levinsona
są jednakowe.
13




.



2.4.2
Model MA(1) o znanych parametrach
Podamy teraz przykład znajdowania dwu kolejnych próbek pobudzenia d0 i d1
modelu MA(1) o parametrach b0 = 1 i b1 = 1 jak na rysunku 2. Jak wynika
z rysunku trzy kolejne próbki przebiegu wyjściowego yi ; i = 0, 1, 2 są opisane
układem zależności
i = −1, −2, . . .
di
=
0;
y0
=
b0 d0 + n0
y1
=
b0 d1 + b1 d0 + n1
y2
=
b1 d1 + n2
yi
=
0;
oraz
i = 2, 3, . . .
(79)
i = −1, −2,
i = 3, 4, 5, . . .
gdzie ni ; i = 0, 1, 2 są nieznanymi próbkami szumu addytywnego o zerowej
d0
d1
z −1
b0
b1
P
y0
n0
Rysunek 2: Ilustracja do modelu MA(1)
wartości oczekiwanej, niezależnego od również nieznanych próbek wyjściowych
d0 i d1 . Estymaty próbek d0 i d1 oznaczamy odpowiednio przez dˆ0 i dˆ1 i uzyskamy
z (79) przez pominięcie szumu i przepisanie (79) jako
Ax = y
(80)
gdzie
x=
d0
d1

;
b0
A =  b1
0

0
b0  ;
b1


y0
y =  y1 
y2
Oznaczmy przez


b0
x 1 =  b1 
0


0
x2 =  b0 
b1
aproksymantę ya wektora y możemy wyrazić jako ya = d0 x1 + d1 x2 . Wykorzystując iloczyn skalarny (??), rozwiązanie w sensie kryterium najmniejszych
kwadratów względem niewiadomych d0 i d1 przy znanym przebiegu wyjściowym
modelu i y0 , y1 , y2 jest określone z oczywistej zależności
−1 d1
r0 r1
g2
=
(81)
d2
r1∗ r0
g1
14
gdzie
r0
=
|b0 |2 + |b1 |2
r1
=
b0 b1
g1
=
b∗0 y0 + b∗1 y1
g2
=
b∗0 y1 + b∗1 y2 .
(82)
Rozwiązanie (82) może być rekursywne przy wykorzystaniu algorytmu Levinsona w postaci
g1
b1,1 =
r0
r1
φ1,1 =
r0
(83)
g2 − r1 b1,1
ˆ1
α2,2 =
=
d
r0 − r1 φ∗1,1
α2,1 = b1,1 − b2,2 φ∗ = dˆ0
1,1
Niech dla przykładu trzy kolejne próbki przebiegu wyjściowego modelu MA są
dane jako
y0 = 0,8; y1 = 0,1; y2 = −1,1
(84)
Wtedy wielkości r0 , r1 oraz g1 , g2 wyznaczone są z definicji (82) i wynoszą
odpowiednio
r0 = 2; r1 = 1; g1 = 0,9; g2 = −1.
(85)
Tak więc niewiadome dˆ0 i dˆ1 można wyznaczyć jako
α1,1
=
φ1,1
=
α2,2
=
α2,1
=
0,9
2 = 0,45
1
2 = 0,5
−1 − 0,45
= −0,966 = d1
2 − 0,5
2,9
0,45 +
= 0,933 = d0 .
6
(86)
Wartości liczbowe (84) wybrane w tym przykładzie odpowiadają słabemu szumowi. Wynikiem tego jest rozwiązanie najmniejszych kwadratów (86) pomijające szum, a jednocześnie mimo to bliskie niezaszumionym wartościom pobudzenia
modelu MA(1), tj. d0 = 1 i d1 = 1.
3
Algorytm faktoryzacji Choleskiego-Banachiewicza
W wprowadzeniu równań Yule’a-Walkera danym przez (10) zakłada się, że szereg czasowy {Yt } jest stacjonarny. Z tego założenia wynika, że macierz autokorelacyjna RM określona przez (18) jest macierzą Toeplitza. Postać macierzy RM
prowadzi do prostego, rekursywnego względem rzędu m = 1, 2, . . . , M algorytmu
Durbina zwanego też algorytmem Levinsona-Durbina, służącego do odwracania
macierzy autokorelacyjnej, a tym samym przydatnego do określania parametrów
predyktora.
Jeżeli szereg czasowy {Yt } nie jest stacjonarny, algorytm Durbina nie może
być stosowany. W tym przypadku do określenia parametrów predyktora można
15
zastosować rozkład na pierwiastki kwadratowe nieujemnie określonej macierzy
autokorelacyjnej, zwane powszechnie dekompozycją pierwiastkową, faktoryzacją
Choleskiego [73, 48, ?] lub faktoryzacją Choleskiego-Banachiewicza.
Załóżmy, że błąd fi dla obserwacji i jest dany wzorami (5) i (6). Błąd średniokwadratowy jest określony ponownie zgodnie z zależnością (3), zaś założenie
niestacjonarności szeregu czasowego {Yi } prowadzi do uogólnienia wzoru (7) do
postaci
M X
M
X
∗
σM =
am a∗j E(Yi−m Yi−j
).
(87)
m=0 j=0
Jeżeli momenty drugiego rzędu szeregu czasowego {Yi }, czyli współczynniki autokorelacyjne zdefiniujemy w przypadku niestacjonarnym jako dwuindeksowe
wielkości
∗
rmj = E(Yi−m Yi−j
)
(88)
wtedy błąd średniokwadratowy może być wyrażony jako
σM =
M X
M
X
am a∗j rmj .
(89)
m=0 j=0
Minimalizacja σM względem parametrów predyktora ai prowadzi do równań
normalnych postaci
M
X
am rml = −r0l ;
l = 1, 2, . . . , M.
(90)
m=1
Układ równań (90) może być wyrażony w formie macierzowej jako
RM aM = −rM
(91)
gdzie

RM
aM
rM

r11 r12 . . . r1M
 r21 r22 . . . r2M 

= 
 ...................... 
rM 1 rM 2 . . . rM M
=
=
[a1 , a2 , . . . , aM ]T
[r01 , r02 , . . . , r0M ]
(92)
T
(93)
∗
Z (88) można zauważyć, że rmj = rjm
tak, że macierz autokorelacyjna (91) czyli
RM = RH
jest
symetrycznie
sprzężona,
tj. jest macierzą Hermite’a. Macierz
M
autokorelacyjna RM jako macierz Hermite’a może być przedstawiona w postaci
iloczynu dwu macierzy wzajemnie sprzężonych i transponowanych
RM
SM
= SM SH
 M
s11
0
 s21 s22

= 
...............
sM 1 sM 2 . . .
16
(94)




sM M
(95)
jest macierzą trójkątną dolną zwaną często pierwiastkiem kwadratowym macierzy hermitowskiej i dlatego iloczyn (94) nazywany jest faktoryzacją lub dekompozycją pierwiastkową (quare root factorization). Definiując wektor obserwacji szeregu czasowego jako yM = [y1 , y2 , . . . , yM ]T elementy macierzy trójkątnej mogą być wyznaczone poprzez następujące rozwinięcie formy kwadratowej
H
yM
RM y M = y M RH
M yM
H
∗
yM
RM yM
=
M X
M
X
rij yi yj∗
i=1 j=1
= r1 |y1 |2 +
M
X
rij y1 yj∗ +
j=2
M
X
ri1 yi y1∗ +
i=2
M X
M
X
rij yi yj∗
(96)
i=2 j=2
M
M M
M
X
1/2
rj1 2 X rj1 2 X X
yj −
y
+
rij yj∗
= r11 y1 +
j
1/2
r
11
r
j=2
i=2 j=2
j=2
11
Ostatecznie (96) może być uproszczone do postaci
T
yM
RM yM = |v1 |2 +
M X
M
X
rij yi yj∗ − ai1 a∗j1 yi yj∗
(97)
i=2 j=2
gdzie
1/2
a11 = r11 ;
aj1 =
rj1
;
s11
v1 =
M
X
a j yj
j=1
(2)
przy czym j = 2, . . . , M . Jeśli zdefiniujemy rij jako
(2)
rij = rij − si1 sj1 ;
i, j = 2, . . . , M
(98)
to wyrażenie (97) może być przepisane w innej postaci, tak, że
T
∗
yM
RM y M
= v1 +
M X
M
X
(1)
rij yi yj∗
(99)
i=2 j=2
Powtórzenie postępowania (97–99) przez dalsze M − 1 kroków prowadzi do postaci
M
X
T
∗
yM
RM y M
=
|v1 |2
(100)
i=1
gdzie
vj =
M
X
sji yj ;
i = 1, 2, . . . , M
(101)
(j) 1/2
;
sjj = rjj
j = 1, 2, . . . , M
(102)
j=1
(1)
rij
= ri
(103)
(j)
skj =
(j+1)
rik
rkj
sij
(j)
; i = 1, 2, . . . , M ; j = 1, 2, . . . , M ; k = j + 1, . . . , M
= rik − sij s∗kj ;
k = j + 1, . . . , M ;
17
i = k, . . . , l, . . . , M.
(104)
(105)
Wyrażenie (100) może być przedstawione w postaci macierzowej jako
T
∗
T ∗
yM
RM y M
= vM
vM
H
H
lub yM
RM yM = vM
vM
(106)
gdzie
vM = [v1 , v2 . . . . , vM ]T
(107)
Z (101) można zauważyć, że vM może być wyrażone w postaci macierzowej, tak
że
vM = ST
(108)
M yM
Stąd (??) przyjmuje postać
T
∗
T
∗
yM
RM yM
= yM
SM SH
M yM
(109)
RM = SM SH
M
(110)
skąd
przy czym elementy macierzy trójkątnej SM zdefiniowane są zależnościami (102–
105). Podstawienie (94) do (90) prowadzi do pary równań macierzowych postaci
SH
M aM
=
cM
(111)
SH
M cM
=
−rM
(112)
gdzie wektor pomocniczy ma postać
cM = [c1 , . . . , cM ]T .
(113)
Równanie (112) może być rozwiązane rekursywnie w następujący sposób. Rozpatrzmy postać macierzy trójkątnej dolnej SM . Z pierwszego wiersza (112) mamy
c1 = −
r01
s11
(114)
zaś z drugiego wiersza (112) otrzymujemy
s21 c1 + a22 c2 = −r02
(115)
co daje
r02 + c1 s21
.
s22
W ogólności j-ty wiersz daje wzór na cj w postaci
c2 =
(116)
j−1
cj =
X
−1 r0j +
ci sji ;
sjj
i=1
j = 1, 2, . . . , M.
(117)
Podobnie równanie (111) może być rozwiązanie rekursywne zaczynając od ostatniego wiersza
aj =
M
X
1 cj +
s∗ij ai ;
ajj
i=j+1
j = M, M − 1, . . . , 1.
(118)
Definicje (102–105) oraz wyniki (114–118) razem wzięte stanowią algorytm nazywany alorytmem faktoryzacji (dekompozycji) Choleskiego-Banachiewicza [148,
26].
18
Rozważmy teraz przykład odwracania zespolonej macierzy autokorelacji niestacjonarnego szeregu czasowego {Y1 , Y2 }. Załóżmy, że macierz
1 j
R2 =
−j 2
Elementy macierzy S2 mogą być wyznaczane z definicji (102–105) jako
1/2
s11
= r11 = 1
s21
=
r22
(2)
=
s22
=
(1)
r21
−j
r21
=
=
= −j
s11
s11
1
(1)
r22 − s21 s∗21 = r22 − s21 s21 = 2 − (−j)j = 1
(2) 1/2
r22
=1
zauważmy, że
S2 SH
2
=
1
−j
0
1
j
1
1
0
=
1
−j
j
2
= R2 .
Załóżmy, że r2 = [1 2]T , wtedy
4
c1 =
−1
1
a2 =
−j−2
1
= −1;
c2 =
= −j − 2;
−1
1 [2
− 1(−j)] = −j − 2
a1 = 11 [−1 − j(−j − 2)] = −2 + 2j.
Numeryczne algorytmy estymacji autokorelacji
W poprzednich punktach używano wartości oczekiwanych, czyli średnich po
zbiorze wszystkich relacji do zdefiniowania zarówno ciągów jak i macierzy autokorelacyjnych, zaś przy obliczaniu parametrów predyktora zakładano, że współczynniki autokorelacyjne są znane. Jednakże w przypadku, gdy dysponujemy
tylko obserwacją, tj. z reguły pojedynczą, skończoną, realizacją badanego szeregu czasowego, estymaty współczynników autokorelacyjnych wyznaczane są przy
wykorzystaniu uśredniania po czasie. Szczególnie w przypadku długich obserwacji, w celu zwiększenia efektywności i zmniejszenia kosztów numerycznych
estymatorów, po to, aby skrócić czas uśredniania czyli ograniczyć liczbę próbek
w obserwacji niezbędnych do uzyskania dobrej estymaty stosuje się okienkowanie [137]. Przyjęcie niektórych kształtów okienek może doprowadzić do uzyskania takiej postaci estymaty macierzy autokorelacyjnej, która nie jest macierzą
Toeplitza lub nie jest nawet dodatnio określona. Przedstawimy tutaj cztery podstawowe metody estymacji autokorelacji. Poprzedzimy to wyprowadzeniem równań Yule’a-Walkera, w których wartości oczekiwane będą zastąpione średnimi
po czasie z pojedynczej obserwacji {yi }; i = 1, 2, . . . , N .
Z definicji (2) i (4) mamy
ŷi
=
M
X
αm yi−m
(119)
m=1
fi
= yi − ŷi ;
19
i = 1, 2, . . . , N.
(120)
Sumę kwadratów modułów błędów predykcji będziemy dalej nazywać energią
ciągu błędów lub przebiegu błędów {fi }.
ε2M =
X
|fi |2 =
i
M
X
X
2
yi −
αm yi−m .
(121)
m=1
i
Popularnymi estymatami błędu średniokwadratowego MSE czyli mocy błędów
szeregu czasowego {Fi } są
ε2
2
σM
(122)
= M
N
oraz
ε2M
2
σM
=
.
(123)
N −1
Minimalizacja ε2M poprzez różniczkowanie lub wykorzystanie zasady ortogonalności prowadzi do zależności
M
X
αm
m=1
X
∗
yi−m yi−l
=
i
X
∗
yi−m yi−l
;
l = 1, 2, . . . , M.
(124)
i
Załóżmy, że dysponujemy nieskończoną obserwacją {yi } tylko dla i = 1, 2, . . ..
Formalnie oznacza to, że yi = 0; i = 0, −1, . . .. Zdefiniujmy pojęcie autokorelacji
czasowej takiej obserwacji
ρml ≡
M
X
∗
yi−m yi−l
;
m, l = 1, 2, . . .
(125)
i=1
Łatwo sprawdzić, że
ρml = ρm+1,l+1 ;
(126)
tak więc wielkość zdefiniowana w (125) może być traktowana jako jednoindeksowa ρl−m = ρml . Innymi słowy, macierz autokorelacji czasowej R, zbudowana
z elementów zdefiniowanych w (125) jest macierzą Toeplitza. Rekursywny algorytm Levinsona-Durbina może być wykorzystany do wyznaczenia współczynników predykcji {αm }; m = 1, 2, . . . , M .
Załóżmy teraz, że dysponujemy obserwacją {yi } jedynie dla i = 1, 2, . . . , N .
Formalnie oznacza to, że yi = 0 poza tym podziałem. Ogólną definicję autokorelacji czasowej (125) obserwacji nieskończonej można teraz modyfikować na
cztery różne sposoby poprzez cztery różne kształty okienek. W ten sposób otrzymamy cztery różne estymatory ciągu autokorelacyjnego macierzy autokorelacyjnej, o nazwach nadanych im przez Makhoula [98] i już tradycyjnie stosowanych
w technice i statystyce.
4.1
Metoda autokorelacyjna
Niech okienko będzie zdefiniowane jako i = 1, 2, . . . , N + M . Wtedy
ρml
=
NX
+M
∗
∗
∗
∗
yi−m yi−l
= y1 y1+m−l
+ y2 Y2+m−l
+ · · · + yN +l−m yN
;
i=1
m = l, l + 1, . . . , l + m.
(127)
20
Można sprawdzić, że po takim wyborze okienka
ρml = ρm+1,l+1 = ρl−m ;
l, m = 1, 2, . . . , M.
(128)
Tak więc macierz autokorelacji czasowej R o elementach obliczonych z (127)
jest macierzą Toeplitza, w związku z czym przy wyznaczaniu współczynników
predykcji można stosować algorytm Levinsona-Durbina. Nazwa metody pochodzi stąd, że suma (127) stanowi licznik popularnych estymatorów autokorelacji [137].
4.2
Metoda autokowariancyjna
Zdefiniujmy okienko jako i = M + 1, M + 2, . . . , N . Wtedy
ρml =
N
X
∗
yi−m yi−l
= yM +1 − yM +1−l + yM +2−m yM +2−l + · · · + yN −m yN −l
i=M +1
(129)
Wyrażenie (129) wskazuje, że przy takim okienkowaniu
ρml 6≡ ρl−m .
(130)
Tak więc macierz autokorelacji czasowej R o elementach obliczonych z (129) nie
jest macierzą Toeplitza i algorytm Levinsona-Durbina nie może być stosowany
do znajdowania współczynników predykcji. Nazwa metody pochodzi stąd, że
suma (129) jest licznikiem tzw. obciążającego estymatora autokowariancji [98].
4.3
Dwie metody z okienkowaniem jednostronnym
Poza niewątpliwie najpopularniejszymi metodami estymacji ciągu i macierzy
autokorelacyjnej jakimi są metoda autokorelacyjna i autokowariancyjna w niektórych zastosowanich przydatne są metody z okienkowaniem jednostronnym.
I tak, jeśli chcemy zaznaczyć formalnie zastąpienie zerami tylko tych próbek
obserwacji, które wystąpiły przed chwilą i = 1, obieramy okienko zwane odpoczątkowym i = 1, 2, . . . , N . Wtedy
ρml =
N
X
yi−m yi−l .
(131)
i=1
Podobnie, jeśli chcemy formalnie zaznaczyć zastąpienie zerami tylko tych próbek
obserwacji, które występują po chwili i = N obieramy okienko zwane odkońcowym i = M + 1, M + 2, . . . , M + N . Wtedy
ρml =
M
+N
X
yi−m yi−l .
(132)
i=M +1
Obie metody, tj. metoda okienkowania odpoczątkowego (ang.: prewindowing
method ) i metoda okienkowania odkońcowego (ang.: postwindowing method )
dają nietoeplitzowską estymatę macierzy autokorelacyjnej. Tak więc, z czterech przedstawionych powyżej metod estymacji tylko metoda autokorelacyjna
prowadzi do możliwości zastosowania algorytmu Levinsona-Durbina, w którym
wymagany jest toeplitzowski charakter macierzy R.
21
5
Predykcja wstecz i predykcja w przód
5.1
Sformułowanie problemu
Predyktor „ jednokierunkowy” dokonujący tylko predykcji w przód czyli prognozy (z ang.: ahead predictor ) przedstawiony w punktach 1 i 2 może być rozszerzony do predyktora dwukierunkowego – dokonującego predykcji wstecz i w przód.
Predyktor ten poza prognozą dokonuje również predykcji wstecz (z ang.: backward predictor ) czyli reminiscencji. Przedstawimy teraz dwa różne predyktory.
Pierwszy z nich jest bezpośrednim uogólnieniem algorytmu Levinsona-Durbina dla zadanego ciągu autokorelacyjnego. Drugi algorytm zaproponowany przez
Burga [32] i noszący jego imię pozwala na estymację parametrów predyktora
bezpośredniego w oparciu o samą obserwację bez konieczności czynienia założeń
o okienkach, gdyż nie wymaga on uprzedniej estymacji ciągu autokorelacyjnego. W obu algorytmach zakłada się, że obserwacja którą dysponujemy należy
do stacjonarnego szeregu czasowego, co w konsekwencji prowadzi do wykorzystania w obu przypadkach rekursji Levinsona, a tym samym do rekursywnych
estymatorów parametrów predyktora.
Jak poprzednio błąd fi predyktora w przód w i-tym kroku jest kombinacją
liniową bieżącej i M poprzednich próbek obserwacji (rys. 3)
fi =
M
X
am yi−m ;
i = M + 1, . . . , N.
(133)
m=0
yi
z −1
yi−1
z −1
−a1
yi−2
z −1
yi−M
−a2
−aM
P
P
y
-
−1
P
fi
Rysunek 3: Błąd predyktora w przód
W wyrażeniu tym wskaźnik czasowy przybiera tylko te wartości, dla których odpowiedź predyktora rzędu M ma sens (tj. jest oparta o M poprzednich próbek)
i obserwacja istnieje. Tak więc zakładamy
a0 = 1
i y0 = 0;
i = 0, −1, . . . ; i = N + 1, N + 2, . . .
22
Jako definicję energii przebiegu błędu {fi } przyjmujemy sumę wszystkich kwadratów błędów
N
X
ε2M,N =
|fi |2 .
(134)
i=M +1
Ponieważ przyjęliśmy, że dostępna obserwacja {yi }, i = 1, 2, . . . , N , należy do
stacjonarnego szeregu czasowego, parametry predyktora {am } mogą być wyznaczone zgodnie z rekursją rzędu Levinsona (30)
aM,k = aM −1,k + aM,M a∗M −1,M −k ;
k = 1, 2, . . . , M − 1
(135)
gdzie aM,M jest nazywany współczynnikiem odbicia. Podstawiając (135) do
(134) energię błędu εM,N można wyrazić jako
ε2M,N =
N
−1
M
M
2
X
X
X
aM −1,m yi−m + aM,M
a∗M −1,M −m yi−m .
i=M +1 m=0
(136)
m=1
Występujące w tym wzorze dwie sumy mają prostą interpretację. Są to: błąd
predykcji w przód fi,M −1 i błąd predykcji wstecz bi−1,M −1 , tj. po (M − 1)-szym
kroku rekursji błędu predyktora rzędu (M − 1)-go zdefiniowane następująco
fi,M −1
=
M
−1
X
aM −1,m yi−m ;
i = M + 1, M + 2, . . . , N
(137)
m=0
bi−1,m−1
=
M
X
aM −1,M −m yi−m ;
i = M + 1, M + 2, . . . , M. (138)
m=1
gdzie parametry predyktora wstecz są, jak widać, sprzężone z odpowiednimi
parametrami predyktora w przód.
Relacje pomiędzy parametrami predyktora w przód i wstecz mogą być także wyznaczone jako wynik minimalizacji mocy szeregów czasowych reprezentujących przebiegi błędów predykcji rzędu M w przód i wstecz, czyli szeregów
czasowych {Fi,M } i {Bi,M }. Moce te, czyli błędy średniokwadratowe
σf2 m
2
σbM
= E|Fi,M |2
= E|BM −1,M |
(139)
2
(140)
są wariancjami zmiennych losowych reprezentujących błąd predykcji w przód
w chwili i
M
X
fi,M =
aM,m yi−m ; i = M + 1, M + 2, . . . , N
(141)
m=0
i błąd predykcji wstecz w chwili M − i
bM −i,M =
M
X
cM,m yi+m ;
i = 1, 2, . . . , N − M
(142)
m=0
przy czym {aM,m } i {cM,m } są odpowiednio parametrami predyktorów rzędu M
w przód i wstecz. Minimalizacja σf2 M względem {aM,m } prowadzi do układu
równań
M
X
aM,m rl−m = 0; l = 1, 2, . . . , M
(143)
m=0
23
2
Podobnie minimalizacja σbM
względem {cM,m } daje
M
X
cM,m rl−m = 0;
l = 1, 2, . . . , M.
(144)
m=0
Układ równań (144) jest identyczny jak (143) z tym, że w (144) parametry
{cM,m } są sprzężone w parametrami {aM,m }. Ponieważ cM,m = a∗M,m ; m =
1, 2, . . . , M , zamiast (142) można zapisać
bM −1,M =
M
X
a∗M,m yi+m ;
i = 1, 2, . . . , N − M.
(145)
m=0
Z założenia szereg czasowy, którego realizacją jest obserwacja {yi } jest stacjonarny. W zapisie optymalnych wartości {aM,m }, m można zastąpić przez M −m.
Wtedy błąd predykcji wstecz może być zapisany w postaci
bM +i,M =
M
X
a∗M,M −m yM +i−m ;
i = 1, 2, . . . , N − M
(146)
i = M + 1, M + 2, . . . , N.
(147)
m=0
lub
bi,M =
M
X
a∗M,M −m yi−m ;
m=0
Zależność (147) jest więc identyczna jak (??). Wyniku tego należało się spodziewać, gdyż badany szereg czasowy {Yi } jest z założenia stacjonarny.
5.2
Lattice minimalizujący moc błędu
Wychodząc z kryterium minimum błędu średniokwadratowego (minimum mocy szeregu czasowego reprezentującego stacjonarny przebieg błędów) wyprowadzimy teraz strukturę (filtr) realizujący optymalną predykcję liniową w przód
i wstecz jednocześnie. Skorzystamy z głównego wyniku poprzedniego podpunktu. Parametry predyktora ze ze wzorów (141) i (147) mogą być wyznaczone rekursywnie przy wykorzystaniu algorytmu Levinsona-Durbina, jeżeli znany jest
ciąg autokorelacyjny lub jego estymata. Kaskadowa struktura zwana lattice
powstaje z powiązania predyktorów w przód i wstecz [102]. Błąd predyktora
w przód ze wzoru (141) po wstawieniu do niego (135) może być zapisany w postaci
M
−1
M
X
X
fi,M =
aM −1,m yi−m + aM,M
a∗M −1,M −m yi−m .
(148)
m=0
m=1
Otrzymaną zależność można uprościć do postaci
fi,M = fi,M −1 + aM,M bi−1,M −1
(149)
gdzie fi,M −1 i bi−1,M −1 są dane wzorami (137) i (138). Podobnie błąd predyktora wstecz w (147) może być zapisany jako
bi,M
=
M
X
a∗M −1,M −m yi−m + a∗M,M
m=1
M
−1
X
aM −1,m yi−m
m=0
= bi−1,M −1 + a∗M,M fi,M −1 .
24
(150)
Po podstawieniu
a∗M,M −m = a∗M −1,M −m + a∗M,M aM −1,m ;
m = 1, 2, . . . , M − 1
(151)
do (147). Równocześnie spełnionej parze zależności (149) i (150) można nadać
prostą interpretację graficzną. Na rysunku 4 przedstawiono kaskadową L-ogniową
strukturę zwaną lattice. Każde ogniwo zawiera element opóźniający z −1 , dwa
multiplikatory i dwa sumatory. Wejście do takiej struktury, którą można traktować zarówno jak filtr hardwarowy jaki i schemat graficzny, stanowi przebieg
{yi } przy czym fi,0 = yi oraz bi,0 = yi . Na dwu wyjściach lattice’u otrzymuje się
błędy predykcji wstecz i w przód predyktora rzędu L. Można łatwo wyprowadzić
wyrażenie, które nadaje współczynnikom odbicia aM,M jednoznaczną interpretację probabilistyczną. Błąd średniokwadratowy predyktora w przód ma postać
2 2
2
σM
(152)
= E fi,M = E fi,M −1 + aM,M bi−1,M −1 Przypomnijmy, że minimalizacja (152) względem aM,M prowadzi do wyrażenia
aM,M =
−E(fi,M −1 b∗i−1,M −1 )
.
E(|bi−1,M −1 |2 )
(153)
Zależność ta, z uwagi na stacjonarność szeregu czasowego {Yi }, a więc równość
błędów średniokwadratowych predykcji w przód i wstecz może być zapisana
w postaci symetrycznej
aM,M =
−E(fi,M −1 b∗i−1,M −1 )
1
2
2 E(|fi,M −1 |
+ |bi−1,M −1 |2 )
.
(154)
Tak więc współczynnik aM,M jest wziętym ze znakiem minus unormowanym
współczynnikiem autokorelacji pomiędzy zmiennymi losowymi Fi,M −1 i Bi−1,M −1
reprezentującymi błąd predykcji w przód i błąd predykcji wstecz predyktora
rzędu M − 1. Z tego powodu −aM,M nazywa się współczynnikiem korelacji
cząstkowej (PARCOR od ang.: partial correlation).
5.3
Lattice minimalizujący energię błędów. Algorytm Burga
Burg [32, ?] zaproponował algorytm estymacji parametrów predyktora bezpośrednio w oparciu o obserwację bez konieczności uprzedniej estymacji ciągu autokorelacyjnego. Nie wprowadza on żadnych założeń dotyczących zachowania się
analizowanego procesu poza przedziałem obserwacji, poza założeniem, że obserwacja, którą dysponujemy jest realizacją stacjonarnego szeregu czasowego {yi },
i = 1, 2, . . . , N . Wykorzystując zależności (141) i (150) można obliczyć energię
błędów predykcji wstecz i w przód. Energie te dla predyktora rzędu M mogą
być wyrażone w postaci
ε2f M,N
=
N
X
|fi,M |2 =
i=M +1
ε2bM,N
=
N
X
i=M +1
N
X
|fi,M −1 + aM,M bi−1,M −1 |2
(155)
|bi,M −1 + a∗M,M fi−1,M −1 |2
(156)
i=M +1
|bi,M |2 =
N
X
i=M +1
25
gdzie i = M + 1, M + 2, . . . , N . Ponieważ {yi } jest realizacją stacjonarnego
szeregu czasowego, więc całkowita energia błędów może być wyznaczona poprzez
uśrednienie energii błędów predykcji wstecz i w przód.
ε2M,N
2
1 2
2 (εf M,N + εbM,N ) =
N
X
1
(|fi,M −1 + aM,M bi−1,M −1 |2
2
i=1
=
=
(157)
+ |bi−1,M −1 + aM,M fi,M −1 |2 ).
Aby znaleźć estymatę parametrów predyktora najlepszą w sensie najmniejszych
kwadratów, czyli estymatę minimalizującą energię ε2M,N względem współczynnika odbicia aM,M należy przyrównać do zera
∂ε2M,N
= 0.
∂aM,M
Równanie równania (158) przyjmuje postać
PN
−2 i=M +1 fi,M −1 b∗i−1,M −1
aM,M = PN
.
2
2
i=M +1 (|fi,M −1 | + |bi−1,M −1 | )
(158)
(159)
Oznaczmy przez DM −1 mianownik (159), który jest całkowitą energią błędu
predyktora rzędu M − 1
N
X
DM −1 =
(|fi,M −1 |2 + |bi−1,M −1 |2 ) = 2ε2min M −1,N
(160)
i=M +1
gdzie ε2min M −1,N jest energią błędów każdego z predyktorów jednokierunkowych
rzędu M − 1.
W ogólności, zastosowanie sumowania po czasie powoduje, że energia błędów
predykcji w przód jest różna od energii błędów predykcji wstecz. Rekursywny
przepis na obliczanie mianownika estymaty aM,M można uzyskać w następujący
sposób. Podstawiając rekursję na fi,M −1 oraz bi−1,M −1 do (160) można zapisać
DM −1 w postaci
DM −1
=
N
X
(|bi−2,M −2 + a∗M −1,M −1 fi−1,M −2 |2 ) +
i=M +1
+
N
X
(|fi,M −2 + aM −1,M −1 bi−1,M −2 |2 )
i=M +1
=
N
X
+(|bi−1,M −2 + aM −1,M −1 fi,M −2 |2 ) +
i=M +1
+
N
X
(|fi,M −2 + aM −1,M −1 bi−1,M −2 |2 ).
(161)
i=M +1
Dodanie dwóch ostatnich wyrażeń w (161) pozwala na wywikłanie współczynnika odbicia aM −1,M −1 z DM −1 w następującym przekształceniu
DM −1
=
− |bN −1,M −2 + aM −1,M −1 fM,M −2 |2 +
26
− |fM,M −2 + aM −1,M −1 bN −1,M −2 |2 +
+
N
X
(|bi−1,M −2 | + aM −1,M −1 fi,M −2 |2 ) +
i=M
+ |fi,M −2 + aM −1,M −1 bN −1,M −2 |2 )
=
− |fM,M −1 |2 − |bN,M −1 |2 +
+
+
N
X
(1 + |aM −1,M −1 |2 )(|fi,M −2 |2 +
i=M
∗
|bi−1,M −1 | ) + 2aM −1,M −1 fi,M
−2 bi−1,M −2
∗
∗
2aM −1,M −1 fi,M −2 bi−1,M −2 .
2
+
(162)
W oparciu o wzór (159) zapiszemy podobnie wyrażenie na aM −1,M −1
aM −1,M −1
=
=
−2
PN
PN
i=M +1
fi,M −2 b∗i−1,M −2
2
2
i=M |fi,M −2 | + |bi−1,M −2 |
PN
−2 i=M fi,M −2 bi−1,M −2
DM −2
.
(163)
Podstawiając (163) do (162) otrzymujemy wzór na wyrażenie DM −1 przez DM −2
DM −1 = −f |fM,M −1 |2 − |bM,M −1 |2 + (1 − |aM −1,M −1 |2 )DM −2 .
(164)
Ostatnie dwa wzory można w opisany tu sposób przepisać dla wszystkich m =
M, M − 1, . . . , 1; wykorzystanie ich w odwrotnej kolejności stanowi algorytm
Burga. Przy inicjalizacji algorytmu Burga przyjmuje się M = 0 oraz następujące
wartości początkowe dla a0,0 , fi,0 oraz bi,0
a0,0 = 1;
fi,0 = bi,0 = yi ;
i = 1, 2, . . . , M.
(165)
Dla M = 1 czyli dla predyktora pierwszego rzędu a1,1 wyznaczone jest w algorytmie Burga jako
PN ∗
−2 i=2 yi−1
yi
(166)
a1,1 =
D0
gdzie
D0 =
N
X
|yi |2 + |yi−1 |2 = 2ε2min 0,N .
(167)
i=2
Predyktor o strukturze lattice przedstawiony na rysunku 4 może być uzyskany również, jak widać z powyższych wywodów, wychodząc z kryterium deterministycznego (najmniejszych kwadratów) według algorytmu Burga. W takim
przypadku często wyznaczony w ten sposób lattice nazywany jest LS-lattice (od
ang.: least-squares lattice – LSL)
Rysunek 4: [[uzupełnić!!]]
Rozpatrzmy teraz prosty przykład. Załóżmy, że dysponujemy obserwacją
{yi }; i = 1, 2, . . . , N oraz, że yi = 0 poza przedziałem obserwacji. Przedstawiona w punkcie 4 metoda autokorelacyjna może być wykorzystana do wyliczenia
27
pierwszych dwu wyrazów ciągu autokorelacji cząstkowej.
ρ0
=
N
X
|yi |2
(168)
i=1
ρ1
=
N
−1
X
yi+1 yi∗
(169)
i=1
Algorytm Levinsona-Durbina dla predyktora pierwszego rzędu prowadzi do rozwiązania (24), z którego wynika następujący wzór na współczynnik predykcji
α1,1 =
ρ1
=
ρ0
PN −1
i=1 yi+1 yi
PN 2
i=1 yi
(170)
Natomiast algorytm Burga (166–167) prowadzi do innego rozwiązania na współczynniki predykcji
PN
∗
yi yi−1
α1,1 = PN i=2
.
(171)
2
2
i=2 |y1 | + |yi−1 |
Ze wzorów (170) i (171) wynika, że przy zastosowaniu algorytmów Levinsona-Durbina uzyskamy inne rozwiązanie niż przy zastosowaniu algorytmu Burga.
Następujący prosty przykład liczbowy zilustruje różnice wynikające z różnego
działania algorytmów.
5.4
Przykład zastosowania algorytmu Levinsona-Durbina
i algorytmu Burga
Przyjmijmy, że M = 3 i N = 5, tj. dysponujemy obserwacją składającą się
z pięciu próbek i zastosujemy predyktor trzeciego rzędu.
5.4.1
Algorytm Levinsona-Durbina
Przy zastosowaniu algorytmu Levinsona-Durbina wymagana jest znajomość współczynników autokorelacji czasowej, które można wyznaczyń wykorzystując metodę autokorelacyjną przedstawioną w punkcie 4.1 jako
ρ0
=
8
X
yi2 = 55;
ρ1 =
i=1
ρ3
=
8
X
8
X
yi−1 yi = 40;
i=1
ρ2 =
8
X
i=1
yi−3 yi = 14.
i=1
28
yi−2 yi = 26;
Parametry predyktora i minimalne energie błędów można wyznaczyć następująco
ρ1
a1,1 = − = 0,72727; a1,0 = 1
ρ0
ε2min 1 = ρ0 (1 − a21,1 ) = 25,909
−ρ2 − a1,1 ρ1
= 0,11929
ε2min 1
= a1,1 + a2,2 a1,1 = −0,81403
a2,2 =
a2,1
ε2min 2 = ε2min 1 (1 − a22,2 ) = 25,5403
−a2,0 ρ3 − a2,1 ρ2 − a2,2 ρ1
= 0,093702
ε2min 2
= a2,2 + a3,3 a2,1 = 0,04301
= a2,1 + a3,3 a2,2 = 0,80285
a3,3 =
a3,2
a3,1
ε2min 3 = ε2min 2 (1 − a23,3 ) = 25,316
gdzie ε2min i ; i = 1, 2, 3 oznacza minimalną energię błędów predykcji dla predyktorów rzędu i obliczoną po całej obserwacji. Indeks N = 5 został w powyższych
wzorach pominięty dla uproszczenia zapisu. Z przytoczonych obliczeń można
wyznaczyć wartość próbki ŷ5 . Predykacja liniowa z wykorzystaniem predyktora
rzędu trzeciego prowadzi do zależności
ŷ5 =
3
X
αi y5−i = −
i=1
3
X
a3,i y5−i = 2,895.
i=1
Jeżeli zastosujemy predyktor drugiego rzędu to wartości ŷ5 i ŷ1 mogą być wyznaczone poprzez predykcję w przód i wstecz odpowiednio jako
ŷ5
=
2
X
αi y5−i = −
=
2
X
a2,1 y5−i = 2,8983
i=1
i=1
ŷ1
2
X
αi y1+i = 1,27.
i=1
5.4.2
Algorym Burga
W celu wyznaczenia wartości współczynników predykcji, mocy błędów oraz estymat ŷ5 i ŷ1 można także zastosować algorytm Burga. W pierwszym kroku
algorytmu wyznacza się współczynnik
P5
2 i=2 yi yi−1
80
α1,1 =
=
= 0,9524
D0
84
gdzie
D0 =
5
X
(yi + yi−1 ) = 84.
i=2
Współczynnik odbicia a2,2 dany jest w tym przypadku wzorem
a2,2 =
2
P5
fi,1 bi−1,1
= 0,9575
D1
i=3
29
gdzie
f2,1
f3,1
f4,1
f5,1
= y2 + a1,1 y1
= y3 + a1,1 y2
= y4 + a1,1 y3
= y5 + a1,1 y4
b2,1
b3,1
b4,1
b5,1
= 1,0476
= 1,0952
= 1,1428
= 1,1908
= y1 + a1,1 y2
= y2 + a1,1 y3
= y3 + a1,1 y4
= y4 + a1,1 y5
= −0,9048
= −0,8572
= −0,8096
= −0,7620
oraz
2
D1 = f2,1
− b22,1 + (1 − a21,1 )D0 = 6,13.
Parametr predyktora a2,1 wyznacza się jako
a2,1 = a1,1 + a2,2 a1,1 = −0,9525 · 1,9575 = −1,8637.
Następnie wyznacza się energię
ε2min 0 = 0,5D0 = 42;
ε2min 1 = 0,5D1 = 3,065;
ε2min 2 = 0,5D2 = 0,17415
gdzie b5,2 = b4,1 + a2,2 f5,1 = 0,3306, f3,2 = f3,1 + a2,2 b2,1 = 0,2289, D2 =
2
−f3,2
− b25,2 + (1 − a22,2 )D1 = 0,3483.
Jeżeli zastosuje się algorytm Burga do estymacji parametrów predyktora
rzędu drugiego, to estymaty ŷ5 i ŷ1 wynoszą odpowiednio
ŷ5
= −
2
X
a2,1 y5−i = 4,5823
i=1
ŷ1
= −
2
X
a2,1 y1+i = 0,8549
i=1
Wartości tych estymat oraz energie błędów zestawione są w tabeli 2. Z porównania wartości błędów dla algorytmu Levinsona-Durbina i algorytmu Burga
wynika, że algorytm Levinsona-Durbina zapewnia predyktory jakościowo gorsze niż algorytm Burga. Ponadto w algorytmie Burga nie czyni się żadnych
dodatkowych założeń o wartościach spoza przedziału obserwacji. Tymczasem
do estymacji autokorelacji poprzedzającej użycie algorytmu Levinsona-Durbina
formalnie zakłada się, że wartości y−2 = y−1 = y6 = y7 = y8 = 0; choć spełnienie takiego założenia jest bardzo mało prawdopodobne. Algorytm Burga daje
w szczególności znacznie lepsze wyniki dla krótkich obserwacji. Przy długich
obserwacjach różnica jakości dwóch opisanych tu algorytmów nie jest aż tak
znacząca.
Tabela 2: Zestawienie wartości estymat parametrów predyktora rzędu drugiego i energii błędów. Porównanie dla algorytmu Levinsona-Durbina i algorytmu
Burga
Literatura
[1] Abraham B., Box G.: „Deterministic and forecast-adaptive time dependent models”, Applied Statistics, 27, 1979 1204–1230.
30
[2] Appel D., Brandt A.: „Resursive lattice algorithms with finite duration windows”,
Proc. IEEE International Conference on Acoustics, Speech and Signal Processing
(IC ASSP), Paris 1982, 647–650.
[3] Appelt D., Brandt A.: „Adaptive segmentation of quasistationary AR – time
series”, IEEE Workshop on Applied Time Series Analysis, Munich 1982.
[4] Ahlbom G.: Recursively Updated AR – Models and their Applications to Event
Detection, Ph.D. Diss., Royal Ins. Techn., Telecommunications Theory, Stockholm
1983.
[5] Altschulter S.: „Parameter estimation methods for autoregressive moving average
processes”, Automation and Remote Control, 44, 1983, 979–990.
[6] Anderson B., Moore J.: Optimal Filtering, Prentice-Hall, Englewood Cliffs 1979.
[7] Anderson O. D. (red.): Analysing Time Series, North Holland, Amsterdam 1980.
[8] Anderson O. D. (red.): Time Series, North Holland, Amsterdam 1980.
[9] Anderson O. D. (red.): Time Series Analysis, North Holland, Amsterdam 1982.
[10] Badach A.: „Zastosowanie analizy spektralnej do planowania strategicznego
w Polskiej Żegludze Morskiej”, Wyd. Instytutu Morskiego, Gdańsk 1973.
[11] Badach A.: „Adaptacyjna realizacja predykcji ekonometrycznej”, Zesz. nauk.
Wydz. Ekonom. Prod. UG, Gdańsk 1977.
[12] Badach A.: „Adaptive models in econometric forecasting”, [w:] Dynamic Modelling and Control of National Economies, J. Janssen (red.), Pergamon Press,
Oxford, 271–277.
[13] Badach A.: „Eine Klasse schneller Algorithmen zur Modellierung und Prognose
von Zeitreihen”, UNI Rostock, Sektion Sozialistische Betriebswirtschaft, Rostock,
referat na konferencji 3–11. 09. 1986, Koll. 3.
[14] Badach A.: „Modele autoregresji w analizie sygnałów EEG”, Wydział Telekomunikacji i Elektroniki ATR Bydgoszcz, referat na Krajowej Konferencji na temat
„Przetwarzanie sygnałów w telekomunikacji, sterowaniu i kontroli”, Bydgoszcz
25. 09. 1986.
[15] Badach A.: „Fast algorithms for modelling and prediction of nonstationary dynamic process in case of poor statistical information”, referat na konferencji MACROMODELS 86, Szczyrk 3–5. 12. 1986.
[16] Badach A.: „Autoregressive Modelle und Praediktoren zur Verarbeitung der Zeitreihen in der Technik, Wirtschaft und Biomedizin”, referat na konferencji Requirements Engineering, Gesellschaft fuer Mathematik und Datenverarbeitung,
Bonn 20–22. 05. 1987.
[17] Badach A.: „Autoregressive Modelle zur Zeitreihenanalyse und Vorhersage technologischer und oekonomischer Prozesse und Technik”, Hochschule fuer Bauwesen
und Architektur, referat na konferencji Anwendungen der Mathematik in Ingenieeurwissenschaften, Weimar 29. 06–3. 07. 1987.
[18] Badach A.: „Efficient techniques for time series modelling and prediction”, referat
na Europejskim Kongresie Towarzystwa Ekonometrycznego, Kopenhaga.
[19] Badach A.: „Badanie przemian strukturalnych procesów ekonomiczno-społecznych przy wykorzystaniu metod i algorytmów parametrycznego modelowania
i predykcji szeregów czasowych”, opracowanie w ramach C.P.B.P 10.09.11, Uniwersytet Gdański 1987.
[20] Badach A.: „Fast convergent adaptive lattice algorithms for time series modelling
and prediction”, Adv. in Modelling and Simulation, vol. 11, 1988, 44–51.
31
[21] Basilevsky A.: Applied Matrix Algebra in the Statistical Sciences, North Holland,
Amsterdam 1983.
[22] Basseville M.: Contribution á la Détection Séquentielle de Ruptures de Modèles
Statistiques, Ph.D. Diss., U.E.R. de Mathematiques et Informatique, Rennes 1982.
[23] Brockwell P., Davis R.: Time Series: Theory and Methods, Springer, 1987.
[24] Beran R.: „Adaptive estimates for autoregressive processes”, Annals Inst. Statist.
Math., 28, 1976, 77–89.
[25] Bierman G.: „Measurement updating using the U-D factorization”, Automatica,
12, 1976, 375–382.
[26] Bierman G.: Factorization Methods For Discrete Sequential Estimation, Academic
Press, New York 1977.
[27] Box G., Jenkins G.: Time Series Analysis. Forecasting and Control, Holden Day
1976.
[28] Blauth R.: Fast Algorithms for Digital Signal Processing, Addison-Wesley 1985.
[29] Brown R.G.: Introduction to Random Signal Analysis and Kalman Filtering, Wiley, New York 1983.
[30] Brandt A.V.: Modellierung von Signalen mit sprunghaft veraenderlichem Leistungsspectrum durch adaptive Segmentierung, Ph.D. Diss., Institut fuer Mathematik und Datenverarbeitung der Hochschule der Bundeswehr, Muenchen 1983.
[31] Buckley K., Rao S.: „A comparison of adaptive gradient and adaptive least squares algorithms”, Proc. IC ASSP, Atlanta 1981, 283–286.
[32] Burg J.P.: Maximum Entropy Spectral Analysis, Ph.D. Diss., Geophysics Dept.,
Stanford Univ., 1975.
[33] Burg J.P.: „Maximum Entropy Spectral Analysis” [w:] Modern Spectral Analysis,
IEEE Press, New York 1978, 34–41.
[34] Bunn D.W.: „Recursive estimation of the observation and process noise covariance
in on-line Kalman filtering”, Eur. J. Opl. Res., 6, 1981, 302–308.
[35] Cadzow J.: „Spectral estimation: an overdetermined rational model equations
approach”, Proceedings IEEE, 70, 1982, 907–939.
[36] Cadzow J.: „ARMA modelling of time series”, IEEE Trans. Pattern Analysis
Mach. Intelligence, PAMI-4, 1982, 124–128.
[37] Cadzow J., Baseghi B.: „Data adaptive ARMA modelling of time series”, Proc.
IC ASSP, Paris, 1982, 256–261.
[38] Cadzow J., Baseghi B., Hsu T.: „Singular value decomposition approach to time
series modelling”, Proc. IEE, F, 130, 1983, 202–210.
[39] Conrad W., Corrado C.: „Application of the Kalman filter to revisions in monthly
sales estimates”, J. Econom. Dynamics Control, 1, 177–198.
[40] Chatfield Ch.: Analyse von Zeitreihen, Hanser, Wien 1982.
[41] Chow G.: Econometric Analysis by Control Methods, Wiley, New York 1981.
[42] Cioffi J., Kailath T.: „Windowed fast transversal filters adaptive algorithms with
normalization”, IEEE Trans. ASSP, ASSP-33, 1985, 607–625.
[43] Cumani A.: „On a covariance-lattice algorithm for linear prediction”, Proc. IC
ASSP, Paris 1982, 651–654.
[44] Deprettere E.: „Fast non-stationary lattice recursion for adaptive modelling and
estimation”, Proc. IC ASSP, Paris 1982, 1721–1726.
[45] Delsarte P., Genin Y., Kamp Y.: „On the mathematical foundations of the generalized lattice algorithm”, Proc. IC ASSP, Paris 1982, 1717–1720.
32
[46] Dickinson B.: „Estimation of partial correlation matrices using Cholesky decomposition”, IEEE Trans. Autom. Control, AC-24, 1979, 302–305.
[47] Davis H., Newton H., Pagano M.: A Toeplitz Gram-Schmodt algorithm for autoregressive modelling, Texas A&M Univ. College Station, TR-N-33, 1982.
[48] Dickinson B., Turner J.: „Reflection coefficient estimation using Cholesky decomposition”, IEEE Trans. ASSP, ASSP-27, 1979, 146–149.
[49] Durbin J.: „Efficient estimation of parameters in moving-average models”, Biometrica, 46, 1959, 306–316.
[50] Durbin J.: „The fitting of time series models”, Rev. Int. Inst. Statistics, 28, 1960,
233.
[51] Fengler H.: Beitrag zur kurz- und mittelfristigen Prognose der elektrischen Spitzenlast, Diss. TU Berlin, 1982.
[52] Fortuna Z., Macukow B., Wąsowski J.: Metody numeryczne, WNT, Warszawa
1982.
[53] Fogel E.: „A fundamental approach to the covariance analysis of LS algorithms”,
IEEE Trans. Autom. Control, AC-26, 1981, 646–655.
[54] Friedlander B., Ljung L.: „Lattice implementation of recursive maximum likelihood algorithm”, Proc. Int. Conf. Decision & Control, San Diego 1981, 1083–1084.
[55] Friedlander B.: „Lattice filters for adaptive signal processing”, Proceedings IEEE,
70, 1982, 829–867.
[56] Friedlander B.: „Lattice filters for spectral estimation”, Proceedings IEEE, 70,
1982, 990–1017.
[57] Friedlander B.: Efficient algorithms for ARMA spectral estimation”, Proc. IEE,
F, 130, 1983, 195–201.
[58] Gersch W., Brotherton T.: „AR model prediction of time series with trends and
seasonalities: a contrast with Box-Jenkins modelling”, Proc. IEEE Conf. Decision
& Control, Albuquerque 1980, 988–990.
[59] Geyer A.: Maximum Entropie Spektral Analyse oekonomischer Zeitreihen,
VWGOe, Wien 1985.
[60] Gibson C., Haykin S.: „A comparison of algorithms for the calculation of adaptive
lattice filters”, Proc. IC ASSP, Denver, 1980, 978–983.
[61] Goldberger A.: Teoria ekonometrii, PWE, Warszawa 1972.
[62] Grenier Y.: „Time varying lattices and autoregressive models: parameter estimation”, Proc. IC ASSP, Paris 1982, 1337–1340.
[63] Griffiths L.: „A comparison of lattice-based adaptive algorithms”, IEEE Symp.
Circuits and Systems, Houston, 1980, 742–743.
[64] Haykin S.: Introduction to Adaptive Filters, Macmillan, London 1984.
[65] Huettner M., Bednarzik U.: „Prognosen mit den adaptiven Filtern”, Allgem. Statist. Archiv, 64, 1980, 301–326.
[66] Heiler S.: „Zeitreihenanalyse heute. Ein Ueberblick” Allgem. Statist. Archiv, 64,
1981.
[67] Hannan E., Krishnaiah P., Rao M. (ed): Time Series in the Time Domain, North
Holland, New York 1985.
[68] Hoenig M., Messerschmitt D.: Adaptive Filters, Kluwer, Boston, 1984.
[69] Horvath S.: „Lattice form adaptive recursive digital filters: algorithms and applications”, IEEE Symp. Circuits and Systems, Houston, 1980, 128–133.
33
[70] Hlavacek J., Reddy N.M.: „Identifying and qualifying industrial market segments”, Europ. J. Marketing, 20, 1986, 8–21.
[71] Hazewinkel M., Willems J. (ed): Stochastic Systems. The Mathematics of Filtering, Identification and Applications, Reidel, Dordrecht 1981.
[72] Jaynes E.: „On the rationale of mamimum entropy methods”, Proceedings IEEE,
70, 1982, 939–952.
[73] Janowska J., Janowski M.: Przegląd Metod i Algorytmów Numerycznych, WNT,
Warszawa 1981.
[74] Jenkins G., Mc Leod G.: Case Studies in Time Series Analysis, AGJP, Parkfield
1982.
[75] Kailath T.: Linear Systems, Prentice-Hall, Englewood Cliffs 1982.
[76] Kailath T.: Time-variant and time-invariant lattice filters for nonstationary processes, TR-82-0481, Stanford Univ. 1982.
[77] Kalman R.E.: „A new approach to linear filtering and prediction problems”, J. Basic Eng., Trans. ASME D, 82, 1960, 35–45.
[78] Kalman R.E., Bucy R.: „New results in linear filtering and prediction theory”,
J. Basic Eng., Trans. ASME D, 83, 1961, 95–108.
[79] Kalson S.: Least squares lattice algorithm: an alternate derivation with discussion
of numerical conditioning, TR-950, Naval Ocean Systems Center, San Diego, 1984.
[80] Kay S.M.: „Recursive maximum likelihood estimation of autoregressive processes”, IEEE Trans. ASSP, ASSP-31, 1983, 56–65.
[81] Klich D.: Efficient Multichannel Autoregressive Modelling in the Time and Frequency Domain, Ph.D. Diss., Naval Postgraduate School, Monterrey 1982.
[82] Kobrinskij N.E.: Informacionnyje Filtry w Ekonomike, Statistika, Moskwa 1978.
[83] Kolgomorow A.: „Stationary sequences in Hilbert space”, Bull. Math. Univ. Moscow, 2, 1941.
[84] Kotler P.: Marketing Management: analysis, planning and control, Prentice-Hall,
Englewood Cliffs 1984.
[85] Kligene N., Telksnis L.: „Methods of detecting instants of change of random
process properties”, 44, 1983, 1241–1283.
[86] Landau I., Dugard L., Cabrera S.: „Applications of output error recursive estimation algorithms for adaptive signal processing”, Proc. IC ASSP, Paris 1982,
639–642.
[87] Leondes C.: Theory and Applications of Kalman Filtering, AGARD NATO Group,
R&D 1970.
[88] Levinson N.: „The Wiener RMS error criterion in filter design and prediction”,
J. Math. Physics, 25, 1947, 261–278.
[89] Lee D., Friedlander B., Morf M.: „Recursive ladder algorithms for ARMA modelling”, Proc. IEEE Conf. on Decision & Control”, Albuquerque 1980, 1225–1231.
[90] Ljung L., Glover K.: „Frequency domain versus time domain methods in system
identification”, Automatica, 17, 1981, 71–86.
[91] Lagunas-Hernandez M., Masgrau-Gomez E.: „What does the parameter mean in
adaptive lattice algorithms”, Proc. IC ASSP, Paris 1982, 643–646.
[92] Ljung L.: „Analysis of a general recursive prediction error identification algorithm”, 17, 1981, 89–99.
[93] Lev-Ari H., Kailath T.: „Ladder from for nonstationary process”, Proc. IEEE
Conf. Decision & Control, Albuquerque 1980, 960–961.
34
[94] Lee D., Morf M.: „Recursive square-root ladder estimation algorithms”, Proc. IC
ASSP, Denver 1980, 1005–1017.
[95] Leidbundgut B., Raoult A., Gendreau F.: „Application of Kalman filtering to
demographic models”, IEEE Trans. Autom. Control, AC-28, 1983, 427–434.
[96] Ljung L., Soederstroem T.: Theory and Practice of Recursive Identification, MIT
Press, Cambridge 1983.
[97] Luetkepohl H.: An Alternative Approach to Univariate and Mutivariate Time
Series Analysis, Ph.D. Diss. Dept. Economics, Bielefeld 1981.
[98] Makhoul J.: „Linear prediction. Tutorial review”, Proceedings IEEE, 63, 1975,
561–579.
[99] Makhoul J.: „New lattice methods for linear prediction”, Proc. IC ASSP, 1976,
462–465.
[100] Makhoul J.: „Stable and efficient lattice methods for linear prediction”, IEEE
Trans. ASSP, ASSP-25, 1977.
[101] Makhoul J.: „A class of all-zero lattice digital filters: properties and applications”, IEEE Trans. ASSP, ASSP-26, 1978, 304–314.
[102] Markel J.D., Gray A.H.: Linear Prediction of Speech, Springer, New York 1976.
[103] Maybeck P.S.: Stochastic Models, Estimation and Control, Academic Press, New
York 1979.
[104] Medaugh R.: A Comparison of Two Fast Linear Predictors, Ph.D. Diss., University of Boulder, Colorado 1981.
[105] Medaugh R., Griffith L.: „Further results of a least squares and graduent adaptive lattice algorithms comparison”, Proc. IC ASSP, Paris 1982, 1412–1415.
[106] Morf M., Dickinson B., Kailath T., Vieira A.: „Efficient solution of covariance
equation for linear predictions”, IEEE Trans. ASSP, ASSP-25, 1977, 429–433.
[107] Morf M., Lee D.: „Recursive least squares ladder forms for fast parameter tracking”, Proc. IEEE Conf. Decision & Control, San Diego 1979, 1362–1367.
[108] Morf M., Lee D., Nickolls J., Vieira A.: „A classification of algorithms for ARMA
models and ladder realizations”, IC ASSP, 1977, 13–19.
[109] Morf M.: „Ladder forms in estimation and systems identification”, 11th Ann.
Asilomar Conf., 1977, 424–429.
[110] Morrettin P.: „The Levinson algorithm and its applications in the time series
analysis”, Int. Statist. Rev., 52, 1984, 83–92.
[111] Morrisson G., Pike D.: „Kalman filtering applied to statistical forecasting”, Manag. Sc., 23, 1977, 768–774.
[112] Marple S., Rabiner L.: „Performance of a fast algorithm for FIR system identification using least-squares analysis”, Bell Syst. Techn. J., 62, 1983, 717–.
[113] Makhoul J., Viswanathan R.: „Adaptive lattice methods for linear prediction”,
Proc. IC ASSP, Tulsa, 1978, 83–86.
[114] Newton H., Pagano M.: The Cholesky decomposition algorithm and ARMA modelling, TR-N-22, Texas A&M Univ. College Station, 1981.
[115] Newton H., Pagano M.: Minimum MSE prediction of ARMA time series, TRN-24, Texas A&M Univ. College Station, 1981.
[116] Oppenheim A., Willsky A., Young I.: Signals and Systems, Prentice-Hall, London
1983.
[117] Perry F.: Parametric Modelling of Linear and Nonlinear Systems, Ph.D. Diss.,
Naval Postgraduate School, Monterrey, 1980.
35
[118] Pociecha J.: Statystyczne Metody Segmentacji Rynku, Akademia Ekonomiczna
w Krakowie, Monografie, 71, 1986.
[119] Porat B.: Contribution to the Theory and Applications of Lattice Filters, Ph.D.
Diss., Stanford Univ. 1982.
[120] Porat B.: „Pure time updates for LS Lattice algorithms”, IEEE Trans, Autom.
Control, AC-28, 1983, 865–866.
[121] Priestley M.B.: Spectral Analysis and Time Series, Academic Press, New York,
1981.
[122] Pack J.D., Satorius E.H.: Least squares adaptive lattice algorithms, Naval Ocean
Systems Center, TR 423, San Diego 1979.
[123] Pack C.D., Whitaker B.A.: „Kalman filter models for network forecasting”, Bell
Syst. Techn. J., 61, 1981, 1–14.
[124] Ralston A.: Wstęp do Analizy Numerycznej, PWN, Warszawa 1976.
[125] Rasiowa H.: Wstęp do Matematyki współczesnej, PWN, Warszawa 1973.
[126] Robinson E.: Multichannel Time-Series with Digital Computer Programs, Holden-Day, San Francisco 1967.
[127] Robinson E., Silvia M.: Digital Signal Processing and Time Series, Holden-Day,
San Francisco 1978.
[128] Sin K., Goodwin G., Bitmead R.: „An adaptive d-step ahead prediction based
on least squares”, Proc. IEEE Conf. Decision & Control, Albuquerque, 1980, 962–
967.
[129] Shaoann S.: A performance study of AR estimation Methods, Ph.D. Diss., Syracuse Univ., 1983.
[130] Shensa M.: Recursive least-squares algorithms – a geometrical approach, TR-552,
Naval Ocean Systems Center, San Diego 1979.
[131] Shichor E.: „Fast recursive estimation using the lattice structure”, Bell Syst.
Techn. J., 61, 1982.
[132] Shichor E., Reiss J.: „Sequential algorithm for estimation of parameters of an
autoregressive process”, Proc. IC ASSP, 1976, 744–745.
[133] Sorenson H.: Parameter Estimation, Marcel Dekker, New York 1980.
[134] Satorius E., Shensa M.: „Recursive lattice filters – a brief overview”, Proc. IEEE
Conf. Decision & Control, Albuquerque 1980, 955–959.
[135] Stolarska E. (red.): Algebra liniwa dla ekonometryków, PWN, Warszawa 1979.
[136] Schwarze J., Weckerle J. (red.): Prognoseverfahren im Vergleich. Anwendungserfahrungen und Anwendungsprobleme verschiedener Prognoseverfahren, DGOR,
Braunschweig 1982.
[137] Szabatin J.: Podstawy teorii sygnałów, Wyd. Kom. Łącz., Warszawa 1982.
[138] Turner J.M.: Overview recursive least squares estimation and lattice filters,
TR M736-2, Stanford Univ. 1984.
[139] Talaga L., Zieliński Z.: Analiza Spektralna w Modelowaniu Ekonometrycznym,
PWN, Warszawa 1986.
[140] „Maximum entropy spectral analysis and autoregressive decomposition”, Rev.
Geophysics, 13, 1975, 182–200.
[141] Vieira A.: Matrix Orthogonal Polynominals with Applications to Autoregressive
Modelling and Ladder Forms, Ph.D. Diss., Stanford 1978.
[142] Wiener N.: Extrapolation, Interpolation and Smoothing of Stationary Time Series, MIT & Wiley, New York, 1950.
36
[143] Wold H.: A Study in the Analysis of Stationary Time-Series, Almqvist and Wilksell, Uppsala 1938.
[144] Young P.: MICROCAPTAIN: a microcomputer aid in the modelling of environmental sciences, University of Lancaster, Rep. 9, Lancaster 1982.
[145] Yule G.: „On a method of investigating periodicities in distributed series with
special reference to Wolfer’s sunspot numbers”, Phil. Trans. Roy. Soc., London
Ser. A., 226, 209–224.
[146] Zieliński Z.: Metody analizy dynamiki i rytmiczności zjawisk gospodarczych,
PWN, Warszawa 1979.
[147] Żakowski W.: Matematyka, Cz. I., WNT, Warszawa 1976.
[148] Żakowski W., Kołodziej W.: Matematyka, Cz. I., WNT, Warszawa 1976.
37