我有2個設備,我正在尋找一種方法來同步它們之間的隨機數生成。同步隨機數
更多背景:2個設備連接,一個設備發送包含數據集合中的其他文件。數據集然後加載到兩個設備上。數據以各種級別隨機顯示。我希望顯示器在設備之間同步,但仍然是隨機的。
的概念性的一例:拍攝照片的堆疊。堆棧的副本被髮送到遠程設備並存儲以備將來使用。然後在兩個設備上以相同的方式對棧進行混洗,以便在每個設備上繪製第一張圖片將產生相同的輸出。這是過分簡化,我的應用程序中需要更多的隨機數,所以優化,如共享排序順序不適用...
打破:我需要一個簡單的方法來從相同的隨機數池在2個設備上。我不知道在設備同步之前可能會出現多少次隨機抽籤,但是一旦同步,應該可以預測,他們將使用相同數量的隨機數,因爲它們使用的是相同的數據集,但是有機會抽取更多在進行下一批處理之前(這將需要隨機數據的重新同步)。
我期待,以避免傳遞排序順序,位置信息等,在數據集中顯示時(這也引起了關注結構性自項目最初並非設計來共享信息已經被傳每個實體),因爲能夠生成相同的位置,這要求隨機數字以相同的順序出現。
任何想法或建議,將不勝感激。
感謝所有的回覆。我最初的嘗試(在兩臺設備上使用相同的種子)都被我沒有追蹤到的東西拋棄,但現在我意識到了,所以只要設置種子就應該工作,一旦我理清什麼是拋出它(我可能是重置它我還沒找到的地方...)。然而,一旦我開始移植這個系統跨平臺,我認爲OscarMk對實施我自己的LCG的建議將成爲最小化操作系統與操作系統不一致等等的方式。感謝所有的答覆! – ima747
我試着完全一樣,有些測試人員報告說有時隨機生成的元素不同步。這非常好,因爲我在使用rand()之後纔開始種子,所以不知道那裏發生了什麼。難道不同的iDevices(或iDevices vs模擬器)有不同的rand()實現嗎? –