本技术涉及导航规划,特别是涉及基于人工势场和ppo的多智能体航路规划方法和装置。
背景技术:
1、多智能体避障和路径规划的应用前景非常广阔,如无人驾驶车辆、地面机器人、无人机、水面无人艇、水下无人航行器以及跨域无人系统等的导航,都离不开路径规划技术,而且该技术方法与系统涉及到许多不同的行业及领域,包括交通、物流、制造业、军事等。其中避障和路径规划是实现智能体自主运动规划的关键技术。常规路径规划算法依赖智能体复杂的动力学模型和地图信息,目前尚未提出基于近端策略优化(proximal policyoptimization,ppo)算法的路径规划方案。
2、现有的算法大都基于智能体复杂的动力学模型进行控制,编写控制器算法是一个复杂和耗时的过程。传统的强化学习使用的如dqn、sarsa、ac等算法,存在训练过程中收敛速度慢的问题。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够提高训练过程中收敛速度的基于人工势场和ppo的多智能体航路规划方法和装置,借助积极经验回放方法,加快强化学习方法在避障和路径规划过程中的收敛速度。
2、第一方面,本技术提供了一种基于人工势场和ppo的多智能体航路规划方法,所述基于人工势场和ppo的多智能体航路规划方法,包括:
3、对智能体涉及算法的原始参数进行初始化处理;
4、获取所述智能体的当前状态值,并通过最小误差熵卡尔曼滤波方法对信息误差进行处理,筛选所述智能体待执行的下一个动作;
5、使用人工势场函数和经过误差处理后的传感器数值,获取所述智能体执行所述下一个动作后的新的状态值;
6、如果满足预设条件,则输出对应所述智能体的策略网络,根据所述策略网络为所述智能体制定行动策略;
7、如果未满足预设条件,则基于所述智能体包括所有的状态集合、所述原始参数在内的参数集合对经验库进行管理,根据管理后的所述经验库对所述策略网络进行训练,对训练后的所述策略网络和预先构建的评价网络进行更新,使用更新后的所述策略网络为所述智能体制定行动策略。
8、在其中一个实施例中,所述获取所述智能体的当前状态值,并通过最小误差熵卡尔曼滤波方法对信息误差进行处理,筛选所述智能体待执行的下一个动作,包括:
9、当仅存在单个所述智能体时,获取所述智能体的当前状态值,并通过最小误差熵卡尔曼滤波方法对信息误差进行处理,将所述当前状态值输入所述策略网络,获取所述策略网络输出的动作概率,根据人工势场函数计算奖励函数,基于所述动作概率选出所述智能体待执行的下一个动作;
10、存在至少两个所述智能体时,获取每个所述智能体的当前状态值,将所述当前状态值传输至中央控制器,获取所述中央控制器基于合引力最小的目标分配机制进行计算后的目标分配结果,根据所述人工势场函数计算所述奖励函数,再由所述策略网络输出动作概率,从所述动作概率集合中选出所述智能体待执行的下一个动作。
11、在其中一个实施例中,所述获取每个所述智能体的当前状态值,将所述当前状态值传输至中央控制器,获取所述中央控制器基于合引力最小的目标分配机制进行计算后的目标分配结果,根据所述人工势场函数计算奖励值,再由所述策略网络输出动作概率,从所述动作概率集合中选出所述智能体待执行的下一个动作,包括:
12、获取每个所述智能体的当前状态值,将所述当前状态值以及所述智能体的目标位置传输至中央控制器,获取所述中央控制器基于合引力最小的目标分配机制进行目标分配,获取由所述策略网络输出的动作概率集合,基于所述动作概率从中选出所述智能体待执行的下一个动作。
13、在其中一个实施例中,所述根据人工势场函数计算奖励函数,包括:
14、获取所述智能体的传感器数值;
15、根据所述智能体与目标点和障碍物的位置关系,构建所述目标点的引力场和斥力场;
16、基于所述引力场的参数和所述斥力场的参数计算所述智能体在当前位置受到的合力;
17、根据所述合力计算所述智能体的奖励函数。
18、在其中一个实施例中,所述基于所述智能体包括所有的状态集合、所述原始参数在内的参数集合对经验库进行管理,根据管理后的所述经验库对所述策略网络进行训练,对训练后的所述策略网络和预先构建的评价网络进行更新,使用更新后的所述策略网络为所述智能体制定行动策略,包括:
19、将包括所述当前状态值、所述新的状态值、所述原始参数在内的参数集合存储在经验库内;
20、当所述经验库存满时,基于所述经验库内存储的数据构建目标函数,基于所述目标函数对所述策略网络进行训练;
21、对所述经验库内的数据按奖励值由大到小的顺序进行排序,提取高奖励经验列表,对所述高奖励经验列表进行扩充,得到积极经验库,使用所述积极经验库对训练后的所述策略网络进行二次训练。
22、在其中一个实施例中,所述当所述经验库存满时,基于所述经验库内存储的数据构建目标函数,基于所述目标函数对所述策略网络进行训练,包括:
23、当所述经验库存满时,分别构建状态价值函数及动作价值函数,基于所述状态价值函数及动作价值函数构建优势函数;
24、基于所述优势函数构建包含策略clip项、状态值误差函数和信息熵函数的目标函数,对所述目标函数进行反向传播,实现对所述策略网络的训练。
25、在其中一个实施例中,所述对所述经验库内的数据按奖励值由大到小的顺序进行排序,提取高奖励经验列表,对所述高奖励经验列表进行扩充,得到积极经验库,使用所述积极经验库对训练后的所述策略网络进行二次训练,包括:
26、对所述经验库内的数据按奖励值由大到小的顺序进行重新排序;
27、基于经验提取系数计算再训练的高奖励经验数量,结合所述高奖励经验列表,对所述高奖励经验列表进行扩充得到积极经验库;
28、得到包含预设数量经验组合的积极经验库,使用所述积极经验库对训练后的所述策略网络进行二次训练。
29、第二方面,本技术还提供了基于人工势场和ppo的多智能体航路规划装置,所述多智能体航路规划装置包括:
30、初始化模块,用于对智能体涉及算法的原始参数进行初始化处理;
31、动作筛选模块,用于获取所述智能体的当前状态值,并通过最小误差熵卡尔曼滤波方法对信息误差进行处理,筛选所述智能体待执行的下一个动作;
32、数值计算模块,用于使用人工势场函数和传感器数值,获取所述智能体执行所述下一个动作后的新的状态值;
33、策略构建模块,用于如果满足预设条件,则输出对应所述智能体的策略网络,根据所述策略网络为所述智能体制定行动策略;
34、策略训练模块,用于如果未满足预设条件,则基于所述智能体包括所有的状态集合、所述原始参数在内的参数集合对经验库进行管理,根据管理后的所述经验库对所述策略网络进行训练,对训练后的所述策略网络和预先构建的评价网络进行更新,使用更新后的所述策略网络为所述智能体制定行动策略。
35、第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
36、对智能体涉及算法的原始参数进行初始化处理;
37、获取所述智能体的当前状态值,并通过最小误差熵卡尔曼滤波方法对信息误差进行处理,筛选所述智能体待执行的下一个动作;
38、使用人工势场函数和经过误差处理后的传感器数值,获取所述智能体执行所述下一个动作后的新的状态值;
39、如果满足预设条件,则输出对应所述智能体的策略网络,根据所述策略网络为所述智能体制定行动策略;
40、如果未满足预设条件,则基于所述智能体包括所有的状态集合、所述原始参数在内的参数集合对经验库进行管理,根据管理后的所述经验库对所述策略网络进行训练,对训练后的所述策略网络和预先构建的评价网络进行更新,使用更新后的所述策略网络为所述智能体制定行动策略。
41、第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
42、对智能体涉及算法的原始参数进行初始化处理;
43、获取所述智能体的当前状态值,并通过最小误差熵卡尔曼滤波方法对信息误差进行处理,筛选所述智能体待执行的下一个动作;
44、使用人工势场函数和经过误差处理后的传感器数值,获取所述智能体执行所述下一个动作后的新的状态值;
45、如果满足预设条件,则输出对应所述智能体的策略网络,根据所述策略网络为所述智能体制定行动策略;
46、如果未满足预设条件,则基于所述智能体包括所有的状态集合、所述原始参数在内的参数集合对经验库进行管理,根据管理后的所述经验库对所述策略网络进行训练,对训练后的所述策略网络和预先构建的评价网络进行更新,使用更新后的所述策略网络为所述智能体制定行动策略。
47、第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
48、对智能体涉及算法的原始参数进行初始化处理;
49、获取所述智能体的当前状态值,并通过最小误差熵卡尔曼滤波方法对信息误差进行处理,筛选所述智能体待执行的下一个动作;
50、使用人工势场函数和经过误差处理后的传感器数值,获取所述智能体执行所述下一个动作后的新的状态值;
51、如果满足预设条件,则输出对应所述智能体的策略网络,根据所述策略网络为所述智能体制定行动策略;
52、如果未满足预设条件,则基于所述智能体包括所有的状态集合、所述原始参数在内的参数集合对经验库进行管理,根据管理后的所述经验库对所述策略网络进行训练,对训练后的所述策略网络和预先构建的评价网络进行更新,使用更新后的所述策略网络为所述智能体制定行动策略。
53、上述基于人工势场和ppo的多智能体航路规划方法和装置,能够在未知智能体动力学模型和环境障碍物位置信息的情况下实现避障和路径规划,通过使用非确定性策略的算法,克服人工势场的局部最优问题,跳出局部最优点,具有较强的环境适应性和鲁棒性;同时借助积极经验回放方法,加快强化学习方法在避障和路径规划过程中的收敛速度。
1.基于人工势场和ppo的多智能体航路规划方法,其特征在于,所述基于人工势场和ppo的多智能体航路规划方法,包括:
2.根据权利要求1所述的基于人工势场和ppo的多智能体航路规划方法,其特征在于,所述获取所述智能体的当前状态值,并通过最小误差熵卡尔曼滤波方法对信息误差进行处理,筛选所述智能体待执行的下一个动作,包括:
3.根据权利要求2所述的基于人工势场和ppo的多智能体航路规划方法,其特征在于,所述获取每个所述智能体的当前状态值,将所述当前状态值传输至中央控制器,获取所述中央控制器基于合引力最小的目标分配机制进行计算后的目标分配结果,根据所述人工势场函数计算奖励值,再由所述策略网络输出动作概率,从所述动作概率集合中选出所述智能体待执行的下一个动作,包括:
4.根据权利要求2所述的基于人工势场和ppo的多智能体航路规划方法,其特征在于,所述根据人工势场函数计算奖励函数,包括:
5.根据权利要求1所述的基于人工势场和ppo的多智能体航路规划方法,其特征在于,所述基于所述智能体包括所有的状态集合、所述原始参数在内的参数集合对经验库进行管理,根据管理后的所述经验库对所述策略网络进行训练,对训练后的所述策略网络和预先构建的评价网络进行更新,使用更新后的所述策略网络为所述智能体制定行动策略,包括:
6.根据权利要求5所述的基于人工势场和ppo的多智能体航路规划方法,其特征在于,所述当所述经验库存满时,基于所述经验库内存储的数据构建目标函数,基于所述目标函数对所述策略网络进行训练,包括:
7.根据权利要求5所述的基于人工势场和ppo的多智能体航路规划方法,其特征在于,所述对所述经验库内的数据按奖励值由大到小的顺序进行排序,提取高奖励经验列表,对所述高奖励经验列表进行扩充,得到积极经验库,使用所述积极经验库对训练后的所述策略网络进行二次训练,包括:
8.基于人工势场和ppo的多智能体航路规划装置,其特征在于,所述多智能体航路规划装置包括:
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至权利要求7中任一项所述的基于人工势场和ppo的多智能体航路规划方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至权利要求7中任一项所述的基于人工势场和ppo的多智能体航路规划方法的步骤。
