[心得] 淺談3BLD Parity

看板Rubiks (魔術方塊)作者 (Hunter)時間3年前 (2021/06/12 03:53), 3年前編輯推噓4(402)
留言6則, 5人參與, 最新討論串1/1
對我來說,十幾年前學3OP的時候 Parity可以說是最困難的部分之一 一般3OP教學中的parity做法極為自由 總之就是要用各種方式setting成你會做的樣子,通常是PLL 尤其3OP先O再P,翻完方向後setting方式有所限制 加上不固定breaking into a new cycle導致最後的邊角可能在任何地方出現 使得parity難上加難 有看過以前的文就知道一堆人都在問“最後怎麼解”,“只剩下OOXX要怎麼處理” 然後大家也只會case by case回覆一些神來一筆setting成PLL的方法 學了其他解法後慢慢發現parity其實可以用很固定且有系統的方式解決 當然這些概念有一部分可以套回3OP,不過現在應該沒什麼學3OP的必要了XD -- 撇開用CFOP做speed BLD這類玩法 現存的3BLD系統中,邊角分開處理可以說是各解法的共識 但是當邊角循環各自的替換目標為奇數 在不互相影響的情況下不可能完全分開復原 (因不可能做純的兩邊互換或兩角互換) 這對於盲解來說就是parity 舉例來說,T/J/R/Y/V perm這幾個同時換兩邊+兩角的PLL 這些對CFOP來說很正常的case以盲解的角度來看全是parity cases. Parity的處理方式會依“解法”和“記憶復原順序”而有所不同 以下介紹一些處理parity的方法和思維 -- [二循環解角的parity策略] 使用條件:先解邊再解角,二循環法解角(OP corner) 二循環法解角的公式,基本上都會伴隨著邊塊的互換 (不可能做純的兩角互換) https://i.imgur.com/97TDeJq.jpg
拿最原始的OP corner為例 我們以UBL為buffer,Y perm (去掉前後的F/F')為交換公式 每換一次角就會同時伴隨UB-UL邊的互換 如果角的目標是奇數個,做完奇數次交換公式必然會殘留一個UB-UL邊互換 如果我們在解邊時使用一些技巧 使邊做完之後呈現UB-UL互換的狀態再去解角 這樣解完最後一角時所殘留的UB-UL互換就會將其抵消 完成整顆方塊 https://i.imgur.com/Lz9nxS4.jpg
如果是使用改良後以UFR為buffer,Jb perm為交換公式的OP corner 每換一次角伴隨的就是UF-UR邊的互換 照同一個邏輯,我們就要在解邊時使用一些技巧 使邊做完之後呈現UF-UR互換的狀態,讓它在解完角的時候被抵消 下面介紹幾個常見的做法: 1. 傳統M2/OP (DF/UBL buffer) parity alg https://i.imgur.com/O8n1HDV.jpg
M2法是以DF為buffer,M2為交換公式的二循環邊塊復原法 每換一次邊就會伴隨M層其他零件的180度移動 如果目標是奇數個,存在parity 那麼M2法做完邊後就會殘留UF、DB,以及四個M層中心的180度倒置 這時傳統parity alg會要求你做D’ L2 D M2 D’ L2 D再開始解角 這個公式的效果相當於,M2 + (DF > UL > UB) 使整顆方塊呈現所有邊完成,但UB-UL互換的狀態 而UB-UL互換就是要配合前面所說的UBL buffer OP corner 2. 2e2e https://i.imgur.com/d7wt5go.jpg
上個解法中我們用M2解完最後一邊,接著使用parity alg達成UB-UL互換 雖然只有一個公式,但整個過程花了兩個步驟 而2e2e就是嘗試只用一個公式 把(Buffer > last target) + (UB > UL)這兩組兩邊互換同時完成 邊的last target有22種選擇(Buffer外有11個邊,每邊2個貼紙位置) 因此2e2e共有22個公式 順帶一提,雖然叫做2E2E,但並不全都是兩組兩邊互換 如果last target剛好是UB或UL上的貼紙 那結果就會是一個三邊循環 2e2e的概念不止能用在傳統M2/OP OP/OP甚至3-style/OP也可以針對不同的buffer設計公式 實際上2e2e的優勢並不在於3BLD而是在於某些mBLD的狀況 詳細原因這邊不多討論 總之初學建議直接學後面一些更簡單的處理方法就好 3. Shoot to UR https://i.imgur.com/JN4R4W0.jpg
傳統UBL buffer的OP corner要求的是UB-UL互換,而M2法的buffer在DF (Buffer > last target) + (UB > UL)有很大的機率是以兩組兩邊互換呈現 因此衍生出了2e2e這種解法 如果使用的是UFR buffer的OP corner,我們希望達到的狀態是UF-UR互換 而邊的部分也使用現在主流的UF buffer 那麼(Buffer > last target)和(UF > UR)這兩組換邊必定會重疊於UF 也就是說2e2e兩組兩邊的狀況並不存在 整理一下可以合併成(UF > last target > UR) 這個方法就是我前幾篇教學用到的方法 遇到parity時在邊的循環最後多編一個UR 這樣解完自然就會是UF-UR互換的狀態,等著後面OP做完角抵消 甚至在某些狀況下,編碼本來就終止於UR,連多加編碼都免了 4. 反編法 https://i.imgur.com/qK1bxKj.jpg
反編法是另一個零公式,靠著在編碼動手腳處理parity的方法 以UFR buffer的OP corner來說,既然我們希望邊做完的時候呈現UF-UR互換 那一開始編碼的時候反過來編不就好了? 把UF貼紙當成UR貼紙,把FU貼紙當成RU貼紙,反之亦然 由於我們在設定上做了互換,邊的目標一定會是偶數個 做完會很自然地呈現UF-UR互換,等著OP解角的時候被抵消 反編法很簡單,但也沒有絕對的優勢 以UF/UFR buffer來說,shoot to UR還是最簡單無腦的選擇 另外和前面不太一樣的是,除了先解邊再解角這個條件 反編法連記憶順序也有限定,必須先記角再記邊 因為要先從角得知有parity,看邊的時候才知道要反著看 (不過CEEC本來就是主流,所以也不算缺點) 總結來說,解邊時要用什麼技巧完成何種狀態 完全取決於你用什麼方法解邊、什麼公式換角,以及邊角buffer為何 中心思想就是解邊時調整為特殊狀態,以抵消奇數次二循環換角所附帶的邊塊移動 或許有人會問,這幾種解法都在拿邊配合角 可不可以用類似的概念拿角配合邊? 答案是可以的,只是這種approach在各方面並沒有優勢 -- [三循環架構下的parity策略] 接下來講的是三循環解法的部分 三循環的邊和角都是以各種換三角和換三邊來完成 不會有二循環解法中解奇數角遺留換邊,解奇數邊遺留換角的情況 三循環不論邊角,在目標為奇數個時 最後必然會剩下一個無法完成的(Buffer > last target) 以下以UF/UFR buffer為例,處理方法都很直覺,而且二循環也適用: 1. 暴力破解 https://i.imgur.com/dGbUYj3.jpg
把邊做到剩一個目標,角也做到剩一個目標 這樣整顆方塊剩下 邊:(Buffer > last target) 角:(Buffer > last target) 接著一次解完兩角兩邊 邊的last target有22種選擇(Buffer外有11個邊,每邊2個貼紙位置) 角的last target有21種選擇(Buffer外有7個邊,每邊3個貼紙位置) 一次解完兩角兩邊就需要22 x 21 = 442個公式 這種解法不受記憶復原順序影響 最直觀,但同時也最不平易近人(公式太多) 2. Shoot to UR and UBR https://i.imgur.com/AhJr0CZ.jpg
既然解到最後邊角都剩下(Buffer > last target) 那只要在編碼的最後分別加上UR/UBR,變成 邊:(Buffer > last target > UR) 角:(Buffer > last target > UBR) 產生偶數目標後就可以用三循環處理掉,最後結果會變成 (UF > UR) + (UFR > UBR),也就是Jb perm 如此公式就從442變成1個 但是要多花兩個步驟把邊shoot to UR,角shoot to UBR 贅步太多 3. Shoot to UR https://i.imgur.com/pEEU4Jk.jpg
前兩個方案一個公式太多,一個贅步太多 那不如只用shoot to UR固定邊,這樣就會變成 (UF > UR) + (UFR > last target) 由於角的last target有21種選擇,因此只有21個公式 甚至可以不用背,只靠setting做成自己會的樣子 這裡應該不難發現這21個case其實就是UFR buffer OP corner的21種情形 實際上做的事跟前面二循環部分講的shoot to UR法完全一模一樣 (頂多只能說推導的過程和精神不同) 只用shoot to UBR固定角本身沒什麼優勢,就不討論了 -- 結論是在UF/UFR buffer的框架下 目前最簡單通用的parity處理策略就是shoot to UR 前面提到parity存在時,如果邊的循環剛好結束於UR,那連多編碼都免了 少一個編碼,少一組letter pair,少做一個公式對高手來說影響是很大的 也因此衍生出一些特殊的編碼策略,能夠有效提升循環結束於UR的機率 這個之後再說XD -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.168.97.183 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Rubiks/M.1623441232.A.803.html ※ 編輯: Huntermagic (118.168.97.183 臺灣), 06/12/2021 03:57:55

06/12 11:17, 3年前 , 1F
好文推~~~
06/12 11:17, 1F

06/12 13:53, 3年前 , 2F
沒空學先推~~~
06/12 13:53, 2F

06/12 14:31, 3年前 , 3F
這篇亂介紹,沒東西可學,有的話應該是在下一篇 吧
06/12 14:31, 3F

06/25 15:49, , 4F
推推 可以問圖是用甚麼畫的嗎 好精美喔xD
06/25 15:49, 4F

06/26 02:12, , 5F
isometric
06/26 02:12, 5F

07/07 15:38, , 6F
推... lag 兩年 XD
07/07 15:38, 6F
文章代碼(AID): #1WmxzGW3 (Rubiks)
文章代碼(AID): #1WmxzGW3 (Rubiks)