昼食代を払う人、発表の順番、掃除当番。決め方はいくらでもあるのに、終わったあとで文句が出ることがあります。たいていは確率が間違っていたからではなく、過程を誰も見ていなかったからです。
くじ引きで「公平だ」という言葉は、二つの別々の話をひとまとめにしています。
一つ目は今どきほとんど問題になりません。どのツールを使っても乱数は十分に均等です。実際にもめるのは二つ目です。「とりあえずランダムを押した」は、一つ目を完璧に満たしながら二つ目をまったく満たしません。
縦線を引いて横線を何本か入れるあの方式です。数学的にはかなり良くできています — 横線が十分に多く、位置が無作為なら、結果は均等な並べ替えになります。横線一本は隣り合う二本を入れ替えるだけなので、どの位置も特別に有利にはなりません。
甘いのは数学ではなく順序です。ふつうは名前を先に書いてから横線を引きますが、そうすると最後に線を引く人が結果をある程度操作できます。短いあみだなら目で追うのも難しくありません。
直し方は簡単です — 横線を全部引いてから、あとで名前を割り当ててください。順序を逆にするだけで同じ方式がずっと堅くなります。
区画の面積がそのまま確率なので、目に見えるのが最大の長所です。針が止まるまでをみんなで見ていれば、結果を巡って揉めることはあまりありません。
弱点は人数が増えたときに出ます。八区画までならどれが大きいか見比べられますが、二十区画になると誰も数えられません。重みを付けるとなおさらです — 三倍にしたという区画が本当に三倍なのか、見ている側に確かめる方法はありません。
数学的には最もきれいです。そして信頼の面では最も弱いです。押す人以外は過程を何も見られず、さらに大きな問題はもう一度押せることです。気に入らない結果が出たときにもう一度押しても、誰にも分かりません。
これを使うなら画面を共有し、何回押すかを先に決めておいてください。ツールの問題ではなく手順の問題です。
全員が同じ確率では困る場合があります。前回払った人は当たりにくくする、といった具合です。このとき正直な規則は一つだけです。
自分の確率 = 自分の重み ÷ 重みの合計。
八人に 3・1・2・1・2・1・1・1 を与えたなら合計は12なので、重み3の人は25%、重み1の人は8.3%です。この計算が公開されている必要があります。よくある事故は「二倍にする」と言いながら実装が別の計算をしている場合で、数字を見せなければ誰も気づけません。
重みを0にするのも避けてください。0は「当たりにくい」ではなく「絶対に当たらない」です。外したいなら名簿から外すのが正直です。
徒競走ルーレットは順序をこう決めています — 順位を先に公平に抽選し、その順位どおりに入ってくるようレースを演出します。
この順序が肝心です。逆にして、物理シミュレーションを走らせて先に入った順を結果にすると、レーンの位置や接触が確率を汚します。どれだけ汚れたかは誰にも計算できません。演出が結果を作らないよう切り離しておけば、確率は言ったとおりに残ります。
ここからいくつかのことが導かれます。
ルーレットが持つ「みんなで見届ける」性質を残しつつ、人数が増えると目で確かめられなくなる問題をブースターで解いた形です。
ツールより手順が大事です。三つ守ればたいていの後味の悪さは消えます。
公平なくじ引きは、良い乱数よりも全員が納得した手順にはるかに多くを負っています。