CN113326257B - 索引构建方法、推荐方法、装置、电子设备和计算机存储介质 - Google Patents

索引构建方法、推荐方法、装置、电子设备和计算机存储介质 Download PDF

Info

Publication number
CN113326257B
CN113326257B CN202010363674.3A CN202010363674A CN113326257B CN 113326257 B CN113326257 B CN 113326257B CN 202010363674 A CN202010363674 A CN 202010363674A CN 113326257 B CN113326257 B CN 113326257B
Authority
CN
China
Prior art keywords
index
representation
determining
query
track
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010363674.3A
Other languages
English (en)
Other versions
CN113326257A (zh
Inventor
刘音沛
李飞飞
姚斌
谢炯
肖斐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN202010363674.3A priority Critical patent/CN113326257B/zh
Publication of CN113326257A publication Critical patent/CN113326257A/zh
Application granted granted Critical
Publication of CN113326257B publication Critical patent/CN113326257B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Remote Sensing (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种索引构建方法、推荐方法、装置、电子设备和计算机存储介质。所述索引构建方法包括:根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,所述时空外包框索引结构指示从父节点层到子节点层的索引;根据所述目标切分时间段,进行时空轨迹切分,以得到多个子轨迹;为所述子节点层构建所述多个子轨迹的多个子外包框,并且为所述父节点层构建多个外包框。由于切分后的轨迹具有相同的目标切分时间段,因此有利于时空外包框索引结构中子外包框的均衡,提高了索引效率。

Description

索引构建方法、推荐方法、装置、电子设备和计算机存储介质
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种索引构建方法、推荐方法、装置、电子设备和计算机存储介质。
背景技术
移动物体的轨迹通常由一串带时间戳的空间点表示。由于轨迹数据集的数据量十分庞大,因此通常需要对数据建立索引。
对于时空轨迹的精确查询,如何将轨迹切分成子轨迹是最重要的问题之一。索引较短的子轨迹,就像索引每个线段的经典方式一样,将导致索引结构变得非常大。但是,如果我们为更长的子轨迹建立索引,则外包框会变得更大,并且在查询期间,必须检查更多的轨迹。
发明内容
有鉴于此,本发明实施例提供一种索引构建方法、推荐方法、装置、电子设备和计算机存储介质,以解决或缓解上述问题。
根据本发明实施例的第一方面,提供了一种索引构建方法,包括:根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,所述时空外包框索引结构指示从父节点层到子节点层的索引;根据所述目标切分时间段,进行时空轨迹切分,以得到多个子轨迹;为所述子节点层构建所述多个子轨迹的多个子外包框,并且为所述父节点层构建多个外包框。
根据本发明实施例的第二方面,提供了一种推荐方法,应用于电子地图,包括:基于从电子地图前端获取目标对象的时空轨迹信息生成相似轨迹查询请求,所述轨迹查询请求中包括相似度查询指标;响应所述相似轨迹查询请求,通过轨迹索引返回相似轨迹查询结果,所述查询结果中包括基于所述轨迹索引确定的符合所述相似度指标的至少一个相似对象,其中,所述轨迹索引为如第一方面所述的方法所构建;基于所述至少一个相似对象,在所述电子地图前端为所述目标对象进行推荐。
根据本发明实施例的第三方面,提供了一种索引构建装置,包括:确定模块,根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,所述时空外包框索引结构指示从父节点层到子节点层的索引;切分模块,根据所述目标切分时间段,进行时空轨迹切分,以得到多个子轨迹;构建模块,为所述子节点层构建所述多个子轨迹的多个子外包框,并且为所述父节点层构建多个外包框。
根据本发明实施例的第四方面,提供了一种推荐装置,应用于电子地图,包括:查询请求生成模块,基于从电子地图前端获取目标对象的时空轨迹信息生成相似轨迹查询请求,所述轨迹查询请求中包括相似度查询指标;查询模块,响应所述相似轨迹查询请求,通过轨迹索引返回相似轨迹查询结果,所述查询结果中包括基于所述轨迹索引确定的符合所述相似度指标的至少一个相似对象,其中,所述轨迹索引为如第一方面所述的方法所构建;推荐模块,基于所述至少一个相似对象,在所述电子地图前端为所述目标对象进行推荐。
根据本发明实施例的第五方面,提供了一种电子设备,所述设备包括:一个或多个处理器;计算机可读介质,配置为存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面或第二方面所述的方法。
根据本发明实施例的第六方面,提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面或第二方面所述的方法。
本发明实施例的方案能够根据时空外包框索引结构的索引开销,确定目标切分时间段,并根据目标切分时间段进行时空轨迹切分。由于切分后的轨迹具有相同的目标切分时间段,因此有利于时空外包框索引结构中子外包框的均衡,提高了索引效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明一个实施例的轨迹采集网络框架的示意图;
图2A为本发明另一实施例的索引构建方法的示意性流程图;
图2B为本发明另一实施例的索引构建方法的示意性流程图;
图3为本发明另一实施例的推荐方法的网络框架的示意图;
图4为本发明另一实施例的推荐方法的示意性流程图;
图5为本发明另一实施例的索引构建装置的示意性框图;
图6为本发明另一实施例的推荐装置的示意性框图;
图7为本发明另一实施例的电子设备的示意性结构图;
图8为本发明另一实施例的电子设备的硬件结构。
具体实施方式
为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
此外,虽然本发明实施例的系统和方法的描述主要关于交通服务的请求,应该理解的是,这只是一个示例性的实施例。本发明实施例的索引构建方法可以应用与任何其他类型的线上到线下服务。例如,本发明实施例的索引构建方法可以应用于不同环境下的交通系统,包括陆地、海洋、航空航天或类似物或其任何组合。所述交通系统涉及的车辆可以包括诸如共享单车的自行车、出租车、私家车、顺风车、巴士、列车、子弹头列车、高速铁路、地铁、船只、飞机、太空船、热气球、无人驾驶车辆等或其任意组合。交通系统还可以包括用于经营及/或分配的任何交通系统,例如用于发送及/或接收快递的系统。本发明实施例的系统或方法的应用场景可以包括网页、浏览器插件、客户终端、定制系统、内部分析系统、人工智能机器人等或上述举例的任意组合。
本发明实施例中的术语“移动终端”和“客户端”可以交换使用,其表示用户所使用的用于提供服务或促进服务的移动终端。
在一个示例中,例如采用共享单车的轨迹数据。每个共享单车可以安装有轨迹定位设备。可以在本发明实施例中使用的定位技术可包括全球定位系统(GPS),全球导航卫星系统(GLONASS)、罗盘导航系统(COMPASS)、伽利略定位系统、准天顶卫星系统(QZSS)、无线保真(WIFI)定位技术等或其任意组合。上述定位技术中的一种或者多种可在本发明实施例中互换使用。
一般而言,共享单车支持诸如GPS的设备和基于位置的服务,基于时间会产生大量轨迹。这些轨迹数量十分庞大,同时蕴含着很多的信息。例如,包括结构化的时间信息和空间信息。例如,这些时空轨迹包括其他的非结构化信息。采用结构化信息和非结构化信息或者采用两者的结合,可以产生出非常有价值的数据。例如,采用聚类和分类算法等,基于确定的相似的轨迹,可以进行各种推荐服务。利用这些轨迹可以对人们的活动进行指导,例如个人导航服务、物流服务等。此外,还可以通过分析人们的轨迹来发现人们的运行特征,为用户和公司的决策提供支持。
本发明实施例的一个方面涉及在线系统以及用于遍历空间数据的方法。可以确定与地理区域相关的多个空间索引值。可以确定用于存储与地理区域相关的数据的多个数据组。每个数据组可以与一个空间索引值相关联。可以基于多个空间索引值和地理区域来确定优先队列。优先队列可以包括与第一参考索引值和地理区域的第一部分相关联的第一缓冲范围数据。所述数据组从与所述多个空间索引值中的最小空间索引值相关联的数据组开始,遍历所述多个数据组。如果确定当前遍历的数据组的空间索引值等于或大于所述第一参考索引值,向所述用户终端发送与所述地理区域的所述第一部分有关的数据。
本发明实施例采用欧式距离以确定所述地理区域中的空间索引值。处理引擎基于空间索引遍历所述数据组,但是,应理解,这仅仅是示例性的,本发明实施例可以采用任意的距离计算方式。
图1是根据一些实施例所示的示例性轨迹采集网络架构的框图。例如,所述轨迹采集网络架构可以是用于交通服务的在线交通服务平台。所述轨迹采集网络架构可以包括服务器110、网络120、移动终端140、车辆150、存储设备160和导航系统170。
所述轨迹采集网络架构可以提供多个服务。在一些实施例中,所述线上到线下服务可以是任何在线服务,如订餐推荐、购物推荐等或其他任何组合。
在一些实施例中,所述服务器110可以是单个服务器或服务器组。该服务器组可以是集中式或分布式的(例如,服务器110可以是分布式系统)。在一些实施例中,服务器110可以是本地的或远程的。例如,所述服务器110可以经由网络120访问存储在移动终端140和/或存储设备160中的信息和/或数据。再例如,所述服务器110可以直接连接到移动终端140和/或存储设备160访问存储的信息和/数据。在一些实施例中,服务器110可以在云平台上实现。仅仅举个例子,所述云平台可以包括私有云、公共云、混合云、社区云、分布式云、中间云、多云等或其任意组合。
在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理与服务相关的信息和/数据来执行本发明实施例中的一个或多个功能。例如,处理引擎112可以遍历空间数据。在一些实施例中,处理引擎112可以包括一个或多个处理引擎(例如,单核处理器或是多核处理器)。仅仅举个例子,处理引擎112可以包括中央处理器(CPU)、特定应用集成电路(ASIC)、特定应用指令集处理器(ASIP)、图形处理器(GPU)、物理运算处理单元(PPU)、数字信号处理器(DSP)、现场可以程序门阵列(FPGA)、可以程序逻辑装置(PLD)、控制器、微控制器单元、精简指令集计算机(RISC)、微处理器等或其任意组合。
网络120可以促进信息和/数据的交换。在一些实施例中,轨迹采集网络架构(例如,服务器110、移动终端140、车辆150、存储设备160和导航系统170)中的一个或多个组件可以经由网络120向轨迹采集网络架构的其他组件发送信息和/数据。在一些实施例中,网络120可以是任何类型的有线网络、无线网络或其组合。仅仅举个例子,网络120可以包括缆线网络、有线网络、光纤网络、远程通信网络、内部网络、互联网、局域网络(LAN)、广域网路(WAN)、无线局域网络(WLAN)、城域网(MAN)、广域网路(WAN)、公共开关电话网络(PSTN)、蓝牙网络、ZigBee网络、近场通讯(NFC)网络等或上述举例的任意组合。在一些实施例中,网络120可以包括一个或多个网络接入点。例如,网络120可包括有线或无线网络接入点比如基站和/或互联网交换点120-1、120-2…。通过该网络接入点,轨迹采集网络架构的一个或多个组件可以连接至网络120以交换信息和或数据。
在一些实施例中,移动终端140可以包括移动装置130-1、平板计算机130-2、笔记本电脑130-3、车辆内置装置130-4等或上述举例的任意组合。在一些实施例中,可穿戴装置可以包括智能手环、智能鞋袜、智能眼镜、智能头盔、智能手表、智能衣物、智能背包、智能配饰等或上述举例的任意组合。在一些实施例中,智能移动装置可以包括智能电话、个人数字助理(PDA)、游戏设备、导航装置、销售点(POS)装置等或其任意组合。在一些实施例中,虚拟现实装置和/或增强实境装置可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强实境头盔、增强实境眼镜、增强实境眼罩等或上述举例的任意组合。在一些实施例中,车辆内置装置130-4可以包括车载电脑,车载电视等。在一些实施例中,移动终端140可以是具有用于定位乘客或骑行人员的位置的定位技术的设备。
移动终端140可以包括多个移动终端140-1、140-2、……、140-n。在一些实施例中,移动终端140可以被定制为能够实现线上到线下服务。在一些实施例中,移动终端140可以是一个带有定位技术的装置,该定位技术可以用于定位移动终端140和/或与移动终端相关的车辆150的位置。在一些实施例中,移动终端140可以与另一个定位装置通信以确定乘客、移动终端140的位置。在一些实施例中,移动终端140可以周期性地将该定位信息发送至服务器110。在一些实施例中,移动终端140也可以周期性地将可用状态发送至服务器110。所述可用状态可以表明与移动终端140相关的车辆150是否可以接载乘客。例如,或移动终端140可以每30分钟将所述定位信息和所述可用状态发送至服务器110。又例如,或移动终端140可以在每次用户登录与在线到离线服务相关的移动应用程序时将定位信息和可用状态发送至服务器110。
在一些实施例中,移动终端140可以对应一个或多个车辆150。车辆150可以接载乘客并送至目的地。车辆150可以包括多个车辆150-1、150-2、……、150-n。
存储设备160可以储存数据及/或指令。在一些实施例中,存储设备160可以存储从移动终端140获得的数据。在一些实施例中,存储设备160可以存储服务器110用来执行或使用来完成本发明实施例中描述的示例性方法的数据及/或指令。在一些实施例中,存储设备160可包括大容量存储器、可移动存储器、挥发性读写内存、只读存储器(ROM)等或其任意组合。示例性大容量存储器可包括磁盘、光盘、软盘、固态硬盘等。示例性的可移动存储器可包括快闪驱动、软盘、光盘、记忆卡、压缩盘、磁带等。示例性的挥发性读写记忆体可包括随机访问记忆体(RAM)。示例性的随机存储器可以包括动态随机存储器(DRAM)、双数据率同步动态随机存储器(DDRSDRAM)、静态随机存储器(SRAM)、可控硅随机存储器(T-RAM)和零电容存储器(Z-RAM)等。示例性的只读存储器可以包括掩蔽型只读存储器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(PEROM)、电可擦除可编程只读存储器(EEPROM)、压缩硬盘只读存储器(CD-ROM)和数字多功能硬盘只读存储器等在一些实施例中,存储设备160可以在云平台上实现。仅仅举个例子,所述云平台可以包括私有云、公共云、混合云、社区云、分布式云、中间云、多云等或其任意组合。
在一些实施例中,存储设备160可以与网络120连接以与轨迹采集网络架构的一个或多个部件(例如,服务器110、移动终端140等)通信。轨迹采集网络架构的一个或多个组件可以通过网络120访问存储在存储设备160中的数据或指令。在一些实施例中,存储设备160可以直接与轨迹采集网络架构的一个或多个部件(例如,服务器110、移动终端140等)连接或通信。在一些实施例中,存储设备160可以是服务器110的一部分。
所述导航系统170可以确定与对象相关的信息,例如,一个或多个服务移动终端140中,车辆150等。在一些实施例中,导航系统170可以是全球定位系统(GPS)、全球导航卫星系统(GLONASS)、指南针导航系统(COMPASS)、北斗导航卫星系统、伽利略定位系统、准天顶卫星系统(QZSS)等。所述信息可包括对象的位置、海拔、速度、加速度或当前时间。导航系统170可以包括一个或多个卫星,例如,卫星170-1、卫星170-2和卫星170-3。卫星170-1至170-3可以独立地或共同地确定上述信息。卫星导航系统170可以通过无线连接将上述信息发送至网络120、移动终端140或车辆150。
在一些实施例中,轨迹采集网络架构的一个或多个部件(例如,服务器110、移动终端140等)可以拥有访问存储设备160的权限。在一些实施例中,当满足一个或多个条件时,轨迹采集网络架构的一个或多个部件可以读取和/或修改与乘客和/或骑行人员相关的信息。例如,一个服务完成后,服务器110可以读取和/或修改一个或多个乘客的信息。又例如,一个服务完成后,服务器110可以读取和/或修改一个或多个移动终端用户的信息。
在一些实施例中,轨迹采集网络架构的一个或多个部件的信息交换可以通过请求一个服务的方式实现。服务的客体可以是任一产品。在一些实施例中,所述产品可以包括食品、医药、商品、化学产品、电器、衣物、小汽车、房屋、奢侈品等或上述举例的任意组合。在一些实施例中,所述产品可以包括服务产品、金融产品、知识产品、互联网产品等或上述举例的任意组合。互联网产品可以包括个人主机产品、网站产品、行动互联网产品、商业主机产品、嵌入式产品等或上述举例的任意组合。移动互联网产品可以用于移动终端的软件、程序、系统等或上述举例的任意组合。移动终端可以包括平板计算机、膝上型计算机、移动手机、掌上计算机(PDA)、智能手表、销售点(POS)装置、车载计算机、车载电视、随身装置等或上述举例的任意组合。例如,所述产品可以是用于计算机或移动手机中的任意的软件和/或应用程序。所述软件和/或应用程序可以与社交、购物、交通、娱乐、学习、投资等或上述举例的任意组合有关。在一些实施例中,所述与交通相关的软件和/或应用程序可以包括出行软件和/或应用程序、交通工具调度软件和/或应用程序、地图软件和/或应用程序等。在所述交通工具调度软件和/或应用程序中,交通工具可以包括马、马车、人力车(例如独轮手推车、自行车、三轮车等)、汽车(例如,出租车、公共汽车、私家车等)、火车、地铁、船舶、飞行器(例如,飞机、直升机、航天飞机、火箭、热气球等)等其任意组合。
图2A为本发明另一实施例的索引构建方法的示意性流程图。应理解,图2A的索引方法可以应用于图1的轨迹采集网络架构,也可以应用于其他轨迹拟采集网络架构,本发明实施例对此不作限定。图2A的索引构建方法,包括:
210:根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,时空外包框索引结构指示从父节点层到子节点层的索引。
应理解,一般而言,时空外包框索引结构适用于任意的对时空轨迹的索引。通常,外包框索引针对基于时空的索引方式,移动物体的轨迹通常由一串带时间戳的空间点表示。例如,轨迹数据集的数据量比较大,建立时空索引利于节省计算资源,换言之,提高了计算效率。
还应理解,各个时空轨迹可以采用诸如图1的采集方式。采集的时间点可以为周期性的,也可以为非周期性的。采集的数据为离散的轨迹点。例如,基于多个轨迹点,确定一个或多个轨迹。例如,对属于同一对象的轨迹点进行连接,得到对应于该对象的轨迹。例如,针对目标对象,对其各个轨迹点进行插值,得到更多的轨迹点,然后对这些轨迹点进行连接。例如,上述的插值方式可以为任意的,例如,可以为线性插值,也可以为非线性插值。例如,可以采用线性回归等方式确定属于同一对象的多个轨迹点的较优轨迹。例如,针对多个轨迹点,该较优轨迹的拟合度相比于其他轨迹的拟合度更高。可以采用聚类计算、分类计算等方式,对采集到的轨迹点数据集进行分类。
还应理解,父节点层可以包括一个或多个父节点。例如,子节点层可以包括一个或多个子节点。父节点和子节点之间可以具有不同的对应关系。例如,一对一的对应关系、一对多的对应关系、多对一的对应关系、多对多的对应关系等。例如,所述对应关系还可以为上述各种对应关系的组合。本发明实施例对此不作限定。还应理解,即使对于相同的索引结构,上述的对应关系也可以具有单独或组合的形式。
还应理解,时空轨迹可以以不同的方式索引。例如,时空外包框索引结构可以为TB索引结构、STR索引结构或3DR-TB索引结构。例如,索引结构包括叶子节点和树节点。例如,在不同的索引结构中,叶子节点可以具有不同的存储形态。例如,叶子节点可以对应于本发明的父节点,诸如在3DR-TB索引结构中。例如,叶子节点可以对应于本发明实施例的子节点,诸如在TB索引结构中。时空外包框例如可以为最小外接矩形(MBR),外包框的形式也可以为诸如记录起点、终点和半径的圆柱,多面体,最小外接晶体等。
220:根据目标切分时间段,进行时空轨迹切分,以得到多个子轨迹。
应理解,对时空轨迹进行切分,可以采用基于目标切分时间段进行切分的各种方式。例如,可以对多个时空轨迹进行整体切分,得到多个子轨迹。例如,可以针对每个时空轨迹进行单独切分。例如,可以对多个时空轨迹进行预切分,然后进行再切分,得到多个子轨迹。例如,可以对多个时间对焦分为多个组,然后对每组时空轨迹进行切分,得到多个子轨迹。例如,可以将多个时空轨迹进行整体切分,然后对整体切分后的结果进行优化处理,以得到所述多个子轨迹。上述的例子仅仅为示例性的,本发明实施例对此不作限定。
230:为子节点层构建多个子轨迹的多个子外包框,并且为父节点层构建多个外包框。
应理解,针对不同的索引结构,可以采用不同或相同的形式构建子外包框和外包框。例如,针对TB索引结构,可以针对每个叶子节点构建属于同一轨迹的一组多个子轨迹。例如,相应地,将多个叶子节点与多个父节点进行对应。例如,对应的方式可以采用上述的对应方式,本发明实施例对此不作限定。例如,上述的多组子轨迹可以与一个或多个父节点进行对应。另外,例如,针对3DR-TB索引结构,TB层可以不存储轨迹。例如,同一叶子节点可以存储属于不同轨迹的子轨迹。换言之,属于同一轨迹的子轨迹可以存储在不同的叶子节点中。例如,在时空外包框索引结构中,每个外包框可以包括多个子外包框。例如,在时空外包框索引结构中,父节点的层的外包框被构建为覆盖索引子节点层的子外包框。例如,在时空外包框索引结构中,父节点层被构建为使得外包框的体积和为目标体积和。例如,使得父节点层的外包框的体积和最小。例如,在时空外包框索引结构中,父节点层中,不同的父节点的外包框之间的重叠最小,从而有利于索引过程中的剪枝。应理解,上述的操作或构建方式仅仅为示例性的,本发明实施例对此不作限定。
由于切分后的轨迹具有相同的目标切分时间段,因此有利于时空外包框索引结构中子外包框的均衡,提高了索引效率。
此外,本发明实施例的方案避免了对整个轨迹的外包框进行索引的低效率。在时空轨迹上为每个线段建立索引,并且基于确定的切分时间段对轨迹进行切分,换言之,基于确定的切分时间段将轨迹划分为子轨迹,并为其子外包框索引,更有利于索引时父节点的剪枝。
此外,对于时空轨迹的精确索引,相比于索引较短的子轨迹,本发明实施例的方法能够减小索引结构。
此外,对于时空轨迹的精确索引,相比于采用较长的子轨迹建立索引,本发明实施例的方法会使外包框会减小。并且,本发明实施例的方案使得在查询期间,能够索引较少的轨迹。
此外,对于时空轨迹的精确索引,相比于将轨迹切分成长度不均的片段使得单条轨迹的外包框体积之和尽可能小,本发明实施例的方案能够保持外包框体积和可能小的情况下保持子轨迹的外包框形状一致,从而提高了索引效率,换言之,本发明实施例的方案良好地平衡了外包框体积和与子外包框的形状一致性。
在本发明的另一实现方式中,根据目标切分时间段,进行时空轨迹切分,以得到多个子轨迹,包括:分别确定多个时空轨迹的多组轨迹特征点;分别利用多组轨迹特征点对多个时空轨迹进行切分,得到多组初始子轨迹;利用目标切分时间段,将多组初始子轨迹切分为多个子轨迹。
应理解,作为一个示例,如图2B所示,左侧的轨迹未经处理,可以看到该轨迹呈现了一定轨迹点的无序性和随机性。在本示例中确定的轨迹特征点可以减小这种随机性。例如,如中间的轨迹和右侧的轨迹所示,圆圈标注的部分为确定的轨迹特征点。例如,右侧的轨迹标注的特征点的数目比中间的轨迹标注的特征点的数目少。例如,相邻特征点之间轨迹呈现出较高的有序性,换言之,相邻特征点之间的轨迹呈现出较高的线性特征。从而,采用本发明实施例的方式,可以使得切分后的子轨迹呈现出更好的有序性。
换言之,左侧是未经处理的轨迹。通常,据固定的时间范围bt进行分割。可看出每一段轨迹的形状没有保障,如果切分中每段的时间比较长,则每一段轨迹的运动都十分复杂。中间和右侧的轨迹通过Ramer-Douglas-Peucker算法找出图中标注的点,即,确定轨迹中蕴含信息较多的点,使用这些点将轨迹进行分段,则每一段的轨迹的运动都会相对简单。
另外,作为另一个实例,仍然如图2B所示,右侧的轨迹的特征点的数目比中间的轨迹的特征点的数目少。例如,对于中间的轨迹,由于其较多的特征点数目,相邻的特征点之间呈现出更好的线性特征,使得切分后的子轨迹具有更高的分析价值。
另外,作为另一示例,仍然如图2B所示,右侧的轨迹的特征点数目相对较少,但是相邻的特征点之间仍然呈现出良好的线性特征。此外,相邻的轨迹之间的时空外围较大,更加有利于切分。例如,实现了切分的一致性与子轨迹的高分析价值之间的平衡。因此,本发明实施例采用了保持方向的轨迹切分(Orient-preserving Trajectory Splitting,OPTS)方法,在保证索引精度的同时保证了子轨迹的分析价值。
换言之,本发明实施例采用Ramer-Douglas-Peucker(RDP)算法,将轨迹切分成若干较长的子轨迹,再将每段轨迹按照时间的分片进行切分,如图3,最终得到的每段轨迹运动相对简单,同时,在索引时,轨迹的时间长度大致上类似,也能保证索引的效率。因此,本发明实施例的方案不会带来新的问题,轨迹的外包框仍然可以对齐,避免了当将多段轨迹组合成一个叶子节点时,由于各段子轨迹的长度不一,叶子节点的将会变得非常大。
应理解,使用RDP算法进行切分的分段数是一个参数。假设每个时间分片的长度为t,一条轨迹的长度为len,则我们经验上将此参数设置为len/t/5,也就是说先使用RDP算法,将整条轨迹切分成len/t/5段,之后再根据时间片,将得到各段子轨迹再进行切分。
在本发明的另一实现方式中,所述方法还包括:获取预设查询参数,根据时空外包框索引结构的索引开销,确定目标切分时间段,包括:确定基于切分时间段和预设查询参数对父节点层的索引开销的第一表示;至少基于第一表示,确定时空外包框索引结构的目标索引开销;将目标索引开销对应的切分时间段确定为目标切分时间段。例如,在多个索引开销中,目标索引开销不大于其他索引开销。
例如,对于K邻近(KNN)查询而言,父节点层的索引开销与N近邻轨迹的距离有关,例如,可以采用不同的方式估计。例如,作为一个示例,对于父节点的首先可以估计n近邻的距离R(n),其可以由下式求得:
其中,Dx,Dy,Dt表示全空间在三维上的范围;bt表示所要求的切分长度;qt表示在查询的三维范围;Nq表示与查询相关的轨迹数量;d(t)表示长度为t的子轨迹的起点和终点间的平均距离,其中,k是查询的近邻数,而E是外包框所产生的误差,可以由进行估计。
在本发明的另一实现方式中,至少基于第一表示,确定时空外包框索引结构的目标索引开销,包括:至少基于第一表示,确定时空外包框索引结构的索引开销的极值;基于极值,确定目标索引开销。例如,在多个索引开销中,目标索引开销不大于其他索引开销。
在本发明的另一实现方式中,根据时空外包框索引结构的索引开销,确定目标切分时间段,还包括:确定基于预设查询参数对子节点层的索引开销的第二表示,至少基于第一表示,确定时空外包框索引结构的目标索引开销,包括:基于至少第一表示和第二表示,确定时空外包框索引结构的目标索引开销。例如,所述子节点层的索引开销可以任用任意的方式确定。例如,对每一个相交轨迹,平均需要进行次IO,其中,fp表示每一数据页可以存储的三维点数量;jt,lt表示平均单条轨迹的长度和平均单条线段的长度。
在本发明的另一实现方式中,根据时空外包框索引结构的索引开销,确定目标切分时间段,还包括:确定基于切分时间段对时空外包框索引结构的结构开销的第三表示,基于至少第一表示和第二表示,确定时空外包框索引结构的目标索引开销,包括:基于第一表示、第二表示和第三表示,确定时空外包框索引结构的目标索引开销。例如,在多个索引开销中,目标索引开销不大于其他索引开销。
在本发明的另一实现方式中,多个子轨迹分别具有多组时空参数,其中,确定基于切分时间段和预设查询参数对父节点层的索引开销的第一表示,包括:通过约束多个待构建外包框的体积和,确定基于切分时间段和多组时空参数对多个待构建外包框的时空维度参数的第四表示;确定基于时空维度参数和预设查询参数对父节点层的索引开销的第五表示;根据第四表示和第五表示,确定第一表示,为父节点层构建多个外包框,包括:将多个待构建外包框确定为多个外包框。
应理解,通过最小化体积和,可以求得 其中q(·,·)可以由数值方法求得,其中,Lx,Ly,Lt表示叶子节点的三维长度;Lxc,Lyc,Ltc表示叶子节点中所有子轨迹的重心所占的三维范围;f表示索引结构中的树的fanout(分叉数)。
进一步地,在计算过程中,这些轨迹可能分布在不同的叶子节点之中,这些叶子节点的数量可以由进行估计。
在本发明的另一实现方式中,将多个待构建外包框确定为多个外包框,包括:基于第四表示和目标切分时间段,确定时空维度参数的参数值,作为多个外包框的时空维度参数的参数值。
在本发明的另一实现方式中,预设查询参数包括预设查询时间段和预设查询轨迹数量,确定基于时空维度参数和预设查询参数对父节点层的索引开销的第五表示,包括:确定至少基于预设查询轨迹数量对查询半径的第六表示;确定基于查询半径、预设查询时间段和时空维度参数对父节点层的索引开销的第七表示;根据第六表示和第七表示确定第五表示。
在本发明的另一实现方式中,确定至少基于预设查询轨迹数量对查询半径的第六表示,包括:确定基于预设查询轨迹数量对查询半径的初步表示;通过预设查询时间段对初步表示进行修正,得到第六表示。例如,可以采用各种方式进行修正。例如,查询需要取出的涉及的轨迹数量nq则可以由下式求得,从而提高了精确度更高的第六表示。具体地,bt的较优值可以通过寻找使得时空外包框索引结构的索引开销可以通过下面的评估公式来评估:/>其中,取值最小的bt来得出。然后,基于bt将轨迹切分为bt长度的子轨迹。
图3为本发明另一实施例的推荐方法的网络框架的示意图。图3的推荐系统的网络架构300包括地图数据服务器12、客户端设备14、地图数据库18和通信网络16,其中,地图数据服务器12经由通信网络16将地图数据提供给客户端设备14,用于使用本发明实施例的轨迹索引来进行推荐的地图。地图数据服务器12被耦接到存储地图数据的地图数据库18。
地图数据服务器12可以被实现为单个设备或者被实现为设备组。这些设备中的一个或多个可以包括一个或多个处理器30、网络接口32、数据库接口33、以及存储在一个或多个处理器30上可执行的指令的非暂时性计算机可读内存34。如下面详细讨论的,除了其他软件组件之外,这些指令还可以实现推荐模块36,该推荐模块36生成用于在客户端设备上的推荐显示模块60上显示的推荐项目。更一般地,地图数据服务器12可以包括被配置为生成本发明实施例的推荐项目的任何合适类型的处理硬件。
客户端设备14可以是台式计算机、膝上型计算机、平板电脑、诸如智能手机的另一类型的便携式设备、可穿戴式设备等。更一般地,用于生成地图图像层的技术可以被利用在所有合适的计算设备中。客户端设备14可以包括网络接口42,该网络接口42被配置为经由网络16使用任何合适的协议与地图数据服务器12和其他设备进行通信,该网络16可以是广域网(WAN)、局域网(LAN)等,并且客户端设备14可以包括任何合适数量的有线和/或无线链路。客户端设备14还可以包括触摸屏44,该触摸屏44被配置为接收键入的输入和基于手势的输入,并且被配置为显示由在客户端设备14上执行的包括地理应用46的各种应用所生成的图像。在其他实施方式中,客户端设备14可以包括只输出显示器,并且经由键盘、鼠标、麦克风、被配置为检测2D和/或3D手势的传感器等接收输入。此外,客户端设备14可以包括一个或多个通用处理器40、非暂时性计算机可读内存48、以及具有缓冲器和程序内存的显卡50(例如,包括一个或多个图形处理单元、或GPU),该程序内存存储顶点着色器和像素着色器。内存48可以包括持久性组件(例如,硬盘)以及非持久性组件(例如,RAM)。在其他实施方式中,客户端设备14可以包括附加组件,或者相反地,不包括图3中所示的一些组件。
在图3中所示的示例实施方式中,地理应用46作为由一个或多个处理器40所执行的一组指令被存储在内存48中。地理应用46可以生成交互式数字地图,并且基于实施方式和/或场景,获得导航方向,提供与地理定位服务有关的数据,检索和显示诸如优惠券和报价等的地理商业数据。例如,基于实施方式,地理应用46可以作为独立应用或作为诸如网页浏览器的另一应用的组件来操作。如下面更详细讨论的,地理应用46包括推荐显示模块60,在一些实施方式中,该推荐显示模块60与个人轨迹数据52关联进行操作。
继续参考图3,地图数据库18可以被实现在单个存储设备或多个存储设备中。地图数据库18可以存储地图数据,该地图数据包括诸如建筑物和其他结构、道路、公园、水体等的各种地图特征的几何形状的描述。除了为车辆所设计的道路之外,地图数据还可以描述自行车道、人行道、铁路道、航运路线、航空路线等。地图特征可以以向量图形格式或另一合适的可缩放格式被定义,图像根据该矢量图形格式,依据基于数学表达式的几何图元被描述。此外,地图数据还可以包括文本标签和各种形式的元数据,该元数据诸如是到远程资源的链接。
图4为本发明另一实施例的推荐方法的示意性流程图。图4的推荐方法应用于电子地图的服务器,包括:
410:基于从电子地图前端获取目标对象的时空轨迹信息生成相似轨迹查询请求,轨迹查询请求中包括相似度查询指标。
应理解,地图数据服务器12可以使用地图平铺将地图数据组织和提供给客户端设备。类似地,地理空间数据的3D或2D组织可以使用任何方式来实现。
420:响应相似轨迹查询请求,通过轨迹索引返回相似轨迹查询结果,查询结果中包括基于轨迹索引确定的符合相似度指标的至少一个相似对象,其中,轨迹索引为如上述方法所构建。
应理解,相似轨迹查询结果可以包括多个相似轨迹。例如,可以通过通过相似性计算确定与目标轨迹相似的多个相似轨迹。例如,可以基于索引结果,进行聚类计算或者分类计算,得到相似的多个第一轨迹。例如,可以从多个第一轨迹中确定多个第二轨迹。例如,基于KNN查询的查询条件,将多个第一轨迹进行过滤,得到所述多个第二轨迹,并且将其确定为多个相似轨迹。
还应理解,所述至少一个相似对象可以为上述的多个相似对象,即,符合KNN查询的数量的相似对象。例如,基于多个相似对象的行为数据,为目标对象进行推荐。例如,基于多个相似对象中与目标对象(例如,目标用户或目标设备)最相似的对象,为目标对象进行推荐。例如,为目标对象推荐一个项目或多个项目。例如,KNN查询的查询条件包括结构化查询条件和/或非结构化查询条件。例如,基于电子地图中的地理特征确定查询条件。例如,基于电子地图数据库中存储的服务商的地理数据或行为数据或商品数据。例如,基于电子地图数据库中的数据集确定结构化查询条件和/或非结构化查询条件。例如,基于电子地图数据库中的目标对象(例如,目标数据)确定查询条件,并且确定至少一个相似对象。例如,基于至少一个相似对象,为用户推荐目标对象。
430:基于至少一个相似对象,在电子地图前端为目标对象进行推荐。
例如,利用图3中的推荐显示模块进行显示。例如,可以在客户端为自己设定推荐的范围。例如,服务端在从客户端设定的推荐范围内确定待推荐的目标对象。例如,可以在客户端设定图3中的个人轨迹数据的范围。例如,服务端可以根据在客户端设定的个人轨迹数据的范围内,基于设定的范围进行查询。从而保证了客户端中的个人信息安全。
由于切分后的轨迹具有相同的目标切分时间段,因此有利于时空外包框索引结构中子外包框的均衡,提高了索引效率。进一步地,该推荐方法提高了查询的效率。
图5为本发明另一实施例的索引构建装置的示意性框图。图5的索引构建装置,包括:
确定模块510,根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,时空外包框索引结构指示从父节点层到子节点层的索引;
切分模块520,根据目标切分时间段,进行时空轨迹切分,以得到多个子轨迹;
构建模块530,为子节点层构建多个子轨迹的多个子外包框,并且为父节点层构建多个外包框。
本实施例的方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如手机、PAD等)和PC机等。
由于切分后的轨迹具有相同的目标切分时间段,因此有利于时空外包框索引结构中子外包框的均衡,提高了索引效率。
在本发明的另一实现方式中,切分模块具体用于:分别确定多个时空轨迹的多组轨迹特征点;分别利用多组轨迹特征点对多个时空轨迹进行切分,得到多组初始子轨迹;利用目标切分时间段,将多组初始子轨迹切分为多个子轨迹。
在本发明的另一实现方式中,所述装置还包括查询模块:获取预设查询参数,确定模块具体用于:确定基于切分时间段和预设查询参数对父节点层的索引开销的第一表示;至少基于第一表示,确定时空外包框索引结构的目标索引开销;将目标索引开销对应的切分时间段确定为目标切分时间段。
在本发明的另一实现方式中,确定模块具体用于:至少基于第一表示,确定时空外包框索引结构的索引开销的极值;基于极值,确定目标索引开销。
在本发明的另一实现方式中,确定模块具体用于:确定基于预设查询参数对子节点层的索引开销的第二表示,基于至少第一表示和第二表示,确定时空外包框索引结构的目标索引开销。
在本发明的另一实现方式中,确定模块具体用于:确定基于切分时间段对时空外包框索引结构的结构开销的第三表示:基于第一表示、第二表示和第三表示,确定时空外包框索引结构的目标索引开销。
在本发明的另一实现方式中,多个子轨迹分别具有多组时空参数,其中,确定模块具体用于:通过约束多个待构建外包框的体积和,确定基于切分时间段和多组时空参数对多个待构建外包框的时空维度参数的第四表示;确定基于时空维度参数和预设查询参数对父节点层的索引开销的第五表示;根据第四表示和第五表示,确定第一表示,构建模块具体用于:将多个待构建外包框确定为多个外包框。
在本发明的另一实现方式中,构建模块具体用于:基于第四表示和目标切分时间段,确定时空维度参数的参数值,作为多个外包框的时空维度参数的参数值。
在本发明的另一实现方式中,预设查询参数包括预设查询时间段和预设查询轨迹数量,确定模块具体用于:确定至少基于预设查询轨迹数量对查询半径的第六表示;确定基于查询半径、预设查询时间段和时空维度参数对父节点层的索引开销的第七表示;根据第六表示和第七表示确定第五表示。
在本发明的另一实现方式中,确定模块具体用于:确定基于预设查询轨迹数量对查询半径的初步表示;通过预设查询时间段对初步表示进行修正,得到第六表示。
本实施例的装置用于实现前述多个方法实施例中相应的方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
图6为本发明另一实施例的推荐装置的示意性框图。图6的推荐装置,应用于电子地图,包括:
查询请求生成模块610,基于从电子地图前端获取目标对象的时空轨迹信息生成相似轨迹查询请求,轨迹查询请求中包括相似度查询指标。
查询模块620,响应相似轨迹查询请求,通过轨迹索引返回相似轨迹查询结果,查询结果中包括基于轨迹索引确定的符合相似度指标的至少一个相似对象,其中,轨迹索引为如上述方法所构建。
推荐模块630,基于至少一个相似对象,在电子地图前端为目标对象进行推荐。
本实施例的方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如手机、PAD等)和PC机等。
本实施例的装置用于实现前述多个方法实施例中相应的方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
图7为本发明实施例另一实施例的电子设备的结构示意图;该电子设备可以包括:
一个或多个处理器701;
计算机可读介质702,可以配置为存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述各实施例所述的方法。
图8为本发明实施例的另一实施例的电子设备的硬件结构;如图8所示,该电子设备的硬件结构可以包括:处理器801,通信接口802,计算机可读介质803和通信总线804;
其中处理器801、通信接口802、计算机可读介质803通过通信总线804完成相互间的通信;
可选地,通信接口802可以为通信模块的接口;
其中,处理器801具体可以配置为:根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,所述时空外包框索引结构指示从父节点层到子节点层的索引;根据所述目标切分时间段,进行时空轨迹切分,以得到多个子轨迹;为所述子节点层构建所述多个子轨迹的多个子外包框,并且为所述父节点层构建多个外包框,或者,
基于从电子地图前端获取目标对象的时空轨迹信息生成相似轨迹查询请求;响应所述相似轨迹查询请求,通过轨迹索引返回相似轨迹查询结果,其中,所述轨迹索引为如上述方法所构建;基于所述相似轨迹查询结果,确定所述目标对象的至少一个相似对象;基于所述至少一个相似对象,在所述电子地图前端为所述目标对象进行推荐。
处理器801可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
计算机可读介质803可以是,但不限于,随机存取存储介质(Random AccessMemory,RAM),只读存储介质(Read Only Memory,ROM),可编程只读存储介质(Programmable Read-Only Memory,PROM),可擦除只读存储介质(Erasable ProgrammableRead-Only Memory,EPROM),电可擦除只读存储介质(Electric Erasable ProgrammableRead-Only Memory,EEPROM)等。
特别地,根据本发明实施例的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明实施例的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含配置为执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(CPU)执行时,执行本发明实施例的方法中限定的上述功能。需要说明的是,本发明实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读介质例如可以但不限于是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储介质(RAM)、只读存储介质(ROM)、可擦式可编程只读存储介质(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储介质(CD-ROM)、光存储介质件、磁存储介质件、或者上述的任意合适的组合。在本发明实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明实施例中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输配置为由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写配置为执行本发明实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在计算机上执行、部分地在计算机上执行、作为一个独立的软件包执行、部分在计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络:包括局域网(LAN)或广域网(WAN)—连接到计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本发明实施例各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个配置为实现规定的逻辑功能的可执行指令。上述具体实施例中有特定先后关系,但这些先后关系只是示例性的,在具体实现的时候,这些步骤可能会更少、更多或执行顺序有调整。即在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。这些模块的名称在某种情况下并不构成对该模块本身的限定。
作为另一方面,本发明实施例还提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上述各实施例所描述的方法。
作为另一方面,本发明实施例还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,所述时空外包框索引结构指示从父节点层到子节点层的索引;根据所述目标切分时间段,进行时空轨迹切分,以得到多个子轨迹;为所述子节点层构建所述多个子轨迹的多个子外包框,并且为所述父节点层构建多个外包框,或者,
基于从电子地图前端获取目标对象的时空轨迹信息生成相似轨迹查询请求;响应所述相似轨迹查询请求,通过轨迹索引返回相似轨迹查询结果,其中,所述轨迹索引为如上述方法所构建;基于所述相似轨迹查询结果,确定所述目标对象的至少一个相似对象;基于所述至少一个相似对象,在所述电子地图前端为所述目标对象进行推荐。
在本发明实施例的各种实施方式中所使用的表述“第一”、“第二”、“所述第一”或“所述第二”可修饰各种部件而与顺序和/或重要性无关,但是这些表述不限制相应部件。以上表述仅配置为将元件与其它元件区分开的目的。例如,第一用户设备和第二用户设备表示不同的用户设备,虽然两者均是用户设备。例如,在不背离本发明实施例的范围的前提下,第一元件可称作第二元件,类似地,第二元件可称作第一元件。
当一个元件(例如,第一元件)称为与另一元件(例如,第二元件)“(可操作地或可通信地)联接”或“(可操作地或可通信地)联接至”另一元件(例如,第二元件)或“连接至”另一元件(例如,第二元件)时,应理解为该一个元件直接连接至该另一元件或者该一个元件经由又一个元件(例如,第三元件)间接连接至该另一个元件。相反,可理解,当元件(例如,第一元件)称为“直接连接”或“直接联接”至另一元件(第二元件)时,则没有元件(例如,第三元件)插入在这两者之间。
以上描述仅为本发明实施例的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (14)

1.一种索引构建方法,包括:
根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,所述时空外包框索引结构指示从父节点层到子节点层的索引;
分别确定多个时空轨迹的多组轨迹特征点;
分别利用多组轨迹特征点对所述多个时空轨迹进行切分,得到多组初始子轨迹;
利用所述目标切分时间段,将所述多组初始子轨迹切分为所述多个子轨迹;
为所述子节点层构建所述多个子轨迹的多个子外包框,并且为所述父节点层构建多个外包框。
2.根据权利要求1所述的方法,其中,所述方法还包括:获取预设查询参数,
所述根据时空外包框索引结构的索引开销,确定目标切分时间段,包括:
确定基于切分时间段和所述预设查询参数对所述父节点层的索引开销的第一表示;
至少基于所述第一表示,确定所述时空外包框索引结构的目标索引开销;
将所述目标索引开销对应的切分时间段确定为所述目标切分时间段。
3.根据权利要求2所述的方法,其中,所述至少基于所述第一表示,确定所述时空外包框索引结构的目标索引开销,包括:
至少基于所述第一表示,确定所述时空外包框索引结构的索引开销的极值;
基于所述极值,确定所述目标索引开销。
4.根据权利要求2所述的方法,其中,所述根据时空外包框索引结构的索引开销,确定目标切分时间段,还包括:
确定基于所述预设查询参数对所述子节点层的索引开销的第二表示,
所述至少基于所述第一表示,确定所述时空外包框索引结构的目标索引开销,包括:
基于至少所述第一表示和所述第二表示,确定所述时空外包框索引结构的目标索引开销。
5.根据权利要求4所述的方法,其中,所述根据时空外包框索引结构的索引开销,确定目标切分时间段,还包括:
确定基于切分时间段对所述时空外包框索引结构的结构开销的第三表示,
所述基于至少所述第一表示和所述第二表示,确定所述时空外包框索引结构的目标索引开销,包括:
基于所述第一表示、所述第二表示和所述第三表示,确定所述时空外包框索引结构的目标索引开销。
6.根据权利要求2所述的方法,其中,所述多个子轨迹分别具有多组时空参数,其中,所述确定基于切分时间段和所述预设查询参数对所述父节点层的索引开销的第一表示,包括:
通过约束多个待构建外包框的体积和,确定基于所述切分时间段和所述多组时空参数对所述多个待构建外包框的时空维度参数的第四表示;
确定基于时空维度参数和所述预设查询参数对所述父节点层的索引开销的第五表示;
根据所述第四表示和第五表示,确定所述第一表示,
所述为所述父节点层构建多个外包框,包括:
将所述多个待构建外包框确定为所述多个外包框。
7.根据权利要求6所述的方法,其中,所述将所述多个待构建外包框确定为所述多个外包框,包括:
基于所述第四表示和所述目标切分时间段,确定所述时空维度参数的参数值,作为所述多个外包框的时空维度参数的参数值。
8.根据权利要求6所述的方法,其中,所述预设查询参数包括预设查询时间段和预设查询轨迹数量,
所述确定基于时空维度参数和所述预设查询参数对所述父节点层的索引开销的第五表示,包括:
确定至少基于所述预设查询轨迹数量对查询半径的第六表示;
确定基于所述查询半径、所述预设查询时间段和所述时空维度参数对所述父节点层的索引开销的第七表示;
根据所述第六表示和所述第七表示确定所述第五表示。
9.根据权利要求8所述的方法,其中,确定至少基于所述预设查询轨迹数量对查询半径的第六表示,包括:
确定基于所述预设查询轨迹数量对所述查询半径的初步表示;
通过预设查询时间段对所述初步表示进行修正,得到所述第六表示。
10.一种推荐方法,应用于电子地图,包括:
基于从电子地图前端获取目标对象的时空轨迹信息生成相似轨迹查询请求,所述轨迹查询请求中包括相似度查询指标;
响应所述相似轨迹查询请求,通过轨迹索引返回相似轨迹查询结果,所述查询结果中包括基于所述轨迹索引确定的符合所述相似度指标的至少一个相似对象,其中,所述轨迹索引为如权利要求1-9中任一项所述的方法所构建;
基于所述至少一个相似对象,在所述电子地图前端为所述目标对象进行推荐。
11.一种索引构建装置,包括:
确定模块,根据时空外包框索引结构的索引开销,确定目标切分时间段,其中,所述时空外包框索引结构指示从父节点层到子节点层的索引;
切分模块,分别确定多个时空轨迹的多组轨迹特征点,分别利用多组轨迹特征点对所述多个时空轨迹进行切分,得到多组初始子轨迹,并且利用所述目标切分时间段,将所述多组初始子轨迹切分为所述多个子轨迹;
构建模块,为所述子节点层构建所述多个子轨迹的多个子外包框,并且为所述父节点层构建多个外包框。
12.一种推荐装置,应用于电子地图,包括:
查询请求生成模块,基于从电子地图前端获取目标对象的时空轨迹信息生成相似轨迹查询请求,所述轨迹查询请求中包括相似度查询指标;
查询模块,响应所述相似轨迹查询请求,通过轨迹索引返回相似轨迹查询结果,所述查询结果中包括基于所述轨迹索引确定的符合所述相似度指标的至少一个相似对象,其中,所述轨迹索引为如权利要求1-9中任一项所述的方法所构建;
推荐模块,基于所述至少一个相似对象,在所述电子地图前端为所述目标对象进行推荐。
13.一种电子设备,所述设备包括:
一个或多个处理器;
计算机可读介质,配置为存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-10中任意一项权利要求所述的方法。
14.一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-10中任意一项权利要求所述的方法。
CN202010363674.3A 2020-04-30 2020-04-30 索引构建方法、推荐方法、装置、电子设备和计算机存储介质 Active CN113326257B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010363674.3A CN113326257B (zh) 2020-04-30 2020-04-30 索引构建方法、推荐方法、装置、电子设备和计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010363674.3A CN113326257B (zh) 2020-04-30 2020-04-30 索引构建方法、推荐方法、装置、电子设备和计算机存储介质

Publications (2)

Publication Number Publication Date
CN113326257A CN113326257A (zh) 2021-08-31
CN113326257B true CN113326257B (zh) 2023-12-15

Family

ID=77413060

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010363674.3A Active CN113326257B (zh) 2020-04-30 2020-04-30 索引构建方法、推荐方法、装置、电子设备和计算机存储介质

Country Status (1)

Country Link
CN (1) CN113326257B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113779077B (zh) * 2021-09-28 2024-06-18 京东城市(北京)数字科技有限公司 时间段查询方法、装置、电子设备和存储介质
CN114705214B (zh) * 2022-04-15 2023-05-23 北京龙驹易行科技有限公司 一种里程轨迹计算方法、装置、存储介质及电子设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750708A (zh) * 2013-12-27 2015-07-01 华为技术有限公司 一种时空数据的索引建立方法、查询方法、装置及设备
CN105512317A (zh) * 2015-12-17 2016-04-20 南京航空航天大学 一种基于群组划分的不确定移动对象索引方法
CN107145796A (zh) * 2017-04-24 2017-09-08 公安海警学院 一种不确定环境下轨迹数据k‑匿名隐私保护方法
KR101797207B1 (ko) * 2017-01-24 2017-11-13 (주)터보소프트 Udf 기반 이동객체 궤적 데이터 처리방법
CN107766406A (zh) * 2017-08-29 2018-03-06 厦门理工学院 一种采用时间优先搜索的轨迹相似性连接查询方法
US10095724B1 (en) * 2017-08-09 2018-10-09 The Florida International University Board Of Trustees Progressive continuous range query for moving objects with a tree-like index
CN108920499A (zh) * 2018-05-24 2018-11-30 河海大学 一种面向周期性检索的时空轨迹索引与检索方法
CN109165215A (zh) * 2018-07-27 2019-01-08 苏州视锐信息科技有限公司 一种云环境下时空索引的构建方法、装置及电子设备
CN109241126A (zh) * 2018-06-29 2019-01-18 武汉理工大学 一种基于r*树索引的时空轨迹聚集模式挖掘算法
CN110737786A (zh) * 2019-10-09 2020-01-31 北京明略软件系统有限公司 一种数据比对碰撞方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9551583B1 (en) * 2015-07-06 2017-01-24 International Business Machines Corporation Hybrid road network and grid based spatial-temporal indexing under missing road links

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750708A (zh) * 2013-12-27 2015-07-01 华为技术有限公司 一种时空数据的索引建立方法、查询方法、装置及设备
CN105512317A (zh) * 2015-12-17 2016-04-20 南京航空航天大学 一种基于群组划分的不确定移动对象索引方法
KR101797207B1 (ko) * 2017-01-24 2017-11-13 (주)터보소프트 Udf 기반 이동객체 궤적 데이터 처리방법
CN107145796A (zh) * 2017-04-24 2017-09-08 公安海警学院 一种不确定环境下轨迹数据k‑匿名隐私保护方法
US10095724B1 (en) * 2017-08-09 2018-10-09 The Florida International University Board Of Trustees Progressive continuous range query for moving objects with a tree-like index
CN107766406A (zh) * 2017-08-29 2018-03-06 厦门理工学院 一种采用时间优先搜索的轨迹相似性连接查询方法
CN108920499A (zh) * 2018-05-24 2018-11-30 河海大学 一种面向周期性检索的时空轨迹索引与检索方法
CN109241126A (zh) * 2018-06-29 2019-01-18 武汉理工大学 一种基于r*树索引的时空轨迹聚集模式挖掘算法
CN109165215A (zh) * 2018-07-27 2019-01-08 苏州视锐信息科技有限公司 一种云环境下时空索引的构建方法、装置及电子设备
CN110737786A (zh) * 2019-10-09 2020-01-31 北京明略软件系统有限公司 一种数据比对碰撞方法和装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A trajectory splitting model for efficient spatio-temporal indexing;Rasetic S 等;International Conference on Very Large Data Bases;全文 *
ATTI:负载关注的查询自适应轨迹索引;孟祥旭 等;电子学报;全文 *
TrajStore: An Adaptive Storage System for Very Large Trajectory Data Sets;Cudremauroux P 等;IEEE;全文 *
移动对象数据库中时空索引技术的研究;蔡炜 等;计算机工程与设计;全文 *

Also Published As

Publication number Publication date
CN113326257A (zh) 2021-08-31

Similar Documents

Publication Publication Date Title
AU2017253916B2 (en) Systems and methods for recommending an estimated time of arrival
US10969239B2 (en) Systems and methods for determining a point of interest
Zhou et al. Two-layer federated learning with heterogeneous model aggregation for 6g supported internet of vehicles
JP6538196B2 (ja) サービスの要求を分配するシステム及び方法
KR102055119B1 (ko) 카풀링을 위한 방법들 및 시스템들
Joe et al. Location-based orientation context dependent recommender system for users
US20200050938A1 (en) Systems and methods for improvement of index prediction and model building
JP2019511020A (ja) 到着時間を推定するための方法およびシステム
JP6503474B2 (ja) 移動デバイスの経路を求めるシステム及び方法
US20180357736A1 (en) Systems and methods for determining an estimated time of arrival
JP7074866B2 (ja) 対象がターゲットジオフェンスに属するか否かを決定するシステム及び方法
CN111507732B (zh) 用于识别相似轨迹的系统和方法
TWI675184B (zh) 用於路線規劃的系統、方法及非暫時性電腦可讀取媒體
CN113326257B (zh) 索引构建方法、推荐方法、装置、电子设备和计算机存储介质
CN110709828A (zh) 使用条件随机域模型确定文本属性的系统及方法
WO2018171531A1 (en) System and method for predicting classification for object
JP2021512291A (ja) 経路決定のためのシステムおよび方法
WO2019019189A1 (en) SYSTEMS AND METHODS FOR ESTIMATED ARRIVAL TIME DETERMINATION
Shekhar et al. From GPS and virtual globes to spatial computing-2020
Chu et al. 3D reconstruction framework for multiple remote robots on cloud system
CN109948822B (zh) 一种地理区域内网约车供需缺口预测方法
CN110651266B (zh) 为按需服务提供信息的系统及方法
CN112243487A (zh) 用于按需服务的系统和方法
Madhavi et al. Multi-dimensional STAQR Indexing Algorithm for Drone Applications
Kumar et al. A Kamm’s Circle-Based Potential Risk Estimation Scheme in the Local Dynamic Map Computation Enhanced by Binary Decision Diagrams

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40058023

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant