楠木軒

ChatGPT學會下棋“精髓”,把人類給整不會了,網友:預判不了

由 諸葛寒香 發佈於 體育

蕭簫 發自 凹非寺

量子位 | 公眾號 QbitAI

ChatGPT對戰國際象棋AI,不到15秒就讓人大受震撼。

開局ChatGPT執黑,國際象棋AI執白,雙方有來有往,ChatGPT甚至主動出擊,逼退對方的象(主教)

看起來會是一場激烈較量,直到ChatGPT突然嘎嘣一下,吃掉了自己的象!

△奇怪的王車易位操作

事情到這裏開始不對勁起來。

無論是棋盤上憑空出現的第9個黑兵(國際象棋黑白各只有8個兵)

還是突然把斜線上的象吃掉的馬:

△馬本來只能走“日”字

簡直不把規則放在眼裏有木有!

這般神奇操作吸引了一大波網友前來圍觀,有人直呼“這不就是我5歲表弟想贏棋的耍賴操作?”

不過也可以説,ChatGPT分分鐘學會了人類下棋精髓——耍賴……

所以這場神奇的AI國際象棋大戰,究竟誰贏了?

發明了一套“全新”規則

對戰雖然只有1分32秒,但ChatGPT卻整出了一套船新的規則。

其一,可以“隔山打牛”,除了馬以外,甚至連皇后、車和象都可以隨便越子(跨過某個棋子到它後面去)

其二,不在棋盤上的子(被吃掉或不存在)可以原地復活,甚至當場吃掉對方的子:

△死去的皇后突然攻擊我

有網友調侃,莫非這就是傳説中的殭屍戰術?

其三,所有的子都可以“不按常理出牌”,例如車不僅可以越子,甚至還能走斜線……

劇透個結局,ChatGPT最後輸了,但依舊是以違反規則的形式——主動送將!

有網友看完後調侃,這大概就是Calvinball國際象棋大師吧。

(Calvinball,一種不受規則束縛的遊戲方式,唯一的規則是“不能使用與上一場遊戲相同的規則”)

還有網友對ChatGPT的對手錶示同情:這哪預判得了?(手動狗頭)

所以,在這場亂鬥中贏過ChatGPT的對手來歷如何?

充當ChatGPT對手的AI名叫Stockfish,也是個歷史悠久的開源國際象棋引擎了。

它基於一個叫做NNUE的神經網絡開發,於2008年發佈,最初結構非常簡單,就是一個4層全連接神經網絡,配合alpha-beta搜索使用。

這些年經過了幾次迭代,已經到了第四代NNUE,在架構上進行了一些優化:

現在Stockfish也已經迭代到了版本15.1,據説與Stockfish 14對戰中,勝場數達到敗場數的9倍。

作為一個經典國際象棋AI,它這些年經常出現在各種新AI論文中,作為下象棋的性能對比。

例如DeepMind推出的AlphaZero就拿它做了對比,表示自己的性能比Stockfish更高。

即便如此,Stockfish贏人類國際象棋高手還是綽綽有餘的。

“ChatGPT更適合寫個象棋程序”

看完比賽後不少人認為,ChatGPT顯然不適合下國際象棋。

有人試着和ChatGPT下了盤國際象棋,並在它做出錯誤操作時和它解釋規則,每次ChatGPT都會主動道歉,“對不起,我知道了”,但還是堅持做出錯誤操作:

大概這就是ChatGPT版本的“我錯了,但我不改”吧(手動狗頭)

不過也有網友覺得,ChatGPT能下象棋已經很神奇了。

它作為一種語言模型,其實擅長的方向不是國際象棋遊戲,而更適合去寫一套國際象棋引擎

事實上,不久前還真有網友這麼做了,讓ChatGPT自己用Python編寫一套象棋程序。

首先讓它生成一套棋盤,並打印出來,效果如下:

隨後,讓ChatGPT根據國際象棋規則,制定棋子移動的方法,包括兵、車、馬、象、後、王六種。

最後,再讓ChatGPT生成一個函數,能充當機器人bot和對手進行對戰。

感興趣的小夥伴們,可以去試試ChatGPT寫的這套引擎,究竟好不好用~

那麼,你覺得ChatGPT的棋力如何呢?(手動狗頭)

ChatGPT寫的國際象棋程序:

https://medium.datadriveninvestor.com/writing-a-chess-program-in-one-hour-with-chatgpt-67e7ec56ba5d

參考鏈接:

[1]https://www.reddit.com/r/ChatGPT/comments/10ypvie/i_placed_stockfish_white_against_chatgpt_black/

[2]https://twitter.com/JoINrbs/status/1624351822621315072

[3]https://stockfishchess.org/blog/

[4]https://github.com/official-stockfish/Stockfish/pull/3927

— 完 —

量子位 QbitAI · 頭條號簽約