摘要
此前的 2v2 行为克隆(让神经网络模仿规则 AI 的选择)在“移动”类动作上 478 次全错。一个可能的原因是:一次决策里有几十个移动候选,而模型拿到的动作描述里几乎没有“走到这一格会怎样”的信息。
本实验只做一件事:写一个编码器,把每个合法动作描述成一行数字(特征向量),补上动作与局面的关系信息;再写一个从已保存对局生成训练数据的工具。没有训练,也没有对战——训练要等规则 AI 的验证有结论后另立协议。
要回答的问题
能否只用公开观察和合法菜单,把每个动作编码成可区分、确定、没有隐藏信息的特征?
方法
在已有公开特征的每个动作行后追加四组信息:
- 公开路线风险:路线长度、已知停点、守望(敌人在路线上可触发的攻击)数、进入地形数、预计路线伤害;
- 公开攻击序列(仅攻击动作):预计对敌、对己的生命损失占比;
- 落点几何:落点到最近敌人的距离及变化、相邻敌友数、下回合可能够到该格的敌方兵组数(按公开速度与六角格距离近似,不计障碍);
- 生物静态特征:行动者与目标的基础数值、是否远程/飞行、反击上限、技能数等,取自公开兵种目录。
未知值有单独的“已知”标记位,不当作 0;不输入任何规则 AI 的评分。
数据生成器从已保存对局逐步重放(每步事件字节必须一致),在指定一方每个决策前投影公开观察与菜单并编码;标签取对局记录里策略写下的动作,没有记录就逐个还原菜单动作比对。
结果
- 一个开局局面(红方第一个行动单位):状态 1282 维,每个动作 351 维;菜单 376 个合法动作(244 地块法术、82 移动、45 单位法术、3 攻击、等待、跳过),82 个移动行全部不同;编码一次 0.115 秒。
- 编码器 6 项测试 + 数据生成器 4 项测试,共 10 项通过(16.60 秒):维度一致、移动落点可区分、输入深拷贝后结果相同、未知生物全 0 加缺失位、只取指定一方、日志分歧时报错。
- 冒烟:一局 2.9 秒、26 个决策、2569 行,两个输出文件共约 170KB;按此估算 1200 局单核约 1 小时、约 200MB。这只是工具检查,不是实验数据。
失败与负结果
第一次测试 6 项全部失败:生物表缓存用的键是不可哈希的目录对象;改为按目录内容哈希缓存后通过。
局限
下回合可达只按速度和距离,不计障碍与行动顺序;攻击序列是公开平均伤害场景;生物静态值不含英雄加成。特征是否真能改善移动学习,还没有任何证据。
结论与下一步
编码器与数据生成器可用。训练(模仿冻结的规则 AI,按来源隔离训练/开发集,报告移动类内 Top-1/Top-3)需另立协议后才开始。
Comments