作者:陳華夫
追問「現代流5原則」的由來?為何是5原則?而不是4原則或6原則?
這個問題的確牽涉到圍棋的本質,在我寫
「現代流圍棋:如何簡單對戰ALPHAGO-II (第一集)」一書時,只有「現代流4原則」,是我當時研究AlphpaGo Master橫掃人類圍棋世界冠軍總共64局,所歸納出來的「現代流圍棋」的致勝策略。但,一年後,「谷歌Google」在「Nature」上發表了更先進的AlphpaGo Zero,棋力可以讓AlphpaGo Master兩子。令我異常驚訝,天下竟然還有如此高的棋力,於是決心要搞清楚AlphpaGo Zero的厲害高明之處?
於是「現代流5原則」在實戰中,即是落子的方針;在
「覆盤」檢討時,則是評價好棋、壞棋的價值系統。例如,「不留弱棋原則」和「非戰原則」往往不能同時成立,而「走在外面原則」與「圍地致勝原則」本來就是相抵觸的。圍棋的本質就在如何選用、取捨相互矛盾的5原則。對戰雙方,誰能使用出5原則的總數越多,誰的棋力就越高,也會是勝方。換句話說,圍棋是高層次原則(大局觀)的鬥智,而非低層次目數多少的較勁,而一般傳統圍棋沒有「現代流5原則」的「覆盤」評價系統,棋力自然成長有限,難怪被AlphpaGo讓5子還沒法勝。
人類要有效的提高棋力,擺脫被讓5子的窘境,就要能夠
「元學習」(Meta Learning)─即有意識(非直覺)的控制自己的學習─圍棋,而「元學習」圍棋的關鍵就在,弈棋之初,就先要有一套弈棋原則,作為落子的方針及「覆盤」檢討的價值系統,而「現代流5原則」正是此套弈棋原則。但光有弈棋原則並不能提高棋力為高手。而棋力提高之道就在「有意識」(自覺)的在棋局中選用、取捨這些原則。而非「元學習」的圍棋學習,因為缺少一套弈棋原則來做高層次「大局觀」的「覆盤」檢討,棋力成長受限。
要想「有意識」(自覺)的使用「現代流5原則」,就要充分瞭解其意義及應用,下面就基於圍棋的本質,簡單扼要的詮釋5原則的意義,並且每一個原則都舉實際我用以戰勝AI電腦圍棋
Katrain 九段的棋譜為講解例子:
1)「非戰原則」:這是「現代流5原則」的第一原則,也是最被誤解的原則。人類幾千年的圍棋策略是「搏殺對方大龍致勝」之「追殺致勝原則」。但要在棋盤上要殺死對方一塊棋,完全違反圍棋的本質與棋理,因為「
賽局理論」Game Theory),圍棋是資訊完全公開、雙方各自走一手的公平賽局。理論上,若遭對方來追殺,己方可以棄子,而騰出手圍另一塊地。那麼,對方殺你一個子要花4手,只得一目,而你卻能以4手圍二、三十目。
並且,實戰中,依照棋理,局部的對戰,若對方是5棋子,而己方是3棋子,則對方是5:3的「優勢」,己方不能念戰搏殺,宜用棄子戰術。而優勢的一方更是切忌「追殺」弱子,因為「窮寇莫追」,恐遭「狗急跳牆」的反噬。所以「非戰原則」是要說明圍棋攻殺的目的並非是搏殺大龍,而是為了棄子或交換,這才是最高級的圍棋策略之一,AI電腦圍棋就善用此招打敗人類。請看我與「Katrain 9段」對戰的實際例子:
現代流5原則對戰職業九段,9P系列(11─100)─ 陳華夫持白以棄子戰術25目半勝「Katrain 9段」。
此外,
Katrain 九段在圍棋局部的攻殺,計算深遠,超乎人類。但它的AI人工智慧卻有系統性的缺陷,而屢屢敗於我的高級圍棋策略:如「棄子戰術」、「埋伏餘味」、及「劫爭」等。這是因為
Katrain 九段的
演算法(algorithm)只能有效的處理局部的利益得失,而對犧牲局部利益,在他處卻獲利的計算,例如,
Katrain 九段碰到蓄意先在正面衝突中失利,而引誘敵它深入陷阱後,再殲滅它的
迂迴戰略,就計算失靈,束手無策了。例如,「Katrain 9段」在
「現代流5原則對戰職業九段,9P系列(18─100)─陳華夫持白「Katrain 9段」錯打3個劫爭狂輸25目半」裡,在它還沒有開啟打劫時,盤面是細棋,打收官戰。但它卻計謀打劫,從黑87手起,一連打了3個錯誤的劫,而狂輸25目半。
2)「圍地致勝原則」:這是現代流5原則的第2原則。依照圍棋規則,勝負的判定,是依雙方各自在19 x 19棋盤上,所圈定的地盤多少而定,多半點以上一方就算獲勝。而此「圍地致勝原則」的原則包括兩個決策:(1)「增加自己的目數」:要增加目數必需建築立體的「有目屋」─ 圍有目數的棋子群組。
圍棋有一個口訣:「金角,銀邊,草肚皮」,這是圍棋的基本棋理,它是說4個角上的「有目屋」只要砌兩面牆,而4個邊上的要砌三面牆,中腹的要砌四面牆。這樣為圍角地所需花的手數較少,每一顆子的圍地效率最高,例如,小目的子加上小馬步非可圍16目左右,所以圍角地的效率約是:8目/子,而圍邊地的效率為約4目/子,而圍邊地的效率約為2目/子。這聽起來簡易的棋理,卻常被忽視。例如,「Katrain 9段」在「
現代流5原則對戰職業九段,9P系列(19─100)─ 陳華夫持白「Katrain 9段」不懂「金角銀邊草肚皮」棋理而輸了3目半」這一局裡,就不懂「金角銀邊草肚皮」的棋理,而輸了3目半,可以給大家一個警惕。
另外,更重要的,不要單純的砌牆圍地,要借攻擊(非追殺),順勢建立幾座「有目屋」;及(2)「削減對手的目數」:就是要破壞對手砌牆「有目屋」,使「有目屋」變成沒有目數的「沒目鷹」。其方法是拆掉它的一面牆,「有目屋」若少了一面牆就成了隻「沒目鷹」。
AlphpaGo Master慣用的破壞對手大模樣,使其為「沒目鷹」的手法,就是建立一條「無憂龍」。此「無憂龍」顛覆傳統圍棋在大樣裡「就地做活」的策略,而是在肆虐大模樣空地後,從中腹騰空而去,這是最經典的「現代流圍棋」。(詳見拙著
「現代流圍棋:如何簡單對戰ALPHAGO-II (第一集)」第98頁─「現代流」第25局─「無憂龍」騰空而去,或視頻版
現代圍棋學習之路─AlphaGo Master人機大戰(25/64)「無憂龍」騰空而去)。
最能體現「現代流5原則」第二原則的「圍地致勝原則」戰術就是「棄子戰術」,孫子兵法有謂:「上兵伐謀, 其次伐交 ,其次伐兵, 其下攻城」,用在圍棋裡,也就是說,最高明的戰術是謀略,其次才是攻殺,而圍棋不攻殺的謀略就是「棄子戰術」。例如在我與
Katrain 九段的對局中,我棄掉左上角,在「白82手」就破掉「Katrain 9段」的「大模樣」,在圍地上領先20多目,終局大勝「Katrain 9段」22目半。詳細請看:「
現代流5原則對戰職業九段,9P系列(58─100)─ 陳華夫持白以高明的「棄子戰術」大勝「Katrain 9段」22目半」。
4)「走在外面原則」:是「現代流5原則」的第4原則。依照棋理,在19 x 19棋盤上,從底下算上來,落子在第四條線以上,就算是「走在外面(高位)」,落子在第1、2、3線的「走在裡面(低位)」。傳統圍棋落子棋盤角部時,偏好的位置是「小目」─座標(3,4),也就是一邊在裡面(低位),一邊在外面(高位)。而現代流的AlphpaGo Master偏好兩邊都在外面(高位)的「星位」─座標(4,4)。 並且,AlphpaGo Master慣用的「肩沖」─指落子在比對方棋子兩邊各高一線的位置─更是體現「走在外面原則」,尤其在佈局階段,「肩沖」是落子外邊,重視中腹,輕盈漂浮,腳步快速,不易被捕殺。但,AlphpaGo Zero等的電腦圍棋,喜好「開局進三三」,「三三」是個低為點,違反「走在外面原則」。我在我的視頻「
科學方法學圍棋(11/40)─解謎「開局點三三」困惑」中,詳細解釋過,「開局進三三」並非是好棋,在實力相當的對弈,誰走「開局進三三」,誰的戰敗率大。而
Katrain 九段非常喜歡「開局進三三」,我卻因此屢屢戰勝它。舉個實際的例子:「
代流5原則對戰職業九段,9P系列(25─100)─陳華夫持白「Katrain 9段」開局進三三而大敗17目半」。此局就是
Katrain 九段「開局進三三」導致早在白60手打劫後,就已大敗不可挽回了,終局輸入17目半。