人工智能
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可以应用于机器人领域。举个例子,比如一个厨房清洁机器人,面对一团乱的厨房,正如一团乱的魔方,但是终极目标只有一个:还原[黄 金 体 验 镇 魂 曲]。这时候这个算法就可以应用在这个场景。“我们这个算法其实和这种情况还蛮搭配的。”