AlphaGo連勝人類:從圍棋複雜程度淺談AI的重要

AlphaGo連勝人類:從圍棋複雜程度淺談AI的重要
Image Credit: faithie / Shutterstock / 達志影像
我們想讓你知道的是

正如我們會把發明汽車、輪船、火箭、太空船等等視為人類文明進步,我們應把AlphaGo看成人類文明另一大進步。

唸給你聽
powered by Cyberon

AlphaGo改良測試版本已戰勝地球上幾十位最強人類圍棋高手。人類憑科學、邏輯、數學,創造出能夠在現有棋類中最複雜的圍棋戰勝世界冠軍的人工智能。

人工智能與一般電腦程式不同之處,在於其並非簡單依循人類工程師定下的規則去執行指令。人工智能使用分析大數據的演算法,稱之為機械學習(machine learning)。機械學習是一個統稱,其分成眾多不同演算法,應用於各種不同問題,詳細分別在此不述。無論何種機械學習演算法,其共通點是電腦會從過往經驗中學習,自動分析出最佳執行策略。

以棋類為例,為什麼必須使用機械學習?原因在於其可能步法數量非常多。我們可見的宇宙中,大約有1080個粒子,即1後面跟80個零。我們可以問,圍棋最多可能有多少個不同棋局?

圍棋的棋盤是個19×19的正方形,即有19×19 = 361格。每格可以有三種狀態:黑子、白子、空位。因此,每一步最多可以有3361種擺法,即大約1.7×10172 種擺法,亦即17後面跟171個零。這已經比宇宙中的粒子總數1080更多。然而根據圍棋規則,並非每一格都能任意放黑子或白子,因此實際上最多可能擺法應比1.7×10172 少一些。電腦科學家John Tromp與其他人曾計算出實際可能擺法約為2×10170

接下來,我們需要知道一局最長能有多少步。這很簡單,因為明顯地一局最長只能把所有可能擺法全部走完,即1.7×10172步。Tromp曾證明要在一局內把1.7×10172 步全部走一次是不可能的,但真正最長能有多少步仍未有人能計算出來。所以,1.7×10172 步是數學上的絕對最大值。

因此,我們就知道,圍棋最多可能有3612×10170 個不同棋局,約等於105.1×10170,即1後面跟5.1×10170個零。那麼多,究竟是多少個零啊?總之多到我也不想數。好吧,你硬要我數,我就數給你看。5.1×10170 個零,即51後跟169個零,即︰

510, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000個零。

所以,圍棋最多可能有「1後面跟這麼多個零」個不同棋局。不要叫我寫出來,因為宇宙的年齡約為138億年,即約4.35×1017秒。如果我由宇宙誕生的一刻開始寫,每秒就必需寫10152個零,才能在今天寫完。再者,我肯定不夠墨水寫,因為我每秒必須寫的零的數量比宇宙中的粒子總數1080更多。

當然,這是圍棋不同棋局數量的上限,哪麼下限呢?根據Tromp與其他人的計算,下限約為101048,即1後面跟1048個零,即1後面跟「1後面跟48個零」個零,即1後面跟

1, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000 個零。

嘩,少了好多個零啊。可是,這仍比1080多非常多。就算我們以人類平均一局圍棋長度約400步來算,也大約有10800個不同棋局。如果每個粒子都懂得下圍棋,宇宙中每個粒子都必須記住10720個不同棋局才能把10800個棋局全部記住。

因此,這就說明機械學習的重要性。正如我們會把發明汽車、輪船、火箭、太空船等等視為人類文明進步,我們應把AlphaGo看成人類文明另一大進步。人類發展出能夠自動分析數量過於龐大的可能性的電腦,若能應用於正當、適合的問題上,將是人類文明發展的極重要一步。以自動駕駛為例,路面的複雜程度不下於圍棋,未來的自動汽車應能準確預測路面情況,把交通意外數量降至接近零。

延伸閱讀︰Number of Possible Go Games

本文獲授權載,原文見作者博客

相關文章︰

責任編輯︰鄭家榆
核稿編輯:周雪君