2.3任意分布的伪随机变量的抽样 大多数的伪随机数变量并不足[0,1区闾的均勻分布, 而是具有各种不同形式的分布密度函数。 对一个具有分布度函数∫(x)的伪隨机变量的抽祥是 过以下步骤来选行的:首先在[0,1区间抽取均勻分布的伪隨 机数列,然后再从这个伪机数列中抽取一个筒单子样,使这 个簡单子桦的分布足分布密度函數f(x),并且各个伪随机数 相互独立。寥际上只要[0,1]区间上均勻分布的隨机数具有好 的独立性,则抽得的简单子也一定具有和咆同好的独 因此,对不均勻的伪随机变量抽样的关鵪问题是如何从均 訇分布的伪随机变量样本中,抽取昔合所耍求的分布密度函数 的简单子样。 选加原则:如景要产生分布密度函数为f(x)的隨机变量 样本数列,我们可以把f(x)变成分布概率密度函数h(x)的和的 形式,即 f(x)=∑h(x) 并按其中的分布密度函数h(x)选行抽样作为f(x)的抽样值,决 定选择哪一个(x)进行抽榉的原则是椴据∫1(的积分值作 为权重随机地选择的。这就是蒙卡洛方法的迭加原则。 在对复杂的分布密度函教的抽样时,伪随机变量抽样的迭 加原则是十分有用的
2.3 任意分布的伪随机变量的抽样 大多数的伪随机数变量并不满足[0,1]区间的均匀分布, 而是具有各种不同形式的分布密度函数。 对一个具有分布密度函数 的伪随机变量的抽样是通 过以下步骤来进行的:首先在[0,1]区间抽取均匀分布的伪随 机数列,然后再从这个伪随机数列中抽取一个简单子样,使这 个简单子样的分布满足分布密度函数 ,并且各个伪随机数 相互独立。实际上只要[0,1]区间上均匀分布的随机数具有好 的独立性,则抽得的简单子样也一定具有和它同样好的独立 性。 f (x) f (x) 因此,对不均匀的伪随机变量抽样的关键问题是如何从均 匀分布的伪随机变量样本中,抽取符合所要求的分布密度函数 的简单子样。 迭加原则: 如果要产生分布密度函数为 的随机变量 样本数列,我们可以把 变成分布概率密度函数 的和的 形式,即: f (x) f (x) h (x) i f ( ) x h (x) i = ∑ i 并按其中的分布密度函数h (x) i 进行抽样作为 的抽样值,决 定选择哪一个 进行抽样的原则是根据 f (x) h (x) i h (x) i dx ∫ 的积分值作 为权重随机地选择的。这就是蒙特卡洛方法的迭加原则。 在对复杂的分布密度函数的抽样时,伪随机变量抽样的迭 加原则是十分有用的
A.高散型分布随机变量的直接抽样 如果离散型随机变量x以概率p取值x(=12,),则其分布函 数为: F(x)=∑P x≤x 其中P应浈足归一化条件:∑p,=1该随机变量的直接抽样方 法如下:首先选取在[0,1区间上的均勻分布的隨机数ξ,辚 后判断足如下不等式 F(x)≤5<F(x) 的j值,与j对应的x就是所抽子样的一个抽样,即7=x。 读子样具有分布函数f(x)。 例:y光子与物质相互作用类型的抽样问题。 y光子与物败相互作用有三种类型:光电效疝、康普顿效 疝和电子对效应。其中光电效疝和电子对效疝为光子吸收过 程。设总面为 1.选择均訇分布隨机數5, 2.若灏足不普式5<σ,/σr,则墩生康普顿射; 3.考演足不普式σ,1≤5<(+),则发生光电效应; 4.着5≥{,+σ)σ,则产生电子对过程。 B,连焕分布的随机变量抽样 一、直接抽样方法
A. 离散型分布随机变量的直接抽样 如果离散型随机变量x以概率 pi取值x (i =1,2,...) i ,则其分布函 数为: . ( ) ∑ ≤ = x x i i F x p 其中 pi 应满足归一化条件:∑ =1 i i p 。该随机变量的直接抽样方 法如下:首先选取在[0,1]区间上的均匀分布的随机数ξ ,然 后判断满足如下不等式 ( ) ( ) j j F x ≤ < F x −1 ξ 的 j 值,与 j 对应的x j就是所抽子样的一个抽样值,即 j η = x 。 该子样具有分布函数 ( )j F x 。 例: γ 光子与物质相互作用类型的抽样问题。 γ 光子与物质相互作用有三种类型:光电效应、康普顿效 应和电子对效应。其中光电效应和电子对效应为光子吸收过 程。设总截面为 σ T = σ e + σ p + σ s . 1. 选择均匀分布随机数ξ , 2. 若满足不等式ξ σ s σ T < / ,则发生康普顿散射; 3. 若满足不等式 ( ) σ s σ T ξ σ s σ e σ T / ≤ < + / ,则发生光电效应; 4. 若 ( ) ξ σ s σ e σ T ≥ + / ,则产生电子对过程。 B. 连续分布的随机变量抽样 一、直接抽样方法
直接抽榉法又称为反函数法。设连续型随机变量们的分布 密度函数为f(x),在数学上它的分布函数应当为 得到的n=F1()即为瀇足分布密度函数f(x)的一个抽禅值。 证明 该子样中门≤x的概率为 p≤x}=p2()sx)=k≤F)=0d+"1=F() 优点是使用筒单,应用范国较广。 缺:在分布函数F(x)不能从分布密度函数∫(x)解析求出 时,或者求出的函教形式抽样太复杂的情况下,就不能采用这 种方法。 例对指数分布的真接抽样。 解指教分布的问逦可用于描述粒子运动的自由程。粒 子衰变考命或射能与物作用长度普许多物理问题。它的分布 粤度函数为 f( ,x>0,>0 0,其它 它的分布函数为 F(对)=(M=b=1-e如 设ξ是[0,1区间上的均勻分布的隨机数,令5=F(7)=1-en 解此方程讣到
直接抽样法又称为反函数法。设连续型随机变量η 的分布 密度函数为 f (x) ,在数学上它的分布函数应当为 F( ) x f ( ) x dx . x ∫−∞ = 得到的η = F −1 (ξ )即为满足分布密度函数 f (x)的一个抽样值。 证明: 该子样中η ≤ x 的概率为: { } { } ( ) { } ( ) ( ) p x p F x p F x dx dx F(x) F x ≤ = ≤ = ≤ = ⋅ + ⋅ = ∫−∞ ∫ − 0 0 1 η ξ ξ 0 1 . 优点是使用简单,应用范围较广。 缺点:在分布函数 F(x)不能从分布密度函数 f (x)解析求出 时,或者求出的函数形式抽样太复杂的情况下,就不能采用这 种方法。 例 对指数分布的直接抽样。 解 指数分布的问题可用于描述粒子运动的自由程,粒 子衰变寿命或射线与物质作用长度等许多物理问题。它的分布 密度函数为 ( ) > > = − 0, . , 0, 0 其它 λ λ λ e x f x x 它的分布函数为 ( ) ( ) . x x t x F x f t dt e dt e λ λ λ − − −∞ = = = − ∫ ∫ 1 0 设ξ 是[0,1]区间上的均匀分布的随机数,令 ( ) λη ξ η − = F =1 − e , 解此方程得到
注意到1-5和ξ同样服从[0,1]区间的均勻分布,故有 In 5 例对如下的分布密度函教抽祥 f(x)=|y-1) x≤x,y>1. xo 解(2.3.9)式的分布度函数的对应分布函数为 F(x)=f(x)dx/f(x)dx=1 在[0,1区间上的隨杋抽取均訇分布的隨机数5,令 5=F()=1-(,解此方翟,牛考虎到1-5和5都是[D,1 区间的均勺分布的伪随机教,恐到 77=x0 变换抽法 基本思:将一个比复杂的分布的抽样,变换为已经 知熴的、比较简阜的分布的抽样 例如,要对足分布密度函数f(x)的隨机变量门抽禅。 果要对它选行直换抽祥是比較困难的。 如果存在另一个随机变量δ,它的分布密度函教为叭(), 其抽禅方法已经非擺。并且也比校简单.我们可以设法寻找一 个過的变换关系x=g()。如鼎g(U)的凤函数夺在,记为
( ξ ) λ η = − ln 1 − 1 . 注意到1−ξ 和ξ 同样服从[0,1]区间的均匀分布,故有 ξ λ η ln 1 = − . 例 对如下的分布密度函数抽样 γ γ γ − − − = x x f x 1 0 1 ( ) , , 1 x0 ≤ x γ > . 解 (2.3.9)式的分布密度函数的对应分布函数为 1 0 ( ) ( ) ( ) 1 0 0 − +∞ = = − ∫ ∫ γ x x F x f x dx f x dx x x x . 在 [0 , 1] 区间上的随机抽取均匀分布的随机数 ξ , 令 ( ) 1 0 1 − = = − γ ξ η x x F ,解此方程,并考虑到到1−ξ 和ξ 都是[0,1] 区间的均匀分布的伪随机数,得到 1 ( 1) 0 − − = γ η x ξ . 二、 变换抽样法 基本思想: 将一个比较复杂的分布的抽样,变换为已经 知道的、比较简单的分布的抽样。 例如,要对满足分布密度函数 f (x)的随机变量η 抽样。如 果要对它进行直接抽样是比较困难的。 如果存在另一个随机变量δ ,它的分布密度函数为φ(y), 其抽样方法已经掌握,并且也比较简单. 我们可以设法寻找一 个适当的变换关系 x = g(y) 。如果 g(y)的反函数存在,记为
g(x)=h(x),并且该反函数具有一阶连续导数。 叔据概率论的知识,这时X足的分布蜜度函教为 (h(x)h(x)。如果函数g()选得合适,使得满足 f(x)=((x)h(x) 抽样步骤:首先对分布密度函数叭)抽样得到值δ,然后 过变换η=g(δ)到足分布鲁度函数∫(x)的抽样值。 实际上,直接抽桦法是叭()为在[0,1区间上的均訇分布 鲁度函數的特殊情况下,g()=F()时的变换抽样。因而它是变 换抽样的特殊情况。 二维儕况下的变换抽祥法与一维的情况完全是类似的。假 如我们要对滴足联合分布密度函数f(xy)的随机变量n0选行 抽桦。如是我们已经掌掘了满足联合分布度函数g{uy)的隨机 变量nδ的抽样方法,则可以寻一个适当的变换 y=g2{l,1 81,82函数的反函数存在,记为 u=h,(x, y) 该变换满足如下条件: g(h,(x,y),h2(x,D) J=f(x, y) 川表示函数变换的雅可比( Jacob)行列式
g ( ) x = h(x) −1 ( ) ( ) ( ,并且该反函数具有一阶连续导数。 φ h x ⋅ h′ x η η′,δ ′ 1 2 g , g J 根据概率论的知识,这时 x 满足的分布密度函数为 ) 。如果函数 g(y)选得合适,使得满足: f ( ) x = φ( ) h( ) x ⋅ h′(x) . 抽样步骤:首先对分布密度函数φ(y)抽样得到值δ ,然后 通过变换 = g(δ )得到满足分布密度函数 f (x)的抽样值。 实际上,直接抽样法是φ(y)为在[0,1]区间上的均匀分布 密度函数的特殊情况下, (y) F (y) −1 g = 时的变换抽样。因而它是变 换抽样的特殊情况。 二维情况下的变换抽样法与一维的情况完全是类似的。假 如我们要对满足联合分布密度函数 f (x, y)的随机变量η,δ v) 进行 抽样。如果我们已经掌握了满足联合分布密度函数 的随机 变量 g(u, 的抽样方法,则可以寻找一个适当的变换 x = g1 (u, v), ) ) y = g2 (u, v , 函数的反函数存在,记为 u = h1 (x, y , v = h2 ( ) x, y . 该变换满足如下条件: ( ( , ), ( , )) ( , ) 1 2 g h x y h x y ⋅ J = f x y . 表示函数变换的雅可比(Jacobi)行列式: y v x v y u x u J ∂ ∂ ∂ ∂ ∂ ∂ ∂ ∂ =
这样就可以过变换式,由演足分布密度函数g(l,)的抽样值 n,δ昏到待求的足分布粤度函数f(x,y)的抽样值7。 以上的处理要求变换函数g和g的反函数h和h具有一阶的 连焕非导数。 变换抽祥的缺点:对具体问题要找到所要的变换关系式 往往是比较困难的。 正分布的抽桦(变换抽祥的具体应用) 设随机变量足正庵分布,它的分布度函数为 2 常f(x)记为N(,a2),其中H和σ2分别是随机变量7的教学 期望值和方差,即 E团} 当山=0,a2=1时的分布称为标准正分布,此时的分布密度函 教为 f(x)= 记为N01)。 遠常我仉只猾考标准正乏分布的抽样方法即可。因为假 如隨机变量演足正亮分布,随机变量δ足标准正分布,则 n和δ之间演足关系式 7=ad+ 标准正恋分布密度函教不能用一舭函教解析积分求出分布函 数F(x),因而不能直接应用从均句分布的抽样值变换到标准正
这样就可以通过变换式,由满足分布密度函数 g(u, v) 的抽样值 η′,δ ′ 得到待求的满足分布密度函数 f (x, y)的抽样值η,δ 。 以上的处理要求变换函数 和 的反函数 和 具有一阶的 连续非零导数。 g1 g 2 h1 h2 变换抽样的缺点:对具体问题要找到所需要的变换关系式 往往是比较困难的。 正态分布的抽样(变换抽样的具体应用): 设随机变量η满足正态分布,它的分布密度函数为 ( ) ( ) − = − 2 2 2 exp 1 2 1 σ µ π σ x f x . 通常 f (x)记为 ( ) 2 N µ,σ ,其中 µ 和σ2 分别是随机变量η 的数学 期望值和方差,即 E{η}= µ , { } 2 V η = σ . 当 时的分布称为标准正态分布,此时的分布密度函 数为 0, 1 2 µ = σ = ( ) exp{ / 2} 2 1 2 f x = − x π . 记为 N(0,1)。 通常我们只需考虑标准正态分布的抽样方法即可。因为假 如随机变量η满足正态分布,随机变量δ 满足标准正态分布,则 η 和δ 之间满足关系式 η = σδ + µ . 标准正态分布密度函数不能用一般函数解析积分求出分布函 数F(x),因而不能直接应用从均匀分布的抽样值变换到标准正
态分布的抽样值。但是可以采用一个巧妙的办法将两个独立的 均訇分布的随机变量u,ν变换为标准正分布的随机变量x,y。 这就是敵变换 x 2In u cos(2nv), y=√=2nsim2m) 反解上式得到: u =exp (2+y2)=(xy) tan(/x)=h,(x,y) 换照概率理论,x和y的联合分布密度函数为 f(r,y)=g(h,(x,D),h2(x,y).J 由于l和V是独文的均訇分布的随机变量,它们的联合分布 度函数g(u,y)=1。可以证明: f(x,y) 2 又因为∫(x,y)可以写为 f(x,y)=f(x)·f(y) 其中 ()==exp+y2/2 因此从上式中的任龙一式给出的抽样篁都灏足标准正分布。 上迷正忞分布的变换抽禅法还可以做些改冼,这就是所训 的 Maraglia方法。其抽禅过程 (1)产生[0,1区间上的独立均勻分布随机数n和v
态分布的抽样值。但是可以采用一个巧妙的办法将两个独立的 均匀分布的随机变量u 变换为标准正态分布的随机变量 。 这就是做变换: , v x, y sin cos u u ( ) ( ) = − = − 2 ln 2 . 2 ln 2 , y v x v π π 反解上式得到: ( ) ( ) ( ) ( ) = ≡ ≡ = − + − v y x h x y u x y h x y tan / , 2 1 , 2 1 exp 2 1 1 2 2 π 按照概率理论,x 和 y 的联合分布密度函数为 f (x, y) = g( ) h (x, y), h (x, y) ⋅ J 1 2 . 由于 和 是独立的均匀分布的随机变量,它们的联合分布密 度函数 。可以证明: u v g( ) u, v =1 ( ) ( ) = − +2 2 2 1 exp 2 1 f x, y x y π . 又因为 f (x, y)可以写为: f ( ) x, y = f (x)⋅ f (y). 其中 ( ) exp{ / 2} 2 1 2 f x = − x π , ( ) exp{ / 2} 2 1 2 f y = − y π . 因此从上式中的任意一式给出的抽样值都满足标准正态分布。 上述正态分布的变换抽样法还可以做些改进,这就是所谓 的 Maraglia 方法。其抽样过程: (1) 产生[0,1]区间上的独立均匀分布随机数u和v
(2)计算,=(2-1)2+(2y-1)。 (3)如果w>l,回到步骤(1);否则,孰行(4)。 (4)计算:=2lm),取x=,y== 5、會选抽样法 會选法是冯.诺曼( Von neumann)为克服童接抽样和变换抽 样方法的困难最早提出来的。 基本:按照给定的分布密度函数f(x),对均勻分布的 随机教序列{}进行會选。會选的原则是在∫(x)大的地方,保留 較多的隨机数5;在∫(x)小的地方,保留較少的随机数,良 得到的子样中5的分布灡足分布密度函数f(x)的要求。 这种方法对分布巒度函数f(x)在抽样范國内有界,且其上 界是容易得到的情况,是可以采用的。它使用兔来十分灵活, 计算也較简单,因而良用也比較广泛。 这种方法,对f(x)在抽禅范國内函数值变化很大的时候, 效率是很低的,因为大量的均訇分布抽样点被會弃了。 第一类舍选法 设随机变量n在[a,b上的分布密度函数为f(x),f(x)的在 区间[a,b]上的最大值夸在,并于 L= max f(x) 显然这里(x)在x∈[a,b]范围内的取值在[0,1区间上
(2) 计算w = ( ) 2u −1 2 + (2v − 1) 2。 w >1 z 2 ln w / w (3) 如果 ,回到步骤(1);否则,执行(4)。 (4) 计算 = [ ] − ( ) 1 / 2,取x = uz, y = vz。 三、 舍选抽样法 舍选法是冯.诺曼(Von Neumann)为克服直接抽样和变换抽 样方法的困难最早提出来的。 基本思想:按照给定的分布密度函数 f (x),对均匀分布的 随机数序列{ξ n}进行舍选。舍选的原则是在 f (x)大的地方,保留 较多的随机数ξ i;在 f (x)小的地方,保留较少的随机数ξ i,使 得到的子样中ξ i的分布满足分布密度函数 f (x)的要求。 这种方法对分布密度函数 f (x)在抽样范围内有界,且其上 界是容易得到的情况,是可以采用的。它使用起来十分灵活, 计算也较简单,因而使用也比较广泛。 这种方法,对 在抽样范围内函数值变化很大的时候, 效率是很低的,因为大量的均匀分布抽样点被舍弃了。 f (x) 1. 第一类舍选法 设随机变量η在[a,b]上的分布密度函数为 f (x), 的在 区间[a,b]上的最大值存在,并等于 f (x) λ 1 max ( ) [ , ] = = ∈ L f x x a b 显然这里λf (x)在 x ∈[a,b]范围内的取值在[0,1]区间上
采用會选法的步骤为 (a)选用均訇的[0,1区间的隨机数5,袍造出[a,b]区间上的 均白分布的随机数δ=a+(b-a)o (b)再选取独立的均勻分布于[0,1]区间上的隨机数,判断 52≤列()是否足。如颕足上面不等式,则执行(c);如不满足, 则返回到步骤(a)。 (c)选取n=作为一个抽祥值 上面三个步骤,就可以产生出随机数序列{},它满足分布 密度函数f(x)。如图(23.1)所示,會选抽样步(b)的判断 不普式52≤(6),是为了保证随机泉(6.521)落在f(x)曲线的下 面。因为x取值在[{x,x+ax]内的概率于面积比 f(x)ax f(xddx 上述抽样步骤得到的随机教教列是以分布密度函教f(x)分 布的。由于隨机点(6,21小)落在曲能f(x)以下才被接曼,并且所 有产生的点都落在面积L(b-a)的范園内
采用舍选法的步骤为: (a) 选用均匀的[0,1]区间的随机数ξ 1,构造出[a,b]区间上的 均匀分布的随机数 1 δ = a + (b − a)ξ 。 (b) 再选取独立的均匀分布于[0,1]区间上的随机数ξ 2,判断 ξ ≤ λf (δ ) 2 是否满足。如满足上面不等式,则执行(c);如不满足, 则返回到步骤(a)。 (c) 选取η = δ 作为一个抽样值。 重复上面三个步骤,就可以产生出随机数序列{ηn},它满足分布 密度函数 。如图(2.3.1)所示,舍选抽样步骤(b)的判断 不等式 f (x) ξ ≤ λf (δ ) 2 ,是为了保证随机点(δ ,ξ / λ) 2 落在 曲线的下 面。因为 x 取值在[ 内的概率等于面积比 f (x) x, x + dx] ( ) ( ) f ( ) x dx f x dx f x dx b a = ∫ 上述抽样步骤得到的随机数数列是以分布密度函数 分 布的。由于随机点( f (x) δ ,ξ / λ) 2 落在曲线 f (x)以下才被接受,并且所 有产生的点都落在面积L(b − a)的范围内
采用该方法的抽样效率为 L(b 显然我们希望效率能够鱸高好。如果L很大(即f(x)具有高 峰),则此會选抽祥效率就不高。 例对随机变量η抽祥。它的分布度函教为 ∫2x0≤xs1 0,其它 解如果用直换抽样法,首先水出分布函数 F(x)=x 抽取在[0,1]区间上的均勻分布的隨机数。令 则有 x为η的子祥的一个个体。但是开方运算量較大,可欧用會选 法来。 L≡max max 2x=2 依服邛一类會选法步暻 依次产生独立的[0,1区间上的均勻分布的随机数512, 2.判断52sf()=5是否成立。 3考成立,则取x=5; 4.考上面不普式不成立,可以再产生一组,52进行量复试验。 但奥际上,因为5,52本来就是任意的,如果52≤51不威立, 必有5<2所以着2s5不成文,只要将和2互换以下,个不
采用该方法的抽样效率为 ( ) L( ) b a L( ) b a f x dx E b a − = − = ∫ 1 . 显然我们希望效率能够越高越好。如果 L 很大(即 具有高 峰),则此舍选抽样效率就不高。 f (x) 例 对随机变量η 抽样。它的分布密度函数为 ( ) ≤ ≤ = 0, . 2 ,0 1, 其它 x x f x 解 如果用直接抽样法,首先求出分布函数 ( ) . 2 F x = x 抽取在[0,1]区间上的均匀分布的随机数ξ。令 . 2 ξ = x 则有 x = ξ . x 为η 的子样的一个个体。但是开方运算量较大,可改用舍选 法来做。 max ( ) max 2 2 [0,1] [0,1] ≡ = = ∈ ∈ L f x x x x . 依照第一类舍选法步骤: 1. 依次产生独立的[0,1]区间上的均匀分布的随机数 1 2 ξ ,ξ , 2. 判断 ( ) 2 1 1 1 ξ ≤ f ξ = ξ L 是否成立。 3. 若成立,则取 = ξ1 x ; 4. 若上面不等式不成立,可以再产生一组 1 2 ξ ,ξ 进行重复试验。 但实际上,因为 1 2 ξ ,ξ 本来就是任意的,如果ξ 2 ≤ ξ 1 不成立, 必有ξ 1 < ξ 2。所以若ξ 2 ≤ ξ 1不成立,只要将ξ1和ξ 2互换以下,这个不