看板 GO 關於我們 聯絡資訊
看很多不下棋的在那邊放話好像電腦每一步都是對的,覺得可以細想一下程式的原 理,畢竟目前的程式離真理還是有很大的差距的。我也只是個十幾年前的業四,也 不敢說要評棋,但一些簡單好壞應該還是可以講講。 棋類不像POKER、麻將、或撲克牌遊戲是機率遊戲,棋類很多地方是有唯一解的。用 死活詰棋當例子,如果電腦真的只是用機率判斷,勝率最高的那點可能是: [對手應的若是那唯一解電腦必死,下其他任何點電腦都活,勝率99%] 電腦應該選擇這變化嗎?當然不該! 當然我相信AG程式裡會對必勝必敗的點做排除(不然可能連簡單攻殺都會出錯),但 我只是強調AG用所謂"最高勝率"判斷落子的策略也正是目前電腦應該還可以被擊敗 的原因。越早期的著手你要用勝敗機率來判斷越是困難,也很好理解為什麼電腦前 期容易出現惡棋。 柯潔講話那麼托大我覺得也是有原因的(當然我覺得他來下也不見得會贏),就是因 為電腦還是有出現明顯的壞棋。AG有些疑問手有可能是好棋,像11虎完13手拔,或 37尖沖這種過去普遍覺得不太好的,也許事實上並不太虧。 (解釋給X日棋迷:通常13要手拔不會先虎,因為那會把棋下重容易被攻。尖沖通常 認為對方若在3路你尖沖合理,對方在4路你讓人4路圍空通常是虧的,也就是為什 麼評論會認為小李怎樣都該往4路那邊壓而不該實戰往5路壓) 但43黏到61是黑不好的型這應該是沒甚麼爭議的。若實戰李沒有之後幾個緩手讓黑 下到73,而是早一步攻擊那塊弱棋,那應該會是白主動的局面。換個方向想,電腦 中間那坨單官下半天最後還要多花一手73來連回,想也知道不可能好。 因為棋不是機率遊戲,但電腦是用機率來判斷,因此人若能把握這點下出局部最佳 解應是可以在佔些便宜的。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.51.208 ※ 文章網址: https://www.ptt.cc/bbs/GO/M.1457683013.A.1C2.html
wen17: 電腦資源不是無限 而電腦判斷計算難易的方法也跟人不同 03/11 15:58
wen17: 所以可能有部分落子人來看很容易計算出優劣 電腦很難 03/11 15:58
sky0302: 本來就是這樣了 電腦又不是神 只要有失誤就會輸 03/11 15:58
wen17: 於是對於電腦來講自然該去下別種選擇 03/11 15:58
arnold3: 電腦每一步大概都只有5成多把握而已 強就強再不會失常而 03/11 15:59
wen17: 以上優劣說的是局部可以算出絕對優劣的地方. 03/11 15:59
arnold3: 來個天才型的高手把把都出妙手 電腦自然越下勝率越低 03/11 16:00
arnold3: 不需要跟電腦拼計算 用大局意識跟電腦玩 03/11 16:00
ggoutoutder: 真的很多不懂圍棋的在那邊自以為 連叫吃是什麼都不知 03/11 16:02
liaon98: 電腦後面盤面越窄 精確率會越高 人類只有前期有機會 03/11 16:05
aaaba: 你講的就是李喆說的,電腦欠缺邏輯論證的推理 03/11 16:09
notmuchmoney: AlphaGO大局觀還是不錯 能夠在這上面贏過AlphaGO還 03/11 16:09
notmuchmoney: 很難說 03/11 16:09
Max11: 職業棋士的比賽,如果最後靠對方犯錯獲勝,那也不是值得 03/11 16:10
Max11: 記錄的名局。本來圍棋的勝負就是要全部都是合理應手。 03/11 16:11
tomic: 推 中肯! 03/11 16:12
AmuroRay: 沒人在懷疑你說的那些地方AG有問題 關鍵是中前盤看似不1 03/11 16:15
AmuroRay: 好的棋到底有沒有不好 另外一方面 李喆也推測 這種邏輯 03/11 16:16
AmuroRay: 上就證明不好的選擇 可能隨著局勢越緊張接近而越少會作 03/11 16:16
AmuroRay: 出 03/11 16:16
wen17: 多賺一目的價值會隨著局勢僵持緊張甚至劣勢=而變大 03/11 16:17
wen17: 而之後需要負擔的計算複雜度(風險)是固定的 03/11 16:18
shellpig: 其實我覺得現在很大一個點就是,人類覺得的好壞,似乎 03/11 16:18
sky0302: 問題就是當電腦在布局下出怪手 小李並沒有去反擊 03/11 16:18
shellpig: AG不這麼認為,而事後看起來也... 03/11 16:18
wen17: 所以說夠僵持的時候"推測"可能就不會出這些看起來有問題的 03/11 16:18
tonyselina: 你第一行哪來的? 幾乎沒人這樣講 03/11 16:19
notmuchmoney: 如果前兩盤是針對AlphaGO可能的弱點 而下出有別以往 03/11 16:19
notmuchmoney: 的策略/棋風 那在0:2下 後三盤我也認為該回到合理的 03/11 16:19
notmuchmoney: 應手 03/11 16:19
sky0302: 所以根本也無法說那些是好棋 反正人類還是不會學電腦的棋 03/11 16:19
goldduck: 好棋是慢慢累積的 壞棋是後面無法挽回的 03/11 16:19
wen17: 我不算懂圍棋 只看了柯直播 03/11 16:19
wen17: 柯一直說李下的很怪 不像平常的李 03/11 16:19
wen17: 會扯到劫也是說打劫去拼九死一生 03/11 16:20
wen17: 不打劫去拼十死無生 只是局面不會整個崩這樣輸 03/11 16:21
chordate: 問個白癡問題,AlphaGo的型不好那麼顯而易見 03/11 16:21
wen17: 然而李沒打劫 所以柯一直覺得很奇怪 03/11 16:21
liaon98: 那時李也沒時間了 在讀秒 03/11 16:21
wen17: 昨天是有提到有部分是局部優劣 可以直接"計算"比較 03/11 16:22
shellpig: AG下的手法也超出預期呀,不是說用往常下法就一定好 03/11 16:22
chordate: 那為什麼李會連出緩手讓優勢就這樣溜掉了? 03/11 16:22
李當下判斷或許覺得他下的棋大吧。有點像是大場跟急場的問題,吃右上那子目數大 ,但追殺下方黑棋vs黑棋簡單連回安定是有點關係到態勢轉變,這目數不好估計,但 應該是要優先的
wen17: 有提到這邊afgo有部分落子沒有達到最佳解 03/11 16:22
goldduck: 型不是重點 問題是型爛你都贏不了啊 03/11 16:22
wen17: 而全局的子後面柯也沒說afgo下錯 頂多說值得討論 03/11 16:23
liaon98: ch 大 人類不是機器 犯錯不是很正常嗎XD 況解比賽壓力這 03/11 16:23
liaon98: 麼大 03/11 16:24
liaon98: 還要讀秒限時 03/11 16:24
※ 編輯: ilw4e (223.137.51.208), 03/11/2016 16:28:42
arnold3: 拓海一開始跟車也只是讓人覺得還算會開 哪知道最後甩不掉 03/11 16:25
arnold3: 最重要還是自己被逼到超時壓力大被超過去 03/11 16:26
sck921: 有人就說電腦算到終盤了阿 XD 03/11 16:26
chordate: 感謝回答,所以現在職業棋手的見解是 03/11 16:26
chordate: 這盤兩邊都犯錯太多,不能算是名留歷史的一盤棋嗎? 03/11 16:27
shyangs: 來個二日制,柯可以無限call out各研究室 03/11 16:28
liaon98: 第一盤應該歷史意義比較大吧 03/11 16:28
hdjj: 下了一整盤好棋結果緊要關頭下出一手臭棋,結果還是會輸 03/11 16:28
shyangs: 這樣才能下出接近人類最高水準的棋 03/11 16:29
aaaba: 兩日制你打卦,隔天就輸飛了 03/11 16:30
notmuchmoney: 一些話如"捍衛人類尊嚴"都說出來了 恐怕應該考慮合 03/11 16:32
notmuchmoney: 乎過去棋理的應手 03/11 16:32
shyangs: 分佈式擴大硬體規模,和打卦的時間,意義是一樣的 03/11 16:32
notmuchmoney: 手機手殘按到噓 抱歉推回 03/11 16:34
Ebergies: 往四路壓不會讓 AG 的中央有更強的勢力嗎? 03/11 16:35
Ebergies: 昨天壓五最後右邊也還是白子的地吧 03/11 16:36
因為右邊只是拆二,昨天五路壓被壓了幾手上面又被扳到,你應該也看得出來白棋一坨 子擠在一起沒圍到幾目空吧,棋子效率很差。那邊白棋的型真的被佔很多便宜。 又因為白下面也有些勢力,黑那點外勢能成多少空頗有疑問,但白四路圍爽爽的空是實 收的。 ※ 編輯: ilw4e (223.137.51.208), 03/11/2016 16:41:41
darkseer: 我不太懂Monte Carlo搜尋,不過AlphaGo的機率應該不是 03/11 16:41
darkseer: 直覺意義上的機率,比較像是因為無法窮盡變化而做的估計 03/11 16:42
liaon98: 白64古力也是說白棋擠在一團沒效率 是緩著 03/11 16:43
ilw4e: 我知道背後機率沒那麼簡單:D 只是說勝率最高不見得是最佳解 03/11 16:43
ilw4e: 而這個遊戲是有最佳解的(如果有圍棋之神窮舉法:D) 03/11 16:44
AmuroRay: 這遊戲或許有最佳解 但其實過去長久累積的觀念所追求的 03/11 16:45
AmuroRay: 說到底也是勝率最高的解 而未必是最佳解 03/11 16:45
darkseer: 我班門弄斧了XD 我是猜測他應該是很有效率的逼近邏輯 03/11 16:46
marrvosal: 反了,是我下這手勝率有多高,而非對手下這手勝率多高 03/11 16:46
darkseer: 只是人知道要局部考慮,AG不知道,所以在局部上AG有弱點 03/11 16:47
marrvosal: 而且實際上蒙地卡羅不會只搜一層random算 03/11 16:47
marrvosal: 而是在允許的時間內多算幾層,所以唯一解他還是會看到 03/11 16:48
我知道是用電腦來看阿。用上面死活題例子,假設電腦下1,然後測試對手下abcd....xy 都會是電腦贏,只有對手下z是電腦敗的唯一解,電腦的判斷也許認為這點勝率很高(?) 因此程式裡應該會設定如果電腦下1,對手下z,電腦必敗,那電腦則不可下1這種filter ※ 編輯: ilw4e (223.137.51.208), 03/11/2016 16:54:13
marrvosal: 所以電腦會去搜尋下z之後的勝率,會發現這步勝率很高 03/11 16:55
marrvosal: 因此電腦會避免讓對手下z。 03/11 16:56
chordate: 謝謝回答 03/11 16:56
vvrr: 我不認為它會對必勝必敗的點做排除。基本上就是對全局找一個 03/11 16:57
vvrr: 勝率高的解。攻殺不會出錯是因為他把後面變化都看過了 03/11 16:57
shellpig: 能算出來必敗的點可以排除吧,現在是算不完 03/11 17:00
shellpig: 所以例如本文中第二段那種案例,阿發狗不會下的 03/11 17:00
birdy590: 每個可能的選擇會有一個分數, 分數會由該分支往下算 03/11 17:01
birdy590: 所以如果接下來有很大的可能虧損, 分數上自然會被排除 03/11 17:02
birdy590: 有件事大概可以肯定, 就是"AG不會做出虧損太大的選擇" 03/11 17:02
shellpig: 甚至可思考為,在可接受時間內,算出95%的後續變化都能贏 03/11 17:02
kafai: 那算路超深的妙手應該是不一定算得出,小手筋還可以 03/11 17:02
ilw4e: 但必須給對方正解的那node特別高的權重電腦才知道不能下吧 03/11 17:03
birdy590: 因為 AG 根本只是在計算 它上不知道自己正在下圍棋 03/11 17:03
shellpig: 剩下的絕對不夠時間算不完,那就這樣子下了 03/11 17:03
birdy590: 事實也證明 棋評認為是臭手的 並無法從中獲得太多利益 03/11 17:04
marrvosal: 蒙地卡羅有點難講清楚,但是電腦在這塊不太會出錯 03/11 17:05
birdy590: 第三段的假設是沒錯 但是好像要在貓脖子上掛鈴鐺一樣 03/11 17:06
birdy590: 想在早期靠"不是很好的著手"取得利益, 本身也很難做到 03/11 17:07
birdy590: AlphaGo 當然不是無敵, 單機都還是可以擊敗分散式了 03/11 17:08
marrvosal: 樓上,當然,alphaGo還沒有train到最好 03/11 17:08
marrvosal: 就算train到最好,也不一定能到圍棋之神的實力 03/11 17:09
birdy590: 問題是要壓過人類 實力不需要到圍棋之神啊 @@ 03/11 17:11
marrvosal: 是的。 03/11 17:14
birdy590: 所以單機和分散對下是不錯的指標, 愈靠近 100%, 就知道 03/11 17:16
birdy590: 實力愈強了 03/11 17:16
marrvosal: 實際上alphaGO進步的地方並非單機跟離散 03/11 17:17
marrvosal: 離散勝率高只是因為它算得比較快,可以多算一點 03/11 17:17
marrvosal: alphaGO進步的話則是在算之前的候選挑選進步 03/11 17:18
marrvosal: 要知道實力有沒有變強應該是用新版的跟舊版的比較 03/11 17:18
birdy590: 理論上算的愈深愈有機會找到更佳解 新舊只差在訓練 03/11 17:20
birdy590: 分散式勝率提高代表運算加深以後正確率有提高 03/11 17:21
marrvosal: alphaGO的重點就在訓練,搜尋多深都只是硬體的問題 03/11 17:23
marrvosal: 我甚至認為,當train的越好,單機的勝率會提升 03/11 17:24
birdy590: 單機或分散 兩邊都 train 過一樣的東西啊 /_\ 03/11 17:26
birdy590: 分散能找到更多確實更好的選擇 才是代表訓練成功不是嗎? 03/11 17:27
marrvosal: 找到好的選擇這件是對單機跟分散是一樣的 03/11 17:27
marrvosal: 差別在於分散從好的選擇裡面挑出最好的會更好 03/11 17:28
marrvosal: 所以如果deep learning 已經好到幫你挑的非常好 03/11 17:28
marrvosal: 那你其實不太需要運算量就能選出最好的那步 03/11 17:28
marrvosal: 此時就不太需要分散運算 03/11 17:29
birdy590: 我覺得在前中段講這個沒啥可能耶 後段則已經是公認的強 03/11 17:29
Verola: 同marrvosal 覺得單機勝率越高才表示成長 克服了運算速度 03/11 20:46
RoundKick: 你的解釋一日棋迷看的懂才有鬼 有的話樓下幫我吹 03/11 20:49
NaoGaTsu: marrvosal的解釋完全正確。 03/11 21:42
Palpatineli: 我這種只上過AI intro的人都看得出來你講什麼胡話。 03/11 22:37
Palpatineli: 蒙地卡羅基於的本來就是最大最小樹。維基一下最大最 03/11 22:37
Palpatineli: 小樹就完全解答你這篇的外行問題了。 03/11 22:37
ilw4e: 哥沒上過AI intro,你可以在板上開課,請 03/12 00:25
ilw4e: 這裡就有說會有我提的疑問了,加入minimax可以理解,但那是 03/12 00:39
ilw4e: game theory的東西跟monte carlo tree不是直接關係,謝謝 03/12 00:40
ilw4e: 總之就是加一個選擇最好的最差解的判別來濾掉必敗局面 03/12 00:42
darkseer: 我還是覺得不是,Monte Carlo tree search理論上會收斂 03/12 02:40
darkseer: 到minimax,我猜測這裡也是類似的原理:自己和對方的好 03/12 02:41
darkseer: 手在MC tree裏頭會走得特別深。如果對『好手』的判斷 03/12 02:43
darkseer: 夠準就可以避免你說的問題。 03/12 02:43
darkseer: 我也不知道我說的對不對,marrvosal要不要發一篇教學XD 03/12 02:48