台パンの50%は「石ごとの抽せん」
たとえば盤上に20個の石がある場合、20個それぞれに対して反転するかを判定します。反転数を最初から10個に固定するわけではありません。そのため、8個だけ反転する回もあれば、13個反転する回もあります。
長い目で見た平均は10個に近づきますが、1回ごとの結果が必ず10個になるわけではありません。ここを固定してしまうと、見た目は安定しても「各石50%」というルールとは違うゲームになります。
20個なら、ちょうど半分になる確率は約17.6%
20個のうち10個だけが反転する組み合わせは184,756通り、全組み合わせは1,048,576通りです。したがって、ちょうど10個が反転する確率は約17.6%です。半分にならない方が普通だと分かります。
一方、20個すべてが反転する確率は約105万分の1。1個も反転しない確率も同じです。珍しい結果ではありますが、独立抽せんなら不具合とは限りません。
盤面の色も毎回半々にはならない
反転前の黒石と白石の数に関係なく、それぞれの石が50%で反転するなら、反転後に黒石になる確率は各石とも50%です。ただし、これも期待値の話です。実際の盤面では黒が多く残る回、白が多く残る回の両方が起こります。
実装で確認したい3項目
- 盤上の石だけを対象にしているか:空きマスまで抽せん対象にしない。
- 石ごとに乱数を引いているか:最初に反転数を決めて、その数だけ選ぶ処理にしない。
- 台パン時だけ反転するか:通常の着手や画面再描画で再抽せんしない。
テストでは、1回の結果だけを見て「50%ではない」と判断しないことも大切です。多数回の試行で反転率を集計しつつ、1回ごとの抽せんが独立しているかをコードでも確認します。
遊びとしての意味
台パン前に大差をつけても、反転後の盤面は読み切れません。ただし、使用権は各プレイヤー1回だけ。完全に運へ任せるのではなく、「今の盤面を崩す価値があるか」を選ぶところにゲーム性があります。
ぎぐちゃんとしては、確率を見せるだけで終わらず、ルールどおりに抽せんできているかまで説明できるゲームにしていきたいです。
計算の確認
二項分布を使った計算です。20個中10個が反転する確率は 20C10 ÷ 2^20、全反転または反転なしはそれぞれ 1 ÷ 2^20 です。小数表示は四捨五入しています。