一种复杂环境下基于机器学习的运动规划方法

未命名 08-14 阅读:76 评论:0


1.本发明涉及车间运输、机器学习、多机器人控制、运动规划等领域,具体为一种复杂环境下基于机器学习的运动规划方法。


背景技术:

2.智慧工厂、智慧物流的发展,推动了移动机器人在各行各业的应用和充分拓展,特别是对智能制造领域有着积极重要的作用。尽管近年来国内工厂内物流发展速度较快,但与发达国家的水平仍有很大的差距,特别是与制造核心工艺流程密切相关的、面向未来制造的数据化、智能机器人,其厂内多机器人协同作业、运动规划和交通运输等问题均面临较大的挑战,严重制约了智能制造特别是“矩阵式生产”的发展。对于服务矩阵制造且具备智能特征的下一代工艺机器人,需要多台机器人之间交互协作,总数据量较传统模式升约三个数量级,可以大大提高车间的生产及运输效率。然而,庞大的多机器人交互系统无形中将车间单一的运输环境转换成为了密集动态的环境,这使得机器人之间的交互中存在很多复杂的问题,例如机器人之间的碰撞、路径冲突、交通阻塞、时效性差等,这些问题会严重影响运输安全、运输效率及生产效率。
3.多机器人系统中,每个机器人都需要完成其特定的任务,同时还要考虑到其他机器人的位置和动作,以确保协调性和最优化的执行。运动规划可以在考虑到机器人系统的物理限制和环境约束条件下,通过算法生成机器人的动作序列,快速响应环境中的变化,以完成特定的任务。因此,机器人的运动规划对于车间运输效率和运输安全至关重要。目前已有的机器人运动规划方法主要包括遗传算法、蚁群算法等,上述传统的运动规划方法通常是基于规则和约束条件的,但是,复杂的车间环境下,传统的规则和约束方法存在效率低、难以保障安全等问题,无法满足密集动态车间的实际需求。另外,由于车间每天的生产任务不同,对机器人的数量和任务要求也有很大的差别,如出现当天生产任务较少,仅需要少量机器人就可以完成运输任务时,过于冗余的运动规划算法就会造成因大量非必要计算带来的资源浪费等问题。
4.针对以上问题和实际需求,本发明设计一种混合运动规划方法,基于强化学习(reinforcement learning,rl)的运动规划方法以及基于力的运动规划(force based motion planning,fmp)算法,并将二者进行融合。针对不同的环境,采用不同的运动规划方法,一方面可以避免资源的浪费,另一方面融合后的混合运动规划算法,更能满足密集动态环境下多机器人运输对协同性、安全性和高效性的要求。


技术实现要素:

5.本发明设计一种复杂环境下基于机器学习的运动规划方法。
6.具体实施步骤如下:
7.步骤1:确定环境和动作空间,首先建立车间建模,然后定义动作空间。强化学习系统主要包含两大块,环境及智能体,定义机器人的动作空间,机器人与环境交互,通过不断
的探索,学习环境,最终顺利完成既定任务。
8.设,,表示一个机器人的状态、动作和另一个机器人在时间的状态。状态向量有两部分,即可观测的和不可观测的部分,即。可观测部分由机器人的位置、速度和半径组成,这里可观测指的是相邻机器人可见的状态部分,因此,每个机器人都有关于其临近机器人的信息。目标位置、最优速度和方向(是二维环境的方向,为三维环境方向)以及其他隐藏机器人等信息构成了状态的不可观测部分。动作空间包括两个部分:速度和二维环境下的航向角、三维环境下航向角。
9.步骤2:设计fmp运动规划算法,fmp算法是一种基于场量理论的运动规划方法,它可以通过建立吸引力和排斥力场,将机器人引导到指定的目标点,并避免与障碍物发生碰撞。
10.步骤2.1:生成参考轨迹,fmp会根据机器人的当前位置和目标点的位置计算出吸引力和排斥力场,然后将它们叠加起来,得到机器人在当前位置的总场量,机器人会根据总场量的方向和大小进行移动。机器人受到的作用力可以表示为:
[0011][0012][0013][0014]
其中,是吸引力、是排斥力,为机器人当前位置、为目标位置、为障碍物所在位置,为障碍物数量,、分别是调整吸引力和排斥力的系数。
[0015]
步骤2.2:碰撞检测,在生成参考轨迹的过程中,需要考虑机器人之间的碰撞问题。因此,在每次更新参考轨迹时,需要进行碰撞检测,以避免不同机器人之间的碰撞。具体检测步骤为:
[0016]
step1:确定机器人的运动轨迹以及速度和加速度的限制条件;
[0017]
step2:计算机器人与其他机器人或障碍物之间的距离和相对速度;
[0018]
step3:根据距离和速度的变化率,预测是否会发生碰撞;
[0019]
step4:如果预测到碰撞,即停止机器人的运动,并重新规划其运动轨迹以避免碰撞;
[0020]
step5:如果没有预测到碰撞,则继续按照原定轨迹行进。
[0021]
步骤2.3:路径规划,在生成参考轨迹的过程中,需要避开障碍物和其他机器人,因此需要进行路径规划,这里的路径规划通过传统的a*算法来实现。
[0022]
a*算法是简单地图环境中求解最短路径的有效的启发式搜索算法,从给定的起点开始,该方法在当前点环境中进行搜索,并计算每个当前搜索节点到给定起点的累计代价值与当前搜索节点与目标点的预估代价值之和,选取总代价最小的搜索节点为下一拓展节点,当拓展节点为目标点时,算法搜索完毕。a*的启发式评价函数可以表示为:
[0023]
[0024]
为当前节点与起点的实际代价,为当前节点距离目标节点的预估代价,表示为当前节点的总代价。
[0025]
本发明采用欧几里得距离方法计算预估代价,其计算公式为:
[0026][0027]
为当前节点的坐标,为目标点的坐标。
[0028]
步骤3:确定a3c算法学习策略,a3c(asynchronous advantage actor-critic,a3c)算法,是actor-critic算法框架的一种改进形式,通过建立多个线程子网络与全局网络分享网络参数信息,全局网络将最优的参数反馈给各个线程,使其更有利于和环境的交互,做到异步并发的学习模型。actor网络的输入通常包括机器人的观测信息,如机器人周围的环境状态、其他机器人的位置和速度等,输出则是机器人的动作,其目标是最大化奖励函数,也就是让机器人在环境中的累计奖励最大化。critic网络的输入与actor网络相同,输出则是一个值函数,用于评估动作的好坏,值函数通常使用q函数表示,其定义为:
[0029][0030]
其中,表示当前状态,表示当前动作,表示执行动作后获得的奖励,表示折扣因子,表示下一个状态的值函数,值函数的目标是最小化q函数的误差。
[0031]
步骤3.1:策略确定,在本发明中,每个机器人的目标是最小化到达目标的预期时间,同时避免与相邻机器人发生冲突,通过制定策略 ,满足:
[0032][0033][0034][0035][0036]
其中和表示一个机器人的状态和另一个机器人在时间的状态,是可观测状态,表示距离,表示距离约束,是当前位置,是目标位置,是主体运动学,是时间步长。
[0037]
简化机器人模型可以提高计算效率,高阶模型可以在以下内容中通过简单的修改来适应,rl框架可以应用于基于该机器人与其邻居的联合配置来生成策略,该rl框架应用一个奖励函数在发生冲突时惩罚机器人,在达到目标时奖励机器人。
[0038]
步骤3.2:参数更新,在a3c算法中,一个机器人的多个线程与环境副本交互,同时其他线程与环境交互,在每一轮结束时,每个线程根据其损失项计算的梯度更新全局网络参数。
[0039]
在critic 网络参数的更新中,actor-critic算法通过单步采样近似估计,即:
[0040][0041]
a3c算法更进一步,采用n步采样的方法,同时考虑多步范围内的奖励值,通过衰减因子与当前状态产生联系,从而加快收敛速度,此时为:
[0042][0043]
在网络参数更新时加入策略的熵h项,系数为c,与actor-ctitic算法相比,是分值函数,表示策略参数,其梯度更新公式为:
[0044][0045]
步骤3.3:定义损失函数,actor损失函数用于优化策略函数,使得在给定状态下采取最优动作的概率最大化;critic损失函数用于优化价值函数,使得在给定状态下获得的未来奖励值最大化。
[0046][0047][0048][0049]
其中,为折扣报酬估计;为总损失函数,,分别为策略和价值损失函数;为可调常数参数,用于平衡actor和critic损失函数的相对重要性;为熵函数,用于训练与匹配的价值函数。
[0050]
步骤3.4:网络模型设计,为了使得该算法模型在运动规划可以绕过所有危险部分,从而得到一条最安全最合适的路径,因此将rnn循环神经网络和全连接层相结合,构建神经网络模型,因为rnn循环神经网络对处理具有序列性质的数据很有优势,它不仅考虑当前时刻的输入,而且对之前的网络具有记忆功能。
[0051]
步骤4:奖励函数设计及改进,奖励函数表示为在上述的环境中,机器人的状态为,通过与环境的交互,从而得到当前状态下的动作,通过设定的奖励函数得到该动作的优劣。本发明中奖励函数设置为:
[0052][0053]
其中为机器人当前位置,为目标位置,为当前机器人与障碍物和其他机器人距离,到达终点是奖励为1,当碰撞到障碍物和其他机器人时奖励为-0.25,当与障碍物和其他机器人距离在(0,2)区间内奖励为,其他位置奖励为0。
[0054]
上述奖励函数的多样性问题,可能会发生不同的目标之间存在相互矛盾的关系,从而使得机器人难以做出决策。在这种情况下,机器人无法判断哪个目标更重要,或者如何平衡不同目标之间的权衡。这可能导致机器人无法达到预期的任务目标,或者出现不合理
的行为。为了解决该问题,本发明引入博弈论思想,通过设计不同的奖励权重,以安全第一为基本原则,依次是无冲突和完成任务的基本奖励,根据行为的优先级由高到低,赋予对应奖励函数从大到小的权重,从而为机器人提供优先级判断,总奖励函数如下:
[0055][0056]
其中,表示机器人完成任务的基本奖励,表示权重,满足,和表示机器人与其他机器人或环境发生碰撞和冲突的惩罚。可以将、和定义为:
[0057][0058][0059][0060]
其中,表示机器人数量,为最大正奖励函数,为机器人当前位置,为目标位置,和是常数,用来调整时间和距离之间的权重关系,表示机器人和机器人之间的距离,表示机器人和机器人之间的冲突,是一个指示函数,当括号中的条件成立时,返回1,否则返回0。表示机器人之间的碰撞惩罚,表示机器人之间的冲突惩罚。
[0061]
步骤5:方案选择及策略更新,在多机器人合作系统中,可能会出现正常、极简、冲突、高度密集四种情况,为应对不断变化的多机器人合作系统环境,同时避免算法冗余,针对不同情况下的环境采用不同的运动规划方法,具体方案选择为:在正常情况下选择a3c策略,在极简环境下采用fmp算法,在多机器人冲突、高度密集等复杂情况下选择drl-fmp策略。
[0062]
步骤5.1:极简环境下fmp策略训练,这里的极简环境指的是静态环境,采用a*算法进行路径规划,具体步骤为:
[0063]
step1:对于每个节点,计算该节点到起点的实际距离,以及该节点到终点的估计距离;
[0064]
step2:计算节点的估价函数值;
[0065]
step3:将所有待拓展的节点按照估价函数值从小到大排序,选择值最小的节点进行拓展;
[0066]
step4:对于该节点的所有相邻节点,计算其到起点的实际距离,以及到终点的估计距离。如果该节点还未被扩展过,或者通过当前节点到达该节点的路径更短,则更新该节点的估价函数值,并重新计算该值;
[0067]
step5:重复step3和step4,直到找到最短路径。
[0068]
步骤5.2:正常环境下a3c策略训练,将每个机器人训练为一个强化学习的智能体,使用深度强化学习方法来学习如何在给定的环境中采取最佳行动,a3c生成随机场景以学习最优策略,所有场景都包括随机机器人的初始位置和目标位置,每个机器人的半径范围为和最优速度范围随机地的均匀分布。具体策略更新方式
步骤如下:
[0069]
step1:初始化策略函数,可以采用一个随机初始化的神经网络作为策略函数,输入当前机器人的状态,输出机器人应该执行的动作;
[0070]
step2:进行环境交互,将机器人放入环境中,根据当前策略函数选择一个动作,执行该动作并观察环境的反馈,其中包括奖励和下一时刻状态;
[0071]
step3:记录数据,将每次执行动作得到的状态、动作和奖励等信息记录下来,用于后续的策略更新;
[0072]
step4:训练策略函数,根据记录的数据,使用a3c算法训练策略函数,更新神经网络的权重,使得策略函数更好地适应当前环境;
[0073]
step5:实时更新策略函数,在训练完成后,使用更新后的策略函数进行实时决策。如果环境发生变化,则需要重新进行训练,更新策略函数。
[0074]
步骤5.3:复杂环境下drl-fmp策略训练,利用a3c算法学习一个策略函数,用于控制机器人的运动策略,通过策略函数的学习,机器人可以按照参考轨迹移动,并与其他机器人协同运动,然后,实时更新策略函数和参考轨迹,以优化机器人的运动控制策略。在实时运动过程中,利用a3c算法不断更新策略函数,并通过fmp算法实时更新参考轨迹,以适应复杂环境下的任务需求,具体步骤为:
[0075]
step1:计算参考轨迹,使用a3c算法计算出每个机器人的参考轨迹,该轨迹应该满足安全、无冲突、短路径、快速到达的要求;
[0076]
step2:监测环境变化,在机器人运输过程中,环境可能会发生如出现新的障碍物、机器人状态改变等变化,因此需要实时监测环境变化,并重新计算参考轨迹;
[0077]
step3:更新参考轨迹,如果环境发生变化,需要重新计算每个机器人的参考轨迹,并将其更新到机器人的路径跟踪控制器中;
[0078]
step4:实时路径跟踪,在更新参考轨迹后,机器人可以根据路径跟踪控制器实现实时路径跟踪,并完成多机器人运输任务。
[0079]
本发明设计了混合运动规划算法,用于解决多机器人系统在不同环境状态下的运动规划问题。与现有技术相比,本发明的技术方案具有以下有益技术效果:
[0080]
1.针对不同环境情况,选择不同的运动规划策略,一方面避免算法冗余带来的计算量大、资源浪费等问题,另一方面,融合后的算法更加能适应各种环境的变化,解决动态、冲突、高密度等复杂环境的机器人运动规划问题;
[0081]
2.引入合作博弈思想,设计新的奖励函数,降低拥挤、动态环境下机器人冲突及碰撞的概率,从而更能满足密集动态环境下多机器人运输对协同性、安全性和高效性的要求;
[0082]
3.本发明满足复杂环境下多机器人系统对协同性、安全性和高效性的要求,不仅在工业领域有效,在服务业、农业等领域皆有有益效果。
[0083]
下面将参照附图,对本发明作进一步详细的说明。
附图说明
[0084]
图1是本发明实施例的整体流程图;
[0085]
图2是本发明实施例中的混合控制框架图。
具体实施方式
[0086]
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
[0087]
附图1是本发明实施例的整体流程图,本实施例提供一种复杂环境下基于机器学习的运动规划方法,以生产车间的多个自动导引运输车(automated guided vehicle,agv)运输为例,具体包括以下流程:确定环境和动作空间、采用fmp算法生成参考轨迹、确定a3c算法的学习策略、奖励函数的设计及改进、方案的选择及更新。
[0088]
附图2是本发明实施例中的混合控制框架图,本发明将不同环境下可能产生的场景分为四类,为避免算法冗余及机器人决策不灵活的情况发生,设计一种混合控制下的方案确定方式,具体为:在正常情况下选择a3c策略,在极简环境下采用fmp算法,在多机器人冲突、高度密集等复杂情况下选择drl-fmp策略。
[0089]
具体实施说明如下:
[0090]
实施步骤1:环境和智能体是强化学习系统的主体,在本实施例里,环境设置为生产车间环境,智能体为车间运输agv,环境的确定及agv的动作空间定义如下。
[0091]
步骤1.1:车间建模,根据车间现场的实际环境,采用ros中的gazebo建立车间的3d仿真环境,具体包括可行驶区域、生产设备位置等信息,并根据实际情况确定agv的起点、终点等信息。
[0092]
步骤1.2:定义动作空间,设,,表示一个agv的状态、动作和另一个在时间的状态。状态向量由可观测的和不可观测的两部分组成,即。可观测部分由agv的位置、速度和半径组成,这里可观测指的是相邻agv可见的状态部分,因此,每个agv都有关于其临近agv的信息。目标位置、最优速度和方向(是二维环境的方向,为三维环境方向)以及其他隐藏agv等信息构成了状态的不可观测部分。动作空间包括两个部分:速度和二维环境下的航向角、三维环境下航向角。
[0093]
实施步骤2:采用fmp算法生成参考轨迹,fmp算法是一种基于场量理论的运动规划方法,它可以通过建立吸引力和排斥力场,将agv引导到指定的目标点,并避免与障碍物发生碰撞。
[0094]
步骤2.1:生成参考轨迹,fmp会根据agv的当前位置和目标点的位置计算出吸引力和排斥力场,然后将它们叠加起来,得到agv在当前位置的总场量,agv会根据总场量的方向和大小进行移动。agv受到的作用力可以表示为:
[0095][0096][0097][0098]
其中,是吸引力、是排斥力,为agv当前位置、为目标位置、为障碍物所在位置,为障碍物数量,、分别是调整吸引力和排斥力的系数。
[0099]
步骤2.2:碰撞检测,在生成参考轨迹的过程中,需要考虑agv之间的碰撞问题。因
此,在每次更新参考轨迹时,需要进行碰撞检测,以避免不同agv之间的碰撞。具体检测步骤为:
[0100]
step1:确定agv的运动轨迹以及速度和加速度的限制条件;
[0101]
step2:计算agv与其他agv或障碍物之间的距离和相对速度;
[0102]
step3:根据距离和速度的变化率,预测是否会发生碰撞;
[0103]
step4:如果预测到碰撞,即停止agv的运动,并重新规划其运动轨迹以避免碰撞;
[0104]
step5:如果没有预测到碰撞,则继续按照原定轨迹行进。
[0105]
步骤2.3:路径规划,在生成参考轨迹的过程中,需要避开障碍物和其他agv,因此需要进行路径规划,这里的路径规划通过传统的a*算法来实现。
[0106]
a*算法是简单地图环境中求解最短路径的有效的启发式搜索算法,从给定的起点开始,该方法在当前点环境中进行搜索,并计算每个当前搜索节点到给定起点的累计代价值与当前搜索节点与目标点的预估代价值之和,选取总代价最小的搜索节点为下一拓展节点,当拓展节点为目标点时,算法搜索完毕。a*的启发式评价函数可以表示为:
[0107][0108]
为当前节点与起点的实际代价,为当前节点距离目标节点的预估代价,表示为当前节点的总代价。
[0109]
本发明采用欧几里得距离方法计算预估代价,其计算公式为:
[0110][0111]
为当前节点的坐标,为目标点的坐标。
[0112]
实施步骤3:确定a3c算法学习策略,a3c(asynchronous advantage actor-critic,a3c)算法,是actor-critic算法框架的一种改进形式,通过建立多个线程子网络与全局网络分享网络参数信息,全局网络将最优的参数反馈给各个线程,使其更有利于和环境的交互,做到异步并发的学习模型。actor网络的输入通常包括agv的观测信息,如agv周围的环境状态、其他agv的位置和速度等,输出则是agv的动作,其目标是最大化奖励函数,也就是让agv在环境中的累计奖励最大化。critic网络的输入与actor网络相同,输出则是一个值函数,用于评估动作的好坏,值函数通常使用q函数表示,其定义为:
[0113][0114]
其中,表示当前状态,表示当前动作,表示执行动作后获得的奖励,表示折扣因子,表示下一个状态的值函数,值函数的目标是最小化q函数的误差。
[0115]
步骤3.1:策略确定,在本发明中,每个agv的目标是最小化到达目标的预期时间,同时避免与相邻agv发生冲突,通过制定策略,,满足:
[0116][0117]
[0118][0119][0120]
其中和表示一个机器人的状态和另一个机器人在时间的状态,是可观测状态,表示距离,表示距离约束,是当前位置,是目标位置,是主体运动学,是时间步长。
[0121]
简化agv模型可以提高计算效率,高阶模型可以在以下内容中通过简单的修改来适应,rl框架可以应用于基于该agv与其邻居的联合配置来生成策略,该rl框架应用一个奖励函数在发生冲突时惩罚agv,在达到目标时奖励agv。
[0122]
步骤3.2:参数更新,在a3c算法中,一个agv的多个线程与环境副本交互,同时其他线程与环境交互,在每一轮结束时,每个线程根据其损失项计算的梯度更新全局网络参数。
[0123]
在critic 网络参数的更新中,actor-critic算法通过单步采样近似估计,即:
[0124][0125]
a3c算法更进一步,采用n步采样的方法,同时考虑多步范围内的奖励值,通过衰减因子与当前状态产生联系,从而加快收敛速度,此时为:
[0126][0127]
在网络参数更新时加入策略的熵h项,系数为c,与actor-ctitic算法相比,是分值函数,表示策略参数,其梯度更新公式为:
[0128][0129]
步骤3.3:定义损失函数,actor损失函数用于优化策略函数,使得在给定状态下采取最优动作的概率最大化;critic损失函数用于优化价值函数,使得在给定状态下获得的未来奖励值最大化。
[0130][0131][0132][0133]
其中,为折扣报酬估计;为总损失函数,,分别为策略和价值损失函数;为可调常数参数,用于平衡actor和critic损失函数的相对重要性;为熵函数,方程用于训练与匹配的价值函数。
[0134]
步骤3.4:网络模型设计,为了使得该算法模型在运动规划可以绕过所有危险部分,从而得到一条最安全最合适的路径,因此将rnn循环神经网络和全连接层相结合,构建神经网络模型,因为rnn循环神经网络对处理具有序列性质的数据很有优势,它不仅考虑当前时刻的输入,而且对之前的网络具有记忆功能。
[0135]
实施步骤4:奖励函数设计及改进,奖励函数表示为在上述的环境中,agv的状态为,通过与环境的交互,从而得到当前状态下的动作,通过设定的奖励函数得到该动作的优劣。本发明中奖励函数设置为:
[0136][0137]
其中为agv当前位置,为目标位置,为当前agv与障碍物和其他agv距离,到达终点是奖励为1,当碰撞到障碍物和其他agv时奖励为-0.25,当与障碍物和其他agv距离在(0,2)区间内奖励为,其他位置奖励为0。
[0138]
上述奖励函数的多样性问题,可能会发生不同的目标之间存在相互矛盾的关系,从而使得agv难以做出决策。在这种情况下,agv无法判断哪个目标更重要,或者如何平衡不同目标之间的权衡。这可能导致agv无法达到预期的任务目标,或者出现不合理的行为。为了解决该问题,本发明引入博弈论思想,通过设计不同的奖励权重,以安全第一为基本原则,依次是无冲突和完成任务的基本奖励,根据行为的优先级由高到低,赋予对应奖励函数从大到小的权重,从而为agv提供优先级判断,总奖励函数如下:
[0139][0140]
其中,表示agv完成任务的基本奖励,表示权重,满足,和表示agv与其他agv或环境发生碰撞和冲突的惩罚。可以将、和定义为:
[0141][0142][0143][0144]
其中,表示agv数量,为最大正奖励函数,为agv当前位置,为目标位置,和是常数,用来调整时间和距离之间的权重关系,表示和之间的距离,表示和之间的冲突,是一个指示函数,当括号中的条件成立时,返回1,否则返回0。表示agv之间的碰撞惩罚,表示agv之间的冲突惩罚。
[0145]
步骤5:方案选择及策略更新,在多agv合作系统中,可能会出现正常、极简、冲突、高度密集四种情况,为应对不断变化的多agv合作系统环境,同时避免算法冗余,针对不同情况下的环境采用不同的运动规划方法,具体方案选择为:在正常情况下选择a3c策略,在极简环境下采用fmp算法,在多agv冲突、高度密集等复杂情况下选择drl-fmp策略。
[0146]
步骤5.1:极简环境下fmp策略训练,这里的极简环境指的是静态环境,采用a*算法进行路径规划,具体步骤为:
[0147]
step1:对于每个节点,计算该节点到起点的实际距离,以及该节点到终点的估计距离;
[0148]
step2:计算节点的估价函数值;
[0149]
step3:将所有待拓展的节点按照估价函数值从小到大排序,选择值最小的节点进行拓展;
[0150]
step4:对于该节点的所有相邻节点,计算其到起点的实际距离,以及到终点的估计距离。如果该节点还未被扩展过,或者通过当前节点到达该节点的路径更短,则更新该节点的估价函数值,并重新计算该值;
[0151]
step5:重复step3和step4,直到找到最短路径。
[0152]
步骤5.2:正常环境下a3c策略训练,将每个agv训练为一个强化学习的智能体,使用深度强化学习方法来学习如何在给定的环境中采取最佳行动,a3c生成随机场景以学习最优策略,所有场景都包括随机agv的初始位置和目标位置,每个agv的半径范围为和最优速度范围随机地的均匀分布。具体策略更新方式步骤如下:
[0153]
step1:初始化策略函数,可以采用一个随机初始化的神经网络作为策略函数,输入当前agv的状态,输出agv应该执行的动作;
[0154]
step2:进行环境交互,将agv放入环境中,根据当前策略函数选择一个动作,执行该动作并观察环境的反馈,其中包括奖励和下一时刻状态;
[0155]
step3:记录数据,将每次执行动作得到的状态、动作和奖励等信息记录下来,用于后续的策略更新;
[0156]
step4:训练策略函数,根据记录的数据,使用a3c算法训练策略函数,更新神经网络的权重,使得策略函数更好地适应当前环境;
[0157]
step5:实时更新策略函数,在训练完成后,使用更新后的策略函数进行实时决策。如果环境发生变化,则需要重新进行训练,更新策略函数。
[0158]
步骤5.3:复杂环境下drl-fmp策略训练,利用a3c算法学习一个策略函数,用于控制agv的运动策略,通过策略函数的学习,agv可以按照参考轨迹移动,并与其他agv协同运动,然后,实时更新策略函数和参考轨迹,以优化agv的运动控制策略。在实时运动过程中,利用a3c算法不断更新策略函数,并通过fmp算法实时更新参考轨迹,以适应复杂环境下的任务需求,具体步骤为:
[0159]
step1:计算参考轨迹,使用a3c算法计算出每个agv的参考轨迹,该轨迹应该满足安全、无冲突、短路径、快速到达的要求;
[0160]
step2:监测环境变化,在agv运输过程中,环境可能会发生如出现新的障碍物、agv状态改变等变化,因此需要实时监测环境变化,并重新计算参考轨迹;
[0161]
step3:更新参考轨迹,如果环境发生变化,需要重新计算每个agv的参考轨迹,并将其更新到agv的路径跟踪控制器中;
[0162]
step4:实时路径跟踪,在更新参考轨迹后,agv可以根据路径跟踪控制器实现实时路径跟踪,并完成多agv运输任务。

技术特征:
1.一种复杂环境下基于机器学习的运动规划方法,其特征在于,包括以下步骤:步骤一、确定环境和动作空间;步骤二、设计fmp运动规划算法,根据总场量生成参考轨迹,采用a*算法进行路径规划,并用欧几里得距离计算预估代价;步骤三、确定a3c算法学习策略,采用rnn设计其神经网络模型;步骤四、奖励函数设计及改进,引入合作博弈思想改进奖励函数,通过权重大小确定新奖励函数的奖励优先级;步骤五、方案选择及策略更新,在正常情况下采用a3c策略、在极简环境下使用fmp算法、在多agv冲突及高度密集的复杂情况下选择drl-fmp策略,并分别对所选择的策略进行更新训练。2.根据权利要求1所述的一种复杂环境下基于机器学习的运动规划方法,其特征在于,步骤二所述的设计fmp运动规划算法,根据总场量生成参考轨迹,采用a*算法进行路径规划,并用欧几里得距离计算预估代价,具体按照以下步骤实施:生成参考轨迹时机器人受到的作用力表示为:生成参考轨迹时机器人受到的作用力表示为:生成参考轨迹时机器人受到的作用力表示为:其中,是吸引力、是排斥力,为机器人当前位置、为目标位置、为障碍物所在位置,为障碍物数量,、分别是调整吸引力和排斥力的系数;在生成参考轨迹的过程中,通过传统的a*算法实现该过程的路径规划,其中a*的启发式评价函数表示为:采用欧几里得距离方法计算预估代价,为当前节点与起点的实际代价,为当前节点距离目标节点的预估代价,表示为当前节点的总代价,为当前节点的坐标,为目标点的坐标,其计算公式为:生成轨迹的具体检测步骤为:step1:确定运动轨迹、速度和加速度;step2:计算相对距离和相对速度;step3:计算距离和速度的变化率,预测是否会发生碰撞;step4:预测有碰撞,停止运动,并重新规划其运动轨迹;step5:预测无碰撞,按照原定轨迹行进。3.根据权利要求1所述的一种复杂环境下基于机器学习的运动规划方法,其特征在于,步骤三所述的确定a3c算法学习策略,采用rnn设计其神经网络模型,具体按照以下步骤实
施:确定学习策略,为所制定的策略,满足:为所制定的策略,满足:为所制定的策略,满足:为所制定的策略,满足:其中为预期目标,为发生冲突的相邻机器人,和表示一个机器人的状态和另一个机器人在时间的状态,是可观测状态,表示距离,表示距离约束,是当前位置,是目标位置,是主体运动学,是时间步长;网络模型的设计,将rnn循环神经网络和全连接层相结合,构建神经网络模型。4.根据权利要求1所述的一种复杂环境下基于机器学习的运动规划方法,其特征在于,步骤四所述的引入合作博弈思想改进奖励函数,通过权重大小确定新奖励函数的奖励优先级,具体按照以下步骤实施:设计奖励函数为:其中表示奖励函数,为机器人当前位置、为目标位置,为当前机器人与障碍物和其他机器人距离;通过设计不同的奖励权重,总奖励函数如下:其中,表示机器人完成任务的基本奖励,表示权重,满足,和表示机器人与其他机器人或环境发生碰撞和冲突的惩罚,将、和定义为:定义为:定义为:其中,表示机器人数量,为最大正奖励函数,和是调整时间和距离之间权
重关系的常数,表示机器人和之间的距离,表示机器人和之间的冲突,是一个指示函数,当括号中的条件成立时,返回1,否则返回0,表示机器人之间的碰撞惩罚,表示机器人之间的冲突惩罚。

技术总结
本发明公开一种复杂环境下基于机器学习的运动规划方法,该方法涉及车间运输、机器学习、机器人控制、运动规划等领域。首先设计基于FMP的运动规划算法和基于A3C的运动规划算法,在A3C算法的改进中引入博弈论思想设计奖励函数,然后将改进后的A3C算法与FMP算法进行融合,以此形成三种运动规划策略,在解决多机器人系统在不同环境状态下的运动规划问题时采用不同的运动规划策略,避免算法冗余造成的资源浪费。与其他方法相比,本发明不仅能够提高模型的泛化能力及运动规划效率,还能满足复杂环境下多机器人系统对协同性、安全性和高效性的要求,可以提高多机器人系统的工作效率,可应用于物流业、工业、服务业、农业等领域。农业等领域。农业等领域。


技术研发人员:李慧 罗明月 李佳男 魏俊杰 孙哲 张秀梅 刘越 秦伟 丛铄沣 杨帆
受保护的技术使用者:长春工业大学
技术研发日:2023.07.12
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐