CFOP 해법

**CFOP 해법** (Cross – F2L – OLL – PLL) 또는 **프리드리히 해법**(Fridrich method)은 3×3×3 루빅스 큐브의 스피드 큐빙에서 가장 대중적으로 많이 쓰이는 해법이다. 이 해법은 Roux 해법과 ZZ 해법과 함께 가장 빠른 해법들 중 하나로 꼽힌다. 이 해법은 1980년대 초 다수 스피드 큐버들의 혁신적인 해법들을 결합하여 개발되었다. 체코의 스피드 큐버 제시카 프리드리히(Jessica Fridrich)가 1997년에 이것을 온라인에 게시하여 대중화시킨 것으로 알려져 있다.

이 해법은 처음으로 보통 바닥면의 십자(Cross)를 맞추고, 이어서 처음 2개의 층을 맞추고(F2L), 마지막 층의 방향을 맞춘 후(OLL), 최종적으로 마지막 층의 위치를 맞추는(PLL) 방식으로 이루어 진다. CFOP 해법에는 전체적으로 119개의 알고리즘이 있으며, 그 중 F2L은 41개, OLL은 57개, PLL은 21개의 알고리즘으로 구성되어 있다. 또한 CFOP 해법에 추가적으로 효율 향상을 위한 ZBLL이나 COLL(Corners of the Last Layer)과 같은 알고리즘들을 사용할 수 있다. 다만, F2L 단계는 '직관적 F2L(Intuitive F2L)'이라 불리는 방법을 사용하여 학습 알고리즘 수를 줄일 수 있으며, OLL과 PLL에 대해서는 각각을 2개의 세부 단계로 나누는 2-Look OLL과 2-Look PLL을 사용하여 OLL은 10개, PLL은 6개의 알고리즘만으로도 해법을 완성할 수 있다. 이 경우, 최소 16개의 알고리즘만 학습해도 CFOP 해법으로 큐브를 맞출 수 있어 Layer-By-Layer 해법을 사용하는 초심자들이 고급해법으로 들어가기 위해 많이 배우는 해법이다.

## 역사
기본적인 Layer-By-Layer 해법은 1980년대 초 루빅스 큐브 열풍 속에서 처음 등장한 맞춤 방법 중 하나였다. 예를 들어, 당시 제임스 노스(James Nourse)는 십자(Cross)를 맞춘 후 층을 하나씩 아래로 내려가며 맞추는 방식을 제안했고, 데이비드 싱마스터는 1980년에 더 빠른 층 기반 해법을 발표했다.

상대적으로 간단한 Layer-By-Layer 해법(LBL 해법)과 비교했을 때 CFOP 해법의 주된 개선점은 F2L(First-Two-Layer)을 사용하는 것이다. F2L은 십자(Cross) 단계 이후 윗면 코너 조각(corner)과 측면의 에지 조각(edge)을 함께 맞춰서 첫 두 층을 동시에 해결하는 단계를 말한다. 후스 라주 슐츠(Guus Razoux Schultz)는 1982년 세계 루빅스 큐브 챔피언십 대회에서 자신의 CFCE 해법의 일부로서 이러한 방식을 사용했지만, F2L 방식을 발명했다고 볼 수는 없다. 같은 대회에 출전했던 제시카 프리드리히(Jessica Fridrich)는 당시에는 LBL 해법을 사용하고 있었다. CFOP 해법은 1981년 네덜란드에서 아네케 트리프(Anneke Treep)와 쿠르트 도크혼(Kurt Dockhorn)에 의해 처음 공식적으로 출판되었으며, 이는 네덜란드 교수 르네 스호프(René Schoof)의 F2L-페어링 아이디어를 기반으로 한 것이다.

CFOP 해법의 또 다른 차이점은 마지막 층을 맞출 때 조각들의 방향을 먼저 맞춘 후 정확한 위치로 옮긴다는 것이다. 이전 노스의 간단한 해법에서는 조각들의 위치를 먼저 맞춘 후 방향을 맞추는 방식이었다.

CFOP 해법의 마지막 층 단계는 조각들의 방향을 맞추는 OLL(Orientation of the Last Layer)과 이후 조각들을 정확한 위치로 이동하도록 섞는 PLL(Permutation of the Last Layer)로 이루어진다. 이러한 방법은 한스 도크혼(Hans Dockhorn)과 아네케 트리프(Anneke Treep)가 1981년 네덜란드어로 처음 출판했으며, 당시 제시카 프리드리히는 체코에서 OLL-PLL을 병행하여 개발하였다.

제시카 프리드리히는 후스 라주 슐츠로부터 아이디어를 얻어 1982년이 되어서 F2L 방식으로 전환하였다. 제시카 프리드리히의 주된 공헌은 OLL과 PLL 알고리즘을 발전시켜 마지막 층이 어떤 형태에 있더라도 두 알고리즘을 이용하여 위치를 찾을 수 있도록 하고 이를 기존 다른 알고리즘에 비해 매우 빠르게 해결할 수 있도록 한 것이다. 스피드큐브가 알려지는 과정에서 제시카 프리드리히의 웹사이트를 통해 알려진 이러한 해법은 '프리드리히 해법'으로 불리기 시작했다. 다만, 2008년 경 이 해법이 한 사람의 단독 개발이 아니라는 이유로 이 명칭을 사용하는 것을 꺼리는 움직임이 있었으며, 그 후 'CFOP 해법'이란 명칭이 점차 사용되기 시작하였다.

현재 CFOP 해법은 최고 수준의 큐버들이 기본적으로 사용하는 가장 인기있는 해법이다.

## 방법

섬네일|십자를 맞춘 것 (아래에서 봄)섬네일|처음 두 층을 맞춘 것 (F2L)
섬네일|마지막 층의 방향을 맞춘 것 (OLL)
이 해법은 4 단계로 구성된다:
* **십자** - 이 첫 단계는 네 개의 퍼즐의 외부 층에 있는 공통 색을 가지는 모서리 조각 네 개를 푸는 것이다.
* **처음 두 층 (First Two Layers, F2L)** - F2L에서, 코너와 모서리 조각이 쌍을 이뤄서 올바른 자리로 옮겨진다. 각각의 코너-모서리 쌍은 다 맞춰진 경우를 포함해서 42종류의 표준 경우가 있다.
* **마지막 층의 방향 (Orientation of the Last Layer, OLL)** - 이 단계는 최상층을 조작해서 다른 면은 부정확하더라도 모든 조각의 윗면이 같은 색을 갖도록 하는 것이다. 이 단계는 총 57개의 알고리즘이 관여된다. "Two look" OLL은 모서리와 코너를 따로 푼다. 이것은 10개의 알고리즘을 사용한다, 3개는 모서리 정렬을 위한 것이고, 7개는 코너 정렬을 위한 것이다
* **마지막 층의 위치 (Permutation of the Last Layer, PLL)** - 마지막 단계는 최상층의 조각의 방향을 유지하면서 옮기는 것이다. 이 단계에 대한 알고리즘이 총 21개가 있다. 이것들은 문자 이름으로 구분된다. 보통 바꿔야 하는 조각을 나타내는 화살표와 함께 있을 때 어떻게 보이는지에 대해서 기반한다(예를 들어, A 교환, F 교환, T 교환, 등.). "Two look" PLL은 코너와 모서리를 따로 푼다. 이것은 6개의 알고리즘을 사용한다, 2개는 코너 교환을 위한 것이고, 4개는 모서리 교환을 위한 것이다.

## 대회 사용
CFOP는 많이 사용되며 그 강한 알고리즘, 패턴 인식 그리고 근육 기억에 대한 의존성 때문에 Rowe Hessler, Mats Valk, 그리고 Feliks Zemdegs를 포함하는 많은 스피드 큐버들이 기본으로 사용하는 해법이다; 루해법이나 페트러스 해법과 같은 더 직관적인 방법과는 대조적이다. WCA 랭킹 목록의 최고 스피드 큐버의 대부분은 CFOP를 사용한다.

## 각주

## 외부 링크
* Jessica Fridrich's official site
* CFOP method on Speedsolving.com Wiki
* All OLL and PLL algorithms can be found on http://algdb.net/
* How to solve Rubix Cube

분류:루빅스 큐브