7 Zufallszahlen, Simulation

Werbung
7 Zufallszahlen, Simulation
Es ist nützlich, Folgen von i.i.d. R[0, 1]-verteilten Zufallszahlen “ auf einem Rechner
”
erzeugen zu können (vgl. Simulation, Monte-Carlo-Verfahren) . Letztere sind i.A. keine
echten“ Zufallszahlen , d.h. Ergebnisse von Zufallsexperimenten , sondern (so genann”
te) Pseudozufallszahlen , die durch einen (deterministischen) Algorithmus erzeugt werden. Häufig werden dabei lineare Kongruenzgeneratoren benutzt, die auf Lehmer (1948)
zurückgehen und wie folgt arbeiten : Wähle
m>0
a >0
r ≥0
z0 ≥ 0
:
:
:
:
Modul
groß , etwa m = 2w , w = Wortlänge (in bit) des Computers ;
Multiplikator
(geeignet) ;
Inkrement
(geeignet) ;
Startwert
(geeignet) .
Algorithmus : zn+1
un+1
:= (azn + r)
mod m
azn + r
∈ [0, m) ,
:= Rest von
m zn+1
∈ [0, 1) .
:=
m
Bei r = 0 : Multiplikative Kongruenzmethode (Lehmer, 1948) .
Bemerkung 7.1. a) Nicht jede Wahl von m, a, r, z0 liefert geeignete“ Folgen von
”
Zufallszahlen , z.B.
m = 26, a = 3, r = 3, z0 = 5
(zn )n=0,1,... :
5, 18, 5, 18, . . .
=⇒
(Periode 2) .
b) Die Periodenlänge kann höchstens m betragen, da nach spätestens m+1 Iterationen
wieder der Startwert z0 erreicht wird. Mit Hilfe zahlentheoretischer Methoden lassen sich
m, a, r, z0 so bestimmen, dass die Periodenlänge m erreicht wird. Allerdings bedeutet
maximale Periodenlänge nicht automatisch, dass der Zufallsgenerator gut“ ist. Zum
”
Beispiel erhält man für festes m durch
n n
−
, n = 0, 1, . . . , die Folge
un :=
m
m
m−1
1 2
1 2 3
,
, ...,
; 0, ,
, ... ,
0, ,
m m m
m
m m
die viel zu systematisch aufgebaut ist, um sich wie eine Folge U1 , U2 , . . . von i.i.d.
R[0, 1]-ZV. zu verhalten.
66
c) Es gibt statistische Tests “, die es gestatten, Realisationen von Zufallszahlen auf
”
Eigenschaften wie z.B. Unabhängigkeit oder identische R[0, 1]-Verteilung zu überprüfen (vgl. χ2 -Anpassungstest, Run-Test etc.).
Im Folgenden gehen wir davon aus, dass ein guter“ Generator zur Erzeugung langer “
”
”
Serien von i.i.d. (Pseudo-) Zufallszahlen U1 , U2 , . . . mit PUi = R[0, 1] zur Verfügung
steht.
Aus diesen lassen sich dann durch Transformationen i.i.d. Folgen X1 , X2 , . . . mit
anderen Verteilungen gewinnen :
T1. Inversionsverfahren
U sei R(0, 1)-verteilt und F eine reelle VF. mit einer (verallgemeinerten )
Inversen F −1 , d.h. F −1 (u) := inf{x : F (x) ≥ u} , u ∈ (0, 1)
=⇒
X := F −1 (U) besitzt die VF. F .
Beispiel 7.1.
Exp(λ)-verteilte Zufallszahlen
=⇒
U1 , U2 , . . . i.i.d. R(0, 1)-verteilt , λ > 0 fest
1
1
X1 := − ln U1 , X2 := − ln U2 , . . . sind i.i.d. Exp(λ)-verteilt .
λ
λ
Beispiel 7.2.
Diskrete Verteilung mit endlichem Träger
Es soll die folgende Verteilung erzeugt werden :
x1 x2 . . . xN Σ
xk
.
P (X = xk ) p1 p2 . . . pN 1
Ist U R(0, 1)-verteilt und setzt man
k−1
k
pj < U ≤
pj
X := xk , falls
j=1
(k = 1, . . . , N) ,
j=1
so gilt :
P (X = xk ) = pk
(k = 1, . . . , N) .
1
a) (Diskrete) Laplace-Verteilung : P (X = k) =
(k = 1, . . . , N)
N
k−1 k
,
(k = 1, . . . , N) ;
Setze X := k , falls U ∈
N
N
67
b) B(1, p)-Verteilung : P (X = 1) = p, P (X = 0) = 1 − p
Setze X := [U + p]
=⇒
X ist B(1, p)-verteilt .
Allgemeiner : B(n, p)-Verteilung
U1 , . . . , Un i.i.d R(0, 1)-verteilt =⇒
n
X :=
[ Ui + p ] ist B(n, p)-verteilt .
i=1
Beispiel 7.3. Geometrische Verteilung Durch Abrunden“ einer Exp(λ)-verteilten
”
ZV. erhält man eine geometrisch-verteilte ZV. mit Parameter p = 1 − e−λ :
Sei X
Exp(λ)-verteilt (λ > 0) und Y := [X]
P (Y = k) = pq k
=⇒
(k = 0, 1, . . . ; q = 1 − p = e−λ ) .
Eine weitere Methode zur Erzeugung diskret verteilter Zufallszahlen liefert das
T2. Ersteintrittsverfahren
Beispiel 7.3
Fortsetzung; Geometrische Verteilung
Seien X1 , X2 , . . . i.i.d. B(1, p)-verteilt . Setzt man
Y
:= min{n ∈ N : Xn = 1} − 1
= max{n ∈ N : X1 = . . . = Xn = 0} , max ∅ := 0 ,
so gilt :
P (Y = k) = pq k
(k = 0, 1, . . . ; q = 1 − p ) .
Beispiel 7.4.
Seien X1 , X2 , . . . i.i.d. Exp(λ)-verteilte ZV. (λ > 0 , fest ). Setzt man
Y
:= min{n : X1 + · · · + Xn > 1} − 1
= max{n : X1 + · · · + Xn ≤ 1} , max ∅ := 0 ,
so ist Y πλ -verteilt .
68
Bemerkung 7.2. Da Xi = − λ1 ln Ui mit i.i.d. R(0, 1)-verteilten ZV. Ui (i = 1, 2, . . .),
kann eine πλ -verteilte ZV. Y auch direkt aus den Ui erzeugt werden :
Setzt man
Y
:= min{n : U1 · · · Un < e−λ } − 1
= max{n : U1 · · · Un ≥ e−λ } , max ∅ := 0 ,
so ist Y πλ -verteilt .
T3. Verwerfungsmethode
Es sollen i.i.d. ZV. X1 , X2 , . . . mit einer (diskreten bzw. absolut-stetigen) Dichte f
erzeugt werden.
Stattdessen erzeugt man zunächst i.i.d. ZV. Y1 , Y2, . . . mit einer (diskreten bzw.
absolut-stetigen ) Dichte g = g(y) , für die gilt :
(7.1)
∃ c > 0 : f (y) ≤ c g(y)
∀ y.
Ferner seien U1 , U2 , . . . i.i.d. R(0, 1)-Zufallszahlen, unabhängig von Y1 , Y2 , . . . .
Setzt man N0 := 0 und
f (Yn ) (7.2) Nk := min n > Nk−1 : Un ≤
,
c g(Yn )
Xk := YNk (k = 1, 2, . . .) ,
so sind X1 , X2 , . . . i.i.d. ZV. mit Dichte f .
Bemerkung 7.3. a) Der Name der Methode rührt daher, dass aus der Folge Y1 , Y2, . . .
alle Zufallszahlen gestrichen ( verworfen“ ) werden , für die die Bedingung in (7.2)
”
nicht erfüllt ist.
b) Die ZV. N1 − 1, N2 − N1 − 1, . . . sind geometrisch verteilt mit Parameter
f (Y1 ) 1
es gilt
=
und
p = P U1 ≤
cg(Y1)
c
1 − 1c
q
EN1 = + 1 = 1 + 1 = c ,
p
c
d.h., im Mittel werden c der Zufallszahlen Yi benötigt, um eine der Zufallszahlen
Xk zu erzeugen . c sollte daher möglichst klein gewählt werden unter der Neben
bedingung (7.1) .
69
Seien f bzw. g die (diskrete)
Beispiel 7.4
Fortsetzung; Poisson-Verteilung
Dichte der πλ - bzw. der geometrischen Verteilung (mit Parameter p), also
⎫
λk −λ ⎬
e
f (k) =
k = 0, 1, . . . .
k!
⎭
g(k) = pq k
k
−λ
(k)
= e p (λ/q)
≤ const ∀ k ∈ N0 , ist Bedingung (7.1) erfüllt (c geeignet ).
Da fg(k)
k!
Die Zufallszahlen Y1 , Y2 , . . . sind leicht zu erzeugen (vgl. Beispiel 7.3), ebenso die
U1 , U2 , . . . !
T4. Erzeugung von N(0, 1)-Zufallszahlen
Seien U1 , U2 i.i.d. R(0, 1)-verteilt . Setzt man
X1 :=
−2 ln U1 cos(2πU2 ) ,
X2 :=
−2 ln U1 sin(2πU2 ) ,
so sind X1 und X2 i.i.d. N(0, 1)-verteilt .
Anwendung : Die i.i.d. Folge U1 , U2 , . . . von R(0, 1)-ZV. wird paarweise in die i.i.d.
Folge X1 , X2 , . . . von N(0, 1)-ZV. transformiert .
T5. Erzeugung d-dimensionaler Zufallsvektoren
Beispiel 7.5.
R(B)-Verteilung , B ⊂ Rd beschränkt , V ol(B) > 0
Wähle einen Quader [a, b] so , dass B ⊂ [a, b], a = (a1 , . . . , ad ), b = (b1 , . . . , bd ) .
Für d i.i.d. R(0, 1)-ZV. U1 , . . . , Ud setze man Xi := ai +(bi −ai ) Ui (i = 1, . . . , d )
und verwerfe
X = (X1 , . . . , Xd ),
falls X ∈
/ B,
andernfalls nicht.
=⇒
Die resultierende d-dimensionale ZV. X ist gleichverteilt auf B ,
d b̃i − ãi
∀ ã, b̃ ⊂ B .
d.h. P X ∈ ã, b̃ = i=1
V ol(B)
Bezeichnung : R(B)-Verteilung .
70
Beispiel 7.6.
N(a, Σ)-Verteilung in Rd
Seien a ∈ Rd , Σ = BB ∈ Rd×d , regulär , und Z1 , . . . , Zd i.i.d. N(0, 1)-verteilt.
Setzt man
⎛
⎞
⎞
⎛
X1
Z1
⎜ . ⎟
⎜ . ⎟
X := ⎝ .. ⎠ := a + B ⎝ .. ⎠ ,
Xd
Zd
so besitzt X eine N(a, Σ)-Verteilung
in Rd .
71
Herunterladen