一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

轨迹划分的模型训练方法及装置、轨迹划分方法及装置与流程

2023-01-15 12:28:45 来源:中国专利 TAG:


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.第五方面,本技术实施例提供一种电子设备,包括:
28.存储器,用于存储程序;
29.处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如上第一方面以及第二方面所述的方法。
30.第六方面,本技术实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上第一方面以及第二方面所述的方法。
31.第七方面,本技术实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上第一方面以及第二方面所述的方法。
32.本技术实施例提供一种的轨迹划分的模型训练方法及装置,该方法通过遍历样本轨迹中的各个轨迹点,之后依据预测模型依存将各个轨迹点是否确定为划分点所对应的预测激励,然后根据预测激励选择执行相应的动作,再根据执行相应动作之前的子轨迹参数和执行相应动作之后的子轨迹参数确定真实激励,其中真实激励可以有效的衡量执行相应动作的效果,因此之后再根据预测激励和真实激励对预测模型进行参数更新,从而可以保证训练得到的预测模型所输出的两种执行动作所对应的预测激励的准确性,进而可以简单
有效的基于预测模型实现轨迹划分。
33.以及,本技术实施例提供一种的轨迹划分方法及装置,该方法通过遍历目标轨迹中的各个轨迹点,然后基于训练完成的预测模型预测将轨迹点确定为连接点的第一预测激励,以及将轨迹点确定为非连接点的第二预测激励,然后根据第一预测激励和第二预测激励,确定是否要将遍历到的轨迹点确定为连接点,在遍历完成各个轨迹点之后,就可以得到多个轨迹点,之后再基于轨迹点确定子轨迹的划分结果,从而可以简单有效的实现轨迹划分,同时又可以保证划分得到的子轨迹的简洁度和准确度都比较良好。
附图说明
34.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
35.图1为本技术实施例提供的轨迹示意图;
36.图2为本技术实施例提供的轨迹之间的距离示意图;
37.图3为本技术实施例提供的轨迹划分的模型训练方法的流程图;
38.图4为本技术实施例提供的轨迹划分的模型训练方法的流程图二;
39.图5为本技术实施例提供的确定划分点的实现示意图;
40.图6为本技术实施例提供的预测模型训练的实现示意图;
41.图7为本技术实施例提供的轨迹划分方法的流程图;
42.图8为本技术实施例提供的轨迹划分的实现示意图;
43.图9为本技术实施例提供的轨迹划分的模型训练装置的结构示意图;
44.图10为本技术实施例提供的轨迹划分装置的结构示意图;
45.图11为本技术实施例提供的电子设备的硬件结构示意图。
具体实施方式
46.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
47.为了更好的理解本技术的技术方案,下面对本技术所涉及的相关技术进行进一步的详细介绍。
48.随着4g(第四代移动通信技术)、5g(第五代移动通信技术)、卫星定位以及移动互联技术的快速发展,同时伴随着移动设备的普及,行人、交通工具、航空器等各类移动对象所产生的时空数据,呈现了爆炸式增长。其中,对于轨迹数据的挖掘分析就成为了重要的研究问题,基于轨迹数据的挖掘分析比如说可以应用于位置服务、交通预测或者运动行为研究等多个场景。
49.通常情况下记录的完整轨迹都是比较长的轨迹,而长轨迹中的特征是比较多的,因此针对长轨迹进行划分是许多轨迹应用的基础,例如进行长轨迹划分之后可以进行轨迹
简化、子轨迹聚类等。
50.以子轨迹聚类为例,对于长度较长并且运动较复杂的轨迹来说,以整条轨迹为基本单元的聚类会引起以下问题:(1)复杂轨迹的局部特征可能被忽略;(2)难以发现公共的子轨迹模式。
51.例如两条完整的轨迹之间的相似性较低,但是它们的某段子轨迹之间是相似的,在这种情况下如果直接根据长轨迹进行聚类,则会导致聚类效果不好。因此可以研究子轨迹的聚类问题,子轨迹聚类的实现过程中,可以首先按照一定的划分规则将轨迹划分成子轨迹,再针对子轨迹之间的相似性进行聚类。
52.下面对相关技术中轨迹划分的实现进行说明,现有的轨迹划分通常都是通过人工制定某些规则,比如说可以人工指定根据轨迹的方向、速度、角度等变化进行划分,在此过程中通常需要制定复杂的参数,且时间复杂度较高。
53.其中,现有的子轨迹划分的方法主要分为以下两步:
54.第一步是先按照自身的划分目的提出一个划分标准,通常划分标准会考虑到如子轨迹的准确度、子轨迹的简洁度、子轨迹重点所表征的原轨迹的特征等,此处的特征比如说子轨迹的速度、方向等等。
55.第二步是基于提出的划分标准提出对应的划分算法,通常基于划分算法得到最优的划分解的时间复杂度是o(2n),这个时间复杂度在实际应用中不现实,因此通常会基于划分算法求得一个近似解或局部最优解。
56.上述介绍的这种子轨迹划分的方法主要会存在两个问题:一是在算法实现时绝大部分会涉及到参数选取,比如说选取一些阈值参数、系数参数等等,而这些参数会随着不同的划分轨迹数据集发生变化。二是针对不同的划分标准可能会需要设计不同的算法,同样不同的划分标准也会使参数发生变化。
57.因此现有技术中的轨迹划分的实现方式,需要针对不同的划分需求设置不同的划分算法,同时又需要人工的进行复杂的算法设计、参数制定等一系列操作,从而会导致轨迹划分的实现复杂度较高。
58.针对现有技术中的问题,本技术提出了如下技术构思:通过强化学习的方法训练一个预测模型,之后遍历原始轨迹中的各个轨迹点,预测模型可以输出在各个轨迹点进行子轨迹划分或者不进行子轨迹划分的预测激励,之后根据预测激励可以选择执行相应的动作,以实现对子轨迹的划分。利用强化学习由数据驱动的特点,可以根据不同的数据特征以及动态变化来学习划分,以保证模型训练的效果,在模型训练完成之后,就可以简单有效的基于模型预测执行相应动作的激励,之后再根据执行动作所确定的划分点确定相应的子轨迹,从而可以简单有效的实现轨迹划分。
59.在介绍本技术中提供的具体方法之前,首先对本技术所涉及的相关概念进行说明。
60.1、轨迹。其中,轨迹是指移动对象在移动过程中产生的一系列按时间排序的轨迹点序列,可表示为t=《p1,p2,

pn》,其中轨迹点pi可表示为(lat,lon,t),其中(lat,lon)代表该轨迹点的空间位置,分别对应经纬度,t代表轨迹点的采样时间。轨迹的长度可以用轨迹点的数目来表示,上述轨迹t的长度为n。
61.比如说可以结合图1对轨迹进行理解,图1为本技术实施例提供的轨迹示意图。
62.如图1所示,假设当前存在一条轨迹,其中包括轨迹点p1、轨迹点p2、轨迹点p3、轨迹点p4和轨迹点p5,图1中所述的轨迹包括5个轨迹点,那么可以理解这个轨迹的长度是5。
63.2、子轨迹。子轨迹可以指一条轨迹中连续的轨迹点组成的子集所构成一条子轨迹,即sub_t(i,j)=《pi,p
i 1
,

pj》,其中1≤i≤j≤n,其中子轨迹sub_t(i,j)就是说由轨迹点pi到轨迹点pj的连续轨迹点所组成的子集所构成的轨迹。
64.比如说仍然结合图1进行理解,假设图1中的p1、p2、p3、p4这三个轨迹点所组成的子集所构成的就可以理解为一条子轨迹。
65.或者子轨迹还可以是在多个轨迹点中确定划分点,然后将相邻的划分点连接所组成的子轨迹。
66.比如说仍然结合图1进行理解,假设在图1所示的轨迹中,将轨迹点p1和轨迹点p4确定为划分点,然后轨迹点p1和轨迹点p4所连接得到的线段就可以组成子轨迹。
67.3、距离,距离通常被用来衡量两个轨迹之间的相似程度,距离越大,相似程度越低,距离越小,相似程度越高。本实施例中比如说可以通过平行距离、垂直距离和角距离来衡量两个轨迹之间的相似程度。
68.下面结合图2对这三种距离分别进行说明。图2为本技术实施例提供的轨迹之间的距离示意图。
69.如图2所示,假设当前存在由轨迹点s1和轨迹点e1组成的轨迹1,以及有轨迹点s2和轨迹点e2组成的轨迹2。在此基础上,例如可以由一条轨迹的两个端点向另一条轨迹做垂线,比如说通常是由短边向长边做垂线。
70.参照图2,轨迹1的轨迹点s1向轨迹2做垂线的垂线距离可以表示为l
⊥1,以及轨迹1的轨迹点e1向轨迹2做垂线的垂线距离可以表示为l
⊥2。
71.其中,轨迹1和轨迹2的垂直距离就可以表示为:
72.以及,参照图2,轨迹1的轨迹点s1向轨迹2做垂线的垂点和轨迹2中相邻的轨迹点s2之间的距离为一个平行距离,可以表示为l
||1
,以及轨迹1的轨迹点e1向轨迹2做垂线的垂点和轨迹2中相邻的轨迹点e2之间的距离为另一个平行距离,可以表示为l
||2

73.其中,轨迹1和轨迹2的平行距离就可以表示为:d
||
=min(l
||1
,l
||2
)。
74.以及参照图1,轨迹1和轨迹2之间的夹角为θ,以及轨迹1的长度为lj。
75.其中,轨迹1和轨迹2的角距离就可以表示为:d
θ
=||lj||
×
sin(θ)。
76.4、最小描述长度(minimum description length,mdl)。
77.在本技术中,假设原始轨迹可以表示为t=《p1,p2,

pn》,以及假设在原始轨迹的多个轨迹点中确定的划分点可以表示为这m 1个划分点就可以构成m条子轨迹。
78.在一种可能的实现方式中,在求解mdl的过程中,子轨迹可以理解为将相邻的两个划分点进行连接所构成的轨迹。
79.其中,最小描述长度可以表示为mdl=l(h) l(d|h)。
80.其中,l(h)可以指示子轨迹的长度,可以表示为其中,是轨迹点和轨迹点之间的欧式距离。
81.比如说可以基于图1所示的轨迹进行理解,假设在图1中确定了两个划分点,分别是p1和p4,那么l(h)=log2(len(p1,p4)。
82.以及,l(d|h)可以指示子轨迹和原始轨迹之间的距离,可以表示为
[0083][0084]
其中,可以理解为轨迹点和轨迹点所组成的轨迹,pkp
k 1
可以理解为轨迹点pk和轨迹点p
k 1
所组成的轨迹,其中,k的取值范围是cj到c
j 1-1,其可以理解为原始轨迹中从轨迹点到轨迹点以及之间的多个轨迹点。
[0085]
比如说可以基于图1所示的轨迹进行理解,假设在图1中确定了两个划分点,分别是p1和p4,那么
[0086]
l(d|h)=log2(d

(p1p4,p1p2) d

(p1p4,p2p3) d

(p1p4,p3p4)) log2(d
θ
(p1p4,p1p2) d
θ
(p1p4,p2p3) d
θ
(p1p4,p3p4))。
[0087]
在上述介绍内容的基础上,下面要对mdl的作用进行进一步的详细说明。轨迹划分指的是通过一定的划分方案将一条原始长轨迹(或者称为原轨迹)划分为若干较短的子轨迹的过程。通常情况下会对于划分的准确度与简洁度有要求,其中准确度指子轨迹与原轨迹的差别程度,简洁度指子轨迹的数量。这二者具有一定的矛盾。
[0088]
可以理解的是,如果在每个轨迹点都划分的话,那么得到的子轨迹和原轨迹的差别最小,准确性最高,但是子轨迹数目过多,不够简洁;如果只在轨迹的起点和终点进行划分的话,只能得到一条子轨迹,也就是说直接连接起点和终点所得到的子轨迹,此时子轨迹最为简洁,但是子轨迹和原轨迹之间的差别过大,不够准确。
[0089]
而本技术中提供的mdl可以有效的平衡轨迹划分的准确度和简洁度,可以理解的是,上述介绍的确定mdl中的l(h)可以指示子轨迹的长度,如果说针对原始轨迹划分得到的子轨迹数量比较多的话,那么各个子轨迹的长度累加之后得到的l(h)就是比较大的。反过来讲,如果说针对原始轨迹划分得到的子轨迹数量比较少的话,那么各个子轨迹的长度累加之后得到的l(h)就是比较小的。针对这一点可以结合一个具体的示例进行理解,比如说在上述图2示出的轨迹中,假设有如下两种情况:
[0090]
情况1:将轨迹点p1、轨迹点p3确定为划分点,然后将轨迹点p1和轨迹点p3连接确定为子轨迹1。
[0091]
情况2:将轨迹点p1、轨迹点p2和轨迹点p3都确定为划分点,然后将轨迹点p1和轨迹点p2连接确定为子轨迹2,将轨迹点p2和轨迹点p3连接确定为子轨迹3。
[0092]
针对上述两种情况,子轨迹1的长度,是小于子轨迹2和子轨迹3的长度之和的,因此子轨迹1对应的l(h),是小于子轨迹1和子轨迹2所对应的l(h)的。那么也就是说,划分的子轨迹越少,l(h)越小,相应的表示子轨迹越简洁。因此l(h)可以有效的反映轨迹划分的简洁度。
[0093]
以及,上述介绍的确定mdl中的l(d|h)可以指示子轨迹和原轨迹之间的差异,如果子轨迹和原轨迹之间的差异比较小的话,那么相应的子轨迹和原轨迹的相似性就比较大,因此l(d|h)可以理解为反映轨迹划分的准确度。
[0094]
基于上述介绍可以理解的是,轨迹划分的简洁度和轨迹划分的准确度是两个矛盾
的指标,其中轨迹划分最简洁的时候,准确度最差(也就是说子轨迹和原轨迹之间的差异最大)。也就是说l(h)最小的时候,l(d|h)最大。
[0095]
以及,轨迹划分最准确的时候(也就是说子轨迹和原轨迹之间的差异最小),简洁度最差。也就是说l(h)最大的时候,l(d|h)最小。
[0096]
因此针对mdl来说,无论是l(h)最小,还是l(d|h)最小,mdl都不会取得最小值。当mdl取最小值的时候,必然是在简洁度和准确度之间找到了一个平衡,从而使得l(h)和l(d|h)同时最小。因此如果说划分得到的子轨迹所对应的mdl最小,就可以保证得到子轨迹和原轨迹的相似性比较高,同时子轨迹的数量又比较少的的子轨迹划分结果。
[0097]
为了得到使mdl最小的轨迹划分方案,需要列举出所有可能的划分情况,然而这样操作的时间复杂度是o(2n),这在实际应用中是不可接受的,
[0098]
因此在一种实现方式中,可以使用基于贪心的近似算法,比如说顺序遍历各个轨迹点,当在个轨迹点进行划分得到的mdl小于在该轨迹点不划分得到的mdl时,认为该轨迹点进行划分是一个更好的选择。但是同时还要考虑子轨迹划分的简洁性,因此继续遍历下一个点,直至在某个轨迹点进行划分得到的mdl大于在该轨迹点不划分得到的mdl时,此时就可以确定在该轨迹点不进行划分是一个更好的选择,那么就可以将这个轨迹点的上一个轨迹点确定为子轨迹的划分位置。
[0099]
然而基于这样的实现方式实际上得到的近似解,并且需要人工制定规则,比如说上述介绍的在当在个轨迹点进行划分得到的mdl小于在该轨迹点不划分得到的mdl时,继续遍历下一个点;当在个轨迹点进行划分得到的mdl大于在该轨迹点不划分得到的mdl时,将这个点的上一个点确定为子轨迹划分位置。这样的规则实际上仍然是人为制定的划分规则。
[0100]
这样的实现方式既需要人为制定划分规则,同时又是基于近似解得到的子轨迹划分结果,因此既无法保证子轨迹划分方法的通用性,又无法保证子轨迹的划分效果。
[0101]
下面结合具体的实施例对本技术提供的轨迹划分的模型训练方法首先进行介绍,需要说明的是,本技术实施例提供的各项方法的执行主体例如可以为服务器、处理器、芯片等等具备数据处理功能的设备,本实施例对具体的执行主体不做限制,其可以根据实际需求进行选择和设置,凡是具备数据处理功能的设备均可以作为本技术实施例的执行主体。
[0102]
首先结合图3进行说明,图3为本技术实施例提供的轨迹划分的模型训练方法的流程图。
[0103]
如图3所示,该方法包括:
[0104]
s301、获取样本轨迹,其中,样本轨迹中包括多个轨迹点。
[0105]
在本实施例中,样本轨迹是用于进行模型训练的轨迹,在样本轨迹中可以包括多个轨迹点。在实际的模型训练过程中,可以获取多条样本轨迹,其中样本轨迹的数量、各个样本轨迹中所包括的轨迹点数量、样本轨迹的形状等,均可以根据实际需求进行选择和确定,本实施例对样本轨迹的具体实现不做限制。
[0106]
s302、当遍历到多个轨迹点中的第一轨迹点时,根据预测模型,确定第一轨迹点对应的预测激励,预测激励包括将第一轨迹点确定为划分点的第一预测激励,以及将第一轨迹点确定为非划分点的第二预测激励,其中,在多个轨迹点中所确定的相邻的划分点用于构成样本轨迹所对应的子轨迹。
[0107]
针对每一条样本轨迹的处理方式都是类似的,因此本实施例中以任一条样本轨迹的处理为例进行说明。在模型训练的过程中,可以依次遍历样本轨迹中的各个轨迹点,其中遍历的顺序比如说可以是根据各个轨迹点的时间顺序依次进行遍历。
[0108]
针对任一条样本轨迹,当遍历到多个轨迹点中的第一轨迹点时,本实施例可以根据预测模型,确定第一轨迹点所对应的预测激励。其中,预测激励为预测模型所输出的激励,其中激励(reward),或者称奖励,可以理解为针对执行某个操作之后的反馈信息,此处的反馈信息用于指示执行该操作的优劣。比如说执行某个操作是系统所鼓励执行的操作时,则激励较大,系统具体鼓励执行怎样的操作,取决于当前的强化学习目的。比如说在本实施例中,强化学习的目的是为了得到mld最小的子轨迹划分结果,那么如果执行某个操作之后可以有效降低mld,那么这个操作就会相应的得到较多的激励。
[0109]
其中,第一轨迹点可以是多个轨迹点中的任意一个,因为针对各个轨迹点的处理方式都是类似的,下面仅以第一轨迹点为例进行介绍。
[0110]
本实施例中的预测模型是用于输出轨迹点所对应的预测激励的模型,其中,预测激励可以包括将第一轨迹点确定为划分点的第一预测激励,以及还可以包括将第一轨迹点确定为非划分点的第二预测激励。
[0111]
在本实施例中,在多个轨迹点中所确定的相邻的划分点用于构成样本轨迹所对应的子轨迹。比如说可以在多个轨迹点中确定划分点,然后将相邻的划分点依次连接,从而得到多条子轨迹。或者还可以将相邻的划分点作为端点,将两个端点在原轨迹中所对应的轨迹确定为子轨迹。本实施例中的子轨迹还可以成为划分轨迹、目标轨迹等等。
[0112]
因此如果将第一轨迹点确定为划分点的话,第一轨迹点就可以和相邻的划分点相连接,从而构成子轨迹。如果将第一轨迹点确定为非划分点的话,在确定子轨迹的时候,就会略过第一轨迹点,不和划分点进行连接来构成子轨迹。
[0113]
s303、根据第一预测激励和第二预测激励,执行第一操作,第一操作为将第一轨迹点确定为划分点,或者第一操作为将第一轨迹点确定为非划分点。
[0114]
在确定第一预测激励和第二预测激励之后,比如说可以根据第一预测激励和第二预测激励执行第一操作。
[0115]
在一种可能的实现方式中,例如可以选择激励较大的动作执行,因此比如说在第一预测激励大于第二预测激励的时候,执行的第一操作可以为将第一轨迹点确定为划分点。在第一预测激励不大于第二预测激励的时候,执行的第一操作可以为将第一轨迹点确定为非划分点。
[0116]
s304、根据执行第一操作之前的划分点所对应的子轨迹参数以及执行第二操作之后的划分点所对应的子轨迹参数,确定执行第一操作所对应的真实激励,子轨迹参数用于指示子轨迹的长度以及子轨迹和样本轨迹之间的差异。
[0117]
可以理解的是,在执行第一操作之后,在多个轨迹点中所确定的划分点就有可能会发生变化。比如说在将第一轨迹点确定为划分点的话,那么确定的划分点就增加了一个。
[0118]
在本实施例中,针对划分点所构成的子轨迹可以确定相应的子轨迹参数,其中子轨迹参数可以指示子轨迹的长度以及子轨迹和样本轨迹中之间的差异,在一种可能的实现方式中,子轨迹参数比如说可以是上述介绍的mdl。或者在实际实现过程中,子轨迹参数还可以在上述介绍的mdl的确定方式的基础上添加相应的参数而得到。或者,子轨迹参数还可
以根据实际需求进行选择和设置,只要子轨迹参数可以反映子轨迹的长度以及子轨迹和样本轨迹之间的差异即可。以及本实施例中的子轨迹参数比如说还可以称为轨迹特征参数。
[0119]
当划分点发生变化的时候,那么相应的子轨迹参数也就会发生变化。因此本实施例中可以确定执行第一操作之前的划分点所对应的子轨迹参数,以及可以确定执行第一操作之后的划分点所对应的子轨迹参数。基于上述介绍可以确定的是,在实际实现过程中,子轨迹参数越小则表示相应的子轨迹划分效果越好。
[0120]
因此比如说可以根据执行第一操作之前的划分点所对应的子轨迹参数以及执行第一操作之后的划分点所对应的子轨迹参数,确定执行第一操作所对应的真实激励。
[0121]
在一种可能的实现方式中,本实施例中比如说可以将执行第一操作之前的划分点所对应的子轨迹参数和执行第一操作之后的划分点所对应的子轨迹参数的差值,确定为真实激励。
[0122]
而在模型训练的过程中,本实施例中会依次遍历各个轨迹点,然后针对每一个轨迹点执行将其确定为划分点或者确定为非划分点的第一操作。可以理解的是,针对每一个轨迹点,其对应的执行第一操作之后的划分点所对应的子轨迹参数,实际上就是下一个轨迹点对应的执行第一操作之前的划分点所对应的子轨迹参数。
[0123]
因此各个轨迹点所对应的真实激励累积起来之后的累积真实激励,实际上就是第一个轨迹点对应的执行第一操作之前的子轨迹参数(为0),和最后一个轨迹点对应的执行第一操作之后的子轨迹参数之差。那么可以理解的是,针对每一个轨迹点执行相应操作的目的都是为了累积真实激励最大,而在累积真实激励最大的时候,相应的最后一个轨迹点对应的执行第一操作之后的子轨迹参数就最小。
[0124]
如果说最后一个轨迹点对应的执行第一操作之后的子轨迹参数最小,就表示在遍历到最后一个轨迹点的时候所确定的划分点所对应的子轨迹,其子轨迹的长度和子轨迹与样本轨迹之间的差异都是最小的,也就是说子轨迹的简洁性和准确性是最佳的,因此本实施例中的真实激励可以有效的反映出执行第一操作在子轨迹划分过程中的执行效果。
[0125]
s305、根据真实激励和预测激励,对预测模型的模型参数进行更新。
[0126]
其中,真实激励是执行第一操作之后的准确激励结果,而预测激励是针对执行第一操作所预测的激励结果,因此可以根据真实激励和预测激励,对预测模型的模型参数进行更新,从而有效的提升预测模型的预测准确性。
[0127]
本技术实施例提供的轨迹划分的模型训练方法,包括:获取样本轨迹,其中,样本轨迹中包括多个轨迹点。当遍历到多个轨迹点中的第一轨迹点时,根据预测模型,确定第一轨迹点对应的预测激励,预测激励包括将第一轨迹点确定为划分点的第一预测激励,以及将第一轨迹点确定为非划分点的第二预测激励,其中,在多个轨迹点中所确定的相邻的划分点用于构成样本轨迹所对应的子轨迹。根据第一预测激励和第二预测激励,执行第一操作,第一操作为将第一轨迹点确定为划分点,或者第一操作为将第一轨迹点确定为非划分点。根据执行第一操作之前的划分点所对应的子轨迹参数以及执行第一操作之后的划分点所对应的子轨迹参数,确定执行第一操作所对应的真实激励,子轨迹参数用于指示子轨迹的长度以及子轨迹和样本轨迹之间的差异。根据真实激励和预测激励,对预测模型的模型参数进行更新。通过遍历样本轨迹中的各个轨迹点,之后依据预测模型依存将各个轨迹点是否确定为划分点所对应的预测激励,然后根据预测激励选择执行相应的动作,再根据执
行相应动作之前的子轨迹参数和执行相应动作之后的子轨迹参数确定真实激励,其中真实激励可以有效的衡量执行相应动作的效果,因此之后再根据预测激励和真实激励对预测模型进行参数更新,从而可以保证训练得到的预测模型所输出的两种执行动作所对应的预测激励的准确性,进而可以简单有效的基于预测模型实现轨迹划分。
[0128]
在上述介绍内容的基础上,下面结合图4至图6对本技术提供的轨迹划分的模型训练方法进行进一步的详细介绍。图4为本技术实施例提供的轨迹划分的模型训练方法的流程图二,图5为本技术实施例提供的确定划分点的实现示意图,图6为本技术实施例提供的预测模型训练的实现示意图。
[0129]
如图4所示,该方法包括:
[0130]
s401、获取样本轨迹,其中,样本轨迹中包括多个轨迹点。
[0131]
其中,s401的实现方式与上述介绍的s301的实现方式类似,此处不再赘述。
[0132]
下面结合图5以一个具体的样本轨迹为例进行说明,如图5所示,假设当前存在图5所示的样本轨迹,在这条样本轨迹中包括5个轨迹点,分别是轨迹点p1、轨迹点p2、轨迹点p3、轨迹点p4以及轨迹点p5。
[0133]
s402、当遍历到多个轨迹点中的第一轨迹点时,在多个轨迹点中获取已确定为划分点的目标轨迹点。
[0134]
在本实施例中,针对样本轨迹中的每个轨迹点会依次进行遍历,以及针对每个遍历到的轨迹点,都会针对其执行第一操作,第一操作可以是将轨迹点确定为划分点,或者是将轨迹点确定为非划分点。
[0135]
那么可以理解的是,当遍历到多个轨迹点中的第一轨迹点的时候,在第一轨迹点之前可能已经确定了一些划分点了。因此在遍历到多个轨迹点中的第一轨迹点的时候,可以在多个轨迹点中获取已确定为划分点的目标轨迹点。可以理解的是,因为各个轨迹点是依次遍历的,因此已确定为划分点的目标轨迹点就都是第一轨迹点之前的轨迹点。
[0136]
比如说可以结合图5进行理解,假设当前遍历到轨迹点p5,那么p5实际上就是本实施例这种的第一轨迹点。那么之前的p1~p4就都已经遍历过了,假设在之前的遍历过程中,将轨迹点p1和轨迹点p3确定为了划分点,那么可以确定在遍历到轨迹点p5的时候,目标轨迹点就包括p1和p3。以及需要说明的是,第一个轨迹点是一定会被确定为划分点的。
[0137]
s403、根据目标轨迹点确定至少一个第一子轨迹,根据至少一个第一子轨迹的轨迹长度,以及至少一个第一子轨迹和样本轨迹之间的距离,确定目标轨迹点对应的子轨迹参数。
[0138]
在确定目标轨迹点之后,本实施例中需要确定目标轨迹点所对应的子轨迹参数。例如可以根据目标轨迹点确定至少一个第一子轨迹,第一子轨迹是由相邻的目标轨迹点连接所构成的子轨迹。
[0139]
比如说在图5的示例中,目标轨迹点包括p1和p3,那么可以将轨迹点p1和轨迹点p3连接,构成图5中所示的轨迹501。
[0140]
再比如说如果目标轨迹点包括轨迹点p1、轨迹点p2以及轨迹点p3,那么可以将轨迹点p1和轨迹点p2连接构成一条第一子轨迹,以及将轨迹点p2和轨迹点p3连接构成另一条第一子轨迹。
[0141]
在根据目标轨迹点确定第一子轨迹之后,本实施例中可以根据第一子轨迹的轨迹
长度,以及至少一个第一子轨迹和样本轨迹之间的距离,确定目标轨迹点所对应的子轨迹参数。
[0142]
比如说本实施例中的子轨迹参数可以为上述介绍的mdl,基于上述介绍可以确定的是,mdl是l(h)和l(d|h)之和,其中l(h)就可以对应当前介绍的子轨迹的轨迹长度,l(d|h)就可以对应当前介绍的子轨迹和样本轨迹之间的距离。
[0143]
比如说在图5的示例中,第一子轨迹的轨迹长度l(h)=log2(len(p1,p3),以及第一子轨迹和样本轨迹之间的距离为:l(d|h)=log2(d

(p1p3,p1p2) d

(p1p3,p2p3)) log2(d
θ
(p1p3,p1p2) d
θ
(p1p3,p2p3))。
[0144]
然后就可以将第一子轨迹的轨迹长度l(h)以及第一子轨迹和样本轨迹之间的距离l(d|h)之和,确定为目标轨迹点对应的mdl,也就是本实施例中的目标轨迹点对应的子轨迹参数,比如说可以将当前的目标轨迹点所对应的子轨迹参数记为total_mdl。
[0145]
s404、根据第一轨迹点和多个目标轨迹点中的最后一个目标轨迹点确定第二子轨迹,根据第二子轨迹的轨迹长度,以及第二子轨迹和样本轨迹之间的距离,确定将第一轨迹点确定为划分点所对应的子轨迹参数。
[0146]
在确定目标轨迹点之后,本实施例中还需要确定将第一轨迹点确定为划分点时所对应的子轨迹参数,例如可以根据第一轨迹点和多个目标轨迹点中的最后一个目标轨迹点确定第二子轨迹,其中第二子轨迹就是由第一轨迹点和最后一个目标轨迹点连接所构成的子轨迹。
[0147]
比如说在图5的示例中,目标轨迹点包括p1和p3,最后一个目标轨迹点就是p3,以及当前示例中的第一轨迹点是p5,那么可以将轨迹点p3和轨迹点p5连接,构成图5中所示的轨迹502。
[0148]
在根据第一轨迹点和最后一个目标轨迹点确定第二子轨迹之后,本实施例中可以根据第二子轨迹的轨迹长度,以及第二子轨迹和样本轨迹之间的距离,确定将第一轨迹点确定为划分点所对应的子轨迹参数。
[0149]
同样的比如说本实施例中的子轨迹参数可以为上述介绍的mdl,比如说在图5的示例中,第二子轨迹的轨迹长度l(h)=log2(len(p3,p5),以及第一子轨迹和样本轨迹之间的距离为l(d|h)=log2(d

(p3p5,p3p4) d

(p3p5,p4p5)) log2(d
θ
((p3p5,p3p4)) d
θ
(p3p5,p4p5))。
[0150]
然后就可以将第二子轨迹的轨迹长度l(h)以及第二子轨迹和样本轨迹之间的距离l(d|h)之和,确定为第二子轨迹对应的mdl,也就是本实施例中的将第一轨迹点确定为划分点所对应的子轨迹参数,比如说可以将第一轨迹点确定为划分点所对应的子轨迹参数记为mdl_par。
[0151]
s405、根据第一轨迹点、多个目标轨迹点中的最后一个目标轨迹点以及第一轨迹点和最后一个目标轨迹点之间的轨迹点,确定至少一个第三子轨迹,根据至少一个第三子轨迹的轨迹长度,以及至少一个第三子轨迹和样本轨迹之间的距离,确定将第一轨迹点确定为非划分点所对应的子轨迹参数。
[0152]
在确定目标轨迹点之后,本实施例中还需要确定将第一轨迹点确定为非划分点时所对应的子轨迹参数,例如可以根据第一轨迹点、多个目标轨迹点中的最后一个目标轨迹点以及第一轨迹点和最后一个目标轨迹点之间的轨迹点,确定第三子轨迹,其中第三子轨迹就是由第一轨迹点、多个目标轨迹点中的最后一个目标轨迹点以及第一轨迹点和最后一
个目标轨迹点之间的轨迹点连接所构成的子轨迹。
[0153]
比如说在图5的示例中,目标轨迹点包括p1和p3,最后一个目标轨迹点就是p3,以及当前示例中的第一轨迹点是p5,那么可以根据第一轨迹点p3、最后一个目标轨迹点p5以及轨迹点p3和轨迹点p5之间的轨迹点p4,依次连接,从而构成两条第三子轨迹,分别是子轨迹p3p4和子轨迹p4p5。
[0154]
在确定第三子轨迹之后,本实施例中可以根据第三子轨迹的轨迹长度,以及第三子轨迹和样本轨迹之间的距离,确定将第一轨迹点确定为非划分点所对应的子轨迹参数。
[0155]
同样的比如说本实施例中的子轨迹参数可以为上述介绍的mdl,比如说在图5的示例中,第三子轨迹的轨迹长度l(h)=log2(len(p3,p4) len(p4,p
45
),以及可以理解的是,在这种情况下第三子轨迹和对应的部分样本轨迹是完全重合的,因此将第一轨迹点确定为非划分点时l(d|h)=0。
[0156]
然后就可以将第三子轨迹的轨迹长度l(h)以及第三子轨迹和样本轨迹之间的距离l(d|h)之和,确定为第二子轨迹对应的mdl,也就是本实施例中的将第一轨迹点确定为非划分点所对应的子轨迹参数,比如说可以将第一轨迹点确定为非划分点所对应的子轨迹参数记为mdl_nopar。
[0157]
以及在实际实现过程中,子轨迹参数的确定也可以不限于上述介绍的实现方式,比如说可以在上述介绍的mdl确定方式的基础上添加相应的参数,或者对公式进行恒等变形等等,其对应得到的参数均可以理解为本实施例中的子轨迹参数。或者,凡是根据子轨迹对应的长度以及子轨迹和样本轨迹之间的距离所得到的参数,均可以理解为本实施例中的子轨迹参数。
[0158]
本实施例中可以将上述确定的目标轨迹点对应的子轨迹参数、将第一轨迹点确定为划分点所对应的子轨迹参数以及将第一轨迹点确定为非划分点所对应的子轨迹参数,确定为状态信息。
[0159]
可以理解的是,在遍历到每一个轨迹点的时候,都可以针对遍历到的轨迹点按照上述介绍的实现方式确定相应的状态信息。
[0160]
以及需要说明的是,上述介绍的实现方式中,在进行轨迹划分效果的衡量时,采用的是同时考量准确度和简洁度的mdl标准。在实际实现过程中,衡量划分效果的选择还可以扩展到其它度量的标准,比如说可以根据不同的应用场景及实际需求选择不同的度量标准。此外,还可以加上时间、文本等维度从而定义其他的度量标准。
[0161]
s406、将状态信息输入预测模型,以使得预测模型输出预测激励。
[0162]
在确定状态信息之后,参照图6,本实施例中可以将状态信息输入到预测模型中,之后预测模型就可以输出预测奖励。
[0163]
参照图6,预测奖励包括将第一轨迹点确定为划分点的第一预测奖励,以及将第一轨迹点确定为非划分点的第二预测奖励。
[0164]
本实施例中的预测模型比如说可以是基于dqn(deep q-learning network,深度q-learning网络)实现的,或者实现预测模型的具体方式可以根据实际需求进行选择和设置,本实施例对此不做限制。
[0165]
s407、根据第一预测激励和第二预测激励,执行第一操作,第一操作为将第一轨迹点确定为划分点,或者第一操作为将第一轨迹点确定为非划分点。
[0166]
本实施例中可以根据第一预测奖励和第二预测奖励确定具体执行什么样的第一操作。
[0167]
在一种可能的实现方式中,例如可以选择执行预测激励较大的操作。例如在第一预测激励大于第二预测激励的时候,执行将第一轨迹点确定为划分点的第一操作。以及在第一预测激励小于或等于第二预测激励的时候,执行将第一轨迹点确定为非划分点的第一操作。
[0168]
s408、将执行第一操作之前的划分点所对应的子轨迹参数以及执行第一操作之后的划分点所对应的子轨迹参数的差值,确定为真实激励。
[0169]
在执行完成第一操作之后,比如说可以获取执行第一操作之前的划分点以及执行第一操作之后的划分点。
[0170]
例如在图5的示例中,如果说第一操作是将第一轨迹点p5确定为划分点,那么执行第一操作之前的划分点包括p1和p3,执行第一操作之后的划分点就包括p1、p3和p5。
[0171]
然后可以按照上述介绍的确定子轨迹参数的实现方式,确定执行第一操作之前的划分点所对应的子轨迹参数,以及确定执行第一操作之后的划分点所对应的子轨迹参数。然后将这两种子轨迹参数的差值确定为执行第一操作之后的真实奖励。
[0172]
可以理解的是,在遍历到每个轨迹点的时候,每个轨迹点都对应了一个状态,这个状态就是说当前的划分点确定情况是怎么样的,比如说可以将状态表示为s,第i个轨迹点所对应的状态就表示为si。
[0173]
比如说图5的示例中,在遍历到轨迹点p5的时候,可以确定轨迹点p1和轨迹点p3已经被确定为了划分点。那么可以确定轨迹点p5对应的状态s5就是划分点包括p1和p3。
[0174]
然后在针对轨迹点p5执行第一操作之后,比如说将轨迹点p5确定为划分点。那么在当遍历到轨迹点p6的时候,就可以确定轨迹点p6对应的状态s6就是划分点包括p1、p3和p5。
[0175]
以及,假设用s.total_mdl表示执行第一操作之前的划分点所对应的子轨迹参数,以及用s`.total_mdl来表示执行第一操作之后的划分点所对应的子轨迹参数。那么执行第一操作之后的真实激励可以表示为reward=s.total_mdl-s`.total_mdl。
[0176]
以及进一步可以理解的是,在上述介绍的示例中,针对p5执行第一操作之后的划分点所对应的子轨迹参数s5`.total_mdl,实际上就是针对p6执行第一操作之前的划分点所对应的子轨迹参数s6.total_mdl。
[0177]
那么针对各个轨迹点执行第一操作之后所确定的真实激励累加起来之后,就可以表示为
[0178]
r=s0.total
mdl-s1.total
mdl
s1·
total
mdl-s2·
total
mdl


s
n-1
·
total
mdl-sn·
total
mdl
=s0·
total
mdl-sn·
total
mdl

[0179]
可以理解的是,模型训练,也就是强化学习的目的是使得累计奖励最大化,其中s0.total
mdl
=0,那么累计奖励最大,对应的也就是说sn·
total
mdl
最小。因此通过设置这样的奖励机制对模型进行训练,可以保证在遍历完各个轨迹点之后确定的划分点所对应的子轨迹参数是最小的,进而可以保证能够得到使得mdl最小的轨迹划分方案。
[0180]
s409、根据真实激励和预测激励,对预测模型的模型参数进行更新。
[0181]
为了使得预测模型所输出的预测激励尽可能的接近真实激励,本实施例中可以根
据真实激励和预测激励,对预测模型的模型参数进行更新。
[0182]
在一种可能的实现方式中,若第一操作为将第一轨迹点确定为划分点,则参照图6,可以根据真实激励和第一预测激励确定第一损失函数值,之后根据第一损失函数值对预测模型的模型参数进行更新。
[0183]
若第一操作为将第一轨迹点确定为非划分点,则参照图6,可以根据真实激励和第一预测激励确定第二损失函数值,之后根据第二损失函数值对预测模型的模型参数进行更新。
[0184]
本技术实施例提供的轨迹划分的模型训练方法,通过在遍历到每个轨迹点的时候,获取在之前遍历过的轨迹点中已被确定为划分点的目标轨迹点,然后确定目标轨迹点所确定的子轨迹参数,以及将遍历到的轨迹点确定为划分点所对应的子轨迹参数,以及将遍历到的轨迹点确定为非划分点所对应的子轨迹参数,之后将这三种子轨迹参数确定为当前所遍历到的轨迹点所对应的状态信息,然后将状态信息输入到预测模型中,以使得预测模型可以有足够的信息作为参考进行处理,进而有效的提升输出的第一预测激励和第二预测激励的有效性。以及,之后再根据第一预测激励和第二预测激励确定需要执行的第一操作,从而可以有效的选择到预测激励较大的操作执行,进而保证执行第一操作之后所确定的连接点是较优的。以及本实施例中会根据执行第一操作之前的连接点所对应的子轨迹参数和执行第一操作之后的连接点所对应的子轨迹参数,确定真实激励,从而在累积的真实激励最大的原则下,保证执行完最后一个轨迹点对应的第一操作之后所确定的连接点所对应的子轨迹参数是最小的,进而可以保证在全局最优的情况下确定子轨迹的划分点。然后根据真实激励和预测激励对预测模型进行参数更新,就可以有效的保证预测完成的预测模型所输出的预测激励的准确性和有效性。
[0185]
上述实施例介绍的是轨迹划分的模型训练过程,在模型训练完成之后,就可以基于训练后的预测模型执行轨迹划分的相关实现了,因此在上述介绍内容的基础上,下面再结合图7和图8对本技术提供的轨迹划分方法进行进一步的详细介绍。
[0186]
图7为本技术实施例提供的轨迹划分方法的流程图,图8为本技术实施例提供的轨迹划分的实现示意图。
[0187]
如图7所示,该方法包括:
[0188]
s701、获取待划分的目标轨迹,目标轨迹中包括多个轨迹点。
[0189]
在本实施例中,可以获取待划分的目标轨迹,在目标估计中可以包括多个轨迹点。本实施例对目标轨迹的具体实现不做限制,凡是需要进行轨迹划分的轨迹均可作为本实施例中的目标估计。
[0190]
s702、当遍历到多个轨迹点中的第一轨迹点时,根据预测模型,确定第一轨迹点对应的预测激励,预测激励包括将第一轨迹点确定为划分点的第一预测激励,以及将第一轨迹点确定为非划分点的第二预测激励。
[0191]
在进行轨迹划分的过程中,同样是针对待划分的目标轨迹中的各个轨迹点依次进行遍历。各个轨迹点的处理方式均类似,下面以多个轨迹点中的任意一个轨迹点为例进行说明。比如说遍历到多个轨迹点中的第一轨迹点,其中第一轨迹点可以是任一个轨迹点。
[0192]
本实施例中可以根据预测模型,确定第一轨迹点所对应的预测激励,其中预测激励包括将第一轨迹点确定为划分点的第一预测激励,以及将第一轨迹点确定为划分点的第
二预测激励。其实现方式与上述模型训练过程中的实现方式类似,此处不再赘述。以及轨迹划分的实现过程中,除了模型参数更新之外的相关实现,其各项实现均与上述模型训练过程介绍的类似,此处不再赘述。
[0193]
以及本实施例中的预测模型是通过上述介绍的模型训练方法训练得到的,因此预测模型所输出的预测激励是可以保证正确性的。也就是说如果第一预测激励比较大的话,那么可以保证执行将第一轨迹点确定为划分点的操作是更优的。以及如果是第二预测激励比较大的话,那么可以保证执行将第一轨迹点确定为非划分点的操作是更优的。
[0194]
s703、根据预测激励,执行第一操作,第一操作为将第一轨迹点确定为划分点,或者第一操作为将第一轨迹点确定为非划分点。
[0195]
因此在确定预测激励之后,就可以根据预测激励执行第一操作。
[0196]
在一种可能的实现方式中,如果第一预测激励大于第二预测激励,那么可以确定执行将第一轨迹点确定为划分点的第一操作。或者如果第一预测激励小于或者等于第二预测激励,那么可以确定执行将第一轨迹点确定为非划分点的第二操作。
[0197]
s704、根据被确定为划分点的轨迹点,对目标轨迹进行划分,得到多个子轨迹。
[0198]
在针对目标轨迹中的各个轨迹点均遍历完成之后,就可以得到多个划分点。
[0199]
在一种可能的实现方式中,比如说可以将被确定为划分点的各个轨迹点依次连接,其中每两个相邻的划分点就可以组成一个子轨迹,从而得到多个子轨迹。
[0200]
比如说参照图8理解,图8中示出了待划分的目标轨迹,其中包括轨迹点p1~轨迹点p6。
[0201]
以及在针对各个轨迹点均遍历完成之后,假设确定了轨迹点p1、轨迹点p3、轨迹点p5和轨迹点p6为划分点。
[0202]
那么比如说可以确定图8中示意的轨迹点p1和轨迹点p3连接所构成的第一条子轨迹,以及轨迹点p3和轨迹点p5连接所构成的第二条子轨迹,以及轨迹点p5和轨迹点p6所构成的第三条子轨迹。
[0203]
或者在另一种可能的实现方式中,比如说可以将被确定为划分点的各个轨迹点,在原始的目标轨迹中所切分的部分轨迹组成一个子轨迹,从而得到多个子轨迹。
[0204]
比如说参照图8理解,图8中示出了待划分的目标轨迹,其中包括轨迹点p1~轨迹点p6。
[0205]
以及在针对各个轨迹点均遍历完成之后,假设确定了轨迹点p1、轨迹点p3、轨迹点p5和轨迹点p6为划分点。
[0206]
那么比如说可以确定图8中示意的目标轨迹中在轨迹点p1和轨迹点p3之间的部分轨迹为第一条子轨迹,以及目标轨迹中轨迹点p3和轨迹点p5之间的部分轨迹为第二条子轨迹,以及目标轨迹中轨迹点p5和轨迹点p6之间的部分轨迹为第三条子轨迹。
[0207]
本技术实施例提供的轨迹划分方法,通过遍历目标轨迹中的各个轨迹点,然后基于训练完成的预测模型预测将轨迹点确定为连接点的第一预测激励,以及将轨迹点确定为非连接点的第二预测激励,然后根据第一预测激励和第二预测激励,确定是否要将遍历到的轨迹点确定为连接点,在遍历完成各个轨迹点之后,就可以得到多个轨迹点,之后再基于轨迹点确定子轨迹的划分结果,从而可以简单有效的实现轨迹划分,同时又可以保证划分得到的子轨迹的简洁度和准确度都比较良好。
[0208]
可以理解的是,上述介绍的模型训练的过程可以理解为强化学习,因此本技术中利用强化学习解决轨迹划分为子轨迹问题,因为强化学习是数据驱动的,因此可以根据数据的内在特征适应问题的不同动态变化。以及,上述介绍的依次遍历各个轨迹点,针对每一个轨迹点执行相应的操作之后,将操作之后的状态确定为下一个轨迹点对应的初始状态,实际上可以理解为将环境建模为马尔科夫决策过程(markov decision process,mdp),其中mdp的核心问题是为智能体找到一个最优策略,该策略用于指导智能体在特定状态下应选择什么动作使累积奖励最大化。
[0209]
对应于上述介绍的实现方式,也就是说预测模型可以输出准确的预测激励,之后设备可以选择是的累积奖励最大化的操作执行,以保证在遍历到每个轨迹点之后,可以根据当下时刻的连接点状态选择是的奖励最大化的操作,进而保证。
[0210]
综上所述,本技术提供的轨迹划分方法,将轨迹划分看作一个序列决策的过程,可以认为设备是将轨迹点确定为划分点的动作的执行者,之后按顺序扫描各个轨迹点,在每个轨迹点上进行是否划分的决策,通过学习得到能产生最优的轨迹划分策略。与其他子轨迹划分的方法相比,本方法不需要人为制定复杂的对应算法和选取相应的参数,而是利用强化学习由数据驱动的特点,可以根据不同数据的特征及动态变化来学习划分的策略,进而可以简单有效的实现轨迹划分,同时又可以保证轨迹划分的效果。
[0211]
图9为本技术实施例提供的轨迹划分的模型训练装置的结构示意图。如图9所示,该装置90包括:获取模块901、确定模块902、处理模块903以及更新模块904。
[0212]
获取模块901,用于获取样本轨迹,其中,所述样本轨迹中包括多个轨迹点;
[0213]
确定模块902,用于当遍历到所述多个轨迹点中的第一轨迹点时,根据预测模型,确定所述第一轨迹点对应的预测激励,所述预测激励包括将所述第一轨迹点确定为划分点的第一预测激励,以及将所述第一轨迹点确定为非划分点的第二预测激励,其中,在所述多个轨迹点中所确定的相邻的划分点用于构成所述样本轨迹所对应的子轨迹;
[0214]
处理模块903,用于根据所述第一预测激励和所述第二预测激励,执行第一操作,所述第一操作为将所述第一轨迹点确定为划分点,或者所述第一操作为将所述第一轨迹点确定为非划分点;
[0215]
所述确定模块902,用于根据执行所述第一操作之前的划分点所对应的子轨迹参数以及执行所述第一操作之后的划分点所对应的子轨迹参数,确定执行所述第一操作所对应的真实激励,所述子轨迹参数用于指示子轨迹的长度以及子轨迹和所述样本轨迹之间的差异;
[0216]
更新模块904,用于根据所述真实激励和所述预测激励,对所述预测模型的模型参数进行更新。
[0217]
在一种可能的设计中,所述确定模块902具体用于:
[0218]
在所述多个轨迹点中获取已确定为划分点的目标轨迹点;
[0219]
根据所述目标轨迹点和所述第一轨迹点,确定状态信息,所述状态信息包括所述目标轨迹点对应的子轨迹参数、将所述第一轨迹点确定为划分点所对应的子轨迹参数以及将所述第一轨迹点确定为非划分点所对应的子轨迹参数;
[0220]
将所述状态信息输入所述预测模型,以使得所述预测模型输出所述预测激励。
[0221]
在一种可能的设计中,所述确定模块902具体用于:
[0222]
根据所述目标轨迹点确定至少一个第一子轨迹,根据所述至少一个第一子轨迹的轨迹长度,以及所述至少一个第一子轨迹和所述样本轨迹之间的距离,确定所述目标轨迹点对应的子轨迹参数;
[0223]
根据所述第一轨迹点和多个目标轨迹点中的最后一个目标轨迹点确定第二子轨迹,根据所述第二子轨迹的轨迹长度,以及所述第二子轨迹和所述样本轨迹之间的距离,确定将所述第一轨迹点确定为划分点所对应的子轨迹参数;
[0224]
根据所述第一轨迹点、多个目标轨迹点中的最后一个目标轨迹点以及所述第一轨迹点和最后一个目标轨迹点之间的轨迹点,确定至少一个第三子轨迹,根据所述至少一个第三子轨迹的轨迹长度,以及所述至少一个第三子轨迹和所述样本轨迹之间的距离,确定将所述第一轨迹点确定为非划分点所对应的子轨迹参数。
[0225]
在一种可能的设计中,所述处理模块903具体用于:
[0226]
若所述第一预测激励大于所述第二预测激励,则执行将所述第一轨迹点确定为划分点的第一操作;或者,
[0227]
若所述第一预测激励小于或者等于所述第二预测激励,则执行将所述第一轨迹点确定为非划分点的第一操作。
[0228]
在一种可能的设计中,所述确定模块902具体用于:
[0229]
将执行所述第一操作之前的划分点所对应的子轨迹参数以及执行所述第一操作之后的划分点所对应的子轨迹参数的差值,确定为所述真实激励。
[0230]
在一种可能的设计中,所述更新模块904具体用于:
[0231]
若所述第一操作为将所述第一轨迹点确定为划分点,则根据所述真实激励和所述第一预测激励确定第一损失函数值,根据所述第一损失函数值对所述预测模型的模型参数进行更新;或者,
[0232]
若所述第一操作为将所述第一轨迹点确定为非划分点,则根据所述真实激励和所述第一预测激励确定第二损失函数值,根据所述第二损失函数值对所述预测模型的模型参数进行更新。
[0233]
本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
[0234]
图10为本技术实施例提供的轨迹划分装置的结构示意图。如图10所示,该装置100包括:获取模块1001、确定模块1002以及处理模块1003。
[0235]
获取模块1001,用于获取待划分的目标轨迹,所述目标轨迹中包括多个轨迹点;
[0236]
确定模块1002,用于当遍历到所述多个轨迹点中的第一轨迹点时,根据预测模型,确定所述第一轨迹点对应的预测激励,所述预测激励包括将所述第一轨迹点确定为划分点的第一预测激励,以及将所述第一轨迹点确定为非划分点的第二预测激励,所述预测模型是根据上述实施例介绍的模型训练方法训练得到的;
[0237]
处理模块1003,用于根据所述预测激励,执行第一操作,所述第一操作为将所述第一轨迹点确定为划分点,或者所述第一操作为将所述第一轨迹点确定为非划分点;
[0238]
所述处理模块还用于,根据被确定为划分点的轨迹点,对所述目标轨迹进行划分,得到多个子轨迹。
[0239]
在一种可能的设计中,所述确定模块1002具体用于:
industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本技术附图中的总线并不限定仅有一根总线或一种类型的总线。
[0255]
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0256]
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0257]
最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献