計算機如何生成隨機數(shù)?
計算機生成的是偽隨機數(shù),利用算法生成。真正的隨機數(shù)是不可能產(chǎn)生的,用任何方法產(chǎn)生的隨機數(shù)都是偽隨機數(shù)。
真正的隨機數(shù)是不可預(yù)測的數(shù),不僅下一個數(shù)不可預(yù)測,整體也沒有任何規(guī)律可言。有兩個因素決定了真正的隨機數(shù)不可產(chǎn)生。
第一是范圍。獲得一個隨機數(shù),假如是145,這沒有任何問題。獲得一個0到100的隨機數(shù),假如是145,這就超出范圍,由此可見隨機數(shù)和 0到100之間的隨機數(shù)是兩個概念,限定范圍的隨機數(shù)都是隨機數(shù)的子集而不是隨機數(shù)本身。
第二是整體預(yù)測。很多人把拋硬幣,轉(zhuǎn)輪盤,原子衰變等等概率事件產(chǎn)生的數(shù)當(dāng)做真正的隨機數(shù),這也是錯誤的。這樣得到的隨機數(shù)在整體上來看概率是固定的,可以總結(jié)出內(nèi)在規(guī)律,既然有規(guī)律可循就不能稱為真正的隨機數(shù)。
因為隨機數(shù)不能有任何規(guī)律,而方法必然包含規(guī)則,所以用任何方法都不可能產(chǎn)生隨機數(shù)。隨機數(shù)的概念在科學(xué)上不能做任何讓步,雖然存在但是無法用任何方式產(chǎn)生。但在現(xiàn)實中我們可以讓步。
我們實際用到的隨機數(shù)是一種變形,是下一個不可預(yù)測準確值的數(shù),比如骰子,可以預(yù)測下一個數(shù)在1到6之間,概率也差不多,但是不知道準確值。還有計算機的偽隨機數(shù),只要計算機的使用者不能預(yù)測下一個數(shù)就能稱為隨機數(shù)。在現(xiàn)實中,這些“隨機數(shù)”就夠了。
為什么隨機數(shù)在現(xiàn)實中門檻這么低?真相比隨機數(shù)的現(xiàn)實更扎心:真正的隨機數(shù)從來都不需要,需要的其實是賭博和類似賭博的不可預(yù)測性。