「じゃんけんゲームのプログラムは公平か」
という話をしたいと思います。
じゃんけんゲーム、昔アーケードなどでありましたよね。
10円入れる→プレイヤーが手を選びボタンを押す→CPUとの勝敗決定
という流れの、もうゲームと呼ぶのもおこがましいレベルのゲーム。
これの公平性について。
コンピュータは、当時のものとはいえ、それはもう高速です。
具体的には、プレイヤーがボタンを押した瞬間に
「プレイヤーに勝てる手を選び出力する」
という100%勝てる後出しズルが出来ます。
あまりにも処理速度が速いから、人間はその不正に気付けない。
で、じゃあ、どういうプログラムなら公平なじゃんけんゲームになるか。
最初の「10円を入れる」という瞬間に、
コンピュータは自分が出す手を決めておき、
「プレイヤーがボタンを押す」時に
あらかじめ決めていた手で勝敗判定をする、
というのが一番公平かなぁ。
さて、ここで
「ボタンが押された瞬間に、それぞれ33%で、
勝ち・あいこ・負け
をランダムで決める」
となるとどうでしょう。
要するに、
「プレイヤーの手が決まった瞬間に
後出しで勝ち負けあいこの計算をする」
ということ。
これ、公平?
結果だけ見れば公平だと思います。
各33%の確率で勝ち負けあいこが決まるから。
でも、これなんか釈然としないぞ?
後出しして、
「必ず勝てる・必ず負ける・必ずあいこ」
を選択するというズルと同等のことをしているからですかね。
でも人間から見たら結果一緒なんだよなー。
処理が速すぎるから。
ま、実際そのじゃんけんゲームに勝てる確率は
明らかに33%以下だったけどね!
絶対不正してたよアイツ!
※コメント投稿者のブログIDはブログ作成者のみに通知されます