技术领域
[0001] 本发明涉及计算机技术领域,特别是指一种基于鲁棒强化学习与对抗强化学习的无人机控制方法及装置。
相关背景技术
[0002] 四旋翼无人机具有高机动、可悬停、结构简单等特点,在诸如军事、救灾、测绘、农业等很多领域已经取得广泛应用。考虑到现实环境中存在各种不确定因素,如外界风扰、环境变化、通信延迟等,要求无人机的控制器能够具备自主优化能力,以适应复杂的环境,而传统的控制方法在复杂情况下难以满足控制要求。近年来,深度强化学习在很多领域都取得了成功。深度强化学习是一种无需人工干涉,主动与环境交互,通过试错来学习的方法。将深度强化学习用于无人机控制可以让控制器具备自主优化能力,通过训练抵消扰动等系统不确定性,提高控制性能。
[0003] 考虑到系统训练的成本和安全性,直接使用深度强化学习可能需要大量训练和试错,因此成本高风险大。需要利用已知的系统信息,结合具备基础控制能力的基础控制器,以在训练初期为系统提供基础的性能保证。考虑到现实环境中由于存在计算延迟、执行器延迟、通信延迟导致的输入延迟问题,传统的深度强化学习控制方法难以处理延迟问题,需要对深度强化学习方法进行改进,以抵消延迟带来的影响。此外,考虑到仿真环境中不确定性扰动的建模很可能与真实环境存在差别,导致训练好的控制器抗扰能力较差,不能满足真实环境下一些极端情况的控制性能。因此需要采用更加合理的训练方式,提高控制器的抗扰能力。
具体实施方式
[0045] 下面结合附图,对本发明中的技术方案进行描述。
[0046] 在本发明实施例中,“示例地”、“例如”等词用于表示作例子、例证或说明。本发明中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。此外,在本发明实施例中,“和/或”所表达的含义可以是两者都有,或者可以是两者任选其一。
[0047] 本发明实施例中,“图像”,“图片”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。“的(of)”,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
[0048] 本发明实施例中,有时候下标如W1可能会表示为非下标的形式如W1,在不强调其区别时,其所要表达的含义是一致的。
[0049] 为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
[0050] 本发明实施例提供了一种基于鲁棒强化学习与对抗强化学习的无人机控制方法,该方法可以由基于鲁棒强化学习与对抗强化学习的无人机控制设备实现,该基于鲁棒强化学习与对抗强化学习的无人机控制设备可以是终端或服务器。如图1所示的基于鲁棒强化学习与对抗强化学习的无人机控制方法流程图,图2是本发明实施例提供的整体框架图,该方法的处理流程可以包括如下的步骤:
[0051] S1、初始化无人机系统,获取无人机的当前状态;
[0052] 一种可新的实施方式中,S1中,初始化无人机系统,获取无人机的当前状态,包括:
[0053] 初始化无人机的强化学习控制模块的评价网络和动作网络;
[0054] 初始化鲁棒控制模块参数;
[0055] 从环境中采集得到当前的状态x(t)。
[0056] 一种可行的实施方式中,首先对四旋翼无人机进行系统建模,如下:
[0057]
[0058] 其中px(t)、py(t)、pz(t)、 θ(t)、ψ(t)分别表示在x、y、z方向以及俯仰角、翻滚角、偏航角的跟踪误差。d1、d2、d3、d4、d5、d6表示不确定性扰动。m表示无人机的质量,Ix、Iy、Iz表示无人机在x、y、z三个轴上的转动惯量,τ为输入延迟。F1、F2、F3、F4为控制信号,其和电机的实际控制量u1、u2、u3、u4具有如下关系:
[0059]
[0060] 为了便于鲁棒控制模块设计,四旋翼模型可以表示为如下状态方程:
[0061]
[0062] 整个系统被划分为位置环子系统和姿态环子系统,其中xp(t)、xa(t)分别是当前位置误差和姿态误差,Mp(x(t))、Ma(x(t))为非线性部分,qp(x(t))、qa(x(t))为不确定性扰动,其中
[0063]
[0064] 两个子系统的矩阵形式相同,参数不同,其中Cp1=0,Cp2=0,Cp3=‑g,
dp1=d1,dp2=d2,dp3=d3,da1=d4,da2
=d5,da3=d6。
[0065] 外界只给定x、y、z和偏航角ψ的目标值,因此可以直接计算得到位置子系统的误差Txp(t)。对于位置环子系统,其控制信号Fp(t‑τ)=[Fx(t‑τ),Fy(t‑τ),F4(t‑τ)],其中Fx(t‑τ)和Fy(t‑τ)是x、y方向的虚拟控制信号,用于反解公式求俯仰角和翻滚角的目标状态,如下所示:
[0066]
[0067] 得到的俯仰角和翻滚角的目标状态将用于在姿态环子系统计算姿态误差xa(t),T姿态环子系统的控制信号为Fa(t‑τ)=[F1(t‑τ),F2(t‑τ),F3(t‑τ)]。最后根据控制信号F1、F2、F3、F4即可得到电机实际控制量u1、u2、u3、u4。
[0068] S2、基于当前状态,计算无人机的鲁棒部分控制量,基于鲁棒部分控制量判断是否需要触发强化学习控制,若是,则进行鲁棒部分控制量的扩展,并通过强化学习控制器和对抗网络分别输出准确控制量;若否,则直接将鲁棒部分控制量作为准确控制量。
[0069] 一种可新的实施方式中,S2中,基于当前状态,计算无人机的鲁棒部分控制量,基于鲁棒部分控制量判断是否需要触发强化学习控制,若是,则进行鲁棒部分控制量的扩展,并通过强化学习控制器和对抗网络分别输出准确控制量;若否,则直接将鲁棒部分控制量作为准确控制量,包括:
[0070] 将当前状态x(t)输入到鲁棒控制模块,得到当前的鲁棒控制模块的控制量ur(t);
[0071] 基于鲁棒部分控制量判断是否需要触发强化学习控制:
[0072] 若是,则从动作缓存器中获得上一步的强化学习动作uRL(t‑1),得到当前的扩展状态xE(t)=[x(t),uRL(t‑1)];将当前的扩展状态xE(t)输入到强化学习控制模块的策略网络,得到当前的强化学习控制模块的动作uRL(t),并给动作uRL(t)增加正态分布噪声;将当前的扩展状态sE(t)输入到对抗强化学习部分的策略网络,得到当前的对抗强化学习部分的输出danti(t),并添加正态分布噪声;获得准确控制量为u(t)=ur(t)+uRL(t);
[0073] 若否,则直接将鲁棒部分控制量作为准确控制量。
[0074] 一种可新的实施方式中,触发的时间间隔为强化学习控制模块的控制周期,控制周期设为大于等于延迟时间。
[0075] 一种可行的实施方式中,鲁棒控制模块在姿态环子系统和位置环子系统具有完全一样的结构,子系统之间通过反解公式相连。鲁棒控制模块包括一个反馈部分和一个滤波部分,反馈部分保证控制器的基础控制性能,滤波部分用于抵消不确定性扰动和输入延迟引入的误差。其结构如下:
[0076]
[0077] 其中滤波器 f是滤波系数。通过依次计算位置环子系统和姿态环子系统的控制信号,得到{F1,F2,F3,F4},再经过虚拟控制信号到电机控制量转化公式,最终可以得到鲁棒控制模块的控制量ur。
[0078] 一种可行的实施方式中,对于传统的强化学习方法,当前的动作u(t)是由当前状态x(t)得到,即u(t)=μ(x(t))。但由于存在输入延迟τ,t时刻强化学习控制模块的动作u(t)实际上会在t+τ时刻作用于系统,即作用在状态x(t+τ)。所以在存在输入延迟时,当前动作不仅与当前状态有关,还与历史动作有关,即强化学习控制模块应当满足u(t)=μ(x(t),u(t‑τ),u(t‑τ+1),...,u(t‑1))。
[0079] 为了处理输入延迟,采用扩展状态方法,将历史动作信息和当前状态组成扩展状态,即xE(t)=[x(t),u(t‑τ),u(t‑τ+1),...,u(t‑1)],将扩展状态输入到强化学习控制模块的神经网络中,即满足u(t)=μ(xE(t))。
[0080] 直接使用扩展状态方法需要多个历史动作信息,导致扩展状态维度太大,进而导致强化学习神经网络输入参数太大,增加计算负担。采用扩展控制周期方法,将强化学习控制模块的控制周期设为大于等于最大延迟时间,即k≥τ,k表示强化学习控制模块的控制周期。在每个控制周期触发一次,触发时计算强化学习控制模块的动作,其他时间使用一阶保持器使得控制输出不变,即u(t‑k)=u(t‑k+1)=…=u(t‑1)。采用这种扩展控制周期方法,扩展状态只需要一个历史动作,即xE(t)=[x(t),u(t‑k)],避免了输入维度太大造成的影响。
[0081] 一种可新的实施方式中,S2还包括:
[0082] 将对抗强化学习的输出danti(t)各个通道随机乘以1或者‑1,使对抗扰动对称。
[0083] 一种可行的实施方式中,强化学习控制模块采用扩展状态加扩展控制周期方法来解决输入延迟问题。其主要包括两个步骤:
[0084] 步骤1:扩展状态,即将当前状态和历史动作信息作为扩展状态输入到强化学习控制模块中。历史动作中含有时序信息,因此扩展状态方法可以处理延迟问题。
[0085] 步骤2:扩展控制周期,即设置强化学习控制模块的控制周期大于等于最大输入延迟时间。这样设置可以保证在扩展状态时只使用一步历史动作信息。防止因为扩展状态中历史动作信息太多,造成强化学习控制模块的神经网络输入维度太大,进而增大计算负担。
[0086] S3、将准确控制量输入至无人机系统,得到奖励;
[0087] 一种可新的实施方式中,S3中,将准确控制量输入至无人机系统,得到奖励,包括:
[0088] 将准确控制量输入至无人机系统;
[0089] 从环境中采集得到下一步的状态为x(t+1),计算下一步的扩展状态为xE(t+1)=[x(t+1),uRL(t)],计算此时强化学习控制模块的即时奖励r(t)以及对抗强化学习的即时奖励ranti(t);
[0090] 采集当前的扩展状态sE(t),下一步的扩展状态xE(t+1),当前强化学习控制模块的动作uRL(t),对抗强化学习的输出tanti(t),强化学习控制模块的即时奖励r(t)以及对抗强化学习的即时奖励ranti(t),存入经验回放池。
[0091] 一种可行的实施方式中,强化学习控制模块采用端到端的方式,直接根据x、y、z和偏航角ψ的误差得到最终电机的控制量u1、u2、u3、u4。强化学习控制模块采用DDPG算法,DDPG存在四个神经网络,分别是动作网络(Actor Neural Network),目标动作网络(Target Actor Neural Network),评价网络(Critic Neural Network),目标评价网络(Target Critic Neural Network)。四个网络对应的参数为θu、θ′u、θQ和θ′Q。
[0092] 强化学习控制模块的控制量由动作网络得到,即
[0093] uRL(t)=μ(xE(t)|θu)
[0094] 对于强化学习控制模块,奖励函数的表达式为
[0095]
[0096] 其中,x(t)表示无人机状态与目标位置的误差,uRL(t)是强化学习控制模块的输出。通过设置权重矩阵W和R可以得到需求的无人机性能。奖励函数r(t)期望控制器可以在尽可能小的耗能的前提下使得跟踪误差趋于0。
[0097] 强化学习四个神经网络都采用两层全连接网络,激活函数采用tanh函数。评价网络和目标评价网络负责根据输入的扩展状态和动作,输出评价指标。动作网络和目标动作网络负责根据输入的扩展状态,输出动作。训练过程评价网络和动作网络根据损失函数对权重进行更新,目标评价网络和目标动作网络的权重采用软更新的方式,定期从评价网络和动作网络处更新。最终四旋翼无人机系统包括控制量为:
[0098] u(t)=uRL(t)+ur(t)
[0099] 对抗强化学习中的对抗网络部分同样采样DDPG算法,并且和强化学习控制模块拥有完全相同的网络结构和更新方式,所以在网络设计和网络更新不再赘述。两者的唯一区别在于奖励函数的设置。
[0100] 奖励函数用于指导强化学习完成特定的任务。对于对抗强化学习,奖励函数的表达式为
[0101] ranti(t)=‑r(t)‑c‖danti(t)‖2
[0102] 这里基于对抗博弈的思想,其奖励函数由两部分组成,前面部分‑r(t)期望对抗网络的输出可以让强化学习控制模块的奖励尽可能小,达到干扰的目的。但是在强化学习训练前期,由于网络还没有收敛,如果此时施加太大的干扰会造成强化学习控制模块网络难2
以收敛甚至发散。所以第二项‑c||danti(t)||对干扰的大小进行了约束,输出的干扰越大奖励反而会降低。相比于给予固定的扰动或随机扰动,对抗网络输出的扰动量大小是依据控制器网络的训练情况而确定的。这样设置既可以保证在训练前期施加较小的扰动保证强化学习控制模块网络可以收敛,也可以保证在训练后期施加尽可能大的干扰,以提高强化学习控制模块网络的抗扰能力。
[0103] 这样设置后,在训练前期由于强化学习控制模块还未充分训练,其控制性能较差,奖励r(t)偏小,所以对抗网络无需输出太大的干扰量就可以获得较高的奖励,奖励函数的2
第二项‑c||danti(t)||占主要约束地位。随着强化学习控制模块的收敛,其控制性能越来越好,奖励r(t)也不断增加。干扰网络为了提高奖励ranti(t),需要对系统施加更大的干扰以降低r(t),此时奖励函数的第二项的约束效果降低,第一项的作用更加明显。
[0104] 通过这样的设置,对抗网络既可以在前期避免扰动太大造成控制网络发散,又可以在后期输出较大的干扰量,模拟极端环境,提高控制器网络的抗扰能力。对抗网络的输出量由其动作网络得到,即
[0105]
[0106] 此外,本申请没有对干扰进行预设建模,而是直接表示为对四个电机输出的影响,这样设置可以尽可能模拟工作情况的干扰,例如风扰、执行器故障、建模不准确等等。因此最终得到对抗网络输出的扰动会直接加在控制器的输出上。
[0107] 一种可行的实施方式中,控制器结合了鲁棒控制模块和强化学习控制模块。鲁棒控制模块结构简单,可以保证对无人机系统的基本控制性能,考虑到强化学习控制模块在训练前期无法发挥作用,甚至会引入网络误差,鲁棒控制模块在训练前期可以抵消不确定性和这部分误差。强化学习控制模块基于深度强化学习方法,使用策略网络、目标策略网络、动作网络和目标动作网络,只需要在训练阶段获取的飞行信息,即可以自主优化控制性能。对于强化学习控制模块,通过设置权重矩阵W和R可以得到需求的无人机性能。奖励函数r(t)期望控制器可以在尽可能小的耗能的前提下使得跟踪误差趋于0。
[0108] S4、将奖励、动作以及准确控制量作为经验,对强化学习控制器和对抗网络进行更新,并判断强化学习控制器和对抗网络是否收敛,若否,则返回S2;若是,则保存网络参数,完成基于鲁棒强化学习与对抗强化学习的无人机控制。
[0109] 一种可新的实施方式中,S4中,将奖励、动作以及准确控制量作为经验,对强化学习控制器和对抗网络进行更新,并判断强化学习控制器和对抗网络是否收敛,若否,则返回S2;若是,则保存网络参数,完成基于鲁棒强化学习与对抗强化学习的无人机控制,包括:
[0110] 从经验回放池中采集一批将奖励、动作以及准确控制量作为经验,对强化学习控制器的评价网络、动作网络进行更新,对强化学习控制器的目标评价网络和目标动作网络进行软更新;对对抗网络的评价网络以及动作网络进行更新,对对抗网络的目标评价网络和目标动作网络进行软更新;
[0111] 判断强化学习控制器和对抗网络是否收敛,若否,则返回S2;若是,则保存网络参数,完成基于鲁棒强化学习与对抗强化学习的无人机控制。
[0112] 一种可行的实施方式中,如图3是本发明实施例提供的强化学习控制模块的奖励曲线图;如图4是本发明实施例提供的对抗网络的奖励曲线图。
[0113] 一种可行的实施方式中,对强化学习控制模块的评价网络进行更新,更新公式如下:
[0114] Qtarget=r(t)+γQ′(xE(t+1),u′(xE(t+1)|θ′u)|θ′Q)
[0115]
[0116] 对强化学习控制模块的动作网络进行更新,更新公式如下:
[0117]
[0118] 对强化学习控制模块的目标评价网络和目标动作网络进行软更新,更新公式如下:
[0119] θ′Q←εθQ+(1‑ε)θ′Q
[0120] θ′u←εθu+(1‑ε)θ′u
[0121] 对对抗网络的评价网络进行更新,更新公式如下:
[0122]
[0123] 对对抗网络的动作网络进行更新,更新公式如下:
[0124]
[0125] 对对抗网络的目标评价网络和目标动作网络进行软更新,更新公式如下:
[0126]
[0127] 本发明实施例中,针对深度强化学习训练成本高风险大的问题,采用鲁棒深度强化学习方法。鲁棒强化学习控制器中包含鲁棒控制模块和强化学习控制模块,其中鲁棒控制模块根据已知系统信息构造,可以在强化学习控制模块训练前期保证基础控制性能,抵消扰动。强化学习控制模块可以在此基础上根据性能指标函数对控制器性能进行优化。因此鲁棒强化学习方法既可以保证训练得到最优策略,也可以减少训练时间开销,保证训练前期的安全性。
[0128] 针对系统中存在输入延迟的问题,采用扩展状态方法和扩展控制周期方法对强化学习控制模块进行改进,相比于其他方法,本方法结构简单,运算负担小。
[0129] 针对仿真环境中训练好的控制器难以满足在实际环境中的控制性能的问题,采用对抗强化学习方法,引入干扰网络与控制器进行零和博弈,以提高控制器的抗扰能力。考虑到在训练前期这种零和博弈很可能因为扰动太大造成控制器失效。对对抗网络的奖励函数进行设计,使得在训练前期输出的干扰较小,以避免控制器网络无法收敛,之后输出较大的干扰用于训练,以提高控制器的抗扰能力。
[0130] 图5是根据一示例性实施例示出的一种基于鲁棒强化学习与对抗强化学习的无人机控制装置框图,该装置用于基于鲁棒强化学习与对抗强化学习的无人机控制方法。参照图5,该装置包括:初始化模块310、强化学习控制模块320、经验回放模块330以及网络更新与控制模块340。其中:
[0131] 初始化模块310,用于初始化无人机系统,获取无人机的当前状态;
[0132] 强化学习控制模块320,用于基于当前状态,计算无人机的鲁棒部分控制量,基于鲁棒部分控制量判断是否需要触发强化学习控制,若是,则进行鲁棒部分控制量的扩展,并通过强化学习控制器和对抗网络分别输出准确控制量;若否,则直接将鲁棒部分控制量作为准确控制量;
[0133] 经验回放模块330,用于将准确控制量输入至无人机系统,得到奖励;
[0134] 网络更新与控制模块340,用于将奖励、动作以及准确控制量作为经验,对强化学习控制器和对抗网络进行更新,并判断强化学习控制器和对抗网络是否收敛,若否,则返回强化学习控制模块;若是,则保存网络参数,完成基于鲁棒强化学习与对抗强化学习的无人机控制。
[0135] 可选地,初始化模块310,用于初始化无人机的强化学习控制模块的评价网络和动作网络;
[0136] 初始化鲁棒控制模块参数;
[0137] 从环境中采集得到当前的状态x(t)。
[0138] 可选地,强化学习控制模块320,用于
[0139] 将当前状态x(t)输入到鲁棒控制模块,得到当前的鲁棒控制模块的控制量ur(t);
[0140] 基于鲁棒部分控制量判断是否需要触发强化学习控制:
[0141] 若是,则从动作缓存器中获得上一步的强化学习动作uRL(t‑1),得到当前的扩展状态xE(t)=[x(t),uRL(t‑1)];将当前的扩展状态xE(t)输入到强化学习控制模块的策略网络,得到当前的强化学习控制模块的动作uRL(t),并给动作uRL(t)增加正态分布噪声;将当前的扩展状态sE(t)输入到对抗强化学习部分的策略网络,得到当前的对抗强化学习部分的输出danti(t),并添加正态分布噪声;获得准确控制量为u(t)=ur(t)+uRL(t);
[0142] 若否,则直接将鲁棒部分控制量作为准确控制量。
[0143] 可选地,触发的时间间隔为强化学习控制模块的控制周期,控制周期设为大于等于延迟时间。
[0144] 可选地,强化学习控制模块320,用于将对抗强化学习的输出danti(t)各个通道随机乘以1或者‑1,使对抗扰动对称。
[0145] 可选地,经验回放模块330,用于将准确控制量输入至无人机系统;
[0146] 从环境中采集得到下一步的状态为x(t+1),计算下一步的扩展状态为xE(t+1)=[x(t+1),uRL(t)],计算此时强化学习控制模块的即时奖励r(t)以及对抗强化学习的即时奖励ranti(t);
[0147] 采集当前的扩展状态sE(t),下一步的扩展状态xE(t+1),当前强化学习控制模块的动作uRL(t),对抗强化学习的输出danti(t),强化学习控制模块的即时奖励r(t)以及对抗强化学习的即时奖励ranti(t),存入经验回放池。
[0148] 可选地,网络更新与控制模块340,用于从经验回放池中采集一批将奖励、动作以及准确控制量作为经验,对强化学习控制器的评价网络、动作网络进行更新,对强化学习控制器的目标评价网络和目标动作网络进行软更新;对对抗网络的评价网络以及动作网络进行更新,对对抗网络的目标评价网络和目标动作网络进行软更新;
[0149] 判断强化学习控制器和对抗网络是否收敛,若否,则返回S2;若是,则保存网络参数,完成基于鲁棒强化学习与对抗强化学习的无人机控制
[0150] 图6是本发明实施例提供的一种基于鲁棒强化学习与对抗强化学习的无人机控制设备的结构示意图,如图6所示,基于鲁棒强化学习与对抗强化学习的无人机控制设备可以包括上述图5所示的基于鲁棒强化学习与对抗强化学习的无人机控制装置。可选地,基于鲁棒强化学习与对抗强化学习的无人机控制设备410可以包括第一处理器2001。
[0151] 可选地,基于鲁棒强化学习与对抗强化学习的无人机控制设备410还可以包括存储器2002和收发器2003。
[0152] 其中,第一处理器2001与存储器2002以及收发器2003,如可以通过通信总线连接。
[0153] 下面结合图6对基于鲁棒强化学习与对抗强化学习的无人机控制设备410的各个构成部件进行具体的介绍:
[0154] 其中,第一处理器2001是基于鲁棒强化学习与对抗强化学习的无人机控制设备410的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,第一处理器2001是一个或多个中央处理器(central processing unit,CPU),也可以是特定集成电路(application specific integrated circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路,例如:一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)。
[0155] 可选地,第一处理器2001可以通过运行或执行存储在存储器2002内的软件程序,以及调用存储在存储器2002内的数据,执行基于鲁棒强化学习与对抗强化学习的无人机控制设备410的各种功能。
[0156] 在具体的实现中,作为一种实施例,第一处理器2001可以包括一个或多个CPU,例如图6中所示出的CPU0和CPU1。
[0157] 在具体实现中,作为一种实施例,基于鲁棒强化学习与对抗强化学习的无人机控制设备410也可以包括多个处理器,例如图6中所示的第一处理器2001和第二处理器2004。这些处理器中的每一个可以是一个单核处理器(single‑CPU),也可以是一个多核处理器(multi‑CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
[0158] 其中,所述存储器2002用于存储执行本发明方案的软件程序,并由第一处理器2001来控制执行,具体实现方式可以参考上述方法实施例,此处不再赘述。
[0159] 可选地,存储器2002可以是只读存储器(read‑only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read‑only memory,EEPROM)、只读光盘(compact disc read‑only memory,CD‑ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器2002可以和第一处理器2001集成在一起,也可以独立存在,并通过基于鲁棒强化学习与对抗强化学习的无人机控制设备410的接口电路(图6中未示出)与第一处理器2001耦合,本发明实施例对此不作具体限定。
[0160] 收发器2003,用于与网络设备通信,或者与终端设备通信。
[0161] 可选地,收发器2003可以包括接收器和发送器(图6中未单独示出)。其中,接收器用于实现接收功能,发送器用于实现发送功能。
[0162] 可选地,收发器2003可以和第一处理器2001集成在一起,也可以独立存在,并通过基于鲁棒强化学习与对抗强化学习的无人机控制设备410的接口电路(图6中未示出)与第一处理器2001耦合,本发明实施例对此不作具体限定。
[0163] 需要说明的是,图6中示出的基于鲁棒强化学习与对抗强化学习的无人机控制设备410的结构并不构成对该路由器的限定,实际的知识结构识别设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0164] 此外,基于鲁棒强化学习与对抗强化学习的无人机控制设备410的技术效果可以参考上述方法实施例所述的基于鲁棒强化学习与对抗强化学习的无人机控制方法的技术效果,此处不再赘述。
[0165] 应理解,在本发明实施例中的第一处理器2001可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0166] 还应理解,本发明实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read‑only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(doubledata rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
[0167] 上述实施例,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
[0168] 应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
[0169] 本发明中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a‑b,a‑c,b‑c,或a‑b‑c,其中a,b,c可以是单个,也可以是多个。
[0170] 应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0171] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0172] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0173] 在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个设备,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0174] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0175] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0176] 所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read‑only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0177] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。