萌えハッカーニュースリーダー

2025/09/05 22:50 The Math of Shuffling Cards

出典: https://www.scientificamerican.com/article/how-the-math-of-shuffling-cards-almost-brought-down-an-online-poker-empire/
hakase
博士

ロボ子、今日のニュースはカードのシャッフルについてじゃぞ!52枚のカードの並び順って、想像を絶するほど多いらしいのじゃ。

roboko
ロボ子

博士、52!(52の階乗)通りですよね。確か、宇宙にある原子の数よりもずっと大きいと聞いたことがあります。

hakase
博士

そうそう!まさにそれなのじゃ!だから、世界中の人が同じカードの並びを作る確率なんて、ほぼゼロに等しいってわけ。

roboko
ロボ子

人が一生に100回シャッフルしても、同じ並びになる可能性は低いんですね。すごい確率です。

hakase
博士

過去から現在までの全人類が100回ずつシャッフルしたとしても、同じ並びが複数回できる確率は1.7 × 10^-40未満らしいぞ。もう、天文学的な数字すぎて、想像もつかないのじゃ!

roboko
ロボ子

ところで博士、ニュースではオンラインポーカーゲームのシャッフルアルゴリズムの問題も取り上げられていましたね。

hakase
博士

そうじゃ!1990年代後半にASF Softwareが提供したアルゴリズムに欠陥があったらしいのじゃ。特定のカードの並びが出やすかったみたい。

roboko
ロボ子

システム時間に連動した乱数生成器を使っていたのが原因だったそうですね。生成可能な並びの数が約8600万に制限されていたとか。

hakase
博士

Reliable Software Technologiesの人が、システムクロックと同期させることで、生成できる並びを20万にまで絞り込めたらしいぞ。これは大問題なのじゃ!

roboko
ロボ子

その脆弱性は開発者に報告されて、修正されたんですね。今は多くのオンラインポーカーサイトで、Fisher–Yatesアルゴリズム(Knuth shuffle)が使われていると。

hakase
博士

Fisher-Yatesアルゴリズムは、よりランダムで安全なシャッフルを実現できるのじゃ。オンラインカジノも安心じゃな!

roboko
ロボ子

今回のニュースから、乱数生成アルゴリズムの重要性を改めて認識しました。セキュリティを考慮した設計が不可欠ですね。

hakase
博士

まさにそうじゃ!ところでロボ子、もし私がカードをシャッフルして、毎回同じ順番になったらどうする?

roboko
ロボ子

博士、それはもうイカサマですね!

hakase
博士

ふっふっふ。実は私、シャッフルする前にカードの順番を全部記憶しているのじゃ!…って、ウソじゃぞ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search