怎麼用演算法解開魔術方塊?

雖然我個人沒有在玩魔術方塊,不過朋友用心製作的 YT 影片還是吸引到我(聲音真的很有磁性XD

原來現在常用來解開魔術方塊的演算法稱為 kociemba, 這是由一位德國數學老師 Kociemba 發明的,可以在一秒內找到 21 步以下的解法(好快的劍!

這個演算法有幾個技巧,現在也很常使用:

  1. 動態規劃(Dynamic Programming), 也就是將大問題切成小問題,將小問題解決之後,大問題就不難了

  2. BFS 廣度優先搜尋

  3. 剪枝(pruning),用來增加廣度優先搜尋效率的做法,舉例像是事先預測到這條路徑無解或者太慢,就捨棄這條路徑的做法,很多機器學習(例如深度學習)的演算法也都會利用剪枝來改善效率,至於 kociemba 怎麼做到預測,影片中也有介紹,作法蠻聰明的,在此恕不劇透XD



SlowerCuber 魔術方塊教學網

FOLLOW US

對抗久坐職業傷害

研究指出每天增加 2 小時坐著的時間,會增加大腸癌、心臟疾病、肺癌的風險,也造成肩頸、腰背疼痛等常見問題。

然而對抗這些問題,卻只需要工作時定期休息跟伸展身體即可!

你想輕鬆改變現狀嗎?試試看我們的 PomodoRoll 番茄鐘吧! PomodoRoll 番茄鐘會根據你所設定的專注時間,定期建議你 1 項辦公族適用的伸展運動,幫助你打敗久坐所帶來的傷害!

贊助我們的創作

看完這篇文章了嗎? 休息一下,喝杯咖啡吧!

如果你覺得 MyApollo 有讓你獲得實用的資訊,希望能看到更多的技術分享,邀請你贊助我們一杯咖啡,讓我們有更多的動力與精力繼續提供高品質的文章,感謝你的支持!