Sunteți pe pagina 1din 32

1 Capitolul 2

E.2.1. Fie X o variabila aleatoare exponent iala negativa de parametru


, > 0. Sa se determine repartit iile variabilelor Y
1
= X
2
si Y
2
=

X.
Deducet i cate 2 metode de simulare a variabilelor Y
1
, Y
2
.
Indicat ie. Densitatea f si funct ia de repartit ie F corespunzand lui X sunt
f(x) = e
x
I
(0,)
(x), F(x) = (1 e
x
)I
(0,)
(x).
Deci, pentru x > 0 avem
F
1
(t) = P(Y
1
< t) = P(X
2
< t) = P(X <

t) = 1 e

t
f
1
(t) = F

1
(t) =
e

t
2

t
,
F
2
(t) = P(Y
2
< t) = P(

X < t) = P(X < t


2
) = 1 e
t
2
,
f
2
(t) = F

2
(t) = 2te
t
2
.
T inand seama de aceste rezultate rezulta ca X se simuleaza cu metoda in-
versa: X = log U unde U este uniforma pe (0, 1) iar Y
1
= X
2
, Y
2
=

X.
Cea de-a doua metoda este metoda inversa. Daca U este uniforma pe
(0, 1) atunci
Y
1
= F
1
1
(U) =
_

log U
_
2
,
Y
2
= F
1
2
(U) =

log U.
E.2.2. Sa se determine constantele , , astfel incat
g(x) = e
x
( +x)I
(0,)
(x)
sa e densitate de repartit ie. Sa se precizeze o metoda de simulare a acestei
repartit ii de probabilitate.
Indicat ie. Din condit ia ca g(x) sa e densitate de repartit ie rezulta

_
0
g(x)dx =

2
= 1,
1
de unde = (), 0. Notand = , rezulta =
2
(1), >
0, 0 1. Deci
g(x) = e
x
( +
2
(1 )x)I
(0,)
(x).
Funct ia de repartit ie corespunzatoare este
G(x) =
_
x
0
g(t)dt, x > 0.
Dupa efectuarea unor calcule simple se deduce ca
G(x) =
_
0, daca x 0,
+(1 )( x) e
x
[ +
2
(1 )], daca x > 0.
Simularea repartit iei care are densitatea g(x) se realizeaza cu metoda inversa
rezolvand ecuat ia G(X) = U in X, unde U este variabila uniforma pe (0, 1).
Rezolvarea se face numeric observand ca X este abscisa X > 0 a punctului
in care dreapta aleatoare y = + (1 )( X) U taie curba y =
e
x
[ +
2
(1 )]. Se observa ca gracele celor doua curbe au in comun
punctul de abscisa X = 0 si un alt punct de abscisa X > 0. Se observa ca
dreapta ment ionata face parte dintr-o ret ea de drepte paralele cuprinse intre
dreptele:
(D
1
) : y = + (1 )( x); (D
2
) : y = +(1 )( x) 1.
E.2.3. Fie X
1
, X
2
, ..., X
n
variabile exponent iale Exp(1) independente.
Sa se determine repartit iile de probabilitate ale variabilelor aleatoare
Y = max
1in
{X
i
},
Z = X
1
+
X
1
2
+... +
X
n
n
.
Sa se arate ca Y si Z au aceeasi repartit ie.
Solut ie. Avem
P(Y < t) = P(X
1
< t, X
2
< t, ..., X
n
< t) =
n

1=1
P(X
i
< t) =
=
n

i=1
(1 e
t
) = (1 e
t
)
n
.
2
Deci densitatea de repartit ie a lui Y este
f
Y
(t) = n(1 e
t
)
n1
e
t
.
Pentru a gasi repartit ia de probabilitate a lui Z sa observam ca repartit ia de
probabilitate a lui Z
i
=
X
i
i
este Exp(
1
i
) si Z =
n

i=1
Z
i
. Deci funct ia caracter-
istica a lui Z
k
este

Z
k
(t) =

_
0
e
itx
1
k
e

t
k
dx =
n

k=1
_
1
1 kit
_
.
Funct ia caracteristica alui Y este

Y
(t) =

_
0
e
itx
n(1 e
x
)
n1
e
x
dx =
=
1
_
0
n(1 u)
n1
u
it
du = nB(n, 1 it) =
(n + 1)(1 it)
(n it + 1)
=
=
n!
n

j=1
(j it)
=
n

j=1
_
1
1 jit
_
.
Deoarece
Z
(t) =
Y
(t), rezulta ca variabilele Y si Z au aceeasi repartit ie
de probabilitate. Simularea acestor variabile se face deci pe baza formulelor
care le denesc.
E.2.4. Fie Y
1
si Y
2
variabile exponent iale Exp(1) independente. Sa se
determine repartit ia variebilei X = Y
1
Y
2
.
Solut ie. Densitatea comuna de repartit ie a lui Y
1
, Y
2
este
f
Y
1
,Y
2
(y
1
, y
2
) = e
(y
1
+y
2
)
I
(0,)
(y
1
)I
(0,)
(y
2
).
Sa facem schimbarea de variabile
x
1
= y
1
y
2
R; x
2
= y
2
> 0.
Transformarea inversa este
y
1
= x
1
+x
2
> 0; y
2
= x
2
> 0
3
iar Jacobianul acesteia este
J =

D(y
1
, y
2
)
D(x
1
, x
2
)

y
1
x
1
y
1
x
2
y
2
x
1
y
2
x
2

1 1
0 1

= 1.
Dar
f
X
1
,X
2
(x
1
, x
2
) = f
Y
1
,Y
2
(y
1
(x
1
, x
2
), y
2
(x
1
, x
2
))J =
= e
(x
1
+x
2
)
e
x
2
, x
1
0, x
2
x
1
.
Pentru a aa densitatea variabilei X
1
trebuie sa integram densitatea comuna
f
X
1
,X
2
(x
1
, x
2
) in raport cu x
2
, adica
f
X
1
(x
1
) =
_
R
f
X
1
,X
2
(x
1
, x
2
)dx
2
=
_
_

x
1
e
x
1
2x
2
dx
2
, daca x
1
0
_

x
1
e
x
1
2x
2
dx
2
, daca x
1
< 0
=
=
_
e
x
1
2
, daca x
1
0
e
x
1
2
, daca x
1
< 0
=
1
2
e
|x
1
|
, x
1
R,
adica X
1
are repartit ia Laplace(1).
E.2.5. Fie X
1
, X
2
variabile exponent iale Exp(1) independente. Sa se
determine repartit ia comuna a variabilelor X = |X
1
X
2
|, Y = min(X
1
, X
2
)
si sa se arate ca cele doua variabile aleatoare sunt independente.
Indicat ie. Avem
P(|X
1
X
2
| < x, min(X
1
, X
2
) < y) = P(X
2
X
1
< x, min(X
1
, X
2
) < y, X
1
< X
2
)+
+P(X
1
X
2
< x, min(X
1
, X
2
) < y, X
1
> X
2
) = 2P(X
1
X
2
< x, X
2
< y, X
1
X
2
) =
= 2
_
y
0
f(u)P(X
1
X
2
< x, X
2
< y, X
1
X
2
|X
2
= u)du =
= 2
_
y
0
f(u)P(X
1
< x +u, X
1
> u)du = 2
_
y
0
f(y)[F(x +u) F(u)]du,
unde f(u) = e
u
I
(0,)
(u), F(x) = 1 e
x
, x > 0.
Densitatea comuna de repartit ie a variabilelor X, Y este
g(x, y) = 2
d
dx
[f(y){F(x+y)f(y)} = 2f(y)f(x+y) = e
x
2e
2y
, x > 0, y > 0.
Dar F
Y
(y) = P(min(X
1
, X
2
) < y) = 1 (e
y
)
2
, f
Y
(y) = 2e
2y
. De aici
rezulta ca densitatea de repartit ie a variabilei X = |X
1
X
2
| este
f
X
(x) =
g(x, y)
f
Y
(y)
=
e
x
2e
2y
2e
2y
= e
x
4
iar independent a lui X de Y rezulta din relat ia
g(x, y) = f
X
(x)f
Y
(y).
Simularea variabilelor X si Y se poate face deci e direct, pe baza formulelor
ce le denesc, e prin metoda inversa.
E.2.6. Fie X
1
, X
2
, X
3
, X
4
variabile normale N(0, 1) independente.
(a).Sa se arate ca X = |X
1
X
2
+X
3
X
4
| are repartit ia exponent iala Exp(1).
(b). Sa se arate ca Y =
X
1
X
2
are reparttit ia Cauchy, adica are densitatea
f
Y
(y) =
1
(1 +x
2
)
.
Solut ie. (a). Folosim metoda funct iei caracteristice.Avem

X
1
X
2
(t) =
1
2
_

e
itx
1
x
2
e

x
2
1
+x
2
2
2
dx
1
dx
2
=
=
1

2
_

x
2
1
2
_
1

2
_

e
itx
1
x
2

x
2
2
2
dx
2
_
dx
1
=
=
1

2
_

x
2
1
2
e
(it)
2
x
2
1
2
_
1

2
_

1
2
(itx
1
x
2
)
2
dx
2
_
dx
1
.
Facand in ultima integrala schimbarea de variabila
x
1
=
y
_
(1 (it)
2
deducem in nal

X
1
X
2
(t) =
1

2
1
_
(1 (it)
2
_

y
2
2
dy =
1
_
(1 (it)
2
.
Intrucat variabilele X
1
X
2
si X
3
X
4
sunt independente rezulta ca

X
1
X
2
+X
3
X
4
(t) =
1
1 (it)
2
=
1
1 +t
2
.
Sa revenim acum la exercit iul E.2.4. si sa observam ca

Y
1
Y
2
(t) =
1
2
_
0

e
itx
e
x
dx +
1
2
_

0
e
itx
e
x
dx =
5
=
1
2(1 +it)

1
2(it 1)
=
1
1 +t
2
,
care este funct ia caracteristica a variabilei Laplace L de unde rezulta ca
|X
1
X
2
+X
3
X
4
| = |L| este o variabila exponent iala Exp(1).
(b). Densitatea comuna de repartit ie a variabilelor X
1
, X
2
este
g(x
1
, x
2
) =
1
2
e

x
2
1
+x
2
2
2
.
Pentru a aa densitatea variabilei X =
X
1
X
2
sa facem in g(x
1
, x
2
) schimbarea
de variabile
x =
x
1
x
2
, z = x
1
; x
1
= z, x
2
=
z
x
,
al carei Jaccobian este
J =
D(x, z)
D(x
1
, x
2
)
=

0 1
x
1
x
2
1
x
2

= |
x
1
x
2
2
|.
Densitatea comuna a lui X si Z este deci
g
X,Z
(x, z) = g(z,
z
x
)
1
J
=
e

z
2
2
(1+1/x
2
)
2
|
z
x
2
|.
Densitatea de repartit ie a lui X se aa integrand g
X,Z
(x, z) in raport cu z,
adica
f
X
(x) =
_

g
X,Z
(x, z)dz =
=
_
0

z
2x
2
e

z
2
2
(1+1/x
2
)
dz +
_

0
z
2x
2
e

z
2
2
(1+1/x
2
)
dz =
=
1
2x
2
.
1
(1 + 1/x
2
)
+
1
2x
2
.
1
1 + 1/x
2
)
=
1
(1 +x
2
)
.
Deci f
X
(x) este densitatea Cauchy si ea se simuleaza simplu, ca raport de
doua variabile normale N(0, 1) independente.
E.2.7. Folosind metoda inversa sa se construiasca un algoritm pentru
simularea variabilei aleatoare X care are densitatea de repartit ie
f(x) =
e
x
e 1
I
[0,1]
(x).
6
Indicatie. Se calculeaza functia de repartit ie
F(x) =
_
_
_
0, daca x < 0
e
x
1
e1
, daca 0 x 1
1, daca x > 1
si se inverseaza aceasta funct ie; din rezolvarea ecuat iei in X, F(X) = U, U
[0, 1] se deduce algoritmul
Genereaza U uniform (0, 1);
Calculeaza X log [U(e 1) + 1].
E.2.8. Sa se precizeze o metoda de simulare a variabilei aleatoare X care
are densitatea de repartit ie
f(x) =
_
x2
2
, daca 2 x 3
2x/3
2
daca 3 x 6
.
Indicat ie. Integrand densitatea obt inem funct ia de repartit ie
F(x) =
_

_
0, daca x < 2
x
2
4x+4
4
, daca 2 x 3
1
4
+
12xx
2
32
12
, daca 3 < x 6
1, daca x > 6
Acum se poate aplica metoda inversa, rezolvand ecuat ia de gradul II in X,
F(X) = U si considerand solut ia din intervalul [2, 3] sau din (3, 4].
O metoda alternativa poate metoda compunerii, observand ca
F(x) = p
1
F
1
(x) +p
2
F
2
(x), p
1
= 1/4, p
2
= 3/4
unde
F
1
(x) = 4
_
_
_
0, daca x < 2
x

4x+4
4
, daca 2 x 3
1, daca x > 3
F
2
(x) =
4
3
_
_
_
0, daca x < 3
12xx
2
32
12
, daca 3 x 6
1, daca x > 6.
E.2.9. Descriet i o metoda de simulare a variabilei aleatoare X care are
funct ia de repartit ie
F(x) =
x
2
+x
2
, 0 x 1.
7
Indicat ie. Se rezolva ecuat ia in X, F(X) = U, unde U este un numar
aleator uniform (0, 1). Se alege solut ia X (0, 1).
E.2.10. Sa se construiasca o metoda de simulare a variabilei X care are
funct ia de repartit ie
F(x) =
_

0
x
y
e
y
dy, 0 x 1.
Indicat ie. Se observa ca X este amestecarea familiei de funct ii de repartit ie
G
Y
(x) = x
Y
, 0 x 1, unde Y este un parametru aleator, Y Exp(1),
cu densitatea de repartit ie pdf, h(y) = e
y
I
(0,)
(y). Deci
F(x) =
_

0
G
y
(x)dH(y), dH(y) = h(y)dy
care este o amestecare continua.Algoritmul de simulare este
Simuleaza Y exponent ial de parametru 1;
Simuleaza X
Y
cu metodua inversa (adica: simuleaza U uniform (0, 1);
Calculeaza X = U
1/Y
).
E.2.11. Precizat i doua metode pentru simularea variabilei X care are
densitatea de repartit ie
f(x) = xe
x
, 0 x < .
Indicat ie. Se observa ca X este o variabila Erlang(2). Deci o metoda
de simulare consta in a genera X ca suma de doua variabile exponent iale
Exp(1) independente.(Aceasta este prima metoda de simulare). Pentru a
construi cea de-a doua metoda se observa ca daca se ia in metoda respingerii
(cu infasuratoare) h(x) =
1
2
e
x/2
I
(0,)
(x) atunci se obt ine
r(x) =
f(x)
h(x)
r(2) =
2

e
= > 1.
Deci algoritmul de respingere este
repeat
Genereaza U uniform (0, 1);
genereaza Z ;Exp(
1
2
);
until U 2e
Z
2
Z+
1
2
;
ia X = Z.
8
E.2.12. Presupunem ca variabilele X
1
, X
2
, ..., X
n
sunt independente, au
respectiv funct iile de repartit ie F
i
(x), 1 i n si se cunosc metode de
simulare a lor. Sa se indice metode de simulare a variabilelor aleatoare Y si
Z care au respectiv funct iile de repartit ie
(a). G(x) =
n

i=1
F
i
(x);
(b). H(x) = 1
n

i=1
[1 F
i
(x)] =
n

i=1
F
i
(x).
Indicat ie. G(x) este funct ia de repartit ie a variabilei Y = max
1in
X
i
,
iar H(x) este funct ia de repartit ie a variabilei Z = min
1in
X
i
.
E.2.13. Fie X o variabila aleatoare care are funct ia de repartit ie G(x)
si densitatea g(x). Sa consideram < a < b < doua constante reale
pentru care G(b)G(a) > 0. Sa se precizeze o metoda de simulare a variabilei
aleatoare Y care are funct ia de repartit ie
F(x) =
G(x) G(a)
G(b) G(a)
, a x b.
Indicat ie. Se observa ca
F(x) = P(X < x|a X b) =
1
K
_
x
a
g(u)du, K =
_
b
a
g(u)du = G(b)G(a),
adica X este restrict ia lui X la [a, b]. Generarea lui Y se face cu metoda
respingerii: se genereaza valori ale lui X pana cand prima valoare X apare in
[a, b], luandu-se Y egal cu aceasta valoare acceptata a lui X. Se poate utiliza
si metoda inversa pentru simularea lui Y.
E.2.14. Fie X
1
abaterea normala pozitiva care are deci densitatea
f
1
(x) =

e
x
2
/2
I
(0,)
(x)
si X
2
abaterea normala negativa care are densitatea
f
2
(x) =

e
x
2
/2
I
(,0)
(x).
Fie X ;N(0, 1) variabila normala N(0, 1) a carei densitate este deci
f(x) =
1

2
e
x
2
/2
, < x <
9
i.e. f(x) = 0.5f
1
(x)+0.5f
2
(x), x R este o amestecare (compunere) discreta
a densitat ilor f
1
(x) si f
2
(x) cu probabilitat ile p
1
= p
2
=
1
2
= 0.5 iar f
1
(x) =
f
2
(x), adica X
1
= X
2
. Variabila X
1
se simuleaza prin metoda respingerii
infasurand f
1
(x) cu h(x) = e
x
I
(0,)
(x). Se obt ine atunci urmatorul algoritm
cunoscut (algoritmul RJNORM) pentru simularea lui X :
repeat
1. genereaza U ;uniform(0, 1);
2. genereaza Y
1
;Exp(1);
until U e

(Y
1
1)
2
2
;
3. ia X
1
= Y
1
;
4. genereaza U ;uniform(0, 1)
5. Daca U < 0.5 atunci ia X = X
1
altfel ia X = X
2
.
(a). Sa se simplice algoritmul in cazul cand Y
1
se genereaza cu metoda
inversa;
(b). Sa se arate ca in cazul (a) algoritmul produce si o variabila Y
2
;
Exp(1).
Indicat ie. (a). Condit ia de respingere (din linia until) devine log U
(Y
1
1)
2
2
0, ; notand Y
2
= log U linia ment ionata devine
until Y
2
>
(Y
1
1)
2
2
.
In concluzie ciclul repret....until devine
repeat
genereaza Y
1
si Y
2
exponent iale Exp(1), independente;
until Y
2
>
(Y
1
1)
2
2
;
Pentru simularea lui X ;N(0, 1), pasii 3,4,5 raman neschimbat i.
(b) Sa observam ca deoarece Y
1
si Y
2
sunt independente, atunci si Y = Y
2

Y
1
1)
2
2
si Y
1
sunt independente. Proprietatea variabilei Y
2
;Exp(1) de a nu
avea memorie inseamna ca si Y = Y
2

(Y
1
1)
2
2
este tot exponent iala Exp(1).
Deci, completand ciclul repeat...until descris mai sus cu pasii urmatori
3.ia X
1
= Y
1
, Y = Y
2

(Y
1
1)
2
2
;
5.genereazu a U ;uniform(0, 1);
6. daca U < 0.5 atunci X = X
1
altfel X = X
1
,
conduce la o versiune a lui RJNORM care produce X ; N(0, 1) si
Y ;Exp(0, 1), X si Y ind independente stochastic.
10
E.2.15. Fie Z ; N(0, 1) si Y = [Z ; N(0, 1)|Z 0] a carei densitate
este
f
Y
(x) =

e
x
2
/2
.
Aplicat i metoda infasuratoarei pentru simularea lui Y folosind ca densitate
infasuratoare densitatea Exp(), > 0. Aratat i ca cea mai buna valoare a
lui este = 1.
Indicat ie. Raportul folosit in metoda infasuratoarei este in acest caz
r(x) =
f(x)
h(x)
=
1

e
x
2
/2+x
.
Se observa ca r
max
= r() = =
1

_
2e
2

, iar probabilitatea de acceptare este


p
a
=
_

2e
2
=
1

.
Se observa cu usurint a ca p
a
= maxim (adica algoritmul este cel mai rapid)
cand = 1. Deci algoritmul RJNORM de simulare al variabilei normale
N(0, 1) este cel mai rapid din clasa algoritmilor de respingere bazat i pe
infasurarea cu exponent iale Exp().
E.2.16. Daca (X, Y ) este un vector aleator uniform repartizat pe cercul
de raza 1, sa se arate ca R = X
2
+Y
2
este o variabila uniforma pe (0, 1).
Indicat ie. Densitatea de repartit ie a vectorului aleator (X, Y ) este
f(x, y) =
_
1

, daca x
2
+y
2
1
0, altfel.
Deci
P(R
2
< t) =
1

_ _
x
2
+y
2
<t
dxdy.
Facem in ultima integrala transformarea
x = rcos, y = rsin
al carei Jaccobian este J = r. Deci
P(R
2
< t) =
1

_
2
0
d
_
r
2
<t
rdr =
11
=
1

2
r
2
2
|
r
2
=t
r
2
=0
= t, 0 t 1,
adica X
2
+Y
2
este o variabila uniforma pe (0, 1).
E.2.17. Fie f(x) o densitate de probabilitate pe intervalul nit [a, b], <
a < b < , f(x) > 0. Fie = min
axb
f(x). Sa se arate ca f(x) se poate scrie
ca o amestecare discreta intre o densitate uniforma pe [a, b] si o alta densi-
tate f
2
(x), f
2
(x) > 0, x [a, b]. Precizat i cum se simuleaza repartit ia a carei
densitate este f(x).
Indicat ie. Din
_
b
a
f(x)dx = 1 rezulta ca 0 < < 1. De aici rezulta ca
f(x) =

b a
+
(1 )
(b a)(1 )
[
(b a)f(x)
1
]
sau
f(x) = f
1
(x) + (1 )f
2
(x)
unde f
1
(x) este densitatea uniforma pe [a, b] iar
f
2
(x) =
(b a)f(x)
(b a)(1 )
.
Deci f(x) este amestecarea discreta a densitat ilor f
1
(x), f
2
(x), Deci f(x) se
simuleaza cu metoda compunerii. Daca f(x) M < , atunci simularea
lui f
2
(x) se poate face cu metoda respingerii, infasurand f
2
(x) cu densitatea
uniforma pe [a, b]. Deoarece M
2
= sup
x[a,b]
f(x) =
(ba)M
(ba)(1)
rezulta ca prob-
abilitatea de acceptare in cazul simularii lui f
2
(x) este mai mare decat cea a
simularii lui f(x) direct cu aceeasi metoda de respingere.(Armat ia rezulta
din faptul ca p
(2)
a
=
1
M
2
(ba)
<
1
M(ba)
= p
a
).
E.2.18.Aplicand idei din rezolvarea exercit iului precedent, descriet i o
metoda de simulare a unei repartict ii de densitate f(x), < x < , 0 <
f(x) < M < .
Indicat ie. Se alege o diviziune oarecare a dreptei reale: R = (, a
1
)
[a
1
, a
2
) ... [a
m1
, ), a
i
< a
i+1
, 1 i m 1, astfel incat p
i
=
_
a
i
a
i1
f(x)dx > 0. Atunci f(x) devine
f(x) =
m

i=1
p
i
f
i
(x), f
i
(x) =
f(x)
p
i
I
[a
i1
,ai)
(x).
12
Deci f(x) se simuleaza aplicand metoda compunerii. Simularea densitat ilor
f
i
(x), 2 i m 1 se realizeaza cu metoda respingerii infasurand f
i
(x)
cu densitatea uniforma pe [a
i
, a
i+1
), 1 i m2. Pentru simularea cozilor
f
1
(x), f
m
(x) se infasoara aceste densitat i cu densitat i de tip Weibull. De
ex. pentru f
m
(x) (coada de la dreapta) se alege ca infasutatoare densitatea
Weibull de forma
g(x) = k(x a
i1
)
1
e
(xa
i1
)

, k =
_
_

a
i1
(x a
i1
)
1
e
(xa
i1
)

dx
_
1
.
Constanta se poate alege astfel ca f
m
(a
i1
) = g(a
i1
. Pentru coada de la
stanga, se alege g(x) de forma g(x) = k[(x a
1
)
1
]e
(xa
1
)

, < x <
a
a
, unde k este de asemenea determinat din condit ia de normare, iar se
determina analog.
E.2.19. Folosind idei din E.2.17., construit i o metoda de simulare a unei
densitat i f(x) pozitiva pe un interval oarecare, folosind in loc de repartit ia
uniforma o alta densitate f
1
(x) cu alura asemanatoare cu cea a lui f(x), care
se poate simula mai usor.
Indicat ie. Alegem f
1
(x) < f(x) astfel incat gracul lui f
1
(x)sa e sub
gracul lui f(x), dar cat mai aproape de acesta. Scriem acum f(x) sub
forma
f(x) = f
1
(x) + (1 )
_
f(x) f
1
(x)
1
_
.
Daca dorim ca f(x) sa arate ca o amestecare trebuie sa avem f(x)f
1
(x)
0, adica = min
x
_
f(x)
f
1
(x)
_
. Astfel, notand f
2
(x) =
f(x)f
1
(x)
1
putem scrie
f(x) = f
1
(x) + (1 )f
2
(x),
care este o amestecare. Daca f
1
(x) este ales astfel incat este mare si f
1
(x) se
poate simula usor, atunci algoritmul de compunere pentru simularea lui f(x)
este rapid. Sa mai observam ca f
1
(x) poate folosita si ca infasuratoare
pentru o metoda de respingere privind simularea lui f(x). Pentru a alege
din cele doua alternative de simularea lui f(x) trebuie sa comparam daca

1
= min
x
f(x)
f
1
(x)
este sucuent de mare, caz in care alegem metoda bazata pe
amestecarea lui f
1
(x) cu f
2
(x), sau, daca
2
= max
x
f(x)
f
1
(x)
este suciemt de
mic, caz in care alegem metoda de respingere bazata pe infasurarea lui f(x)
cu f
1
(x).
13
E.2.20. Generalizat i exercit iul precedent.
Indicat ie. Conform E.2.19. alegem un f
1
(x) convenabil astfel incat
f(x) =
1
f
1
(x) +
2
f
2
(x), f
2
(x) =
f(x)
1
f
1
(x)
1
1
,

1
= min
f(x)
f
1
(x)
,
2
= 1
1
,
1
+
2
= 1.
Repetand procedeul gasim densitatea reziduala de forma
f
3
(x) =
f(x)
1
f
1
(x)
2
f
2
(x)
1
1

2
iar in general se obt ine
f(x) =
n

i=1

i
f
i
(x),
n

i=1

i
= 1.
E.2.21. Variabila aleatoare Y are funct ia de repartit ie
H(t) = P(Y < t) =
_
_
_
0, daca t < 0
1 e
t
, daca 0 t 1
e
1
e

t+1
2
, daca t > 1
.
(a). Precizat i metode de simulare a variabilei Y.
(b). Aratat i ca
Y =
_
X, daca 0leqX 1
2X 1, daca X > 1.
Indicat ie. (a).Se observa ca se poate aplica direct metoda inversa. O alta
metoda se bazeaza pe faptul ca
H(t) = p
1
F
1
(t) +p
2
F
2
(t), p
1
= 1 e
1
, p
2
= e
1
F
1
(t) =
_
_
_
0, daca t < 0
1e
t
1e
1
, daca 0 t 1
1, daca t > 1,
F
2
(t) =
_
0, daca t 1
1 e

t1
2
, daca t > 1.
Se poate deci aplica metoda compunerii.
14
(b). Se observa ca
P(Y < t) = P(X < t|X < 1) =
_
_
_
0, daca t < 0
1 e
t
, daca 0 t 1
1, daca t > 1,
P(Y < t|X > 1) = P(2X 1 < t|X > 1) =
= P(X <
t + 1
2
|X > 1) =
_
0, daca t < 1
e
1
e

t+1
2
, daca t > 1.
adica funct ia H(t). Variabila Y se poate deci simula si folosind expresia ei in
funct ie de X (pct.(b)).
E.2.22. Sa se construiasca un algoritm care sa genereze o permutare
aleatoare.
Indicat ie. Ideea este urmatoarea: o permutare este reprezentata de un
vector de forma = (
1
,
2
, ...,
n
) unde
i
sunt numere intre 1 si n distincte
intre ele; se alege o permutare oarecare e (care poate reprezentata de
permutarea identica e = (1, 2, ..., n)); se genereaza un indice aleator care
ia valori in mult imea A = {1, 2, ..., n};se extrage acest numar din mult iea A
si se aseaza acest numar pe pozitia n in vectorul ales initial e; se genereaza
un nou numar aleator cu valori in mult imea celorlalte numere ramase in
mult imea A, se extrage acesta din A si se pune pe pozit ia n 1 in e; se
continua procedeul pana ce se ocupa pozit iile ramase din e. In nal, vectorul
e va cont ine numerele 1, 2, ..., n intr-o ordine aleatoare, ceea ce reprezinta o
permutare aleatoare.
Algoritmul este deci urmatorul:
1. Init ializeaza vectorul e = (e
1
, e
2
, ..., e
n
), e
j
= j, 1 j n;
Ia k = n;
2. while k > 1 do
begin
Genereazsa U uniform pe (0, 1);ia i = int(kU) + 1;
interschimba e
i
cu e
k
;
k := k 1;
end;
3. Livreaza e. (Aceasta este permutarea simulata).
O metoda alternativa de simulare a unei permutari aleatoare este urmatoarea:
se simuleaza sirul de numere aleatoare U = (U
1
, U
2
, ..., U
n
), uniforme pe
(0, 1); se considera vectorul e = (1, 2, ..., n), e
j
= j; Se ordoneaza crescator
15
vectorul U

= (U

(1)
, U

(2)
, ..., U

(n)
); pentru ecare componenta U

(i)
se con-
sidera locul j pe care l-a ocupat acesta in vectorul U init ial si se ia e
i
= j;
vectorul e va cont ine in nal permutarea aleatoare generata. In aceasta
metoda se foloseste faptul ca in vectorul U de numere aleatoare uniforme gen-
erate acestea sunt toate diferite, deci dupa ordonare avem U

(i)
< U

(i+1)
, 1
i n 1.
E.2.23. Sa se construiasca algoritmi pentru simularea unei variabile
Poisson().
Indicat ie. (a). Metoda inversa. Repartit ia de probabilitate Poisson()
are funct ia de frecvent a
P(N = k) = p
k
=

k
k!
e

, k = 0, 1, 2, ...
Deci, utilizand metoda inversa vom proceda astfel:
generam un numar aleator U uniform pe (0, 1);
determinam intregul j astfel incat F(j 1) U < F(j +1) unde F(j) =
j

=0

j
j!
e

; N = j este valoarea generata. Dupa o analiza atenta, tinand


seama de faptul ca nu vom memora valorile F(j), j = 0, 1, 2, ... deoarece j
poate lua valori foarte mari, rezulta urmatorul algoritm:
1. Init ializari: i = 0, p = e

, F = p;
Genereaza U uniform pe (0, 1);
3. while U F do
begin
Calculeaza p =
p
i+1
; F := F +p; i := i + 1;
end;
4. N = i.
N = i este valoarea generatu a a variabilei Poisson.
Algoritmul alege valoarea N = i explorand de la i = 0 in sus valorile
funct iei de repartit ie Poisson. Insa deoarece = E[N] rezulta ca pentru
foarte mare timpul de calcul pentru simularea unei valori a lui N creste
si deci algoritmul, sub forma prezentata, nu este ecient. In acest caz, o
imbunatat ire se obt ine daca de la inceput se calculeaza I = int() si se
exploreaza valorile lui i de la I in jos daca U < F(I) sau de la I in sus (spre
dreapta) daca U > F(I).
16
(b). O alta metoda se bazeaza pe faptul ca variabila Poisson() reprezinta
numarul de evenimente rare, independente ce se produc pe un interval de
timp egal cu unitatea, unde este numarul mediu al acestor evenimente (in-
tensitatea cu care se produc evenimentele. Daca notam
i
intervalul de timp
intre producerea eveninentului i si evenimentului i +1, acesta este o variabila
exponent iala negativa de parametru . Atunci rezulta ca N = i daca
S
i
< S
i+1
, S
i
=
i

=1

unde

sunt variabile repartizate exponent ial de parametru , indepen-


dente.Algoritmul rezultant este deci urmatorul
1. Intrare , init ializeaza i = 0, S = 0;
2. while S < do
begin
Genereaza ;Exp();
Calculeaza S := S +; i := i + 1;
end;
3. N = i 1.
N este valoarea generata. Daca in algoritmul precedent se t ine seama de
faptul ca =
1

log(U), unde U este numar aleator uniform pe (0, 1) atunci


aclgoritmul se poate modica astfel incat sa se obt ina N = i daca

i
e

>
i+1
,
i
=
i

=1
U
i
.
Si aici se vede ca pentru mare algoritmul nu este satisfacator.
Observat ie. Cand este mare, acesta se poate descompune intr-o suma
de forma =

k
i=1

i
, se genereaza valorile de select ie N
i
; Poisson(
i
)
si se calculeaza N =
k

i=1
N
i
care are repartit ia Poisson(). (Aceasta este
proprietatea de stabilitate a repartit iei Poisson).
E.2.24. Repartit ia logistica are densitatea f si funct ia de repartit ie F
respectiv de forma
f(x) =
e

xa
b
b(1 +e

xa
b
)
2
, F(x) =
1
1 +e

xa
b
17
unde a R, b > 0. Cand a = 0, b = 1 reprezinta repartit ia logistica standard.
Repartit ia valorii extreme de parametru a are densitatea g si funct ia de
repartit ie G respectiv de forma
g(x) = be
b(e
x
1)+x
, G(x) = 1 e
b(e
x
1)
, b > 0.
(a). Aplicat i metoda inversa pentru simularea celor dou a repartit ii.
(b). Sa se arate ca daca X
1
, X
2
au repartit ii ale valorii extreme de
parametru 1 si sunt independente, atunci X = X
1
X
2
are repartit ia logistica
standard. Deducet i de aici o metoda de simulare a repartit iei logistice.
Indicat ie. (a). Rezolvand escuat iile F(X) = U, G(Y ) = U rezulta
X = a b.log(
1 U
u
), Y = log(1
log(U)
b
)).
(b).Densitatea de repartit ia comuna a variabilelor (X
1
, X
2
) este
h(x, y) = e
(e
x
+e
y
2)+x+y
.
Facand transformarea
x = u +v, y = v
se deduce
g(u, v) = h(x(u, v), y(u, v)) = e
(e
u
e
v
+e
v
2)+u+2v
.
Densitatea marginala a lui X
1
X
2
este deci
f(u) =

_
0
g(u, v)dv = e
u
_

0
e
(e
v+u
+e
v
)
.e
2v
dv =
= e
u
_

0
ze
z(e
u
+1)
dz =
e
u
(1 +e
u
)
2
, u R.
Deci variabila logistica se simuleaza cu X = X
1
+X
2
.
E.2.25. Sa se aplice metoda respingerii la simularea variabilei Z normale
N(0, 1), lund ca nfasuratore densitatea Laplace de parametru 1.
Indicat ie. Densitat ile normala, respectiv Laplace, sunt
f(x) =
1

2
e

x
2
2
, g(x) =
1
2
e

|x|
2
.
18
Din cauza care loc relat ia
1
2
(|x| 1)
2
=
x
2
2
+
1
2
|x| 0
avem
1

2
e

x
2
2

2
e

|x|
2
= g(x), =

2e

.
Algoritmul de respingere este deci urmatorul
1. repeat
Genereaza o variabila exponent iala X de parametru 1 si doua variabile
uniforme U, V independente. Daca U <
1
2
atunci ia X := X. (X este
variabila Laplace).
until V.e
1
2
|X|
e

X
2
2
.
2. Ia Z = X.
E.2.26. Fie Z ; N(0, 1). Sa se construiasca un algoritm optim pentru
simularea lui Z prin infasurarea cu densirtatea Cauchy de forma
g(x) =

2
+x
2
.
Indicat ie. Se observa ca
r(x) =
f(x)
g(x)
=
_
_
_

2
e
e

2
2
, daca <

2
, daca

2.
Algoritmul este optim cand probabilitatea de acceptare
p
a
() =
1

este maxima (adica cand este minim). Acest lucru se intampla daca = 1.
Algoritmul de simulare a lui Z se construieste acum usor, ca in cazul prob-
lemei precedente.Daca X este variabila Cauchy, atunci condit ia de acceptare
din algoritmul de respingere este
U (1 +X
2
)

e
2
e

X
2
2
.
19
E.2.27. Fie densitatea de forma
X ;f(x) = c(ax
a1
)e
x
, 0 x 1,
unde c este o constanta de normare. Sa se construiasca un algoritm pentru
simularea lui X.
Indicat ie. Se observa ca f este de forma
f(x) = cr(x)(1 Q(x)), r(x) = ax
a1
, Q(x) =
1 e
x
1 e
1
, c = 1 e
1
.
Daca Z ;Q(x), Y ;r(x) atunci algoritmul de respingere este
1. repeat
Genereaza Y ;Q(x), Y (0, 1);
Genereaza Z ;r(x);
until Z < Y ;
2. Ia X = Y.
Probabilitatea de acceptare este in acest caz
p
a
=
1
c
=
1
1 e
1
.
E.2.28. In unele cazuri ale aplicarii metodei rescpingerii cunfasuratoare,
este dicil de evaluat valorile funct iei f(x). De aceea se aleg doua funct ii
h
1
(x), h
2
(x) astfel incat h
1
(x) f(x) h
2
(x) iar h
1
(x), h
2
(x) se evalueaza
usor. Sa se modice algoritmul de respingere astfel incat simularea lui X ;
f(x), unde f(x) se infasoara cu g(x), Y ;g(x), sa se faca mai rapid.
Indicat ie. Vericarea condit iei de acceptare 0 < Ug(Y ) f(y) se va
inlocui cu alte vericari in care in loc de calculul lui f(y) sa intervina calculul
funct iilor h
1
(Y ), h
2
(Y ).
Algoritmul nal va urmatorul
Se foloseste predicatul .
1. repeat
genereazu a U uniform pe (0, 1);
genereaza Y ;g(x); ia w = Ug(Y );
if w h
1
(Y ) then := true else := false;
if := false then if w h
2
(Y ) then := true;
until := true;
20
2. X := y.
Se vede ca deoarece h
1
, h
2
se evalueaza usor, vericarea condit iei 0 <
Ug(Y ) f(Y ) se face mai usor cu acest algoritm. Sa mai observam ca
h
1
(x) si h
2
(x) pot aproximari prin polinoame Taylor ale funct iei f(x).
E.2.29.Fie variabila aleatoare X care are densitatea de forma
f(x) =
K

i=0
c
i
x
i
, 0 x 1, K > 0, c
i
> 0.
Sa se construiasca un algoritm pentru simularea lui X.
Indicat ie. Funct ia de repartit ie a lui X este
F(x) =
_

_
0, daca x < 0
K+1

i=1
c
i1
i
x
i
, , 0 x 1,
0, daca x > 1,
K+1

i=1
c
i1
i
= 1.
E.2.30. Fie X variabila aleatoare care are repartit ia
p
k
= P(X = k) =

k
klog(1 )
, k = 1, 2, ..., 0 1.
(repartit ia lui Kemp).Daca Y este o variabila aleatoare astfel incat
F
Y
(y) = P(Y < y) =
log(1 y)
log(1 )
, 0 y ,
sa se arate ca repartit ia variabilei X condit ionata de Y = y este repartit ia
geometrica de parametru y, adica
P(X = k|Y = y) = (1 y)y
k1
, k = 0, 1, ....
De aici sa se deduca un algoritm de simulare a lui X.
Solut ie. F
Y
(y) are densitatea
f
Y
(y) =
1
(1 y)log(1 )
de unde rexulta
P(X = k) =
_

0
P(X = k|Y = y)f
Y
(y)dy =
1
log(1 )
_

0
y
k1
dy =

k
klog(1 )
.
21
Algoritmul pentru simularea lui X este deci unul de compunere si anume
1. Genereaza Y ;F
Y
(y); (prin metoda inversa!);
2. Genereaza X o variabila geometrica de parametru Y ;
Conform celor de mai sus X are repartit ia lui Kemp.
E.2.31. Sa se construiasca o metoda de respingere pentru simularea
variabilei X ;Gamma(0, 1, ) utilizand infasurarea cu densitatea
h(x) =
x
1
( +x

)
2
, x 0, =

21
, =

2 1.
Indicat ie.Se determina astfel incat
r(x) =
f(x)
h(x)

si se aplica algoritmul de respingere. Pentru simularea variabilei Y ; h(x)
se aplica metoda inversa. Se calculeaza
H(x) =
_
x
0
y
1
( +y

)
2
dy =
_
( +y

)
1
_
x
0
=
= 1

( +x

)
.
Rezolvand ecuat ia H(Y ) = U se obt ine
Y =
_
(
1
U
1)
_
1

.
In nal se deduce =

()
1

21
.
E.2.32. Fie X variabila Cauchy standard care are densitatea
f(x) =
1
(1 +x
2
)
.
(a). Folosit i metoda inversa pentru simularea lui X.
(b). Aratat i ca daca Z
1
, Z
2
sunt variabile normale N(0, 1) independente,
atunci X se simuleaza cu formula X =
Z
1
Z
2
.
(c). Daca U
1
, U
2
sunt variabile uniforme pe (0, 1) independente, atunci
variabila
C =
2U
1
1
2U
2
1
, cu (2U
1
1)
2
+ (2U
2
1)
2
1,
22
are repartit ia Cauchy.
Solut ie. (a). Prin calcule simple se deduce ca
F(x) =
1

_
x

dy
1 +y
2
=
1

(arctg(x) +

2
)
de unde prin inversare se obt ine
X = tg(U +

2
) = tg(U).
(b). Din teorema lui Box-M uler se stie ca daca U
1
, U
2
sunt variabile
uniforme pe (0, 1) si independente atunci variabilele Z
1
, Z
2
date de
Z
1
=
_
2log(U
1
)sin(2U
2
), Z
2
=
_
2log(u
1
)cos(2U
2
)
sunt variabile normale N(0, 1) independente. Dar
Z
1
Z
2
=
sin(2U
1
)
cos(2U
2
)
= X ; Cauchy.
Aceasta formula se poate utiliza la simularea variabilei Cauchy standard.
(c). Din teorema lui Box-M uller rezulta ca variabilele normale Z
1
, Z
2
pot
simulate astfel
Z
1
= V
1

2log(W)
W
, Z
2
= V
2

2log(W)
W
, W = V
2
1
+V
2
2
< 1,
unde V
1
, V
2
sunt uniforme pe (1, 1) si independente. Ele se siumuleaza cu
formula V = 2U 1, de unde rezulta armat ia (c).
E.2.33. Construit i un algoritm pentru simularea variabilei binomiale
Binom(n, p), n N, 0 < p < 1.
Indicat ie. Variabila binomiala X are funct ia de frecvent a
p
i
= P(X = i) = C
i
n
p
i
q
ni
, i = 0, 1, 2, ..., n, 0 < p < 1, q = 1 p.
Ideea algoritmului consta in a calcula pe rand F(i) =
i

=0
p

si a gasi indicele
i astfel incat F(i) U < F(i + 1). Sa observam mai intai ca
F(i + 1) =
n i
i + 1
p
q
F(i).
23
Algoritmul nal este atunci urmatorul
1. Intrare p; calculeaza q = 1 p;
Init ializeaza: c =
p
q
; i = 0; pr = (1 p)
n
, F = pr;
2. Genereaza U ;uniform(0, 1);
3. while U > pr do begin
Calculeaza pr :=
c(ni)
i+1
pr;
F := F +pr; i := i + 1;
end;
4. Ia X = i.
Observat ie. Algoritmul cauta indicele i pentru care F(i) U < F(i +1),
pornind de la i = 0. Daca se noteaza I = int(np)(=media lui X), atunci
cautarea se usureaza daca se compara de la inceput U cu F(I); daca U <
F(I) atunci se testeaza condit ia de cautare de la I in jos ( adica pentru
I := I 1, I := I
2
, ...etc), iar daca U > F(I) atunci se exploreaza indicii de
la I in sus (adica I := I + 1, I := I + 2, ...etc).
E.2.34. Se stie ca variabila geometrica Y este numarul de esecuri in
experimente Bernoulli independente pana la aparit ia unui succes. (Probabil-
itatea unui succes este p). Se stie de asemenea ca variabila X ;Pascal(k, p)
este numarul de esecuri pana la aparit ia a k (k > 1) succese in probe Bernoulli
independente.
(a). Indicat i metode de simulare pentru Y si X pornind de la proprietat ile
de mai sus ale celor 2 variabile;
(b). Precizat i cum se simuleaza X daxa se cunoaste o metoda de simulare
a lui Y ;
(c). Precizat i metode de simularea variabilei Y.
Indicat ie. (a). O proba Bernoulli are repartit ia
B :
_
0 1
q p
_
, 0 < p < 1, q = 1 p
si ea se simuleaza astfel
1. Genereaza U uniform pe (0, 1);
2. if U < p then B = 1 else B = 0.
Simularea lui Y se face numarand esecurile pana la aparit ia primului
succes, adica cu algforitmul
1. Citeste p, calculeaza q = 1 p, init ializeaza Y = 0; j = 0
24
2. repeat
genereaza U; if U p then j := j + 1 else Y := Y + 1;
until j = 1
3. Livreaza y.
Simularea lui X se face cu acelas algoritm cu deosebirea ca init ial se
citeste k, iar iesirea din ciclu se face cu instruct iunea
until j = k
(b). Daca se cunoaste o metoda de simulare a lui Y atunci evident X se
simuleaza astfel
1. Intrare k; Init ializeaza X = 0;
2. for i := 1 to k do begin
Genereaza Y ; Ia X := X +Y ;
end
Livreaza X.
(Adica, conform proprietat ilor enunt ate X este suma de k variabile geo-
metrice independente).
(c). O metoda este sa inversam direct funct ia de repartit ie a veriabulei
geometrice
F(i) =
i1

=0
pq

= p
1 q
i
1 q
.
Rezolvand ecuat ia F(Y ) = U se obt ine in nal (inlocuind 1 U cu U)
Y = int(
log(U)
log(q)
) + 1.
(Prin int(x)se noteaza partea intreaga a lui X). Alta metoda (bazata tot pe
inversa!) consta in a gasi valoarea Y = i pentru care
F(i 1) U F(i).
E.2.35. Fie X, K, B
K
variabile aleatoare X ; Poisson(f), 0 < f <
1, K ;Poisson(1), B
K
;Binom(K, f). Sa se arate ca X este amestecarea
familiei {Binom(K, f)} cu repartit ia K ;Poisson(1).
(a). Sa se deduca o metoda de simulare a variabilei Poisson(f).
(b). Daca W ; Poisson(), > 1, sa se construiasca algoritmi pentru
simularea lui W folosind simularea variabilelor X, K, B
k
.
25
Solut ie. Avem P(X = k) =
1
k!
e
1
, P(B
K
= ) = C

k
f

(1 f)
k
. Deci
P(B
K
= |K = k) =
f

(1 f)
k
!(k )!
e
1
,
de unde
P(X = ) =
f

k=
(1 f)
k
(k )!
e
1
=
=
f

!
e
1f
e
1
=
f

!
e
f
, = 0, 1, 2, ...
(a). Algoritmul de simulare al lui X se bazeaza deci pe o compunere
discreta.
(b). Descompunem mai intai pe ca suma de partea intreaga si partea
fract ionara, adica = m + f, m = int(), 0 < f < 1. Variabila Z ;
Poisson() se genereaza za suma Z = M+X unde M ;Poisson(m), X ;
Poisson(f). Simularea lui X se face ca la pct. (a), iar simularea lui M se
poate face si ca suma urmatoare
M =
m

i=1
K
i
, K
i
;Poisson(1).
Simularea variabilei K ; Poisson(1) se poate face cu ajutorul binomialei
B ; Binom(n, p), n mare, 0 < p < 1, astfel incat np = 1. (Adica se
alege un n sucient de mare si se ia p =
1
n
. Simularea lui K se face simuland
B ;Binom(n,
1
n
) si luand K = B.
E.2.36. Metoda inversa pentru o repartit ie discreta cu funct ia de repartit ie
P(X i) = F(i) =

i
=0
p

poate aplicata daca se foloseste o funct ie de


repartit ie continua G(x) astfel incat G(i + 1) = F(i), cu urmatorul algoritm
1. Genereaza U uniform pe (0, 1);
2. Ia X = int(G
1
(U).
(a). Aratat i ca algoritmul este corect.
(b). Aplicat i metoda la simularea variabilei geometrice de parametru p.
(c). Aplicat i metoda la simularea variabilei discrete X pentru care
p
i
= P(X = i) =
1
i
b

1
(i + 1)
b
, i = 0, 1, 2, ..., b > 0.
26
Solut ie. (a). Intr-adevar
P(X < i) = P(G
1
(u) < i + 1) = P(U < G(i + 1) = G(i + 1) = F(i).
Se observa ca G(i + 1) G(i) = p
i
.
(b). Sa consideram funct ia de repartit ie Exp(),adica G(x) = 1e
x
, x
0. atunci avem
G(i + 1) G(i) = e
i
e
(i+1)
= e
i
(1 e

).
Notand q = 1 p = e

rezulta ca
G(i + 1) = 1 e
(i+1)
= p
i+1

=0
q

= F(i),
desci se poate aplica algoritmul de la pct. (a), adica X = int[
1

log(U)] + 1
este repartizat geometric cu parametrul p = e

. De aici rezulta ca X =
int[
log(U)
log(1p)
] + 1 are repartit ie geometrica. Deoarece log(U) este variabila
E ; Exp(1) rezulta ca X = int[
E
log(1p)
] + 1 are repartit ie geometrica,
oricare ar algoritmul de simulare a lui E.
(c). Sa consideram funct ia de repartit ie G(x) = 1 x
b
, x 0, b > 0.
Observam ca
G(i + 1) G(i) = i
b
i
(b+1)
= p
i
, i 1.
Deci variabila X se semuleaza cu formula
X = int[U
1
b
] + 1.
In particular, pentru b = 1 avem
p
i
= P(X = i) =
1
i

1
i + 1
=
1
i(i + 1)
,
deci X se simuleaza cu formula X = int(
1
U
) + 1.
E.2.37. Metoda respingerii cu infasuratoare se poate aplica si repartit iilor
discrete
X :
_
a
1
, a
2
, ..., a
n
p
1
, p
1
, ..., p
n
_
, Y :
_
b
1
, b
2
, ..., b
n
q
1
, q
2
, ..., q
n
_
27
daca exista o constanta astfel incat p
i
q
i
, 1 i n.
Aplicat i aceasta metoda la simularea variabilei X cu p
i
=
6

2
i
2
, iar Y are
q
i
=
1
i(i+1)
, i 1.
Solut ie. Se observa ca
p
i
q
i
=
6

sup
i1
i + 1
i
=
12

2
.
Algoritmul este deci urmatorul
repeat
genereaza U, V variabile uniforme pe (0, 1), independente;
ia X = int[
1
U
] + 1 (conformE.2.36 (c).);
until 2V X X + 1;
livreaza X.
E.2.38. Metoda respingerii se poate aplica la simulerea unei variabile
discrete X cu p
i
= P(X = i), i = 0, 1, 2, ... cunoscute, folosind o variabila
continua Y cu densitatea infasuratoere h(x), daca exista constanta nita
astfel incat
p
i
g(x)
, x [i, i + 1), i = 0, 1, 2, ...
Sa se construiasca un algoritm de respingere pentru simularea variabilei dis-
crete X cu
P(X i) =
c
2i 1

c
2i
, i = 1, 2, 3, ...
unde c este o constanta de normare ce trebuie determinata.
Solut ie. Se stie ca seria
S = 1
1
2
+
1
3
+... +
1
21 1

1
2i
+... = log(2).
Prtobabilitat ile p
i
se obt in imperechind termenii consecutivi din serie, deci
c =
1
2.log(2)
. Pentru simularea lui X sa consideram funct ia de repartit ie H(x)
data de
H(x) = 1
1

x
, x 1, h(x) =
1
2

x
3
.
Se observa ca
r(x, i) =
p
i
h(x)
=
c

x
3
2i(21 1)
2c.
28
Deci se poate aplica metoda respingerii sub forma
repeat
Genereaza Y ;H(x) cu metoda inversa;
Ia T = int(Y ) si genereaza U uniform pe (0, 1);
until Ug(T) p(T);
Livreaza X = T.
E.2.39. Variabila discreta X are repartit ia serie logaritmica de parametru
p (0, 1) daca
P(X = i) = p
i
=
a
i
p
i
, i = 1, 2, 3, ..., a =
1
log(1 p)
.
(a). Construit i un algoritm de simulare a lui X folosind metoda inversa.
(b). Aratat i ca X este amestecarea dintre repartit ia geometrica de parametru
q = 1 Y trunchiata pe [1, ), unde Y are funct ia de repartit ie
F(y) =
log(1 y)
log(1 p)
, (0 y p.
(c).Aplicati metoda respingerii luand ca infasiratoare repartit ia geomet-
rica de parametru p, cu q
i
= pq
i1
, i 1..
Indicat ie. (a). Se stie ca

i=1
p
i
i
= log(1 p)
de unde rezulta valoarea constantei a. Se foloseste faptul ca p
i
= (1
1
i
)pp
i1
(i 2). Algoritmul bazat pe inversare este urmatorul
1. Init ializeaza suma S =
p
log(1p)
.
2. Genereaza U uniform pe (0, 1). Ia X = 1.
3. While U > S do begin
U := U S; X := X + 1; S := S
p(X1)
X
.
end.
4. Livreaza X.
(b). Vom folosi funct ia generatoare a probabilitat ilor Pentru repartit ia
geometrica aceasta este
(t) =
q
p

i=1
t
i
q
i
=
tq
1 tp
, |t| < 1.
29
De aici rezulta ca funct ia generatoare a amestecarii este
(t) =
_
)0
p
t(1 y)
1 ty
1
(1 y)
log(1 p) =
log(1 pt)
log(1 p)
.
Pe de-alta parte funct ia generatoare a repartit iei serie logaritmica este
(t) = a

i=1
t
i
p
i
i
= a.log(1 pt) =
log(1 tp)
log(1 p)
.
Deoarece cele doua funct ii generatoare coincid, rezult a ca amestecarea are
repartit ia serie logaritmica. Variabila Y se genereaza cu metoda inversa
adica Y = 1 (1 p)U. Algoritmul de compunere este deci urmatorul
1. Genereaza U, V uniforme pe (0, 1) independente.
2. Calculeaza X = 1 + int(
log(v)
log(1(1p)U)
. (Instruct iunea 2. s-a obt inut
dupa simplicari).
Observat ii. (1) Cand V > p, deoarece p 1 (1 p)
U
, rezulta ca X = 1,
deci algoritmul devine
1. Ia r = log(1 p); X = 1; Genereaza V uniform pe (0, 1);
2. if V p then X = 1
else begin
genereaza U unifdorm pe (0, 1); ia X = 1+int(
log(V )
log(1e
rU
)
);
end.
(c).Se observa ca
r
i
=
p
i
q
i
=
ap
i
ipq
i1
< a.
Dupa simplicarea unor expresii algoritmul de respingere pentru simularea
lui X este
1. repeat
genereaza U exponent ial pe (0, 1);
genereaza E o variabila exponent iala Exp(1) independenta de U;
calculeaza X = 1 +int(
E
log(1p)
);
until UX < 1;
Livreaza X. (S-a folosit rezultatul de la E.2.36).
E.2.40. Variabila aleatoare X are repartit ia lui Zipf de parametru a, a >
1 daca
p
i
= P(X = i) =
1
(a)i
a
, i 1, (a) =

i=1
1
i
a
,
30
unde (a) este funct ia zeta a lui Riemann. Sa se simuleze X folosind respin-
gerea cu infasuratoarea
q
i
= P(y = i) =
1
(i + 1)
a
((1 +
1
i
)
a1
1), i 1.
Solut ie. Se constata ca
H(i) = P(Y < i) = 1
1
i
a1
, adica y = int(U
1
a1
).
De asemenea
r
i
=
p
i
q
i
<
p
1
q
1
=
2
a1
(a)(2
a1
1)
= .
Deci algoritmul este
1.Init ializeaza b = 2
a1
;
2. repeat
Genereaza U, V, uniforme pe (0, 1) independente;
Ia X = int(U

1
a1
), T = (1 +
1
X
)
a1
until V X
T1
b1

T
b
;
3. Livreaza X
Repartit ia Zipf este specica unor caracteristici aleatoare din lingvistica
(pentru a caracteriza frecvent a cuvintelor) si sociologie. Ea se foloseste si la
alocarea dinamica a memoriei.
E.2.41. Variabila continua X are repartit ia lui Planck daca densitatea
sa de repartit ie este
f(x) =
b
a+1
(a + 1)(a + 1)
.
x
a
e
bx
1
, a > 0, b > 0 x > 0.
Sa se descrie un algoritm de simulare a lui X. Parametrul a este parametru
de forma si parametrul b este parametru de scala.
Solut ie. Se constata ca densitatea f(x) este o amestecare intre repartit ia
Zipf(a + 1) cu repartict ia Gamma(0, b, a + 1), adica
f(x) =

i=1
1
i
a+1
(a + 1)
.
x
a
e
ibx
(ib)
a+1
(a + 1)
.
Aceasta formula se poate demonstra direct, sau folosind funct ia generatoare.
Deci algoritmul de simulare al lui X este
31
1. Genereaza G ;Gamma(0, b, a + 1);
2. Genereaza Z ;Zipf(a + 1);
3. Calculeaza X =
G
bZ
.
E.2.42. Variabila discreta X de forma
X :
_
1, 2, ..., n, ...
p
1
, p
2
, ..., p
n
, ...
_
are repartit ia Yule daca
p
i
= c(a)
_
1
0
(1 u)
i1
u
a1
du, a > 1.
In expresia precedenta c(a) este o constanta de normare a carei valoare este
c(a) =
_

i=1
B(i, a)
_
1
und
B(i, a) =
(i)(a)
(i +a)
,
unde B(i, a) este funct ia Beta. Sa se descrie un algoritm de simulare a
variabilei X.
Indicat ie. Se arata (prin calcul direct) ca repartit ia Yule este amestecarea
dintre Repartit ia gepmetrica de parametru p = e

Y
a1
si repartit ia Exp(1) a
lui Y. De aici rezulta urmatorul algoritm de respingere
1. Genereaza E ;Exp(1);
2. Genereaza E

;Exp(1), Esi E

independente;
3. Calculeaza
X = int(
E
log(1 e

a1
)
+ 1.
32

S-ar putea să vă placă și