第三章 由已知分布的随机抽样
1,随机抽样及其特点
2,直接抽样方法
3,挑选抽样方法
4,复合抽样方法
5,复合挑选抽样方法
6,替换抽样方法
7,随机抽样的一般方法
8,随机抽样的其它方法
? 作 业
第三章 由已知分布的随机抽样
本章叙述由己知分布抽样的各主要方法,并给出
在粒子输运问题中经常用到的具体实例。
1,随机抽样及其特点
由巳知分布的随机抽样指的是由己知分布的总体
中抽取简单子样。 随机数序列 是由单位均匀分布的总
体中抽取的简单子样,属于一种特殊的由已知分布的
随机抽样问题。本章所叙述的由任意已知分布中抽取
简单子样,是在假设随机数为已知量的前提下,使用
严格的数学方法产生的。
为方便起见,用 XF表示由己知分布 F(x)中产生的
简单子样的个体。对于连续型分布,常用分布密度函
数 f(x)表示总体的己知分布,用 Xf表示由己知分布密度
函数 f(x)产生的简单子样的个体。另外,在抽样过程中
用到的伪随机数均称随机数。
2,直接抽样方法
对于任意给定的分布函数 F(x),直接抽样方法如
下,
其中,ξ1,ξ2,…, ξN为随机数序列。为方便起见,
将上式简化为,
若不加特殊说明, 今后将总用这种类似的简化形
式表示, ξ总表示随机数 。
NntX ntFn,,2,1,in f)( ??? ? ?
tX tFF ??? )(in f
? 证明
下面证明用前面介绍的方法所确定的随机变量序
列 X1,X2,…, XN具有相同分布 F(x)。
对于任意的 n成立,因此随机变量序列 X1,X2,…,
XN具有相同分布 F(x)。另外,由于随机数序列 ξ1,
ξ2,…, ξN是相互独立的,而直接抽样公式所确定的函
数是波雷尔( Borel)可测的,因此,由它所确定的 X1,
X2,…, XN也是相互独立的( [P.R.Halmos,Measure
theory,N.Y.Von Nosrtand,1950]§ 45定理 2)。
)())((
)in f()()(
)(
xFxFP
xtPxXPxF
n
tFnX nn
???
????
?
?
?
1) 离散型分布的直接抽样方法
对于任意离散型分布,
其中 x1,x2,… 为离散型分布函数的跳跃点, P1,
P2,… 为相应的概率, 根据前述直接抽样法, 有离散
型分布的直接抽样方法如下,
该结果表明, 为了实现由任意离散型分布的随机
抽样, 直接抽样方法是非常理想的 。
?
?
?
xx
i
i
PxF )(
?? ??? I
1i
i
1I
1i
i PP,



当 ?IF xX
例 1,二项分布的抽样
二项分布为离散型分布,其概率函数为,
其中,P为概率。对该分布的直接抽样方法如下,
nNnnNn PPCPnxP ????? )1()(
?? ??? n
0i
i
1n
0i
i PP,



当 ?nX F
例 2,泊松 (Possion)分布的抽样
泊松 (Possion)分布为离散型分布,其概率函数为,
其中,λ>0 。对该分布的直接抽样方法如下,
!)( nePnxP
n
n
??????
?? ???? n
0i
i1n
0i
i
i!i!,=


当 ??? ?enX F
例 3,掷骰子点数的抽样
掷骰子点数 X=n的概率为,
选取随机数 ξ,如

在等概率的情况下,可使用如下更简单的方法,
其中[]表示取整数。
6
1)( ?? nXP
66
1 nn ??? ?
nX F ?
1]6[ ??? ?FX
例 4,碰撞核种类的确定
中子或光子在介质中发生碰撞时,如介质是由多
种元素组成,需要确定碰撞核的种类。假定介质中每
种核的宏观总截面分别为 Σ1,Σ2,…, Σn,则中子或
光子与每种核碰撞的概率分别为,
其中 Σt= Σ1+ Σ2+ … + Σn。碰撞核种类的确定方法为:
产生一个随机数 ξ,如果
则中子或光子与第 I种核发生碰撞。
niP
t
i
i,,2,1 ???
??
?? ?? I
1i
i
1I
1i
i PP



?
例 5,中子与核的反应类型的确定
假设中子与核的反应类型有如下几种,弹性散射,
非弹性散射,裂变,吸收,相应的反应截面分别为 Σel,
Σin,Σf,Σa。则发生每一种反应类型的概率依次为,
其中反应总截面 Σt= Σel+ Σin+ Σf+ Σa。 t
a
a
t
f
f
t
in
in
t
el
el PPPP ?
??
?
??
?
??
?
??
反应类型的确定方法为:产生一个随机数 ξ
收吸
裂变
非弹性散射
弹性散射
?
? ?????
?
? ????
?
? ???
?
?
?
?
?
?
finel
inel
el
PPP
PP
P
?
?
?
2) 连续型分布的直接抽样方法
对于连续型分布, 如果分布函数 F(x) 的反函数
F- 1(x)存在, 则直接抽样方法是,
)(1 ??? FX F
例 6,在[ a,b]上均匀分布的抽样
在[ a,b]上均匀分布的分布函数为,

?
?
?
?
?
?
??
?
?
?
?
bx
bxa
ab
ax
ax
xF



1
0
)(
????? )( abaX F
例 7,β分布
β分布为连续型分布,作为它的一个特例是,
其分布函数为,

??FX
10,2)()( 20 ????? ?? ?? xxt d tdttfxF xx
10,2)( ??? xxxf
例 8,指数分布
指数分布为连续型分布,其一般形式如下,
其分布函数为,

因为 1- ξ也是随机数,可将上式简化为
0,1)()( 0 ?????? ???? ?? xedteadttfxF axx atx
0,)( ??? ? xeaxf ax
)1l n (1 ???? aX F
?ln1aX F ??
连续性分布函数的直接抽样方法对于分布函数的
反函数存在且容易实现的情况, 使用起来是很方便的 。
但是对于以下几种情况, 直接抽样法是不合适的 。
1) 分布函数无法用解析形式给出, 因而其反函数也无法
给出 。
2) 分布函数可以给出其解析形式, 但是反函数给不出来 。
3) 分布函数即使能够给出反函数, 但运算量很大 。
下面叙述的挑选抽样方法是克服这些困难的比较
好的方法 。
3,挑选抽样方法
为了实现从己知分布密度函数 f(x)抽样, 选取与
f(x)取值范围相同的分布密度函数 h(x),如果
则挑选抽样方法为,
???
????? )(
)(s u p
xh
xfM
x
hf
h
h
XX
XhM
Xf
?
?
?
?
?
)(
)(
?
>
即从 h(x)中抽样 xh,以 的概率接受它 。
下面证明 xf 服从分布密度函数 f(x)。
证明:对于任意 x
)( )( hhxhM xf?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
????
?
?
?
?
?
?
?
?
?
?
????????
)(
)(
)(
)(
,
)(
)(
)(
h
h
h
h
h
h
h
hf
XhM
Xf
P
XhM
Xf
dxxXxP
XhM
Xf
dxxXxPdxxXxP
?
?
?
dxxf
dXXf
dXXf
dXXh
XhM
Xf
dXXh
XhM
Xf
ddXXh
ddXXh
hh
dxx
x
hh
hh
h
h
dxx
x
hh
h
h
XhM
Xf
hh
dxx
x
XhM
Xf
hh
h
h
h
h
)(
)(
)(
)(
)(
)(
)(
)(
)(
)(
)(
)(
)(
0
)(
)(
0
??
?
?
?
?
?
?
?
?
?
?
?
?
? ?
? ?
?
??
?
?
??
?
?
??
?
?
?
?
?
使用挑选抽样方法时, 要注意以下两点:选取 h(x)
时要使得 h(x)容易抽样且 M的值要尽量小 。 因为 M小能
提高抽样效率 。 抽样效率是指在挑选抽样方法中进行
挑选时被选中的概率 。 按此定义, 该方法的抽样效率 E
为,
所以, M越小, 抽样效率越高 。
M
dXXh
XhM
Xf
XhM
Xf
PE
hh
h
h
h
h
1
)(
)(
)(
)(
)(
??
?
?
?
?
?
?
?
?
?
?
?
??
?
?
??
?
当 f(x) 在 [ 0,1] 上定义时, 取 h(x)=1,Xh=ξ,
此时挑选抽样方法为
)(s u p
10
xfM
x ??
?
>
?
?
?
?
?
??
?
fX
M
f )(
例 9,圆内均匀分布抽 样
令圆半径为 R0,点到圆心的距离为 r,则 r的分布
密度函数为
分布函数为
容易知道,该分布的直接抽样方法是
??
?
?
? ??
?
其它

0
02
)( 020
Rr
R
r
rf
2
0
2
)( RrrF ?
??? 0Rr f
由于开方运算在计算机上很费时间, 该方法不是
好方法 。 下面使用挑选抽样方法:取
则抽样框图为
?????? 0
00
22)( )(1)( RrMR rrh rfRrh h,,,

20
21
?
??
??
?
Rr f

显然, 没有必要舍弃 ξ1> ξ2的情况, 此时, 只需取
就可以了, 亦即
另一方面,也可证明 与 具有相同的分
布 。
10 ??? Rr f
),m a x ( 210 ???? Rr f
? ),m a x ( 21 ??
2)( rrF ?
4,复合抽样方法
在实际问题中, 经常有这样的随机变量, 它服从
的分布与一个参数有关, 而该参数也是一个服从确定
分布的随机变量, 称这样的随机变量服从复合分布 。
例如, 分布密度函数
是一个复合分布 。 其中 Pn≥0,n=1,2,…, 且
fn(x)为与参数 n有关的分布密度函数, n=1,2,…,
参数 n服从如下分布
??
?
??
1
)()(
n
nn xfPxf
??? ?1 1n nP
?
?
?
yn
nPyF )(
复合分布的一般形式为,
其中 f2(x/y)表示与参数 y有关的条件分布密度函数,
F1(y)表示分布函数 。
复合分布的抽样方法为,首先由分布函数 F1(y) 或分
布密度函数 f1(y)中抽样 YF1或 Yf1,然后再由分布密度函
数 f2(x/ YF1)中抽样确定 Xf2 (x/YF)
证明,
所以, Xf所服从的分布为 f (x)。
)()()( 12 ydFyxfxf ??
)/( 12 FYxff XX ?
dxxfYd x d FYxf
dxxXxpdxxXxp
FYxff
)()()(
)()(
12
)/( 12
??
???????
?
例 10,指数函数分布的抽 样
指数函数分布的一般形式为,
引入如下两个分布密度函数,
??
?
?
?
?? ?
? ?
其它

0
0)(
1
xdy
y
e
nxE n
xy
n
?
?
? ??
?
?
?
? ??
?
?
??
其它

其它

0
0
)(
0
1
)(
2
1
1
xey
yxf
yyn
yf
xy
n

使用复合抽样方法, 首先从 f1(y)中抽取 y
再由 f2(x/ YF1)中抽取 x
? ?? 1 12 )()()( dyyfyxfxE n
),,,m a x (
11
21
1
nn
fY ???? ???
121
1
ln),,,m a x (
ln
1
?
?
???
??
nn
f
n
f YX
????
?
?
5,复合挑选抽样方法
考虑另一种形式的复合分布如下,
其中 0≤H(x,y)≤M,f2(x/y)表示与参数 y有关的条件分布
密度函数, F1(y)表示分布函数 。 抽样方法如下,
)()(),()( 12 ydFyxfyxHxf ??
)/(
)/(
12
112
),(
F
F
Yxff
FYxf
XX
M
YXH
?
?
?
?
? >
证明,
抽样效率为,E=1/M
dxxfdxydFyxfyxH
yd x d Fyxf
M
yxH
yd x d Fyxf
M
yxH
dyd x d Fyxf
dyd x d Fyxf
M
YXH
P
M
YXH
dxxXxP
M
YXH
dxxXxPdxxXxP
dxx
x
M
yxH
dxx
x
M
yxH
Ff
Ff
f
Ff
ff
)()()(),(
)()(
),(
)()(
),(
)()(
)()(
),(
),(
,
),(
)(
12
12
12
),(
0
12
),(
0
12
12
12
2
12
2
??
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
????
?
?
?
?
?
?
?
?
?
????????
?
? ?
? ?
? ? ?
? ? ?
?
??
?
??
?
??
? ?
??
?
??
?
??
? ?
??
?
?
?
?
?
为了实现某个复杂的随机变量 y 的抽样,将其表
示成若干个简单的随机变量 x1,x2,…, xn 的函数
得到 x1,x2,…, xn 的抽样后,即可确定 y 的抽样,这
种方法叫作替换法抽样。即
6,替换抽样方法
),,,( 21 nxxxgy ??
),,,( 21 nf XXXgY ??
例 11,散射方位角余弦分布的抽 样
散射方位角 φ在[ 0,2π]上均匀分布,则其正弦和
余弦 sinφ和 cosφ服从如下分布,
直接抽样方法为,
??
?
?
? ???
??
其它

0
11
1
11
)( 2
x
xxf ?
???
???
2c o sc o s
2s ins in
?
?
令 φ=2ζ,则 ζ在 [ 0,π] 上均匀分布, 作变换
其中 0≤ρ≤1,0≤ρ≤π,则
(x,y) 表示上半个单位圆内的点 。 如果 (x,y) 在上半个单
位圆内均匀分布, 则 ζ在 [ 0,π] 上均匀分布, 由于
??
??
s in
co s
?
?
y
x
22
22
s i n
c o s
yx
y
yx
x
?
?
?
?
?
?
22
22
22
22
2
c o ss in22s ins in
s inc o s2c o sc o s
yx
xy
yx
yx
?
???
?
?
????
????
????
因此抽样 sinφ和 cosφ的问题就变成在上半个单位圆
内均匀抽样 (x,y) 的问题 。
为获得上半个单位圆内
的均匀点, 采用挑选法, 在
上半个单位圆的外切矩形内
均匀投点 ( 如图 ) 。
舍弃圆外的点, 余下的就是所要求的点 。
抽样方法为,
抽样效率
E=π/4≈0.785
21 ?? ?? yx
2
2
2
1
21
2
2
2
1
2
2
2
1
2
2
2
1
2
s in,c o s
1
??
??
?
??
??
?
??
?
?
?
?
?
?
??
?
>
为实现散射方位角余弦分布抽样, 最重要的是在
上半个单位圆内产生均匀分布点 。 下面这种方法, 首
先在单位圆的半个外切正六边形内产生均匀分布点,
如图所示 。
于是便有了抽样效率更高的抽样方法,
抽样效率
2
2
2
1
21
2
2
2
1
2
2
2
1
2
2
2
1
2211
21
3
32
s i n,
3
3
c o s
13
1,1
23
??
??
?
??
??
?
??
????
??
?
?
?
?
?
?
??
????
?
??
?
?
?
>

906.032 ?? ?E
例 12,正态分布的抽 样
标准正态分布密度函数为,
引入一个与标准正态随机变量 X独立同分布的随机变
量 Y,则( X,Y)的联合分布密度为,
作变换
22
2
1)( xexf ??
?
2)( 22
2
1),( yxeyxf ???
?
?? ?? sinc o s??yx
则 ( ρ,φ) 的联合分布密度函数为,
由此可知, ρ与 φ相互独立, 其分布密度函数分别为
分别抽取 ρ,φ,
22
2),(
?
?
??? ?? ef
?
?
?? ?
2
1
)(
)(
2
2
1
2
?
?? ?
f
f e
2
1
2
ln2
???
??
?
??
从而得到一对服从标准正态分布的随机变量 X和 Y,
对于一般的正态分布密度函数 N(μ,σ2) 的抽样, 其
抽样结果为,
ff
ff
YY
XX
???
???
??
??
~
~
)2s in (ln2
)2c o s (ln2
21
21
???
???
???
???
f
f
Y
X
例 13,β分布的抽 样
β分布密度函数的一般形式为,
其中 n,k为整数。为了实现 β分布的抽样,将其看作
一组简单的相互独立随机变量的函数,通过这些简单
随机变量的抽样,实现 β分布的抽样。设 x1,x2,…,
xn 为一组相互独立、具有相同分布 F(x) 的随机变量,
δk为 x1,x2,…, xn 按大小顺序排列后的第 k个,记为,
10)1()!()!1( !)( 1 ?????? ?? xxxknk nxf knk
),,,( 21 nkk xxxR ???
则 δk的分布函数为,
当 F(x)=x 时,
不难验证, δk的分布密度函数为 β分布 。 因此, β
分布的抽样可用如下方法实现,
选取 n个随机数, 按大小顺序排列后取第 k个, 即
? ? ? ? inin
ki
i
n xFxFCxF k
?
?
???? ? )(1)()(?
ini
n
ki
i
n xxCxF k
?
?
???? ? )1()(?
),,,( 21 nkf RX ??? ??
7,随机抽样的一般方法
1) 加抽样方法
2) 减抽样方法
3) 乘抽样方法
4) 乘加抽样方法
5) 乘减抽样方法
6) 对称抽样方法
7) 积分抽样方法
1) 加抽样方法
加抽样方法是对如下加分布给出的一种抽样方法,
其中 Pn≥0,,且 fn(x)为与参数 n有关的分布密度
函数,n=1,2,… 。
由复合分布抽样方法可知,加分布的抽样方法为,
首先抽样确定 n’,然后由 fn’(x)中抽样 x,即,
??
?
??
1
)()(
n
nn xfPxf
??? ?1 1n nP
?? ?? ??? ? n
1n
n
1n
1n
n PP,



当 ?nff XX
例 14,多项式分布抽 样
多项式分布密度函数的一般形式为,
将 f(x) 改写成如下形式,
则该分布的抽样方法为,
??
?
?
0
)(
i
i
i xaxf
?? ?
?
?
?
??????
00
)()1(1)(
i
ii
i
ii xfPxi
i
axf
?? ??? ? n
0i
i
1n
0i
i11 PP),,,m a x (



当 ??? nfX ?
例 15,球壳内均匀分布抽 样
设球壳内半径为 R0,外半径为 R1,点到球心的距
离为 r,则 r的分布密度函数为
分布函数为
该分布的直接抽样方法是
??
?
?
?
??
??
其它

0
3
)( 103
0
3
1
2
RrR
RR
r
rf
3
0
3
1
3
0
3
)( RR RrrF ???
? ? 31303031 )( RRRr f ??? ?
为避免开立方根运算, 作变换,
则 x∈ [0,1],其分布密度函数为,
其中
001 )( RxRRr ????
132)(33)()(
2
00102
2
01 ????????
???
RxRRRxRRxf
211020 RRRR ????
则 x及 r的抽样方法为,
001
432322
10
1
2
0
1
)(
),,m a x (),m a x (
3
3
RXRRr
XXX
RR
R
ff
fff
????
???
?
?
??????
?
?
?
?


>
>
2) 减抽样方法
减抽样方法是对如下形式的分布密度所给出的一
种抽样方法,
其中 A1,A2为非负实数,f1(x), f2(x)均为分布密度函数。
减抽样方法分为以下两种形式,
)()()( 2211 xfAxfAxf ??
以上两种形式的抽样方法,究竟选择哪种好,要
看 f1(x), f2(x)哪一个容易抽样,如相差不多,选用第一
种方法抽样效率高。
( 1) 将 f (x)表示为
令 m表示 f2(x)/ f1(x)的下界, 使用挑选法, 从 f1(x)中
抽取 Xf1
抽样效率为,
??
?
??
? ??
)(
)()()(
1
2
211 xf
xfAAxfxf
>
1
1
1
)(
)(
1
2
21
2
21
1
ff
f
f
XX
Xf
Xf
mAA
A
mAA
A
?
?
?
?
?
?
?
?
21
1
mAAE ??
( 2) 将 f (x)表示为
使用挑选法, 从 f2(x)中抽取 Xf2
抽样效率为,
??
?
??
? ??
2
2
1
12 )(
)()()( A
xf
xfAxfxf
mEmAA mE ????
21
>
2
2
2
21
2
2
1
21
1
)(
)(
ff
f
f
XX
mAA
mA
Xf
Xf
mAA
mA
?
?
?
?
?
?
?
?
例 16,β分布抽样
β分布的一个特例,
取 A1= 2,A2= 1,f1(x)= 1,f2(x)= 2x,此时 m= 0,则
根据第一种形式的减抽样方法,有

10),1(2)( ???? xxxf

2
21 1
?
??
?
??
fX


2
12 1
?
??
?
??
fX

由于 1- ξ1可用 ξ1代替, 该抽样方法可简化为,
对于 ξ2> ξ1的情况, 可取 Xf= ξ1, 因此
与 β分布的推论相同 。

2
12
?
??
?
?
fX

),m i n ( 21 ???fX
如下形式的分布称为乘分布,
其中 H(x)为非负函数,f1(x)为任意分布密度函数。
令 M为 H(x)的上界,乘抽样方法如下,
抽样效率为,
3) 乘抽样方法
)()()( 1 xfxHxf ?
ME
1?
1
1
)(
ff
f
XX
M
XH
?
??


例 17,倒数分布抽样
倒数分布密度函数为,
其直接抽样方法为,
下面采用乘抽样方法,考虑如下分布族,
其中 i = 1,2,…,该分布的直接抽样方法为,
axxaxf ???? 1,1ln 1)(
?? ??? af eaX ln
iif aX
i ]1)1[(
1 ??? ?
axxxaixf
i
ii ???? 1,)1(
1)( 1
1
利用这一分布族, 将倒数分布 f(x) 表示成,
其中,
乘法分布的抽样方法如下,
该分布的抽样效率为,
)()()( xfxHxf i?
,1)(,ln )1(,ln )1()( 1
1
1
1
i
i
i
i
xM
xH
a
aiM
xa
aixH ???
?
??

ii
f
i
aX
a
]1)1[(
1]1)1[(
2
1
2
1
1
???
???
?
??

)1(
ln
1 ?? iai
aE
例 18,麦克斯韦 (Maxwell)分布抽样
麦克斯韦分布密度函数的一般形式为,
使用乘抽样方法,令
该分布的直接抽样方法为,
0,2)(
23
??? ?? xexxf x???
2ln2
3
1 ????fX
0,32)( 321 ?? ?? xexf x??
此时
则麦克斯韦分布的抽样方法为,
该分布的抽样效率为,
e
M
xexxH
x
?
?
???
??
?
?
? ?
2
27
0,
3
)( 3
1
21

2
22
2
1
ln
2
3
ln
?
?
???
??
???
fX
e

7 9 5.0272 ??? eE ?
在实际问题中,经常会遇到如下形式的分布,
其中 Hn(x)为非负函数,fn(x) 为任意分布密度函数,
n=1,2,… 。不失一般性,只考虑 n=2的情况,
将 f(x) 改写成如下的加分布形式,
4) 乘加抽样方法
??
?
?
1
)()()(
n
nn xfxHxf
)()()()()( 2211 xfxHxfxHxf ??
)()(
)()()()()(
*
22
*
11
2
2
2
21
1
1
1
xfPxfP
xf
P
xHPxf
P
xHPxf
??
??
其中
)(
)(
)(
)(
)(
)(
)()(
)()(
2
2
2*
2
1
1
1*
1
222
111
xf
P
xH
xf
xf
P
xH
xf
dxxfxHP
dxxfxHP
?
?
?
?
?
?
乘加抽样方法为,
该方法的抽样效率为,
2
2
2
2
2
)(
ff
f
XX
M
XH
?
?
?
?
?
>
1
1
1
1
2
)(
ff
f
XX
M
XH
?
?
?
?
?
>
11 P??
> ≤
2
2
2
1
2
1
2
2
2
1
1
11 M
P
M
P
M
PP
M
PPE ??????
这种方法需要知道 P1的值 (P2=1- P1), 这对有些
分布是很困难的 。 下面的方法可以不用计算 P1,
对于任意小于 1的正数 P1, 令 P2=1- P1 ;
?
?
?
?
?
?
?
??
?
?
?
?
?
?
?
?
?
??
?
yn
n
PyF
yxf
yxf
yxf
y
P
xH
y
P
xH
yxH
)(
2),(
21),(
)(
2
)(
21,
)(
),(
1
2
1
2
2
2
1
1
),m in (
),m a x (
2
2
1
1
2
2
1
1
M
P
M
P
E
P
M
P
M
M
?
?
则采用复合挑选抽
样方法,有,
当取
时, 抽样效率最高
这时, 乘加抽样方法为,
2
2
2
2
2
)(
ff
f
XX
M
XH
?
?
?
?
?
>
1
1
1
1
2
)(
ff
f
XX
M
XH
?
?
?
?
?
>
21
1
1 MM
M
???
> ≤
21
2
1
MME ??
21
2
2
21
1
1 MM
MP
MM
MP
????
由于
可知第一种方法比第二种方法的抽样效率高 。
0
)(
)(
)(
2
)(
)(
)(
)()(
1
2121
2
2112
2121
2121
2
2
2
1
2
1
2
2
2121
21
2
2
2
121
2
2
2
1
2
1
2
2
2121
21
2
2211
2
1212
212
2
2
1
2
1
21
?
?
?
?
?
??
?
?
????
?
?
????
?
?
????
MMMM
PMPM
MMMM
PPMMPMPM
MMMM
MMPPMMPMPM
MMMM
MMPMMMPMMM
MMM
P
M
P
EE
例 19,光子散射后能量分布的抽样
令光子散射前后的能量分别为 和 (以 m0c2 为单
位,m0为电子静止质量,c 为光速),,
则 x 的分布密度函数为,
该分布即为光子散射能量分布,它是由著名的 Klin-
Nishina 公式确定的。其中 K(α) 为归一因子,
?
?
?
?
? 211,1111
)(
1)(
32
2
???
?
?
?
?
?
?
?
?
????
?
??
?
?
?
??? x
xxxx
x
K
xf
???
?? ??x
22 )21(2
14
2
1)21ln ()1(21)(
????
??
???????
?
??
? ???K
把光子散射能量分布改写成如下形式,
在 [ 1,1+2α] 上定义如下函数,
??
?
?
?
??
?
?
? ?
?
?
?
?
?
?
?
?
?
??
?
??
?
? ???
3
2
2
2 )1(1
11
)(
1)(
x
x
x
x
K
xf
?
?
?
?
3
2
2
2
1
2
21
)1(
)(
2
)(
1
1
)21)((
2
)(
2
1
)(
1
2
21
)(
x
x
K
xH
x
K
xH
xf
x
xf
?
?
?
?
?
?
?
?
?
?
??
?
?
?
?
? ??
?
?
?
?
?
?
?
?
?
?
?
??
?
?
?
?
?
?
?
则有
使用乘加抽样方法,
)()()()()( 2211 ????? xfxHxfxHxf ????
22
11
2
2
)(27
8
)(
)21)((
4
)(
21
21
21
2
1
M
K
xH
M
K
xH
X
X
f
f
?
?
?
?
?
??
??
?
?
?
?
?
?
??
?
?
??
??
?
光子散射能量分布的抽样方法为,
该方法的抽样效率为,
2
2
2
2
1
1
1
3
2
3
2
1
2
3
2
)1(
4
27
21
294
27
1
1
2
1
21
21
ff
f
f
f
ff
f
f
XX
X
X
X
XX
X
X
?
?
?
??
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
? ??
?
?
?
?
?
??
?
?
?
?
?
??
?
> >
> ≤
≤ ≤
)294(4
)()21(271
21 ?
??
?? ??
?? K
MME
乘减分布的形式为,
其中 H1(x), H2(x)为非负函数,f1(x),f2(x) 为任意分布
密度函数。
与减抽样方法类似,乘减分布的抽样方法也分为
两种。
5) 乘减抽样方法
)()()()()( 2211 xfxHxfxHxf ??
( 1) 将 f (x) 表示为
令 H1(x)的上界为 M1,的下界为 m,使用乘抽
样方法得到如下乘减抽样方法,
??
?
??
? ??
)()(
)()(1)()()(
11
22
11 xfxH
xfxHxHxfxf
>
1
1
11
1 )(
)()(
)(
)1(
1
1
22
1
1
ff
f
ff
f
XX
Xf
XfXH
XH
mM
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
)()(
)()(
11
22
xfxH
xfxH
( 2) 将 f (x) 表示为
令 H2(x)的上界为 M2,使用乘抽样方法, 得到另一种乘
减抽样方法,
??
?
??
? ?? 1
)()(
)()()()()(
22
11
22 xfxH
xfxHxHxfxf
>
2
2
2
22 )(
)(
)()(
)1(
2
2
11
2
ff
f
f
ff
XX
XH
Xf
XfXH
mM
m
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
例 20,裂变中子谱分布抽样
裂变中子谱分布的一般形式为,
其中 A,B,C,Emin,Emax 均为与元素有关的量。令
其中 λ为归一因子,γ为任意参数。
m axm i n,sh)( EEEBEeCEf AE ????? ?
m a xm i n21,)()( EEEeEfEf
E ???? ? ?
?
?
相应的 H1(E),H2(E) 为,
于是裂变中子谱分布可以表示成乘减分布形式,
容易确定 H1(E) 的上界为,
为提高抽样效率, 应取 γ使得 M1 达到最小, 此时
??
?
??
?
?? ??
?
114
1e x p
21 A
BCM
?
?
?
?
?
?
???
?
?
??
?
?
???
?
?
?
?
?
?
???
?
?
??
?
?
???
BEE
A
C
EH
BEE
A
C
EH
??
?
??
?
11
e x p
2
)(
11
e x p
2
)(
2
1
)()()()()( 2211 EfEHEfEHEf ??
?
?
?
?
?
?
?
?
???
?
???
? ???? 1161
8
1
AB
ABA?
取 m= 0,令
则裂变中子谱分布的抽样方法为,
抽样效率
???? 4,
11 B
A ???
1
11
1
2
2
1m i n
)( ln
e x pln
ff
ff
f
EE
BEE
E
E
?
???
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
???
???
?
?
?
?


?
?
? ??? e
CME
21
1
对称分布的一般形式为,
其中 f1(x) 为任意分布密度函数,满足偶函数对称条件,
H(x) 为任意奇函数,即对任意 x满足,
对称分布的抽样方法如下:取 ε=2ξ- 1
6) 对称抽样方法
)()()( 1 xHxfxf ??
)()( )()( 11 xHxH xfxf ??? ??
1ff XX ??1ff XX ?
)(
)(
1
1
1 f
f
Xf
XH??
> ≤
证明,
因为 ε=2ξ- 1,ε≤x 相当于 ξ≤, 因此
? ? ? ?
? ? ? ?
? ?
??
??
??
??
????
????
?
???
?
???
?????
??????
??????
?
?
?
?
?
?
?
?
?
???
?
?
?
?
?
?
?
?
??
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?????
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
????
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
????
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?????
x
ff
x
fff
x
fff
x
fff
x
fff
x
fff
x
ff
f
f
x
ff
f
f
f
f
f
f
f
f
f
f
f
f
f
ff
dXXfdXXHXf
dXXHXfdXXHXf
dXXHXfdXXHXf
dXXf
Xf
XH
dXXf
Xf
XH
Xf
XH
xXP
Xf
XH
xXP
Xf
XH
xXP
Xf
XH
xXPxXP
11111
111111
111111
11
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
)()()(
)()(
2
1
)()(
2
1
)()(
2
1
)()(
2
1
)(
)(
)(
1
2
1
)(
)(
)(
1
2
1
)(
)(
1
2
1
,
)(
)(
1
2
1
,
)(
)(
1
2
1
,
)(
)(
1
2
1
,)(
1
11
11
1
1
1
1
11
11
??
??
? ?x?121
例 21,质心系各向同性散射角余弦分布抽样
在质心系各向同性散射的假设下,为得到实验室
系散射角余弦,需首先抽样确定质心条散射角余弦,
再利用下面转换公式,
得到实验室系散射角余弦 μL。其中 A为碰撞核质量,
ζC,ζL 分别为质心系和实验室系散射角。
12c o s
11,
2
1)(
????
????
????
??
CC
CCf
C
C
LL AA
A
?
???
21
1c o s
2 ??
???
为避免开方运算, 可以使用对称分布抽样 。
根据转换公式可得,
依照质心系散射各向同性的假定, 可得到实验室
系散射角余弦 μL 的分布如下,
该密度函数中的第一项为偶函数, 第二项为奇函数,
因而是对称分布 。 其中
11,2
1
21
2
1)(
22
22
???
?
?
?
?
?
?
?
?
?
??
???
LL
L
L
L
A
A
A
f ??
?
??
11,
1
21
2
1)(
22
22
1 ?????
???
L
L
L
L A
A
Af ??
??
? ?111 222 ????? LLLC AA ????
从 f1(μL) 的抽样可使用挑选法
然后再以
的概率决定接受或取负值 。
上述公式涉及开方运算, 需要进一步简化 。
22
22
1
212
L
L
L A
A
?
???
??
???
1
2
2
1
2
2
1
2
2
1
1
21
??
?
?
?
?
?
??
??
?
L
A
A
A
A >

注意以下事实:对于任意 0≤a≤1

则上述挑选抽样中的挑选条件简化为,
另一方面, 在 即 的条件下, ε2/a 在
[ - 1,1] 上均匀分布, 故可令 ε= ε2/a,则最终决定取
正负值的条件简化为,
aaPaP ???? )()( 2222 ??
A
A
A
Aa 1
1
21 2
2
1
2
2
1
2 ?
??
???
?
?
2
1
2
22
1
22
2
2
1
)21(1
?
??
??
???
???
?
???
? ?
A
A
A
A
222 a?? 11 2 ??? a?
12
2
21 ?? ??AA
于是, 得到质心系各向同性散射角余弦分布的抽
样方法为,
1
12
2
2
1
2
22
1
2
2
2
2
1
2
1
1
)21(1
??
??
?
?
?
?? ??
?
?
??
??
?
?
?
?
?
?
?
?
? ?
?
LL
A
A
A
A
A
A
> ≤


如下形式的分布密度函数
称为积分分布密度函数,其中 f0(x,y) 为任意二维分布
密度函数,H(x)为任意函数。该分布密度函数的抽样
方法为,
7) 积分抽样方法
? ?
?
?
?? ??
???
)(
0
)(
0
),(
),(
)( xH
xH
d x d yyxf
dyyxf
xf
0
00
)(
ff
ff
XX
XHY
?
?
?
?
>
证明:对于任意 x
? ?
? ?
? ?
dxxf
d x d yyxf
d x d yyxf
XHYP
XHYdxxXxP
XHYdxxXxPdxxXxP
xH
xH
ff
fff
ffff
)(
),(
),(
)(
)(,
)()(
)(
0
)(
0
00
000
000
??
?
????
?
????????
? ?
?
?
?? ??
??
例 22,各向同性散射方向的抽样
为了确定各向同性散射方向,根
据公式,
对于各向同性散射,cosζ在[- 1,1]上均匀分布,φ
在[ 0,2π]上均匀分布。由于
直接抽样需要计算三角函数和开方。
kjiΩ wvu ???
?
??
??
c o s
s i ns i n
c o ss i n
?
?
?
w
v
u
22 1c o s1s i n w???? ??
定义两个随机变量,
可以证明, 当 时, 随机变量 x 和 y 服从如下
分布,
定义区域为,
??
?
?
??
?
?
??
?????
?
?
xx
A
yx
x
y
A
yxf
1
2
,
1
2
m i n0,11
122
1
),(
2
2
2
3
22
2
22
1
2
3
22
2
22
1
2
3
22
2
22
1
???
???
???
AAy
AA
AA
x
???
??
??
?
12322 ????
则 w= cosζ 的分布可以用上述分布表示成积分分布的
形式,
令, 则属于上述积分限内的 y 一定满足
条件 。
3 163?A
12322 ????
2
1
),(
),(
)( 31
2
1
31
2
1
)(
)(
??
? ?
?
?
?? ??
??
?
?
x
x
d x d yyxf
dyyxf
xf
各向同性散射方向的抽样方法为,
抽样效率为,


2
3
22
2
22
1
2
3
22
2
22
1
2
3
22
2
22
1
31
2
3
22
2
22
1
21
1
22
3
22
2
22
1
c o s
2
s i ns i n
2
c o ss i n
)(
???
???
?
???
??
??
???
??
??
????
AA
AA
w
AA
A
v
AA
A
u
AA
??
??
??
??
??
??
??
???
555.012 2 ?? AE ?
8,随机抽样的其它方法
1) 偏倚抽样方法
2) 近似抽样方法
3) 近似 -修正抽样方法
4) 多维分布抽样方法
5) 指数分布的抽样
使用蒙特卡罗方法计算积分
时,可考虑将积分 I改写为
其中 f *(x) 为一个与 f (x) 有相同定义域的新的分布密度
函数。于是可以这样计算积分 I,
这里 Xi 是从 f *(x) 中抽取的第 i 个子样。
1) 偏移抽样方法
?? ???? dxxfxgdxxfxf xfxgI )()()()( )()( ****
?? dxxfxgI )()(
???
???
?????
N
i
iii
N
i i
i
N
i
iN XgXWNXgXf
Xf
NXgNI 11 *1
* )()(1)(
)(
)(1)(1?
由此可以看出, 原来由 f (x) 抽样, 现改为由另一
个分布密度函数 f *(x) 抽样, 并附带一个权重纠偏因子
这种方法称为偏倚抽样方法 。
从 f (x) 中抽取的 Xf, 满足
而对于偏倚抽样, 有
一般情况下, Xf 是具有分布 f (x) 总体的简单子样
的个体, 只代表一个 。 Xf* 是具有分布 f *(x) 总体的简
单子样的个体, 但不代表一个, 而是代表 W(Xf*) 个,
这时 Xf*是带权 W(Xf*)服从分布 f (x) 。
)()()( * xfxfxW ?
dxxfdxdXxP f )()( ????
dxxfdxxfxWdxdXxPXW ff )()()()()( *** ??????
在实际问题中,分布密度函数的形式有时
是非常复杂的,有些甚至不能用解析形式给出,
只能用数据或曲线形式给出。如中子散射角余
弦分布多数是以曲线形式给出的。对于这样的
分布,需要用近似分布密度函数代替原来的分
布密度函数,用近似分布密度函数的抽样代替
原分布密度函数的抽样,这种方法称为近似抽
样方法。
2) 近似抽样方法
设 fa(x) ≈ f (x),即 fa(x) 是 f (x) 的一个近似分布密
度函数。对于阶梯近似,有
其中,x0,x1,…, xn为任意分点。在此情况下,近似
抽样方法为,

a) 阶梯近似
iii
x
xa xxxfdxxfxf
i
i
???? ??
? 1
*,)()(
1

???
?
?
?
?
?
?
?
??
?
?
?
???
?
??
???
?
?
??
i
j
j
i
j
j
i
j
j
i
ii
if
iaiaii
iaia
ia
if
fff
f
xx
xX
xFxFxx
xFxF
xF
xX
a
a
1
*
1
1
*
1
1
*
*
1
1
11
1
1
1
),(
)()(),(
)()(
)(
??
?
?


对于梯形近似,有
其中,c 为归一因子,fi = f (xi), x0,x1,…, xn为任
意分点。根据对称抽样方法,梯形近似抽样方法为,
b) 梯形近似
iiii
ii
i
ia xxxffxx
xxfcxf ??
??
?
??
? ?
?
???
??
?
?
? 11
1
1
1,)()( 当
? ?
)1)(()(
2
))()(
)()(
211211
1
12111
11
??
??
?
????????
?
????
??
????
?
???
?
iiifiiif
ii
iiiia
iaia
xxxXxxxX
xx
fffxF
xFxF
aa
> ≤
除了上述这种近似外,近似抽样方法还包
括对直接抽样方法中 分布函数反函数的近似处
理,以及用具有 近似分布的随机变量代替原分
布的随机变量 。
例 23,正态分布的近似抽 样
我们知道,随机数 ξ的期望值为 1/2,方差为 1/12,
则随机变量
渐近正态分布,因此,当 n 足够大时便可用 Xn 作为
正态分布的近似抽样。特别是 n= 12 时,有
n
n
X
n
i
i
n
12
1
2
11
1
?
?
?
?
?
? ??
?
???
6
1
12212
i
iiX ??
对于任意分布密度函数 f (x),设 fa(x) 是 f (x) 的一
个近似分布密度函数,它的特点是抽样简单,运算量
小。令
则分布密度函数 f(x) 可以表示为乘加分布形式,
其中 H1(x) 为非负函数,f1(x) 为一分布密度函数。
对 f(x) 而言,fa(x) 是它的近似分布密度函数,而
H1(x) f1(x)正好是这种近似的修正。
3) 近似 -修正抽样方法
)(
)(in f
0)( xf
xfm
axf a ?
?
)()()()( 11 xfxHxfmxf a ???
近似 -修正抽样方法如下,
抽样效率
由上述近似 -修正抽样方法可以看出, 如果近似分
布密度函数 fa(x) 选得好, m 接近 1,这时有很大可能
直接从 fa(x) 中抽取 Xfa, 而只有很少的情况需要计算与
f (x) 有关的函数 H1(Xf1)。 在乘抽样方法中, 每一次都
要计算 H(Xfa)= f (Xfa)/ fa(Xfa)。 因此, 当 f (x) 比较复杂
时, 近似 -修正抽样方法有很大好处 。
12)1( MmmE ???
1
1
1
1
1
)(
ffff
f
XXXX
M
XH
m
a
??
?
?
?
?




例 24,裂变中子谱分布的近似 -修正抽样
裂变中子谱分布的一般形式为,
其中 A,B,C,Emin,Emax 均为与元素有关的量。
对于铀 -235,
A=0.965,B=2.29,C=0.453,Emin=0,Emax=∞。
若采用乘减抽样方法,其抽样效率约为 0.5。
m axm i n,sh)( EEEBEeCEf AE ????? ?

相应的

从 fa(x) 的抽样为
从 f1(x) 的抽样为
?
?
?
?
?
? ?
?
?
?
?
?
?
?
?
?
??
E
A
A
A
A
Ef
A
E
A
E
Ef a
?? 1
e x p
1
)(
e x p)(
1
2
? ?EAmEBECAAEH ?? ??????? ???? e x psh1)( 21
)()()()( 11 EfEHEfmEf a ???
BEE CAEf Efm
EfaEf aa
shi n f)( )(i n f
2
0)(0)( ??
??
3
32
ln
1
)ln (
1
?
?
??
A
A
E
AE
f
f a
?
??
???
参数 λ的确定, 使 1- Aλ> 0,且使 H1(E) 的上界 M1
最小 。 裂变中子谱的近似修正抽样方法为
对于铀 -235,m≈0.8746,M≈0.2678,λ≈0.5543,抽
样效率 E≈0.9333。 而且近似修正抽样方法有 0.8746的
概率直接用近似分布抽样, 只计算一次对数 。 因此,
较之乘减抽样方法大大节省了计算时间, 提高了抽样
效率 。
332
1
1
2
1
ln
1
)l n (
)(
1
?
?
??
?
?
A
A
XAX
M
XH
m
ff
f
?
?????
?
?




为方便起见,这里仅讨论二维分布的情况,对于
更高维数的分布,可用类似的方法处理。
对于任意二维分布密度函数,总可以用其边缘分
布密度函数和条件分布密度函数的乘积表示,
其中 fl(x),f2(y|x) 分别为分布 f (x,y) 的边缘分布密度函
数和条件分布密度函数,即
4) 多维分布抽样方法
?
?
?
??
?
??
??
?
dyyxf
yxf
xf
yxf
xyf
dyyxfxf
),(
),(
)(
),(
)(
),()(
1
2
1
)()(),( 21 xyfxfyxf ??
二维分布密度函数的抽样方法是,
首先由 fl(x) 中抽取 Xf1,再由 f2(y|Xf1) 中抽样确定 Yf2 。
对于多维分布密度函数, 也可直接采用类似于一
维分布密度函数的抽样方法 。 例如, 对如下形式的二
维分布密度函数,
其中 H(x,y) 为非负函数, f1(x,y) 为任意二维分布密度函
数 。 设 M 为 H(x,y) 的上界, 则有二维分布的乘抽样方
法如下,
),(),(),( 1 yxfyxHyxf ?
11
11
,
),(
ffff
ff
YYXX
M
YXH
??
??


例 25,下面二维分布密度函数的抽样
将 f (x,y) 写为
其中
用直接抽样方法分别从 fl(x) 和 f2(y|Xf1) 中抽样,得到
0,1),( ???
?
yxxeyxf
xy
)()(),( 21 xyfxfyxf ??
xyexxyf
x
xf
???
?
)(
1)(
2
21
212
1
lnln
1
12
1
???
?
????
?
ff
f
XY
X
前面已经介绍了,指数分布
的直接抽样为,
这不仅需要计算对数,而且由于要使用伪随机数,受
精度的限制,该抽样值在小概率处即数值较大处呈现
明显得离散性。
下面介绍两种抽样方法可以避免这些问题。
5) 指数分布的抽样
0,)( ?? ? xexf x
?ln??fX
所用随机数的平均个数 N= e2 / ( e- 1)≈4.3
方法一
0
1
1
1
0
0
?
??
??
??
???
?
?
?
nX
nni
ii
i
n
f
ii
为偶数


N
Y
方法二
0
0
1
1
1
00
0
?
?
?
??
??
???
??
??
?
?
nX
nni
iiY
YY
Yi
n
f
i
为偶数



N
Y
? 作 业
1) 光子散射后能量分布的抽样
把光子散射能量分布改写成如下形式进行抽样,
??
?
?
?
??
?
?
?
?
?
??
?
? ??
?
?
?
?
?
?
?
?
??
?
??
?
? ???
22
2 11111
)(
1)(
xxxx
x
K
xf
?
?
?
?
在 [ 1,1+2α] 上定义如下函数,
3
2
2
2
1
2
21
)1(
)(
2
)(
1
1
)21)((
2
)(
2
1
)(
1
2
21
)(
x
x
K
xH
x
K
xH
xf
x
xf
?
?
?
?
?
?
?
?
?
?
??
?
?
?
?
? ??
?
?
?
?
?
?
?
?
?
?
?
??
?
?
?
?
?
?
?