4次元n目並べ入門(n=3)

三目並べ(まるばつゲーム).

三目並べ(まるばつゲーム)は暇つぶしとして広くしられているが,これは3×3マス,2次元の空間に記号をおいていくゲームだ.われわれは3次元の世界に生きている1のでこのようなたぐいのゲームは3次元に拡張することができて,商品としては立体四目並べ:

がある2.本記事では,このようなゲームを4次元に拡張することを考える.ルールの選択肢はさまざまあるが,ここではひとまず,盤面の大きさが3×3×3×3の3目並べについて考えてみたい.

4次元3目並べ(3×3×3×3)のルール

  1. $$L =\{(x,y,z,p): x,y,z,p \in \{0,1,2\}\}$$という4次元空間の格子点の集合を考える.これが盤面(着手可能な手)の全体となる.
    • 例: \((0,0,0,0), (1,1,2,1), (0,2,1,0)\)などは合法手.\((3,4,2,9),(3,3,3,3)\)などは打てない(盤からはみ出ている).
    • 各座標軸の上に\(0,1,2\)という点があって,それを組み合わせることで位置を指定していると思ってもらったらよい.2次元,3次元の例を考えるとわかりやすい.
  2. 先手,後手をきめ,互いにひとつずつ点を指定していく.すでに指定されている点は指定できない.
    • ゲーム進行の例:
      • プレイヤーA「\((1,1,1,1)\)」プレイヤーB「\((2,2,2,2)\)」プレイヤーA「\((2,2,2,1)\)」プレイヤーB「\((1,2,2,2)\)」
  3. 「一直線上に3つの格子点を並べる」ことのできたプレイヤーが勝利.ただしここでいう直線は,4次元空間の軸のいずれかに対して平行なものに限るとする.
    • 点を数字の4つ組だととらえたときに,3つの数字を固定して,残りのひとつの数字が\(0,1,2\)と並んでいるものが構成できたときに勝利となる.
    • 例: \((1,1,1,\mathbf 0),(1,1,1,\mathbf 1)(1,1,1,\mathbf 2)\)を獲得したプレイヤーは勝利する.
    • \((1,\mathbf 0,1,1),(1,\mathbf 1,1,1)(1,\mathbf 2,1,1)\)や\((1,2,\mathbf 0,0),(1,2,\mathbf 1,0),(1,2,\mathbf 2,0)\)も同様.
    • べつに軸に平行でない直線を認めてもよいのだが,そうすると勝利しているかどうかを判定するのにいちいち複雑な計算が必要になってゲームのテンポが損なわれるため今回は認めないものとした.今後の課題としたい3
3次元空間では数字の3つ組(x,y,z)で位置が指定できる.

ゲームの進行例

棋譜はこちらのtogetterにまとめてある.人類の対局例が少ないので両者ともによくわかっていない感がある.先手▲=ぼく,後手△=うさぎさん.

1手目: ▲\((1,1,1,1)\).
割と広い空間なので,ど真ん中に打つのは強いだろうという着手.

2手目: △\((2,2,2,2)\).
対する後手は空間のカドを取った.まるばつゲーム(2次元)ではカドに打つと相手のミスを誘発しやすく,意外と強い手だが,果たして4次元3目並べではどうだろうか.

3手目: ▲\((2,2,2,1)\).
後手△\((2,2,2,2)\)のとなりに打った.2次元で戦うときの感覚で相手への嫌がらせを優先してしまったが,のちのちわかってくる通りこのゲームは先手が主導権を握りやすいので先手番を放棄するこの手は悪手.\((1,1,1,1)\)の隣に打っていくべきだった.

4手目: △\((1,2,2,2)\).
ここまで読者がついてきているか不安だが,これはリーチだ.△\((2,2,2,2)\),△\((1,2,2,2)\)とふたつ並んでいる.

5手目: ▲\((0,2,2,2)\).
\((0,2,2,2)\)に入られると負けてしまうので仕方ない一手.3目並べというゲームの性質上こういう自明な手は多くなる.

6手目: △\((1,1,2,2)\).
4手目\((1,2,2,2)\)と合わせてリーチ.

7手目: ▲\((1,0,2,2)\).
リーチ妨害.

8手目: △\((1,1,1,2)\).
6手目\((1,1,2,2)\)と合わせてリーチ.

9手目: ▲\((1,1,0,2)\).
リーチ妨害.

10手目: △\((1,2,1,2)\).
この手が実はダブルリーチ.8手目\((1,1,1,2)\)のほか,4手目\((1,2,2,2)\)ともリーチになっている.しかし両者ともに4手目のことなど覚えているわけがないため,この手は勝利の一手とはならなかった.

11手目: ▲\((1,0,1,2)\).
8手目-10手目のリーチをふせぐ手が実は先手のリーチになっている.7手目\((1,0,2,2)\)と.

12手目: △\((2,2,1,2)\).
11手目のリーチに気づかずにリーチ返し.

13手目: ▲\((1,0,0,2)\).
\((1,0,2,2)\),\((1,0,1,2)\),\((1,0,0,2)\)と並んで勝利.

対局後の感想

第一に,このゲームをずっとやっていると4次元に対する直観が身につくかもしれないという希望がある.僕が独裁者になったら施設に集めた子どもたちにこれをやらせて異常な直観をもった幾何学者をたくさん生み出したいなと思った.

ゲーム性としては,たかだか3×3×3×3の81点しかない4ので,たとえばコンピュータに手を全探索させることを考えるとかなり簡単なゲームである.しかし,人間が5プレイするにはこのゲームはかなり難しい.3×3×3の三次元部分空間をいくつかイメージして,それらを移動しながら思考していけばできそうな気もするが,ぼくの脳のメモリではなかなか厳しそうだ.

うさぎさんは\(3×3×3×3×3×3=3^{6}\)ぐらいまでなら(上の方法を)練習したらできそうなので我々は\(3×3×3×3×3×3×3=3^{7}\)をやるべきだと言っていた.慧眼である.地球初の7次元3目並べプレイヤーになれるようにぼくも修練を積んでいきたい.

今後の課題としては,定跡の整備がある.今のところただ相手の隣に打っているのであまり戦略性がないが,どのように打っていくのが効果的なのだろうか.

また,以下のような指摘があった.

最善手を打ち続けた場合先手必勝後手必勝引き分けのどれになるのかは確かに知りたいことだ.個人的には明らかに先手必勝ということはないのではないかと思っている.なぜかというと,盤面がある程度「狭い」ため基本的にはダブルリーチをかけないと勝てなくて,そこである程度の戦略性が産まれそうな予感がある.たとえ先手必勝だとしても(後手必勝のどうぶつしょうぎをみんな楽しくプレイできているように)ある程度難解な勝ち筋になるのではないかと思っている.

おわりに

ぼくでよければ対戦相手になるので,興味をお持ちの方は一緒にあそびましょう!

  1. 最先端の物理学ではこの宇宙は11次元で〜など言いたくなる気持ちもわかるが,まあそこはこらえて.
  2. この四目並べは重力つき(そらそうだ)だが,重力なしverを考えることもできる.
  3. コンピュータがその判定を支援してくれるならプレイしてもいいかなという感じ.プログラムの実装が待たれる.
  4. 将棋とかオセロの盤面と似たようなサイズ感だが,それらと違って駒が動いたり取られたり裏返ったりしないのでもっと簡単である.
  5. ある程度の制限時間をもうけたうえで