发明内容
本发明提供一种用于仓储物流的智能机器人控制方法及系统,以解决现有物流仓库的ARM机器人的路线规划不合理,导致包裹运输效率低的问题。
本发明的一种用于仓储物流的智能机器人控制方法采用如下技术方案:
获取ARM机器人在仓储二维作业区地图中的任务路径;
根据任务路径上每个点的坐标、时间获取ARM机器人在三维空间中的路径曲线;获取每个ARM机器人的路径曲线与其他所有ARM机器人的路径曲线的交点及交点坐标;
获取每个ARM机器人运送包裹时的惯性,获取每个包裹的紧急程度;根据ARM机器人运送的包裹对应的紧急程度及惯性获取ARM机器人在通过每个交点时的优先级;
根据ARM机器人在每个交点时的交点坐标、速度、加速度、优先级获取每个ARM机器人的状态向量;
根据ARM机器人的速度及预设的安全直径获取ARM机器人在每个交点进行避让时的避让时间,根据ARM机器人在每个交点进行避让的避让时间及实际避让时间构建奖励函数;
基于奖励函数构建深度学习网络,将每个ARM机器人对应的状态向量作为深度学习网络的输入,人工对每个ARM机器人的标记一个路线并作为ARM机器人的最优路线将每个ARM机器人对应的最优路线作为深度学习网络的输出,对深度学习网络训练,当奖励函数收敛时得到训练好的深度学习网络模型;
将二维作业区地图中的每个待规划路线的ARM机器人对应的状态向量输入训练好的深度学习网络模型,得到每个待规划路线的ARM机器人的最优路线,并控制ARM机器人按照最优路线运行。
优选的,构建奖励函数包括:
根据ARM机器人在每个交点进行避让的避让时间获取ARM机器人从路径曲线第一个冲突点到当前冲突点避让其他ARM机器人时所花费的总避让时间;
根据ARM机器人在每个交点进行避让的实际避让时间获取ARM机器人从路径曲线第一个冲突点到当前冲突点避让其他ARM机器人时实际避让总时间;
根据路径曲线上第一个冲突点到当前冲突点的数量与路径曲线上冲突点的总数量获取当前冲突点对应的奖励值的折扣因子;
将总避让时间与实际避让时间的差值作为当前冲突点的奖励值;
根据路径曲线上每个冲突点对应的奖励值与奖励值的折扣因子获取奖励函数。
优选的,获取每个包裹的紧急程度包括:
获取每个包裹的接单时间、ARM机器人运送包裹的出发时间及当前时间;
获取ARM机器人运送包裹的出发时间与当前时间的第一时间差值;
获取ARM机器人运送包裹的出发时间与包裹的接单时间的第二时间差值;
将第一时间差值与第二时间差值的比值绝对值作为对应的包裹的紧急程度。
优选的,获取ARM机器人在通过每个交点时的优先级包括:
将ARM机器人运送的包裹对应的紧急程度及ARM机器人运送包裹时的惯性的和值作为ARM机器人在通过每个交点时的优先级。
优选的,获取每个ARM机器人的状态向量包括:
将ARM机器人的路径曲线与其他所有路径曲线的交点记为冲突点;
获取ARM机器人的当前坐标与每个冲突点的距离,并按照从小到大排列得到距离序列;
以ARM机器人的路径曲线与其他路径曲线的交点对应的交点坐标、ARM机器人在交点时速度、加速度、优先级作为状态向量的元素值;
按照距离序列对应的交点的顺序对元素值进行排列得到每个ARM机器人的状态向量;
其中,状态向量中的元素值个数为ARM机器人的总个数,当状态向量中的元素值个数不足ARM机器人的总个数时,将不足的位置对应的元素值补0。
优选的,将预设的安全直径与ARM机器人的速度的比值作为ARM机器人在每个交点进行避让时的避让时间。
优选的,在三维空间中时间轴的初始时间为每个ARM机器人每天启动时的时刻。
优选的,获取每个ARM机器人运送包裹时的惯性包括:
获取ARM机器人和其运送包裹的总重量及ARM机器人的最大负载重量;
获取ARM机器人和其运送包裹的总重量与其速度的乘积;
将总重量与速度的乘积与最大负载重量的比值作为ARM机器人运送包裹时的惯性。
一种用于仓储物流的智能机器人控制系统,包括:
信息采集模块,用于获取ARM机器人在仓储二维作业区地图中的任务路径;
特征获取模块,用于根据任务路径上每个点的坐标、时间获取ARM机器人在三维空间中的路径曲线;获取每个ARM机器人的路径曲线与其他所有ARM机器人的路径曲线的交点及交点坐标;用于获取每个ARM机器人运送包裹时的惯性,获取每个包裹的紧急程度;根据ARM机器人运送的包裹对应的紧急程度及惯性获取ARM机器人在通过每个交点时的优先级;用于根据ARM机器人在每个交点时的交点坐标、速度、加速度、优先级获取每个ARM机器人的状态向量;
网络构建模块,用于根据ARM机器人的速度及预设的安全直径获取ARM机器人在每个交点进行避让时的避让时间,根据ARM机器人在每个交点进行避让的避让时间及实际避让时间构建奖励函数;用于基于奖励函数构建深度学习网络,将每个ARM机器人对应的状态向量作为深度学习网络的输入,人工对每个ARM机器人的标记一个路线并作为ARM机器人的最优路线将每个ARM机器人对应的最优路线作为深度学习网络的输出,对深度学习网络训练,当奖励函数收敛时得到训练好的深度学习网络模型;
路线规划模块,用于将二维作业区地图中的每个待规划路线的ARM机器人对应的状态向量输入训练好的深度学习网络模型,得到每个待规划路线的ARM机器人的最优路线,并控制ARM机器人按照最优路线运行。
本发明的一种用于仓储物流的智能机器人控制方法及系统的有益效果是:
通过对路口冲突问题进行分析,可以将路口冲突问题分为空间重叠和时间冲突两个方面,空间重叠不一定会导致路口冲突,无空间重叠一定不会导致路口冲突,只有同时满足空间重叠和时间冲突才会导致路口冲突,故获取同时存在空间冲突和时间冲突的节点,即ARM机器人的路径曲线与其他所有ARM机器人的路径曲线的交点,从而保证精确定位冲突位置,其次,利用ARM机器人在每个冲突点时的速度、位置、加速度、所有优先级来综合描述每个ARM机器人在通过冲突点的特征,然后根据速度、位置、加速度、优先级来得到每个ARM机器人在对应路径曲线上的状态向量,利用状态向量来构建深度学习网络的奖励函数,使得在利用深度学习网络获得ARM机器人的最优路线时,即通过ARM机器人的速度、位置、加速度、所有优先级得到的状态向量来对深度学习网络训练,保证得到每个ARM机器人的最优路线,即本发明通过智能合理的规划每个ARM机器人的最优路线,使得每个ARM机器人实现智能避障,从而提高包裹的运输效率。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的一种用于仓储物流的智能机器人控制方法的实施例,如图1所示,该方法包括:
S1、获取ARM机器人的任务路径;
具体的,ARM机器人使用SLAM激光导航技术,能够实时与总服务器交换数据,能够通过激光雷达自主地识别周围的环境信息,不需要依赖外部辅助定位设施,且ARM机器人能够通过排单系统灵活地接取下达的任务单,这些任务中包括电量到达临界点时将自动前往充电桩,由于ARM机器人默认走直线,只有拐弯时才走曲线,因此,任务路径只由长度可变的直线和转弯半径有限的曲线构成,故根据ARM机器人的当前位置坐标和目的位置坐标在仓储的二维作业区地图中获取ARM机器人的任务路径,如图2所示,图中实心原点为当前位置坐标,圆角折线为任务路径。
S2、获取ARM机器人在每个交点时的交点坐标、速度、加速度、优先级,并得到状态向量;
具体的,根据任务路径上每个点的坐标、时间获取ARM机器人在三维空间中的路径曲线,其中,构建三维坐标系包括:三维坐标系以二维作业区地图的长度方向为任务路径上每个点的横坐标轴,二维作业区地图的宽度方向为任务路径上每个点的纵坐标,以垂直于二维作业区地图的方向为时间坐标轴得到三维坐标系,然后,获取每个ARM机器人在每个时刻对应的坐标得到ARM机器人在三维空间中的路径曲线,其中,时间轴的原点设定ARM机器人在每一天的作业开始时刻,其中,三维空间中的路径曲线上每个点的坐标为(x,y,t),(x,y)为ARM机器人实际作业环境的二维作业区地图中的坐标,(x,y,t)则表示在t时刻ARM机器人的坐标为(x,y)。
具体的,获取每个ARM机器人的路径曲线与其他所有ARM机器人的路径曲线的交点及交点坐标;由于,路口冲突问题可以分解为空间重叠和时间冲突两个方面,空间重叠不一定会导致路口冲突,无空间重叠一定不会导致路口冲突,只有同时满足空间重叠和时间冲突才会导致路口冲突,故同时存在空间冲突和时间冲突的节点才能作为冲突点,具体的,获取冲突点时,将每个ARM机器人作为目标ARM机器人,以目标ARM机器人为例,获取目标ARM机器人在三维坐标系中的路径曲线与其他所有ARM机器人的路径曲线的交点,该交点即表明了目标ARM机器人的路径与其他ARM机器人的路径存在冲突,故将交点作为冲突点,然后在三维坐标系中获取目标ARM机器人与其他所有ARM机器人的路径曲线的交点坐标。
具体的,获取每个ARM机器人运送包裹时的惯性,获取每个包裹的紧急程度。其中,本实施例中,ARM机器人都是以设定的最高速度运行的,由于,避让行为是通过减速实现的,速度越快,减速对于任务的损失更大,负载程度越大,惯性I越大,越难减速下来。
故,ARM机器人运送包裹时的惯性I的计算方法为:获取ARM机器人和其运送包裹的总重量及ARM机器人的最大负载重量;获取ARM机器人和其运送包裹的总重量与其速度的乘积;将总重量与速度的乘积与最大负载重量的比值作为ARM机器人运送包裹时的惯性,比上最大负载重量目的,是为了对惯性进行归一化。
其中,每个包裹的紧急程度的计算方法为:获取每个包裹的接单时间、ARM机器人运送包裹的出发时间及当前时间;获取ARM机器人运送包裹的出发时间与当前时间的第一时间差值;获取ARM机器人运送包裹的出发时间与包裹的接单时间的第二时间差值;将第一时间差值与第二时间差值的比值绝对值作为对应的包裹的紧急程度,其中,包裹的紧急程度Z的计算公式为:
式中,Z表示ARM机器人运送的包裹的紧急程度;
Tnow表示ARM机器人运送包裹的当前时间;
Tget表示ARM机器人接受运送包裹时的接单时间;
Tsend表示ARM机器人运送包裹出发时的出发时间;
| |表示绝对值符号。
需要说明的是,当前时间、接单时间及出发时间的单位均是小时,本实施例采用24小时制,分钟转化为对应的小时,例如14:30转化为14.5小时,本实施例认为,包裹发车时间距当前时间越长,即包裹发车时间距当前时间的差值绝对值越大,说明包裹越紧急,接单时间到出发时间越长,即包裹接单时间到出发时间的差值绝对值越大,说明包裹停留时间过长,则认为其越不紧急。
具体的,根据ARM机器人运送的包裹对应的紧急程度及惯性获取ARM机器人在通过每个交点时的优先级;其中,对于包裹来说,其对应的紧急程度越大,说明其越重要,越应该优先通过,而对于惯性大的ARM机器人,其惯性I越大ARM机器人进行急刹车时,容易造成ARM机器人上运载的包裹滑落,因此,发生路口冲突时一般情况让惯性I更大的ARM机器人优先通过,故本实施例中,将ARM机器人运送的包裹对应的紧急程度及惯性的和值作为ARM机器人在通过每个交点时的优先级,而对ARM机器人遇到人类员工的处理应当更加礼让,即人类员工的优先级最高,而且人类员工的运动状态随机性较强,应该将安全距离设置的更大些,利用ARM机器人上的红外传感器检测人类员工,通过接收人体发出的红外线频谱的固定模式,来确认前方是否存在人类员工,当ARM机器人遇到人类员工时,直接进行新的路径规划,即人类通过的优先级最高,即针对人类员工,需要重新规划路径并减小牵引力。
具体的,根据ARM机器人在每个交点时的交点坐标、速度、加速度、优先级获取每个ARM机器人的状态向量,其中,获取状态向量的具体过程为:将ARM机器人的路径曲线与其他所有路径曲线的交点记为冲突点;获取ARM机器人的当前坐标与每个冲突点的距离,并按照从小到大排列得到距离序列;以ARM机器人的路径曲线与其他路径曲线的交点对应的坐标、ARM机器人在交点时速度、加速度、优先级作为状态向量的元素值;按照距离序列对应的交点的顺序对元素值进行排列得到每个ARM机器人的状态向量;其中,状态向量中的元素值个数为ARM机器人的总个数,当状态向量中的元素值个数不足ARM机器人的总个数时,将不足的位置对应的元素值补0。
S3、构建奖励函数并获取深度学习网络;
具体的,基于奖励函数构建深度学习网络,将每个ARM机器人对应的状态向量作为深度学习网络的输入,人工对每个ARM机器人的标记一个路线并作为ARM机器人的最优路线将每个ARM机器人对应的最优路线作为深度学习网络的输出,对深度学习网络训练,当奖励函数收敛时得到训练好的深度学习网络模型。
本实施例采用的深度学习网络的核心思想是让ARM机器人不断地试错,找到最优路线的策略,数学上表现为拟合一个深度学习网络,即深度学习网络的输入为ARM机器人在路径曲线上的每个点的状态,即每个ARM机器人的路径曲线对应的状态向量,从而获得最高的奖励,输出ARM机器人的最优路线。
根据ARM机器人的速度及预设的安全直径获取ARM机器人在每个交点进行避让时的避让时间,根据ARM机器人在每个交点进行避让的避让时间及实际避让时间构建奖励函数,为了实现智能避障,首先设定ARM机器人的安全距离,即设定安全距离为以ARM机器人的中心为中心,以半径为1作圆得到的区域记为安全区域,即安全直径为2米,然后根据ARM机器人的速度及预设的安全直径获取ARM机器人在每个交点进行避让时的避让时间,具体的,避让时间T的计算公式:
式中,2r表示ARM机器人的安全直径;
v表示ARM机器人在每个交点时对应的实时速度;
需要说明的是,安全直径和避让时间为正比关系,速度和避让时间为反比关系,在ARM机器人在避让某一ARM机器人时,为了避免因物理误差导致相撞,实际运用中必然不可能贴着避让,且,每个ARM机器人可以视为一个球形的物体,因此,本实施例中,将安全直径设置为2米,其次,被避让的ARM机器人的路口占用时间是确定的,因此本实施例中可以直接忽略减速过程,同时,计算ARM机器人在每个交点进行避让时的避让时间的目的是,为了节省实际深度学习网络训练过程中该过程的计算时间。
具体的,根据ARM机器人在每个交点进行避让的避让时间及实际避让时间构建奖励函数;由于实际避让时间是可以得到的,奖励函数指的是某个时间在状态向量中的对应元素值经过动作并到达下一时间对应的状态向量中的对应元素值,其中状态向量的元素值为:ARM机器人的路径曲线与其他路径曲线的交点对应的坐标、ARM机器人在交点时速度、加速度、优先级,利用奖励函数得到能够指示整个深度学习网络的优化方向,具体的,构建奖励函数包括:根据ARM机器人在每个交点进行避让的避让时间获取ARM机器人从路径曲线第一个冲突点到当前冲突点避让其他ARM机器人时所花费的总避让时间;根据ARM机器人在每个交点进行避让的实际避让时间获取ARM机器人从路径曲线第一个冲突点到当前冲突点避让其他ARM机器人时实际避让总时间;根据路径曲线上第一个冲突点到当前冲突点的数量与路径曲线上冲突点的总数量获取当前冲突点对应的奖励值的折扣因子,将总避让时间与实际避让时间的差值作为当前冲突点的奖励值;根据路径曲线上每个冲突点对应的奖励值与奖励值的折扣因子获取奖励函数,本实施例使用的获取奖励值的算法是时间差分算法,时间差分算法为现有技术本实施例不再赘述。为了使得通过冲突点的时间花费最低,奖励值计算公式为:
Rt=Ttb-Tt1
式中,Rt表示ARM机器人在冲突点t时避让其他ARM机器人的奖励值;
Ttb表示ARM机器人从路径曲线第一个冲突点到冲突点t避让其他ARM机器人时所花费的总避让时间;
Tt1表示ARM机器人从路径曲线第一个冲突点到冲突点t避让其他ARM机器人时实际避让总时间;
需要说明的是,避让时间T是为了将奖励函数R对应的奖励值的分布控制在0附近,让不同的时刻的奖励值有正有负,避让梯度下降的速度过慢。
具体的,获取冲突点对应的奖励值的折扣因子包括:折扣因子θ用于考虑未来的运动趋势带来的奖励,即折扣因子θ的值越大,决策越看重长期奖励,反之,则以短期的奖励为主,具体的,折扣因子的计算公式为:
式中,θ表示折扣因子;
Nm表示ARM机器人从路径曲线上第一个冲突点到当前冲突点的数量;
N表示ARM机器人的路径曲线上冲突点的总数量;
需要说明的是,在当前时刻的路径曲线上冲突点的数量Nm越多,则说明未来环境中的不确定性因素越多,当前的路线虽然看似带来了正向的收益,但随着环境中的随机性因素的干扰,长期收益会偏低,因此,对应的折扣因子θ越小,反之,数量Nm越少,折扣因子θ越大。
具体的,奖励函数为:
Q=Rt+θ1Rt+1+θ2Rt+2+...+θlRt+l
式中,Q表示总奖励值,θ1表示在第1个冲突点对应的折扣因子,θ2表示在第2个冲突点对应的折扣因子,θl表示在t+l冲突点对应的折扣因子,用于考虑未来的运动趋势带来的奖励,即θ的值越大,决策越看重长期奖励,反之,则以短期的奖励为主;Rt+l表示在t+l冲突点对应的奖励值,Rt表示在t冲突点对应的奖励值,Rt+1表示在t+1冲突点对应的奖励值,Rt+2表示在t+2冲突点对应的奖励值,需要说明的是,奖励函数即为深度学习网络中的状态价值函数,为现有技术函数,本发明中只是对折扣因子和奖励值进行了定义,故本实施例中不再对奖励函数进行赘述。
将构建的奖励函数作为深度神经网络训练时的函数,将每个ARM机器人对应的状态向量作为深度学习网络的输入,人工对每个ARM机器人的标记一个路线并作为ARM机器人的最优路线将每个ARM机器人对应的最优路线作为深度学习网络的输出,并对深度学习网络训练得到训练好的深度学习网络模型,当奖励函数收敛时得到训练好的深度学习网络模型,即奖励函数的总奖励值最高时;具体的,为了使得对多个ARM机器人同时进行规划最优路线,其中,深度学习网络核心思想是让智能体不断地试错,找到最优的应对策略,数学上表现为拟合一个神经网络,深度学习网络为现有技术网络,本实施例不再赘述,为了使得ARM机器人能够适应绝大多数人机协作场景,实际作业的数据采集成本过大,需要对深度学习网络的深度学习网络进行训练,利用训练完成后的深度学习网络模型才可用于在线控制,并在每一个ARM中载入作业区的地图,然后收集仓储物流的订单数据,获得包裹的重量,出发地和目的地信息的分布情况,根据此随机生成订单任务,供ARM机器人进行虚拟作业,并且,在场景中安排若干个随机游走的障碍物,以模拟人类作业人员的行为,在作业过程中,记录发生碰撞的次数,使用奖励函数对深度学习网络进行训练,训练100万次以上,直至奖励函数的总奖励值的不再有上升的趋势,则得到了训练好的深度学习网络,为了使得深度学习网络更精确,使用数据增强技术改变作业区的地图,模拟现实中的环境变动,例如某处增加了堆放的货物,使用新的作业区的地图再次进行训练,对所有的作业区的地图完成训练即可得到训练完成的深度学习网络。
由于,ARM机器人避让了比自己高优先级的ARM机器人不一定带来全局的效率提升,可能因为一次避让,导致后续更多的冲突区域的产生,故在本实施例中利用中心协调网络结合训练好的深度学习网络得到深度学习网络模型,其中,深度学习网络模型的顶层是中心协调网络,底层是每一个ARM机器人对应深度学习网络,来进行后续的所有ARM机器人的最优路线的规划,其中,中心协调网络对ARM机器人的信息进行集中收集分发,对通信次数和复杂度进行有效控制,使算法更好的缓解环境非平稳造成的多智能体策略不协调的问题,通过深度学习网络的这种通信学习的方法,ARM机器人之间通过通信来沟通各自的当前状态和策略产生的对应的动作,可以减轻由马尔科夫决策过程和非平稳环境引起的问题,使所有ARM机器人的路线更协调。
S4、获取待规划路线的ARM机器人的最优路线;
将二维作业区地图中的每个待规划路线的ARM机器人对应的状态向量输入训练好的深度学习网络模型,得到每个待规划路线的ARM机器人的最优路线,并控制ARM机器人按照最优路线运行。
具体的,利用步骤S3得到的将二维作业区地图中的每个待规划路线的ARM机器人对应的状态向量输入训练好的深度学习网络模型,得到所有待规划路线的ARM机器人的最优路线,并控制ARM机器人按照对应的最优路线运行。
本发明的一种用于仓储物流的智能机器人控制系统,包括:信息采集模块、特征获取模块、网络构建模块及路线规划模块,具体的,信息采集模块,用于获取ARM机器人在仓储二维作业区地图中的任务路径;特征获取模块,用于根据任务路径上每个点的坐标、时间获取ARM机器人在三维空间中的路径曲线;获取每个ARM机器人的路径曲线与其他所有ARM机器人的路径曲线的交点及交点坐标;用于获取每个ARM机器人运送包裹时的惯性,获取每个包裹的紧急程度;根据ARM机器人运送的包裹对应的紧急程度及惯性获取ARM机器人在通过每个交点时的优先级;用于根据ARM机器人在每个交点时的交点坐标、速度、加速度、优先级获取每个ARM机器人的状态向量;网络构建模块,用于根据ARM机器人的速度及预设的安全直径获取ARM机器人在每个交点进行避让时的避让时间,根据ARM机器人在每个交点进行避让的避让时间及实际避让时间构建奖励函数;用于基于奖励函数构建深度学习网络,将每个ARM机器人对应的状态向量作为深度学习网络的输入,人工对每个ARM机器人的标记一个路线并作为ARM机器人的最优路线,将每个ARM机器人对应的最优路线作为深度学习网络的输出,对深度学习网络训练,当奖励函数收敛时得到训练好的深度学习网络模型;路线规划模块,用于将二维作业区地图中的每个待规划路线的ARM机器人对应的优先级、状态向量及路径曲线输入训练好的深度学习网络模型,得到每个待规划路线的ARM机器人的最优路线,并控制ARM机器人按照最优路线运行。
本发明的一种用于仓储物流的智能机器人控制方法及系统,通过分析路口冲突问题,可以将路口冲突问题分为空间重叠和时间冲突两个方面,空间重叠不一定会导致路口冲突,无空间重叠一定不会导致路口冲突,只有同时满足空间重叠和时间冲突才会导致路口冲突,故通过获取同时存在空间冲突和时间冲突的节点作为冲突节点,从而保证精确定位冲突位置,其次,利用ARM机器人的速度、位置、加速度、所有优先级来综合描述每个ARM机器人在通过冲突点的特征,然后根据速度、位置、加速度、优先级来得到每个ARM机器人在对应路径曲线上的状态向量,利用状态向量来构建深度学习网络的奖励函数,使得在利用深度学习网络获得ARM机器人的最优路线时,通过ARM机器人的速度、位置、加速度、所有优先级得到的状态向量来对深度学习网络训练,保证得到每个ARM机器人的最优路线,即本发明通过智能获取每个ARM机器人的最优路线,使得每个ARM机器人实现智能避障,从而提高包裹的运输效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。