精華區beta GO 關於我們 聯絡資訊
※ 引述《Equalmusic (Wintertraveller)》之銘言: : 其實我比較想知道的是, 為什麼要教電腦一定跟人類一樣的下棋方式? : 在電腦裡面輸入定石, 告訴電腦哪邊實力大, 勢力的概念是怎樣 : 然後用 points 來讓電腦選擇該下哪邊, 這是人類的思考方式 : 大家都知道電腦優秀的地方應該是在演算速度方面 : 我從很久以前就在想, 能不能用類似做數學的方法來讓電腦下圍棋? : 就像做完美結局問題一樣, 用 n = 1, 2, 3, 4, 5...去尋找規律 : 簡單的說, 就是在棋盤上, 對於所有的 n 屬於自然數, 且 n = [1, 19] : 用 n*n 的棋盤去讓電腦算「所有的」可能性 : 最初, 唯一需要輸入資料庫的是死活的棋形 : 知道怎樣是肯定活型, 無論如何不可能打入, 這樣就可以算地盤 : 最後讓電腦記住全部電腦會勝的那種最終盤型 : 然後每場棋電腦就只是排出他會勝的那種棋型而已 : 當然, 19*19 的盤面太大, 用超級電腦來算也不可能算完所有的可能 : 所以我的想法是, 就先讓電腦算到 5*5 的盤面, 或是 9*9 的盤面 : 然後根據 1*1 ~ 9*9 去尋找他的數學規律 : 最後也許就可以找到一套可讓電腦單純靠基本規則來運算 : 從而在 19*19 的棋盤致獲最終的勝利? : (如果真的可以的話, 那肯定會出現神蹟般的手筋吧 @_@) : 畢竟, 電腦再怎麼模仿他還是電腦, 價值判斷如果不能精確的用數學定義 : 那即使再過一百年電腦也不可能贏人 你想的其實是很好的點子 事實上,有很多人也覺得 為什麼程式一定要學習人類的思考模式? 因此,有一支電腦圍棋的作法就是: 定幾個有待定係數的評分函數 然後用幾個不同的初始係數評分函數的程式對下 然後大家根據勝負狀況來 "進化" (同時也會加入一些變異) 這是類似基因演算法的做法 還有另一支用到了我比較不熟的類神經網路來做 這可能就要夠熟悉的人才能介紹了 但是,有沒有人試著把 "所有可能" 算出來和歸納呢? 這個想法的實作其實是存在的! 像是象棋的殘局資料庫就是在子少時 可以把同樣子力分配之下所有可能盤面都列出來, 算出勝負關係 以某種方式編碼存起,如果有實戰時遇到之前算出過的子力分布 那就直接去讀資料庫就不可能會走錯了! 圍棋也是有類似應用的,像是一些簡單的對打入空的應法之類 ( 有人推文問, 循環盤面的情形又如何呢?其實是有方法的,不 過這就得用到棋規了,無論象棋還是圍棋,都有相應的規定, 程式都有方法可以處理,沒問題! ) 不過,可能性太大還是讓問題變得很難解決 象棋的情況還好,以圍棋來說,nxn 的棋盤有 n^2 格 所有的格子上會有 3 種可能,黑、白和無 因此所有的可能盤面有 3^(n^2) 種 就算 n=5,也要存 3^25 = 847288609443 這麼多資料 一個盤面如果有輸、贏、和三種可能 那存下一筆資料要 2 bit (舉例: 00 輸, 01 贏, 10 和) 算起來是 847288609443*2 = 1694577218886 bits = 211 Giga bytes (都比我的硬碟大了) 就更別說你要在上面作什麼分析和運算了... 既然太大的盤面做不了,就只好作盤面更小(圍棋)或子力少(象棋)的 現在的確有人在研究這些東西,不過這實在不是簡單的問題 有什麼結果的,據我所知並沒有很多 我不知道未來的發展趨勢是否會是在這上面 不過搜尋的方法畢竟還是目前的主流 畢竟打敗西洋棋人類冠軍的深藍就是用這一套 ( 也許圍棋就要另闢新路了! ) 會想說這些東西,其實是有點私心的 電腦棋類的發展其實很需要棋力高的棋手一起幫忙 不過往往遇到的是不會下棋的程式設計師 要不就是不懂程式設計原理的高強棋手 我自己相信,把電腦的棋力提升 也是有助於人類自己的棋力提升的 希望藉由這樣聊一聊, 能夠讓更多高手棋手想要多接觸一點程式的概念 也許將來打敗圍棋人類冠軍的程式是臺灣的團隊所研發的也不一定 :) 圍棋板還是多講點圍棋的事, 我先就此先打住了 希望眾高手們不吝多講一點棋囉 :) -- 有時候,遺忘,是令人快樂的。什麼時候?當然是有人傷了你的心的時候。  存心傷你的那個人,固然是故意和你過不去,但是被傷了心而耿耿於懷的你  ,卻是和自己過不去了。所以,記性不好的人,通常會是比較快樂的人,也  是比較不容易被擊倒的人。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.55 ※ 編輯: ledia 來自: 140.112.30.55 (04/18 04:54)
snowrain:對啊 同時精通圍棋跟程式的高手是很重要的 61.62.133.223 04/18
Charon:這種問題我覺得是種兩難,因為棋力養成要時間, 140.116.247.2 04/18
Charon:程式能力養成或正確一點說是演算法能力養成更需要 140.116.247.2 04/18
Charon:時間。除非可以將兩者結合,能如許舜欽老師作得 140.116.247.2 04/18
Charon:那麼好的,至少在圍棋程式研究上,還沒有出現, 140.116.247.2 04/18
Charon:不是沒有,只是還沒有很出色的。 140.116.247.2 04/18