6面全ての色を揃える立体パズル「ルービックキューブ」の早解き世界記録には、人間の手によるタイムと機械の手によるタイムの2種類が存在します。アメリカの大学院生が作り上げたルービックキューブ攻略マシンがなんとわずか0.38秒でルービックキューブを解くことに成功し、機械によるルービックキューブ早解きタイムを40%も縮めてぶっちぎりの世界記録を樹立しました。

BuildIts in Progress: The Rubik's Contraption

http://build-its-inprogress.blogspot.jp/2018/03/the-rubiks-contraption.html

The Cactus Zone: Rubik's Solver Software

http://blog.cactus.zone/2018/03/rubiks-solver-software.html

実際にマシンがたった0.38秒でルービックキューブを解く様子は、製作者のBen Katzさんがアップロードした以下のムービーで見ることができます。0.38秒というタイムは「マシンが画像を認識し始めてから解き終わるまで」のもので、Katzさんによると「キューブの面を認識して解法を計算するためにかかる時間」が約0.045秒、「キューブの面を動かして解き終わるまでの時間」が約0.335秒とのことです。

0.38 Second Rubik's Cube Solve - YouTube

ルービックキューブを人間が解いた場合の世界記録は、記事作成時点でSeungBeom Choさんによる4秒59となっています。これまでの機械による早解き世界記録は、ドイツの半導体メーカーであるインフィニオン・テクノロジーズが製作したルービックキューブ攻略マシンによる0.637秒でした。マサチューセッツ工科大学の生体ロボット工学研究所に所属する大学院生のBen KatzさんとJared Di Carloさんは、インフィニオン・テクノロジーのマシンを見て「もっといいモーターを使えばさらに早く解けるはずだ」と考えたそう。そして開発されたマシンが以下の画像のもの。立方体型のケースの6面には、キューブを回転させるディスク型のモーターが固定されています。



マシンに使用されているコルモーゲンのディスク型サーボモーターは1000rpmを超える回転速度で、約0.015秒で90度回転することが可能。実際にKatzさんがアップロードした以下のムービーでは、すさまじいスピードで回転させられるキューブを見ることができます。

Cube Solver 1-DOF Test - YouTube

以下のムービーではモーターの回転に耐えきれず、キューブがバラバラに壊れてしまう様子も確認できます。KatzさんとCarloさんは1つ4.55ドル(約480円)というAmazon.comで最も安いキューブを使っていましたが、マシンが完成するまで4つは壊してしまったとのこと。

Cubesplosion - YouTube

モーターを制御する基板は自作のものですが、マシンのテストをしている時に電圧に耐えきれず爆発することが二度もあったそう。また、6つのモーターが同時に動いて干渉してしまうことがないように、6つのモーターへの信号を切り替えるための回路基板も自作したとのこと。



ルービックキューブの各面の認識は、対角線上に配置された2つのPlayStation Cameraによって行われます。このPlayStation Cameraは1台わずか7ドル(約770円)で入手したものとのことです。



1つのカメラで同時に3面を認識可能で、カメラで認識した画像を元に、Linuxベースで動くソフトウェアで色を識別し、解法を導き出して全てのモーターコントローラーに動作制御のシグナルを送ります。ただし、カメラの品質があまりよくなかったため、赤色とオレンジ色の区別が苦手だそうで、そのためテストで用いられているルービックキューブではオレンジ色の部分を黒に塗るという荒技が使われています。



Katzさんによると、確かにマシンは高速化できるが、その分マシンのチューニングに大幅な時間がかかるということです。なお、攻略マシンで使われている一連のソフトウェアはCarloさんによってGitHubで公開されています。