ルービックキューブの神の数

God's Number of Rubik's Cube

20手が要る形を見つけたリードは、もっと長い形があると予想した。

ルービックキューブの約4.3×10¹⁹通りの並びは、どれも面を回す20手以内で揃う。2010年、Googleの計算機の空き時間で全部を調べ、初めて確かめられた。

年代
2010年
習う
大2・代数・置換群と剰余類
レベル
大学(例題 5 問)
人物
エルノー・ルービック、モーウェン・シスルスウェイト、マイケル・リード、ヘルベルト・コチエンバ、トマス・ロキッキ、モーリー・デイヴィッドソン、ジョン・デスリッジ
作成日
更新日
執筆・監修
佐々木 航
逸話

スーパーフリップの知らせ

ばらばらに崩したルービックキューブは、最悪の場合、何手あれば揃うのか。答えは20手である。面を90°回しても180°回しても1手と数えると、約通りあるどの並びも、20手以内で元に戻せる。

この20は「神の数」と呼ばれる。いつも最短の手順を選べる者がいたとして、その者でも最悪の並びには何手かかるか、という数だ。確かめられたのは2010年7月で、トマス・ロキッキら4人が、すべての並びを計算機で調べ上げた。

ただし、20手が必要な並びがあることは、その15年前に分かっていた。

1995年1月18日の朝、マイケル・リードは、1980年から続いていたキューブのメーリングリストCube-Loversに短い知らせを送った。題は「スーパーフリップには20手が要る」。角はすべて正しい位置と向きにあり、辺も正しい位置にあるのに、12個の辺だけがそろって裏返っている。そんな並びを、スーパーフリップと呼ぶ。

朝の薄明かりの部屋で、1990年代の計算機が何台も机に並び、画面がぼんやり光っている。人はいない(画像生成 AI で描いたイメージ)
1995年1月、スーパーフリップの探索は、何台もの計算機に分けて進められた画像生成AIで描いたイメージ

リードは、この並びを揃える最短の手順の形をいくつかの場合に絞り込み、それぞれを何台もの計算機で調べ尽くした。かかったのは、CPUの時間にして約210時間。最後の2つの場合が終わったのは、知らせを書いたその朝だった。それまでの下限は、手順の数を数えるだけで出る18手で、リードの知る限り、これを超えたのは初めてである。

リードは同じ知らせに、キューブの群の直径は少なくとも20手で、「もっと大きいと予想する」と書き添えている。

予想は外れた。21手かかる並びは、1つも無かった。

起源

ブダペストの木の立方体

キューブが生まれたのは、1974年の春、ブダペストである。ハンガリーのニュースサイト、テレックスの英語版によると、エルノー・ルービックが最初に作ったのは、木でできた2×2×2の立方体だった。部品はゴムの輪でまとめ、のちに磁石も試したが、どちらもよくばらけた。

木の作業台の上で、両手が小さな木の立方体を持っている。8つの木の塊がゴムの輪でまとめられ、顔は見えない(画像生成 AI で描いたイメージ)
1974年春、最初の試作は、ゴムの輪でまとめた木の2×2×2の立方体だった画像生成AIで描いたイメージ

そこでルービックは、部品どうしが互いを抱え込む形を考えた。6面の中心は内側の芯につながって回る。中心どうしの間に辺12個がはまり、辺どうしの間に角8個が差し込まれる。ギネス世界記録の紹介では、ルービックは当時ブダペストで建築を教えていて、学生の関心を引く「ありえない物体」を作ろうとしていた。作った本人も、崩したキューブを揃え直すのに3か月かかったという。

エルノー・ルービック1944年生まれ6つの面を回して色を揃える立方体のパズルを、1974年に作った

1975年1月30日、ルービックは「空間の論理パズル」としてハンガリーで特許を出願した。特許HU 170062の明細書が出たのは1977年3月である。同じ1977年、小さな会社が国内向けに1万2000個を作り、「魔法のキューブ」(Bűvös kocka)の名で売り出した。

では、最短で何手かという問いは、いつ立てられたのか。

ロキッキらが公開している経緯の表によると、1980年までに、下限は18手まで来ていた。17手以下の手順をすべて数えても、並びの数に届かないからである。上限は、初期の冊子に載った解き方から、80手ほどと見積もられていたにすぎない。1981年7月、モーウェン・シスルスウェイトが52手で足りることを示し、ここから上限を削る競争が始まった。

1990年12月から1992年5月にかけて、上限は42手、39手、37手と下がった。1995年1月にはリードがヘルベルト・コチエンバの2段階の解き方を調べて29手まで縮め、同じ月にスーパーフリップで下限が20手に上がる。残る差は9手になった。2005年12月から上限は再び動き出し、2008年8月にはロキッキとジョン・ウェルボーンが22手まで下げた。

最後の2手を消したのは、4人の組である。ロキッキはカリフォルニア州パロアルトのプログラマー、コチエンバはドイツのダルムシュタットの数学教師、モーリー・デイヴィッドソンはケント州立大学に勤める数学者、ジョン・デスリッジはGoogleで働く技術者だった。計算機の空き時間はGoogleが提供し、計算は数週間で終わった。

薄暗い通路の両側に、小さな光が点る計算機のラックが長く並んでいる。人はいない(画像生成 AI で描いたイメージ)
2010年、Googleが提供した計算機の空き時間で、すべての並びの計算を数週間で終えた画像生成AIで描いたイメージ
証明

12個に11個は揃わない

並びを数えるには、まず部品を見る。動く部品は、3色の角が8個と、2色の辺が12個。面の中心6個は互いの位置を変えないので、中心を目印にすれば、数えるのは角と辺の置き方だけになる。8と12と6は立方体の頂点と辺と面の数で、オイラーの多面体定理のがそのまま成り立つ。

キューブを分解して組み直すなら、どの置き方も作れる。では、回すだけで作れるのは、そのうちのどれだけか。

  1. 角8個の並べ方は通りで、1個ごとに向きが3通りある

  2. 辺12個の並べ方は通りで、1個ごとに向きが2通りある

  3. 組み直して作れる置き方は、2つを掛けた数になる

  4. 角の向き(ねじれ)を0, 1, 2で記録する。面を90°回すと、4つの角にが加わるか、どれも変わらない。和の変化は6か0で、3で割った余りは保たれる

    R面を時計回りに90°回すと、4つの角のねじれは+2, +1, +1, +2だけ変わる。合計の+6は3で割り切れる。
  5. 辺の向きを0, 1で記録する。面を回して裏返る辺は0個か4個なので、和の偶奇は保たれる

  6. 90°回しは、角4個と辺4個をそれぞれ1つの輪で入れ替える。長さ4の輪は互換3回に分かれる奇置換なので、角を並べ替える置換と、辺を並べ替える置換は、偶奇がいつも一緒に入れ替わる

  7. 角は7個の向きを決めれば残る1個も決まり、辺も11個の向きを決めれば残る1個が決まる。置換の組は、偶奇がそろった半分だけが残る

  8. 数値を入れる

「1手回す」を押すと、線が太くなった角と辺が入れ替わったりねじれたりするが、2つの和の余りと偶奇の組は崩れない。180°回しは90°回しを2回重ねたものなので、どの1手でも同じである。「分解して角をねじる」を押すと、ねじれの和を3で割った余りが0でなくなり、その並びは回すだけでは揃わなくなる。

逆に、3つの条件を満たす置き方は、どれも回すだけで作れる。ほかを崩さずに辺を3個だけ入れ替えるのような手順を組み合わせると、角と辺を1個ずつ正しい位置と向きに送れるからだ。ジャネット・チェンのノートは、高校生向けの夏の数学キャンプで群論を教えたときのもので、この逆の証明を最後まで追っている。

組み直した置き方のうち、回して作れるのは12個に1個。分解して適当にはめ直したキューブは、12分の11の確率で、回すだけでは二度と揃わない。

途中の計算

17手では数が足りない

並びを点にし、1手で移り合う2つの並びを線で結ぶと、1つの大きなグラフができる。面は上(U)、下(D)、右(R)、左(L)、前(F)、後ろ(B)の6つで、それぞれ90°、180°、−90°に回せるから、1手は18通り。どの点からも18本の線が出るので、一筆書きの定理の次数の和の式から、線の数は本になる。並びを揃える最短の手数は、このグラフでから揃った並びまでの距離で、神の数はグラフの直径にあたる。

下限は、手順を数えるだけで出せる。手以内で揃う並びの数は、長さ以下の手順の数を超えないからである。

  1. 1手目の選び方を数える

  2. 同じ面を続けて回す手順は1手にまとまるので、2手目からは別の5面だけを選ぶ

  3. 長さ0からまでを足す

  4. を入れてもに届かないので、17手以上かかる並びがある

  5. 向かい合う面(UとDなど)は順を入れ替えても同じ並びになるので、UとDならUを先に回すと決めて数える。最後に回したのが先の側の面なら、後の側ならとおく

  6. から2手目を計算する

  7. 17手まで同じ計算を続けて足す

  8. 17手以下の手順はより少ないので、18手以上かかる並びがある

1997年にリチャード・コーフが最短の解を探したときの探索木の節点の数は、手順5の数え方と一致し、18手で初めて並びの総数を超える。1手あたりの増え方は、漸化式の行列の大きいほうの固有値倍に近づいていく。

ただし、手順の数が並びの数を超えても、18手で足りるとは言えない。違う手順が同じ並びに行き着くことがあるからだ。手順5の数え方でも、4手の手順は43,254通りあるのに、ちょうど4手で揃う並びは43,239通りで、15通り少ない。下限を18から20へ上げるには、手順を数えるのではなく、スーパーフリップのような特定の並びを調べ尽くすしかなかった。

証明

195億通りずつ箱に分ける

上限のほうは、数えるだけでは済まない。通りのすべてについて、20手以内の手順を実際に見つける必要がある。

ロキッキらの見積もりでは、性能のよいパソコンで並びを1個ずつ解くと、最短の解なら1秒に0.36個、20手以内の解を探すだけでも1秒に3,900個だった。後者の速さでも、全部を解くには約3.5億年かかる。そこで4人は、並びを同じ大きさの箱に分けた。

  1. 上下の面は自由に、ほかの4面は180°だけ回してできる並びを集める

  2. の中では角と辺の向きが変わらず、中段の辺4個は中段から出ない。角8個、上下の段にある辺8個、中段にある辺4個が、それぞれの中で並び、偶奇の条件で半分になる

  3. 並び全体をの剰余類に分ける。箱の数は、角と辺の向きと、どの辺4個が中段に来るかで決まる

  4. 立方体の向きを変えたり鏡に映したりしても、揃えるのに要る手数は変わらない。向きの24通りと鏡を合わせた48通りの対称性を使い、さらに大きな集合被覆の問題を解いて、解く箱を減らす

  5. 1つの箱を約20秒で解く

約11億秒は、CPUの時間にして約35年分にあたる。この計算をGoogleの多数の計算機に配り、数週間で終えた。

箱1つは、当時のパソコンのメモリーに収まる大きさだった。箱ごとにまとめて解くと、20手以内の解が1秒に10億個のペースで見つかる。1個ずつ解くときの約26万倍である。最短の解を求めなかったのは、スーパーフリップが20手を要すると分かっていたからで、すべての並びに20手以内の解があれば、それで足りる。

こうして、上からも下からも20になった。

手の数え方を変えると、答えも変わる。ここまでのように180°回しも1手と数える数え方を、ハーフターン・メトリック(HTM)と呼ぶ。90°回しだけを1手とし、180°回しを2手と数えるクォーターターン・メトリック(QTM)では、2014年8月、ロキッキとデイヴィッドソンが同じ箱分けを使って、神の数が26であることを示した。計算はオハイオ・スーパーコンピューター・センターで、CPUの時間にして約29年分。この数え方では1手ごとに置換の偶奇が入れ替わるので、並びを見ただけで、最短の手数が偶数か奇数かが分かる。26手かかる並びは、スーパーフリップに「フォースポット」と呼ぶ並びを重ねた1つと、その向きを変えた2つしか見つかっていない。

応用

崩したキューブの3分の2は18手

通りの並びを、揃えるのに要る手数で分けると、山は18手にある。ロキッキらの数では、15手以内で揃う並びは約通りで、全体の0.23%しかない。ここまでは厳密に数えた値で、16手から先は推定になる。18手が約通りで全体のおよそ3分の2、17手が約通りで、この2つだけで9割を超える。

ルービックキューブ(画像生成 AI で描いたイメージ)
ルービックキューブ1974年(試作)、1977年(発売)6つの面を回して、各面の色を揃える3×3×3の立方体のパズル画像生成AIで描いたイメージ

20手が要る並びは、約4.9億通りと推定されている。数としては多いが、全体の約880億分の1にすぎない。ロキッキらは、そのうち約1200万個を見つけている。

だから、ランダムに崩したキューブを最短で解くと、たいてい17手か18手になる。ランダムな並びを初めて最短で解いたのは、1997年のリチャード・コーフである。一部の部品だけを揃えるのに要る最短の手数を大きな表にしておき、それを手がかりに探索を絞って、10個の並びを解いた。結果は16手が1個、17手が3個、18手が6個だった。

人が覚えて使う解き方は、1段ずつ揃えていくので、40手を超えるのがふつうだ。コーフは、そうした解き方には50〜100手かかると書いている。神の数の20は、コーフが挙げた手数の半分にも満たない。

例題と解説

小さなキューブから105組まで

例題 1基本小さなキューブの並び

2×2×2のキューブには面の中心が無く、角8個だけでできている。キューブ全体の向きを変えただけの並びは同じとみなすとき、回して作れる並びは何通りか。ただし、角のねじれの和を3で割った余りが0という条件だけがかかり、それを満たす置き方はすべて回して作れるものとする。

解説を見る

全体の向きを区別しないので、角を1個(たとえば左下奥)選び、位置も向きも固定して数える。残る7個の並べ方は通りある。向きは、7個のうち6個を決めると、ねじれの和の条件で最後の1個が決まるので通り。

辺が無いので、3×3×3のように置換の偶奇がそろう条件は付かない。

例題 2基本はめ直したキューブ

3×3×3のキューブを分解し、角と辺をそれぞれ無作為な位置と向きにはめ直した。

(1)回すだけで揃う確率を求めよ。

(2)揃ったキューブから辺を1個だけ外し、裏返してはめ直した。回すだけで揃うか。

解説を見る

(1)はめ直しの置き方は通りあり、どれも同じ確からしさで起こる。そのうち回して作れる並びは通り。

(2)裏返した辺の向きは0から1に変わり、裏返しの和は1になる。面を回してもこの和の偶奇は変わらないので、和を0に戻せない。回すだけでは揃わない。

例題 3入試手順の数で下限を出す

同じ面を続けて回さない手順だけを数える。1手目は18通り、2手目からは15通りずつ選べる。長さ0の手順(何もしない)1通りを含め、長さ以下の手順の総数をとする。となる最小の自然数を求めよ。ただし、、、とする。

解説を見る

長さの手順は通りなので、総数は次のようになる。

最後の項と比べると、次の不等式が成り立つ。

のとき、で、である。なので、となる。

のとき、で、より大きい。よってである。

求めるは17。16手以下の手順では並びを覆いきれないので、17手以上かかる並びがある。向かい合う面の順もそろえて数えると、途中の計算の手順7のとおり、下限は18手まで上がる。

例題 4大学同じ2手を繰り返す

揃ったキューブで、右の面を時計回りに90°回し(R)、続けて上の面を時計回りに90°回す(U)。この2手を1組として繰り返すとき、初めて揃った状態に戻るのは何組目か。ただし、1組を行うと次のことが起こる。

  • 辺は7個が1つの輪になって入れ替わり、向きは変わらない。
  • 角は5個が1つの輪になって入れ替わる。5組で元の位置に戻ったときには、どの角も同じ向きに2だけねじれている。
  • 残る角3個のうち1個は、位置を変えずに1組ごとに同じ向きに1だけねじれる。2個は動かない。
解説を見る

辺は7組ごとに元に戻る。輪になった5個の角は、5組で位置が戻るが、ねじれが2残る。ねじれは5組ごとに2ずつたまるので、3で割り切れるのは15組目で、そこで初めて元に戻る。位置を変えない1個の角は、3組でねじれが3になって元に戻る。全部が同時に戻るのは、7と15と3の最小公倍数の組数である。

105組目、つまり210手で初めて揃う。輪の5個に1組で加わるねじれの和は、1個の角が5組で輪を一周してためる2と、3で割った余りが等しい。位置を変えない角の1を足すとで、証明の手順4の条件とも合う。

例題 5大学直径と平均の距離

並びのグラフでは、並びからへの最短の手数はに等しく、どの並びから見ても、ほかの並びまでの距離の分布は同じである。グラフの直径を、1つの並びからほかのすべての並びまでの距離の平均をとするとき、を示せ。

解説を見る

並びの総数をとし、距離がの2つの並び, を選ぶ。どの並びについても、三角不等式から次が成り立つ。

これを個のすべてについて足す。

どの並びから見ても距離の分布は同じなので、左辺の2つの和はどちらもに等しい。

両辺をで割る。

推定を含む手数の分布からを計算すると約17.7になり、は約35である。本当の直径20は、その6割に満たない。

図示

上と下から20へ

1981年に52手だった上限と18手だった下限が近づき、2010年に20手で重なる。斜線は、まだ分からなかった手数の幅。

上限は1981年の52手から11回下がって20手になり、下限は1995年に一度だけ動いた。

キューブの部品は、向きが3通りの角8個、向きが2通りの辺12個、互いの位置が動かない面の中心6個に分かれる。
シミュレーション

崩した並びの手数を引く

棒の高さは、ちょうどその手数で揃う並びの数を表す。15手までは厳密な数、16手から先は推定値で、斜線の棒になっている。「対数の目盛り」に切り替えると、ふつうの目盛りではほとんど見えない15手までと20手の棒が現れる。「1000個崩す」を押すと、並びを無作為に選んで手数を引き、引いた割合から見積もった数が丸い印で重なる。何万回押しても、20手の並びはまず出てこない。

広がる学問

群と探索と分子の形

  • 数学 群の大きさを、操作で変わらない量から数えるときの典型例になる。生成元を決めた群を点と線のグラフにして直径を問う問題は、ケイリーグラフの直径を求める問題と呼ばれる。神の数20は、その答えが分かった例である。
  • 情報科学 状態の数が膨大な問題で最短の手順を探すとき、キューブは試験台として使われてきた。コーフが1997年に最短の解を探した方法は、反復深化A*(IDA*)という探索に、パターンデータベースと呼ぶ表を組み合わせたものだった。2010年の計算では、問題を剰余類ごとの箱に分け、1台のメモリーに収まる大きさにして、多数の計算機に配った。
  • 化学 分子の形を対称性で分類するとき、立方体と同じ48個の対称操作をもつ点群を使う。六フッ化硫黄SF₆は、この点群に入る分子の代表例である。2010年の計算で並びを減らすのに使った48通りの対称性も、このと同じ群になる。
いまの研究と事業

最短の手数を使う研究と事業

  • 2018年 エリック・ドメインら(MIT): 1枚の層を回すことを1手と数えるのキューブで、並びと手数を与えてかどうかを判定する問題が、NP完全であることを示した。3×3×3ではと分かっていても、を大きくした一般の場合に最短の手数を効率よく求める方法は、P≠NPである限り見込めない。出典はDemaine, Eisenstat, Rudoy「Solving the Rubik's Cube Optimally is NP-complete」arXiv:1706.06708(STACS 2018)。
  • 2023年 機械学習の論文(Kyo Takano): 揃った状態から無作為に崩した手順を学習データにし、ニューラルネットワークに「最後に回した1手」を当てさせ、それを逆にたどってキューブを解く方法を発表した。学習で崩す手数は、QTMの神の数以上にしておく必要があると論文は述べる。1000個の並びをQTMの手数で解くと、手順の長さは平均21.26手で(最短なら平均20.64手)、69.6%が最短だった。出典はTakano「Self-Supervision is All You Need for Solving Rubik's Cube」arXiv:2106.03157。
  • 2024年 三菱電機: パズルキューブを解くロボット「TOKUFASTbot」が0.305秒で揃え、5月21日にギネス世界記録に認定された。面を90°回す動作は1回0.009秒で、最短の手数で揃える回転手順を求める計算のプログラムも、速く正確にした。最短の手順なら、どの並びでも回す回数はに収まる。出典は三菱電機「『パズルキューブを最速で解くロボット』ギネス世界記録認定」(2024年5月23日)。
  • 2024年 アルトゥーロ・メリノら(チリのオイギンス大学ほか): 神の数を、軽い計算で上から押さえる方法を示した。例題5の不等式を使い、無作為に選んだ50万個の並びをコチエンバの2段階の解き方のプログラムで解くと、手数の平均は約18.32だった。直径が36を超えるなら、この結果が出る確率はより小さいので、高い確からしさでと言える。共著者はカーネギーメロン大学のベルナルド・スベルカソーで、計算はパソコン1台で5時間足らずで、教室でも追試できる規模に収まる。出典はMerino, Subercaseaux「A Demigod's Number for the Rubik's Cube」arXiv:2501.00144。

参考文献

  1. T. Rokicki, H. Kociemba, M. Davidson, J. Dethridge, "The Diameter of the Rubik's Cube Group Is Twenty", SIAM Journal on Discrete Mathematics 27(2) (2013), 1082-1105.(SIAM Review 56(4) (2014), 645-670にも掲載)
  2. T. Rokicki, H. Kociemba, M. Davidson, J. Dethridge, God's Number is 20。T. Rokicki, M. Davidson, God's Number is 26 in the Quarter-Turn Metric
  3. M. Reid, "superflip requires 20 face turns", Cube-Lovers(1995年1月18日)
  4. J. Chen, Group Theory and the Rubik's Cube(Texas State Honors Summer Math Campの講義ノート)
  5. R. E. Korf, "Finding Optimal Solutions to Rubik's Cube Using Pattern Databases", Proceedings of AAAI-97(1997)
  6. Telex, "Half a century of the Rubik's Cube: first a mainstream game, then a pop culture icon"(2024年6月21日)。Guinness World Records, "First rotating puzzle cube"
  7. E. Rubik, ハンガリー特許HU 170062(1975年1月30日出願、1977年3月28日発行)、Google Patents

タグ

この記事は、人が監修しながらAIを活用して執筆した。執筆・監修: 佐々木 航(株式会社Game)。

姉妹サイト

株式会社Game が運営するメディアです。