AI対人間 ジャンケン1万回勝負!!

デイリーポータルZ

オセロにチェスに将棋に囲碁といったゲームでのAI対人間の対戦はなんて熱いのだろう。自分もAIに人類代表としてゲームで挑戦したいけれど、残念なことにゲームは苦手だ。

でも、運で決まる「ジャンケン」ならAIに勝てるんじゃない?

これはジャンケン人類代表とAI代表の真剣勝負の記録である。

昼はデータサイエンティストをしています。トイレと路上観察と観葉植物が好き。行動力があるとよく言わますが自覚はまったくないです。和菓子が全部苦手なのでお土産がいつも食べられないです。

前の記事:試して分かった、満腹には種類がある

ジャンケン人類代表に就任

皆様、ジャンケンをご存じだろうか?

グーはチョキに勝ち、チョキはパーに勝ち、パーはグーに勝つ。

同じ手ならアイコという運要素が極めて高い、それゆえに平等なゲームだ。

001_グーとチョキ.JPG
画面左がグー。その右隣にあるのがチョキだ。
002_パー.JPG
これがパーだ
003_グーとチョキを出す自分.JPG
そしてこれが、ジャンケンの手の撮影状況(再現)だ

さて、唐突ながら今からジャンケン人類代表を名乗らせていただく。

反論があるかとは思います。

ですが、撮影協力者がおらず、ジャンケンの手の写真をまともに撮影できない自分に、ジャンケン強者を探すことは困難なのだ。お許しいただきたい。

強いジャンケンAIを探そう

最大の課題はジャンケンAIを入手することだ。ジャンケンの撮影すらうまくできない人間に、そんなことが可能だろうか?

機械学習(AIに包含される概念)のコンペティションで活躍しているAIに詳しい知人のBさんに「ジャンケンに強いAIがないか」尋ねたところ、翌日にはジャンケンのAIが用意されていました。

004_Bさんからのメールの件名.png
対応と展開がはやい。

たまたま、Bさんがその機械学習のコンペティションでジャンケンのAIの作成経験があったのだ。それをチョチョイといじって今回の検証用に仕上げてくれました。

私、BさんがジャンケンAIの作成経験があったの本当に知らなかったんです。私の運と都合が良すぎる。もはや私の運の良さが証明完了です。もう勝ったようなものです。

(ここから、本分野に詳しい方々は機械学習やAI関する表現・説明の厳密でないあたりに引っかかるかもしれない。だがぐっと飲み込んでほしい、私もぐっと飲み込んでいるのだ。みんなで飲み込もう。)

ジャンケンのAIってなにもの!?

みなさんは疑問に思うはずです。
「ジャンケンって運で決まるのに強いAIなんてあるの?」と。私も思う。

有識者Bさん曰く以下のような説明がありました。

ジャンケンの1回勝負は運で決まっている。

005_ジャンケンAIの説明その1.png
1回勝負は運勝負の図

だけれど、100回、200回と対戦していくと、
ジャンケンAIは相手のジャンケンの手の癖を学習していきます。

006_ジャンケンAIの説明その2.png
ジャンケンAIは対戦記録を覚えて学習していく様子。かわいいね

そして対戦記録からAIは
・相手はパーの後は必ずチョキを出す癖・戦略がありそう。
・相手はチョキの後は必ずグーを出す癖・戦略がありそう。
・相手はグーを出した後は必ず相手と同じ手を出す癖・戦略がありそう。
といったパターンを学習することができる。

007_ジャンケンAIの説明その3.png
さきほどまでの対戦から人間の癖を学習する。かしこい

ジャンケンAIは学習結果をいかして、その時点で一番勝ちやすい手を出す。(らしい)
なので、今までの癖や先ほどの対戦結果を踏まえて次の手をAIが選択する。

008_ジャンケンAIの戦略その4.png
何回もやればジャンケンは癖を見抜いて戦う戦略のゲームになるのだ

まとめると、ジャンケンのAIは戦いながら相手の手を学習して、学習した癖や戦略をもとには相手の手を予測して戦うのだ。これは手ごわい、人間の手を先読みしまくりマシーンですね。
こちとら人類代表である、勝ってやりますわ。

ちなみに、色んな人の手をたくさん学習して戦う対うのジャンケンAIも考えられますが、今回は、対戦相手である私とのジャンケンの結果がだけで学習を行うこととしました。

いったん広告です

対局開始

ルールは以下の通りだ。

・1万回勝負で相手に勝ち越した方が勝利

実にシンプル。人類の命運がこんな簡単なルールで決まってしまい申し訳ない。

009_対局前の着物姿.JPG
わざわざ着物に着替えた人
010_対局前の握手.JPG
対局時開始の握手
011_おじぎ.JPG
対局よろしくお願いいたします。
012_対局風景.JPG
絵替わりしないがこのような写真が250枚ある

うん、地味だ。

ちなみに、命運が決めるフィールド(捜査画面)はこんな感じだ!

013_対局画面.png
グーチョキパーが0,1,2となっているのが地味に脳みそが混乱する

例えば、0を入力して負けると

014_敗北画面.png
勝敗結果とこの時点での勝率などを出してくれる。これは1回目の対戦で勝った場合の例

こんな感じだ。ちなみに勝つと

015_勝利画面.png
同じように勝敗結果を出してくれる。無味乾燥に見えるがこれがシビアな戦いの場に緊張感を与えてくれるのだ

こんな感じです。

ここからは実際の対局の様子を見てほしい。

立ちはだかる困難

挨拶とフィールド紹介が終わり、人類対AIの頂上決戦が始まる。

016_1000回目.JPG
1000回目
017_2000回目.JPG
2000回目
018_3000回目.JPG
3000回目。指を三本立てているから3000回
019_4000回目.JPG
4000回目。暑いので着替えました。対戦にも熱がこもる
020_5000回目.JPG
5000回目。あれ、頭のボリュームが大きくなってない?
021_6000回目.JPG
6000回目。やっぱり頭が大きくなっている。疲労が毛髪に出るタイプだ
022_7000回目.JPG
7000回目。髪の毛の主張が激しさを増す
023_8000回目.JPG
8000回目。もう眠たいのかな?あと2000回だ!がんばれ!

およそ5時間かけて、8500回まで到達。
そして、8600回目。

024_エラー画面.png
あっエラーメッセージだ!

メモリエラー、データ飛びました。

025_ショック顔その1.JPG
メモリエラーの衝撃を慌てて撮影。もっと驚いた顔をしてほしいな

5時間の記録が吹っ飛びました。

もう私の勝ちで良いと思いませんか!?
AIの計算の限界を超えたということです。
私の勝ちということに出来ませんか!?だめでしょうか?だめですね。

026_ショック顔その2.JPG
悲しそうにも見えるが、眠そうにも見える

データが飛んでしまったので8600回の戦績はパソコンのどこにも残っていません・・・
勝敗は自分の脳内にかすかに(かなり負け越してたなあ・・・)という記憶があるのみです。むしろほっとすべきかも。

いったん広告です

改めて対局開始

もちろん、次の日開催だ。
5時間が水の泡のあとに、即再戦できるほどジャンケン人類代表は強くないのだ。
戦績のデータは消え失せてしまい、ジャンケンAIの学習も消え1から覚えなおし。両者1から振り出しに戻った形になるのだ。

1万回連続で対戦できないことがわかったので、ルールを変更させていただく。

・ジャンケン1000回勝負を10局行う。
・1000回勝負で勝ち越したら1局先取。
・10局終了時に勝ち越した局数が多い方が勝利である。
・1000回ごとにジャンケンAIの学習はリセットする。

ちなみに1000回刻みの10局勝負にしたかと言うと、データが消えた恐怖に心がとらわれてしまい、確実に安全に対戦記録が残る1000回刻みでないと不安でしょうがなくなったからです。臆病な私を笑うがいい。

なお、1000回ごとの学習リセットは、人間に有利なルールだ。
だが、ルールを決めるものが強いのだ。恐れ入ったか。

10セット全て紹介も大変なので、やっていた面白かった対局を紹介していく。

<第一局>

最初は自分の直感を信じて普段通りにジャンケンすることにした。

100回200回とAIとジャンケンをすると、自分の心が読まれているように感じ始める。
人生で経験したことが無いような負け方が起きるのだ。
人間同士のジャンケンだとアイコがやたら続くけれど、
AIはそこで手を読んで人間に勝っていく雰囲気がある。
とにかくジャンケンのリズムが崩れていってしまう。

第一局の勝敗は・・・・
288勝、400負、312アイコ。人間の敗北である。

027_勝敗結果その1.png

<第三局>

直観では負けることを人類代表である私は理解したので、
今度は完全にランダムに手を出すことにした。

実はこれはが理論上もっとも強い戦略なのだ。
ジャンケンAI提供者のBさんから「ランダムに手を出すとAIも次の手が予測できないのでやめてくださいね」と言われている。だからあえてやる。人間の諦めの悪さを見せてやります!

第三局の勝敗は、
225勝、515負、260アイコ。圧倒的な敗北。

028_勝敗結果その2.png

人間は、ランダムにジャンケンを出来ない。
みなさんもいざ対戦するときは気を付けてほしい。

<第十局>

最終局の十局までくると、「自分が出したくなった手と違う手を出すと勝てる」ことがわかってきた。
AIがどんな手を出してくるかはちゃんとは予想できないが、自分がどんな手を出すかはAIにはわかっている。そこの裏をかいて違う手を出すのだ。

「あっ、自分が何も考えなしにチョキを出そうとしたな」と感じた瞬間に裏をかいてパーを出す。これだけである。

しかも、不思議なもので、AIがそれの裏をかこうとしてくるなというタイミングもなんとなく見えてくる。AIをだます方法が身体に身に付きつつあるのだ。

9000回のジャンケンを踏まえて私が成長している。
そして、第十局
325勝、324負、381アイコ。人間の勝利だ。

029_勝敗結果その3.png
第10局

勝利、勝利である!!

10セット目の勝因は、ジャンケンAIは1000回ごとに記憶がリセットされるのに対し、人間の学習は持ち越している点だ。しかも8700回の苦しみのジャンケンも経験してほしい。あの絶望も無駄じゃなかったのですね。

人間の学習能力がジャンケンAIの学習を越えた瞬間である。みなさんも私をほめてほしい。

ちなみに、最終結果10局中2勝8敗で、人類ジャンケン代表敗北しました。
ごめんなさい!

030_最終結果.png
第6局と第10局だけ勝ち越しました。

AIが学習していくけれど、自分も学習していることがわかった。全10局の対戦結果はさんざんだったけれど、鍛錬を積んでいけば完全勝利も不可能ではなさそうな気がした。

人類もAIも学習し続けていくことで、成長しているのだなあ。

Source

タイトルとURLをコピーしました