可悲的是,儘管在範圍中使用了統一整數,但在編程中使用隨機數並不是很有經驗。所以我不得不對這個話題提出疑問。連續分佈的指數衰減類隨機分佈和離散化
問題1(更具體的):
我根據類似於「指數衰減」的曲線的概率分佈尋找一種方式來選擇的數組元素(動態大小,但已知的)(http://en.wikipedia.org/wiki/Exponential_decay)。 含義:我希望選擇第一個元素而不是其他元素。我想要一個單調遞減函數(在減少像在許多衆所周知的概率分佈一樣減少,如伽馬分佈)。
也許幾何分佈是我可以使用的東西?但是,然後我需要回答我的第二個問題,即關於將此分佈擴展到數組索引的問題。
當然,選擇最後一個元素而不是第一個的雙重方法當然也可以。
問題2(更普遍): 是否有任何實現的一個概念,這將擴大我任何連續隨機分配到一個給定的陣列範圍(包括離散化)?
示例:使用高斯正態分佈,結果始終是某個數組中的有效索引(意思是:中間元素是首選)。
難道這(link text)是像我想用的東西?
平臺和庫: 我編程C++和使用的boost ::隨機庫的時刻(link text),但我願意使用類似的GSL庫或其他質量庫。
還有一個心願: 我會使用一些質量庫,而不是一些快速和骯髒的custom_functions喜歡的方式。
謝謝!
我不明白你的問題1.指數衰減是其中的任何元素有一定的時間間隔內衰減的相同的固定可能性。優先選擇數組中的第一個元素似乎與其他數據無關?你究竟想要完成什麼? – 2010-11-05 18:08:59
爲什麼你不想使用boost :: random? (它似乎有你所要求的) – log0 2010-11-05 18:28:23
@Alf:我提到指數衰減只是爲了描述我想要的概率分佈曲線。如果我將一個數組作爲指數衰減曲線的x軸,那麼y軸應該是這個數組元素被選中的概率 – sascha 2010-11-05 21:59:01