论文阅读:《Application of Deep Reinforcement Learning in Maneuver Planning of Beyond-Visual-Range Air Combat》
本文记录笔者近期阅读的一篇论文所产生的部分记录。论文主题是训练智能体控制飞机进行超视距空战下的机动。

Intro
论文主要仨贡献:
- 指出了超视距空战下的导弹攻击区域(missile attack zone)和导弹杀伤包络(missile kill envelope)。
- 设计了奖励函数。
- 给DQN加了LSTM模块,用来处理从状态到动作的映射。
空战环境设计
重点看导弹攻击模型。
攻击包络(attack envelope)是以目标为中心的封闭区域,攻击者在这个区域内发导弹有特定的概率命中。有最小最大边界和敌机无法逃脱的边界。
击杀包络(kill envelope)是以攻击者为中心的封闭区域,描述攻击者携带的空空导弹的攻击范围。根据导弹从发射到命中的时间,可以分割这个区域。
二者从不同角度描述作战规则。攻击包络非常直观地表达了作战终止的情况,若攻击者能保持处在不可逃离包络(non-escaping envelope)内一段时间,则基本可以宣告攻击者胜利。击杀包络能更好地描述任意时间下的情势和威胁程度。

攻击包络(attack envelope)
划分依据:
- 导弹的飞行高度范围。
- 导弹命中目标前的最小飞行速度。
- 安全距离。
- 导弹的最长飞行时间。
分类:
- 最大攻击包络(maximum attack envelope)
满足上述条件的最大范围,反映了导弹最极限的性能。
- 不可逃离包络(non-escaping envelope)
攻击者在这个区域发射导弹,目标无论采取何种机动都不能逃离导弹,导弹有最大击杀概率。
- 安全包络(safety envelope)
同时也是最小攻击包络(minimum attack range)。这个区域规定攻击者能否避免自己导弹爆炸产生的碎片与冲击波对自己的伤害。
击杀包络(killing envelope)
目标可以通过机动躲导弹,规定击杀包络可以根据目标的不同机动情况估计导弹命中率。
- 最大击杀包络(maximum kill envelope)
规定了目标不做任何机动,攻击者导弹能命中目标的最远距离。
- 90度转弯击杀包络(90° turn kill envelope)
超过这个范围,目标可以通过90°转弯来规避导弹。
- 180度转向击杀包络(180° rotation kill envelope)
超过这个范围,目标可以先90°转弯改变导弹跟踪轨迹,再最后做一次90°转弯加速逃离,消耗导弹动能,最终规避导弹。
- 最小安全发射包络(minimum safe emission envelope)
规定多远距离下攻击者导弹爆炸产生的碎片不会伤害到攻击者自身。
RL框架
状态空间

状态值会映射到
三类状态量:只和本机有关的量、和能量有关的量(高度平方,速度平方这种)、两机相对量。
动作空间


看内容像是离散动作,把NASA提出的7种基本机动给扩展了。
奖励函数



用到蒙特卡洛搜索树。
分为当前状态奖励和统计奖励(对局结束奖励)。
当前状态奖励分为四部分:边界奖励、角度奖励、距离奖励、导弹攻击奖励。
边界奖励:智能体出界给-100。没出界,有一个基础值2,用蒙特卡洛树搜索得到最终值。
角度奖励:鼓励本机与敌机对抗。
距离奖励:防止让本机离敌机越来越远,做无意义决策。
导弹攻击奖励:用到攻击区域。
训练算法和策略网络设计



模拟实验
场景设计

想定每15轮换一次。
训练与测试
打30000局,每15局记录一次平均奖励。




对比和讨论
对比和讨论算法的效果和复杂程度。




