ポケモンWordle(やど氏版)のエンドレスモードを遊んでいて「■■ッ■■(真ん中が小さいッ)」を特定してから 6 連続で外した1ので全探索しようと考えました。 Pythonスクリプトは GitHub Gist にあります。お気付きの点がありましたらご指摘いただけますと幸いです。
先に同名の記事を公開していましたが、内容が本末転倒であった2のでそちらの記事を削除しました。大変失礼しました。
参考文献
-
ポケモンWordle(https://wordle.mega-yadoran.jp/)
- ポケモン版 Wordle はいくつかありますが本記事ではこちら(やど氏版)を想定しています。
- ヘルプを押下すると「ココロモリ」「キノココ」の例で説明されているように、正解側で文字が複数利用されている場合の色塗りルールが特殊になっています。
- 「今日のお題」モードの出題範囲はダイヤモンド・パールまでですが、私はギルガルドが好きなのでこの記事では 「ソード・シールド」までを選択した場合を想定しています。
-
全国ポケモン図鑑順のポケモン一覧 - Wikipedia
- ポケモン名がきれいに列挙されているページだったのでこのページをコピーして整形してポケモン名一覧を作成しました。
-
Pythonを用いてPOKEMON WORDLEを解く - Qiita
- ポケモン Wordle についての先行記事です。「出現頻度の高い文字が多いポケモンを入力する」という戦法が紹介されており、最適とされているポケモンがこの記事の「1手目終了後に残る候補数の期待値最小のポケモン」と一致しています。
ポケモンWordle(やど氏版)のルール(私の理解に基づく)
ポケモンWordle(やど氏版)のルールは以下のようになっていると思います。
- 10回以内にお題のポケモン(正解ポケモン)を当てるゲームである。
- 1回分の入力欄は5文字分になっており、カタカナ5文字以下(記号を含まない)のポケモンが入力可能であるが、正解になりうるのはカタカナ5文字ちょうどのポケモンのみである。
- 1回目の入力時点では何もお題のポケモンに関する情報がないが、各回の入力後に入力した文字に色が塗られる(後述)ことで情報が手に入っていくので、2回目以降の入力ではその情報を活用していくことになる。
色塗りルール
ゲームは以下のように入力した文字のそれぞれに色を塗ってきます。⭐ のルールがやや特殊になっています3。
- その文字を入力側で n 文字、正解側で m 文字使用しており(0 ≦ m)、そのうちの n' 文字が位置まで合致しているとする ( 0 ≦ n' ≦ min(n, m) )。このとき、
- 位置まで合致している n' 文字は緑に塗る。
- 位置は合致していない n - n' 文字については、
- n' < m ならば、左から m - n' 個まで黄に塗る。⭐
- n' = m ならば、色を塗らない。
ランキングいろいろ
色塗りルールとポケモン一覧がわかっているので、「どのポケモンを入力すると残る候補の期待値が最小になるか」などを計算できます。Pythonスクリプトは GitHub Gist にあります。
ここでは出題範囲を剣盾までのポケモンとしました。ポケモン名一覧は参考文献の Wikipedia から取得しました。入力可能ポケモン(カタカナ5文字以下)と正解候補ポケモン(カタカナ5文字ちょうど)の数は以下でした。
入力可能ポケモン 847 ['フシギダネ', 'フシギソウ', 'フシギバナ'] ... ['レジドラゴ', 'ブリザポス', 'レイスポス']
正解候補ポケモン 511 ['フシギダネ', 'フシギソウ', 'フシギバナ'] ... ['レジドラゴ', 'ブリザポス', 'レイスポス']
予めすべての入力可能ポケモンと正解候補ポケモンの組に対して返却画面を求め、入力可能ポケモンごとに返却画面をキーとした辞書にまとめておくと以下のようになります。
フシギダネ を入力したとき
緑緑緑緑緑 ( 0.20%) 候補数 1 ['フシギダネ']
緑緑緑黒黒 ( 0.39%) 候補数 2 ['フシギソウ', 'フシギバナ']
黒黒黒黒黒 (75.15%) 候補数 384 ['クサイハナ', 'ジジーロン', 'ボスゴドラ', 'コジョンド', 'カラサリス']
黄黒黒黒黒 ( 2.74%) 候補数 14 ['リーフィア', 'モルフォン', 'エルフーン', 'ペロッパフ', 'ニンフィア']
黄黄黒黒黒 ( 0.39%) 候補数 2 ['コフキムシ', 'ラフレシア']
...
フシギソウ を入力したとき
緑緑緑黒黒 ( 0.39%) 候補数 2 ['フシギバナ', 'フシギダネ']
緑緑緑緑緑 ( 0.20%) 候補数 1 ['フシギソウ']
黒黒黒黒黒 (74.36%) 候補数 380 ['クサイハナ', 'ジジーロン', 'ボスゴドラ', 'コジョンド', 'カラサリス']
黄黒黒黒黒 ( 2.74%) 候補数 14 ['リーフィア', 'モルフォン', 'エルフーン', 'ペロッパフ', 'ニンフィア']
黒黒黒黒緑 ( 1.76%) 候補数 9 ['ミニリュウ', 'ウデッポウ', 'ピカチュウ', 'ケンホロウ', 'デンリュウ']
...
フシギバナ を入力したとき
緑緑緑黒黒 ( 0.39%) 候補数 2 ['フシギソウ', 'フシギダネ']
緑緑緑緑緑 ( 0.20%) 候補数 1 ['フシギバナ']
黒黒黒黒黒 (72.41%) 候補数 370 ['ジジーロン', 'ボスゴドラ', 'コジョンド', 'カラサリス', 'ゴーリキー']
黄黒黒黄黒 ( 0.59%) 候補数 3 ['バッフロン', 'バタフリー', 'バクフーン']
黒黒黒黒緑 ( 0.59%) 候補数 3 ['クサイハナ', 'ニドリーナ', 'キレイハナ']
...
...
1手目終了後の候補数の期待値ランキング
まずは1手目終了後に残る候補数の期待値のランキングを出します4。ジーランスが期待値を最小にすることがわかります。ワースト1位はピィであることもわかります。
◆ 1手目終了後の候補数の期待値
1位 ジーランス 1手目終了後の候補数の期待値: 58.90215264187866
2位 レントラー 1手目終了後の候補数の期待値: 59.21526418786691
3位 ルナトーン 1手目終了後の候補数の期待値: 61.610567514677115
4位 ネンドール 1手目終了後の候補数の期待値: 63.61839530332679
5位 ランクルス 1手目終了後の候補数の期待値: 65.03522504892366
6位 デスカーン 1手目終了後の候補数の期待値: 68.30724070450094
7位 デスバーン 1手目終了後の候補数の期待値: 71.105675146771
8位 エルフーン 1手目終了後の候補数の期待値: 71.14481409001954
9位 グラードン 1手目終了後の候補数の期待値: 71.90802348336592
10位 ハンテール 1手目終了後の候補数の期待値: 72.64774951076318
838位 エネコ 1手目終了後の候補数の期待値: 389.3639921722114
839位 パウワウ 1手目終了後の候補数の期待値: 390.7221135029356
840位 ゴニョニョ 1手目終了後の候補数の期待値: 404.32681017612543
841位 ベベノム 1手目終了後の候補数の期待値: 404.5733855185911
842位 ブビィ 1手目終了後の候補数の期待値: 408.0841487279845
843位 モノズ 1手目終了後の候補数の期待値: 414.9726027397261
844位 モココ 1手目終了後の候補数の期待値: 420.54990215264195
845位 ミネズミ 1手目終了後の候補数の期待値: 423.857142857143
846位 ツボツボ 1手目終了後の候補数の期待値: 453.23874755381615
847位 ピィ 1手目終了後の候補数の期待値: 470.28767123287673
1手目終了後に正解を特定する確率ランキング
1手目終了後に正解を特定する(残る候補数が1になる)確率が高いポケモンも気になると思います。この指標ではランドロスが1位になります(なお、以下の確率には1手目で正解を引いてゲームを終了するケースは含めていません)。
◆ 1手目終了後に正解を特定する確率
1位 ランドロス 1手目終了後に正解を特定する確率: 0.050880626223091974
2位 ヒードラン 1手目終了後に正解を特定する確率: 0.046966731898238745
3位 バクフーン 1手目終了後に正解を特定する確率: 0.043052837573385516
4位 オンバット 1手目終了後に正解を特定する確率: 0.043052837573385516
5位 ナックラー 1手目終了後に正解を特定する確率: 0.0410958904109589
6位 ジーランス 1手目終了後に正解を特定する確率: 0.0410958904109589
7位 グラードン 1手目終了後に正解を特定する確率: 0.0410958904109589
8位 ドンカラス 1手目終了後に正解を特定する確率: 0.0410958904109589
9位 レアコイル 1手目終了後に正解を特定する確率: 0.03913894324853229
10位 キングラー 1手目終了後に正解を特定する確率: 0.03913894324853229
838位 ナゲキ 1手目終了後に正解を特定する確率: 0.0019569471624266144
839位 モノズ 1手目終了後に正解を特定する確率: 0.0019569471624266144
840位 シシコ 1手目終了後に正解を特定する確率: 0.0019569471624266144
841位 デデンネ 1手目終了後に正解を特定する確率: 0.0019569471624266144
842位 ヌメラ 1手目終了後に正解を特定する確率: 0.0019569471624266144
843位 ツツケラ 1手目終了後に正解を特定する確率: 0.0019569471624266144
844位 ヨワシ 1手目終了後に正解を特定する確率: 0.0019569471624266144
845位 ウッウ 1手目終了後に正解を特定する確率: 0.0019569471624266144
846位 スバメ 1手目終了後に正解を特定する確率: 0.0
847位 ギモー 1手目終了後に正解を特定する確率: 0.0
1位のランドロスは以下の26パターンのいずれかを引けば2手目で確定終了することになります。
ランドロス を入力したとき
黒黒緑黒緑 ( 0.20%) 候補数 1 ['マタドガス']
黄黒黒黒黄 ( 0.20%) 候補数 1 ['ストライク']
黒緑黒緑緑 ( 0.20%) 候補数 1 ['ケンタロス']
黄黒黄黒緑 ( 0.20%) 候補数 1 ['ギャラドス']
黒黄黒黒緑 ( 0.20%) 候補数 1 ['ソーナンス']
黄黒黒緑緑 ( 0.20%) 候補数 1 ['ヘラクロス']
黄緑黄黒黒 ( 0.20%) 候補数 1 ['キングドラ']
黒緑黄黒黒 ( 0.20%) 候補数 1 ['ドンファン']
黄緑黒黒緑 ( 0.20%) 候補数 1 ['バンギラス']
黄黒黄黒黄 ( 0.20%) 候補数 1 ['ボスゴドラ']
黒黒黒黄緑 ( 0.20%) 候補数 1 ['トロピウス']
黄黄黒黒緑 ( 0.20%) 候補数 1 ['ジーランス']
緑黒黄黒黒 ( 0.20%) 候補数 1 ['ラムパルド']
黄緑黄黒緑 ( 0.20%) 候補数 1 ['ドンカラス']
黄黄緑黒黒 ( 0.20%) 候補数 1 ['ヒードラン']
黒緑黒緑黒 ( 0.20%) 候補数 1 ['ケンホロウ']
黄緑緑黒黒 ( 0.20%) 候補数 1 ['ペンドラー']
緑緑黒黒緑 ( 0.20%) 候補数 1 ['ランクルス']
黄黒黒黄黒 ( 0.20%) 候補数 1 ['カラマネロ']
黄黒黄黄黒 ( 0.20%) 候補数 1 ['ドラミドロ']
黒黒黒緑黄 ( 0.20%) 候補数 1 ['フクスロー']
黒黄黄黄黒 ( 0.20%) 候補数 1 ['ドロバンコ']
黒緑黄黄黒 ( 0.20%) 候補数 1 ['バンバドロ']
緑黄黒黒緑 ( 0.20%) 候補数 1 ['ラランテス']
黒黄緑黒黒 ( 0.20%) 候補数 1 ['ズガドーン']
黄黒緑黒黒 ( 0.20%) 候補数 1 ['レジドラゴ']
他方、スバメとギモーは最も候補数が絞れる返却結果を引いた場合でも2ポケモンが残り、正解がどちらか特定できません。
スバメ を入力したとき
黄黄黄黒黒 ( 0.39%) 候補数 2 ['バクガメス', 'オオスバメ']
ギモー を入力したとき
黄黒黄黒黒 ( 0.39%) 候補数 2 ['ヨーギラス', 'アギルダー']
1手目終了後に候補数が5以下になる確率ランキング
1手目終了後の候補が5ポケモン以内になる確率を最大にしたいということもあると思います。この指標ではドンカラスが1位になります。
◆ 1手目終了後に候補数が5以下になる確率
1位 ドンカラス 1手目終了後に候補数が5以下になる確率: 0.1761252446183953
2位 アーマルド 1手目終了後に候補数が5以下になる確率: 0.16046966731898238
3位 グラードン 1手目終了後に候補数が5以下になる確率: 0.15459882583170254
4位 ランドロス 1手目終了後に候補数が5以下になる確率: 0.15459882583170254
5位 シンボラー 1手目終了後に候補数が5以下になる確率: 0.14285714285714285
6位 ムーランド 1手目終了後に候補数が5以下になる確率: 0.1350293542074364
7位 サンダース 1手目終了後に候補数が5以下になる確率: 0.13111545988258316
8位 キングドラ 1手目終了後に候補数が5以下になる確率: 0.13111545988258316
9位 キングラー 1手目終了後に候補数が5以下になる確率: 0.12915851272015655
10位 ネンドール 1手目終了後に候補数が5以下になる確率: 0.12720156555772993
838位 プリン 1手目終了後に候補数が5以下になる確率: 0.011741682974559686
839位 ダゲキ 1手目終了後に候補数が5以下になる確率: 0.011741682974559686
840位 クスネ 1手目終了後に候補数が5以下になる確率: 0.011741682974559686
841位 オタチ 1手目終了後に候補数が5以下になる確率: 0.009784735812133072
842位 モノズ 1手目終了後に候補数が5以下になる確率: 0.009784735812133072
843位 ギモー 1手目終了後に候補数が5以下になる確率: 0.009784735812133072
844位 エネコ 1手目終了後に候補数が5以下になる確率: 0.005870841487279843
845位 メテノ 1手目終了後に候補数が5以下になる確率: 0.005870841487279843
846位 ゾロア 1手目終了後に候補数が5以下になる確率: 0.003913894324853229
847位 ヤクデ 1手目終了後に候補数が5以下になる確率: 0.003913894324853229
2手目終了後の候補数の期待値ランキング (2手目は2手目終了後の候補数の期待値が最小になる手を選択)
1手目終了後に残る候補数の期待値はジーランスが1位でしたが、1手目終了後の候補数の期待値が大きくても、2手目終了後の期待値まで見据えたときはジーランスよりよいポケモンがいるかもしれません。ので、2手目終了後に残る期待値を出してみます。ただし、これはもはや2手目に何を入力するかに依存するので、「2手目は1手目の結果を知った下で2手目終了後の候補数の期待値が最小になる手を選択する」ことにします。
この指標のベスト20は以下です。ベスト20に入り得ないポケモンを足切りしているためにワースト側はありません。これをみるとランクルスがわずかにジーランスに勝りますが、ジーランスは依然として2位にいることがわかります。
◆ 2手目終了後の候補数の期待値 (2手目は2手目終了後の候補数の期待値が最小になる手を選択)
1位 ランクルス 2手目終了後の候補数の期待値: 7.8238747553816035
2位 ジーランス 2手目終了後の候補数の期待値: 8.1839530332681
3位 レントラー 2手目終了後の候補数の期待値: 8.571428571428566
4位 カイリキー 2手目終了後の候補数の期待値: 8.628180039138945
5位 ドッコラー 2手目終了後の候補数の期待値: 9.65949119373777
6位 カイリュー 2手目終了後の候補数の期待値: 9.904109589041097
7位 オーロット 2手目終了後の候補数の期待値: 9.94911937377691
8位 テッシード 2手目終了後の候補数の期待値: 9.968688845401168
9位 ネンドール 2手目終了後の候補数の期待値: 10.02348336594912
10位 ルナトーン 2手目終了後の候補数の期待値: 10.273972602739729
11位 ランドロス 2手目終了後の候補数の期待値: 10.36594911937378
12位 バオッキー 2手目終了後の候補数の期待値: 10.551859099804306
13位 マルマイン 2手目終了後の候補数の期待値: 10.628180039138927
14位 リーシャン 2手目終了後の候補数の期待値: 10.651663405088058
15位 マルノーム 2手目終了後の候補数の期待値: 10.772994129158503
16位 ブラッキー 2手目終了後の候補数の期待値: 10.863013698630125
17位 エルフーン 2手目終了後の候補数の期待値: 10.9041095890411
18位 ウーラオス 2手目終了後の候補数の期待値: 10.90606653620352
19位 デスバーン 2手目終了後の候補数の期待値: 10.915851272015647
20位 ナックラー 2手目終了後の候補数の期待値: 10.960861056751476
ここで、4位となったカイリキーは1手目終了後の候補数の期待値は 96.46 で 55 位であったので大躍進(?)しています。カイリキーは1手目終了後に候補数が最も残るケースの候補数が 196 と不利になっていますが、そのとき2手目としてランクルスを選択すると残り候補数の期待値が小さくなることがわかります。
ジーランス を入力したとき
黒黒黒黒黒 (26.61%) 候補数 136 --> 2手目 ダルマッカ で期待値 16.73
黒黄黒黒黒 (13.89%) 候補数 71 --> 2手目 オニドリル で期待値 12.10
黒黒黒黄黒 (10.76%) 候補数 55 --> 2手目 オニドリル で期待値 8.75
黒黒黒黒緑 ( 7.05%) 候補数 36 --> 2手目 トドゼルガ で期待値 5.83
黒黒黄黒黒 ( 4.70%) 候補数 24 --> 2手目 カラナクシ で期待値 3.29
カイリキー を入力したとき
黒黒黒黒黒 (38.36%) 候補数 196 --> 2手目 ランクルス で期待値 15.66
黒黒黒黒黄 (15.85%) 候補数 81 --> 2手目 ネンドール で期待値 9.19
黒黒黒黒緑 ( 6.85%) 候補数 35 --> 2手目 ランクルス で期待値 5.00
黒黄黒黒黒 ( 6.65%) 候補数 34 --> 2手目 エルレイド で期待値 3.68
黒黒黄黒黒 ( 4.70%) 候補数 24 --> 2手目 アリアドス で期待値 4.29
【2/10 追加】 2手目終了後までに正解を特定する確率ランキング(2手目は2手目で正解するか正解を特定する確率が最大の手を選択)
2手目終了後までに正解を特定する確率も出したいと思います。
各入力可能ポケモンを1手目にしたときの以下の 1.〜4. の確率の和を指標にします(※ この記事の2番目のランキングは以下の 2. のみのランキングですが、今回は 1. も加えます)。
- 1手目で正解を引いてゲームを終える。
- 1手目で正解しなかったが正解を特定する(2手目でそれを入力してゲームを終える)。
- 1手目で正解せず正解の特定もできなかったが2手目で正解を引いてゲームを終える。
- 1手目で正解せず正解の特定もできず2手目も正解しなかったが2手目で正解を特定する。
ただこの 3., 4. はやはり2手目に何を選ぶかに依存するので、1手目の結果を知った下で 3., 4. の確率の和が最大となる手を選ぶことにします。
ランキングは以下になります。トップ20に入り得ないポケモンを足切りしているのでワースト側はありません。1手目で正解を特定する確率ではランドロスがトップでしたが、2手目までとするとジーランスがトップになることがわかります。
◆ 2手目終了後までに正解を特定する確率
1位 ジーランス 2手目終了後までに正解を特定する確率: 0.3659491193737769
2位 ドンカラス 2手目終了後までに正解を特定する確率: 0.3542074363992172
3位 グラードン 2手目終了後までに正解を特定する確率: 0.34833659491193736
4位 レントラー 2手目終了後までに正解を特定する確率: 0.34442270058708413
5位 エルフーン 2手目終了後までに正解を特定する確率: 0.3424657534246575
6位 ドータクン 2手目終了後までに正解を特定する確率: 0.33855185909980423
7位 ランドロス 2手目終了後までに正解を特定する確率: 0.33659491193737767
8位 キングラー 2手目終了後までに正解を特定する確率: 0.33463796477495106
9位 ルナトーン 2手目終了後までに正解を特定する確率: 0.32289628180039137
10位 ネンドール 2手目終了後までに正解を特定する確率: 0.32093933463796476
11位 ヒードラン 2手目終了後までに正解を特定する確率: 0.32093933463796476
12位 ランクルス 2手目終了後までに正解を特定する確率: 0.3189823874755381
13位 シンボラー 2手目終了後までに正解を特定する確率: 0.3150684931506849
14位 アーマルド 2手目終了後までに正解を特定する確率: 0.3150684931506849
15位 オーロット 2手目終了後までに正解を特定する確率: 0.30919765166340507
16位 ペンドラー 2手目終了後までに正解を特定する確率: 0.30724070450097846
17位 トドグラー 2手目終了後までに正解を特定する確率: 0.30332681017612523
18位 デスバーン 2手目終了後までに正解を特定する確率: 0.299412915851272
19位 ムーランド 2手目終了後までに正解を特定する確率: 0.299412915851272
20位 グライオン 2手目終了後までに正解を特定する確率: 0.299412915851272
【2/10 追加】 3手目終了後の候補数の期待値ランキング (2, 3手目は終了後の候補数の期待値が最小になる手を選択)
3手目終了後の期待値も出しました(Gist)。時間がかかるのでベスト5のみにしました。予め1手目終了後の最大候補数の昇順にソートして計算を開始してベスト5に入り得ないポケモンを切り捨てていっています。が、残り候補数が同じときの最善手の使い回しなどはしていないです。
ベスト4は2手目終了後のときと変わりませんがリーシャンが5位になりました。
◆ 3手目終了後の候補数の期待値 (2, 3手目は終了後の候補数の期待値が最小になる手を選択)
1位 ランクルス 3手目終了後に残る候補数の期待値: 1.1780821917808217
2位 レントラー 3手目終了後に残る候補数の期待値: 1.246575342465753
3位 ジーランス 3手目終了後に残る候補数の期待値: 1.2778864970645785
4位 カイリキー 3手目終了後に残る候補数の期待値: 1.305283757338552
5位 リーシャン 3手目終了後に残る候補数の期待値: 1.326810176125244
なお、先にも書いたように、1, 2, 3手目でゲームが終了したときはその枝の残り候補数を 1 ではなく 0 としているので、上の数値は3手目終了後時点でゲームが継続している条件下での平均的な残り候補数よりは小さい値になっていると思われることに留意ください。
-
1手目「アシレーヌ → 黒黒黒黒黒」の後、2手目「ドテッコツ → 黒黒緑黒黒」で3文字目を特定してからの「カメックス → 黒黒緑黒黒」「ミミッキュ → 黒黒緑黒黒」「ペロッパフ → 黒黒緑黒黒」「ウデッポウ → 黒黒緑黒黒」「バケッチャ → 黒黒緑黒黒」「イエッサン → 黒黒緑黒黒」(正解は「タルップル」)。 ↩
-
旧記事では「入力ポケモン、結果画面、現在の候補ポケモンのリスト」が与えられたときに「絞り込み後の候補ポケモンのリスト」を返すロジックの一例を説明していました。このロジックは(効率的かどうかはさておき)これはこれでいいのですが、全ケースの期待値や確率の計算を目的とするときはこのロジックは全く不要です。結果画面から正解候補を絞り込まなくとも、全ケースの結果画面を出しているのでその結果画面の元になった正解ポケモンを知っているからです。なお、ご紹介していた「候補数の期待値」「候補数が1になる確率」が誤っていたわけではありません(本記事のスクリプトでも結果は同じです)。 ↩
-
よくある(?)Wordle のルールでは ⭐ の箇所が「左から1個まで」になっているために、緑や黄に塗られた文字が正解ポケモンに「1文字以上は使われている」という事実までしか確定しません。しかし、ポケモンWordle(やど氏版)では ⭐ のルールがあるために、「2文字以上使われている」「n 文字ちょうど使われている」が確定しうるケースがあります。といっても大概のケースで違いは生じないと思いますが、違いが生じる例がヘルプで紹介されている「キノココ」→「黒黒黄黄」で、このとき正解が「ココロモリ」に確定します。 ↩
-
もし1手目で正解を当てた場合は1手目終了後にゲームが続かないので残る候補数を 1 とはせず 0 としています。以降の指標も同様です。 ↩