M'4

ルービックキューブで学んだことをまとめます

FMCはじめました:CFOPからはじめて、ブロックビルディングしてみる

はじめに

これはFMC Advent Calendar 2019の15日目の記事です。

昨日(14日目)の記事は、発起人であるたむそん(@CubeTamson)さんのFMC Advent Calendar 2019 14日目|たむそん|noteです。ちょっとずつ他の方の記事を読んでも意味がわかるようになってきました。本記事では、私のまだ詳しく知らないEOスタートという手法から始まりますが、インバーススクランブルを使って探索空間を広げていくというやり方はすでにわかっていたので、わかりやすく読み進めることができました。33手が不本意な解答ってすごいなあ…という感想です。(小並感)

明日(16日目)の記事は、ゆーき(@Yuuki_tribox)さんのFMC Advent Calendar 2019 〜Rouxerだからブロックビルディングするよ〜です。Rouxのブロックビルディングの感覚からスタートしてブロック作り始めたらあれよあれよという間に揃っていくので読みごたえがあります。私も11月はRouxに取り組んでいて、その知識がブロックビルディングに生かせないかなーと考えていたところ、Roux忘年会の時にこのソルブのお話を拝聴できました。その場にいたうえしゅう大先生がもくもくとoptinalなインサートを探しているのを横目で見ながら、私はただアヒージョ食べていました。おいしかったです。

本記事のねらいと免責事項

初心者がFMCやりたい!と思ってから、実際にやってみるまでのメモ書きです。 本記事を読むことで、あなたのFMCの知識やスキルが向上することはありません。

ごあいさつ

スピードキューバーのみなさん、こんにちは。かわむ(kawam123)と申します。
2018年の夏からスピードキューブをはじめました。スピードキューブ2ねんせいです。スピードキューブというものに取り組んでから日が浅いので、まだまだやったことのない公式競技がたくさんあります。ちょっと面白そうだなと思ったときには積極的に飛びついていき、キューブの楽しみ方の幅を広げていきたいと思っています。今回はFMCに飛びつきます。

なんでFMCはじめたの?

FMC(最少手数競技)の存在自体はずっと知っていて、大人キューブ会でご一緒している方からは 「落ち着いてできる大人向きの競技だ」「老後の趣味にちょうどいい」 と楽しそうなお話を何度かお伺いしていました。動体視力と瞬発力を競うのではなく、じっくりと腰を据えて楽しむにはよい競技だ、と。なので、FMCは、心の中の いつかやりたい公式競技リスト に長らく載っていました。前に、大人キューブ界隈で集まって飲み会をしたときに、神の領域にいるFMC超上級者が6手詰めキューブを魔法のようにスルスルッと解いてしまう様子を拝見しました。カッコいい!でもFMCこわい! しかし、やりたい気持ちはさらに高まりました。

しかし、年内にどうにか3x3x3でsub-20したいとか、11月の日本大会に向けてどうにか片手のカットオフを通過しようとか、マルチで2ポイント以上取ろうとか、優先順位の高い競技がほかにもたくさんあったので、FMCのことはしばらく忘れていました。

そんな日本大会2019の3日目、自分の出場する競技は全て終わっていたので、気楽な気持ちでFMCのジャッジをしながら競技者のみなさんをぼーっと眺めていました。FMCのジャッジはPBQ Tokyo 2019に続いて2回目でした。本大会では主にライブ配信の担当をしていたのですが、3日目はライブ配信もありません。 「日本大会のFMCに完全密着!生配信!」とやってもあまり面白くなさそうです。「よーし、日本大会終わったらFMCやろう!」と思いながら、競技の様子を見ていると思ったよりも楽しめることに気づきました。

3つのキューブとペンと紙、あとはストップウォッチがあるくらい。こんなに限定された環境なのに、競技者によって競技の進め方はかなり違うように見えました。

  • 開始と同時に猛然と回しては解き回しては解き…を繰り返すひと
  • 一手動かしてはメモを書き、さらに動かしてはメモを書き…を繰り返すひと
  • 左手でOHしながら右手でペンを持って止まらずに書き続けるひと
  • ブロックらしいものができたと思ったら急に新しいキューブを持ってさらにスクランブルするひと*1
  • スピードスクランブル競技か!?ってくらいスクランブルが速いひと*2

これからFMCをやろう!という気持ちでジャッジをやると、競技者ごとの時間の使いかたを見ることができて、非常に参考になりました。何よりも 真剣に解答用紙に向かっている競技者の顔のカッコいいこと! 思わず競技者のクローズアップ写真を何枚か撮ってしまいました。また、 左手でキューブ、右手でペンを持つ方式 はあらかじめ知っている手順を回転記号に変換するときに非常に便利だったので、以下のFMCの試技をやるときにも使うようにしています。

さて、日本大会も終わってぼんやりしていた矢先に、イケメンで有名なお兄さんFMC Advent Calendar 2019を企画したと聞いて、さっそくFMCの勉強を始めることにしたのでした。

何を使って学習したか?

主に参照した学習リソースをメモしておきます。

日本語の解説記事をあたる

まずは有名な日本語リソースからあたりました。
次の二つのサイトを(意味がわからないところはあるにせよ)通読しました。先人の努力に感謝します。

ブロックビルディングをして、F2L-1(えふつーえるまいなすわん)の状態に持っていって、残しておいた3つのコーナーに対してインサート!キャンセル! というのがカッコいい流れであることがわかりました。コミューテータという概念は3BLDの学習の中で知ってましたが、任意の3点についてその場で手順を作るということはとても大変そうに感じました。インターチェンジできないところはそもそも8手コミューテーター(ピュアコミューテーター)が作れないので、FMCにおけるインサートを考えるときには除外されるものだ、というところまでは理解しましたが、そもそも3CPってどうやって作るんでしょう?ELL?なんだそれ?という状態です。

カッコよく 3CPインサート!8手キャンセル!(free insertion club) みたいなことをやりたい!と思いました。

動画もあわせて参照

FMC Tutorial - SpeedCubeReview

3BLDのM2/OP法を覚えるのにお世話になったSpeedCubeReviewのプレイリスト。競技の基本的な流れ、ブロックビルディング、疑似ブロック、NISS、EO、インサートとコミューテータなどの基本的な概念については一通り解説があります。最初の方に並んでいる動画は、ほぼ実時間で流しながら解説を話していくスタイルなので、冗長に感じる点が多いです。

プレイリストの最後にある「Fewest Moves Complete Tutorial」(1:32:41)は、長いけれどタブレットをつかってわかりやすく解説してくれています。いま改めて見ると、さらに解説している内容が頭に入ってきますね。

3x3 Fewst Moves(FMC) - J Perm

みんな大好きJ PermのFMCチュートリアルシリーズ。コンパクトに必要な要素を詰め込んで話し続けるので、集中してついていかないと意味がわからなくなります。Scramble Switch (NISS) のチュートリアルからスタートするので、初心者にはまったく意味がわからない!となって、つまみぐいのように視聴しました。*3

なので、2つめの3x3 Efficient Block Building Tutorial (FMC)から見ることをおすすめします。これは初心者の私にも少し意味がわかるレベル。Rouxのブロックビルディングと考え方が同じでした。

包括的なチュートリアル

これらとあわせて、WRホルダーであるSebastiano Tronto氏によるFMC TutorialのPDFも読みました。非常に平易な文章で書かれており、わかりやすく読むことができました。そもそもの概念がわからないところは、上記の日本語解説や動画と行ったり来たりしながら読みました。ようやくFMCの全体像がわかってきた気がします。こうやって、学習の初期に 複数の入門記事やチュートリアルを参照しながら、全体像を少しずつ掴んでいくやり方は、新しい競技を始めようとするときに非常に効果的です。

制限時間内のソリューション:CFOP 49手

さて、能書きが多くなりましたが、まずはやってみましょう。スクランブルは下記の通りです。1つめのスクランブルをやります。

(1) R' U' F L D B' R2 D2 U2 R2 F L2 F' D2 F' L' R' U B' L2 B L D2 R' U' F

まずは、1時間の制限時間を決めて、できることをやってみます。

この時点では、 まだ上記の学習リソースを全て読み込んでおらず、ブロックビルディング的なことがほとんどできない状態でした。 なので、スクランブルされたキューブを眺めて、すでにできている白赤緑のペアを残したままXCROSSを作ろうとしました。あとから考えると、2x2x2ブロックを作るのに8手かかっているので、あまり効率はよくないのでしょう。(FMC Tutorialによれば4手くらいで222ブロックを作りたい、とのこと)

D F' L B' D R2 D2 R // XCROSS (8/8)

さて、白クロスでXCROSSができたので、あとはF2Lをいい感じに入れていくだけです。

D' B' D2 B //赤青ペアを作る (4/12)
D' L' D2 L D L' D' L //F2L#2 (8/20)
D' B' D B //F2L#3 (4/24)
F' D F D' L D L' //F2L#4 (7/31)

F2Lを何度か試行錯誤しながら入れて、6手OLLの形になるようにしました。 いちばん時間を使ったのはここです。この形になるまでに40分くらいは使っています。

スキップこそできませんでしたが、OLLの形をコントロールするという感覚は新鮮です。本来は開眼両手のソルブでも同じようにOLLのエッジをコントロールできるようになるべきなんでしょうが、まだそんなことはできません。F2Lの#4を入れるときに色々工夫すると必ず上面に十字ができるらしい(cf. VHLS)。魔法ですか?*4

B D R D' R' B' //OLL (6/37)

あとはUpermを回して、AUFで完成。どうにか時間内に収まりました。

B D' B D B D B D' B' D' B2 D' //PLL+AUF (12/49)

解答まとめ

FMCerの皆様がいい感じに解答にメモをつけながら投稿しているのをカッコいいと思っているので、それっぽい形に書き直してみました。
いままでコメントの (N/M) の箇所の意味がよくわかっていませんでしたが、あれはその行の手数と累積手数を書いたものだったんですね。ようやく理解しました。

D F' L B' D R2 D2 R // XCROSS (8/8)
D' B' D2 B //赤青ペアを作る (4/12)
D' L' D2 L D L' D' L //F2L#2 (8/20)
D' B' D B //F2L#3 (4/24)
F' D F D' L D L' //F2L#4 (7/31)
B D R D' R' B' //OLL (6/37)
B D' B D B D B D' B' D' B2 D' //PLL+AUF (12/49)

alg.cubing.net

感想

知っている手順を持ち替え記号なしで書くのはものすごーく難しい!(小並感)

簡単な手順だから、と思ってメモしないで次に進むともうダメです。二度と再現できないことになります。白U緑Fの状態に変換して、回転記号としてメモをしていくのは、なかなか認知的にタフな作業でした。 「やった!解答ができたぞ!」と思って回してみたら揃わない なんてことは普通にあるんですね。FMCこわい。*5

メモ:さらに短いLL

F2L#4終了時点から、 F' D' F L B D B' L' D'(9手) で完成状態になるよ!という手順を教えていただきました。これを使えていれば40手!うえしゅうさん、ありがとうございます。

OLL44 y L' U' L F R U R' F'でLL完成するのか!複数のOLLパタンを知っているとこういうときに有効なんですね。FMCこわい。

もう少しF2Lをいじってみた:CFOP 47手

さて、あとは制限時間を考えずに悪あがきをしてみましょう。F2Lをもう少しいじって短くならないかなーと思って、F2Lの#3を入れる順番を変えると、F2L完成まで4手節約できることに気づきました。どうして気づかなかったのか? しかし、同時にOLLが8手になり、AUFが不要になるので、計47手。そんなに短くなりませんでした。FMCこわい。

D F' L B' D R2 D2 R // XCROSS (8/8)
D' B' D2 B //赤青ペアを作る (4/12)
D' L' D2 L D L' D' L //F2L#2 (8/20)
D' L D L' //F2L#3 (4/24)
D' B' D B //F2L#4 (4/28) 
F D F' D' F' R F R' //OLL (8/36)
F D' F D F D F D' F' D' F2//PLL(11/47)

alg.cubing.net

少しだけFMCっぽいことをやってみる:ブロックビルディング+NISS 40手

上記のソルブはCFOPを拡張して効率的にやろうとしただけのものでした。なので、別の日に時間を取って FMCっぽい解き方をしてみよう! と思い、やってみました。この間にFMC Adventcalendarの諸記事を拝読しています。特にNISSの使い方がようやく腑に落ちたのは、まっしゅさんのNISS愛あふれる記事を読んでからです。

同じスクランブルからスタートしますが、あらかじめインバーススクランブルをメモしておきます。これがきっと役立つはず!

スクランブルS: R' U' F L D B' R2 D2 U2 R2 F L2 F' D2 F' L' R' U B' L2 B L D2 R' U' F
インバースS':  F' U R D2 L' B' L2 B U' R L F D2 F L2 F' R2 U2 D2 R2 B D' L' F' U R

222を探索して、223を作る

CFOPの解き方をしたときに見つけたXROSSと同じように、すでにできているペアを保存して2x2x2ブロックを作ろうとしてみます。試行錯誤します。

D F' L B' D R2 D2 R //8手、さっきやったXCROSS
F' B' D R2 D2 R //6手でも222はできた
F' B' D R2 D2 B' R //7手222。余分な1手を入れると、白緑橙ペアもできた。
F' B' D R2 D2 B R //7手222。余分な1手の方向を変えてみる

余分な1手(1手インサート)を入れるとそのあとの形状が変わるので、どうにか223ブロックが作りやすいつながりはないかを検討したところ、次の手順で223を作ることにしました。11手で223ができているから、そこまで悪くもない…ですよね?たぶん。

F' B' D R2 D2 B R L U' L U //223 (11/11) ... [1]

223からF2L-1まで:NISSしてみる!

さて、ここでまっしゅさん記事にならって、NISSを使ってみます。
ここまでの手順で

ここまで:S [1]

を得ているので、これをインバースして、次の配列を得ます。

ここから:[1]' S' = 
[U' L' U L' R' B' D2 R2 D' B F]
[F' U R D2 L' B' L2 B U' R L F D2 F L2 F' R2 U2 D2 R2 B D' L' F' U R]

F2L-1に拡張したいので、 白と緑をクロス色だと見立てて次に進みます。 白クロスっぽく考える場合:

B D R D2 R' D2 R D' R' //9手
B R D' R' D' L' D' L //8手

緑クロスっぽく考える場合:

D2 B2 R' B R B' R' B' R//9手

OLLがいい感じに繋がりそうだったのが緑クロスなので

(D2 B2 R' B R B' R' B' R) //F2L-1 (9/20) ... [2]

これを採用しました。NISSのカッコ書きの記法ってこれであってますかね…?

F2L-1できたので、さらにNISSしてみる!

F2L-1が完成したので、ここでまたNISSをやります。インバース祭りです。

ここまで:[1]' S' [2]
ここから:[2]' S [1] =
[R' B R B R' B' R B2 D2]
[R' U' F L D B' R2 D2 U2 R2 F L2 F' D2 F' L' R' U B' L2 B L D2 R' U' F]
[F' B' D R2 D2 B R L U' L U]

だんだん混乱をしてきましたが、インバースするってこういうことですかね。またノーマルスクランブルが出てきました。ここに至るまでに何度もスクランブルを回し間違えているので、そろそろスクランブル配列を覚えてきてしまいました。さて、ここからF2Lを完成させるか、3CPに持ち込むかしたいですね。

白クロスっぽく入れることを考えると8手でF2Lが完成しますが、OLLもPLLもよくなさそうなので除外。探索する時間を長く取っても、いい手順が見つかるとは限らないのがFMCFMCこわい。

B2 L B L' B2 L B' L' //8手でF2L完成。OLLもPLLも長いので除外。

ダメだったのでNISSする前に戻って、F2L-OLL-PLL!

[1]' S' [2] まで戻って考えていると3手でF2L終わるのを発見。こちらに切り替えて探索。

(L B2 L') //3手、F2L完成 ... [3]
ここまで:[1]' S' [2] [3]
ここから:[3]' [2]' S [1] =
[L B2 L']
[R' B R B R' B' R B2 D2]
[R' U' F L D B' R2 D2 U2 R2 F L2 F' D2 F' L' R' U B' L2 B L D2 R' U' F]
[F' B' D R2 D2 B R L U' L U]

インバースする配列が長くなってきて、NISSしたあとのスクランブルを回すだけで疲れてくる。FMCは体力勝負なんですね。 あとは3CPを探す!とやったけれど、どうやってもB面のエッジが2つ反転しているのをキレイに戻す手順が思いつかない。力尽きてOLLとPLLを回す。
完成!

U B2 U2 L U L' U B2 U' //OLL (9/32) ... [4]
R' B L' B2 R B' R' B2 R L //PLL (10/42) ...[5]

解答をまとめてみよう

上記までをまとめて書くとこんな感じになりました。 42手!悪くないじゃないか!

F' B' D R2 D2 B R L U' L U //223 (11/11) ... [1]
(D2 B2 R' B R B' R' B' R) //F2L-1 (9/20) ... [2]
(L B2 L') //F2L (3/23) ... [3]
U B2 U2 L U L' U B2 U' //OLL (9/32) ... [4]
R' B L' B2 R B' R' B2 R L //PLL (10/42) ...[5]

さて、ここで流れるようにNISSを使ってみたものの、最後どうやって解答をまとめたものか途方にくれました。最後はどうやって書けばいいんだっけ…?

[3]' [2]' S [1] [4] [5]

とやったら完成状態になったのだから、これを少しだけスライドすればスクランブルに対するソリューションができたはず。

寄り道:Sebastiano Tronto先生のチュートリアルでNISSの解答の書き方を理解する

かのSebastiano Tronto先生もpremoveについての説明で、こう言っている。この説明が非常にわかりやすくて、ようやくpremoveとNISSというものが腑に落ちた。

スクランブルとソリューションは単一のムーブによるループ配列として考えることができる。これはキューブの状態にまったく影響しない
(FMC Tutorial, p.38)

なぜインバースしたスクランブルで解いているはずなのに、同じ完成状態にたどり着くのだ?と意味がわからなかった。次の例を読んで、ようやく意味がわかった。キューブを完成状態に戻す配列があったとき、その前後でセットアップ&逆セットアップをやっても何も影響しないのだ。

たとえばA B C Dをスクランブル、p q r sをソリューションと考えてみよう。 A B C D p q r s という配列で、キューブは完成状態に戻る。同じように、「ズラした」配列を考えてみると

s (A B C D p q r s) s’ = s A B C D p q r
r s (A B C D p q r s) s' r' = r s A B C D
q r s (A B C D p q r s) s' r' q' = q r s A B C D
p q r s (A B C D p q r s) s' r' q' p' = p q r s A B C D
D p q r s (A B C D p q r s) s' r' q' p' D' = D p q r s A B C
. . .

どれもキューブの状態に影響しない。インバースした配列でも同じことになる。

今回、私がNISSで作った解答についても同じことをやってみると、最終的に スクランブルに対するソリューション を取り出すことができるはずです。さあ、確認しながら書いてみましょう。

配列を「ズラして」解答を得る

[3]' [2]' S [1] [4] [5] //完成状態になる配列が得られた。いわば単位元。

上の例と同じように、前後にセットアップを入れてみる。

[2] [3] ([3]' [2]' S [1] [4] [5]) [3]' [2]' //前後に[2][3]のセットアップと逆セットアップを入れる
S [1] [4] [5] [3]' [2]' //セットアップ部分はキャンセル。逆セットアップ部分だけ残る。

最終的にはこの [1] [4] [5] [3]' [2]' という配列でスクランブルを完成状態にすることができるので、これが解答になるのです。ようやく意味がわかった!NISSばんざい!

ダメな例:NISSを展開するときにキャンセルを発見する

おや?NISSを展開して書き下したときに、キャンセルするところがあるぞ?
これはNISSを行った前後で前のムーブをすっかり忘れたまま重複して書いていたところがある、ということのよう。本当は回している最中に気づくべきだったのだろう。けれど、ここでは単にラッキーとして喜ぶことにします。こういうのをちゃんと気づかないで解答を書くと大変に損をしそうなので、今後気をつけます。ひえー、気づかないもんですね。

F' B' D R2 D2 B R L U' L U2 // [1] 1手キャンセル
B2 U2 L U L' U B2 U' // [4]
R' B L' B2 R B' R' B2 R L2 //[5] 1手キャンセル
B2 L' //[3]'
R' B R B R' B' R B2 D2 //[2]'
(40手) 

alg.cubing.net

40手!? えっ、嘘でしょ、とりあえず直近の目標として設定したsub-40が急に目の前に迫ってきました。

おわりに

FMCちゃんと勉強したくなりましたFMC Advent Calendar 2019という非常に楽しい機会を作っていただいた発起人のたむそんさん、ありがとうございます。 ちゃんと勉強してトライして、コンスタントに短い手順を出したいですね。そのためにはコーナー3つだけ残すようなFMCっぽいことができるようにならないといけません。がんばります。 長期的な目標は、目標は単発sub-年齢です。中期的な目標は単発sub-40です。

FMC Tutorialの翻訳開始しました

また、大変お世話になった Sebastiano Tronto氏のFMC Tutorialについて、どなたも日本語訳を作っていないと伺ったので、翻訳関連のリポジトリを作って、翻訳を開始してみました。ご本人がイタリア語話者であり、英語の母語話者でないこともあって、複雑な言い回しはほとんどなく読みやすい文書です。翻訳途中のドキュメントはこちらです。
また進捗は5%もないのですが、ちょっとずつ翻訳をしていこうと思います。このわずかな取り組みが、これからFMCを学ぼうとする方の参考になればと思っています。(翻訳に協力してくださる方、募集しています!)

ここらでひとつ、FMCがこわい。

(追記) Tribox ContestのFMCもはじめました

今回の企画で、同じスクランブルについて色んな方がFMCをやっているのを拝見する面白さを知りました。なので、毎週同じスクランブルでほかの人の解答が拝見できるTriboc ContestのFMCは外せない!と思い、今週から始めることにしました。
さっそく華麗にDNFしました! (委細は別の記事にまとめましたので、ご興味のある方は是非ご笑納ください…)

(2020/04/29追記) FMC Tutorial (第三版)の翻訳を進めています。

上記のFMC Tutorialの第三版の翻訳を進めており、ほぼ完成しました。FMCの基礎を学びたい方にとってよい参考資料となることを期待します。

おしまい。

*1:あとでわかりましたが、おそらくこれはNISSをやっていたのでしょう

*2:新競技!スピードスクランブル!

*3:いまもう一度視聴して、ようやく何を言っているか理解できた。スクランブルスイッチをすることで簡単なブロックビルディングができるようにしよう!というのがスタートポイントなのだろう。そこから、効率的なブロックビルディングとはどういうものか?という解説に続けていく。なるほど賢いやり方かも知れない。

*4:あとで調べたところ32通りしかないらしい。CMLLより少ない。これは覚えるしかない!

*5:よーく回答を見たら、OLLとPLLの間に1手キャンセルがあるしゃないですか!!こんな簡単なキャンセルにも気づかないなんて…FMCこわい。