1
我設計一個程序:存儲無序狀態
- 包括隨機性
- 可以停止執行,並在某些點保存(以XML)的狀態
- 可以開始執行從保存的開始狀態
- 是確定性的(這樣的程序可以從相同的狀態運行兩次,併產生相同的結果)
這裏的問題是S提供隨機性。我可以在開始時初始化它,但是從狀態到狀態,我可能會生成0到1000個隨機數字。
因此,我有3個選擇,我可以看到:
- 商店的種子,以及一些已經隨機產生的次數,然後加載狀態時,運行多次隨機數發生器。
- 在狀態保存,由N個
- 遞增種子在狀態保存,隨機產生的下一個種子
與選項1的問題是運行時間,並且是相當不可行的。
但是,我不確定2或3是否會產生好的隨機結果。如果我運行兩個隨機生成器,一個用X播種,另一個用X + 1播種,他們的結果會有多不同?如果第一個用X播種,第二個用X.random()播種呢?
如果它的確與衆不同,我使用Python 3