Tetris The Grand Master / Tetris The Absolute Plus テトロミノ出現補正の調査

著者: SAL


1. はじめに

Tetris The Grand Master(以下TGM)およびその続編であるTetris The Absolute Plus (以下TAP)においてはテトロミノ(以下ミノ)の出現順序が完全な乱数ではなく、 同種のミノが連続しないよう補正がかけられていることが経験的に知られている [1]が、その詳細な法則については公式には 明らかにされていない[2]

しかしミノの出現法則について知ることはこれらのゲームを攻略する上で 重要な要素となるため、実際にプレイした上での出現順序をもとに調査することとした。

なお公式の資料ではないが、tetrisconcept.comには出現法則について 記述されたページがある[3]。 ただし参照先には「統計的に分析した」とのみ記載されており、採取したデータや 分析方法についての記述は見つからなかった。

しかしtetrisconcept.comに記述されている法則は実に明快であるので、 本稿ではこの法則の検証を中心に調査することとした。

2. 採取データ

TGM、TAPのそれぞれで実際のプレイを録画し、その間に出現したミノを記録した。 なおTGMではBIG+20Gモードを、TAPではBIG+20GモードのMASTERを使用した。 録画にはゲームセンターで稼働している筐体を使用し、フリープレイ設定で30回〜 80回程度の連続したプレイを数回に分けて録画した。

なお、本稿では各ミノを色の略称で表記する。tetrisconcept.comなどで使用される 形による略称[4]とは以下のように対応する。

ミノの形
       
       
       
       
       
       
       
       
       
       
       
       
       
       
本稿での略称 R Y C O B G P
形による略称 I O T L J Z S

生データ(TGM) (プレイ回数:126回、合計ミノ数:10293個)

生データ(TAP) (プレイ回数:134回、合計ミノ数:11052個)

上記の生データにおいては、一行が一回のプレイに対応する。
注: ブラウザなどで表示すると行の途中で折り返されて区切りがわかりにくくなるかも しれない。改行文字が明示的に表示されるテキストエディタなどで参照するとよい。

3. 集計結果

3.1. 全体での色ごとの傾向

採取したデータ全体について、それぞれのミノがどれだけ出現したかを計数した。

          R     Y     C     O     B     G     P TOTAL
TGM :  1496  1469  1503  1460  1458  1442  1465 10293
      14.5% 14.3% 14.6% 14.2% 14.2% 14.0% 14.2%
TAP :  1584  1613  1573  1582  1614  1543  1543 11052
      14.3% 14.6% 14.2% 14.3% 14.6% 14.0% 14.0%

3.2. ゲーム開始直後の傾向

ゲーム開始直後にどのミノがどれだけ出現したかを計数した。

 (TGM)
       R        Y        C        O        B        G        P      TOTAL
1st   31(24%)   0( 0%)  27(21%)  34(26%)  34(26%)   0( 0%)   0( 0%)   126
2nd   22(17%)  27(21%)  21(16%)  12( 9%)  17(13%)   0( 0%)  27(21%)   126
3rd   18(14%)  31(24%)  16(12%)  23(18%)  14(11%)   2( 1%)  22(17%)   126
4th   20(15%)  26(20%)  19(15%)  16(12%)  24(19%)   1( 0%)  20(15%)   126
5th   10( 7%)  19(15%)  17(13%)  13(10%)  15(11%)  31(24%)  21(16%)   126
6th   21(16%)  11( 8%)  11( 8%)  20(15%)  20(15%)  28(22%)  15(11%)   126
7th   20(15%)  13(10%)  20(15%)  18(14%)  20(15%)  22(17%)  13(10%)   126
8th   11( 8%)  19(15%)  21(16%)  20(15%)  22(17%)  14(11%)  19(15%)   126
 (TAP)
       R        Y        C        O        B        G        P      TOTAL
1st   29(21%)   0( 0%)  24(17%)  38(28%)  43(32%)   0( 0%)   0( 0%)   134
2nd   28(20%)  30(22%)  30(22%)  22(16%)  23(17%)   1( 0%)   0( 0%)   134
3rd   20(14%)  29(21%)  28(20%)  33(24%)  22(16%)   2( 1%)   0( 0%)   134
4th   22(16%)  28(20%)  10( 7%)  17(12%)  17(12%)   2( 1%)  38(28%)   134
5th   13( 9%)  14(10%)  15(11%)   9( 6%)   5( 3%)  45(33%)  33(24%)   134
6th   14(10%)  15(11%)  16(11%)  14(10%)  21(15%)  34(25%)  20(14%)   134
7th   27(20%)  16(11%)  22(16%)  15(11%)  22(16%)  18(13%)  14(10%)   134
8th   21(15%)  24(17%)  18(13%)  25(18%)  24(17%)  14(10%)   8( 5%)   134

3.3. 直前のミノのパターンに対する次のミノの種類

直前の四つまたは五つのミノの配列がprevsのパターンと一致する場合に どのミノが出現したかを計数した。

 (TGM)
prevs    a           b           c           d           e
aaaa     0           0           -           -           -       
aaab     0           0           2           -           -       
aaba     0           0           3           -           -       
aabb     0           0           3           -           -       
abaa     0           0           1           -           -       
abab     0           0           0           -           -       
abba     0           0           2           -           -       
abbb     0           0           2           -           -       
aabc     1( 0.5%)    5( 2.3%)    2( 0.9%)  211(96.3%)    -       
abac     4( 1.8%)    2( 0.9%)    1( 0.4%)  220(96.9%)    -       
abbc     2( 0.9%)    3( 1.4%)    3( 1.4%)  214(96.4%)    -       
abca     4( 1.6%)    4( 1.6%)    5( 2.1%)  230(94.7%)    -       
abcb     2( 0.9%)    1( 0.4%)    0( 0.0%)  226(98.7%)    -       
abcc     0( 0.0%)    2( 0.9%)    2( 0.9%)  219(98.2%)    -       
abcd   248( 2.9%)  236( 2.8%)  219( 2.6%)  216( 2.6%) 7494(89.1%)

prevs    a           b           c           d           e           f
abcde 2178(29.4%)  215( 2.9%)  206( 2.8%)  190( 2.6%)  191( 2.6%) 4417(59.7%)
 (TAP)
prevs    a           b           c           d           e
aaaa     0           0           -           -           -       
aaab     0           0           2           -           -       
aaba     0           0           0           -           -       
aabb     0           0           0           -           -       
abaa     0           0           0           -           -       
abab     0           0           0           -           -       
abba     0           0           0           -           -       
abbb     0           0           2           -           -       
aabc     0( 0.0%)    0( 0.0%)    0( 0.0%)   83( 100%)    -       
abac     0( 0.0%)    0( 0.0%)    0( 0.0%)   88( 100%)    -       
abbc     0( 0.0%)    0( 0.0%)    0( 0.0%)   82( 100%)    -       
abca     0( 0.0%)    0( 0.0%)    0( 0.0%)  109( 100%)    -       
abcb     0( 0.0%)    0( 0.0%)    0( 0.0%)   87( 100%)    -       
abcc     0( 0.0%)    0( 0.0%)    2( 2.4%)   80(97.6%)    -       
abcd   106( 1.1%)  108( 1.1%)   87( 0.9%)   83( 0.8%) 9597(96.2%)

prevs    a           b           c           d           e           f
abcde 2926(30.9%)  102( 1.1%)  104( 1.1%)   82( 0.9%)   81( 0.9%) 6179(65.2%)

4. 分析

tetrisconcept.comに記述されている法則は以下の通りである。

  1. 直前の4つのミノを履歴に記憶しており、乱数でミノを生成した際に 同種のミノが履歴に含まれている場合は再度ミノを生成し直す。
  2. 乱数によるミノの生成は1回のミノ出現あたりTGMで4回、TAPで6回を上限とする。 上限に達した場合は履歴にあるミノと同種のミノがそのまま出現する。
  3. ゲーム開始直後にはP、G、Yは出現しない。
  4. ゲーム開始時の履歴はTGMでは"GGGG"に、TAPでは"GPGP"に初期化される。

上記の法則を仮定すると、プレイ一回あたりのミノ数が十分に多ければ トータルでのミノの種類による出現頻度の差はほとんどないことになる。 実際に3.1の結果を見る限り、出現頻度にほとんど差はないといえる。

法則1、2については3.3の結果で検証する。 法則1と2を仮定すると、3.3で作成した表の理論値は以下の通りとなる。

 (TGM)
prevs      a      b      c      d      e
aaaa   0.04% 99.96%      -      -      -
aaab   0.33%  0.33% 99.33%      -      -
aaba   0.33%  0.33% 99.33%      -      -
aabb   0.33%  0.33% 99.33%      -      -
abaa   0.33%  0.33% 99.33%      -      -
abab   0.33%  0.33% 99.33%      -      -
abba   0.33%  0.33% 99.33%      -      -
abbb   0.33%  0.33% 99.33%      -      -
aabc   1.12%  1.12%  1.12% 96.63%      -
abac   1.12%  1.12%  1.12% 96.63%      -
abbc   1.12%  1.12%  1.12% 96.63%      -
abca   1.12%  1.12%  1.12% 96.63%      -
abcb   1.12%  1.12%  1.12% 96.63%      -
abcc   1.12%  1.12%  1.12% 96.63%      -
abcd   2.67%  2.67%  2.67%  2.67% 89.34%

prevs      a      b      c      d      e      f
abcde 29.78%  2.67%  2.67%  2.67%  2.67% 59.56%
 (TAP)
prevs      a      b      c      d      e
aaaa     ~0%  ~100%      -      -      -
aaab   0.03%  0.03% 99.95%      -      -
aaba   0.03%  0.03% 99.95%      -      -
aabb   0.03%  0.03% 99.95%      -      -
abaa   0.03%  0.03% 99.95%      -      -
abab   0.03%  0.03% 99.95%      -      -
abba   0.03%  0.03% 99.95%      -      -
abbb   0.03%  0.03% 99.95%      -      -
aabc   0.21%  0.21%  0.21% 99.38%      -
abac   0.21%  0.21%  0.21% 99.38%      -
abbc   0.21%  0.21%  0.21% 99.38%      -
abca   0.21%  0.21%  0.21% 99.38%      -
abcb   0.21%  0.21%  0.21% 99.38%      -
abcc   0.21%  0.21%  0.21% 99.38%      -
abcd   0.87%  0.87%  0.87%  0.87% 96.52%

prevs      a      b      c      d      e      f
abcde 32.17%  0.87%  0.87%  0.87%  0.87% 64.35%
サンプル数が少ないケースについては十分な検証ができていないが、 直前の四つのミノがすべて異なるケースと、TGMについては 直前の四つのミノの種類が三種類になるケースについても 理論値と実測値によい一致が見られる。

法則3についてはサンプル数が少ないため断定はできないが、 3.2の結果を見る限り反例は見つかっていない。

法則4については3.2の結果で検証する。 tetrisconcept.comにはTAPでの履歴の初期値は"GPGP"と記述されているが、 4thでのPの出現率が高いことから"PGPG"の誤りと考えられる。 これらの条件を仮定すると、3.2で作成した表の理論値は以下の通りとなる。

 (TGM)
           R      Y      C      O      B      G      P
1st   25.00%  0.00% 25.00% 25.00% 25.00%  0.00%  0.00%
2nd   14.98% 19.87% 14.98% 14.98% 14.98%  0.33% 19.87%
3rd   14.94% 19.55% 14.94% 14.94% 14.94%  1.12% 19.55%
4th   14.87% 18.96% 14.87% 14.87% 14.87%  2.60% 18.96%
5th   11.03% 13.88% 11.03% 11.03% 11.03% 28.11% 13.88%
6th   14.67% 10.47% 14.67% 14.67% 14.67% 20.40% 10.47%
7th   14.72% 12.95% 14.72% 14.72% 14.72% 15.24% 12.95%
8th   14.75% 14.59% 14.75% 14.75% 14.75% 11.84% 14.59%
 (TAP)
           R      Y      C      O      B      G      P
1st   25.00%  0.00% 25.00% 25.00% 25.00%  0.00%  0.00%
2nd   18.69% 24.85% 18.69% 18.69% 18.69%  0.21%  0.21%
3rd   18.48% 24.35% 18.48% 18.48% 18.48%  0.87%  0.87%
4th   12.72% 16.67% 12.72% 12.72% 12.72%  0.85% 31.62%
5th    8.89% 11.57%  8.89%  8.89%  8.89% 31.24% 21.65%
6th   13.85%  8.15% 13.85% 13.85% 13.85% 21.47% 14.99%
7th   15.30% 13.27% 15.30% 15.30% 15.30% 14.97% 10.57%
8th   16.22% 16.60% 16.22% 16.22% 16.22% 10.75%  7.76%
サンプル数が少ないためやや誤差が大きいが、全体的によい一致が見られる。

5. 考察

レアケースについてはデータ量が少なく十分な検証ができていないが、 頻度の高いケースについてはデータと理論値の間に良い一致が見られる。 実際のゲームプレイにおいてレアケースでの確率を考慮する必要性が 低いことを考えに入れれば、ゲームプレイに応用する分には tetrisconcept.comの説をTAPでの履歴の初期値の誤りを修正した上で 採用しても特に問題は無いと思われる。

今回の検証で確認できたのはあくまでも上述の補正がかけられている、 という点のみであり、他の補正がかけられているかどうかについては 検証できていない。しかしこの観点での検証は非常に困難なものとなるため、 新たに仮説が立てられた時点で改めて検証を進めることとする。

今回検証した補正は非常に単純なものだが、実際のゲームプレイに 応用するにあたっては以下の点に注意する必要があるだろう。

特定のミノが近いうちに出現することは予測できない
特定のミノがしばらくの間出てこなかったとしても、そのことは 近いうちにそのミノが出現することを意味しない。 5つ手前に出現したミノも、20個以上出現していないミノも、出現する 確率は同等である。予測できるのはあくまでも4つ手前までに 出現したミノは出現率が低い、という点のみである。
特定のミノが3つ連続して出現する確率はさほど低くない
4つ手前までに出現しているミノは出現率が低くなるが、その4つの 中に複数出現しているミノがあったとしてもそのミノが特別に 扱われる訳ではない。従って直前の4つが例えば"ROPP"だった場合、 RおよびOの出現率とPの出現率は同等であることに注意すべきである。

6. 謝辞

データ採取の際にはゲームセンター「Game in えびせん」[5] の協力をいただきましたのでここに感謝の意を表します。

7. 参考文献

 [1]  Wikipedia 日本語版 テトリス ザ・グランドマスター テトリミノの出現補正
 [2]  ARIKAホームページ 
 [3]  tetrisconcept.com TGM randomizer 
 [4]  tetrisconcept.com Tetromino 
 [5]  Game in えびせん