生成隨機數的原理,生成多元分佈隨機數

如何生成隨機數及多元分佈的隨機數,發現佐治亞理工的一個課件,講的特別詳細,包括多種方法,以及如何生成多元正態分佈的隨機數:

https://www2.isye.gatech.edu/~sman/courses/6644/Module07-RandomVariateGenerationSlides_171116.pdf

打開速度慢的話可從百度網盤下載:鏈接:https://pan.baidu.com/s/1X4IVcA-lgAq9Ya95rnGq_A
提取碼:k9gv

時間有限,慢慢整理吧。現在知道,一般的隨機分佈用逆函數法生成隨機數,對於泊松分佈,則用 “接受拒絕法” 生成隨機數。

下面整理一下如何生成多元分佈的隨機數:

1. 假設有一個多元變量

X=(x1,x2,,xn)T\textbf{X}=(x_1, x_2, \dots, x_n)^T

它的均值向量爲 μ\boldsymbol {\mu},協方差矩陣爲 Σ\bf\Sigma.

由於協方差矩陣爲半正定矩陣,它可以三角分解,即 Σ=CCT\bf\Sigma=CC^T,其中,CC 爲一個下三角矩陣,並且對角線元素爲非負實數。

2. 對於多元正態分佈,有下面關係:

X=μ+CZ \bf X=\boldsymbol \mu+CZ

其中,Z\bf Z 爲標準正態分佈的 nn 個變量:(z1,z2,,zn)(z_1, z_2, \dots, z_n)

可以驗證,μ+CZ\bf\boldsymbol \mu+CZ 的均值向量也爲 μ\boldsymbol {\mu},協方差矩陣也爲 Σ\bf\Sigma

3. 生成多元正態分佈隨機數的步驟:

(1)生成標準正態分佈隨機數
(2)求出協方差矩陣的三角分解矩陣 C\bf C
(3)根據 X=μ+CZ\bf X=\boldsymbol \mu+CZ,將第一步生成的隨機數轉化爲普通多元正態分佈的隨機數

若兩個分佈相互獨立,則對於它們聯合分佈的隨機數,每個分佈分別生成隨機數,然後組合在一起就可以了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章