自动驾驶设备的控制方法、装置及存储介质与流程

文档序号:25541474发布日期:2021-06-18 20:37阅读:44来源:国知局
自动驾驶设备的控制方法、装置及存储介质与流程

本申请涉及智能设备技术领域,特别涉及一种自动驾驶设备的控制方法、装置及存储介质。



背景技术:

目前,诸如agv(automatedguidedvehicle,自动引导车)之类的自动驾驶设备在一些场景中得到广泛的应用,譬如,在自动化仓库系统中,agv可以用于自动搬运货物,无需人工控制。

通常情况下,自动驾驶设备可以采用传统的诸如a*、d*之类的路径规划算法来确定行驶路径,然后沿着该行驶路径,自动完成货物的搬运。然而,当环境中的自动驾驶设备的数量增多或者环境发生动态变化时,传统的路径规划算法的计算速度非常慢,不利于实时的任务规划,从而容易出现多个自动驾驶设备发生拥堵的现象。



技术实现要素:

本申请提供了一种自动驾驶设备的控制方法、装置及存储介质,可以解决相关技术中采用传统的路径规划算法容易出现多个自动驾驶设备发生拥堵的现象问题。所述技术方案如下:

一方面,提供了一种自动驾驶设备的控制方法,所述方法包括:

确定第一状态序列,所述第一状态序列包括全局环境信息;

基于所述第一状态序列,通过第一神经网络模型确定位置概率分布,所述位置概率分布用于确定当前目标点;

基于多个时刻对应的第二状态序列和所述位置概率分布,通过第二神经网络模型确定所述多个时刻对应的动作空间,并基于所述多个时刻对应的动作空间,控制所述自动驾驶设备行驶,以使所述自动驾驶设备向所述当前目标点移动;

其中,每个时刻对应的第二状态序列包括所述自动驾驶设备在每个时刻所处位置的周围的局部环境信息,每个时刻对应的动作空间用于指示每个时刻所要执行的动作。

另一方面,提供了一种自动驾驶设备的控制装置,所述装置包括:

第一确定模块,用于确定第一状态序列,所述第一状态序列包括全局环境信息;

第二确定模块,用于基于所述第一状态序列,通过第一神经网络模型确定当前目标点的位置概率分布;

第三确定模块,用于基于多个时刻对应的第二状态序列和所述位置概率分布,通过第二神经网络模型确定所述多个时刻对应的动作空间,并基于所述多个时刻对应的动作空间,控制所述自动驾驶设备行驶,以使所述自动驾驶设备向所述当前目标点移动;

其中,每个时刻对应的第二状态序列包括所述自动驾驶设备在每个时刻所处位置的周围的局部环境信息,每个时刻对应的动作空间用于指示每个时刻所要执行的动作。

另一方面,提供了一种自动驾驶设备,自动驾驶设备包括探测传感器、行进部件、处理器和收发器:

所述探测传感器用于进行环境探测,以得到局部环境信息;

所述收发器用于接收所述全局环境信息;

所述处理器用于基于所述探测传感器探测得到的局部环境信息和所述收发器接收的全局环境信息,确定所述自动驾驶设备需要执行的动作,并根据所确定的动作控制所述行进部件移动。

作为一种示例,所述探测传感器为图像传感器,所述图像传感器用于采集周围的环境图像作为所述局部环境信息。

作为一种示例,所述收发器用于向其他设备发送本设备的位置信息和/或动作空间,所述收发器还用于接收其他设备发送的其他设备的位置信息和/或动作空间。

另一方面,提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述所述自动驾驶设备的控制方法的步骤。

另一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述所述的自动驾驶设备的控制方法的步骤。

本申请提供的技术方案至少可以带来以下有益效果:

确定第一状态序列,该第一状态序列包括全局环境信息,基于该第一状态序列,通过第一神经网络模型确定当前目标点的位置概率分布。基于多个时刻对应的第二状态序列和位置概率分布,通过第二神经网络模型,确定该多个时刻对应的动作空间,每个时刻对应的动作空间用于指示每个时刻所要执行的动作,并基于该多个时刻对应的动作空间,控制该自动驾驶设备行驶,以使该自动驾驶设备向所述当前目标点移动。其中,每个时刻对应的第二状态序列包括自动驾驶设备在每个时刻所处位置的周围的局部环境信息。也即是,将整个任务通过两个独立的神经网络模型进行分层化处理,以实现对自动驾驶设备的控制,如此可以提高任务的规划效率,从而避免多个自动驾驶设备发生拥堵的现象。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种自动驾驶设备的结构示意图;

图2是本申请实施例提供的一种自动驾驶设备的控制方法的流程图;

图3是本申请实施例提供的一种自动驾驶设备的控制装置的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

在对本申请实施例提供的自动驾驶设备的控制方法进行详细介绍之前,先对本申请实施例涉及的应用场景和实施环境进行简单介绍。

首先,对本申请实施例涉及的应用场景进行简单介绍。

目前,在自动化仓储系统中,自动驾驶设备在不需要人工控制的情况下,可以采用传统的路径规划算法自动执行规划路径的任务,以基于规划的路径自动完成快递包裹分拣、仓库货架搬运等任务,如此可以大幅度降低传统仓储物流的人力成本,当然,如果规划的路径的路径长度短、路径耗时较少、能够合理避障以及躲避拥堵,则说明规划的路径越好。

在多个自动驾驶设备的应用场景中,传统的路径规划算法难以在规划层面全面的考虑各条路径之间的时空冲突以及相互影响,导致难以获得全局最优解,此外,当环境中的自动驾驶设备数量增多或者环境发生动态变化时,传统的路径规划算法的计算速度非常慢,不利于实时的任务规划,且极容易出现多个自动驾驶设备发生拥堵的现象,影响了整个系统的任务完成效率。

随着近年来人工智能技术的快速发展,深度强化学习作为人工智能领域内最受关注的研究方向之一,已经在游戏、机器人控制等领域取得了很多不错的结果。在深度强化学习中,可以使用神经网络模型对环境建模,获取环境信息对应的状态序列(又可称为状态空间),基于状态序列确定动作空间,执行该动作空间指示的动作。同时,环境会对智能体(如本申请中的自动驾驶设备)的每个动作进行反馈,通过设置累积奖励的目标函数,来最大化智能体在当前状态下所能取得的未来期望收获,以辅助智能体在每一个状态采取更优的行为和动作。

然而,利用现有的深度强化学习实现多个自动驾驶设备的路径规划时,一个明显的缺点在于神经网络模型的方式比较单一,导致对输入的信息的提炼力度不够,学习效率不高。另外,在包括多个自动驾驶设备的环境下,高维度的状态空间下的搜索模式单一,也会使得深度强化学习的收敛速度变慢,难以取得较好的性能表现。除此之外,在实际任务中,自动驾驶设备发生故障、环境发生变化等因素都会使得深度强化学习的性能受到影响,适应性和泛化能力较差。为此,本申请实施例提供了一种自动驾驶设备的控制方法,其可以克服上述存在的缺陷,具体实现可以参见下文。

其次,对本申请实施例涉及的实施环境进行简单介绍。

本申请实施例涉及的实施环境中可以包括多个自动驾驶设备,该方法可以由该多个自动驾驶设备中的任一自动驾驶设备来执行,作为一种示例,该多个自动驾驶设备之间可以相互通信。在一些实施例中,自动驾驶设备又可以被称为无人搬运车,可以简称为agv等,再或者,还可能被称为智能移动设备等,譬如,还可以为智能机器人。

作为一种示例,请参考图1,每个自动驾驶设备上可以配置有诸如激光雷达、毫米波雷达、红外传感器之类的探测传感器110,以通过该探测传感器来获取周围的环境信息。另外,每个自动驾驶设备还包括行进部件120和处理器130,该行进部件120可以为车轮等,该处理器130用于根据探测传感器110探测得到的环境信息确定需要执行的动作,并根据该动作控制该行进部件120移动。进一步地,每个自动驾驶设备还可以包括收发器140,该收发器140可以用于接收全局环境信息,还可以用于向其他设备发送信息,如发送自己的位置信息等,该收发器140还可以用于接收其它设备发送的信息,如接收其它自动驾驶设备发送的位置信息等。并且,该每个自动驾驶设备还可以包括角度传感器、速度传感器,自动导引搬运车可以通过角度传感器探测当前的角度,以及通过速度传感器探测当前的速度。该收发器140还可以用于向其他设备发送信息,如发送自己的动作空间等,该收发器140还可以用于接收其它设备发送的信息,如接收其它自动驾驶设备发送的动作空间等。

进一步地,该实施环境还可以包括中央管理系统,该中央管理系统可以分别与该多个自动驾驶设备进行通信,能够用于调度该多个自动驾驶设备,示例性地,对于该多个自动驾驶设备中的每个自动驾驶设备,可以将自己当前的状态数据上报给该中央管理系统,以便于该中央管理系统下发给该多个自动驾驶设备中的其他自动驾驶设备。

在介绍完本申请实施例涉及的应用场景和实施环境后,接下来将结合附图对本申请实施例提供的自动驾驶设备的控制方法进行详细介绍。

请参考图2,该图2是根据一示例性实施例示出的一种自动驾驶设备的控制方法流程图,该方法可以应用于上述任一自动驾驶设备中,该方法可以包括如下几个实现步骤:

步骤201:确定第一状态序列,该第一状态序列包括全局环境信息。

其中,该全局环境信息可以理解为该自动驾驶设备所在的环境的一些简略信息。作为一种示例,该全局环境信息包括全局地图尺寸、工作台的位置信息、货架所在区域的区域信息、固定障碍物的位置信息以及环境中的各个自动驾驶设备当前的位置信息中的至少一种。

其中,该全局地图尺寸可以是指该自动驾驶设备所在的环境对应的实际尺寸,譬如,当该自动驾驶设备位于一个仓库里时,该全局地图尺寸可以是指该仓库的尺寸,如可以为10*10米等。

其中,该工作台的位置信息可以用于指示该工作台的实际位置,譬如,可以为经纬度信息、位置坐标等。

其中,该货架所在区域的区域信息可以用于指示货架所在区域,譬如,可以包括该货架所在区域的四个顶点的位置信息。

其中,该固定障碍物可以是指诸如墙、柱子之类不会轻易被移动的障碍物,同理,该固定障碍物的位置信息用于指示该固定障碍物所在的实际位置。

另外,由于该环境中通常包括多个自动驾驶设备,所以,该全局环境信息通常还可以包括环境中各个自动驾驶设备当前的位置信息。

不难理解,上述各个信息中,除了各个自动驾驶设备当前的位置信息是动态变化的之外,其他信息均属于静态信息,即通常不会发生变化。

其中,该全局环境信息可以预先获取得到。作为一种示例,如前文所述,该实施环境中通常可以包括中央管理系统,在该种情况下,该全局环境信息可以由该中央管理系统发送给该自动驾驶设备。

作为另一种示例,该全局环境信息中的静态信息可以是预先存储在该各个自动驾驶设备中,而上述各个自动驾驶设备当前的位置信息可以由各个自动驾驶设备直接或者通过中间转发设备发送给该自动驾驶设备。譬如,某个其他自动驾驶设备可以直接将其当前的位置信息发送给距离自己较近自动驾驶设备,还可以将自己当前的位置信息上报给中间转发设备,该中间转发设备可以根据该各个自动驾驶设备的位置,将该位置信息转发给与该某个自动驾驶设备距离较远的自动驾驶设备。不难理解,如果该某个其他自动驾驶设备与该自动驾驶设备距离较近,则可以直接获取到该位置信息,如果距离较远,则可以通过接收中间转发设备发送的位置信息来获取得到。示例性地,上述中间转发设备可以为中央管理系统中的设备,本申请实施例对此不作限定。

在这里,将该全局环境信息表示成一个离散化的状态值,得到第一状态序列。

作为一种示例,该第一状态序列存在周期性,相应地,该步骤201包括:确定当前周期的第一状态序列。即该自动驾驶设备可以周期性地确定第一状态序列,且每相邻两个周期之间相隔的时长可以是一个随机值,也即是,每次可以在某个阈值范围内进行随机取样,得到一个周期的持续时长,其中,该阈值范围可以根据实际需求进行设置,假设以t来表示当前周期的周期时长,则该t可以是从[tmin,tmax]阈值范围内随机选取的。如此,在阈值范围内随机取样以确定周期时长,可以使得后续第一神经网络模型能够更好的适应复杂动态的环境,提高了鲁棒性和泛化能力。

步骤202:基于该第一状态序列,通过第一神经网络模型确定当前目标点的位置概率分布。

作为一种示例,该当前目标点是指在当前周期的结束时刻所要到达的点,即该当前目标点实际上是一个子目标点,而不是最终的终点。

在本申请实施例中,使用两个单独的神经网络模型来完成路径规划的任务,也即是,将该任务进行分层化处理,在实施中,可以将一个任务的不同子任务分别分配给第一神经网络模型和第二神经网络模型来实现。其中,该第一神经网络模型和该第二神经网络模型为两个独立的神经网络模型,且他们可以均为具有深度强化学习能力的神经网络模型。

其中,这里基于上述得到的第一状态序列,通过第一神经网络模型来确定该自动驾驶设备在当前周期结束时需要到达的当前目标点,该当前目标点即为从起点至终点的路径上的一个点。在实施中,可以将该第一状态序列作为该第一神经网络模型的输入,输出位置概率分布,该位置概率分布实际上用于指示对应环境中的一个位置点。

步骤203:基于多个时刻对应的第二状态序列和该位置概率分布,通过第二神经网络模型确定该多个时刻对应的动作空间,并基于该多个时刻对应的动作空间,控制该自动驾驶设备行驶,以使该自动驾驶设备向当前目标点移动。

其中,每个时刻对应的第二状态序列包括该自动驾驶设备在每个时刻所处位置的周围的局部环境信息,每个时刻对应的动作空间用于指示每个时刻所要执行的动作。

其中,该局部环境信息可以理解为以该自动驾驶设备为中心的周围小范围领域内的更加精细的环境信息,也即是,与上述全局环境信息不同的是,该局部环境信息只包括一个局部区域内的环境信息,且环境信息更新全面和详细。

作为一种示例,该局部环境信息包括目标局部区域内的障碍物的位置信息、其他自动驾驶设备的位置信息、以及该自动驾驶设备的起点位置信息、终点位置信息、当前角度和当前速度中的至少一种,该目标局部区域是指该自动驾驶设备的探测传感器能够探测到的区域。

其中,该自动驾驶设备的起点位置信息和终点位置信息可以预先设定,譬如,可以预先由上述中央处理系统指定,或者,也可以由用户指定等。

其中,该当前角度可以通过角度传感器探测得到,该当前速度可以通过速度传感器探测得到。

其中,该动作空间指示的动作可以为前进n步、左转、右转、停止、后退m步等动作中的任一种,其中,n和m均为大于1的整数。

在本申请实施例中,第二神经网络模型在一个周期内做出多次决策,即在当前周期内,确定多个时刻对应的动作空间,以便于基于该多个时刻对应的动作空间,确定在该多个时刻分别执行怎样的动作才能到达上述第一神经网络模型所确定的当前目标点。

作为一种示例,基于当前周期内多个时刻对应的第二状态序列和该位置概率分布,通过第二神经网络模型确定该多个时刻对应的动作空间的具体实现可以包括:在当前周期内,每隔指定时长,获取一次第二状态序列,在每次获取到第二状态序列时,基于本次获取到的第二状态序列和该位置概率分布,通过该第二神经网络模型确定本次的获取时刻对应的动作空间。

其中,该指定时长可以根据由用户根据实际需求进行设置,或者,也可以由该自动驾驶设备默认设置,本申请实施例对此不做限定。

即在第一神经网络模型做出一次决策,输出位置概率分布后,第二神经网络模型每隔指定时长做一次决策,在当前时刻t至t+t时刻的时长(即当前周期)内,学习从当前位置移动至第一神经网络模型确定的当前目标点所需执行的动作。

接下来以具体实例来对该过程进行说明。譬如,假设该指定时长为一个时间步长,则第二神经网络模型在t时刻,获取周围的局部环境信息,生成一系列离散后的状态值,得到在t时刻对应的第二状态序列,然后将该t时刻对应的第二状态序列和位置概率分布输入至该第二神经网络模型中,该第二神经网络模型输出该t时刻对应的动作空间,该t时刻对应的动作空间用于指示需要执行的动作,该自动驾驶设备执行该t时刻对应的动作空间指示的动作。该自动驾驶设备在t+1时刻,获取周围的局部环境信息,生成一系列离散后的状态值,得到在t+1时刻对应的第二状态序列,然后将该t+1时刻对应的第二状态序列输入至该第二神经网络模型中,该第二神经网络模型基于该t+1时刻对应的第二状态序列和位置概率分布,确定该t+1时刻对应的动作空间,该自动驾驶设备执行该t+1时刻对应的动作空间指示的动作。以此类推,按照上述实现方式,直到基于t+t时刻对应的第二状态序列,确定t+t时刻对应的动作空间,并执行完该t+t时刻对应的动作空间指示的动作,第二神经网络模型完成了当前周期的决策和子任务。

其中,上述动作空间可以通过输出概率来进行表示,即动作与概率之间可以存在一个映射关系,根据该输出概率,可以确定对应的动作。

如此,将整个任务进行有效分工,将全局环境信息和局部环境信息对应的任务进行解耦,使得第一神经网络模型聚焦少量信息,以及第二神经网络模型聚焦局部分为内更加精细化的领域信息,具有针对性地学习不同的状态,从而保证了在复杂环境下的有效学习。

进一步地,通过该第二神经网络模型,确定基于每个时刻获取的第二状态序列执行对应的动作空间指示的动作所获得的内部奖励值;将该位置概率分布、每个时刻对应的第二状态序列、动作空间和内部奖励值对应存储。

其中,每个时刻对应的内部奖励值可以为正数,也可以为负数,当内部奖励值为负值时,实际上相当于给与一定的惩罚。

也即是,该自动驾驶设备执行每个时刻对应的动作空间后,可以通过该第二神经网络模型,确定基于每个时刻获取的第二状态序列执行对应的动作空间指示的动作所获得的内部奖励值。

譬如,若基于某个时刻对应的动作空间执行了停止动作,说明在向当前目标点行驶过程中有停下行为,意味着很有可能存在拥堵现象,所以可以通过该第二神经网络模型给与一定的惩罚,此时,该时刻对应的内部奖励值为负数。再如,若基于某个时刻对应的动作空间执行了左转或右转动作,说明在向当前目标点行驶过程中需要转弯,同样意味着很有可能存在拥堵现象,所以也可以通过该第二神经网络模型给与一定的惩罚。又如,若基于某个时刻对应的动作空间执行了直行动作,说明该时刻不存在拥堵,所以可以通过该第二神经网络模型给与一定的奖励,此时该时刻对应的内部奖励值为正数。

需要说明的是,各个动作给与的内部奖励值可以根据实际需求进行设置,本申请实施例对此不做限定。

进一步地,基于该多个时刻对应的动作空间,控制该自动驾驶设备行驶之后,还可以执行如下操作:将存储的该多个时刻中每个时刻对应的第二状态序列、动作空间和内部奖励值确定为一组第一训练数据,得到该多个时刻对应的第一训练数据,基于该多个时刻对应的第一训练数据,对该第二神经网络模型的参数进行更新。

也就是说,如前文所述,在一个周期内的每个时刻都对应有第二状态序列、动作空间和内部奖励值,当完成一个周期的子任务时,该自动驾驶设备获取这个周期内的多个时刻的这些数据作为训练数据,即第一训练数据,然后利用该第一训练数据,对该第二神经网络模型的参数进行更新。

作为一种示例,该第二神经网络模型包括第二策略网络和第二评估网络,该第二策略网络用于基于输入的第二状态序列和该位置概率分布输出对应的动作空间,该第二评估网络基于该第二策略网络输出的动作空间输出第二状态评估值。

也即是,该第二神经网络模型可以包括第二策略网络和第二评估网络,该第二策略网络可以用于确定该动作空间,譬如输出为一个输出概率,该输出概率表示该动作空间,另外该第二评估网络可以对执行的动作进行评估,并根据每个时刻对应的内部奖励值,输出第二状态评估值,该第二状态评估值可以用于指示所执行的动作的效果的好坏。在更新过程中,可以将第一训练数据输入至该第二神经网络模型中,在该种情况下,需要分别对第二策略网络和第二评估网络的参数进行更新,从而实现对该第二神经网络模型的更新。作为一种示例,可以采用如下方式进行更新。

其中,该第二神经网络模型包括的第二策略网络的参数可以通过如下公式(1)来进行更新:

其中,θ1表示第二策略网络的参数,α1表示更新步长,可以根据实际需求进行设置,该表示对θ1进行梯度计算,表示在t时刻对应的第二状态序列下选择动作at的输出概率(动作空间),v(st)表示第二评估网络在t时刻输出的第二状态评估值。

其中,第二神经网络模型包括的第二评估网络的参数可以通过如下公式(2)来进行更新:

δ1=rt+γ1v(s′t)-v(st)(2)

其中,δ1为第二评估网络的参数,rt表示t时刻对应的内部奖励值,γ1为折扣因子,可以根据实际需求来进行设置。v(st)表示第二评估网络在t时刻确定的第二状态评估值,v(s′t)表示第二评估网络在t+1时刻确定的第二状态评估值。

进一步地,通过该第二神经网络模型,确定基于每个时刻获取的第二状态序列执行对应的动作空间指示的动作所获得的内部奖励值之后,还可以执行如下操作:对该多个时刻中每个时刻对应的内部奖励值进行求和运算,得到当前周期的内部总奖励值,同时,在该第一状态序列下移动至该位置概率分布指示的当前目标点得到外部奖励值。根据该内部总奖励值和该外部奖励值,确定高层总奖励值,将当前周期的第一状态序列、位置概率分布和高层总奖励值对应存储。

也就是说,对于第一神经网络模型来说,在执行完一次决策后,确定外部环境反馈的外部奖励值,其中,该外部奖励值可能为零。并且,除此之外,该第二神经网络模型还给第一神经网络模型反馈内部总奖励值,作为一种示例,该内部总奖励值可以通过如下公式(3)确定:

其中,rta作为可以表示在t时刻第二神经网络模型决策给自动驾驶设备发停止动作指令的惩罚,rtb可以表示在t时刻第二神经网络模型决策给自动驾驶设备发左转或右转指令的惩罚。

然后,该第一神经网络模型可以根据该外部奖励值和该内部总奖励值,确定在当前周期的高层总奖励值。之后,将当前周期的第一状态序列、位置概率分布和高层总奖励值对应存储。

如此,由于来自外部环境的外部奖励值通常比较稀疏,譬如,可能在自动驾驶设备行驶至终点时,才会得到外部奖励值,如根据行驶路径的长短或时长来确定该外部奖励值,所以在某个周期,外部奖励值可能为零,如此不利于对该第一神经网络模型的后续更新。为此,这里由第二神经网络模型为该第一神经网络模型反馈内在的内部奖励值,如此可以有利于后续对第一神经网络模型的更新,使得该第一神经网络模型快速收敛,有效学习到很好的策略,引导第一神经网络模型尽可能的选择拥堵较少的当前目标点,从而避免多自动驾驶设备之间的拥堵问题。

进一步地,获取多个周期对应的第二训练数据,每个周期对应的第二训练数据包括每个周期的第一状态序列、位置概率分布和高层总奖励值,基于该多个周期对应的第二训练数据,对该第一神经网络模型的参数进行更新。

如前文所述,由于预先存储了每个周期的第一状态序列、位置概率分布和高层总奖励值,所以,在路径规划过程中,该自动驾驶设备获取多个周期的第一状态序列、位置概率分布和高层总奖励值,譬如,可以在该自动驾驶设备行驶至终点时,获取多个周期的这些数据作为训练数据,即第二训练数据,然后将该第二训练数据输入至该第一神经网络模型,以对该第一神经网络模型的参数进行更新。

作为一种示例,该第一神经网络模型包括第一策略网络和第一评估网络,该第一策略网络用于基于输入的第一状态序列输出该位置概率分布,该第一评估网络用于基于该位置概率分布输出第一状态评估值。

也即是,该第一神经网络模型可以包括第一策略网络和第一评估网络,在该种情况下,需要分别对第一策略网络和第一评估网络的参数进行更新,从而实现对该第一神经网络模型的更新。作为一种示例,可以采用如下方式进行更新。

其中,该第一神经网络模型包括的第一策略网络的参数可以通过如下公式(4)来进行更新:

其中,θ2表示第一策略网络的参数,α2表示更新步长,可以根据实际需求进行设置,该表示对θ2进行梯度计算,表示在t周期对应的第一状态序列下选择动作at的输出概率(位置概率分布),v(st)表示第一评估网络在t周期输出的第一状态评估值。

其中,该第一神经网络模型包括的第一评估网络的参数可以通过如下公式(5)来进行更新:

δ2=rt+γ2v(s't)-v(st)(5)

其中,δ2为第一评估网络的参数,rt表示t周期对应的高层总奖励值,γ2为折扣因子,可以根据实际需求来进行设置。v(st)表示第一评估网络在t周期确定的第一状态评估值,v(s't)表示第一评估网络在t+1周期确定的第一状态评估值。

作为一种示例,当对第一神经网络模型的更新次数达到第一次数阈值时,可以不再对第一神经网络模型进行更新,另外,当对第二神经网络模型的更新次数达到第二次数阈值时,可以不再对第二神经网络模型进行更新。

其中,该第一次数阈值可以根据实际需求进行设置,同理,该第二次数阈值也可以根据实际需求进行设置,本申请实施例对此不做限定。

在本申请实施例中,确定第一状态序列,该第一状态序列包括全局环境信息,基于该第一状态序列,通过第一神经网络模型确定当前目标点的位置概率分布。基于多个时刻对应的第二状态序列和位置概率分布,通过第二神经网络模型,确定该多个时刻对应的动作空间,每个时刻对应的动作空间用于指示每个时刻所要执行的动作,并基于该多个时刻对应的动作空间,控制该自动驾驶设备行驶,以使该自动驾驶设备向该当前目标点移动。其中,每个时刻对应的第二状态序列包括自动驾驶设备在每个时刻所处位置的周围的局部环境信息。也即是,将整个任务通过两个独立的神经网络模型进行分层化处理,以实现对自动驾驶设备的控制,如此可以提高任务的规划效率,从而避免多个自动驾驶设备发生拥堵的现象。

请参考图3,该图3是本申请实施例提供的一种自动驾驶设备的控制装置的结构示意图,该装置可以包括:

第一确定模块310,用于确定第一状态序列,所述第一状态序列包括全局环境信息;

第二确定模块320,用于基于所述第一状态序列,通过第一神经网络模型确定当前目标点的位置概率分布;

第三确定模块330,用于基于多个时刻对应的第二状态序列和所述位置概率分布,通过第二神经网络模型确定所述多个时刻对应的动作空间,并基于所述多个时刻对应的动作空间,控制所述自动驾驶设备行驶,以使所述自动驾驶设备向所述当前目标点移动;

其中,每个时刻对应的第二状态序列包括所述自动驾驶设备在每个时刻所处位置的周围的局部环境信息,每个时刻对应的动作空间用于指示每个时刻所要执行的动作。

在本申请一种可能的实现方式中,所述第三确定模块330用于:

在当前周期内,每隔指定时长,获取一次第二状态序列;

在每次获取到第二状态序列时,基于本次获取到的第二状态序列和所述位置概率分布,通过所述第二神经网络模型确定本次的获取时刻对应的动作空间。

在本申请一种可能的实现方式中,所述第三确定模块330还用于:

通过所述第二神经网络模型,确定基于每个时刻获取的第二状态序列执行对应的动作空间指示的动作所获得的内部奖励值;

基于每个时刻对应的内部奖励值,通过所述第二神经网络模型确定每个时刻对应的第一状态评估值;

将每个时刻对应的动作空间、内部奖励值和第一状态评估值对应存储。

在本申请一种可能的实现方式中,所述第三确定模块330还用于:

将存储的所述多个时刻中每个时刻对应的动作空间、内部奖励值和第一状态评估值确定为一组第一训练数据,得到所述多个时刻对应的第一训练数据;

基于所述多个时刻对应的第一训练数据,对所述第二神经网络模型的参数进行更新。

在本申请一种可能的实现方式中,所述第二确定模块320还用于:

对所述多个时刻中每个时刻对应的内部奖励值进行求和运算,得到当前周期的内部总奖励值;

将所述内部总奖励值反馈给所述第一神经网络模型;

通过所述第一神经网络模型,确定在所述第一状态序列下移动至所述位置概率分布指示的当前目标点得到的外部奖励值;

根据所述内部总奖励值和所述外部奖励值,确定高层总奖励值;

基于所述高层总奖励值,通过所述第一神经网络模型确定第二状态评估值;

将所述当前周期的位置概率分布、高层总奖励值和第二状态评估值对应存储。

在本申请一种可能的实现方式中,所述第二确定模块320还用于:

获取多个周期对应的第二训练数据,每个周期对应的第二训练数据包括每个周期的位置概率分布、高层总奖励值和第二状态评估值;

基于所述多个周期对应的第二训练数据,对所述第一神经网络模型的参数进行更新。

在本申请一种可能的实现方式中,

所述第一神经网络模型包括第一策略网络和第一评估网络,所述第一策略网络用于基于输入的第一状态序列输出所述位置概率分布,所述第一评估网络用于基于所述位置概率分布输出第一状态评估值;和/或,

所述第二神经网络模型包括第二策略网络和第二评估网络,所述第二策略网络用于基于输入的第二状态序列和所述位置概率分布输出对应的动作空间,所述第二评估网络基于所述第二策略网络输出的动作空间输出第二状态评估值。

在本申请一种可能的实现方式中,所述全局环境信息包括全局地图尺寸、工作台的位置信息、货架所在区域的区域信息、固定障碍物的位置信息以及环境中的各个自动驾驶设备当前的位置信息中的至少一种;

所述局部环境信息包括目标局部区域内的障碍物的位置信息、其他自动驾驶设备的位置信息、以及所述自动驾驶设备的起点位置信息、终点位置信息、当前角度和当前速度,所述目标局部区域是指所述自动驾驶设备的探测传感器能够探测到的区域中的至少一种。

在本申请实施例中,确定第一状态序列,该第一状态序列包括全局环境信息,基于该第一状态序列,通过第一神经网络模型确定当前目标点的位置概率分布。基于多个时刻对应的第二状态序列和位置概率分布,通过第二神经网络模型,确定该多个时刻对应的动作空间,每个时刻对应的动作空间用于指示每个时刻所要执行的动作,并基于该多个时刻对应的动作空间,控制该自动驾驶设备行驶,以使该自动驾驶设备向该当前目标点移动。其中,每个时刻对应的第二状态序列包括自动驾驶设备在每个时刻所处位置的周围的局部环境信息。也即是,将整个任务通过两个独立的神经网络模型进行分层化处理,以实现对自动驾驶设备的控制,如此可以提高任务的规划效率,从而避免多个自动驾驶设备发生拥堵的现象。

需要说明的是:上述实施例提供的自动驾驶设备的控制装置在控制自动驾驶设备行驶时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的自动驾驶设备的控制装置与自动驾驶设备的控制实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

在一些实施例中,还提供了一种计算机可读存储介质,该存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中自动驾驶设备的控制方法的步骤。例如,所述计算机可读存储介质可以是rom、ram、cd-rom、磁带、软盘和光数据存储设备等。

值得注意的是,本申请提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。

应当理解的是,实现上述实施例的全部或部分步骤可以通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。所述计算机指令可以存储在上述计算机可读存储介质中。

也即是,在一些实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述所述的自动驾驶设备的控制方法的步骤。

以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1