What ALPHA GO needs to do after successfully challenging Go

What ALPHA GO needs to do after successfully challenging Go

Date
Mar 18, 2016
Tags
AI
首先這裡用 Alpha Go 是不太準確的,這篇文章是想說明一下人工智能在達到破解圍棋這個理程碑後接下來可以做的事。於 3 月 14 日,Alpha Go 在連勝南韓九段棋士李世乭三場後,被對方李世乭擊敗,反勝一場。賽後很多評論說李世乭為人類對電腦的大戰中扳回一城,爭了一口氣,挽回人類尊嚴。
事實上我認為無論 Alpha Go 還是李世乭勝出,都是對人工智能的發展有着重大的幫助。雖知 Alpha Go 也是人類所開發的演算法,雖然借助的是電腦的高超運算,但演算法的設計是很有關係的。因為圍棋千變萬化,在 19 x 19 的橫盤裡,每一步可下棋的範圍就到達 361 種可能。現時的電腦技術是不能演算出所有可行的棋步而破解這個遊戲,所以這次 Alpha Go 取勝不是 Brute Force 蠻力計算而取勝,而是有智慧地選擇在有限時間內對它最佳的步法,然後取勝。

任何在有限步內完成的兩人對弈遊戲必會出現不敗的步法

根據著名的 Zermelo’s theorem,我們清楚知道任何在有限步內完成的兩人對弈遊戲必會出現不敗的步法。例如簡單的井字過三關,我們知道存在必勝法。因為遊戲簡單,可能性少,這不需要超級電腦或網絡的幫助下都可以清楚看得出來。但複習棋類遊戲如圍棋,中國象棋等,即使知道必定能破解,但因為遊戲複習性高,所以現時還未能完全破解,找出必勝或必不敗法。另外在真正對局時,亦會限時,所以下每一步棋都是一個判斷。這個時候就需要人工智能了。人類棋手在解讀棋盤時,除了能根據對手可能走的棋步,而演算出接下來棋局的發展外。還有一種優勢,就是對當前棋局形勢的分析。人腦在下每一步棋時,雖然不能確認這部棋下完後必勝,但可以跟據經驗(可理解為以前收集的大量數據)來判斷會提高勝出的機會。
notion image

人工智能著重在有限資料或有限計算時間下作出判斷

在 60 年代提出的 Alpha–beta pruning 剪枝演算法, 是在人工智能領域下的一個重大特破。這個為對弈遊戲而設計的演算法,重點是找出對弈遊戲裡對我方最佳的步法及對敵方最差的步法。如能作出這樣的判斷,我們已經可以把整個對弈遊戲簡單法,電腦不再需要對 decision tree 裡某些枝節進行計算。以中國象棋為一個簡單的例子,如果電腦能判斷走了這步棋會損失”車”, 而損失”車”後的勝算已經會大跌。它就可以馬上排除走這一步,而只對其它有機會取勝的步法及將來對手可行的步法進行運算。
AB PRUNING (圖片來自 WIKIPEDIA)
AB PRUNING (圖片來自 WIKIPEDIA)
 

智慧和智識區別

我們常說 knowledge (知識) 和 wisdom (智慧) 是有分別的。有智識只是代表你掌握了很多資訊,而智慧就在於能夠運用知識作準確的判斷。現在人工智能在圍棋上戰勝人類職業高手,不只是證明電腦驚人的計算能力,而是證明了我們設計的電腦程式在作出如人類一般的判斷時,已經越來越準確了。
Knowledge
Knowledge

展望將來

掌握了人類思考模式後,人工智能將來在協助我們做判斷會更大有幫助。接下來一個更大的挑戰是創作。能夠以人類的思維模式作出判斷是一個很大的突破,但如何讓電腦創作將會是更大的挑戰。例如繪畫,攝影,設計,寫作,這些都是在以有的資料下,創造新的知識。如何讓電腦能做這種事需要突破性的研究,才能打破一貫以來電腦只是能處理,運算資料的定律。