[問題] 請問如何測試亂數是否夠亂?

看板Statistics作者 (all right)時間12年前 (2013/10/19 00:18), 編輯推噓2(207)
留言9則, 4人參與, 最新討論串1/1
各位好,小弟學習統計已是很久以前的事情 最近因為工作需要,才又重新開始研究,遇到障礙,還請各位提出建議。 我遇到的問題是: 我們現在有設計一個亂數產生器,是[1,100]的uniform distribution 我需要去測試這個亂數產生器的信度,看他產生的亂數是否夠亂 我想到的方法是先用他產生一大筆數字,例如十萬筆 由於他是uniform distribution, 因此每個數字產生的機率是1% 去分別計算1~100的個數,理論上每個應趨近於1000 但是一定有+/-誤差,不知道用什麼方式去證明他誤差的範圍是落在信賴區間? 另外這個方式還有個bug,就是我檢測不出他的規律, 假設他產生的數字依序1,2,3,4~100出現,重複這個循環1000次, 那我第一個機率的檢定一定通過,雖然各個數字產生次數及機率OK,但順序卻不夠"亂" 有什麼統計方式是可以檢定這個"亂度"的嗎? 這只是我的想法 假設有其他的做法,也請各位強者不吝指導,非常感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.168.107.38

10/19 00:19, , 1F
可以參考各國政府對於亂數產生器的規範
10/19 00:19, 1F

10/19 00:19, , 2F
ex: http://0rz.tw/CutTn 裡面有美國政府的規定
10/19 00:19, 2F

10/19 00:20, , 3F
中國政府也有相關規範,但是我忘記在哪裡看到過了...
10/19 00:20, 3F

10/19 00:20, , 4F
如果要快速實作高強度的亂數產生器,建議參考openssl
10/19 00:20, 4F

10/19 00:26, , 5F
很有幫助!! 謝謝樓上大大!!
10/19 00:26, 5F

10/19 09:58, , 6F
可以試誓gap test
10/19 09:58, 6F

10/20 01:15, , 7F
每個數字產生的機率是0,不是1%,因為Uniform是連續分配
10/20 01:15, 7F

10/20 01:16, , 8F
除非是discrete uniform(0,100)
10/20 01:16, 8F

10/20 01:17, , 9F
更正: DU(1,100)
10/20 01:17, 9F
文章代碼(AID): #1IOLz33Z (Statistics)