2014-01-10 39 views
2

該算法具有機械性和可預測性。我們如何增加一些隨機性,就好像一個真正的人正在洗牌一樣,但仍然使用riffle方法?具有隨機性的Riffle隨機算法

+0

嘗試[Fisher-Yates](http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle)混洗算法。 – Steve

+0

你能否詳細說明「你的」意思是「riffle shuffle算法」,因爲它肯定有變化。 – Thomas

回答

2

在紙洗牌和奧爾德斯和戴康尼斯停時(由美國數學月刊,:5,第333-348)筆者看了看需要多少慢騰騰地隨機化的甲板牌。該論文的第4部分是Riffle Shuffles的分析,他們討論了一些用於(非完美)抽取紙牌的等效公式。

特別是,他們引用了一個模擬隨機抽動混洗的模型,模擬「真實」的人如何洗牌。基本上,根據二項分佈將套牌分成兩部分,一方面留下c卡,另一方面留下n-c。 「然後」以給定的手從概率與包大小成比例的「」下降。

所以一個簡單的應用程序將是假定您的甲板上被分割而來的兩個等份,然後反覆選擇哪塊下一張牌來,用它從一塊大小ab/(a+b)概率來a/(a+b)概率當前尺寸爲b