CN110503352B - 一种确定交付点的方法、装置及计算机可读存储介质 - Google Patents
一种确定交付点的方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110503352B CN110503352B CN201810465210.6A CN201810465210A CN110503352B CN 110503352 B CN110503352 B CN 110503352B CN 201810465210 A CN201810465210 A CN 201810465210A CN 110503352 B CN110503352 B CN 110503352B
- Authority
- CN
- China
- Prior art keywords
- track
- cluster
- determining
- destination
- point
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0835—Relationships between shipper or supplier and carriers
- G06Q10/08355—Routing methods
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Game Theory and Decision Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种确定交付点的方法、装置及计算机可读存储介质,方法包括:获取多个订单信息中每个订单信息对应的历史行驶轨迹;基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,所述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点;根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心;若所述类簇满足第一预设条件,则将所述聚类中心确定为所述类簇的目的地对应的交付点,所述类簇的目的地为所述类簇中轨迹末端点对应的目的地。本申请可以准确地确定目的地对应的交付点,节省配送员寻找交付点的时间,提高配送员的配送效率,进而可以提升配送员和客户的体验。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种确定交付点的方法、装置及计算机可读存储介质。
背景技术
目前,在即时配送领域的货品配送过程中,配送员需要在到达目的地(如建筑物等)附近后,自行寻找到交付点(如建筑物的出入口),再和客户联系,让客户取件或送货上楼。然而,如果上述目的地对于配送员比较陌生,那么配送员会花费较多时间寻找交付地,这会降低配送效率,影响配送员的体验,进而可能导致配送超时,降低客户的满意度。
发明内容
有鉴于此,本申请提供一种确定交付点的方法、装置及计算机可读存储介质,可以准确地确定交付点,可以提高外卖的配送效率,提高配送员和客户的体验。
具体地,本申请是通过如下技术方案实现的:
根据本申请的第一方面,提出了一种确定交付点的方法,包括:
获取多个订单信息中每个订单信息对应的历史行驶轨迹;
基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,所述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点;
根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心;
若所述类簇满足第一预设条件,则将所述聚类中心确定为所述类簇的目的地对应的交付点,所述类簇的目的地为所述类簇中轨迹末端点对应的目的地。
在一实施例中,所述根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心,包括:
确定每个所述轨迹末端点的邻域子样本集,所述邻域子样本集中的样本为所述多个订单信息的轨迹末端点中满足第二预设条件的轨迹末端点;
根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象;
将所述多个订单信息的轨迹末端点划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心。
在一实施例中,所述确定每个所述轨迹末端点的邻域子样本集,包括:
确定聚类邻域参数和样本距离度量方式,所述聚类邻域参数包括最大类簇样本距离;
基于所述样本距离度量方式,确定每个目标轨迹末端点的基于所述最大类簇样本距离的邻域子样本集,所述满足第二预设条件的轨迹末端点包括与所述目标轨迹末端点之间的距离小于或等于所述最大类簇样本距离的轨迹末端点。
在一实施例中,所述聚类邻域参数还包括最小类簇样本数量;
所述根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象,包括:
确定各所述目标轨迹末端点的邻域子样本集中所述样本的个数;
将所述样本的个数与所述最小类簇样本数量进行比较;
若所述样本的个数大于或等于所述最小类簇样本数量,则将所述目标轨迹末端点确定为对应类簇的核心对象。
在一实施例中,所述根据所述多个订单信息的轨迹末端点进行聚类之后,所述方法还包括:
计算各个所述类簇对应的所述信息集合中预设信息的信息熵;
若所述信息熵小于或等于预设信息熵阈值,则确定所述类簇满足第一预设条件。
在一实施例中,所述方法还包括:
若所述信息熵大于所述预设信息熵阈值,则输出用于提示调整所述聚类邻域参数的提示信息;
基于调整后的聚类邻域参数重新执行所述根据所述多个订单信息的轨迹末端点进行聚类的步骤,直至得到的类簇满足所述第一预设条件。
在一实施例中,所述基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,包括:
将每个所述订单信息对应的多个轨迹点中最后采集到的轨迹点确定为所述订单信息对应的轨迹末端点。
在一实施例中,所述基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,包括:
根据每个所述轨迹点对应的目的地确定目的地经纬度;
根据所述多个轨迹点的坐标经纬度和所述目的地经纬度分别计算所述多个轨迹点与所述目的地之间的距离;
将所述多个轨迹点中与所述目的地之间的距离小于或等于预设距离阈值,且对应的行驶速度为0的轨迹点确定为轨迹末端点。
在一实施例中,每个所述轨迹末端点对应的目的地包括建筑物和门户中的至少一个;
所述将所述聚类中心确定为所述类簇的目的地对应的交付点之后,所述方法还包括:
构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及,构建各轨迹末端点对应的建筑物与所述交付点之间的第二对应关系;
将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中。
在一实施例中,所述将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中之后,所述方法还包括:
接收终端设备发送的目标目的地对应的交付点的查询请求;
若所述目标目的地包括目标门户;则,基于所述第一对应关系从所述对应关系库中查询所述目标门户对应的目标建筑物;以及,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
若所述目标目的地包括目标建筑物;则,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
将所述目标目的地对应的交付点发送至所述终端设备进行展示。
根据本申请的第二方面,提出了一种确定交付点的装置,包括:
行驶轨迹获取模块,用于获取多个订单信息中每个订单信息对应的历史行驶轨迹;
轨迹端点确定模块,用于基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,所述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点;
轨迹端点聚类模块,用于根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心;
交付点确定模块,用于当所述类簇满足第一预设条件时,将所述聚类中心确定为所述类簇的目的地对应的交付点,所述类簇的目的地为所述类簇中轨迹末端点对应的目的地。
在一实施例中,所述轨迹端点聚类模块,包括:
样本集确定单元,用于确定每个所述轨迹末端点的邻域子样本集,所述邻域子样本集中的样本为所述多个订单信息的轨迹末端点中满足第二预设条件的轨迹末端点;
核心对象确定单元,用于根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象;
轨迹端点划分单元,用于将所述多个订单信息的轨迹末端点划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心。
在一实施例中,所述样本集确定单元,还用于:
确定聚类邻域参数和样本距离度量方式,所述聚类邻域参数包括最大类簇样本距离;
基于所述样本距离度量方式,确定每个目标轨迹末端点的基于所述最大类簇样本距离的邻域子样本集,所述满足第二预设条件的轨迹末端点包括与所述目标轨迹末端点之间的距离小于或等于所述最大类簇样本距离的轨迹末端点。
在一实施例中,所述聚类邻域参数还包括最小类簇样本数量;
所述核心对象确定单元,还用于:
确定各所述目标轨迹末端点的邻域子样本集中所述样本的个数;
将所述样本的个数与所述最小类簇样本数量进行比较;
若所述样本的个数大于或等于所述最小类簇样本数量,则将所述目标轨迹末端点确定为对应类簇的核心对象。
在一实施例中,所述装置还包括:第一条件判定模块;
所述第一条件判定模块,包括:
信息熵计算单元,用于计算各个所述类簇对应的所述信息集合中预设信息的信息熵;
第一条件判定单元,用于当所述信息熵小于或等于预设信息熵阈值时,确定所述类簇满足第一预设条件。
在一实施例中,所述第一条件判定模块,还包括:
提示信息输出单元,用于当所述信息熵大于所述预设信息熵阈值时,输出用于提示调整所述聚类邻域参数的提示信息;
所述轨迹端点聚类模块,还用于基于调整后的聚类邻域参数重新执行所述根据所述多个订单信息的轨迹末端点进行聚类的步骤,直至得到的类簇满足所述第一预设条件。
在一实施例中,所述轨迹端点确定模块还用于:
将每个所述订单信息对应的多个轨迹点中最后采集到的轨迹点确定为所述订单信息对应的轨迹末端点。
在一实施例中,所述轨迹端点确定模块还包括:
经纬度确定单元,用于根据每个所述轨迹点对应的目的地确定目的地经纬度;
距离计算单元,用于根据所述多个轨迹点的坐标经纬度和所述目的地经纬度分别计算所述多个轨迹点与所述目的地之间的距离;
轨迹端点确定单元,用于将所述多个轨迹点中与所述目的地之间的距离小于或等于预设距离阈值,且对应的行驶速度为0的轨迹点确定为轨迹末端点。
在一实施例中,每个所述轨迹末端点对应的目的地包括建筑物和门户中的至少一个;
所述装置还包括:对应关系添加模块;
所述对应关系添加模块,包括:
对应关系构建单元,用于构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及,构建各轨迹末端点对应的建筑物与所述交付点之间的第二对应关系;
对应关系添加单元,用于将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中。
在一实施例中,述装置还包括:交付点发送模块;
所述交付点发送模块,包括:
查询请求接收单元,用于接收终端设备发送的目标目的地对应的交付点的查询请求;
交付点查询单元,用于:
当所述目标目的地包括目标门户时,基于所述第一对应关系从所述对应关系库中查询所述目标门户对应的目标建筑物;以及,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
当所述目标目的地包括目标建筑物时,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
交付点发送单元,用于将所述目标目的地对应的交付点发送至所述终端设备进行展示。
根据本申请的第三方面,提出了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述任一所述的确定交付点的方法。
本申请通过获取多个订单信息中每个订单信息对应的历史行驶轨迹,并基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,并根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心,进而当所述类簇满足第一预设条件时,将所述聚类中心确定为所述类簇的目的地对应的交付点,可以准确地确定目的地对应的交付点,节省配送员寻找交付点的时间,提高配送员的配送效率,进而可以提升配送员和客户的体验。
附图说明
图1是本申请一示例性实施例示出的一种确定交付点的方法的流程图;
图2是本申请一示例性实施例示出的如何根据轨迹末端点进行聚类的流程图;
图3是本申请一示例性实施例示出的如何确定每个轨迹末端点的邻域子样本集的流程图;
图4是本申请一示例性实施例示出的如何根据各邻域子样本集中样本的个数确定各个类簇的核心对象的流程图;
图5是本申请又一示例性实施例示出的一种确定交付点的方法的流程图;
图6是本申请又一示例性实施例示出的一种确定交付点的方法的流程图;
图7是本申请一示例性实施例示出的如何确定每个所述订单信息对应的轨迹末端点的流程图;
图8是本申请又一示例性实施例示出的一种确定交付点的方法的流程图;
图9是本申请又一示例性实施例示出的一种确定交付点的方法的流程图;
图10是本申请一示例性实施例示出的一种确定交付点的装置的结构框图;
图11是本申请又一示例性实施例示出的一种确定交付点的装置的结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图1是本申请一示例性实施例示出的一种确定交付点的方法的流程图;该实施例可以用于服务端(例如,一台服务器和多台服务器组成的服务器集群等),也可以用于终端设备(如智能手机、平板电脑、台式笔记本等)。如图1所示,该方法包括步骤S101-S104:
S101:获取多个订单信息中每个订单信息对应的历史行驶轨迹。
在一实施例中,可以获取多个订单信息各自的历史行驶轨迹。其中,每个所述历史行驶轨迹中可以包括多个轨迹点,且每个所述轨迹可以对应一信息集合,该信息集合中可以包含当前时刻、当前的坐标经纬度以及目的地等,具体形式可以参见下表一:
表一
在一实施例中,上述历史行驶轨迹可以为各个配送员关联的终端设备在过去的预设时间段内记录的行驶轨迹数据。在一实施例中,上述预设时间段可以由开发人员根据实际业务需要进行设置,如可以设置为几天、几周、几个月或几年等,本实施例对此不进行限定。
S102:基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点。
其中,上述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点。
在一实施例中,当获取上述历史行驶轨迹的多个轨迹点后,可以从这些轨迹点中确定每个订单信息对应的轨迹末端点。
在一实施例中,从多个轨迹点中确定每个订单信息对应的轨迹末端点的方式还可以参见下述图6、图7所示实施例,在此先不进行详述。
S103:根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心。
在一实施例中,当得到每个订单信息对应的轨迹末端点后,可以采用预设的聚类算法对上述轨迹末端点进行聚类,可以得到各个类簇,进而可以计算出各个类簇的中心,该中心即为该类簇的聚类中心。
在一实施例中,上述类簇的中心的计算方式可以参见现有的方法,如可以通过计算各个类簇中轨迹末端点的欧式距离来确定类簇的中心,本实施例对此不进行限定。
S104:若所述类簇满足第一预设条件,则将所述聚类中心确定为所述类簇的目的地对应的交付点。
其中,所述类簇的目的地为所述类簇中轨迹末端点对应的目的地。
在一实施例中,可以预先由开发人员根据实际业务需要设定类簇需满足的第一预设条件,例如类簇的覆盖范围大小、同一类簇对应的目的地的数量等。
在一实施例中,当得到各个类簇后,可以确定各个类簇是否满足上述第一预设条件;若满足,则可以将所述聚类中心确定为所述类簇中目的地对应的交付点;若不满足,则可以在调整聚类算法的相关参数后,对上述轨迹末端点进行重新聚类,直至各个类簇满足上述第一预设条件。
由上述描述可知,本实施例通过获取多个订单信息中每个订单信息对应的历史行驶轨迹,并基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,并根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心,进而当所述类簇满足第一预设条件时,将所述聚类中心确定为所述类簇的目的地对应的交付点,可以准确地确定目的地对应的交付点,节省配送员寻找交付点的时间,提高配送员的配送效率,进而可以提升配送员和客户的体验。
可以理解的是,在实际生活中有很多大型的建筑群,其对应的交付地点不止一个,比如望京soho建筑群,该建筑群中的三栋楼虽然紧挨在一起,但是各自的出口却相距较远,且各个配送员的轨迹末端点分布在各出口的周围,交付点很难通过这些散乱的轨迹末端点来确定。而聚类算法最大的优点是可以获取聚类中心,只要聚类的范围足够精确,就可以把聚类中心作为交付地点。
在实施本发明实施例的过程中,发明人尝试了K-means和DB-scan两种聚类算法对望京地区的轨迹末端点数据进行聚类,但是K-means算法要求人工的指定聚类的数量,而这个值是无从得知的,因而最终选定的聚类算法是DBSCAN(Density-Based SpatialClustering of Applications with Noise,基于密度的空间成群应用以噪声)算法。DBSCAN是一种基于密度的聚类算法,该算法一般假定类别可以通过样本分布的紧密程度决定,同一类别的样本,他们之间是紧密相连的。也就是说,在该类别任意样本周围不远处一定有同类别的样本存在。这种聚类算法不需要人工指定聚类的数量,通过聚类对象的数量和密度自动计算聚类的数目,下面具体说明应用DBSCAN算法对轨迹末端点进行聚类的过程。
图2是本申请一示例性实施例示出的如何根据轨迹末端点进行聚类的流程图;本实施例在上述实施例的基础上,以如何根据轨迹末端点进行聚类为例进行示例性说明。如图2所示,上述步骤S103中所述根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心,可以包括以下步骤S201-S203:
S201:确定每个所述轨迹末端点的邻域子样本集,所述邻域子样本集中的样本为所述多个订单信息的轨迹末端点中满足第二预设条件的轨迹末端点。
在一实施例中,在确定上述轨迹末端点后,可以确定其中每个轨迹末端点对应的邻域子样本集。
在一实施例中,上述第二预设条件可以为与上述轨迹末端点之间的距离满足预设要求的轨迹末端点。
在一实施例中,确定每个所述轨迹末端点的邻域子样本集的方式还可以参见下述图3所示实施例,在此先不进行详述。
S302:根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象。
在一实施例中,当确定每个所述轨迹末端点的邻域子样本集后,可以根据各邻域子样本集中包含的样本的个数确定该邻域子样本集所属的轨迹末端点是否可以作为后续划分的类簇的核心对象,其中,每个类簇中可以存在多个核心对象。
在一实施例中,可以作为核心对象的轨迹末端点的邻域子样本集中的样本数量通常满足预设阈值要求,具体如何根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象,可以参见下述图4所示实施例,在此先不进行赘述。
S303:将所述多个订单信息的轨迹末端点划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心。
在一实施例中,当确定各个类簇的核心对象后,可以将上述轨迹末端点分别划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心。
在一实施例中,可以根据各个轨迹末端点与核心对象之间的距离的大小,将上述轨迹末端点分别划分到各个核心对象的对应类簇中。
值得说明的是,上述轨迹末端点中可能存在一些噪声点,这些噪声点与各个核心对象之间的距离都大于预设距离阈值,因而无法被划分到任一个类簇中,因而在最终的聚类结果中,这些噪声点可以丢弃。
由上述描述可知,本实施例通过确定每个所述轨迹末端点的邻域子样本集,并根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象,进而将所述多个订单信息的轨迹末端点划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心,可以实现准确地根据轨迹末端点进行聚类,得到各个类簇的聚类中心,进而可以实现后续基于聚类结果确定交付点,可以保证确定交付点的准确性。
图3是本申请一示例性实施例示出的如何确定每个轨迹末端点的邻域子样本集的流程图;本实施例在上述实施例的基础上,以如何确定每个轨迹末端点的邻域子样本集为例进行示例性说明。如图3所示,上述步骤201中所述确定每个所述轨迹末端点的邻域子样本集,包括以下步骤S301-S302:
S301:确定聚类邻域参数和样本距离度量方式。
在一实施例中,上述聚类邻域参数可以包括最大类簇样本距离。
在一实施例中,上述样本距离度量方式可以为由开发人员根据实际需要进行选择,如设置为欧式距离度量方式或曼哈顿距离度量方式等,本实施例对此不进行限定。
在一实施例中,可以在算法初始化阶段输出提示用户输入或选择聚类邻域参数和样本距离度量方式的提示信息,进而基于用户的输入或选择确定确定聚类邻域参数和样本距离度量方式。
S302:基于所述样本距离度量方式,确定每个目标轨迹末端点的基于所述最大类簇样本距离的邻域子样本集。
在一实施例中,上述满足第二预设条件的轨迹末端点可以包括:与所述目标轨迹末端点之间的距离小于或等于所述最大类簇样本距离的轨迹末端点。
在一实施例中,在确定聚类邻域参数和样本距离度量方式后,可以根据该样本距离度量方式确定各目标轨迹末端点(即邻域子样本集所属的轨迹末端点)的基于所述最大类簇样本距离的邻域子样本集。
具体来说,DBSCAN算法是基于一组邻域来描述样本集的紧密程度的,参数(∈,MinPts)用来描述邻域的样本分布紧密程度。其中,∈(即最大类簇样本距离)描述了某一样本的邻域距离阈值,MinPts(即最小类簇样本数量)描述了某一样本的距离为∈的邻域中样本个数的阈值。假设样本集为D=(x1,x2,...,xm),其中,x1,x2,...,xm分别为轨迹末端点,则目标轨迹末端点xj(j=1,2,…,Xm)的邻域子样本集定义如下:
对于xj(j=1,2,…,Xm)∈D,其邻域子样本集为上述样本集D中与xj的距离不大于∈的子样本集,即N∈(xj)={xi∈D|distance(xi,xj)≤∈},这个子样本集的个数即为|N∈(xj)|。
由上述描述可知,本实施例通过确定聚类邻域参数和样本距离度量方式,并基于所述样本距离度量方式,确定每个目标轨迹末端点的基于所述最大类簇样本距离的邻域子样本集,再根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象,进而将所述轨迹末端点划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心,可以实现准确地根据轨迹末端点进行聚类,得到各个类簇的聚类中心,为后续基于聚类结果确定交付点提供依据。
图4是本申请一示例性实施例示出的如何根据各邻域子样本集中样本的个数确定各个类簇的核心对象的流程图;本实施例在上述实施例的基础上,以如何根据各邻域子样本集中样本的个数确定各个类簇的核心对象为例进行示例性说明。如图4所示,上述步骤202中所述根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象,可以包括以下步骤S401-S403:
S501:确定各所述目标轨迹末端点的邻域子样本集中所述样本的个数。
在一实施例中,在确定每个目标轨迹末端点各自的邻域子样本集后,可以分别统计每个邻域子样本集中包含的样本的个数。
S502:将所述样本的个数与所述最小类簇样本数量进行比较。
在一实施例中,可以预先开发人员根据实际业务需要设置最小类簇样本数量,如设置为5个等,本实施例对此不进行限定。
在一实施例中,当确定各所述目标轨迹末端点的邻域子样本集中所述样本的个数后,例如确定其中一个邻域子样本集中样本的个数为8个,则可以将该样本的个数与上述最小类簇样本数量(5个)进行比较,可以得到比较结果为:邻域子样本集中所述样本的个数大于最小类簇样本数量(8>5)。
S503:若所述样本的个数大于或等于所述最小类簇样本数量,则将所述目标轨迹末端点确定为对应类簇的核心对象。
在一实施例中,若任一目标轨迹末端点的邻域子样本集中包含的样本的个数大于或等于最小类簇样本数量,则可以将该目标轨迹末端点确定为后续聚类生成的类簇的核心对象。
由上述描述可知,本实施例通过确定各所述目标轨迹末端点的邻域子样本集中所述样本的个数,并将所述样本的个数与所述最小类簇样本数量进行比较,进而当所述样本的个数大于或等于所述最小类簇样本数量时,将所述目标轨迹末端点确定为对应类簇的核心对象,可以准确地确定各个所述类簇的核心对象,进而可以实现后续根据轨迹末端点进行聚类,并基于聚类结果准确地确定交付点。
图5是本申请又一示例性实施例示出的一种确定交付点的方法的流程图;该实施例可以用于服务端(例如,一台服务器和多台服务器组成的服务器集群等),也可以用于终端设备(如智能手机、平板电脑、台式笔记本等)。如图5所示,该方法包括以下步骤S501-S508:
S501:获取多个订单信息中每个订单信息对应的历史行驶轨迹。
S502:基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,所述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点。
S503:根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心。
S504:计算各个所述类簇对应的所述信息集合中预设信息的信息熵。
在一实施例中,上述预设信息可以由开发人员根据实际需要从所述信息集合中进行选取,例如,可以选取目的地(如建筑物的标识、门户等),本实施例对此不进行限定。
在一实施例中,在完成对上述轨迹末端点的聚类后,为了判断类簇的精确程度,可以计算各个所述类簇对应的所述信息集合中预设信息的信息熵。
值得说明的是,聚类算法可以把轨迹末端点聚集到一起构成一个类簇,但是,如果类簇覆盖范围过大,交付地点就会不精确;而如果类簇覆盖范围太小,交付地点就会太多,不实用。所以,本实施例采用信息熵来计算每个类簇的建筑物的标识,如下式(1)所示,离散型随机变量X的熵H(X)定义为:
其中,X为类簇中建筑物的名称,p(x)为每个名称xi出现的概率。
S505:确定所述信息熵是否小于或等于预设信息熵阈值;若是,则执行步骤S506-S507;若否,则执行步骤S508。
S506:确定所述类簇满足第一预设条件。
S507:将所述聚类中心确定为所述类簇中目的地对应的交付点。
值得说明的是,在通常情况下,一个建筑周围出现4个以上交付点是不太可能的,因而本实施例中,假定每个建筑对应1-3个交付点比较正常(即信息熵小于或等于3)。
在一实施例中,当确定上述信息熵后,可以将该信息熵与预设信息熵阈值进行比较,确定该信息熵是否小于或等于预设信息熵阈值。举例来说,若计算出的信息熵为1.89(<3),则可以确定所述类簇满足第一预设条件,进而可以将所述聚类中心确定为所述类簇中目的地对应的交付点。
S508:输出用于提示调整所述聚类邻域参数的提示信息。
在一实施例中,如果确定上述的信息熵过大(即大于预设信息熵阈值),则说明类簇中包含了过多的建筑,范围太大,因而可以输出用于提示调整所述聚类邻域参数的提示信息,以使用户适当的调整所述聚类邻域参数,进而基于调整后的聚类邻域参数重新执行所述根据所述多个订单信息的轨迹末端点进行聚类的步骤,直至得到的类簇满足所述第一预设条件,得到合适的聚类中心。
其中,步骤S501-S503、S506-S507的相关解释说明可以参见上述实施例,在此不进行赘述。
由上述描述可知,本实施例通过计算各个所述类簇对应的所述信息集合中预设信息的信息熵,并当所述信息熵小于或等于预设信息熵阈值时,确定所述类簇满足第一预设条件,将所述目标轨迹末端点确定为对应类簇的核心对象,而在所述信息熵大于所述预设信息熵阈值时,输出用于提示调整所述聚类邻域参数的提示信息,可以实现准确地确定聚类范围,进而可以提高确定交付点的准确性。
图6是本申请又一示例性实施例示出的一种确定交付点的方法的流程图;该实施例可以用于服务端(例如,一台服务器和多台服务器组成的服务器集群等),也可以用于终端设备(如智能手机、平板电脑、台式笔记本等)。如图6所示,该方法包括以下步骤S601-S604:
S601:获取多个订单信息中每个订单信息对应的历史行驶轨迹;
S602:将每个所述订单信息对应的多个轨迹点中最后采集到的轨迹点确定为所述订单信息对应的轨迹末端点。
在一实施例中,当得到多个订单信息中每个订单信息对应的历史行驶轨迹后,可以将每个所述订单信息对应的多个轨迹点中最后采集到的轨迹点(例如配送员点击“配送完成”按键时采集的轨迹点)确定为所述订单信息对应的轨迹末端点。
S603:根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心;
S604:若所述类簇满足第一预设条件,则将所述聚类中心确定为所述类簇的目的地对应的交付点,所述类簇的目的地为所述类簇中轨迹末端点对应的目的地
其中,步骤S601、S603-S604的相关解释说明可以参见上述实施例,在此不进行赘述。
由上述描述可知,本实施例通过将每个所述订单信息对应的多个轨迹点中最后采集到的轨迹点确定为所述订单信息对应的轨迹末端点,可以快速、准确地确定每个订单信息对应的轨迹末端点,进而为后续基于轨迹末端点进行聚类,并确定交付点提供了依据。
图7是本申请一示例性实施例示出的如何确定每个所述订单信息对应的轨迹末端点的流程图;本实施例在上述实施例的基础上,以如何确定每个所述订单信息对应的轨迹末端点为例进行示例性说明。如图7所示,上述步骤S102中所述基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,可以包括以下步骤S701-S703:
S701:根据每个所述轨迹点对应的目的地确定目的地经纬度。
在一实施例中,由于每个轨迹点对应的信息集合中包含当前时刻和当前的坐标经纬度信息以及目的地等,因而可以根据该目的地查询第三方地图库,以确定目的地的经纬度。
S702:根据所述多个轨迹点的坐标经纬度和所述目的地经纬度分别计算所述多个轨迹点与所述目的地之间的距离。
在一实施例中,在确定上述轨迹点的坐标经纬度后,可以分别根据各个轨迹点的坐标经纬度和目的地经纬度计算该轨迹点中与目的地之间的距离。
在一实施例中,上述计算该轨迹点中与目的地之间的距离的计算方法可以采用现有技术中公开的内容,例如可以采用ETL算法包中的公式,本实施例对此不进行限定。
S703:将所述多个轨迹点中与所述目的地之间的距离小于或等于预设距离阈值,且对应的行驶速度为0的轨迹点确定为轨迹末端点。
在一实施例中,可以将配送员在目的地的预设距离阈值内的停驻地点视为实际交付点,因而可以在确定轨迹点中与目的地之间的距离之后,将上述轨迹点中与目的地之间的距离小于或等于预设距离阈值,并且,行驶速度等于0的轨迹点确定为轨迹末端点(即实际交付点)。
在一实施例中,上述预设距离阈值可以由开发人员根据实际业务需要进行设置,例如可以设置为10米、20米或30米等,本实施例对此不进行限定。
由上述描述可知,本实施例根据每个所述轨迹点对应的目的地确定目的地经纬度,并根据所述多个轨迹点的坐标经纬度和所述目的地经纬度分别计算所述多个轨迹点与所述目的地之间的距离,然后将所述多个轨迹点中与所述目的地之间的距离小于或等于预设距离阈值,且对应的行驶速度为0的轨迹点确定为轨迹末端点,可以实现准确地从上述M个轨迹点中确定上述轨迹末端点,进而可以实现后续基于确定的轨迹末端点进行聚类,并根据聚类结果确定交付点,可以保证确定交付点的准确性。
图8是本申请又一示例性实施例示出的一种确定交付点的方法的流程图;该实施例可以用于服务端(例如,一台服务器和多台服务器组成的服务器集群等),也可以用于终端设备(如智能手机、平板电脑、台式笔记本等)。如图8所示,该方法包括以下步骤S801-S806:
S801:获取多个订单信息中每个订单信息对应的历史行驶轨迹。
S802:基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,所述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点。
S803:根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心。
S804:若所述类簇满足第一预设条件,则将所述聚类中心确定为所述类簇的目的地对应的交付点。
其中,上述步骤S801-S804的相关解释和说明可以参见上述实施例,在此不进行赘述。
S805:构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及,构建各轨迹末端点对应的建筑物与所述交付点之间的第二对应关系。
在一实施中,上述目的地可以包括建筑物(如,悠乐汇A座等)和门户(如,熊猫窝咖啡司等),其中,该门户可以为位于建筑物中的门店、公司、住家等,例如熊猫窝咖啡司为位于悠乐汇A座中的一个门店。
在一实施例中,当确定上述类簇中目的地对应的交付点后,可以构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,并构建各轨迹末端点对应的建筑物与该类簇的交付点之间的第二对应关系。
举例来说,若在同一类簇中,某一轨迹末端点的目的地为悠乐汇A座,另一轨迹末端点的目的地为熊猫窝咖啡司,且确定该类簇的交付点的经纬度为(39992266,116472419),则可以构建熊猫窝咖啡司与悠乐汇A座之间的第一对应关系,以及构建悠乐汇A座与交付点(39992266,116472419)之间的第二对应关系。
S806:将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中。
在一实施例中,可以预先构建一个对应关系库(例如为服务端本地存储的对应关系列表),该对应关系库可以用于存储同一所述类簇中各所述门户与所述建筑物之间的第一对应关系,以及,所述建筑物与所述交付点之间的第二对应关系。
在一实施例中,当构建上述第一对应关系和第二对应关系后,可以将第一对应关系和第二对应关系添加到该对应关系库中,以供后续查询。
由上述描述可知,本实施例通过构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及,构建各轨迹末端点对应的建筑物与所述交付点之间的第二对应关系,并将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中,可以实现后续根据添加的对应关系查询相应的交付点,提高配送员的配送效率,提升配送员和客户的体验。
图9是本申请又一示例性实施例示出的一种确定交付点的方法的流程图;该实施例可以用于服务端(例如,一台服务器和多台服务器组成的服务器集群等),也可以用于终端设备(如智能手机、平板电脑、台式笔记本等)。如图9所示,该方法包括以下步骤S901-S912:
S901:获取多个订单信息中每个订单信息对应的历史行驶轨迹。
S902:基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点。
S903:根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心。
S904:若所述类簇满足第一预设条件,则将所述聚类中心确定为所述类簇的目的地对应的交付点。
S905:构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及,构建各轨迹末端点对应的建筑物与所述交付点之间的第二对应关系。
S906:将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中。
其中,步骤S901-S906的相关解释和说明可以参见上述实施例,在此不再进行赘述。
S907:接收终端设备发送的目标目的地对应的交付点的查询请求。
在一实施例中,可以接收终端设备(例如配送员关联的智能手机等)发送的目标目的地对应的交付点的查询请求,该查询请求用于查询目标目的地对应的交付点。
S908:确定所述目标目的地是否包括目标建筑物;若否,则执行步骤S909;若是,则执行步骤S911。
在一实施例中,当接收到上述查询请求时,可以确定目标目的地是否包括目标建筑物;若否,则可以跳转至下述步骤S909;若是,则可以跳转至下述步骤S911。
S909:确定所述目标目的地是否包括目标门户;若是,则执行步骤S910。
在一实施例中,当确定所述目标目的地不是目标建筑物时,可以确定目标目的地是否包括目标门户;若是,则可以跳转至下述步骤S910;若否,则忽略该查询请求。
S910:基于所述第一对应关系从所述对应关系库中查询所述目标门户对应的目标建筑物。
在一实施例中,当确定目标目的地中仅包括目标门户,而不包括目标建筑物时,可以基于上述构建的第一对应关系,查询该目标门户对应的目标建筑物。
S911:基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点。
在一实施例中,当确定目标目的地中包括目标建筑物,或者,基于上述构建的第一对应关系查询到目标门户对应的目标建筑物时,可以基于构建的第二对应关系,查询该目标建筑物对应的交付点。
S912:将所述目标目的地对应的交付点发送至所述终端设备进行展示。
在一实施例中,当从对应关系库中查询到目标目的地对应的交付点后,可以将该交付点发送至所述终端设备,以使该终端设备展示该交付点。
由上述描述可知,本实施例通过接收终端设备发送的目标目的地对应的交付点的查询请求,并当所述目标目的地包括目标门户时,基于所述第一对应关系从所述对应关系库中查询所述目标门户对应的目标建筑物;以及,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;而当所述目标目的地包括目标建筑物时,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点,进而将所述目标目的地对应的交付点发送至所述终端设备进行展示,可以实现根据聚类结果解决建筑物对应多门户名称的问题,为配送员提供更多目的地的名称信息,进一步节省配送员寻找交付点的时间,提升配送员的体验。
值得说明的是,上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
图10是本申请一示例性实施例示出的一种确定交付点的装置的结构框图;如图10所示,该装置包括:行驶轨迹获取模块110、轨迹端点确定模块120、轨迹端点聚类模块130以及交付点确定模块140,其中:
行驶轨迹获取模块110,用于获取多个订单信息中每个订单信息对应的历史行驶轨迹;
轨迹端点确定模块120,用于基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,所述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点;
轨迹端点聚类模块130,用于根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心;
交付点确定模块140,用于当所述类簇满足第一预设条件时,将所述聚类中心确定为所述类簇的目的地对应的交付点,所述类簇的目的地为所述类簇中轨迹末端点对应的目的地。
由上述描述可知,本实施例通过获取多个订单信息中每个订单信息对应的历史行驶轨迹,并基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,并根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心,进而当所述类簇满足第一预设条件时,将所述聚类中心确定为所述类簇的目的地对应的交付点,可以准确地确定目的地对应的交付点,节省配送员寻找交付点的时间,提高配送员的配送效率,进而可以提升配送员和客户的体验。
图11是本申请又一示例性实施例示出的一种确定交付点的装置的结构框图;其中,行驶轨迹获取模块210、轨迹端点确定模块220、轨迹端点聚类模块230以及交付点确定模块250与前述图10所示实施例中的行驶轨迹获取模块110、轨迹端点确定模块120、轨迹端点聚类模块130以及交付点确定模块140的功能相同,在此不进行赘述。如图11所示,轨迹端点聚类模块230,可以包括:
样本集确定单元231,用于确定每个所述轨迹末端点的邻域子样本集,所述邻域子样本集中的样本为所述多个订单信息的轨迹末端点中满足第二预设条件的轨迹末端点;
核心对象确定单元232,用于根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象;
轨迹端点划分单元233,用于将所述多个订单信息的轨迹末端点划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心。
在一实施例中,样本集确定单元231,还可以用于:
确定聚类邻域参数和样本距离度量方式,所述聚类邻域参数包括最大类簇样本距离;
基于所述样本距离度量方式,确定每个目标轨迹末端点的基于所述最大类簇样本距离的邻域子样本集,所述满足第二预设条件的轨迹末端点包括与所述目标轨迹末端点之间的距离小于或等于所述最大类簇样本距离的轨迹末端点。
在一实施例中,聚类邻域参数还可以包括最小类簇样本数量;
核心对象确定单元232,还可以用于:
确定各所述目标轨迹末端点的邻域子样本集中所述样本的个数;
将所述样本的个数与所述最小类簇样本数量进行比较;
若所述样本的个数大于或等于所述最小类簇样本数量,则将所述目标轨迹末端点确定为对应类簇的核心对象。
在一实施例中,所述装置还可以包括:第一条件判定模块240;
第一条件判定模块240,可以包括:
信息熵计算单元241,用于计算各个所述类簇对应的所述信息集合中预设信息的信息熵;
第一条件判定单元242,用于当所述信息熵小于或等于预设信息熵阈值时,确定所述类簇满足第一预设条件。
在一实施例中,第一条件判定模块240,还可以包括:
提示信息输出单元243,用于当所述信息熵大于所述预设信息熵阈值时,输出用于提示调整所述聚类邻域参数的提示信息;
轨迹端点聚类模块230,还可以用于基于调整后的聚类邻域参数重新执行所述根据所述多个订单信息的轨迹末端点进行聚类的步骤,直至得到的类簇满足所述第一预设条件。
在一实施例中,轨迹端点确定模块220还用于:
将每个所述订单信息对应的多个轨迹点中最后采集到的轨迹点确定为所述订单信息对应的轨迹末端点。
在一实施例中,轨迹端点确定模块220还可以包括:
经纬度确定单元221,用于根据每个所述轨迹点对应的目的地确定目的地经纬度;
距离计算单元222,用于根据所述多个轨迹点的坐标经纬度和所述目的地经纬度分别计算所述多个轨迹点与所述目的地之间的距离;
轨迹端点确定单元223,用于将所述多个轨迹点中与所述目的地之间的距离小于或等于预设距离阈值,且对应的行驶速度为0的轨迹点确定为轨迹末端点。
在一实施例中,每个所述轨迹末端点对应的目的地包括建筑物和门户中的至少一个;
装置还可以包括:对应关系添加模块260;
对应关系添加模块260,可以包括:
对应关系构建单元261,用于构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及,构建各轨迹末端点对应的建筑物与所述交付点之间的第二对应关系;
对应关系添加单元262,用于将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中。
在一实施例中,所述装置还可以包括:交付点发送模块270;
交付点发送模块270,可以包括:
查询请求接收单元271,用于接收终端设备发送的目标目的地对应的交付点的查询请求;
交付点查询单元272,用于:
当所述目标目的地包括目标门户时,基于所述第一对应关系从所述对应关系库中查询所述目标门户对应的目标建筑物;以及,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
当所述目标目的地包括目标建筑物时,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
交付点发送单元273,用于将所述目标目的地对应的交付点发送至所述终端设备进行展示。
值得说明的是,上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
另一方面,本申请还提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序用于执行上述图1~图8所示实施例提供的确定交付点的方法。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (21)
1.一种确定交付点的方法,其特征在于,包括:
获取多个订单信息中每个订单信息对应的历史行驶轨迹;
基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,所述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点,所述多个订单信息对应的目的地不完全相同,所述轨迹末端点是基于配送员在目的地的预设距离阈值内的停驻地点确定的;
根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心;
若所述类簇满足第一预设条件,则将所述聚类中心确定为所述类簇的多个目的地对应的交付点,所述类簇的目的地为所述类簇中轨迹末端点对应的目的地;
针对每个类簇,构建该类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及各轨迹末端点对应的建筑物与该类簇对应交付点之间的第二对应关系;
所述第一对应关系以及所述第二对应关系,用于根据接收到的对目标目的地对应交付点的查询请求,确定所述目标目的地对应的交付点。
2.根据权利要求1所述的方法,其特征在于,所述根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心,包括:
确定每个所述轨迹末端点的邻域子样本集,所述邻域子样本集中的样本为所述多个订单信息的轨迹末端点中满足第二预设条件的轨迹末端点;
根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象;
将所述多个订单信息的轨迹末端点划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心。
3.根据权利要求2所述的方法,其特征在于,所述确定每个所述轨迹末端点的邻域子样本集,包括:
确定聚类邻域参数和样本距离度量方式,所述聚类邻域参数包括最大类簇样本距离;
基于所述样本距离度量方式,确定每个目标轨迹末端点的基于所述最大类簇样本距离的邻域子样本集,所述满足第二预设条件的轨迹末端点包括与所述目标轨迹末端点之间的距离小于或等于所述最大类簇样本距离的轨迹末端点。
4.根据权利要求3所述的方法,其特征在于,所述聚类邻域参数还包括最小类簇样本数量;
所述根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象,包括:
确定各所述目标轨迹末端点的邻域子样本集中所述样本的个数;
将所述样本的个数与所述最小类簇样本数量进行比较;
若所述样本的个数大于或等于所述最小类簇样本数量,则将所述目标轨迹末端点确定为对应类簇的核心对象。
5.根据权利要求4所述的方法,其特征在于,所述根据所述多个订单信息的轨迹末端点进行聚类之后,所述方法还包括:
计算各个所述类簇对应的信息集合中预设信息的信息熵;
若所述信息熵小于或等于预设信息熵阈值,则确定所述类簇满足第一预设条件。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若所述信息熵大于所述预设信息熵阈值,则输出用于提示调整所述聚类邻域参数的提示信息;
基于调整后的聚类邻域参数重新执行所述根据所述多个订单信息的轨迹末端点进行聚类的步骤,直至得到的类簇满足所述第一预设条件。
7.根据权利要求1所述的方法,其特征在于,所述基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,包括:
将每个所述订单信息对应的多个轨迹点中最后采集到的轨迹点确定为所述订单信息对应的轨迹末端点。
8.根据权利要求1所述的方法,其特征在于,所述基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,包括:
根据每个所述轨迹点对应的目的地确定目的地经纬度;
根据所述多个轨迹点的坐标经纬度和所述目的地经纬度分别计算所述多个轨迹点与所述目的地之间的距离;
将所述多个轨迹点中与所述目的地之间的距离小于或等于预设距离阈值,且对应的行驶速度为0的轨迹点确定为轨迹末端点。
9.根据权利要求1所述的方法,其特征在于,每个所述轨迹末端点对应的目的地包括建筑物和门户中的至少一个;
所述将所述聚类中心确定为所述类簇的目的地对应的交付点之后,所述方法还包括:
构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及,构建各轨迹末端点对应的建筑物与所述交付点之间的第二对应关系;
将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中。
10.根据权利要求9所述的方法,其特征在于,所述将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中之后,所述方法还包括:
接收终端设备发送的目标目的地对应的交付点的查询请求;
若所述目标目的地包括目标门户;则,基于所述第一对应关系从所述对应关系库中查询所述目标门户对应的目标建筑物;以及,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
若所述目标目的地包括目标建筑物;则,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
将所述目标目的地对应的交付点发送至所述终端设备进行展示。
11.一种确定交付点的装置,其特征在于,包括:
行驶轨迹获取模块,用于获取多个订单信息中每个订单信息对应的历史行驶轨迹;
轨迹端点确定模块,用于基于每个所述历史行驶轨迹中包括的多个轨迹点,确定每个所述订单信息对应的轨迹末端点,所述轨迹末端点用于表征所述历史行驶轨迹中的实际交付点,所述多个订单信息对应的目的地不完全相同,所述轨迹末端点是基于配送员在目的地的预设距离阈值内的停驻地点确定的;
轨迹端点聚类模块,用于根据所述多个订单信息的轨迹末端点进行聚类,得到各个类簇的聚类中心;
交付点确定模块,用于当所述类簇满足第一预设条件时,将所述聚类中心确定为所述类簇的多个目的地对应的交付点,所述类簇的目的地为所述类簇中轨迹末端点对应的目的地;
针对每个类簇,构建该类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及各轨迹末端点对应的建筑物与该类簇对应交付点之间的第二对应关系;
所述第一对应关系以及所述第二对应关系,用于根据接收到的对目标目的地对应交付点的查询请求,确定所述目标目的地对应的交付点。
12.根据权利要求11所述的装置,其特征在于,所述轨迹端点聚类模块,包括:
样本集确定单元,用于确定每个所述轨迹末端点的邻域子样本集,所述邻域子样本集中的样本为所述多个订单信息的轨迹末端点中满足第二预设条件的轨迹末端点;
核心对象确定单元,用于根据各所述邻域子样本集中所述样本的个数确定各个所述类簇的核心对象;
轨迹端点划分单元,用于将所述多个订单信息的轨迹末端点划分到各个所述核心对象的对应类簇中,并生成所述类簇的聚类中心。
13.根据权利要求12所述的装置,其特征在于,所述样本集确定单元,还用于:
确定聚类邻域参数和样本距离度量方式,所述聚类邻域参数包括最大类簇样本距离;
基于所述样本距离度量方式,确定每个目标轨迹末端点的基于所述最大类簇样本距离的邻域子样本集,所述满足第二预设条件的轨迹末端点包括与所述目标轨迹末端点之间的距离小于或等于所述最大类簇样本距离的轨迹末端点。
14.根据权利要求13所述的装置,其特征在于,所述聚类邻域参数还包括最小类簇样本数量;
所述核心对象确定单元,还用于:
确定各所述目标轨迹末端点的邻域子样本集中所述样本的个数;
将所述样本的个数与所述最小类簇样本数量进行比较;
若所述样本的个数大于或等于所述最小类簇样本数量,则将所述目标轨迹末端点确定为对应类簇的核心对象。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:第一条件判定模块;
所述第一条件判定模块,包括:
信息熵计算单元,用于计算各个所述类簇对应的信息集合中预设信息的信息熵;
第一条件判定单元,用于当所述信息熵小于或等于预设信息熵阈值时,确定所述类簇满足第一预设条件。
16.根据权利要求15所述的装置,其特征在于,所述第一条件判定模块,还包括:
提示信息输出单元,用于当所述信息熵大于所述预设信息熵阈值时,输出用于提示调整所述聚类邻域参数的提示信息;
所述轨迹端点聚类模块,还用于基于调整后的聚类邻域参数重新执行所述根据所述多个订单信息的轨迹末端点进行聚类的步骤,直至得到的类簇满足所述第一预设条件。
17.根据权利要求11所述的装置,其特征在于,所述轨迹端点确定模块还用于:
将每个所述订单信息对应的多个轨迹点中最后采集到的轨迹点确定为所述订单信息对应的轨迹末端点。
18.根据权利要求11所述的装置,其特征在于,所述轨迹端点确定模块还包括:
经纬度确定单元,用于根据每个所述轨迹点对应的目的地确定目的地经纬度;
距离计算单元,用于根据所述多个轨迹点的坐标经纬度和所述目的地经纬度分别计算所述多个轨迹点与所述目的地之间的距离;
轨迹端点确定单元,用于将所述多个轨迹点中与所述目的地之间的距离小于或等于预设距离阈值,且对应的行驶速度为0的轨迹点确定为轨迹末端点。
19.根据权利要求11所述的装置,其特征在于,每个所述轨迹末端点对应的目的地包括建筑物和门户中的至少一个;
所述装置还包括:对应关系添加模块;
所述对应关系添加模块,包括:
对应关系构建单元,用于构建同一所述类簇中各轨迹末端点对应的门户与建筑物之间的第一对应关系,以及,构建各轨迹末端点对应的建筑物与所述交付点之间的第二对应关系;
对应关系添加单元,用于将所述第一对应关系和所述第二对应关系添加到预先构建的对应关系库中。
20.根据权利要求19所述的装置,其特征在于,所述装置还包括:交付点发送模块;
所述交付点发送模块,包括:
查询请求接收单元,用于接收终端设备发送的目标目的地对应的交付点的查询请求;
交付点查询单元,用于:
当所述目标目的地包括目标门户时,基于所述第一对应关系从所述对应关系库中查询所述目标门户对应的目标建筑物;以及,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
当所述目标目的地包括目标建筑物时,基于所述第二对应关系从所述对应关系库中查询所述目标建筑物对应的交付点;
交付点发送单元,用于将所述目标目的地对应的交付点发送至所述终端设备进行展示。
21.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-10任一所述的确定交付点的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810465210.6A CN110503352B (zh) | 2018-05-16 | 2018-05-16 | 一种确定交付点的方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810465210.6A CN110503352B (zh) | 2018-05-16 | 2018-05-16 | 一种确定交付点的方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110503352A CN110503352A (zh) | 2019-11-26 |
CN110503352B true CN110503352B (zh) | 2021-09-07 |
Family
ID=68584646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810465210.6A Active CN110503352B (zh) | 2018-05-16 | 2018-05-16 | 一种确定交付点的方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110503352B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110969387A (zh) * | 2019-11-28 | 2020-04-07 | 拉扎斯网络科技(上海)有限公司 | 订单配送方法、服务器、终端及系统 |
CN113139137B (zh) * | 2020-01-19 | 2022-05-03 | 北京三快在线科技有限公司 | 确定poi坐标的方法、装置、存储介质及电子设备 |
CN113360787A (zh) * | 2020-03-05 | 2021-09-07 | 北京三快在线科技有限公司 | 出入口标注和路线规划方法、装置、介质及电子设备 |
CN112100303A (zh) * | 2020-09-14 | 2020-12-18 | 拉扎斯网络科技(上海)有限公司 | 建筑实体位置确定方法、装置、计算机设备及可读存储介质 |
CN113642972B (zh) * | 2021-10-14 | 2022-01-04 | 北京每日优鲜电子商务有限公司 | 报警提示信息发送方法、装置、设备和计算机可读介质 |
CN114936711B (zh) * | 2022-06-15 | 2023-05-02 | 广东工业大学 | 一种大规模板式定制家具订单揉单优化方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077308A (zh) * | 2013-03-28 | 2014-10-01 | 阿里巴巴集团控股有限公司 | 一种物流服务范围确定方法及装置 |
CN104200369A (zh) * | 2014-08-27 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种确定商品配送范围的方法和装置 |
CN106372821A (zh) * | 2015-07-21 | 2017-02-01 | 阿里巴巴集团控股有限公司 | 确定服务站点信息的方法及装置 |
CN107305577A (zh) * | 2016-04-25 | 2017-10-31 | 北京京东尚科信息技术有限公司 | 基于K-means的妥投地址数据处理方法和系统 |
CN107451673A (zh) * | 2017-06-14 | 2017-12-08 | 北京小度信息科技有限公司 | 配送区域划分方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10839325B2 (en) * | 2016-11-06 | 2020-11-17 | Microsoft Technology Licensing, Llc | Efficiency enhancements in task management applications |
-
2018
- 2018-05-16 CN CN201810465210.6A patent/CN110503352B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077308A (zh) * | 2013-03-28 | 2014-10-01 | 阿里巴巴集团控股有限公司 | 一种物流服务范围确定方法及装置 |
CN104200369A (zh) * | 2014-08-27 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种确定商品配送范围的方法和装置 |
CN106372821A (zh) * | 2015-07-21 | 2017-02-01 | 阿里巴巴集团控股有限公司 | 确定服务站点信息的方法及装置 |
CN107305577A (zh) * | 2016-04-25 | 2017-10-31 | 北京京东尚科信息技术有限公司 | 基于K-means的妥投地址数据处理方法和系统 |
CN107451673A (zh) * | 2017-06-14 | 2017-12-08 | 北京小度信息科技有限公司 | 配送区域划分方法和装置 |
Non-Patent Citations (2)
Title |
---|
基于出租车GPS数据的居民出行时空规律和出行热点区域研究;陈红丽;《中国优秀硕士学位论文全文数据库(工程科技II辑)》;20170215(第2期);正文第34-50页 * |
零知识下的比特流未知协议分类模型;张凤荔 等;《计算机科学》;20160831;第43卷(第8期);第40,42页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110503352A (zh) | 2019-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110503352B (zh) | 一种确定交付点的方法、装置及计算机可读存储介质 | |
US9824156B1 (en) | Targeting of digital content to geographic regions | |
Cui et al. | Personalized travel route recommendation using collaborative filtering based on GPS trajectories | |
US20200286039A1 (en) | Information generation method and apparatus | |
CN110929162B (zh) | 基于兴趣点的推荐方法、装置、计算机设备和存储介质 | |
AU2017399007B2 (en) | Mobility gene for trajectory data | |
CN106471851B (zh) | 基于学习模型的设备定位 | |
CN106600057B (zh) | 一种快递配送任务调度方法及装置 | |
EP4002252A1 (en) | Apparatus, systems, and methods for analyzing movements of target entities | |
CN112398895B (zh) | 提供服务信息的方法及装置 | |
US20140207725A1 (en) | Device and method for destination prediction | |
KR20180013843A (ko) | 오더 할당 시스템 및 방법 | |
KR20210052499A (ko) | e-헤일링(e-hailing) 서비스 | |
CN104756143A (zh) | 获得事件评论 | |
KR101799973B1 (ko) | 모임 장소 추천 장치 및 방법 | |
WO2018150228A1 (en) | Mobility gene for visit data | |
CN110895765A (zh) | 一种线下广告投放管理方法、装置及系统 | |
CN111260164A (zh) | 一种运力调度方法以及装置 | |
US20220120583A1 (en) | An information presentation method and apparatus | |
CN110060089A (zh) | 一种用户画像构建方法及装置 | |
CN110134721A (zh) | 基于位图的数据统计方法、装置及电子设备 | |
CN112862544A (zh) | 对象信息的获取方法、装置以及存储介质 | |
JP5615777B2 (ja) | 経路案内装置及び経路案内方法 | |
EP3885704A1 (en) | Method and apparatus for federated location fingerprinting | |
US10979850B1 (en) | Method and apparatus for federated location fingerprinting |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |