一种基于自博弈模型的智能空战模仿学习训练样本生成方法与流程

    专利查询2022-07-08  152



    1.本发明涉及人工智能技术领域,具体涉及一种基于自博弈模型的智能空战模仿学习训练样本生成方法。


    背景技术:

    2.模仿学习是解决空战智能决策问题的一条有效途径。这类方法收集人类专家的决策序列,采用有监督的方法训练一个机器学习模型。这个模型的输入是当前时刻的状态值,输出是决策,表示在这种状态下要采取的动作。
    3.标准的模仿学习算法有效的一个前提是需要大量的训练样本。对于空对空对抗问题,状态空间和动作空间巨大。如果完全采用人类专家来生成这些有监督的样本不具有现实性,需要花费巨额的时间和经济成本。而少量的训练样本又无法保证模型的有效性。


    技术实现要素:

    4.本发明的目的在于提供了一种基于自博弈模型的智能空战模仿学习训练样本生成方法,其基于自博弈的思路。该方法可以自动生成大量的高质量训练样本,从而摆脱对人类专家的依赖,降低样本生成的成本。
    5.为了解决上述技术问题,本发明提供一种基于自博弈模型的智能空战模仿学习训练样本生成方法,该方法包括如下步骤:
    6.s1:状态空间设计:状态是神经网络的输入数据,状态由己方、对方所有武器的信息构成;每架飞机可以获取的状态包括其自身的状态、己方飞机的状态,以及可能探测到的敌方飞机状态组成;
    7.s2:动作空间设计:动作是强化学习模型的输出值,决定了智能体的行为,并影响系统的后续演化;动作空间是对飞机的控制;对于每架飞机,其动作空间由以下部分组成:
    8.1)飞行控制,包括速度,航向,高度,姿态;
    9.2)开/关雷达;
    10.3)开火:控制各种武器进行开火,并根据需要指定射击目标;
    11.s3:神经网络结构设计:由于可以准确地获得系统状态的值,属于完全观测问题,因此算法采用全连接神经网络结构;神经网络同时实现分类与回归任务,对应于离散型动作和连续型动作;
    12.神经网络的输入为状态向量,根据实际需求而定;对于类别型变量,采用向量化编码以提高算法的精度;中间是全连接层,采用relu/sigmoid激活函数;对于离散动作,使用softmax回归,输出执行每种动作的概率p(a|s),是一个多项分布;对于连续动作,假设动作服从正态分布n(μ,σ2),神经网络预测出正态分布的均值μ和方差σ2;运行时,对于离散动作,系统按照神经网络输出的概率分布进行采样,具体做法是执行概率最大的动作;对于连续型动作,运行时根据正态分布的均值和方差进行采样,得到要执行的动作;
    13.s4:对抗样本生成:自博弈由生成器与判别器组成;所述生成器用于生成决策序
    列,所述判别器用于判断决策序列是专家生成的还是生成器生成的,它的输出被用于构建奖励函数。
    14.进一步,s1中对于每一架己方飞机,可以获得的信息包括:1.飞机的经度,纬度以及高度;2.飞机的飞行速度;3.飞机的id,采用one-hot编码;4.飞机是否存活,采用one-hot编码;5.航向;6.是否被敌方锁定,采用one-hot编码;7.自身携带武器的状态;对于每一架对方飞机,可以获得的信息包括:1.飞机的经度,纬度以及高度;2.飞机的飞行速度;3.飞机的id,采用one-hot编码;4.飞机是否存活,采用one-hot编码;5.航向。
    15.进一步,s2中对于离散型动作,如有需要,将使用向量化编码;对于连续型动作,直接根据神经网络的输出值进行采样执行;具体地,对于服从正态分布的动作,根据均值与标准差进行采样,产生一个随机数,然后以该随机数作为动作执行。
    16.进一步,s3中对于离散动作,采用交叉熵损失;损失函数定义为:
    [0017][0018]
    其中n为训练样本数,yi为第i个样本的真实标签值,采用one-hot编码,为第i个样本的预测值;神经网络的预测值是经过softmax回归变换的概率值;
    [0019]
    对于连续型动作,采用欧氏距离损失函数:
    [0020][0021]
    其中n为训练样本数,yi为第i个样本的真实标签值,为第i个样本的预测值;为了平衡离散型动作和连续型动作的重要性,损失函数中交叉熵和欧氏距离损失函数带有权重,可以人工设置。
    [0022]
    进一步,s4的算法首先初始化一个决策函数,以及判别器模型;接下来循环更新判别器和策略函数;每次迭代时首先更新判别器模型,使得它对专家生成的决策序列、策略函数生成的决策序列的分类准确率最大化;接下来更新策略函数的参数,使得它获得的累计奖励最大化;生成器是标准的强化学习算法,可以采用trpo或ppo算法,实现最优策略的搜索。
    [0023]
    本发明具有如下有益技术效果:
    [0024]
    1、可以不依赖于人类专家,快速生成大量的模仿学习样本,降低样本的生成成本;
    [0025]
    2、与人类专家相比,能够探索更大的动作空间。
    附图说明
    [0026]
    为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
    [0027]
    图1为本发明中的神经网络结构设计的结构图。
    具体实施方式
    [0028]
    以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描
    述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
    [0029]
    本发明方案的具体实现和技术细节如下:
    [0030]
    一、状态空间设计
    [0031]
    状态空间的设计是强化学习算法实现时的基本要素之一。状态是神经网络的输入数据,需要经过合理的设计以提高算法的精度。这里的状态由己方、对方所有武器的信息构成。
    [0032]
    每架飞机可以获取的状态包括其自身的状态、己方飞机的状态,以及可能探测到的敌方飞机状态组成。对于每一架己方飞机,可以获得的信息包括:
    [0033]
    1.飞机的经度,纬度以及高度;
    [0034]
    2.飞机的飞行速度;
    [0035]
    3.飞机的id,采用one-hot编码;
    [0036]
    4.飞机是否存活,采用one-hot编码;
    [0037]
    5.航向;
    [0038]
    6.是否被敌方锁定,采用one-hot编码;
    [0039]
    7.自身携带武器的状态
    [0040]
    对于每一架对方飞机,可以获得的信息包括:
    [0041]
    1.飞机的经度,纬度以及高度;
    [0042]
    2.飞机的飞行速度;
    [0043]
    3.飞机的id,采用one-hot编码;
    [0044]
    4.飞机是否存活,采用one-hot编码;
    [0045]
    5.航向。
    [0046]
    除飞行器之外,算法还支持其他类型的目标,包括地面放空武器等。它们的状态数据统一作为神经网络的输入向量。
    [0047]
    二、动作空间设计
    [0048]
    动作是强化学习模型的输出值,决定了智能体的行为,并影响系统的后续演化。这里的动作空间是对飞机的控制。对于每架飞机,其动作空间由以下部分组成:
    [0049]
    1.飞行控制,包括速度,航向,高度,姿态等;
    [0050]
    2.开/关雷达;
    [0051]
    3.开火:控制各种武器进行开火,可能需要指定射击目标
    [0052]
    对于离散型动作,如有需要,将使用向量化编码。对于连续型动作,直接根据神经网络的输出值进行采样执行。具体地,对于服从正态分布的动作,根据均值与标准差进行采样,产生一个随机数,然后以该随机数作为动作执行。
    [0053]
    三、神经网络结构设计
    [0054]
    由于可以准确地获得系统状态的值,属于完全观测问题,因此算法采用全连接神经网络结构。神经网络同时实现分类与回归任务,对应于离散型动作和连续型动作。
    [0055]
    神经网络的输入为状态向量,根据实际需求而定。对于类别型变量,采用向量化编码以提高算法的精度。中间是全连接层,采用relu/sigmoid激活函数。对于离散动作,使用softmax回归,输出执行每种动作的概率p(as),是一个多项分布。对于连续动作,假设动作服从正态分布n(μ,σ2),神经网络预测出正态分布的均值μ和方差σ2。运行时,对于离散动作,
    系统按照神经网络输出的概率分布进行采样,具体做法是执行概率最大的动作。对于连续型动作,运行时根据正态分布的均值和方差进行采样,得到要执行的动作。神经网络的结构如图1所示。
    [0056]
    对于离散动作,采用交叉熵损失。损失函数定义为:
    [0057][0058]
    其中n为训练样本数,yi为第i个样本的真实标签值,采用one-hot编码,为第i个样本的预测值。神经网络的预测值是经过softmax回归变换的概率值。
    [0059]
    对于连续型动作,采用欧氏距离损失函数
    [0060][0061]
    其中n为训练样本数,yi为第i个样本的真实标签值,为第i个样本的预测值。为了平衡离散型动作和连续型动作的重要性,损失函数中交叉熵和欧氏距离损失函数带有权重,可以人工设置。
    [0062]
    四、对抗样本生成
    [0063]
    自博弈由生成器与判别器组成。在这种方法中,生成器用于生成决策序列,判别器用于判断决策序列是专家生成的还是生成器生成的,它的输出可以被用于构建奖励函数。算法的流程如下所示。
    [0064]
    input:专家决策序列初始策略以及判别器的参数θ0,w0[0065]
    for i=0,1,2,...do
    [0066]
    运行当前策略采样出决策序列τi[0067]
    更新判别器的参数:
    [0068][0069]
    更新策略的参数:
    [0070][0071]
    end for
    [0072]
    output:π
    θ
    [0073]
    算法首先初始化一个决策函数,以及判别器模型。接下来循环更新判别器和策略函数。每次迭代时首先更新判别器模型,使得它对专家生成的决策序列、策略函数生成的决策序列的分类准确率最大化;接下来更新策略函数的参数,使得它获得的累计奖励最大化。生成器是标准的强化学习算法,可以采用trpo,ppo等算法,实现最优策略的搜索。
    [0074]
    最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
    转载请注明原文地址:https://tc.8miu.com/read-2354.html

    最新回复(0)