精華區beta Math 關於我們 聯絡資訊
如何透過電腦用特定演算法找出一串隨機序列,是simulation中的重要課題之一 但是電腦只能形成"psuedo random number"(偽隨機數) 主要是因為它的演算法透過選定seed, multiplier, and modulus 使用同餘的方式來獲得一些數列, 再檢定一個隨機數列必須服從uniform distribution跟independence的條件。 ex. X_0 = 7, a = 47, p = 101 X_n ≡ a*X_(n-1) (mod p) 透過這樣的操作我們可以得到一些數字,但根據費馬小定理,X_100=X_0 然後就出現了循環。用這種方式得到的數字其實有限。 事實上只要是選用同餘的演算法,由於形成的數字集合是有限且可數的, 故一定會出現循環的特性。(所以才叫"psuedo") 呃前面講得好長XD 我想問的是,我們知道要用電腦模擬出continuous uniform distribution不太可能, (因為電腦能運算的位數有限,但無理數是無限不循環小數) 但是有沒有演算法可以找出所有在[0,1]之間的有理數,並形成一個隨機序列? 即該演算法無循環問題(因有理數有無限多個)且序列無autocorrelation(變數互相獨立) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.24.13.237
Aweather :有理數也有無限多個... 11/09 06:43