一种空中多智能体训练方法及装置与流程

专利检索2022-05-10  11



1.本技术涉及无人机技术领域,具体涉及一种空中多智能体训练方法以及空中多智能体训练装置。


背景技术:

2.多智能体强化学习是目前强化学习领域研究的热点,其主要解决环境中多个智能体的策略演进问题,比较契合真实世界的决策过程。在使用强化学习方法解决实际控制问题过程之中,解空间大与奖励稀疏是影响智能体学习效率的重要原因。
3.现有技术采用设计内部奖励机制的方式来解决如上问题,具体而言:
4.相对与环境给出的外部奖励,内部奖励的含义为智能体对自身的奖励。内部奖励可以激励智能体对未知环境的探索,可以帮助智能体探索更多行为,而一定程度上避免局部最优。但是对于对环境的初始探索、降低训练难度方面效果有限。
5.因此,希望有一种技术方案来克服或至少减轻现有技术的至少一个上述缺陷。


技术实现要素:

6.本发明的目的在于提供一种空中多智能体训练方法来克服或至少减轻现有技术的至少一个上述缺陷。
7.本发明的一个方面,提供一种空中多智能体训练方法,所述空中多智能体训练方法包括:
8.获取多智能体决策模型,所述多智能体决策模型包括动作执行步长概率分布信息以及偏置因子;
9.训练所述多智能体决策模型,在所述多智能体决策模型训练过中,所述多智能体决策模型在选取动作执行步长概率分布信息中的动作执行步长时受所述偏置因子影响。
10.可选地,所述空中多智能体训练方法进一步包括:
11.在训练所述多智能体决策模型中,根据预设条件改变所述偏置因子数值。
12.可选地,所述根据预设条件改变所述偏置因子数值包括:
13.获取训练轮次的次数,当训练轮次的次数大于预设次数,则减少所述偏置因子的数值,和/或,
14.获取平均奖赏值,当平均奖赏值大于预设奖赏值时,则减少所述偏置因子的数值。
15.可选地,在所述训练所述多智能体决策模型之前,所述空中多智能体训练方法进一步包括:
16.获取多个多智能体训练样本;
17.根据所述多智能体训练样本对所述空中多智能体决策模型进行训练。
18.可选地,每个所述多智能体训练样本包括当前状信息、执行动作信息、动作执行的步长信息,环境在每步中获得奖励值信息、当前状态的下一状态信息、是否结束信息。
19.可选地,所述多智能体决策模型包括多智能体策略网络以及值网络。
20.本技术还提供了一种空中多智能体训练装置,所述空中多智能体训练装置包括:
21.模型获取模块,所述模型获取模块用于获取多智能体决策模型,所述多智能体决策模型包括动作执行步长概率分布信息以及偏置因子;
22.训练模块,所述训练模块用于训练所述多智能体决策模型,在所述多智能体决策模型训练过中,所述多智能体决策模型在选取动作执行步长概率分布信息中的动作执行步长时受所述偏置因子影响。
23.本技术还提供了一种电子设备,所述电子设备包括存储器、处理器以及存储在存储器中并能够在处理器上运行的计算机程序,处理器执行计算机程序时实现如上所述的空中多智能体训练方法。
24.本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时能够实现如上所述的空中多智能体训练方法。
25.有益效果
26.本技术的空中多智能体训练方法具有如下优点:
27.1、通过增加偏置因子,从而使智能体自主决策动作执行时间,指数级降低了智能体探索环境与获取奖励值的难度,智能体更容易学习宏观策略;
28.2、在智能体具有一定程度的技能积累后,通过更改偏置因子,智能体可以逐步使用更低的决策时间,探索更为精确的控制方法,获取更高的奖赏值;
29.3、对于智能体选择保持的动作持续时间的概率分布,可以在保持智能体决策网络梯度连续的情况下进行外界干预,使智能体改变偏置因子,从而使智能体更倾向于采取更长的决策持续时间完成对环境的探索的同时不影响网络采用梯度下降法进行训练;
30.4、该算法可以拓展至多智能体深度强化学习领域,允许不同智能体内不同个体采用不同的时间步长进行决策,算法所述训练方法对该场景一样适用,即兼容智能体中的个体异步决策,降低了算法在多智能体领域应用的限制;
31.5、对偏置因子可以进行人工的调整,并设计相应的辅助奖励机制。鼓励智能体在初期有更大概率选择更长的决策维持时间,在训练一段时间后鼓励智能体进行微操。从而实现由易到难,由宏观到精确的训练与策略迭代过程。
附图说明
32.图1为本技术一实施例的空中多智能体训练方法的流程示意图。
33.图2是能够实现根据本技术一个实施例提供的电子设备的示例性结构图。
具体实施方式
34.为使本技术实施的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施例是本技术一部分实施例,而不是全部的实施例。下面通过参考附图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。下面结合附图对本技术的实施例进行详细说明。
35.需要说明的是,在本发明的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
36.图1为本技术一实施例的空中多智能体训练方法的流程示意图。
37.如图1所示的空中多智能体训练方法包括:
38.步骤1:获取多智能体决策模型,多智能体决策模型包括动作执行步长概率分布信息以及偏置因子;
39.步骤2:训练多智能体决策模型,在多智能体决策模型训练过中,多智能体决策模型在选取动作执行步长概率分布信息中的动作执行步长时受偏置因子影响。
40.本技术的空中多智能体训练方法具有如下优点:
41.1、通过增加偏置因子,从而使智能体自主决策动作执行时间,指数级降低了智能体探索环境与获取奖励值的难度,智能体更容易学习宏观策略;
42.2、在智能体具有一定程度的技能积累后,通过更改偏置因子,智能体可以逐步使用更低的决策时间,探索更为精确的控制方法,获取更高的奖赏值;
43.3、对于智能体选择保持的动作持续时间的概率分布,可以在保持智能体决策网络梯度连续的情况下进行外界干预,使智能体改变偏置因子,从而使智能体更倾向于采取更长的决策持续时间完成对环境的探索的同时不影响网络采用梯度下降法进行训练;
44.4、该算法可以拓展至多智能体深度强化学习领域,允许不同智能体内不同个体采用不同的时间步长进行决策,算法所述训练方法对该场景一样适用,即兼容智能体中的个体异步决策,降低了算法在多智能体领域应用的限制;
45.5、对偏置因子可以进行人工的调整,并设计相应的辅助奖励机制。鼓励智能体在初期有更大概率选择更长的决策维持时间,在训练一段时间后鼓励智能体进行微操。从而实现由易到难,由宏观到精确的训练与策略迭代过程。
46.在本实施例中,空中多智能体训练方法进一步包括:在训练多智能体决策模型中,根据预设条件改变偏置因子数值。
47.在本实施例中,所述根据预设条件改变所述偏置因子数值包括:
48.获取训练轮次的次数,当训练轮次的次数大于预设次数,则减少所述偏置因子的数值,和/或,
49.获取平均奖赏值,当平均奖赏值大于预设奖赏值时,则减少所述偏置因子的数值。
50.在本实施例中,在决策过程中,在智能体采取动作执行步长概率分布上加入偏置bias,使智能体在初始训练的过程中尽量选择大的时间步长,有利于奖励训练难度,使智能更快地探索环境于获取奖励值;
51.随着训练轮次的增加与获取平均奖赏值提升动态调整上述中的动作选择偏置bias。使该偏置逐渐减小,智能体可以以更短的时间步长探索环境,进行敏捷决策。
52.在本实施例中,在训练多智能体决策模型之前,空中多智能体训练方法进一步包括:
53.获取多个多智能体训练样本;
54.根据多智能体训练样本对空中多智能体决策模型进行训练。
55.在本实施例中,每条多智能体训练样本包括以下要素:状态s、执行动作a、动作执行的步长t
m
,环境在每步中获得奖励值r
i
、下一状态s

、是否结束done。
56.在本实施例中,所述多智能体决策模型包括多智能体策略网络以及值网络。其中,多智能体策略网络输入为当前的状态,输出为采取的动作与该动作执行的时间,其中,该动作执行的时间通过上述的动作执行步长概率分布信息以及偏置因子获取。值网络输入为当前的状态,输出为当前状态对应的值
57.在本实施例中,训练所述多智能体决策模型具体为:在获取满足训练要求样本量的样本后开始训练,采用actor

critic框架下的决策网络时,值网络v_net与策略网络p_net的更新方法如下:
[0058][0059][0060]
式中,s
i
为当前的环境给出的状态值,r
i
为第i步长时环境给出奖赏值,γ为折扣因子;v_net(s
i
)表示s
i
状态下值网络输出的值,p(a
i
|s
i
)与p(t
m
|s
i
)分别为在s
i
状态下,智能体选择当前机动a
i
、选择机动持续时间t
m
的概率。
[0061]
在本实施例中,通过偏置因子影响多智能体决策模型在选取动作执行步长概率分布信息中的动作执行步长具体为:
[0062]
偏置因子为一个概率因子,通过设置偏置因子的值,使得多智能体决策模型在选取动作执行步长概率分布信息中的动作执行步长时可以进行偏重选择,例如,当偏置因子的数值较高时,多智能体决策模型在选取动作执行步长概率分布信息中的动作执行步长时会更可能多的选择大的时间步长,而偏置因子的数值较小时,多智能体决策模型在选取动作执行步长概率分布信息中的动作执行步长时会更可能多的选择小的时间步长。
[0063]
本技术还提供了一种空中多智能体训练装置,所述空中多智能体训练装置包括模型获取模块以及训练模块,模型获取模块用于获取多智能体决策模型,多智能体决策模型包括动作执行步长概率分布信息以及偏置因子;训练模块用于训练多智能体决策模型,在多智能体决策模型训练过中,多智能体决策模型在选取动作执行步长概率分布信息中的动作执行步长时受偏置因子影响。
[0064]
需要说明的是,前述对方法实施例的解释说明也适用于本实施例的装置,此处不再赘述。
[0065]
本技术还提供了一种电子设备,包括存储器、处理器以及存储在存储器中并能够在处理器上运行的计算机程序,处理器执行计算机程序时实现如上的空中多智能体训练方法。
[0066]
本技术还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时能够实现如上的空中多智能体训练方法。
[0067]
图2是能够实现根据本技术一个实施例提供的电子设备的示例性结构图。
[0068]
如图2所示,电子设备包括输入设备501、输入接口502、中央处理器503、存储器504、输出接口505以及输出设备506。其中,输入接口502、中央处理器503、存储器504以及输出接口505通过总线507相互连接,输入设备501和输出设备506分别通过输入接口502和输出接口505与总线507连接,进而与电子设备的其他组件连接。具体地,输入设备504接收来自外部的输入信息,并通过输入接口502将输入信息传送到中央处理器503;中央处理器503基于存储器504中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出
信息临时或者永久地存储在存储器504中,然后通过输出接口505将输出信息传送到输出设备506;输出设备506将输出信息输出到电子设备的外部供用户使用。
[0069]
也就是说,图2所示的电子设备也可以被实现为包括:存储有计算机可执行指令的存储器;以及一个或多个处理器,该一个或多个处理器在执行计算机可执行指令时可以实现结合图1描述的空中多智能体训练方法。
[0070]
在一个实施例中,图2所示的电子设备可以被实现为包括:存储器504,被配置为存储可执行程序代码;一个或多个处理器503,被配置为运行存储器504中存储的可执行程序代码,以执行上述实施例中的空中多智能体训练方法。
[0071]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0072]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0073]
计算机可读介质包括永久性和非永久性、可移动和非可移动,媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数据多功能光盘(dvd)或其他光学存储、磁盒式磁带、磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
[0074]
本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0075]
此外,显然“包括”一词不排除其他单元或步骤。装置权利要求中陈述的多个单元、模块或装置也可以由一个单元或总装置通过软件或硬件来实现。第一、第二等词语用来标识名称,而不标识任何特定的顺序。
[0076]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,模块、程序段、或代码的一部分包括一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地标识的方框实际上可以基本并行地执行,他们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或总流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0077]
在本实施例中所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用
集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field

programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0078]
存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现装置/终端设备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0079]
在本实施例中,装置/终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。
[0080]
需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。本技术虽然以较佳实施例公开如上,但其实并不是用来限定本技术,任何本领域技术人员在不脱离本技术的精神和范围内,都可以做出可能的变动和修改,因此,本技术的保护范围应当以本技术权利要求所界定的范围为准。
[0081]
虽然,上文中已经用一般性说明及具体实施方案对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
转载请注明原文地址:https://win.8miu.com/read-250331.html

最新回复(0)