五子棋 AI
五子棋 AI
你执黑先手,AI 执白,三档难度。
怎么玩
- 点击棋盘交叉点落子,你先手(黑子),AI 应手
- 横、竖、斜任意方向先连成五子者胜
- 棋盘 15×15,带标准星位;最后一手有红点标记
- 悔棋:一次撤掉「你 + AI」各一手(AI 思考时不能悔)
- 重开:清空棋盘,还是你先手
- 换难度会自动重开一局
三档难度差在哪
AI 的底层是同一套:棋型评分(活四 / 冲四 / 活三 / 眠三…各有分值)+ Minimax 搜索。难度靠「失误率」和「搜索深度」拉开:
| 难度 | 搜索深度 | 失误率 | 特点 | 实测(对会玩的对手) |
|---|---|---|---|---|
| 简单 | 只看一步 | 25% | 闷头进攻,基本不防守,会漏看你的活三 | 6 局全败 |
| 普通 | 2 层 | 8% | 会堵你的活三、冲四,看不出双三、四三这类复合陷阱 | 势均力敌 |
| 困难 | 4 层(迭代加深) | 0% | 你的活三它必堵,双三陷阱也能抓住 | 4 局全胜 |
(实测数据是电脑上跑仿真对局得到的平均值,你实际玩会有浮动)
AI 是怎么下棋的
简单说分四步:
- 快速规则:自己能一步成五就直接下;你能一步成五就直接堵
- 候选点筛选:只考虑「已有棋子 2 格以内」的空位,空盘走天元
- 评分:每个候选点在四个方向上匹配棋型(活四 100000、冲四 12000、活三 10000…),攻防相加
- 搜索:困难档用 Minimax + Alpha-Beta 剪枝,从 2 层到 4 层迭代加深,1.5 秒内算不完就返回当前最优 —— 所以它不会卡死,最慢也就等一秒多
想赢它的话
- 简单档:随便做个活三它都不一定堵,正常下就能赢
- 普通档:它只防「一手可见的威胁」,试试双三(两个活三共享一点,一手堵不住)或者四三
- 困难档:别想靠单一陷阱赢它,老老实实对弈吧
战绩存在哪
胜 / 负 / 平存在浏览器的 jhp-gomoku-record 里,页面顶部随时能看到。换浏览器、清缓存会清零。
想手动清零,在浏览器控制台执行:
localStorage.removeItem('jhp-gomoku-record')
小贴士
- AI 思考时页面不会卡住,你可以正常滚动、点按钮,状态栏会显示「AI 思考中…」
- 困难档在手机上会慢一些(1.5 秒预算),桌面最快
- 赢的五颗子会画红圈标出来
jhp.studio