五、特殊的抽样方法
针对具体的问题,有时采用近似抽样方法是十分必要的。
如果实验测量或理论计算得到的近似分布密度函数在抽样范
围内是有界的,我们总是可以采用舍选法。但是这种方法对
分布密度函数在抽样范围内起伏比较大时,其抽样效率很低。
部份近似抽样方法。
1.对由直方图给出的分布的抽样
一维直方图给出的分布反映了某一随机变量出现的频
数。实际上是以图形形式给出随机变量在各道上的分布密度
函数和分布函数的值。 )(xf )(xF
如果随机变量在第j 道内的频数为,则到该道的累积
分布数为,再假定抽样范围是从1道到N道,则在第j 道
上的分布函数值为
j
n
∑
=
j
i
i
n
1
∑∑
==
=
N
i
i
j
i
ij
nnxF
11
)( .
它的抽样可以采用阶梯近似法,即抽取均匀分布随机数ξ,找
出满足不等式
)()(
1 ii
xFxF <≤
?
ξ
.
的值,把对应的值作为抽样值,即取i
i
x
i
x=η。
这种做法实际上就是用若干个前后相接的阶梯性函数值
来近似。
)(xF
进一步作细致的考虑时,我们可以用线性插值法求出抽
样值。从判断不等式决定出的i,和的值,求出
i
x
)(
)()(
)(
1
1
1
1 ?
?
?
?
?
?
?
+=′
ii
ii
i
ii
x
xFxF
xF
xx x
ξ
i
′
ξ
i
x
ξ
∑
∫
=
?
=
j
i
x
x
i
i
dxxfj
1
1
)()(
取
x=η
作为抽样值。
上述方法由于需要逐道地计算累计分布数,来判断
与随机数
)(
i
xF
值对应的满足不等式的值,因而效率很低。
折半查找法是以计算最靠近的和的值,并求出
线性插值来作为抽样值。这种方法可以提高抽样效率。
)(xF
1?i i
)(xF
2.对由经验公式给出分布的抽样
当随机变量样本的一维分布密度函数是由平滑的经验公
式给出时,常用的技巧是采用如下方法: )(xf
(1) 将抽样区间划分为若干等份的子区间;然后在各个子区
间内对分布密度函数积分;
(2) 计算出对应于各个区间的分布函数值,即
;
F
(3) 再采用与由直方图分布抽样中使用的相同办法来求出
抽样值。
这种方法在求对应于各子区间的一组分布函数值时比较
耗时,但依据这些数产生随机数时却相当快。
3. 反函数近似
设随机变量η以分布函数分布。采用直接抽样法,取
,则可以从均匀分布的随机变量抽样值
)(xF
)(
1
ξη
?
= F ξ得到随机变量
η的抽样值。
在实际抽样中,往往反函数的解析形式求不出来,
因而就用近似计算方法求得。以
Q
作为
)(
1
yF
?
)(yQ≈)(
1
yF
?
)(y
η的抽样近似
值。这就是反函数近似。
假如具有如下性质:
)(
1
yF
?
]1,0[∈y,lim和lim,
此时,可以利用最小二乘法拟合曲线的函数。例如我们
取
?∞=
?
→
)(
1
0
yF
y
1?
+∞≈
?
→
)(
1
1
yF
y
)(yF
cba ,,,,
. )1ln(ln)1()()(
2221
yyyycybyayQyF ?+?+++=≈
?
βα
这样的近似取法对相当广泛的分布函数抽样是可行的。其中
系数是待定参数。当然也可以取其它数学表示形
式,如帕迪(Pade)近似。
βα )(yQ
)1,0(N以标准正态分布为例,利用分布函数定义的公式,
近似有
dxedxey
x
yQ
x
yF
2
)(
2
)(
22
1
2
1
2
1
?
∞?
?
∞?
∫∫
≈=
?
ππ
.
取点
200
k
y
k
=,,即将[0,1]区间分成200等份,
取区间内有199个点,得到
)199,...,2,1( =k
,
2
1
2
)(
2
dxey
x
yQ
k
?
∞?
∫
=
π
)199,...,2,1( =k
dxeyQ
x
y
k
2
2
2
1
)(
?
∞?
∫
≈
π
利用逐步回归法计算出各个系数为:
, 8268.0?=a
6736.1=b, 0=c ,
3315.0=α , 3315.0?=β 。
4. 近似修正抽样
对于任意已知的分布密度函数,若是的一个
近似分布密度函数,并且以分布的抽样简单,运算量也
小,则可以令
)(xf )(
1
xf )(xf
)(
1
xf
)
)
x
x
(
(
min
1
0)(
1 f
f
m
xf ≠
=
使分布密度函数可以表示成乘加分布抽样的分布形式
)()()()(
221
xfxHxmfxf += .
其中是对近似)()(
22
xfxH )()(
1
xmfxf ≈的一个修正,即
)()()()( xmfxfxfxH
122
?= .
令,与乘加分布的公式比较,可以看到这里有
。这样我们就可以采用如下的抽样框图。
)(max
22
xHM =
mx =)(H
1
产生随机数
NoYes
Yes
No
2
ξ
?
1
m<ξ
1f
η
对)(
1
xf抽样,得
2f
η
对)(
2
xf抽样,得,产生
2
ξ
1f
ηη =
?/)(
2222
MH
f
ηξ <
2f
ηη =
5.极限近似法
中心极限定理可以用来产生具有正态分布的随机变量抽
样。
它利用任意分布的随机数的和来产生正态分布的抽样
值。假如
n
ξξξ ,...,,
21
是在[0,1]区间上n 个均匀分布的独立随
机变量的抽样样本。它的平均值为
21
,方差为
121
。事实上,
我们有
{}
∫∫
∞+
∞?
=?=?=
1
0
2
1
1)( dxxdxxfxE ξ .
{} {} {}[]
12
1
2
1
)(
2
1
0
222
=
?
?
?
?
?
?
??=?=
∫
dxxfxEE ξξξV
.
设
nn
R ξξξ +++= ...
21
,则
{}
∫∫
∞+
∞?
=?=?=
1
0
2
1)(
n
dxnxdxxfnxRE
n
.
{} { } {}[]
12
2
22
n
RERER
nnn
=?=V
.
根据中心极限定理,引入新的随机变量
n
δ,
12
2
n
n
R
n
n
?
=δ
,
则
∫
∞?
?
∞→
==≤
x
t
n
n
Ndtexp )1,0(
2
1
)(lim
2/
2
π
δ .
通常取n,此时随机变量为 12=
12
δ
1212
6?= Rδ .
这种抽样的方法称为极限近似法。但是要注意:如果取n,
采用这种方法抽样时,则
12=
6>x的情况已经完全忽略。若要考
虑6x <处的情况,必须取或改用其它的抽样办法。 12>n
六、多维随机向量的抽样方法
1. 舍选法
设随机向量变量η
G
的各分量为
n
ηηη ,,,
21
???
,
. ()
T
n
ηηηηη ???=
321
G
它的联合分布密度函数为),,,(
21 n
xxxf ??? , 抽样范围在平行多面
体
{}
nnn
bxabxabxa ≤≤???≤≤≤≤ ,,,
222111
内。令在该范围内,
+∞<???= ),,,(sup
21 n
xxxfL
我们将一维舍选法推广到这里,得到n 维舍选法的做法如下:
(1)产生n+1 个[0,1]上的均匀分布随机数
121
,,,
+
???
n
ξξξ,
(2)然后判断如下不等式
() () ()[]
nnnnn
aabaabaabF
L
+????+?+?<
+
ξξξξ ,,,
1
222211111
.
是否成立。
(3)若不等式成立,则得到η
G
的一个抽样值,该向量的各个
分量值为
i
a
iiii
ab +?= ξη )(,
( ),,2,1 ni ???=
(4) 若不等式不成立,再重新产生n+1 个随机数,
i
ξ
(5) 重复上面的步骤,直至该不等式成立。这种方法的效
率为
∏
=
?
=
n
i
ii
abL
E
1
)(
1
.
显然这个抽样效率较低,而且L的计算也很困难。这就在很
多情况下限制了它的使用。
2.条件密度法
设的联合密度函数为,若在某一特定
的点处,
T
),(
21
ηηη =
G
),(
21
xxf
1
x
. 0),(
221
>
∫
+∞
∞?
dxxxf
则定义
.
∫
+∞
∞?
=
2212112
),(/),()|( dxxxfxxfxxf
其中称为在)|(
12
xxf
11
x=η条件下,
2
η
的条件分布密度函数。这时
可以将表示成 ),( xxf
21
∫
+∞
∞?
?=
2211221
),()|(),( dxxxfxxfxxf .
用类似的方法可以将三维随机向量的联合分布密度函数写为
),|()|()(),,(
213312211321
xxxfxxfxfxxxf ??= .
上面公式中,
?
?
?
?
?
?
?
?=
=
=
∫
∫∫
∞+
∞?
+∞
∞?
+∞
∞?
)]|()(/[),,(),|(
)(/),,()|(
),,()(
122113212133
113321122
1232111
xxfxfxxxfxxxf
xfdxxxxfxxf
dxdxxxxfxf
进一步推广到n 维随机向量也是容易的。
),,|(),|()|()(),,,(
12121331221121 ?
????????=???
nnnn
xxxxfxxxfxxfxfxxxf .
抽样步骤:
(1) 由为分布密度函数产生)(
11
xf
1
η的抽样值
11
x=η。
(2) 在
11
x=η的条件下,由分布密度函数抽取)|( xxf
122 22
x=η。
(3) 在
11
x=η,
22
x=η的条件下,由分布密度函数抽取),|(
2133
xxxf
33
x=η。
:
:
(n) 在
11
x=η,
22
x=η,
11
,
??
=???
nn
xη的条件下,由分布密度函数
),( ?,,|
121 ?
??
nnn nn
xxxxf抽取x=η。
最后就得到了
(
123
,,,,
T
n
)η ηηη η= ???
G
的抽样值
()
123
,,,,
T
n
x xx x???。
例 中子入射角),( θ?服从联合分布密度函数
?
?
?
?
?
+=≤≤≥>
+=
.12/)323(,2/0,02/
,sinsin)sinsin31(
1
),(
2
παπθ?π
θ?θ?
α
θ?f
α为归一化常数,现要求对其余弦
θδ?η cos,cos ==做抽样。
解 容易证明对上式进行变量代换后,η和δ联合分布密度函
数为
[ ])1)(1(311
)323(
12
),(
222
yxyyxf ??+?
+
=
π
.
取
?
?
?
?
?
?
?
?
?+
+
=
2
1
1
3
32
4
)323(
12
)( xxf
π
π
.
( )
.
)1)(1(311
1
32
1
)|(
222
2
2
yxy
x
xyf ??+?
?+
=
π
34
21 1
则。我们先对抽样,将其化为
)|()(),( xyfxfyxf = )(xf
?
?
?
?
?
?
?
+
=
+
=
??+=
323
32
,
323
3
1
4
)(
21
2
211
pp
xppxf
π
用前面介绍过的加分布抽样,可以得到它的抽样框图。抽出
2
ξη =后,再对)|(
22
ξyf抽取δ值。这时同样可以使用加分布抽样
法。
抽样框图
产生随机数
1
ξ
1
3/(3 2 3)?ξ <+
2
η ξ=
22
23
1?ξξ+ <
No
Yes
Yes
No
产生随机数
23
,ξ ξ
产生随机数
4
ξ
4
2
2
/4
?
23
1
43
π
ξ
π
ξ
<
+?
5
δ ξ=
No
Yes
No
产生随机数
56
,ξ ξ
2
56
1?ξξ+<
No
2
56
1?ξξ+ <
产生随机数
56
,ξ ξ
Yes
3.n 维正态分布随机向量的抽样
当n 维随机向量
(
123
,,,,
T
n
)η ηηη η=?
G
服从如下标准正态分布时,
{} { } { }2/exp
2
1
2/exp
2
1
2/exp
2
1
),,,(
22
2
2
121 nn
xxxxxxf ???????=???
πππ
各分量是互相独立的。我们可以用一维变量正态分布的抽样
法,对各分量分别抽取
i
x
η,构成总体抽样值
( )
123
,,,,
n
T
xxxx x
ηηηη η= ???
G
。
对n 维正态分布的抽样可以在对n 维标准正态分布抽样
的基础上进行.如果n 维随机向量η
G
服从的联合分布密度函数
可以表示为如下的正态分布形式:
() ()(
?
?
?
?
?
?
?????=???
?
??
μχμχπ )
G G G G
1
2
1
2
21
2
1
exp2),,( MMxxxf
T
n
n
.
其中
()
12
,,,
T
n
xx xχ = ???
G
,
()
12
,,,
T
n
μ μμ μ=?
G
.
{}ημ
G G
E= , 即μ
G
为η
G
的期望值。M 称为η
G
的协方差矩阵,它是正
定对称的n 阶方阵,其矩阵元
ij
σ为
()( ){ }
jijjiiij
E σμημησ =??= .
因为M 是正定对称的,所以总可以找到一个非奇异的下三角
矩阵A 。将M 分解为
T
AAM = .
可以证明,一般n 维正态分布的抽样值
x
η,可以通过n 维标
准正态分布抽样值
y
η,经过变换
yx
Aημη
G G G
+=
.
来得到。
例 二维正态分布的抽样
解 设服从二维正态分布,对其协方差矩阵
(
12
,
T
ηηη=
G
)
AA
M
.
?
?
?
?
?
?
?
?
=
2221
1211
σσ
σσ
进行分解,以得到
T
的形式。我们可以得到下三角矩阵A
为
M =
?
?
?
?
?
?
?
?
?
?
?
?
?=
11
2
122211
11
12
11
0
σ
σσσ
σ
σ
σ
A
.
设η
G
的期望值为
()
12
,
T
μ μμ=
G
.
若相应的二维标准正态分布已抽得
( )
12
,
T
yy
ηηη=
G
,则得到最后的
抽样结果
( )
12
,
T
xxx
ηηη=
G
为
[]
?
?
?
?
?
?+
+
212
1
2/12
12221112
111
)(
yyx
y
ησσσηη
ησμ
+=
=
1
11
2
1
x
σ
σ
μ
η
.