【技术实现步骤摘要】
一种基于树分解的时序路网最短路径查询方法
[0001]本专利技术涉及交通网络
,尤其涉及一种基于树分解的时序路网最短路径查询方法。
技术介绍
[0002]近年来,随着大数据时代的到来,语义网络、社交网络、生物信息网络等新兴领域的飞速发展,数据的结构越来越发杂,数据量呈几何状增长,并且这种增长还在不断的持续。为了更好的描述这些数据,图数据模型逐渐代替了树数据模型来实现对复杂数据的存储和分析。此外,在实际应用中,图中的边总是与时间信息相关联。例如,在协作网络中,每个节点都代表一名研究人员,每条边表示两名研究人员在同一时间的合作成果;在社交网络中,时间戳为t的边,表示两个用户在时刻t的通信(发送消息或发表评论)。由于实体关系中广泛分布的时间信息,所以时序图中的研究问题最近引起了很多关注。
[0003]交通网络是最具代表性的时序网络,其中每个节点代表车站或者十字路口,如果两个节点之间存在可以到达的路段,就在这两个节点间插入一条边,边上的权重与时间信息相关联,代表通过这条边所需的时间。同样一条路在不同的时间通过所需的时长 ...
【技术保护点】
【技术特征摘要】
1.一种基于树分解的时序路网最短路径查询方法,其特征在于,所述方法包括:根据获取到的时序道路网络数据建立时序图;在所述时序图的基础上创建包,并连接所有创建的包以构建时序树分解;基于所述时序树分解,构建TD
‑
H2H索引;基于所述TD
‑
H2H索引,构建TD
‑
OAI查询算法,并将获取的最短路径查询问题代入到所述TD
‑
OAI查询算法,得到最短旅行时间及其对应的路径。2.根据权利要求1所述的基于树分解的时序路网最短路径查询方法,其特征在于,所述时序图为G
T
,包括集合(V,E,F),其中,V为时序图G
T
中节点的集合,E为时序图G
T
中边的集合,F为时序图G
T
中从各边的一个节点到另一个节点所需时间的集合;在所述时序图的基础上创建包,并将所有创建的包连接起来以构建时序树分解的步骤具体包括:对所述时序图G
T
进行|V(G
T
)|次迭代,并根据每次迭代所选择的所述时序图G
T
中度数最小的节点u和所述度数最小的节点u的所有邻居节点y创建包X(u),其中,在所述包X(u)中,所述度数最小的节点u为包头节点,所述包头节点u的所有邻居节点y为包内节点;遍历所述包头节点u在所述时序图G
T
中的每个邻居节点y,若存在边<u,y>,则将节点y加入到所述包X(u)的out邻居集合中,并保存与边<u,y>对应的时序函数;若存在边<y,u>,则将节点y加入到所述包X(u)的in邻居集合中,并保存与边<y,u>对应的时序函数;通过节点消除算法消除所述时序图G
T
中的所述包头节点u,并记录所述包X(u)的创建次序i;在所有的包都创建完毕后,将已创建的包连接起来以形成树结构,得到时序树分解T
Gt
。3.根据权利要求2所述的基于树分解的时序路网最短路径查询方法,其特征在于,所述节点消除算法具体包括:通过给定的所述时序图G
T
以及所述包头节点u,逐一访问与所述包头节点u相连的边;若所述包头节点u在所述时序图G
T
内存在边<w,u>和<u,z>,通过Com()方法构建边<w,z>以及边<w,z>上的时间函数fwz'=Com(fwu,fuz);若所述时序图G
T
中的节点w和节点z间没有相连的边,则插入边<w,z>并将边权重赋值为fwz';若节点w和节点z间存在相连的边,则使用min()方法更新边权重,并从所述时序图G
T
中删除所述包头节点u以及所有与所述包头节点u相连的边。4.根据权利要求2所述的基于树分解的时序路网最短路径查询方法,其特征在于,基于所述时序树分解,构建TD
‑
H2H索引的步骤包括:逐一访问所述时序树分解T
Gt
中的所述包X(u),得到与所述包X(u)对应的祖先数组X(u).anc,其中,访问顺序为由上至下;根据所述祖先数组X(u).anc分别得到所述包X(u)的位置数组X(u).pos
out
与位置数组X(u).pos
in
;采用GetOutTrv算法与GetInTrv算法分别得到所述包X(u)的trv
out
旅行时间函数表和trv
in
旅行时间函数表,并将其作为TD
‑
H2H索引。5.根据权利要求4所述的基于树分解的时序路...
【专利技术属性】
技术研发人员:袁野,涂旭青,李新玲,王一舒,
申请(专利权)人:思创数码科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。