昨晚搞到現(xiàn)在:https://github.com/xiaomaomiao/xiaomaomiao.github.io.git
里面注釋非常詳細(xì)。謝謝大家
里面注釋非常詳細(xì)。謝謝大家
2017-08-23
如果大家對(duì)于 AI 感興趣的話,我推薦一本書(shū) Artificial Intelligence: A Modern Approach,這也是我們 AI 課的參考書(shū),講解的可以說(shuō)相當(dāng)全面了。
對(duì)五子棋這種零和游戲來(lái)說(shuō), AI 可以用極小化極大,威脅空間搜索等多種方法實(shí)現(xiàn),但即使是效果最好的 Minimax,仍然是一種變相窮舉,因?yàn)樗鋵?shí)也是對(duì)博弈樹(shù)的深度優(yōu)先搜索。這其實(shí)沒(méi)什么問(wèn)題,因?yàn)榧词故侨祟?lèi),我們也是按照這種方法下棋的,就是對(duì)方下一步會(huì)怎樣等。最關(guān)鍵的地方其實(shí)在于評(píng)價(jià)棋局,也就是評(píng)估函數(shù),這個(gè)才是最難的,才是所謂的機(jī)器學(xué)習(xí)。
機(jī)器想要改進(jìn)這個(gè)評(píng)價(jià)函數(shù),也是需要大量數(shù)據(jù)集的,不過(guò)這些就說(shuō)遠(yuǎn)了
對(duì)五子棋這種零和游戲來(lái)說(shuō), AI 可以用極小化極大,威脅空間搜索等多種方法實(shí)現(xiàn),但即使是效果最好的 Minimax,仍然是一種變相窮舉,因?yàn)樗鋵?shí)也是對(duì)博弈樹(shù)的深度優(yōu)先搜索。這其實(shí)沒(méi)什么問(wèn)題,因?yàn)榧词故侨祟?lèi),我們也是按照這種方法下棋的,就是對(duì)方下一步會(huì)怎樣等。最關(guān)鍵的地方其實(shí)在于評(píng)價(jià)棋局,也就是評(píng)估函數(shù),這個(gè)才是最難的,才是所謂的機(jī)器學(xué)習(xí)。
機(jī)器想要改進(jìn)這個(gè)評(píng)價(jià)函數(shù),也是需要大量數(shù)據(jù)集的,不過(guò)這些就說(shuō)遠(yuǎn)了
2017-07-30
老師的 AI 雖然沒(méi)有用什么高深的算法,但是效果還是不錯(cuò)的。我最近也在寫(xiě)五子棋游戲,雖然是 iOS 版的,不過(guò) AI 這一塊跟語(yǔ)言沒(méi)什么關(guān)系,我分別實(shí)現(xiàn)了貪心算法和極小化極大博弈樹(shù)搜索算法,棋力還算不錯(cuò),大家有興趣的話可以看一下我的源碼:https://github.com/Kesoyuh/Gomoku,如果覺(jué)得有幫助希望能給個(gè) star,謝謝
2017-07-30
看了評(píng)論區(qū) 我才覺(jué)得真的弱智 再說(shuō)一下我自己的見(jiàn)解 再怎么AI都是一段代碼 那所說(shuō)的學(xué)習(xí)能力就是 代碼完善代碼問(wèn)題咯? 如果真的能開(kāi)發(fā)出這種代碼 還要程序猿作甚? 嚴(yán)重科幻片看多了。。。。
2017-07-25
講師的贏法統(tǒng)計(jì)572沒(méi)有問(wèn)題 但是關(guān)鍵是這種遍歷的方式,在做判斷是會(huì)有瑕疵,實(shí)際下五子棋中不往極端說(shuō),6子相連而勝利也是可能的,所以在alert彈窗時(shí)會(huì)出現(xiàn)兩次,7子3次類(lèi)推,這也是我覺(jué)得最難改正的bug,大家有沒(méi)有什么辦法能夠解決?希望能多多討論.
2017-06-08
挺好的算法啊,將贏法數(shù)組序列化成json然后讀取 估計(jì)可以快不少吧
2017-06-07
這個(gè)只會(huì)防守呀。。。沒(méi)下過(guò)的人應(yīng)該是 沒(méi)玩過(guò)5子棋吧
2017-06-06