AI在魔方上擊敗人類
作者:Rob Verger
把魔方擰亂有大概4.3 * 10 ** 19 種方法,擰回來就難多了。
人類復原魔方還是蠻快的,2019的冠軍Philipp Weyer能在7秒以內, 一般的高手也能在50步左右依次還原六個面。
人類研究魔方几十年,現在要輪到AI出場了:AI目前可以快速計算出一套復原解法,60%的幾率這個解法是最快的,大概20步就能復原。實際上,在魔方界有一種概念叫「神の演算法」,就是說,假如有個無所不能的神仙看一圈這個魔方就能立刻知曉最快的解法。加州大學歐文分校的計算機科學教授皮埃爾·巴爾迪說:「我們已經很接近「神の演算法」了,」他是一篇《自然機器智能》雜誌上描述魔方解決機器人的新研究的資深作者。
這個AI叫 Speedcuber,不是那種有機器手指的樣子,而是一個軟體,在虛擬情況下解魔方。用遊戲來訓練AI是定番,比如國際象棋、圍棋、多人德州撲克,AI已經制霸了。
魔方的話,傳統程序其實已經有了基於規則的計算解法,而現在這個是用AI深度強化學習來完成。
魔方其實也挺複雜,AI不學習不訓練一下子也不可能完成,純虛擬擰擰扭扭隨緣還原也不現實。所以研究人員從最簡單的情況開始訓練,比如最開始幾下就能還原,然後一點一點加大力度,越來越複雜。
「它就像個孩子,讓它由簡入繁地解決問題。」
那麼這個演算法是怎麼完成的呢?它有多速度?該團隊的某版本演算法是在線的,你可以自己試驗一下,這個版本大概花一秒檢查魔方然後就給出解法,而且基本不超過50步,和人類在比賽中的情況相仿,但還不能完美給出最優解法。與此同時,團隊在論文里提到的版本更強大,但是稍微慢一點:60%的幾率是最優解法,但是花費時間為20秒,但這樣也比人類計算一套最優解法要快。
相比之下人類復原最快6秒左右,但是人類需要真的去動手擰。Speedcuber 一般能在50步以內還原,但是時間上更快的方式還真不是找到最少的步數。
魔方這個東西很優雅,打亂方式千千萬,解決步驟也不少,但是終極目標只有一個:還原。
軟體工程師用遊戲訓練AI演算法,AI也可以用於現實生活。在這個案例中,巴爾迪表示這個AI可以應用於機器人領域。舉個例子,比如一個廚房清潔機器人,面對一團亂的廚房,正如一團亂的魔方,但是終極目標只有一個:還原[黃 金 體 驗 鎮 魂 曲]。這時候這個演算法就可以應用在這個場景。「我們這個演算法其實和這種情況還蠻搭配的。」
本文譯自 popsci,由譯者 HW 基於創作共用協議(BY-NC)發布。
TAG:煎蛋 |