2012-05-27 50 views
1

我有一組S = {a1,a2,a3,a4,a5,......,an}。每個元素被選擇的概率分別爲{p1,p2,p3,p4,p5,...,pn}(當然p1 + p2 + p3 + p4 + p5 + ... + pn = 1) 。從第一性原理的離散概率分佈抽樣

我希望模擬的實驗,其確實的是不過我希望這樣做,沒有任何庫(即從第一原理)

我使用下面的方法:1)I上的元素映射實數行如下X(a1)= 1; X(A2)= 2; X(A3)= 3; X(A4)= 4; 2)然後,我計算每個座標(即P(x < X))的累積概率分佈函數如下:cdf(x)= 5; ....,X(an)= n

2) (a)= P(a1)+ P(a2)+ ...... P(ai)使得X(ai)< = x <X(a(i + 1))

(因此cdf是步驟函數)

3)我隨機選擇一個實數,q之間(0,1)。並計算線y = q與cdf相交的x座標。由於cdf是在1,2,... n處跳躍的階躍函數,所以該點將具有整數x座標btw 1和n。讓x座標爲m。

4)我選擇ai,使得X(ai)= m。

我的問題是這種方法模擬沒有任何偏見的實驗嗎?

我沒有得到所需的結果,這就是爲什麼我有點懷疑。

任何幫助將不勝感激!謝謝!

+0

也許看到[這個問題](http://stackoverflow.com/questions/352670/weighted-random-selection-with-and-without-replacement),其中引用[本頁](http:///prxq.wordpress.com/2006/04/17/the-alias-method/)? –

回答

3

邏輯聽起來沒問題。通常,從均勻分佈U(0,1)中抽樣任意分佈函數Y(x),只需查找Y向量中的均勻隨機值u,並返回Y(x)大於或等於的最小值x即ie min{x:Y(x)>=u}

您可能需要爲基本概率添加x = 0觀察值,如下例所示。

x  P(x) Y(x) 
0  0  0 
1  0.1  0.1 
2  0.3  0.4 
3  0.4  0.8 
4  0.2  1 

例如u = 0.3 -> x = 2u = 0.81 -> x = 4

顯然計算在許多試驗相對頻率會給P的無偏估計(X)。