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 自己用 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
本文来自微信公众号:量子位 (ID:QbitAI),作者:萧箫
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。