偽隨機(jī)數(shù)是用確定性的算法計(jì)算出來(lái)自“[0,1]”均勻分布的隨機(jī)數(shù)序列。偽隨機(jī)數(shù)并不是真正的隨機(jī)數(shù),但具有類(lèi)似于隨機(jī)數(shù)的統(tǒng)計(jì)特征,如均勻性、獨(dú)立性等。生成偽隨機(jī)數(shù)的方法有:1、直接法,根據(jù)分布函數(shù)的物理意義生成;2、逆轉(zhuǎn)法;3、接受拒絕法。
本教程操作環(huán)境:windows7系統(tǒng)、dell g3電腦。
偽隨機(jī)數(shù)
偽隨機(jī)數(shù)是用確定性的算法計(jì)算出來(lái)自[0,1]均勻分布的隨機(jī)數(shù)序列,并不是真正的隨機(jī),但具有類(lèi)似于隨機(jī)數(shù)的統(tǒng)計(jì)特征,如均勻性、獨(dú)立性等。
在計(jì)算偽隨機(jī)數(shù)時(shí),若使用的初值(種子)不變,那么偽隨機(jī)數(shù)的數(shù)序也不變。偽隨機(jī)數(shù)可以用計(jì)算機(jī)大量生成,在模擬研究中為了提高模擬效率,一般采用偽隨機(jī)數(shù)代替真正的隨機(jī)數(shù)。模擬中使用的一般是循環(huán)周期極長(zhǎng)并能通過(guò)隨機(jī)數(shù)檢驗(yàn)的偽隨機(jī)數(shù),以保證計(jì)算結(jié)果的隨機(jī)性。
生成方法:
一般地,偽隨機(jī)數(shù)的生成方法主要有以下3種:
(1) 直接法(Direct Method),根據(jù)分布函數(shù)的物理意義生成。缺點(diǎn)是僅適用于某些具有特殊分布的隨機(jī)數(shù),如二項(xiàng)式分布、泊松分布。
(2) 逆轉(zhuǎn)法(Inversion Method),假設(shè)U服從[0,1]區(qū)間上的均勻分布,令X=F-1(U),則X的累計(jì)分布函數(shù)(CDF)為F。該方法原理簡(jiǎn)單、編程方便、適用性廣。
(3)接受拒絕法(Acceptance-Rejection Method):假設(shè)希望生成的隨機(jī)數(shù)的概率密度函數(shù)(PDF)為f,則首先找到一個(gè)PDF為g的隨機(jī)數(shù)發(fā)生器與常數(shù)c,使得f(x)≤cg(x),然后根據(jù)接收拒絕算法求解。由于算法平均運(yùn)算c次才能得到一個(gè)希望生成的隨機(jī)數(shù),因此c的取值必須盡可能小。顯然,該算法的缺點(diǎn)是較難確定g與c。
因此,偽隨機(jī)數(shù)生成器(PRNG)一般采用逆轉(zhuǎn)法,其基礎(chǔ)是均勻分布,均勻分布PRNG的優(yōu)劣決定了整個(gè)隨機(jī)數(shù)體系的優(yōu)劣。