Create a gist now

Instantly share code, notes, and snippets.

@teftef111 /Adventor.md Secret
Last active Dec 15, 2016

What would you like to do?

じゃんけん理論 I

この記事は、mast Advent Calendar 2016 の16日目の記事です。

1. まえがき

読者の中には"じゃんけん"というものを勘違いして捉えている方も多いことだろう。 グー、チョキ、パーという三種類の手を出し、負ける確率は三分の一。しかしこれは全くもって見当違いである。

(図1) じゃんけんの起源は邪拳だわさ

HUNTER×HUNTERでも取り上げられたように、じゃんけんの起源は邪拳。 一見、ただ戯れているように見えるこの行為は、果てしなく長い思考の末のただ一つの勝利を掴むという戦争なのである。 諸君もこれを機に、じゃんけんについて深く考え直してほしい。

2. 人間の心理特性

人間の思考には常にノイズが入ってくる。それ故、完全にランダムに手を出そうと考えていても、気付かないうちにランダムに出せていないのである。 もし完全にランダムに手を出すことができるのであれば(無限回試行しない限りは)単純な三分の一の確率に落ち着くだろう。 以下では、人間の心理特性をじゃんけんに利用する例を挙げる

3. バランスの呪い (Curse of Balance)

じゃんけん人口は70億人であると言われている。しかしながらそのうちおよそ99%程度は気付かないうちにこのバランスの呪いに縛られているだろうと考えられる。 それではバランスの呪いとは何か。簡単に言うと人間は気付かないうちに出している手を均等に出すように調整しているということである。この特性に気が付いている人間であれば、最初の一手を負けさえしなければ勝つことは容易いだろう。

例えば、最初にグーを出した人間は、連続してグーを出すという思考に至りにくい。基本そのような連続して同じ手を出すというときは、「勝負」しにいく時または「最初から勝つつもりがない」という時であることが多い。それを利用すれば、対初心者のタイマンを張る時には最初の一手をあいこか勝ちにしてしまえば、あとはバランスを読んで出していけば負ける確率が非常に低くなるというわけである。

以下にバランス法を用いたじゃんけんのアルゴリズムを記述する。

while 勝ち負けが決まるまで
  if 相手が前回グーを出したならば
    do 今回はチョキを出す
  elif 相手が前回チョキを出したならば
    do 今回はパーを出す
  elif 相手が前回パーを出したならば
    do 今回はグーを出す

4. 魚群効果 (Fish School Effect)

大人数でじゃんけんを行う際には非常にシンプルに勝利することができる。何故ならば、初手で勝負が決する確率が非常に低いからである。 そこで第三章で紹介したバランスの呪いを使えば、非常に強力な武器にすることができる。場に出された手を見て、一番多い手に着目する。 8人でじゃんけんをしていたとして、5人グー、2人チョキ、1人パーだったとしよう。勘のいい読者はお気づきかもしれないが、この時、次の手にはチョキを出すのが最善手であることがわかる。バランスの呪いでは、人間が無意識のうちにバランスをとっているということを紹介した。そこで一番多い手に着目し、その手に対してバランス法を適用すれば、負ける確率を大幅に減らすことができるのである。このことを群れに沿って泳ぐ魚になぞらえて**魚群効果(Fish School Effect)**という。しかし、気を付けるべき点がある。大人数で成立するこの魚群効果であるが、当然のように少人数になるとこの魚群効果を利用したじゃんけんのパターンに気付いてしまわれる可能性がある。このことは、プレイヤーの視線を注意深く観察し、ロックオンされているかどうか調べながらじゃんけんを行う必要がある。ロックオンについては次章で説明しよう。

以下に魚群効果を利用したじゃんけんのアルゴリズムを記述する。大まかな流れはバランス法と同様である。

while 少人数のじゃんけんになるまで
  if 場に出ているグーの数が一番多いならば
    do 今回はチョキを出す
  elif 場に出ているチョキの数が一番多いならば
    do 今回はパーを出す
  elif 場に出ているパーの数が一番多いならば
    do 今回はグーを出す

5. ロックオン (Lock On)

ロックオンとは、大人数でのじゃんけんにおいて、ある一人ないしは少人数のプレイヤーに注意を絞り、そのプレイヤーの手を読んで自分の手を出す方法である。 この方法を利用すれば、そのターゲットにだけ常に勝利を収めていれば、全体として負けるということはありえない。その理由として、例えばあるターゲットをtとしよう。tがグーを出すと予想できたとき、自分は場にパーを出せばよい。そうしてしまえば、例えターゲット外のプレイヤーがチョキを出して自分に対して勝っていたとしても、全体としてあいこになってしまう。 じゃんけんの初心者がバランス法の考えに縛られていることは既に触れた。つまり、ある初心者に対してロックオンをかけ、バランス法を適用すれば、全体として負ける確率は大幅に下がるのである。しかし、このロックオンに併用してバランス法を使用するメソッドは実は完璧ではない。 バランス法では、初心者相手にほぼ確実にあいこ、または勝利することができる。だが、このあいこが問題なのである。もし、ロックオンをしていた対象の初心者と引き分けたとしよう。この瞬間に上級者は初心者を刈り取り、同時に自分もまた刈り取られてしまうだろう。故に圧倒的強者の存在が認められる時には十分注意していただきたい。

6. 固有行動パターン (Unique Behavior Pattern)

優れたプレイヤーは自らの固有の行動パターンを自覚し、それを自由に隠蔽、発現させることが可能である。しかしながら、それに比べて初心者は自らの固有行動パターンのままに手を出している。この固有行動パターンには性格、これまで歩んできた人生、そのプレイヤー自身が現れる。例えば、堅実に手を出す人間はやはりバランスの呪いに縛られているし、勝負をかけたいタイミングで素直に連続して同じ手を出す人間など、様々であるが、多角的にパターンを分析すれば相手の手を予測することが可能である。これを隠蔽するには、自らの新しい思考を、自分の思考の中で作り出し、自在にコントロールすることである。

7. 場の保存 (Saving the Place)

じゃんけんの勝敗の要因というのは何もその時のじゃんけんのみに縛られるものではない。前回のじゃんけん、前々回のじゃんけんもとても重要な要素である。 何故ならばこの前回、前々回のじゃんけんは、初手読みに抜群の効果を発揮するからである。これは場が保存されているからである。例えば、前回バランスの呪いにかかっていたプレイヤーは今回もバランスの呪いにかかっていることが多い。勝負所で同じ手を連続して出していたプレイヤーは、やはり連続して同じ手を連続して出すことが多い。場の保存によって影響が及ぶ要素は非常に多くあるため、是非とも自分で探していただきたい。

8. 思考レベル (Cogitation Level)

勝負するプレイヤーたちの思考レベルも重要な要素である。極端な話をすれば、ずぶの素人に対して上級者向けの思考を行ってもそれは全くの逆方向に終わってしまうだろうということである。素直に手を出してくれる初心者に、一手先読みも二手先読みなども必要がないのである。初心者に対しては対初心者の思考レベル、中級者に対しては対中級者向けの思考レベル。そういったように使い分けが肝心なのである。

9. 先読み・n手先読み (Future Reading)

じゃんけんにおいてもっとも難しい技術であるが、最も重要な技術である。先読みという技術は、これまで紹介したすべての要素を全て含むじゃんけんとしての全て、この世の理、宇宙の始まり、すべてに関係するものである。すなわち先読みに正解はない。その場、その一手によって読む内容は全く異なるものになる。完全に先読みを完成させるならば、相手の今日の服装、昨日の夜ごはん、初恋の人。すべての要素を知る必要がある。それだけ難しいものである。 しかしながら一手先読み、二手先読みまでは今まで紹介したものでも十分予想可能である。思考レベルによって何手先まで読むのか臨機応変に変えなければならない。

10. バインド (Binding)

さきほどまでの心理特性は、外部的要因のない状態でのものだった。この章からは、場に対して強制割り込みをかけるものを紹介しよう。 じゃんけんを始める前にある手を強制的に連想させるで「その手を出すか」、「その手を出さないか」の非常にシンプルな二択問題に終着させることが可能である。こうしてしまえば相手の思考を読むことが簡単である。この具体的な方法として、じゃんけん開始前に「キーワードはチョキ」と言う等があげられる。こうすることで他のプレイヤーはチョキを連想せずにはいられないのである。

(図2) パーでバインドを行うプレイヤー達

11. ダブルバインド (Double Binding)

バインドはキーワードを一つ挙げることにより、その手に思考を縛らせることができた。ダブルバインド(Double Binding)では、二つのキーワードを挙げてその二つの手の思考に縛らせることができる。正直あんま意味ない。

12. 世界標準じゃんけんルール

これまで上げたものを効果的に使うためには、通常のじゃんけんは不適合である。そもそも通常のじゃんけんは間違いである。 通常のじゃんけんでは「最初はグー」と言い出す人はランダムで、その人の都合によって決められる。今後、「最初はグー」と宣言する人をコーラー(caller)と呼び、コーラーになっている状態をマウントを取った、マウンティングと呼ぶ。基本的にマウントを取っているときには若干の有利が発生する。じゃんけんを始めるタイミングを自分で決定することができるため、間違った選択を行うことがないからである。

以下に世界標準じゃんけんルールを記載する

じゃんけんファクター(じゃんけんをやろうと言い出した人)がコーラーでスタート
while 勝負が決まるまで(一手につき一回)
  do コーラーが「最初はグー、じゃんけんぽん!」とコールしてじゃんけんをする
  do コーラーを時計回りに次の人に移す

注意すべきなのは「あいこでしょ」が存在しないことである。 あいこであっても一度コーラー権は時計回りに移動し、リセットされる。

13. あとがき

ここまでじゃんけん理論を多くあげてきた。しかしながら、これらはじゃんけんのほんの初歩であることに注意して欲しい。「じゃんけん理論は人の数だけある」と誰かが言った。事実その通りでこれが絶対正解だという理論はないのである。じゃんけん自体はその限られた情報の中から相手自身を知るという不良設定問題である。ゆえにこの問題を解くためには、理論を越えた「何か」が必要になる。思いであり、経験であり、才能であったりするかもしれない。読者はこれから自分だけのじゃんけん理論を探す長い旅に出ることであろう。いや、もうその旅路の途中なのかもしれない。この書がその最終地点への手助けとなれば幸いである。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment