You are on page 1of 41

4.

Monte Karlo simulacija i generisanje sluajnih brojeva




Simulacija komunikacionog sistema zahtijeva generisanje vrijednosti uzoraka svih ulaznih
oblika signala, procesiranje ovih uzoraka kroz modele funkcionalnih blokova sistema i
procjenjivanje performansi sistema na bazi izlaznih uzoraka u raznim takama modela. Fokus
ovog poglavlja je na tome kako generisati vrijednosti uzoraka ulaznih oblika koji prolaze
kroz simulacijski model. Monte Karlo tehnika predstavlja osnovu za simulacijske sisteme
voene ulaznim signalima koji su modelirani kao sluajni procesi.



4.1. Principi Monte Karlo simulacije


4.1.1. Definicija Monte Karlo simulacije


Mehaniki generatori sluajnih brojeva su u poetku bili koriteni za simulaciju igara na
sreu, te su simulacijske tehnike koje koriste generatore sluajnih brojeva dobile ime po
gradu Monte Karlo, domu svjetski poznatih kasina. Iako postoji mnogo varijacija Monte
Karlo tehnike, u osnovi ona ukljuuje simulaciju sluajnog eksperimenta koristei umjetne
uslove, bez potpunog ponavljanja fizikog eksperimenta. U kontekstu, recimo, procjene
uestanosti greke bita u telekomunikacijskom sistemu moemo definisati Monte Karlo
simulaciju, kako slijedi: na Slici 4.1. dat nam je model komunikacionog sistema i opis
ulaznih signala U(t), V(t) i W(t), za koje pretpostavljamo da su sluajni procesi.




Slika 4.1. Definicija Monte Karlo simulacije


Na cilj je da pronaemo statistiku vrijednost Y(t) ili oekivanu vrijednost neke funkcije
g(Y(t)) vrijednosti Y(t). Ako rijeimo ovaj problem imitiranjem sistema ukljuujui i vrijeme
evolucije svih talasnih signala sistema, tada imamo pravu Monte Karlo simulaciju. Ovo
podrazumjeva generisanje vrijednosti uzoraka svih ulaznih procesa, putanje da model
funkcionalnih blokova u komunikacionom sistemu izvri operacije nad njima i posmatranje
izlaznih oblika signala. Idealno, Monte Karlo simulacija u potpunosti odgovara realnim
sistemima sa ogranienjima pretpostavki modela i aproksimacijama. Oekivana vrijednost
( ) { } ) (t Y g E se procjenjuje iz MK simulacije prema:

2
( ) { }

=
=
N
i
i Y g
N
t Y g E
1
)) ( (
1
) (



gdje (t) oznaava procijenjenu vrijednost, a N je broj uzoraka u simulaciji.

U kontekstu specifinog primjera datog na slici 4.2., Monte Karlo simulacija za procjenu
uestanosti greke bita u digitalnim komunikacijskim sistemima ukljuuje sljedee korake:

=
=
N
k
e
k Y g
N
P
1
)) ( (
1



Slika 4.2. Simulacijski model komunikacionog sistema


1. Generisanje vrijednosti uzoraka ulazne bitske sekvence {A(k)}, k=1,2, ... ,N i uzoraka
uma {N(j)}, j=1,2, ..., m (uestanost uzimanja uzoraka je m uzoraka po bitu)

2. Procesiranje ovih uzoraka kroz model funkcionalnih blokova i generisanje izlazne
sekvence Y(k)

3. Procjena E(g(Y(k))):

=
=
N
k
e
k Y g
N
P
1
)) ( (
1



gdje je g(Y(k)) = 1 ako je ) ( ) ( k A k Y iIi g(Y(k)) = 0 ako je Y(k) = A(k) (ovaj korak je
ekvivalentan brojanju greaka).

Tanost procjene dobijene Monte Karlo simulacijom zavisi od procedure procjene koja se
koristi, broja uzoraka N, mogunosti da se vrijednosti uzoraka ulaznog procesa tano
reprodukuju, te od pretpostavki i aproksimacija modela. Generalno govorei, tanost e biti
proporcionalna N / 1 , to znai da e se prilino velik broj uzoraka morati simulirati kako
bi se postigla tana procjena pomou Monte Karlo simulacije. Iako je Monte Karlo simulacija
uopena i moe biti primjenjena na irok spektar problema, zahtjevi za velikim brojem
uzoraka, te duina simulacije su esto ograniavajui faktori.

3
4.1.2. Varijacije Monte Karlo simulacije Kvazianalitika Monte Karlo simulacija


Nisu sve simulacije Monte Karlo simulacije ili iste Monte Karlo simulacije. Monte Karlo
podrazumjeva da je barem jedan sluajni proces imitiran, dok ista Monte Karlo simulacija
podrazumijeva da su svi ulazi procesi imitirani. U mnogim simulacijskim aplikacijama nije
neophodno simulirati sve sluajne procese koji postoje u sistemu. U primjeru prikazanom na
slici 4.2. uestanost greke izvedbe sistema zavisi od uma i kumulativnog izoblienja koje
nastaje usljed nelinearnosti i filtera. Obzirom da je um koji se javlja Gausov (bijeli) um koji
se sabira sa ulazom, rezultat na izlazu filtera i samim tim na bloku za odluivanje, e takoer
biti aditivan Gausov um. Ukoliko nema izoblienja, uticaj aditivnog Gausovog uma moe
biti obraen analitiki bez simulacija, ak i sa izoblienjima, uticaj aditivnog Gausovog
bijelog uma, moe biti okarakteriziran analitiki za datu vrijednost izoblienja. Ipak,
raspodjelu vrijednosti izoblienja nastalih usljed nelinearnosti i filtera je lake simulirati nego
analitiki opisati. U ovom sluaju, trebamo samo simulirati kumulativni uticaj svih
funkcionalnih blokova na ulaznim binarnim oblicima i onda nema potrebe da eksplicitno
simuliramo oblik uma.

Monte Karlo simulacije u kojima su samo neki (ali ne svi) ulazni procesi u sistem simulirani
eksplicitno, dok su uticaji drugih procesa obraeni pomou analitikih tehnika nazivaju se
parcijalne Monte Karlo ili kvazianalitike Monte Karlo simulacije. Osnovna prednost ovih
simulacija jeste ta da zahtijevaju simulaciju manjeg broja uzoraka nego ista Monte Karlo
simulacija, a dobijene procjene imaju istu tanost. Parcijalne simulacije su naroito korisne za
linearne sisteme.


4.2. Generator sluajnih brojeva


Bilo da koristimo istu ili parcijalnu Monte Karlo simulaciju, klju za njenu implementaciju
je generisanje sekvenci sluajnih brojeva koji predstavljaju uzorkovane vrijednosti ulaznih
sluajnih procesa. Iz perspektive modeliranja, ovo zahtijeva razumijevanje principa sluajnih
varijabli i sluajnih procesa. Implementacija MK simulacija, sa druge strane, zahtijeva
algoritme za generisanje sekvenci sluajnih brojeva. Cjelokupna tanost rezultata simulacije
zavisi od toga koliko vjerno ovi algoritmi prikazuju statistike osobine sluajnih procesa koje
imitiraju.

U modeliranju i simuliranju sluajnih procesa esto pravimo fundamentalnu pretpostavku:
sluajni procesi su ergodini. Pretpostavka ergodinosti je klju za primjenu rezultata
simulacija dobijenih na bazi jednog uzorka funkcije procesa na cijeli ansambl procesa.
Ergodinost podrazumjeva stacionarnost u uem i irem smislu, to znai da su vane osobine
procesa obuhvaene raspodjelom prvog i drugog reda, i da su osobine procesa vremenski
nezavisne. Ovo ne samo da pojednostavljuje modele za sluajne procese ve takoe olakava
kreiranje algoritama za generisanje sluajnih sekvenci koji mogu da tano prikau osnovne
osobine procesa koji se izvrava, kao to su raspodjela prvog reda, srednja vrijednost,
varijansa i autokorelaciona funkcija (i shodno tome spektralna gustoa snage).

4
Sa simulacijske take gledita, svi sluajni procesi moraju biti predstavljeni sekvencama
sluajnih varijabli te su nam stoga potrebne metode za generisanje sluajnih brojeva iz
mnotva raspodjela, sa proizvoljnim autokorelacionim funkcijama (spektralnim gustinama
snage).

Polazna taka za generatore sluajnih brojeva su rekurzivni algoritmi za generisanje
nezavisne sekvence uniformnih sluajnih brojeva. Primjenjujui odgovarajuu nelinearnu
transformaciju bez memorije, moemo transformisati jednu sekvencu u neku drugu nezavisnu
sekvencu sa proizvoljnom raspodjelom prvog reda. Nezavisna sekvenca moe biti
transformisana u sekvencu sa proizvoljnom korelacionom funkcijom i spektralnom gustoom
snage primjenom linerane ili nelinearne transformacije sa memorijom. Razmatrit emo
algoritme za generisanje uniformnih sluajnih brojeva i navesti transformacije koje mogu biti
primjenjene za konvertovanje izlaza generatora uniformnih sluajnih brojeva u sekvencu sa
proizvoljnom raspodjelom i korelacionom funkcijom. Razvijeni su i efikasni kompjuterski
algoritmi za generisanje binarnih i M-arnih sekvenci koje predstavljaju ulazne simbolne
sekvence u digitalnim komunikacijskim sistemima.

Obzirom da Monte Karlo simulacije ukljuuju generisanje i procesiranje velikog broja
uzoraka, proraunska efikasnost generatora sluanih brojeva je iznimno vana. Sa druge
strane, obzirom da ukupna uinkovitost rezultata simulacije takoe zavisi i od valjanosti
generatora sluajnih brojeva, moramo izbalansirati efikasnost naspram zahtjeva za tanost.
Testovi za provjeru ispravnosti generatora sluajnih brojeva su takoe dati u ovom poglavlju.


4.2.1. Generisanje uniformnih sluajnih brojeva


Uniformni sluajni brojevi se generiu pomou rekurzivnih formula koje su matematski
veoma efikasne. Jedan takav metod koji se naziva kongurentni metod ili metod ostataka
snage koristi sljedeu rekurzivnu formulu:


| | M c k aX k X mod ) 1 ( ) ( + =


(4.2.1)
gdje je M modul, M > 0, cjelobrojna vrijednost, a je mnoilac, 0 < a < M, c je korak
poveanja, obino je jednak jedinici ili nuli; a X(0) je poetna vrijednost (sjeme) pri emu je
0 < X(0) < M. Algoritam u prethodnoj jednaini se izvrava kao operacija nad cjelobrojnim
vrijednostima. Poetna vrijednost X(0) je data od strane korisnika i predstavlja jedinu
sluajnu vrijednost u navedenoj jednaini.

Ovaj izraz daje sluajne sekvence cjelobrojnih vrijednosti u intervalu 0 X(k) M-1, koja
moe biti pretvorena u sluajnu sekvencu uniformnih sluajnih brojeva na intervalu [0,1]
izvravajui operaciju sa pominim zarezom (floating point):

U(k) = Float [X(k)/M] (4.2.2.)

Rezlultat prethodne jednaine se sastoji od cjelobrojnih varijabli koje su podskup intervala
[0, M-1] i odgovaraju stanju sekvence iz sistema sa konanim brojem stanja, sa maksimalnim
brojem od M stanja. Zbog toga je maksimalni period izlazne sekvence M.

5
Statistike vrijednosti izlaza generatora sluajnih brojeva date izrazom (4.2.1.) te njihovi
periodi zavise od vrijednosti varijabli a, c i M. Dobar sluajni generator se uvijek dizajnira
paljivim odabirom ovih parametara. Na ove vrijednosti takoe moe uticati i poetna
vrijednost koju bira korisnik. Na statistike vrijednosti dobrog generatora sluajnih varijabli
ne bi trebala uticati poetna vrijednost; ona samo specificira poetnu taku periodine izlazne
sekvence. Meutim, poetna vrijednost e uticati na vrijednosti podsekvenci ija je duina
mnogo kraa od perioda.

Postoje dva aspekta izlaza generatora sluajnih brojeva koji su jako vani:

(1) algebarske (vremenske) vrijednosti kao to je struktura i period i

(2) statistike vrijednosti kao to je raspodjela izlaza

Dobro odabrane vrijednosti a, c i M trebaju voditi dobrim algebarskim i statistikim
vrijednostima te takoe maksimizirati proraunsku efikasnost i kompatibilnost sa
aritmetikom koja se koristi na odreenoj maini.

Unutar strukturalnih vrijednosti, vano je da izlazna sekvenca bude nekorelirana i da ima
maksimalan period. Period bi trebao da bude dui od duine simulacije, inae postoji
opasnost da e dio simulacije biti preslikan, a tanost simulacije se nee poveati iza take u
kojoj poinje preslikavanje. Dok je maksimalni period M, proizvoljan izbor a, c i M ne
garantuje maksimalni period. Korelacija izmeu izlaznih vrijednosti nije poeljna zbog toga
to procjene zasnovane na istinito koreliranim uzorcima imaju vee varijanse nego procjene
dobijene upotrebom nekoreliranih uzoraka. Postoje odreene smjernice za odabir konstanti
koje e omoguiti maksimalni period i nekorelirani izlaz.


Genetarori uniformnih sluajnih brojeva koji se najee koriste su:

X(k) = 16,807 X(k 1) (Mod2
31
1) za 32-bitne maine sa (31 + 1)-bitom znaka;
period = 2
31
-2

X(k) = [69,069 X(k 1) + 1](Mod2
31
) za 32-bitne maine;
period = 2
32


Generatori sluajnih brojeva sa duim periodima mogu biti kreirani upotrebom varijacija
lineranog kongurentnog algoritma. Tako je, na primjer, mogue garantovati maksimalan
period koristei rekurzivni algoritam oblika:

X(k) = [ a
1
X(k 1) + ... + a
m
X(k m)] mod p (4.2.3.)

gdje su (a
1
, a
2
, ..., a
m
) koeficijenti primitivnog polinoma:

f (x) = x
m
a
1
x
m 1
- ... - a
m

definisani na Galoa poljima (GP(p)). Period sekvence dobijen pomou izraza (4.2.3.) je
p
m
1. Uporeujui izraze (4.2.1.) i (4.2.3.) jasno je da algoritam dat izrazom (4.2.3.)
zahtijeva vie prorauna za svaki izlazni uzorak (za p = 2, ovaj algoritam se najee koristi
za generisanje binarnih sekvenci).
6
Druga dva metoda za generisanje sluajnih uniformnih sekvenci sa jako dugim periodima su
opisani u nastavku. Ovi algoritmi su proraunski efikasni i daju sekvence sa dugim periodima
i vrlo dobrim statistikim vrijednostima.


4.2.1.1. Wichman Hill algoritam


Ovaj pristup generisanja sekvenci sa duim periodima ukljuuje linearno kombinovanje
izlaza razliitih generatora sluajnih brojeva sa kraim periodima (sekvence sa kraim
periodima mogu biti posmatrane i testirane tokom cijelog perioda). Ukoliko saberemo dva
periodina talasna signala sa njihovim periodima N
1
i N
2
, tada e rezultirajui signal biti
oblika:

N = lcm (N
1
, N
2
)

Ako su N
1
i N
2
relativno prosti brojevi jedan u odnosu na drugog, tada je:

2 1
N N N =


Ovo znai da moemo, kombinujui izlaze nekoliko generatora sluajnih brojeva, napraviti
sekvencu sa mnogo duim periodom.

Algoritam Wichman Hill je zasnovan na ovom principu i kombinuje izlaze tri generatora
sluajnih brojeva prema:




X(n) = 171 X(n - 1) mod 30,269
Y(n) = 172 X(n - 1) mod 30,307
Z(n) = 170 X(n -1) mod 30,323


(4.2.4a)
i





1 mod
323 , 30
) (
307 , 30
) (
269 , 30
) (
) (
)
`

+ + =
n Z n Y n X
n U

(4.2.4b)

Prva tri koraka u algoritmu se impementiraju pomou cjelobrojne aritmetike, a zadnji korak
je operacija sa pominim zarezom. Period sekvence dobijene pomou ovog algoritma je

12
10 7 322 , 30 306 , 30 268 , 30 = p


Ovaj algoritam ne zavisi od maine na kojoj se izvodi sve dok cjelobrojna aritmetika moe
podnijeti rad sa 5,212,632 cijelih brojeva bez zaokruivanja, a izlaz ima dug period i tei
konanom sistemu koji ne zavisi od poetnih uslova. Mogue je, naravno, jo vie produiti
period kombinujui izlaze vie generatora, ali to vodi ka poveanju kompjuterskog
optereenja.

7
Bitno je naglasiti da je Wichman Hill algoritam proraunski mnogo kompleksniji nego
algoritam prikazan jednainom (4.2.1.). Njegova glavna prednost je u tome da je prenosiv (ne
zavisi od ureaja na kom se izvodi) i garantuje maksimalan period pri konstrukciji, te nema
potrebe provjeravati ga empirijski, to je veoma komlikovano ostvariti ukoliko je period jako
dug.


4.2.1.2. Marsaglia Zaman algoritam


Ovaj algoritam, predstavljen od strane Marsaglie i Zamana, je linearni rekurzivni algoritam
koji zahtijeva duu memoriju i prenesi ili posudi rekurzivne operacije. Postoje dvije sline
verzije ovog algoritma, oduzimanje sa posuivanjem i sabiranje sa prenoenjem. U nastavku
je opisan algoritam oduzimanja sa posuivanjem, ija je forma:

<

< +

=
=

0 za 1
0 za 0
0 za
0 za
1
i
i
i
i i
i i
i
i s i r i i
Z
Z
C
Z b Z
Z Z
X
C X X Z


U navedenom algoritmu svi ulazi su pozitivni cijeli brojevi i vrijedi da je i > r. Bit C
i
koji se
posuuje se inicijalno postavlja na nulu i prebacuje na nulu ili jednincu u zavisnosti od toga
da li je rezultat pozitivna ili negativna cjelobrojna vrijednost Z
i
.

Parametri koji definiu ovakav generator ukljuuju bazu b i brojeve r i s. Marsaglia i Zaman
su pokazali da ukoliko elimo garantirati maksimalan period M 1, konstante b, r, i s moraju
biti odabrane tako da:

M = b
r
b
s
+ 1

bude prost sa b, primitivnim rjeenjem modM. Za 32-bitne maine vrijednosti b = 2
32
5,
r = 43 i s = 22 e dati period:

M 1 1.65 x 10
414


Poetni (sjemeni) vektor, ija je duina r je jo jedan neohodan element ovog generatora.
Kako bi proizveli sekvencu uniformnih sluajnih brojeva na intervalu [0, 1], neophodno je
transformisati X
i
u U
i
prema:

U
i
= Float (X
i
/ b)


8
4.2.2. Metode za generisanje sluajnih brojeva iz proizvoljne funkcije raspodjele


4.2.2.1 Metoda transformacije (analitika)


Primjenom jednostavne transformacije na sluajnu varijablu U moemo generisati sluajnu
varijablu Z sa proizvoljnom funkcijom raspodjele f
z
(Z) kako slijedi: razmotrimo
transformaciju

) (Z F Y
z
= (4.2.5)

Gdje je F
z
(z) kumulativna funkcija raspodjele sluajne varijable Z. Moe se pokazati da Y
ima uniformnu raspodjelu na intervalu [0, 1].

Mi ovo moemo iskoristiti kako bi generisali Z koristei Z=F
z
-1
(Y), gdje Y ima uniformnu
funkciju gustoe raspodjele, tako to emo:

1. Generisati U uniformno distribuirano na [0,1].

2. Rezultat Z=F
z
-1
(Y); Z ima funkciju gustoe raspodjele f
z
(Z) (vidjeti sliku 4.3).




Slika 4.3. Metoda transformacije za generisanje sluajnih brojeva


Ako kumulativna funkcija raspodjele i inverzna kumulativna funkcija raspodjele od Z moe
biti izraena u zatvorenoj formi, tada je korak 2 u metodi transformacije lak za primjenu. U
drugom sluaju F
z
(z) se konstruie pomou numerikog integriranja f
z
(z) i upisivanjem
vrijednosti u tabelu, a inverzija F
z
-1
(U) se nalazi pretraivanjem i interpolacijom kroz
vrijednosti F
z
(z) iz tabele.
9
Primjer

(a) Nai algoritam za generisanje eksponencijalno rasporeene sluajne varijable
koritenjem metode transformacije.

(b) Nai algoritam za generisanje geometrijski rasporeene sluajne varijable
koritenjem metode transformacije.


(a) Rjeenje:

z
z
e z f


= ) (

i

z
Z
e z F

=1 ) (

pa slijedi

) (Z F U
Z
= to daje
Z
e U

=1
Ili

) 1 ln( ) / 1 ( U Z =

Ako je U uniformno na [0,1], tada je lako zakljuiti da je i 1 U takoer uniformno na
[0, 1]. Tako, jedno oduzimanje moe biti uteeno koritenjem

) / 1 ( = Z

Niz sluajnih brojeva nee biti identian, ali e biti statistiki ekvivalentan.


Algoritam za generisanje eksponencijalno rasporeenih sluajnih vrijednosti:

1. Generii U.

2. Z = (1/ )ln(1-U) ili Z =-(1/ )lnU.

(b) Rjeenje: Ako je X geometrijska veliina, tada vrijedi

1
) 1 ( ) (

= =
k
k X P za ,... 2 , 1 = k

X je diskretna varijabla i predstavlja na primjer, vrijeme ekanja u Bernulijevom
procesu koji ima vjerovatnou uspjeha .

X se moe generisati malom modifikacijom rjeenja iz (a). Ako je Z eksponencijalno
tada imamo

10
| | | | | |
n n
e e n Z n P
+
= + < 1 1 1
) 1 (

) 1 (

= e e
n

), 1 ( + = = n X P uz


= e 1

Tako dobijamo geometrijsku vrijednost X generisanjem eksponencijalne varijable Z [sa
) 1 ln( = ] i zaokruujui na [Z+1], gdje [] predstavlja cjelobrojni broj.


Algoritam za generisanje geometrijski rasporeene sluajne vrijednosti:

1. Generii U.

2. Izraunaj Z = lnU/ln(1- ).

3. Vrati X = [1+Z].


Algoritmi za generisanje Gama varijabli i Poasonovih varijabli.

Na osnovu metoda transformacije moemo derivirati sljedee algoritme za generisanje Gama
sluajnih varijabli i Poasonovih sluajnih varijabli:

Gama sluajna varijabla X (za cjelobrojnu vrijednost , x je Erlang):

1. Postavi X = 0.

2. Generii V eksponencijalno uz 1 = .

3. Postavi X = X + V.

4. Ako je = 1, postavi X = X, izraunaj X i vrati se na korak 1. Inae:

5. Postavi = - 1 i vrati se na korak 2.


Poasonova sluajna varijabla X:

1. Postavi A = 1 i k = 0.

2. Generii U
k
na uniformnom [0, 1].

3. Postavi A = U
k
A.

4. Ako je

< e A , dostavi X = k i vrati se na korak 1. Inae:

5. Postavi k = k + 1 i vrati se na korak 3.


11
4.2.2.2. Metoda transformacije (empirijska)


Kada se inverzna trasnformacija ne moe izraziti u zatvorenoj formi, tada se moe iskoristiti
sljedei empirijski algoritam pretraivanja kako bi se implementirala metoda transformacije.

Ako je Z kontinualna sluajna varijabla, tada se raspodjela prvo kvantizira (vidjeti sliku 4.4).
Ako su
N
p p p ,..., ,
2 1
vjerovatnoe N elija uniformno kvantizirane raspodjele, tada se moe
iskoristiti sljedei algoritam kako bi se generisali uzorci sluajne varijable Z:

1. Generii U, uniformno na [0, 1].

2. Neka je

=
=
i
j
j i
p F
1
, za N i ,..., 2 , 1 = , uz F
0
=0

3. Nai najmanju vrijednost i koja zadovoljava

i i
F U F <
1
, N i ,..., 2 , 1 =

4. Izbaci
i i i
C F U z Z / ) (
1 1
+ = i vrati se na korak 1.

Zadnji korak se koristi kako bi se dobila interpolirana vrijednost Z na intervalu [z
i-1
, z
i
]
(vidjeti sliku 4.4.).




Slika 4.4. Generisanje sluajnih brojeva iz proizvoljne raspodjele



oblast=pi
12
4.2.2.3. Metoda transformacije za diskretne sluajne varijable


Kada je Z diskretna sluajna varijabla sa vrijednostima
i i
p z Z P z z = = ) ( ,..., ,
2 1
i

=
=
i
j
j i
p F
1
,
tada sljedei algoritmi mogu biti koriteni za generisanje uzoraka Z.

Algoritam 1 (konaan broj vrijednosti Z):
Korak 0: Postavi k=1.
Korak 1: Generii U, uniformno na [0, 1].
Korak 2: Ako je U F
k
, izbaci Z = z
k
i vrati se na korak 0. Inae:
Korak 3: Poveaj k = k + 1 i vrati se na korak 2.

Algoritam 2 (beskonaan broj vrijednosti Z):
Korak 0: Postavi C = p
1
, B = C, i k = 1.
Korak 1: Generii U, uniformno na [0,1].
Korak 2: Ako je U B (U F
k
) izbaci Z = z
k
i vrati se na korak 0. Inae:
Korak 3: Postavi k = k + 1.
Korak 4: Postavi C = A
k+1
C (A
k+1
= p
k+1
/p
k
) i B = B + C i vrati se na korak 2.

Kako je prikazano na slici 4.5, mi smo jednostavno empirijski nali inverziju funkcije
raspodjele i prikazali desni kraj intervala u koji U pada. Nema interpolacije izmeu intervala
kao kod kontinuiranog sluaja.




Slika 4.5 Metoda inverzne transformacije za diskretne raspodjele.


Kod algoritma 1, p
i
i F
i
, i = 1, 2, ..., N se izraunavaju a priori i spremaju u tabelu, a
pretraivanje je ogranieno na N elemenata tabele poevi od jednog kraja tabele ka drugom.
Procedura pretraivanja se moe ubrzati poinjanjem od sredine tabele i nastavljajui gore ili
dole u zavisnosti od prvog poreenja.

13
Kod algoritma 2 se kumulativne vjerovatnoe izraunavaju kao dio pretraivanja (nije
mogue izraunati p
i
i F
i

za sve vrijednosti z
i
i memorisati ih kada Z ima beskonaan broj
vrijednosti). Za raspodjele kao to su Poasonova ) 1 /( /
1
+ =
+
k A A
k k
, korak 4 je lak za
izraunavanje i cijela procedura je proraunski veoma efikasna.


4.2.2.4. Metoda prihvaanja/odbijanja za generisanje sluajnih brojeva


Pretpostavimo da elimo generisati X prema funkciji gustoe raspodjele f
X
(x). Razmotrimo
algoritam za generisanje X (slika 4.6):

1. Generii U
1
, uniformno na [0, a].

2. Generii U
2
, uniformno na [0, b].

3. Ako je U
2
< f
X
(U
2
), tada je izlaz X = U
1
, u suprotnom odbij U
1
i vrati se na korak 1.

Moemo kazati da ovaj algoritam daje varijable sa funkcijom gustoe raspodjele f
X
(x) kako
slijedi:

| |
( ) ( ) | |
| |
dx x f
ab
ab dx x f
U dx x U x P
U dx x U x P
X
X
) (
/ 1
/ ) (


primljeno je U P
primljeno je

primljeno je
1
1 1
1 1
= =
+ <
=
+ <





Slika 4.6. Metoda prihvaanja/odbijanja za generisanje sluajnih brojeva


14
Zadnji korak slijedi iz injenice da, poto su U
1
i U
2
uniformni, vjerovatnoa da (U
1
, U
2
)
pripadaju bilo kom regionu na slici 4.6 proporcionalna je oblasti tog regiona podijeljenoj sa
ab. Primijetimo da vjerovatnoa da je U
1
primljeno iznosi 1/ab poto je oblast pod funkcijom
gustoe raspodjele jednaka 1.

Metoda prihvaanja/odbijanja ima dva problema. Prvi je da, ako etverougao na slici 4.6 ne
moe usko da se uklopi oko f
X
(x) (tj., ab 1), tada broj U-ova, koji se moraju generisati prije
nego prihvatimo vrijednost moe biti prevelik; a drugi je da, ako opseg X nije ogranien,
metoda se ne moe koristiti bez nekih modifikacija.

Sljedeim modifikacijama algoritma prevazilazimo oba problema. Pretpostavimo da elimo
generisati sluajnu varijablu X sa funkcijom gustoe raspodjele f
x
(x). Neka je W sluajna
varijabla sa funkcijom gustoe raspodjele f
w
(w), koju je lako generisati i takva da je za
neko k > 1,

) ( ) ( x kf x f
w X
za svako x

tj., kf
w
(x) je na gornjoj strani usko vezano za f
X
(x) kako je to prikazano na na slici 4.7. U tom
sluaju se sljedea metoda moe koristiti za generisanje uzoraka X:

1. Izaberi kf
w
(x) i nai F
w
-1
().

2. Generii U
1
i nai X = F
w
-1
(U
1
).

3. Generii U
2
uniformno na [0, b], b = kf
w
(x).

4. Ako je U
2
< a, a= f
X
(x), izlaz je X, inae odbij X i vrati se na korak 2.

Proraunska efikasnost ovog algoritma e zavisiti od toga koliko usko kf
w
(x) vee f
X
(x).




Slika 4.7. Modifikovana forma metode prihvaanja/odbijanja; U
1
uniformno na [0, b].


15
4.2.3. Generisanje Gausovih sluajnih varijabli


4.2.3.1. Metoda Suma od 12


Najjednostavnija metoda za generisanje sluajnih brojeva sa standardnom Gausovom
funkcijom vjerovatnoe raspodjele ( 0 =

i 1
2
=

) jeste pomou centralnog graninog


teorema prema formuli

=
=
12
1
0 . 6 ) (
k
k U Y
(4.2.6)

Gdje su U(k), k=1, 2, ..., 12 podskup nezavisnih, identino rasporeenih sluajnih vrijednosti
sa uniformnom raspodjelom na intervalu [0, 1]. Poto U(k) ima srednju vrijednost 0,5 i
varijansu jednaku 1/12, veoma je lako provjeriti da desna strana izraza (4.2.6.) daje srednju
vrijednost 0 i varijansu 1.

Treba primijetiti da, dok Gausova sluajna varijabla ima vrijednosti koje idu od do + ,
jednaina (4.2.6.) daje vrijednosti Y u intervalu [-6,0, 6,0]. Broj 12 je tradicionalan i
predstavlja kompromis izmeu brzine i preciznosti, ali nema razloga da se k ogranii na 12.


4.2.3.2. Box-Mullerova Metoda


Dobro je poznato da, ako su X i Y nezavisne Gausove varijable sa nulom kao srednjom
vrijednou, tada
2 / 1 2 2
) ( Y X R + = i { } X Y / tan
1
= imaju Rejlijevu i uniformnu funkciju
vjerovatnoe raspodjele, respektivno. Ova injenica se moe iskoristiti da se generiu dva
uzorka Gausovih varijabli kroz transformaciju para Rejlijevih i uniformnih varijabli kako
slijedi: Ako su U
1
i U
2
dvije nezavisne varijable uniformno rasporeene u jedininom
intervalu, tada su


| | ) 2 cos( ) ln( 2
2
2 / 1
1
U U X =

(4.2.7a)
i


| | ) 2 sin( ) ln( 2
2
2 / 1
1
U U Y =

(4.2.7b)

nezavisne Gausove sluajne varijable sa srednjom vrijednou nula i varijansom 1. Ovaj
algoritam je poznat kao Box-Mullerova metoda.

Primijetimo da (4.2.7) daje brojeve koji se rasporeuju na intervalu | | + , . Meutim, ovaj
algoritam je mnogo sporiji nego onaj koji je predstavljen sa izrazom (4.2.6). Takoer, ako je
16
min
R najmanja pozitivna cjelobrojna vrijednost koja se moe predstaviti na nekom raunaru,
tada e algoritam dati brojeve u intervalu (-a, a),

| |
2 / 1
min)
ln( 2 R a = .

Preporuuje se da se jednaina (4.2.7) implementira u aritmetici dvostruke preciznosti, kako
bi se proirio opseg izlaznih vrijednosti.

Saetak metoda koritenih za generisanje nezavisnih sekvenci sluajnih varijabli je prikazan
na slici 4.8 i u tabeli 4.1.




Slika 4.8. Saetak procedura za generisanje sluajnih brojeva


Da li je funkcija gustoe
raspodjele data u
zatvorenoj formi?
Kvantizuj funkciju gustoe
raspodjele; izraunaj empirijski
kumulativnu funkciju raspodjele
i koristi empirijsku inverznu
transformaciju
Da li je kumulativna funkcija
raspodjele u zatvorenoj formi?
Da li je inverzna
kumulativna funkcija
u zatvorenoj formi?
Inverzna
transformacija
(analitika)
Inverzna
transformacija
(empirijska)
Ograniena
podrka
Neograniena
podrka
Metod
prihvatanja /
odbijanja
Modifikovani
metod prihvatanja
/ odbijanja
Ne, empirijska forma
Da, zatvorena forma
Da Ne
Da
Ne
17

Distribucija Metoda generisanja
Diskretna
Uniformna Inverzna metoda transformacije
Binomna (n,p) Inverzna metoda transformacije, ili suma od n nezavisnih
B(1, p) vrijednosti
Geometrijska () Y= [Z+1]
cijeli broj
; Z=lnU / ln(1- )
Poasonova () Suma k eksponencijalnih varijabli dok suma ne bude >1; izbaci
k; ili, mnoi k uniformne varijable dok U
1
, U
2
... U
k
< exp(-);
izbaci k
Gama (, ) cijeli broj; izlaz = suma eksponencija (=1) i skalirano sa
Proizvoljna Konaan broj vrijednosti; inverzna transformacija, tabelarno
pretraivanje
Beskonaan broj vrijednosti: inverzna transformacija,
kumulativno izraunavanje u toku procesa
Kontinuirana
Uniformna [a, b]. Inverzna metoda transformacije: X=a+U(b-a)
Eksponencijalna
| | / lnU Z =
Gausova N(0,1) Metoda sume od 12: X=( U
1
+U
2
+...+ U
12
)-6,0
Boks-Mulerova metoda:
2 1
2 cos ) ln( 2 U U X =
2 1
2 sin ) ln( 2 U U Y =
Rejlijeva 2 2
Y X R + =
Rajsova 2 2
) ( Y X A R + + = ; A je konstanta
Hi kvadrat (r)

=
r
k
k
X
1
2
;

k
X je definisano na N(0, 1)
Log normalna ) exp(X Y = ; X ima normalnu raspodjelu
Ostale Vidjeti sliku 4.6

Tabela 4.1: Saetak generatora sluajnih brojeva



4.3. Generisanje nezavisne sluajne sekvence


U prethodnim odjeljcima smo prikazali metode za generisanje sekvence sluajnih brojeva sa
datom funkcijom gustoe raspodjele. Pretpostavimo da su lanovi sekvence {X(k)} nezavisni.
U ovom odjeljku emo koristiti metode za generisanje nezavisnih sekvenci sluajnih varijabli
koje predstavljaju uzorke vrijednosti sluajnog procesa koji nas interesuje.


18
4.3.1. Bijeli Gausov um


Bijeli um ima konstantnu spektralnu gustou snage za sve frekvencije

2
) (
0
N
f S
NN
= za + < < f

Meutim praktini sistemi imaju konane propusne opsege, na primjer B (slika 4.9b), a
uestanost uzorkovanja za simulaciju je f
s
koja se bira tako da bude vea od 2B. Ako
koristimo propusno ogranieni Gausov bijeli um sa konstantnom spektralnom gustoom
snage preko ograniene irine propusnog opsega u simulatoru 2 /
s
f do 2 /
s
f ,

2 / ) (
0
N f S
S S
N N
= za 2 / 2 /
s S
f f f < <

(4.3.1)

tada je spektralna gustoa snage na izlazu iz sistema ista, bez obzira na to da li je ulaz imao
spektarlnu gustou snage ) ( f S
NN
ili ) ( f S
S S
N N
.




Slika 4.9. Model simulacije za bijeli um, (a) um spektralne gustine snage;
(b) prenosna funkcija filtera; (c) simulirana spektralna gustina snege


19
U svrhu simulacije su vrijednosti uzete kao uzorci Gausovog bijelog uma generisane
koritenjem spektralne gustine snage prikazane na slici 4.9c. Primijetimo da ova spektralna
gustina snage vodi ka autokorelacionoj funkciji sa nula-prelazom za
s S S
f T kT / 1 , = = , jer su
uzorci u vremenskom domenu nekorelirani i nezavisni u Gausovom sluaju. Varijansa
uzoraka je 2 /
0 S
f N . Stoga, vrijednosti uzete kao uzorci Gausovog bijelog uma ogranienog
opsega propusnosti, mogu biti simulirane koritenjem nezavisne sekvence Gausovih varijabli
sa srednjom vrijednou jednakoj nuli i varijansom


2 /
0
2
S N
f N
S
=
(4.3.2)

Takva sekvenca se moe generisati mnoenjem izlaza srednje vrijednosti nula, jedinine
varijanse Gausovog generatora sluajnih brojeva sa
S
N
.


4.3.2. Sluajne binarne sekvence i sluajni binarni talasni oblici


Sluajna binarna sekvenca {b
k
}, b
k
=0 ili 1, se moe generisati iz uniformne sekvence {U
k
}
preko

=
0
1
k
b
za
za

0
1
p U
p U
k
k

>


Gdje je | | 0
0
= =
k
b P p . Vrijednosti uzoraka sluajnog binarnog talasnog oblika mogu biti
generisane sa:

N m
k
mT p b m kN X
S k
,..., 2 , 1
,... 3 , 2 , 1 , 0 , 1 , 2 , 3 ...,
), ( ) 1 2 ( ) (
=
=
= +


Gdje su p(mT
s
) vrijednosti uzete kao uzorci amplitude jedininog impulsa sa periodom
trajanja jednakim intervalu bita, a stopa uzimanja uzoraka je N puta vea od stope uzimanja
uzorka bita.

Vrijednosti uzete kao uzorci M-arnih digitalnih talasnih formi sa nezavisnim amplitudnim
sekvencama se mogu generirati na isti nain.


20
4.3.3. Pseudo-sluajne binarne sekvence


Sluajna binarna sekvenca se sastoji od statistiki nezavisnih nizova nula i jedinica, od kojih
se svaka pojavljuje sa vjerovatnoom od . Pseudo-um ili pseudo-sluajna sekvenca je
periodina binarna sekvenca sa autokorelacijskom funkcijom, koja slii autokorelacionoj
funkciji raspodjele sluajne binarne sekvence. Pseudo-um se generie koritenjem sklopa
ift-registra sa povratnom spregom (slika 4.10.). Iako deterministiki, pseudo-um ima
mnogo karakteristika slinih karakteristikama sluajne binarne sekvence.

ift-registar sa povratnom spregom se sastoji od binarnih memorijskih elemenata i logike
povratne sprege. Binarne sekvence se pomjeraju kroz ift-registar kao reakcija na taktove
sata. Sadraj ift-registra se logiki kombinuje kako bi se proizveo ulaz za prvo stanje.
Poetni sadraj registra i logika povratne sprege odreuju sukcesivni sadraj ift-registra.
ift-registar sa povratnom spregom nazivamo linearnim ukoliko se logika povratne sprege u
potpunosti sastoji od sabiraa po modulu 2. Linearni ift-registar sa m-stanja i povratnom
spregom generie pseudo-um prema


m n m n n m n m n
S c S c S c S c S
+
=
0 1 1 2 2 1 1
(4.3.3)

gdje je S
n
vrijednost sekvence u trenutku n, koeficijenti c
i
imaju binarnu vrijednost (0 ili 1), a
C
0
= 1 i oznaava sabiranje po modulu 2.

Poto je broj razliitih stanja ift-registra sa m stanja jednak 2
m
, sekvenca stanja i izlazna
sekvenca na kraju moraju postati periodine sa periodom od najvie 2
m
. Ako linearni ift-
registar sa povratnom spregom sadri sve nule u bilo kom trenutku, on e zaglaviti u tom
stanju zauvijek. Poto ima tano 2
m
-1 nenultih stanja, maksimalni period ne moe prei 2
m
-1.

Poveimo sa koeficijentima iz (4.3.3.) polinom stepena m,


0 1 1 1
) ( c X c X c X X P
m m
m
m
+ + + + =


(4.3.4)

Tada moe biti pokazano da e sekvenca {S
n
} imati maksimalnu duinu, ako i samo ako je
P
m
(.) primitivni polinom. Polinomski stepen m sa koeficijentima u binarnom polju GF(2) je
primitivan ako dijeli X
r
+1 za r koje nije manje 2
m
-1. Tabela 4.2. daje primitivne polinome do
16. stepena, sa binarnim koeficijentima, a slika 4.11 prikazuje implementaciju za m=10.
21

Registar
duine m

2 [1, 2]
3 [1, 3]
4 [1, 4]
5 [2, 5] [2, 3, 4, 5] [1, 2, 4,5]
6 [1, 6] [1, 2, 5, 6] [2, 3, 5, 6]
7 [3, 7] [1, 2, 3, 7] [1, 2, 4, 5, 6, 7] [2, 3, 4, 7] [1, 2, 3, 4, 5, 7]
[2, 4, 6, 7] [1, 7] [1, 3, 6, 7] [2, 5, 6, 7]
8 [2, 3, 4, 8] [3, 5, 6, 8] [1, 2, 5, 6, 7, 8] [1, 3, 5, 8] [2, 5, 6, 8]
[1, 2, 3, 4, 6, 8] [1, 6, 7, 8]
9 [4, 9] [3, 4, 6, 9] [4, 5, 8, 9] [1, 4, 8, 9] [1, 2, 4, 5, 6, 9] [5, 6, 8, 9]
[2, 7, 8, 9]
10 [3, 10] [2, 3, 8, 10] [3, 4, 5, 6, 7, 8, 9, 10] [1, 2, 3, 5, 6, 10]
[2, 3, 6, 8, 9, 10] [1, 3, 4, 5, 6, 7, 8, 10]
11 [2, 11] [2, 5, 8, 11] [2, 3, 7, 11] [2, 3, 5, 11] [1, 3, 8, 9, 10, 11]
12 [1, 4, 6, 12] [1, 2, 5, 7, 8, 9, 11, 12] [1, 3, 4, 6, 8, 10, 11, 12]
[2, 3, 9, 12] [1, 2, 4, 6, 11, 12]
13 [1, 3, 4, 13] [4, 5, 7, 9, 10, 13] [1, 4, 7, 8, 11, 13]
[1, 2, 3, 6, 8, 9, 10, 13] [5, 6, 7, 8, 12, 13] [1, 5, 7, 8, 9, 13]
14 [1, 6, 10, 14] [3, 4, 6, 7, 9, 10, 14] [4, 5, 6, 7, 8, 9, 12, 14]
[1, 6, 8, 14] [5, 6, 9, 10, 11, 12, 13, 14]
[1, 2, 3, 4, 5, 7, 8, 10, 13, 14]
15 [1, 15] [1, 5, 10, 15] [1, 3, 12, 15] [1, 2, 4, 5, 10, 15]
[1, 2, 6, 7, 11, 15] [1, 2, 3, 6, 7, 15]
16 [1, 3, 12, 16] [1, 3, 6, 7, 11, 12, 13, 16]
[1, 2, 4, 6, 8, 9, 10, 11, 15, 16] [1, 6, 8, 14]

Tabela 4.2 Tabela nekih pseudo-um generatora za binarne sekvence (primitivni polinomi)
Primjer: m = 5, [2, 5] 1+ x
2
+x
5





Slika 4.11. Generator zasnovan na linearnom ift - registru duine 10, povezan sa [3, 10].


Maksimalna duina sekvenci pseudo-uma ima sljedee osobine:

1. U svakom periodu je broj jedinica uvijek za jedan vei od broja nula (sekvenca je
skoro balansirana)

2. Autokorelaciona funkcija sekvenci pseudo-uma sa Y(n )= (-1)
Sn
je definisana kao

22

=
=
N
n
p
k n Y n Y
N
k R
1
) ( ) (
1
) ( , 1 2 =
m
N

(4.3.5)

R
p
(k) je periodina i slina autokorelacionoj funkciji sluajne binarne sekvence tokom
jednog perioda (vidjeti sliku 4.12).

3. Meu nizovima jedinica i nula u svakom periodu sekvence maksimalne duine, jedna
polovina pojavljivanja svake vrste je duine 1, jedna etvrtina je duine 2, jedna
osmina duine 3 i tako dalje.

4. Sekvenca maksimalne duine ima ablone svih moguih m-bitnih kombinacija od
kojih se svaka pojavljuje samo jednom u svakom periodu, osim ablona od m nula;
najdui niz nula je m-1.




Slika 4.12. Autokorelaciona funkcija, (a) Sluajna binarna sekvenca (1);
(b) Sekvenca pseudo-uma, perioda = 2
m
- 1


Zadnja osobina je posebno korisna za simuliranje intersimbolske interferencije unesene od
strane filtera u digitalnim komunikacionim sistemima. Intersimbolska interferencija je veliki
izvor degradacije performansi kod digitalnih komunikacijskih sistema. Kako bi simulirali
efekte intersimbolske interferencije, potrebno je da na ulaz sistema dovedemo binarne
sekvence koje imaju sve mogue kombinacije m bita, gdje je m duina memorije sistema
mjerena u bitskim intervalima.

Iako se sluajna binarna sekvenca moe koristiti kao ulaz, nema garancije da sluajna binarna
sekvenca, bilo koje duine, uz vjerovatnou 1 sadri odreeni ablon bita. Meutim, sekvenca
maksimalne duine generisana koritenjem m-faznog ift-registra sa povratnom spregom e
sadravati sve osim jedne m-bitne kombinacije u duini od 2
m
- 1 bita. Veliina memorije
telekomunikacijskih sistema je uglavnom manja od 10 bita, te sekvenca pseudo-uma manja
23
od 1024 bita moe biti dovoljna za simuliranje intersimbolske interferencije za binarni
sistem. Ako koristimo sluajnu binarnu sekvencu bit e potrebna mnogo dua sekvenca.

Primijetimo da sekvenca pseudo uma moe biti generisana mnogo bre nego sluajne
binarne sekvence. Kako bi se zapoelo generisanje sekvence pseudo koda, ift - registar se
puni sa poetnom vrijednou, tzv. sjemenom, koje moe biti bilo koji binarni broj izmeu 1 i
2
m
-1. Dvije sekvence pseudo uma koje se pomjeraju za aproksimativno [2
m
]/2 nisu
meusobno korelirane (ili moemo koristiti druge primitivne polinome).

Sekvenca maksimalne duine sa periodom 2
m
je ona koja ima sve mogue ablone m bita.
Kako smo primjetili ranije, samo m-bitni ablon sa svim nulama ne nastaje prirodno. Kako bi
proizveli takvu sekvecu, trebamo samo dodati cifru 0 na mjesto gdje imamo (m-1) nula. Ovaj
niz se zove deBruijnova sekvenca. Kako bi pojednostavili generisanje takve sekvence,
nameemo da m-1 sekvenci, sastavljenih samo od nula, bude smjeteno na pravom mjestu.
Ako je poetno punjenje ift - registra (10...00) sa jedinicom u krajnjem lijevom registru,
prvih m-1 izlaza e biti nule, na to onda samo ispred trebamo dodati nulu kako bismo
proizveli deBruijnovu sekvencu.


4.3.4. M-arne sekvence pseudo-uma


Mnogi digitalni komunikacijski sistemi koriste M-arne talasne oblike (M-arna faza,
- frekvencija i - amplituda). Kako bi simulirali rad tih sistema moemo koristiti M-arnu
sekvencu pseudo-uma, koja se takoe moe generisati koritenjem ift-registra sa povratnom
spregom. Generisanje takvih sekvenci se moe dobiti generalizacijom binarnog sluaja.
Razmotrimo monini polinom m-tog stepena (koeficijent uz najvei stepen je jednak jedinici:
a
m
= 1)


0 1
1
1
) ( a X a X a X X P
m
m
m
m
+ + + + =


(4.3.6)

sa koeficijentima a
i
u konanom polju od q elemenata. Konana polja zovemo Galoa poljima,
i konana polja sa q elemenata oznaavamo sa GF (q). Polinom stepena m na GF(q) je
primitivan ukoliko je djeljiv sa X
r
+1, za r ne manje od q
m
-1. Analogno binarnom sluaju,
moemo rei sljedee: Primitivni polinom stepena m na GF(q) generie linearnu rekurzivnu
q-arnu sekvencu sa maksimalnom duinom q
m
-1. Rekurzija je data sa:

=

=
m
i
n m n
S a S
1
1 1


(4.3.7)

gdje je S
n
izlaz u trenutku n. Sekvenca {S
n
} se moe generisati linearnim ift-registrom tano
kao na slici 4.10 uz uslov da c
i
zamijenjeno sa odgovarajuim a
i
; glavna razlika je da
umjesto aritmetikog modula 2, trebamo koristiti odgovarajuu aritmetiku u GF(q), to emo
kratko ilustrirati.

Kod M-arne komunikacije obino koristimo vrijednosti M=2
k
. Stoga, elimo postaviti
q = M = 2
k
i razviti aritmetiku u GF(2
k
). Elementi u GF(2
k
) se mogu identifikovati sa svim
polinomima stepena manjeg od k sa koeficijentima u GF(2). Sabiranje je onda obino
24
sabiranje polinoma po modulu 2. U polju GF(2
k
), oduzimane je jednako sabiranju. Mnoenje
je definirano kao obino polinomsko mnoenje modula a i odreenog polinoma g(.) stepena k
nesvodljivog na GF(2); tj., rezultat mnoenja dva polinoma a(X) i b(X) je ostatak dijeljenja
a(X)b(X) sa g(X). Kako bi ilustrirali navedeno razmotrit emo nesvodljivi polinom na GF(2)

1 ) (
3
+ + = X X X g

koji se moe iskoristiti za generisanje polja GF(2
3
).
.
Neka je a(X)=X i b(X)=X
2
+X; tada je u
GF(2
3
) proizvod a(X)b(X)

) ( mod ) ( ) ( ) ( X g X b X a X c =
1
2
+ + = X X

Postoji nekoliko alternativnih naina predstavljanja GF(2
k
), polinomski nain je ve
spomenut i odgovarajui binarni k-struki. Trei nain predstavljanja se zasniva na injenici da
je u svakom konanom polju jedan element , koji zovemo primitivnim, takav da svaki
element ovog polja koji nije nula moe da se izrazi kao neki stepen od . U tabeli 4.3 je data
ilustracija elemenata GF(2
k
) generiranih polinomom g(X)=X
3
+X+1, koji je primitivan;
krajnja lijeva kolona je samo skraena notacija koju emo koristiti kasnije. U praksi se
sabiranje izvodi sa iskljuivom ili logikom, a mnoenje se izvodi koristei tabelu za
provjeru.

Kako bi generisali sekvencu pseudo uma maksimalne duine za oktalne brojeve, potreban
nam je primitivni polinom iji su koeficijenti elementi GF(8). Ako koristimo nain
predstavljanja GF(8) definisan iznad, tada je jedan takav polinom


) 101 ( ) (
3
1
A X X X f + + =


(4.3.8)
Ovaj polinom generie rekurzivnu sekvencu



3 2
+ =
n n n
S S S

(4.3.9)

Predstavljanje
pomou
stepena
Predstavljanje
pomou
polinoma
Predstavljanje
pomou
vektora
A X (0, 1, 0)
B
2
X
2
(1, 0, 0)
C
3
1+X (0, 1, 1)
D
4
X+X
2
(1, 1, 0)
E
5
1+X+X
2
(1, 1, 1)
F
6
1+X
2
(1, 0, 1)
1
7
=

1 (0, 0, 1)
0 0 0 (0, 0, 0)

Tabela 4.3. Naini predstavljanja elemenata u GF(2
3
)


25
Kolo oktalnog ift - registra za ovu sekvencu i uzorak oktalne sekvence su prikazani na slici
4.13. Poto je f
i
(X) polinom 8. stepena, pogodan je za kanal sa memorijom sa tri simbola.


Faza 1 Faza 2 Faza 3
ift-registar
Izlaz
S
n
S
n-1
S
n-2
S
n-3
Izlazni niz: S
n
=0,1,0,1,A,1,0,F
poetne vrijednosti
ift-registra
Suma
0 1
) 101 ( ) (
3
1
A X X X f + + =


Slika 4.13. Generator oktalne seklvence pseudo-uma


Ako su potrebne dvije oktalne sekvence za simulaciju in-fazne i kvadraturne komponente,
tada je potreban i drugi primitivni polinom. Takav polinom (treeg stepena) je

) 101 ( ) (
2 3
2
B a X X X f + + =

sa odgovarajuom rekurzivnom sekvencom

3
2
2
+ =
n n n
S S S

Za primjene koje ukljuuju prenos 16-kvadraturne amplitudne modulacije, primitivni
generatorski polinomi se biraju sa koeficijentima u GF(4), kako bi prikazali I i Q kanale.
Primitivni polinom nad ovim poljem je:



1 ) (
2
+ + = X X x g

(4.3.10)
Ako je korijen ovog polinoma, elementi polja su definisani sa (0, 1 , G, H), gdje se elementi
koji nisu nula mogu identificirati kao



0 ~ (00),
0
= 1 ~ (01),
1
= G ~ (10),

2
= + 1 = H ~ (11),

(4.3.11)

Tabela 4.4 daje generiue polinome stepena m za kvarterne i oktalne sekvence. Oni su
pogodni za koritenje na kanalima sa memorijom od m simbola , m = 1, 2, 3, ,4, 5.


26
Stepen
polinoma
Kvarterni
generirajui
polinomi
Oktalni
generirajui
polinomi
1 1G 1A
1 1H 1B
2 11G 11C
2 11H 11E
3 111G 101A
3 111H 101B
4 101HG 1001C
4 10GGG 1001E
5 10001G 10011C
5 10001H 10011E

Tabela 4.4. Generirajui polinomi


Kao i kod binarnih sekvenci pseudo-uma, dodatna 0 se moe dodati u nebinarnu sekvencu
pseudo-uma, a ima period M
m
-1, kako bi se dobila deBruijnova sekvenca sa periodom
jednakim M
m
.


4.4. Generisanje meusobno povezanih sluajnih sekvenci


esto postoji potreba da se generie sluajna sekvenca koja ima specificiranu
autokorelacionu funkciju R(k) ili ) ( R ili funkciju spektralne gustoe snage S(f). Na primjer,
kod simuliranja mobilnog komunikacijskog kanala sa sluajnim vremenskim variranjem,
vremenske varijacije se modeliraju sluajnim procesom sa takozvanom Jakes-ovom
spektralnom gustoom snage


,
) / ( 1
1
) (
2
D
f f
f S

= ff
D


(4.4.1)

gdje je f
D
maksimalna Doplerova frekvencija.

Jo jedan primjer ove situacije se javlja kada traimo ekvivalentni nain predstavljanja za
fazni um u komunikacijskom sistemu, gdje je fazni um mogue opisati kao Gausov proces
sa proizvoljnom spektralnom gustoom snage, to u velikom broju sluajeva moe biti
specificirano empirijski na osnovu mjerenja.

Kada je 0 ) ( R , za ,..., 2 , 1 , = = k kT
S
proces je u korelaciji za umnoke intervala
uzimanja uzoraka te su tako i uzorci sluajnog procesa u korelaciji. Kako bismo simulirali
vrijednosti koje su uzete kao uzorci za takav proces, trebamo algoritme za generisanje
koerlacijskih sekvenci sluajnih brojeva sa datom korelacionom funkcijom R(kT
S
).

27
Takoer su esti sluajevi kada moramo generisati vrijednosti koreliranih viestrukih
sluajnih procesa. Na primjer, kada predstavljamo propusni opseg Gausovog sluajnog
procesa sa spektralnom gustoom snage, nesimetrinom oko centra frekvencije, dva sluajna
procesa koja predstavljaju realnu i imaginarnu komponentu kompleksne prezentacije
ekvivalenta niskih frekvencija e biti korelirana. Jo jedan primjer se javlja kod modeliranja
propagacije viestrukim putem u radio kanalima gdje se vremenski varirajua priroda svake
staze modelira kao sluajan proces. Kada se ovaj model implementira i formira linija sa
kanjenjem, dobici na liniji postaju skup sluajnih procesa koji su u korelaciji, a kako bismo
simulirali ovaj model, trebamo generisati vrijednosti uzete kao uzorke za skup procesa u
korelaciji sa datom spektralnom gustoom snage.

Viestruki sluajni procesi se mogu predstaviti kao vektorski sluajni proces. Svaka
komponenta sluajnog procesa predstavljenog vektorskim vrijednostima je proces sa
skalarnim vrijednostima sa proizvoljnom autokorelacionom funkcijom. Komponente sa
vektorskim sluajnim procesom mogu biti stavljene u korelaciju kako je to pokazano u
prethodnim primjerima. Dok je korelacija du ose vremena privremena u svojoj prirodi i vodi
ka pojmu spektralne gustoe snage, korelacija izmeu komponenti sluajnih procesa sa
vektorskim vrijednostima predstavlja korelaciju u drugoj dimenziji (esto se ovo zove
prostornom korelacijom) kako je to prikazano na slici 4.14.




Slika 4.14. Primjer sluajnog procesa sa vektorskim vrijednostima


U prvom dijelu ovog odjeljka emo se fokusirati na algoritme za generisanje sluajnih
sekvenci sa skalarnim vrijednostima sa datom autokorelacionom funkcijom ili funkcijom
spektralne gustoe snage. Zatim emo nau panju usmjeriti ka generisanju vektorskih
sekvenci sa datom vremenskom korelacijom i prostornom korelacijom. Za Gausov sluaj
emo vidjeti da e se ovi algoritmi sastoje od nalaenja i primjene linearne transformacije
bilo vremenski (horizontalno du ose vremena, slika 4.14) ili prostorno (primjenjujui
vertikalnu transformaciju, slika 4.14).

Sluaj koji nije Gausov ukljuuje nelinearne transformacije koje je generalno teko nai.


28
4.4.1. Korelirane Gausove sekvence: Skalarni sluaj


Nekorelirane Gausove skvence se mogu transformisati u koreliranu Gausovu sekvencu kroz
linearnu transformaciju ili filtriranjem koje e ouvati Gausovu raspodjelu, ali e promijeniti
osobine korelacije. Koeficijenti linearne transformacije se mogu dobiti iz specificirane
korelacione funkcije izlaza. Ispod su objanjena dva pristupa, pristup u vremenskom domenu
zasnovan na korelacionoj funkciji i pristup u frekventnom domenu zasnovan na funkciji
spektralne gustoe snage. Pristup u vremenskom domenu koristi klasu diskretnih vremenskih
modela koje zovemo autoregresivnim i procese promjenjivog prosjeka (ARMA procesi).


4.4.1.1. Autoregresivni i modeli promjenjivog prosjeka (ARMA procesi)


Gausova sekvenca u korelaciji Y(n) se moe generisati iz nekorelirane Gausove sekvence
X(n), koritenjem modela autoregresivnog promjenjivog prosjeka (ARMA (p,q)) kao







= =
+ + =
q
j
qj
p
i
pi
n X j n X i n Y n Y
1 1
) ( ) ( ) ( ) (
Autoregresivni dio Dio promjenljivog
prosjeka


(4.4.2)

gdje je X(n) ulazna sekvenca koja je nekorelirana Gausova sekvenca sa srednjom
vrijednou nula i varijansom
2
X
, Y(n) je izlazna sekvenca, a p i
pi
,..., 2 , 1 , = i
q j
qj
,..., 2 , 1 , = , su parametri autoregresivnog i dijela sa promjenjivim prosjekom ovog
modela, redoslijedom navoenja. Vrijeme uzimanja uzoraka je normaliziovano na 1 zbog
pogodnosti. Model dat u jednaini (4.4.2.) je linearni vremenski-invarijantni filter diskretnog
vremena sa funkcijom prenosa

=
=

+
=
q
i
i qi
p
i
i pi
f j
f j
f H
1
1
) 2 exp( 1
) 2 exp( 1
) (




(4.4.3)

i na izlazu daje spektralnu gustou snage


2
1
1 2
2
) 2 exp( 1
) 2 exp( 1
) ( ) ( ) (

=
=

+
= =
q
i
i qi
p
i
i pi
X XX YY
f j
f j
f H f S f S


za
2
1
< f
(4.4.4)

Jednostavnija verzija modela, koja se zove autoregresivni AR(p) model, se dobije kao
rezultat, ako su koeficijenti dijela modela sa promjenjivim prosjekom jednaki nuli:

=
+ =
p
i
pi
n X i n Y n Y
1
) ( ) ( ) (


(4.4.5)
29
Za AR(p) model se moe pokazati da je autokorelaciona funkcija Y(n) data sa

=
+ =
p
i
X YY pi YY
i R R
1
2
) ( ) 0 (

(4.4.6)
i


1 , ) ( ) (
1
=

=
k i k R k R
p
i
XX pi YY


(4.4.7)

Jednainu (4.4.7.) za k=1, 2, ..., p moemo izraziti u matrinoj formi


(
(
(
(
(

(
(
(
(


=
(
(
(
(

pp
p
p
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
XX
R
p R
p R
p R
R
R
p R
R
R
p R
R
R


2
1
) 0 (
) 2 (
) 1 (
) 2 (
) 0 (
) 1 (
) 1 (
) 1 (
) 0 (
) (
) 2 (
) 1 (


(4.4.8)

Jednaina (4.4.8) se zove Yule-Walkerova jednaina i vee se za vrijednosti autokorelacione
funkcije izlaza i parametara modela. Uzimajui R
XX
(k), k=0, 1 , 2, ....; p, moemo dobiti
koeficijente i=1, 2, ..., p, invertiranjem jednaine (4.4.8) i vrijednosti
2
X
iz jednaine (4.4.7).
Kada se jednom dobiju parametri modela, oni se mijenjaju u jednaini (4.4.5) kako bi se
nekorelirana Gausova sekvenca transformisala u koreliranu Gausovu sekvencu.

Dok je lako dobiti parametre AR(p) modela, kao odnos izmeu koeficijenata ARMA(p)
modela i autokorelacione funkcije, izlaz je mnogo sloeniji i nelinearan po svojoj prirodi, pa
tako i dosta komplikovan za rjeavanje po koeficijentima modela sa datim autokorelacionim
vrijednostima. Iako postoji velika koliina literature vezane za ovu temu, najee koritena
procedura ukljuuje konverziju ARMA(p,q) modela u ekvivalentni AR model reda >>p+q i
rjeavanje parametara AR(p) modela koritenjem Yule-Walkerove jednaine. Drugi pristup
rjeava prvo AR dio ARMA modela i potom nalazi koeficijente MA dijela. ARMA model se
koristi u situacijama kada je spektralna gustoa snage za izlaznu sekvencu takva da ima
kompleksnu strukturu sa mnogo vrhova i udubljenja. Iz jednaine (4.4.3) se moe vidjeti da
AR dijelovi utiu na polove funkcije prenosa (i isto tako i na vrhove u izlaznoj spektralnoj
gustoi snage), a MA dio odgovara nulama funkcije prenosa (i utie na udubljenja u
spektralnoj gustoi snage).

Kada implementiramo ARMA model koristei jednainu (4.4.2) trebamo p poetnih
vrijednosti Y(k) kako bismo poeli rekurziju. Ako se ovi poetni uslovi biraju proizvoljno,
tada e izlaz imati tranzijent na poetku, a nekoliko prvih uzoraka (reda 10p) treba ignorirati.


30
4.4.1.2. Metoda spektralne faktorizacije


Moemo projektovati i filter u frekventnom domenu kako bi transformirali nekoreliranu
Gausovu sekvencu u koreliranu sekvencu. Ovaj pristup je posebno koristan ako je spektralna
gustoa snage u izlaznom procesu data u zatvorenoj formi kao omjer polinoma f
2
. Kada
propustimo nezavisnu Gausovu sekvencu kroz filter, izlazni Gausov proces e imati
spektralnu gustou snage


2
) ( ) ( ) ( f H f S f S
XX YY
=
(4.4.9)

gdje je



2
) (
X XX
f S = za
2
1
< f
(4.4.10)
te, tako ako izaberemo
2
X
=1, imamo


2
) ( ) ( f H f S
YY
=

(4.4.11)

Jednaina (4.4.9) pokazuje da paljivim izborom funkcije prenosa filtera, moemo dobiti
eljeni izlaz spektralne gustoe snage (autokorelacionu funkciju). Funkcija prenosa izvedivog
i stabilnog filtera se moe sintetizirati primjenom transformacije s = 2jf na jednainu
(4.4.10), faktoriziranjem datog ) ( f S
YY
i samim tim
2
) ( f H u proizvod forme ) ( ) ( s H s H .
Funkcija prenosa filtera se bira kao H(s), koja ima sve svoje polove na lijevoj polovici ravni
s. Primjer dat ispod ovo ilustrira.


Primjer. Nai funkciju prenosa fltera za generisanje Gausovog uma sa srednjom
vrijednou nula pomou spektralne gustoe snage

2 2
2
) 2 (
) 2 (
) (
f a
f
f S
YY

+
=

Pretpostavimo da je ulaz Gausov proces sa srednjom vrijednou nula sa
1 ) ( = f S
XX
.

Rjeenje:

2 2
2
) 2 (
) 2 (
) (
f a
f
f S
YY

+
=

Uvrtavajui s = 2jf, dobijamo

|

\
|

\
|
+
=

=
s a
s
s a
s
s a
s
s H
2 2
2
2
) (
31
Prvi faktor je
s a
s
+
, i on je funkcija prenosa izvodivog filtera. To jest,

, ) (
s a
s
s H
+
=
jf a
jf
f H

2
2
) (
+
=

to daje

2 2
2
2
) 2 (
) 2 (
) (
jf a
jf
f H

+
=


Kada se funkcija prenosa filtera dobije preko spektralne faktorizacije, tada se filter moe
implementirati kao filter sa beskonanim impulsnim odzivom ili kao filter sa konanim
impulsnim odzivom.

U mnogim sluajevima se izlazna spektralna gustina moe prikazati u empirijskoj formi ili
moe biti u analitikoj formi koja nije podlona faktorizaciji (na primjer Jakesov spektar). U
ovim sluajevima se moe odabrati jedan od dva sljedea pristupa.

1. Empirijski prilagoditi analitiku formu (kao omjer polinoma od f
2
) za datu spektralnu
gustou snage i potom primijeniti spektralnu faktorizaciju.

2. Direktno sintetizovati filter sa konanim impulsnim odzivom podeavanjem funkcije
prenosa filtera tako da bude jednaka kvadratnom korijenu date spektralne gustoe snage
(faza filtera nije bitna poto ne utie na spektralnu gustou snage).

Druga metoda se moe koristiti da se dobije Gausova sekvenca sa Jakesovim spektrom koji je
dat u jednaini (4.4.1.), podeavanjem


( ) | |
4 / 1
2
/ 1 ) ( ) (

= =
d YY
f f f S f H

(4.4.12a)

Ovaj filter ima impulsni odziv jednak


), ( 457 , 1 ) (
4 / 1
4 / 1
x J f t h
d

= t f x
d
2 =
(4.4.12b)

gdje je J
1/4
(x) frakciona Besselova funkcija. Filter dat u jednaini (4.4.12) se moe
implementirati kao filter sa beskonanim impulsnim odzivom ili kao filter sa konanim
impulsnim odzivom.


32
4.4.2. Korelacioni nizovi Gausovog vektora


4.4.2.1. Specijalni sluaj


Sada emo razmotriti problem generisanja vrijednosti uzoraka m Gausovih procesa sa
srednjom vrijednou nula: Y
1
(t), Y
2
(t),..., Y
m
(t), sa proizvoljnom spektralnom gustoom
snage i proizvoljnom korelacijom izmeu njih. Poet emo sa jednostavnijim sluajem u kom
je autokorelaciona funkcija svakog od ovih procesa ista, osim za faktor veliine, a
kroskorelaciona funkcija ima istu funkcijsku formu kao i autokorelaciona funkcija. (Ova
pretpostavka je opravdana za modeliranje kanala sa vie putanja.) Vrijednosti uzete kao
uzorci ovih m procesa sa skalarnim vrijednostima se mogu tretirati kao komponente procesa
sa vektorskim vrijednostima ) (k Y




(
(
(
(

=
) (
) (
) (
) (
2
1
k Y
k Y
k Y
k Y
m


(4.4.3)

uz


{ } ) ( ) ( ) ( ) ( n R n k Y k Y E n R
ij Y Y
j i
= + = (4.4.14)

gdje je
ij
kovarijansa izmeu komponenti procesa u bilo koje vrijeme, a R(n) opisuje
vremensku korelaciju. U ovom modelu su prostorne i vremenske korelacije odvojive.

Moemo generisati niz Gausovih vektora ) (k Y

sa datim skupom kovarijansi izmeu njegovih


komponenti, transformisanjem niza Gausovih vektora ) (k X

sa Gausovim nekoreliranim
komponentama (i stoga nezavisnim), gdje svaka komponenta ima vremensku korelaciju
odreenu sa R(n). Prvo emo generisati m nezavisnih nizova (komponenti vektora X

) sa
datom vremenskom korelacijom R(n) koristei, recimo, ARMA metodu, i potom
transformirati nekorelirane komponente vektora X

u korelirane komponente, koristei


linearnu transformaciju bez memorije. Ovo je jednostavan problem i moe se zadati na
slijedei nain (ovdje moemo izostaviti vremenski indeks k poto se transformacije bez
memorije primjenjuju na komponente X

za svaku vrijednost k).



Sluajni vektor X

sa vie varijanti Gausove raspodjele sa srednjom vrijednou nula i


matricom kovarijanse













33

(
(
(
(

= =

1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

I
X

(4.4.15)

elimo da transformiemo u jo jedan Gausov vektor Y

sa srednjom vrijednou nula i


matricom kovarijanse


(
(
(
(

mm m m m
m
m
Y


3 2 1
2 23 22 21
1 13 12 11

(4.4.16)





primjenom linearne transformacije oblika


X A Y

=
(4.4.17)

Linerna transformacija data iznad transformie kovarijansu martice X

, odnosno matricu
identiteta datu izrazom (4.4.15) u



T T
X Y
AA A A = =




(4.4.18)
Za datu kovarijansu matrice Y

, jednaina (4.4.18) se moe iskoristiti da naemo


transformacionu matricu A faktorizacijom matrice kovarijanse. Ako je

pozitivna i
konana, tada postoji jedinstvena nia dijagonalna matrica A forme




(
(
(
(

=
mm m m
a a a
a a
a
A

2 1
22 21
11
0 0
0 0


(4.4.19)
takva da je

=
T
Y
AA



(4.4.20)
Ova dekompozicija se naziva dekompozicija oleskog, a elementi A se mogu dobiti iz
elemenata

na osnovu


| |

=
1
1
2
1
1
j
k
jk ij
j
k
jk ik ij
ij
a
a a
a

,

(4.4.21)
gdje je

=
=
0
1
0
k
jk ik
a a , m i j 1
34
Takoe je mogue iskoristiti dekompoziciju svojstvenog vektora kako bi se nala linearna
transformacija. U svakom sluaju, nakon to je transformacija naena, algoritam za
generisanje niza koreliranih Gausovih vektora je prikazan na slici 4.15.


Trenutna linearna
transformacija
Y = AX
ARMA filter
ARMA filter
ARMA filter
X
1
(k)
X
m
(k)
X
2
(k)
Y
1
(k)
Y
2
(k)
Y
m
(k)
Ulaz: Gausovi procesi koji nisu ni u
vremenskoj ni u prostornoj korelaciji
Izlaz: Gausovi procesi koji su u
vremenskoj i prostornoj korelaciji
.
.
.
.
.
.


Slika 4.15. Algoritam za generisanje korelisanih Gausovih vektora



4.4.2.2. Opi sluaj


U opem sluaju, prostorna i vremenska korelacija mogu biti proizvoljne i svaka komponenta
Y

moe imati razliitu autokorelacionu funkciju, a kroskorelaciona funkcija takoe moe


imati razliite funkcijske forme.

Proces Y

je sada specificiran nizom kovarijantnih matrica

(j) za svaki vremenski


zaostatak j i moe biti generisan transformacijom X

, te koritenjem ARMA procesa sa


vektorskim vrijednostima slinim skalarnoj verziji:


) ( ) ( ) ( ) (
1 1
n X j n X i n Y n Y
q
j
qj
p
i
pi

+ + =

= =


(4.4.22)

Primijetimo da su koeficijenti modela i sami matrice. Koeficijenti autoregresivne verzije
vektorskog modela se mogu odrediti koritenjem vektorske verzije Yule-Walkerovih
jednaina.


35
4.4.3. Sekvence koje su korelirane ali nisu Gausove


Generisanje sluajnih sekvenci sa proizvoljnim funkcijama gustine vjerovatnoe i
autokorelacionim funkcijama je tee nego generisanje koreliranih Gausovih sekvenci. U
Gausovom sluaju, kada se linearna transformacija primijeni na nekorelirane Gausove
sekvence one zadravaju Gausovu funkciju gustoe raspodjele, dok su u isto vrijeme
korelirane. Ovo nije sluaj kada sekvence nisu Gausove. Na primjer, ako je
) ( ) 1 ( ) ( n X n X n Y + = , gdje je ) (n X nezavisna sekvenca uniformnih sluajnih varijabli,
sekvenca ) (n Y e biti korelirana, ali e funkcija gustoe raspodjele biti trougaona. Tako
linearna transformacija mijenja i korelacionu funkciju i funkciju gustoe raspodjele (osim u
Gausovom sluaju, gdje je forma funkcije gustoe raspodjele ouvana linearnom
transformacijom).

Meutim, mogue je kontrolirati i funkciju gustoe raspodjele i korelacionu funkciju
koritenjem kombinacije linearne i nelinearne transformacije kako je to prikazano na slici
4.16.




Slika 4.16. Generisanje sluajne sekvence sa proizvoljnom funkcijom raspodjele i
autokorelacionom funkcijom (spektralnom gustoom snage))


Nelinearnosti f(.) i g(.) i reakcije filtera h(.) se biraju tako da daju eljenu izlaznu funkciju
gustoe raspodjele i spektralnu gustou snage. Procedura koja se koristi za f, g, i h je dosta
kompleksna. Ukratko, f(.) mapira uniformnu nekoreliranu sekvencu X u nekoreliranu
Gausovu sekvencu V. Filter h mapira nekoreliranu Gausovu sekvencu V u koreliranu
Gausovu sekvencu W, koja se potom mapira u eljenu funkciju gustoe raspodjele
koritenjem nelinearne transformacije g(.), koja takoe modifikuje iskrivljenu spektralnu
gustou snage na eljenu spektralnu gustou snage. Ove transformacije se ne mogu izabrati
nezavisno poto utiu i na funkciju gustoe raspodjele i na spektralnu gustinu snage. One se
moraju birati zajedno u skladu sa zahtjevima izlazne funkcije gustoe raspodjele i spektralne
gustoe snage.

Viedimenzionalna verzija ovog problema je mnogo tea za rjeavanje i nema opih rjeenja.



Nekorelirana
ulazna
sekvenca
(uniformna
funkcija
raspodjele)
Nelinearna
transformacija
bez memorije
f( )
Linearni
transforma-
cioni filter
h( )
Nelinearna
transformacija
bez memorije
g( )
U V
W
U
Y
36
4.5. Testiranje generatora sluajnih brojeva


Izlazi generatora sluajnih brojeva koji se koriste za rad duge Monte Karlo simulacije se
moraju testirati kako bi se osiguralo da imaju prave statistike osobine (vremenske i
distribucijske). Dok je neophodno izvriti iscrpne testove na svim generatorima sluajnih
brojeva koji su dio paketa simulacije, neophodno je i testirati barem uniformne Gausove
generatore sluajnih brojeva, poto se drugi generatori obino izvode iz njih.

Postoje dva opa skupa testova koja se obino koriste za verifikovanje statistikih osobina
izlaza generatora sluajnih brojeva. Prvi skup provjerava vremenske osobine izlaza
generatora, a najvanije su stacionarnost i nezavisnost. Drugi skup verifikuje distributivne
osobine. Ovaj skup testova ukljuuje jednostavne provjere vrijednosti parametara, kao to su
srednje vrijednosti i varijanse izlaznih sekvenci i testove podobnosti, koji daju naznaku o
tome koliko blisko funkcije gustoe raspodjele opisuju stvarne rezultate generatora sluajnih
brojeva za distribucije koje trebaju dati.

Testovi mogu varirati od posmatranja razliitih sluajeva izvedenih iz izlaznih sekvenci i
njihove vizualne inspekcije kako bi se vidjelo da li izgledaju dobro, pa do sofisticiranijih
(statistikih) testova sa hipotezama za eljeni nivo pouzdanosti.


4.5.1. Stacionarnost i korelacija


4.5.1.1. Uvod


Izlazni generatori sluajnih brojeva bi trebali biti stacionarni i nekorelirani (osim kada elimo
generisati korelirane sekvence; a ak i u ovom sluaju je ulazna sekvenca koja se koristi za
generisanje korelirane sekvence obino bijela, tj. nekorelirana). Jednostavni testovi za
stacionarnost ukljuuju sljedee korake:

1. Generisati dugu sekvencu od N uzoraka.

2. Podijeliti je na m nepreklapajuih segmenata i izraunati srednje vrijednosti i
varijanse svakog segmenta.

3. Testirati jednakost srednjih vrijednosti i varijansi (i drugih parametara).

Za stacionarni proces, srednje vrijednosti, varijanse i drugi parametri koji se izraunavaju iz
razliitih segmenata podataka, bi trebali biti jednaki u granicama statistikih varijacija.

Jedan od ozbiljnijih problema sa generatorom sluajnih brojeva je taj da je izlazna sekvenca
korelirana i u najgorem sluaju periodina sa periodom kraim od duine simulacije.
Procijenjene vrijednosti normalizovane autokovarijansne funkcije se mogu koristiti za
37
provjeru korelacije izlazne sekvence generatora sluajnih brojeva (stacionarnost se
pretpostavlja). Ako je normalizovana autokovarijansna funkcija definisana kao

{ }
{ } ) 0 (
) (
) (
) ( ) (
) (
2 2
2
XX
XX
X
X
XX
C
k C
j X E
k j X j X E
k =

+
=




tada je poeljno da je

=
0
1
) (k
XX

za
za

0
0

=
k
k


Ako je ) (k
XX
za neke vrijednosti k, to pokazuje da je izlazna sekvenca korelirana.
Nadalje, ako ) (k
XX
ima vrhove u k=mN
0
, m=1, ,2, ..., znai da je i periodina. Poto
moramo koristiti procijenjene vrijednosti ) ( k
XX
umjesto ) (k
XX
za testiranje korelacije i
periodinosti, moramo uzeti u obzir statistiku varijabilnost ) ( k
XX
.

Sljedea procedura se moe iskoristiti sa testiranje korelacije i periodinosti:

1. Generisati veoma dug niz.

2. Podijeliti podatke u preklapajue segmente od N taaka sa preklapanjem od N/2
(vidjeti sliku 4.17). Neka X
0
, X
1
, X
2
, itd., predstavljaju vektore podataka.

3. Izraunati normaliziranu kroskorelaciju izmeu X
0
i X
0
, X
1
, X
2
, (tehnika brze
Furijeove transformacije se moe koristiti za izraunavanje kroskorelacije).

4. Nacrtati ) ( k
XX
i provjeriti ima li vrhova.




Slika 4.17. Detalji testova za periodinost; procijenjeni period =N
0

38
Slika 4.18 pokazuje neke tipine rezultate. Primjetimo da je periodine komponente lake
primijetiti u vremenskom nego u frekventnom domenu, zbog inherentno bune prirode
spektralnih estimatora tipa periodograma.

Testiranje generatora sluajnih brojeva na periodinost je esto proraunski intenzivan
zadatak, poto period moe biti veoma dug i moramo izraunati ) ( k
XX
zaostataka. Nadalje,
testovi se moraju ponavljati za razliite vrijednosti poetnih vrijednosti koritenih za
pripremu generatora sluajnih brojeva. Ipak je neophodno uraditi ove testove jednom za svaki
skup poetnih vrijednosti. Dobre vrijednosti poetnih vrijednosti treba sauvati i koristiti za
pokretanje dugih simulacija.




Slika 4.18. Primjer korelirane sekvence, (a) Funkcija uzorka x(t),
(b) periodogram x(t); (c) autokorelacija x(t)
39
4.5.1.2. Durbin-Watsonov test korelacije



Ovo je jedna stroija procedura za testiranje hipoteze da su susjedni lanovi sekvence X(n)
nekorelirani. Statistika testa koja se koristi je


| |
| |

=
=

=
N
n
N
n
n X
n X n X
D
1
2
2
2
) (
) 1 ( ) (

(4.5.1)

Primijetimo da ako su X(n) i X(n-1) nekorelirani (korelacija=0), tada D ima oekivanu
vrijednost 2. Vrijednost D bi bila mnogo manja od 2, da postoji snana pozitivna korelacija i
pribliila bi se 4, da postoji snana negativna korelacija. Ovaj test je zasnovan na 2 praga i
primjenjuje se kako je prikazano na slici 4.19 (pragovi d
L
i d
U
prikazani na slici 4.19 su za
velike vrijednosti N). Bolje je konstruisati generatore sluajnih brojeva na takav nain da
njihov period moe biti odreen analitiki. Jedan takav primjer je Wichman-Hill algoritam,
koji konstruie generator sluajnih brojeva sa dugim periodom, kombinovanjem izlaza vie
generatora sa kraim periodima. Osobine pojedinanih generatora koji se koriste kod
Wichman-Hill algoritma se mogu testirati iscrpno, poto su njihovi periodi kratki.




Slika 4.19. Durbin-Watsonov test; d
U
=1,70, d
i
=1,65, N=100;
vjerovatnoa u donjem dijelu (oblast visoke pozitivne korelacije)= 0,05


4.5.2. Testovi pogodnosti


Generatori sluajnih brojeva su projektovani tako da daju izlazne sekvence koje predstavljaju
uzorke iz datih raspodjela, kao to su uniformna i Gausova raspodjela. Da li je to sluaj,
moemo testirati koritenjem razliitih testova pogodnosti. Najjednostavniji test se sastoji od
toga da se bar osigura da generatori sluajnih brojeva daju brojeve sa eljenom srednjom
vrijednou i varijansom. Ovo se radi tako da se procijeni srednja vrijednost i varijansa izlaza
generatora sluajnih brojeva i uporedi sa eljenim vrijednostima.
40
Kao dodatak testiranju vrijednosti parametara, esto je neophodno porediti oblik raspodjele
brojeva generisanih sa generatorom sluajnih brojeva prema raspodjelama koje generator
treba da proizvede. Popularan test za ovo je hi kvadrat test, koji se sprovodi kako slijedi.

Pretpostavimo da generiemo N uzoraka i napravimo histogram N uzoraka. Neka je N
i,
i=1, ,2 ,..., m, stvarni broj elija u m elija histograma. Neka je p
i,
i=1, 2, ...,m, stvarna
vjerovatnoa da uzorak padne u i-tu eliju za pretpostavljenu funkciju gustoe raspodjele,
onu koji generator sluajnih brojeva treba reproducirati. Tada, pod nekim blagim
pretpostavkama varijabla


| |

=
m
i i
i i
Np
Np N
Z
1
2

(4.5.2)

ima priblinu vrijednost hi-kvadratne distribucije sa (m-1) stepenom slobode za N veliko i
m > 5. Mala vrijednost Z pokazuje dobru pogodnost, a velika vrijednost je pokazatelj
nepogodnosti. Prihvatljivu vrijednost Z odreujemo iz donje vjerovatnoe hi-kvadratne
distribucije sa (m-1) stepenom slobode za dati nivo pouzdanosti. Gausova aproksimacija se
takoe moe iskoristiti za odabir odgovarajuih vrijednosti pragova za Z.

Jedan teak aspekt implementiranja hi-kvadratnog testa je odabir pravih intervala za
konstruisanje histograma. Iako nema opeg pravila koje moe garantovati dobre rezultate za
sve veliine uzoraka i raspodjele, postoji nekoliko smjernica koje se mogu iskoristiti.
Preporuljivo je da se intervali odaberu tako da je

m
p p p
2 1


(tj., jednake elije) i da se m dri malim, recimo <50. Ako je veliina uzorka N velika, tada m
treba biti odabrano tako da bude jednako N .

Jo jedan dobar test pogodnosti se zove Kolmogorov-Smimov (KS) test i zasnovan je na KS
statistici.


{ } ) ( ) (

sup x F x F D
N
x
N
=

(4.5.4)

gdje je ) (

x F
N
empirijska funkcija distribucije,


N
x
x F
N

=
uzoraka broj
) (


(4.5.4)

a F(x) je raspodjela koju generator sluajnih brojeva treba proizvesti. Male vrijednosti D
N
pokazuju na dobru pogodnost, a velike vrijednosti D
N
na lou pogodnost. Ukoliko je F(x) u
potpunosti poznato, pogodnost se moe slabo procijeniti ako je



> |

\
|
+ +
1
11 , 0
12 , 0 C D
N
N
N


(4.5.5)
41
gdje su vrijednosti C
1-
(to ne zavisi od N!) prikazane u tabeli 4.5 za razliite vrijednosti .


1 - 0,80 0,90 0,95 0,975 0,99
C
1-
1,138 1,224 1,358 1,480 1,628

Tabela 4.5 Kritine vrijednosti modifikovane KS statistike


Broj, raznolikost i kompleksnost testova za generatore sluajnih brojeva je zaista velik.
Mogue je ograniiti obim testova razmatranjem samo onih testova koji su konzistentni sa
namjeravanom upotrebom generisanih brojeva. Ipak, treba biti oprezan kod biranja i
testiranja generatora sluajnih brojeva, ako je simulacija u kojoj se koriste skupa (na primjer,
vremenski zahtjevna, trai veoma precizne rezultate, ili je kritina komponenta velikog
projekta). Rezultati simulacije su onoliko dobri koliko su dobri modeli koji stoje iza funkcije,
npr., generatori sluajnih funkcija.

You might also like