网格建立方法和装置以及配送方法和装置与流程

文档序号:16509826发布日期:2019-01-05 09:15阅读:384来源:国知局
网格建立方法和装置以及配送方法和装置与流程
本公开实施例涉及地理信息领域,尤其涉及网格建立方法和装置以及配送方法和装置。
背景技术
:在相关技术中,按照地理区域划分网格在很多领域都有很大的用途,但是网格的绘制,大多处在人工在地图上进行手动绘制。手动绘制网格,不仅效率低下,而且不能保证业务所覆盖的区域,能被网格百分之百覆盖,也就是说手动绘制的多个网格之间总是会存在缝隙。因此,利用这样的网格执行配送时,配送区域也会收到网格间缝隙的影响。在相关技术中的方案中,在按照地理区域划分网格时,通常通过将地图做成一个网页,然后由人工在网页上进行选点,来利用选择的点组建网格。技术实现要素:有鉴于此,本公开第一方面提供了一种网格建立方法,包括:根据地理区域的特征确定网格几何单元的属性信息,将所述网格几何单元彼此邻接充满所述地理区域;按照预设网格划分规则对由所述网格几何单元彼此邻接组成的所述地理区域进行划分,得到至少两个网格;生成所述网格几何单元的网格几何单元标识和所述网格的网格标识;基于所述网格几何单元的网格几何单元标识和所述网格的网格标识,建立所述网格几何单元与所述网格的对应关系。结合第一方面,本公开在第一方面的第一种实现方式中,所述生成所述网格几何单元的网格几何单元标识和所述网格的网格标识,包括:选择所述地理区域内的任一点作为原点建立坐标系;根据所述网格几何单元的中心点在所述坐标系中的坐标生成所述网格几何单元的网格几何单元标识;根据预设网格标识生成规则生成所述网格的网格标识。结合第一方面的第一种实现方式,本公开在第一方面的第二种实现方式中,所述选择与所述地理区域相关的一个点作为原点建立坐标系,包括:以地球上的经度和纬度均为0的点作为原点,以地球的经线和纬线分别作为横轴和纵轴来建立所述平面直角坐标系,或者以所述地理区域上的指定点作为原点,以所述指定点所在的经线和纬线分别作为横轴和纵轴来建立所述平面直角坐标系;其中,所述根据所述网格几何单元的中心点在所述坐标系中的坐标生成该网格几何单元的网格几何单元标识,包括:根据所述网格几何单元的中心点的经度和纬度生成所述网格几何单元的网格几何单元标识。。结合第一方面的第二种实现方式,本公开在第一方面的第三种实现方式中,一个网格几何单元的中心与所述平面直角坐标系的原点重合。结合第一方面,本公开在第一方面的第四种实现方式中,所述网格几何单元的属性信息包括网格几何单元的形状和大小。本公开第二方面提供了一种网格建立装置,包括:确定模块,被配置为根据地理区域的特征确定网格几何单元的属性信息,将所述网格几何单元彼此邻接充满所述地理区域;划分模块,被配置为按照预设网格划分规则对由所述网格几何单元彼此邻接组成的所述地理区域进行划分,得到至少两个网格;生成模块,被配置为生成所述网格几何单元的网格几何单元标识和所述网格的网格标识;建立模块,被配置为基于所述网格几何单元的网格几何单元标识和所述网格的网格标识,建立所述网格几何单元与所述网格的对应关系。结合第二方面,本公开在第二方面的第一种实现方式中,所述生成模块包括:选择子模块,被配置为选择所述地理区域内的任一点作为原点建立坐标系;第一生成子模块,被配置为根据所述网格几何单元的中心点在所述坐标系中的坐标生成所述网格几何单元的网格几何单元标识;第二生成子模块,被配置为根据预设网格标识生成规则生成所述网格的网格标识。结合第二方面的第一种实现方式,本公开在第二方面的第二种实现方式中,所述选择子模块被配置为:以地球上的经度和纬度均为0的点作为原点,以地球的经线和纬线分别作为横轴和纵轴来建立所述平面直角坐标系,或者以所述地理区域上的指定点作为原点,以所述指定点所在的经线和纬线分别作为横轴和纵轴来建立所述平面直角坐标系;其中,所述第一生成子模块被配置为:根据所述网格几何单元的中心点的经度和纬度生成所述网格几何单元的网格几何单元标识。结合第二方面的第二种实现方式,本公开在第二方面的第三种实现方式中,一个网格几何单元的中心与所述平面直角坐标系的原点重合。结合第二方面,本公开在第二方面的第四种实现方式中,所述网格几何单元的属性信息包括网格几何单元的形状和大小。本公开第三方面提供了一种电子设备,包括存储器和处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如第一方面、第一方面的第一种实现方式至第四种实现方式中的任一项所述的方法。本公开第四方面提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现如第一方面、第一方面的第一种实现方式至第四种实现方式中的任一项所述的方法。本公开第五方面提供了一种配送方法,所述配送方法在由按照第一方面、第一方面的第一种实现方式至第四种实现方式中的任一项所述的方法所组成的地理区域内执行,所述方法包括:获取订单的位置信息,根据所述位置信息确定所述订单对应的目标网格;获取所述目标网格对应的目标骑手,将所述订单的订单信息发送至所述目标骑手。结合第五方面,本公开在第五方面的第一种实现方式中,所述根据所述位置信息确定所述订单对应的目标网格,包括:根据所述位置信息确定所述订单所在的网格几何单元;获取所述网格几何单元的网格几何单元标识,根据所述网格几何单元标识确定所述订单对应的目标网格。本公开第六方面提供了一种配送装置,所述配送装置针对由按照第一方面、第一方面的第一种实现方式至第四种实现方式中的任一项所述的方法所组成的地理区域进行工作,所述装置包括:第一获取模块,被配置为获取订单的位置信息,根据所述位置信息确定所述订单对应的目标网格;第二获取模块,被配置为获取所述目标网格对应的目标骑手,将所述订单的订单信息发送至所述目标骑手。结合第六方面,本公开在第六方面的第一种实现方式中,所述第一获取模块被配置为:根据所述位置信息确定所述订单所在的网格几何单元;获取所述网格几何单元的网格几何单元标识,根据所述网格几何单元标识确定所述订单对应的目标网格。在本公开实施方式中,通过根据地理区域的特征确定网格几何单元的属性信息,将所述网格几何单元彼此邻接充满所述地理区域;按照预设网格划分规则对由所述网格几何单元彼此邻接组成的所述地理区域进行划分,得到至少两个网格;生成所述网格几何单元的网格几何单元标识和所述网格的网格标识;基于所述网格几何单元的网格几何单元标识和所述网格的网格标识,建立所述网格几何单元与所述网格的对应关系,从而省去了人工选点组建网格的繁琐操作,只要选取覆盖网格范围的至少一个网格几何单元,即可组建网格,提高了组建网格效率,省去了很多人工成本。而且,每个网格几何单元都相邻,从而解决了网格存在缝隙的问题,为业务百分之百覆盖提供了解决方案。在本公开实施方式中,通过在由按照前述网格建立方法所组成的地理区域内执行,所述方法包括:获取订单的位置信息,根据所述位置信息确定所述订单对应的目标网格;获取所述目标网格对应的目标骑手,将所述订单的订单信息发送至所述目标骑手,可以使得订单的位置不会落入网格间的缝隙,提升了服务质量以及用户体验。本公开的这些方面或其他方面在以下实施例的描述中会更加简明易懂。附图说明为了更清楚地说明本公开实施例或相关技术中的技术方案,下面将对示例性实施例或相关技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些示例性实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1示出根据本公开一实施方式的网格建立方法的流程图;图2示出根据图1所示的网格建立方法中的步骤s103的流程图;图3示出根据本公开另一实施方式的配送方法的流程图;图4示出根据图3所示的网格建立方法中的步骤s301的流程图;图5示出根据本公开一实施方式的网格建立装置的结构框图;图6示出根据图5所示的网格建立装置中的生成模块503的结构框图;图7示出根据本公开另一实施方式的配送装置的结构框图;图8示出根据图7所示的网格建立方法中的第一获取模块701的结构框图;图9示出根据本公开一实施方式的网格建立方法中的正六边形网格几何单元的示意图;图10示出根据本公开一实施方式的设备的结构框图;图11是适于用来实现根据本公开一实施方式的网格建立方法或另一实施方式的配送方法的计算机装置的结构示意图。具体实施方式为了使本
技术领域
的人员更好地理解本公开方案,下面将结合本公开示例性实施例中的附图,对本公开示例性实施例中的技术方案进行清楚、完整地描述。在本公开的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。采用本公开实施例的应用方式可以解决相关技术的以下问题:(1)由于不同区域的地理特征和区域中发生的业务的特征,网格是很不规则的多边形,这就需要人工选择很多点去组建网格,效率很低。(2)由于网格形状的复杂性,人工选点很容易造成网格与网格间发生间隙。网格与网格间的间隙造成了依赖网格的业务无法覆盖到这些间隙的区域。下面将结合本公开示例性实施例中的附图,对本公开示例性实施例中的技术方案进行清楚、完整地描述,显然,所描述的示例性实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。图1示出根据本公开一实施方式的网格建立方法的流程图。该方法可以包括步骤s101、s102、s103和s104。在步骤s101中,根据地理区域的特征确定网格几何单元的属性信息,将网格几何单元彼此邻接充满地理区域。在步骤s102中,按照预设网格划分规则对由网格几何单元彼此邻接组成的地理区域进行划分,得到至少两个网格。在步骤s103中,生成网格几何单元的网格几何单元标识和网格的网格标识。在步骤s104中,基于网格几何单元的网格几何单元标识和网格的网格标识,建立至少一个网格几何单元与网格的对应关系。在本公开的实施例中,一个地理区域可以由多个网格组成,网格一般是多边形区域。相关技术中的人工选点组建网格的方式效率低,网格间有缝隙。因此,本公开实施例中采用至少一个网格几何单元来组建网格,即,以网格几何单元作为组建网格的基本单位。在一个实施例中,整个地理区域都由多个网格几何单元作为基本单位来组成,因此,由网格几何单元组建的网格之间没有缝隙,这有利于依托网格进行业务开展。在一个实施例中,地理区域中存在一些天然屏障,比如高架桥、高速公路、河流等。这些天然屏障会很大程度上影响地理区域内的业务的开展。在一个实施例中,可以确定一定范围的地理区域,并且根据地理区域的特征(例如河流、高速公路等特征)确定网格单元的属性信息,例如,形状和大小。进而将具有确定的属性的网格几何单元彼此邻接充满地理区域。另外,可以按照预设网格划分规则对由网格几何单元彼此邻接组成的地理区域进行划分,得到至少两个网格。预设网格划分规则也可以基于网格内要执行的任务确定。例如,可以认为配送行业的骑手的配送范围在一个网格内,骑手执行配送业务时的预设网格划分规则可以是根据压力测试结果、天气情况等确定的。例如,当压力测试结果表示地理区域内的配送压力增大或天气恶劣时,可以将网格划分规则预设为将网格划分得较小,以使配送压力较小。当然,网格划分规则可以根据业务按照各种标准设置,本公开在此不作赘述。在一个示例中,用于配送任务的网格可以覆盖多个商圈,而且网格几何单元最好不要跨越这些商圈之间的天然屏障,这样有利于将天然屏障划分为独立的网格,而又不会与其他网格之间出现缝隙。但是网格几何单元也不能无限的小,因为随着网格几何单元缩小,一定地理区域内网格几何单元的数据量也就增多,对网格几何单元的存储也就变得困难。在一个示例中,由于河流一般比车道宽,所以主要参考双向四车道的公路。双向四车道公路每侧车道(两条车道)宽度是7.5米。这里为了便于计算,可以取网格几何单元半径r为7米,即,网格几何单元的直径可以基本覆盖一条四车道公路的宽度。因此,可以通过用多个网格几何单元在地理区域上构成该公路,并且使得骑手的配送范围避开该公路所在网格几何单元,或者不跨越该公路所在网格几何单元。在一个实施例中,网格几何单元的属性信息包括网格几何单元的形状和大小。因此,可以根据例如双向四车道公路的宽度之类的地理区域的特征确定网格几何单元的形状和大小,例如,半径为7米的正六边形。基于此,在配送业务中,可以通过指定公路、河流等障碍物上的网格几何单元来组成“非配送网格”,可以指定其他的网格几何单元组成不会妨碍配送的“配送网格”。在此情况下,地理区域内的各个网格之间不会存在缝隙,有利于基于网格的配送业务的进行。在本公开的实施例中,网格几何单元的“半径”的表述并不表示网格几何单元必须为圆形,“半径”仅用于指代是网格几何单元的中心点到边缘的距离。网格几何单元可以是任意形状。在一个实施例中,网格几何单元为正多边形。在一个实施例中,网格几何单元的形状可以为正三角形、正方形、正五边形、正六边形等。本领域技术人员可以理解的是,采用正多边形的网格几何单元来组建网格可以降低计算量和组建难度。在一个实施例中,网格几何单元的“半径”可以是正多边形的中心点到顶点的距离。在另一个实施例中,网格几何单元可以不是正多边形。在本公开的实施例中,网格几何单元的形状和大小相同并彼此邻接可以使得由多个网格几何单元所构建的网格能够被容易的限定形状。在一个实施例中,由多个同样形状和大小且边重合的正多边形网格几何单元所组建的网格中没有缝隙,能够被清楚的定义,有利于基于网格的业务的进行。在本公开的实施例中,生成网格几何单元的网格几何单元标识和网格的网格标识,使得基于形状和大小相同并彼此邻接的网格几何单元组建的网格能够被清楚地标识。在一个实施例中,网格几何单元标识可以是字母、数字、特殊符号中的任一种或其组合。在一个实施例中,网格标识可以是字母、数字、特殊符号中的任一种或其组合。在本公开的实施例中,基于网格几何单元的网格几何单元标识和网格的网格标识,建立至少一个网格几何单元与由所述至少一个网格几何单元组建的网格的对应关系指的是:由于一个网格由至少一个网格几何单元组建,因此,组建一个网格的至少一个网格几何单元的网格几何单元标识与该网格的网格标识存在对应关系。当建立了这样的对应关系时,就可以基于网格几何单元的存在来建立地理区域内的网格。在本公开实施方式中,通过根据地理区域的特征确定网格几何单元的属性信息,将所述网格几何单元彼此邻接充满所述地理区域;按照预设网格划分规则对由所述网格几何单元彼此邻接组成的所述地理区域进行划分,得到至少两个网格;生成所述网格几何单元的网格几何单元标识和所述网格的网格标识;基于所述网格几何单元的网格几何单元标识和所述网格的网格标识,建立所述网格几何单元与所述网格的对应关系,从而省去了人工选点组建网格的繁琐操作,只要选取覆盖网格范围的至少一个网格几何单元,即可组建网格,提高了组建网格效率,省去了很多人工成本。而且,每个网格几何单元都相邻,从而解决了网格存在缝隙的问题,为业务百分之百覆盖提供了解决方案。图2示出根据图1所示的网格建立方法中的步骤s103的流程图。如图2所示,步骤s103包括步骤s201、s202和s203。在步骤s201中,选择所述地理区域的一个点作为原点建立坐标系。在步骤s202中,根据网格几何单元的中心点在所述坐标系中的坐标生成该网格几何单元的网格几何单元标识。在步骤s203中,根据预设网格标识生成规则生成所述网格的网格标识。在一个实施例中,可以通过将网格几何单元放置在一个位于地理区域内的坐标系中来确定网格几何单元的坐标,进而基于网格几何单元的坐标生成网格几何单元的网格几何单元标识。在一个实施例中,可以根据网格几何单元的中心点在坐标系中的坐标来生成网格几何单元的网格几何单元标识。在一个实施例中,坐标系为平面直角坐标系。平面直角坐标系中的坐标指的是平面直角坐标系中的一个数对,用(x,y)表示,可以比较方便地用于生成网格几何单元的网格几何单元标识。在一个实施例中,正多边形的网格几何单元在坐标系中的位置可以被容易地确定,其中心点的坐标可以用于生成网格几何单元的网格几何单元标识。在一个实施例中,在由至少一个正多边形网格几何单元组建的网格中,以中心点位于坐标系原点的网格几何单元为基准网格几何单元,按照相邻网格几何单元的边重合的规则,基于基准网格几何单元形成多个网格几何单元,并充满所述网格。中心点位于坐标系原点的网格几何单元为基准网格几何单元,可以比较容易地基于此基准网格几何单元的坐标计算与其相邻的网格几何单元的坐标。在一个实施例中,当中心点位于平面直角坐标系原点的网格几何单元为基准网格几何单元时,可以比较容易地基于此基准网格几何单元的坐标计算与其相邻的网格几何单元的坐标。预设网格标识生成规则可以是递增规则,例如,第一个网格的网格标识是0001,第二个网格的网格标识是0002,以此类推。当然,网格标识生成规则不限于此,可以采用各种规则,本公开在此不作赘述。在一个实施例中,正多边形为正六边形。在一个示例中,正六边形的网格几何单元可以如图8所示。在该示例中,正六边形的网格几何单元位于一个平面直角坐标系中。在该示例中,网格几何单元使用一定大小的正6边形平面几何区域,例如,半径为7公里的正6边形平面几何区域。在一个实施例中,图2所示的步骤s201可以包括:以地球上的经度和纬度均为0的点作为原点,以地球的经线和纬线分别作为横轴和纵轴来建立所述平面直角坐标系,或者以地理区域上的指定点作为原点,以指定点所在的经线和纬线分别作为横轴和纵轴来建立所述平面直角坐标系。在一个实施例中,图2所示的步骤s202可以包括:根据网格几何单元的中心点的经度和纬度生成网格几何单元的网格几何单元标识。在一个实施例中,一个网格几何单元的中心与平面直角坐标系的原点重合。因此,可以将该网格几何单元作为基准网格几何单元,从而有利于基于此基准网格几何单元计算与之相邻的其他网格几何单元的中心点坐标,进而可以计算其他网格几何单元的中心点坐标。例如,可以首先选择地球经纬度均为0的坐标(0,0)作为坐标原点,以经度作为横轴(x轴),纬度作为竖轴(y轴),或者以经度作为竖轴(y轴),纬度作为横轴(x轴),以此构建坐标系。将一个网格几何单元的集合中心点与(0,0)点重合,网格几何单元的一个顶点在y轴上。以此网格几何单元为基准,以相邻网格几何单元的边长重合的规则,向外部不断延伸,将地理区域充满。在此示例中,根据以上网格几何单元的分布规则,每个网格几何单元的几何中心坐标也就被唯一确认。只要根据一定规则将网格几何单元的几何中心坐标编码成唯一的字符串(网格几何单元标识)即可。在一个实施例中,可以使用最简单的方式,直接将坐标的x值和y值使用一个连接符“_”拼接,作为dust_code。在一个实施例中,将网格几何单元简写为dust,“dust_code”是对网格几何单元几何中心坐标的编码,即,网格几何单元标识,用于唯一表示网格几何单元。在另一个示例中,可以首先选择地理区域中的地球经纬度为(x,y)的指定点作为坐标原点,以经度作为横轴(x轴),纬度作为竖轴(y轴),或者以经度作为竖轴(y轴),纬度作为横轴(x轴),以此构建坐标系。将一个网格几何单元的集合中心点与(x,y)点重合,网格几何单元的一个顶点在y轴上。以此网格几何单元为基准,以相邻网格几何单元的边长重合的规则,向外部不断延伸,将地理区域充满。在一个实施例中,可以基于网格几何单元的网格几何单元标识,即,dust_code,和网格的网格标识(也可称作网格id)建立至少一个网格几何单元与由至少一个网格几何单元组建的网格的对应关系。存储由网格几何单元组建的网格,也就是存储网格和网格几何单元的关系。网格和网格几何单元的关系是1∶n的关系。当人工选择n个网格几何单元作为一个网格的区域时,计算出这n个网格几何单元的dust_code,并将这些dust_code和网格id(可以由系统生成,在此实施例中可以选用简单从1开始依次递增的规则生成)关系存储到数据库中。在一个实施例中,可以选择使用关系型数据库mysql存储对应关系,存储对应关系的数据表结构设计如下:字段类型允许null值含义备注grid_idbigint(20)否网格idauto_incrementdust_codevarchar(255)否dust编码需创建索引其中,grid_id是网格id,即网格的网格标识;dust_code是网格几何单元的几何中心坐标的编码,即网格几何单元标识。bigint和varchar是数据类型;auto_increment表示网格id依次递增的规则生成。而且,为了便于根据dust_code进行对网格查询,对dust_code字段创建索引。在本公开实施方式中,通过选择地理区域内的任一点作为原点建立坐标系;根据网格几何单元的中心点在坐标系中的坐标生成网格几何单元的网格几何单元标识;根据预设网格标识生成规则生成网格的网格标识,可以通过简单的方式根据网格几何单元的中心点在所述坐标系中的坐标生成该网格几何单元的网格几何单元标识并且生成网格的网格标识,便于建立至少一个网格几何单元与由所述至少一个网格几何单元组建的网格的对应关系,从而省去了人工选点组建网格的繁琐操作,只要选取覆盖网格范围的至少一个网格几何单元,即可组建网格,提高了组建网格效率,省去了很多人工成本。而且,每个网格几何单元都相邻,从而解决了网格存在缝隙的问题,为业务百分之百覆盖提供了解决方案。在一个实施例中,根据所述至少一个网格几何单元的网格几何单元标识,查询所述至少一个网格几何单元所在的网格。在一个实施例中,可以基于至少一个网格几何单元与由所述至少一个网格几何单元组建的网格的对应关系来查询所述至少一个网格几何单元所在的网格。在一个示例中,以图9所示的示例中的网格几何单元(正六边形)作为例子来对如何查询所述至少一个网格几何单元所在的网格进行说明。在图9所示的示例中,地理区域所在的坐标系的原点为经度和纬度均为0的点。注意,以下给出的计算方式仅适合于所在坐标系的原点为经度和纬度均为0并且一个网格几何单元的几何中心坐标位于该原点的地理区域。首先计算出距离订单当前坐标p(x,y)最近的网格几何单元的几何中心坐标d(x,y)。d(x)的计算方式如下:取p(x)/(sin60°*r)的商(舍掉余数),得到quotient(x),d(x)=quotient(x)*(sin60°*r);d(y)的计算方式如下:取p(y)/((1/2*r)+r)的商(舍掉余数),得到quotient(y),d(y)=quotient(y)*((1/2*r)+r)。计算出距离当前坐标p(x,y)网格几何单元的几何中心坐标d(x,y)之后,即确定了订单所在的网格几何单元,以及该网格几何单元的网格几何单元标识,即dust-code,然后去数据表中根据dust-code查找对应的网格id。例如,如图8所示的网格几何单元的半径r为7,该网格几何单元内的一个点的当前坐标为p(6,5)。d(x)的计算方式如下:取6/((sin60°*7)的商(舍掉余数),为0。d(y)的计算方式如下:取5/((1/2*r)+r)的商(舍掉余数),为0。因此,计算出的网格几何单元的几何中心转换值为d(0,0)。计算出距离订单当前坐标p(x,y)网格几何单元的几何中心坐标d(x,y)之后,即确定了订单所在的网格几何单元,以及该网格几何单元的网格几何单元标识,即dust-code,然后去数据表中根据dust-code查找对应的网格id。通过在数据表中根据dust-code查找对应的网格id,可以确定当前坐标所在的网格。因此,在诸如配送行业的应用中,可以根据订单的当前坐标确定当前网格,并且由网格内骑手主动搜索当前网格内的运单或由运单主动搜索网格内的骑手。需要注意的是,以上网格几何单元的几何中心坐标的计算方式仅仅是一个示例。而且,根据本公开前述的实施方式,本领域技术人员可以针对不同的地理区域所在的坐标系的原点、不同的网格几何单元形状等情况采用不同的计算方式。本公开对此不再赘述。在本公开实施方式中,通过根据所述至少一个网格几何单元的网格几何单元标识,查询所述至少一个网格几何单元所在的网格,提供了根据在业务允许的误差范围内更高效的网格查询服务。以下参照图3和图4进一步描述根据本公开的实施方式的网格建立方法在配送领域的应用。图3示出根据本公开另一实施方式的配送方法的流程图。如图3所示的配送方法在由按照图1、图2和图9所述的方法所组成的地理区域内执行。该配送方法包括步骤s301和s302。在步骤s301中,获取订单的位置信息,根据位置信息确定所述订单对应的目标网格。在步骤s302中,获取目标网格对应的目标骑手,将订单的订单信息发送至所述目标骑手。在本公开的一个实施方式中,获取订单的位置信息,例如,经纬度信息。根据订单的经纬度信息确定订单对应的目标网格,即,可以确定与订单的经纬度信息对应网格的网格标识。例如,可以获取与网格的网格标识对应的骑手的经纬度信息以确定目标网格对应的目标骑手,并且将订单信息发送至目标骑手。图4示出根据图3所示的网格建立方法中的步骤s301的流程图。如图4所示,步骤s301包括步骤s401和s402。在步骤s401中,根据位置信息确定订单所在的网格几何单元。在步骤s402中,获取网格几何单元的网格几何单元标识,根据网格几何单元标识确定订单对应的目标网格。在本公开的一个实施例中,可以根据订单的经纬度信息确定订单所在的网格几何单元的网格几何单元的几何中心坐标。根据网格几何单元中心坐标确定网格几何单元标识,根据订单的网格几何单元标识确定对应的目标网格的网格标识。在本公开实施方式中,通过在由按照前述网格建立方法所组成的地理区域内执行,所述方法包括:获取订单的位置信息,根据所述位置信息确定所述订单对应的目标网格;获取所述目标网格对应的目标骑手,将所述订单的订单信息发送至所述目标骑手,可以使得订单的位置不会落入网格间的缝隙,提升了服务质量以及用户体验。图5示出根据本公开一实施方式的网格建立装置的结构框图。如图5所示,根据本公开一实施方式的网格建立装置包括确定模块501、划分模块502、生成模块503和建立模块504。确定模块501被配置为根据地理区域的特征确定网格几何单元的属性信息,将所述网格几何单元彼此邻接充满所述地理区域;划分模块502被配置为按照预设网格划分规则对由所述网格几何单元彼此邻接组成的所述地理区域进行划分,得到至少两个网格;生成模块503被配置为生成所述网格几何单元的网格几何单元标识和所述网格的网格标识;建立模块504被配置为基于所述网格几何单元的网格几何单元标识和所述网格的网格标识,建立所述网格几何单元与所述网格的对应关系。在本公开的实施例中,一个地理区域可以由多个网格组成,网格一般是多边形区域。相关技术中的人工选点组建网格的方式效率低,网格间有缝隙。因此,本公开实施例中采用至少一个网格几何单元来组建网格,即,以网格几何单元作为组建网格的基本单位。在一个实施例中,整个地理区域都由多个网格几何单元作为基本单位来组成,因此,由网格几何单元组建的网格之间没有缝隙,这有利于依托网格进行业务开展。在一个实施例中,地理区域中存在一些天然屏障,比如高架桥、高速公路、河流等。这些天然屏障会很大程度上影响地理区域内的业务的开展。在一个实施例中,可以确定一定范围的地理区域,并且根据地理区域的特征(例如河流、高速公路等特征)确定网格单元的属性信息,例如,形状和大小。进而将具有确定的属性的网格几何单元彼此邻接充满地理区域。另外,可以按照预设网格划分规则对由网格几何单元彼此邻接组成的地理区域进行划分,得到至少两个网格。预设网格划分规则也可以基于网格内要执行的任务确定。例如,可以认为配送行业的骑手的配送范围在一个网格内,骑手执行配送业务时的预设网格划分规则可以是根据压力测试结果、天气情况等确定的。例如,当压力测试结果表示地理区域内的配送压力增大或天气恶劣时,可以将网格划分规则预设为将网格划分得较小,以使配送压力较小。当然,网格划分规则可以根据业务按照各种标准设置,本公开在此不作赘述。在一个示例中,用于配送任务的网格可以覆盖多个商圈,而且网格几何单元最好不要跨越这些商圈之间的天然屏障,这样有利于将天然屏障划分为独立的网格,而又不会与其他网格之间出现缝隙。但是网格几何单元也不能无限的小,因为随着网格几何单元缩小,一定地理区域内网格几何单元的数据量也就增多,对网格几何单元的存储也就变得困难。在一个示例中,由于河流一般比车道宽,所以主要参考双向四车道的公路。双向四车道公路每侧车道(两条车道)宽度是7.5米。这里为了便于计算,可以取网格几何单元半径r为7米,即,网格几何单元的直径可以基本覆盖一条四车道公路的宽度。因此,可以通过用多个网格几何单元在地理区域上构成该公路,并且使得骑手的配送范围避开该公路所在网格几何单元,或者不跨越该公路所在网格几何单元。在一个实施例中,网格几何单元的属性信息包括网格几何单元的形状和大小。因此,可以根据例如双向四车道公路的宽度之类的地理区域的特征确定网格几何单元的形状和大小,例如,半径为7米的正六边形。基于此,在配送业务中,可以通过指定公路、河流等障碍物上的网格几何单元来组成“非配送网格”,可以指定其他的网格几何单元组成不会妨碍配送的“配送网格”。在此情况下,地理区域内的各个网格之间不会存在缝隙,有利于基于网格的配送业务的进行。在本公开的实施例中,网格几何单元的“半径”的表述并不表示网格几何单元必须为圆形,“半径”仅用于指代是网格几何单元的中心点到边缘的距离。网格几何单元可以是任意形状。在一个实施例中,网格几何单元为正多边形。在一个实施例中,网格几何单元的形状可以为正三角形、正方形、正五边形、正六边形等。本领域技术人员可以理解的是,采用正多边形的网格几何单元来组建网格可以降低计算量和组建难度。在一个实施例中,网格几何单元的“半径”可以是正多边形的中心点到顶点的距离。在另一个实施例中,网格几何单元可以不是正多边形。在本公开的实施例中,网格几何单元的形状和大小相同并彼此邻接可以使得由多个网格几何单元所构建的网格能够被容易的限定形状。在一个实施例中,由多个同样形状和大小且边重合的正多边形网格几何单元所组建的网格中没有缝隙,能够被清楚的定义,有利于基于网格的业务的进行。在本公开的实施例中,生成网格几何单元的网格几何单元标识和网格的网格标识,使得基于形状和大小相同并彼此邻接的网格几何单元组建的网格能够被清楚地标识。在一个实施例中,网格几何单元标识可以是字母、数字、特殊符号中的任一种或其组合。在一个实施例中,网格标识可以是字母、数字、特殊符号中的任一种或其组合。在本公开的实施例中,基于网格几何单元的网格几何单元标识和网格的网格标识,建立至少一个网格几何单元与由所述至少一个网格几何单元组建的网格的对应关系指的是:由于一个网格由至少一个网格几何单元组建,因此,组建一个网格的至少一个网格几何单元的网格几何单元标识与该网格的网格标识存在对应关系。当建立了这样的对应关系时,就可以基于网格几何单元的存在来建立地理区域内的网格。在本公开实施方式中,通过确定模块,被配置为根据地理区域的特征确定网格几何单元的属性信息,将网格几何单元彼此邻接充满地理区域;划分模块,被配置为按照预设网格划分规则对由网格几何单元彼此邻接组成的地理区域进行划分,得到至少两个网格;生成模块,被配置为生成网格几何单元的网格几何单元标识和网格的网格标识;建立模块,被配置为基于网格几何单元的网格几何单元标识和网格的网格标识,建立网格几何单元与网格的对应关系,从而省去了人工选点组建网格的繁琐操作,只要选取覆盖网格范围的至少一个网格几何单元,即可组建网格,提高了组建网格效率,省去了很多人工成本。而且,每个网格几何单元都相邻,从而解决了网格存在缝隙的问题,为业务百分之百覆盖提供了解决方案。图6示出根据图5所示的网格建立装置中的生成模块503的结构框图。如图6所示,生成模块503包括选择子模块601、第一生成子模块602和第二生成子模块603。选择子模块601被配置为选择地理区域内的任一点作为原点建立坐标系。第一生成子模块602被配置为根据网格几何单元的中心点在坐标系中的坐标生成网格几何单元的网格几何单元标识。第二生成子模块603被配置为根据预设网格标识生成规则生成网格的网格标识。在一个实施例中,可以通过将网格几何单元放置在一个位于地理区域内的坐标系中来确定网格几何单元的坐标,进而基于网格几何单元的坐标生成网格几何单元的网格几何单元标识。在一个实施例中,可以根据网格几何单元的中心点在坐标系中的坐标来生成网格几何单元的网格几何单元标识。在一个实施例中,坐标系为平面直角坐标系。平面直角坐标系中的坐标指的是平面直角坐标系中的一个数对,用(x,y)表示,可以比较方便地用于生成网格几何单元的网格几何单元标识。在一个实施例中,正多边形的网格几何单元在坐标系中的位置可以被容易地确定,其中心点的坐标可以用于生成网格几何单元的网格几何单元标识。在一个实施例中,在由至少一个正多边形网格几何单元组建的网格中,以中心点位于坐标系原点的网格几何单元为基准网格几何单元,按照相邻网格几何单元的边重合的规则,基于基准网格几何单元形成多个网格几何单元,并充满所述网格。中心点位于坐标系原点的网格几何单元为基准网格几何单元,可以比较容易地基于此基准网格几何单元的坐标计算与其相邻的网格几何单元的坐标。在一个实施例中,当中心点位于平面直角坐标系原点的网格几何单元为基准网格几何单元时,可以比较容易地基于此基准网格几何单元的坐标计算与其相邻的网格几何单元的坐标。预设网格标识生成规则可以是递增规则,例如,第一个网格的网格标识是0001,第二个网格的网格标识是0002,以此类推。当然,网格标识生成规则不限于此,可以采用各种规则,本公开在此不作赘述。在一个实施例中,正多边形为正六边形。在一个示例中,正六边形的网格几何单元可以如图8所示。在该示例中,正六边形的网格几何单元位于一个平面直角坐标系中。在该示例中,网格几何单元使用一定大小的正6边形平面几何区域,例如,半径为7公里的正6边形平面几何区域。在一个实施例中,图6所示的选择子模块601可以被配置为:以地球上的经度和纬度均为0的点作为原点,以地球的经线和纬线分别作为横轴和纵轴来建立所述平面直角坐标系,或者以地理区域上的指定点作为原点,以指定点所在的经线和纬线分别作为横轴和纵轴来建立所述平面直角坐标系。在一个实施例中,图6所示的第一生成子模块602可以被配置为:根据网格几何单元的中心点的经度和纬度生成网格几何单元的网格几何单元标识。在一个实施例中,一个网格几何单元的中心与平面直角坐标系的原点重合。因此,可以将该网格几何单元作为基准网格几何单元,从而有利于基于此基准网格几何单元计算与之相邻的其他网格几何单元的中心点坐标,进而可以计算其他网格几何单元的中心点坐标。例如,可以首先选择地球经纬度均为0的坐标(0,0)作为坐标原点,以经度作为横轴(x轴),纬度作为竖轴(y轴),或者以经度作为竖轴(y轴),纬度作为横轴(x轴),以此构建坐标系。将一个网格几何单元的集合中心点与(0,0)点重合,网格几何单元的一个顶点在y轴上。以此网格几何单元为基准,以相邻网格几何单元的边长重合的规则,向外部不断延伸,将地理区域充满。在此示例中,根据以上网格几何单元的分布规则,每个网格几何单元的几何中心坐标也就被唯一确认。只要根据一定规则将网格几何单元的几何中心坐标编码成唯一的字符串(网格几何单元标识)即可。在一个实施例中,可以使用最简单的方式,直接将坐标的x值和y值使用一个连接符“_”拼接,作为dust_code。在一个实施例中,将网格几何单元简写为dust,“dust_code”是对网格几何单元几何中心坐标的编码,即,网格几何单元标识,用于唯一表示网格几何单元。在另一个示例中,可以首先选择地理区域中的地球经纬度为(x,y)的指定点作为坐标原点,以经度作为横轴(x轴),纬度作为竖轴(y轴),或者以经度作为竖轴(y轴),纬度作为横轴(x轴),以此构建坐标系。将一个网格几何单元的集合中心点与(x,y)点重合,网格几何单元的一个顶点在y轴上。以此网格几何单元为基准,以相邻网格几何单元的边长重合的规则,向外部不断延伸,将地理区域充满。在一个实施例中,可以基于网格几何单元的网格几何单元标识,即,dust_code,和网格的网格标识(也可称作网格id)建立至少一个网格几何单元与由至少一个网格几何单元组建的网格的对应关系。存储由网格几何单元组建的网格,也就是存储网格和网格几何单元的关系。网格和网格几何单元的关系是1:n的关系。当人工选择n个网格几何单元作为一个网格的区域时,计算出这n个网格几何单元的dust_code,并将这些dust_code和网格id(可以由系统生成,在此实施例中可以选用简单从1开始依次递增的规则生成)关系存储到数据库中。在一个实施例中,可以选择使用关系型数据库mysql存储对应关系,存储对应关系的数据表结构设计如下:字段类型允许null值含义备注grid_idbigint(20)否网格idauto_incrementdust_codevarchar(255)否dust编码需创建索引其中,grid_id是网格id,即网格的网格标识;dust_code是网格几何单元的几何中心坐标的编码,即网格几何单元标识。bigint和varchar是数据类型;auto_increment表示网格id依次递增的规则生成。而且,为了便于根据dust_code进行对网格查询,对dust_code字段创建索引。在本公开实施方式中,通过选择子模块,被配置为选择地理区域内的任一点作为原点建立坐标系;第一生成子模块,被配置为根据网格几何单元的中心点在坐标系中的坐标生成所述网格几何单元的网格几何单元标识;第二生成子模块,被配置为根据预设网格标识生成规则生成网格的网格标识,可以通过简单的方式根据网格几何单元的中心点在所述坐标系中的坐标生成该网格几何单元的网格几何单元标识并且生成网格的网格标识,便于建立至少一个网格几何单元与由所述至少一个网格几何单元组建的网格的对应关系,从而省去了人工选点组建网格的繁琐操作,只要选取覆盖网格范围的至少一个网格几何单元,即可组建网格,提高了组建网格效率,省去了很多人工成本。而且,每个网格几何单元都相邻,从而解决了网格存在缝隙的问题,为业务百分之百覆盖提供了解决方案。在一个实施例中,根据所述至少一个网格几何单元的网格几何单元标识,查询所述至少一个网格几何单元所在的网格。在一个实施例中,可以基于至少一个网格几何单元与由所述至少一个网格几何单元组建的网格的对应关系来查询所述至少一个网格几何单元所在的网格。在一个示例中,以图9所示的示例中的网格几何单元(正六边形)作为例子来对如何查询所述至少一个网格几何单元所在的网格进行说明。以下参照图3和图4进一步描述根据本公开的实施方式的网格建立方法在配送领域的应用。图7示出根据本公开另一实施方式的配送装置的结构框图。如图7所示的配送装置针对由按照图1、图2和图9所述的方法所组成的地理区域进行工作。该配送装置包括第一获取模块701和第二获取模块702。第一获取模块701被配置为获取订单的位置信息,根据位置信息确定订单对应的目标网格。第二获取模块702被配置为获取目标网格对应的目标骑手,将订单的订单信息发送至目标骑手。在本公开的一个实施方式中,获取订单的位置信息,例如,经纬度信息。根据订单的经纬度信息确定订单对应的目标网格,即,可以确定与订单的经纬度信息对应的网格的网格标识。例如,可以获取与网格的网格标识对应的骑手的经纬度信息以确定目标网格对应的目标骑手,并且将订单信息发送至目标骑手。图8示出根据图7所示的网格建立方法中的第一获取模块701的结构框图。如图8所示,第一获取模块701包括确定子模块801和获取子模块802。确定子模块801被配置为根据位置信息确定订单所在的网格几何单元;获取子模块802被配置为获取网格几何单元的网格几何单元标识,根据网格几何单元标识确定订单对应的目标网格。在本公开的一个实施例中,可以根据订单的经纬度信息确定订单所在的网格几何单元的网格几何单元的几何中心坐标。根据网格几何单元中心坐标确定网格几何单元标识,根据订单的网格几何单元标识确定对应的目标网格的网格标识。在本公开实施方式中,通过第一获取模块,被配置为获取订单的位置信息,根据位置信息确定订单对应的目标网格;第二获取模块,被配置为获取目标网格对应的目标骑手,将订单的订单信息发送至目标骑手,可以使得订单的位置不会落入网格间的缝隙,提升了服务质量以及用户体验。以上描述了网格建立装置的内部功能和结构,在一个可能的设计中,该网格建立装置的结构可实现为网格建立设备,如图10中所示,该处理设备1000可以包括处理器1001以及存储器1002。所述存储器1002用于存储支持网格建立装置执行上述任一实施例中网格建立方法的程序,所述处理器1001被配置为用于执行所述存储器1002中存储的程序。所述存储器1002用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器1001执行。所述处理器1001用于执行前述各方法步骤中的全部或部分步骤。其中,所述网格建立设备的结构中还可以包括通信接口,用于网格建立设备与其他设备或通信网络通信。本公开示例性实施例还提供了一种计算机存储介质,用于储存所述网格建立装置所用的计算机软件指令,其包含用于执行上述任一实施例中网格建立方法所涉及的程序。图11是适于用来实现根据本公开一实施方式的网格建立方法的计算机装置的结构示意图。如图11所示,计算机装置1100包括中央处理单元(cpu)1101,其可以根据存储在只读存储器(rom)1102中的程序或者从存储部分1108加载到随机访问存储器(ram)1103中的程序而执行上述图1所示的实施方式中的各种处理。在ram1103中,还存储有装置1100操作所需的各种程序和数据。cpu1101、rom1102以及ram1103通过总线1104彼此相连。输入/输出(i/o)接口1105也连接至总线1104。以下部件连接至i/o接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至i/o接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。特别地,根据本公开的实施方式,上文参考图1描述的方法可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,所述计算机程序包含用于执行图1的数据处理方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。另外,图10所示的网格建立装置的结构还可以用于实现配送装置。以上描述了配送装置的内部功能和结构,在一个可能的设计中,该配送装置的结构可实现为配送设备,如图10中所示,该处理设备1000可以包括处理器1001以及存储器1002。所述存储器1002用于存储支持配送装置执行上述任一实施例中配送方法的程序,所述处理器1001被配置为用于执行所述存储器1002中存储的程序。所述存储器1002用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器1001执行。所述处理器1001用于执行前述各方法步骤中的全部或部分步骤。其中,所述配送设备的结构中还可以包括通信接口,用于配送设备与其他设备或通信网络通信。本公开示例性实施例还提供了一种计算机存储介质,用于储存所述配送装置所用的计算机软件指令,其包含用于执行上述任一实施例中配送方法所涉及的程序。另外,图11所示的计算机装置1100的结构还可以用于实现配送装置。图11是适于用来实现根据本公开一实施方式的配送方法的计算机装置的结构示意图。如图11所示,计算机装置1100包括中央处理单元(cpu)1101,其可以根据存储在只读存储器(rom)1102中的程序或者从存储部分1108加载到随机访问存储器(ram)1103中的程序而执行上述图1所示的实施方式中的各种处理。在ram1103中,还存储有装置1100操作所需的各种程序和数据。cpu1101、rom1102以及ram1103通过总线1104彼此相连。输入/输出(i/o)接口1105也连接至总线1104。以下部件连接至i/o接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至i/o接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。特别地,根据本公开的实施方式,上文参考图1描述的方法可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,所述计算机程序包含用于执行图1的数据处理方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。附图中的流程图和框图,图示了按照本公开各种实施方式的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,路程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。描述于本公开实施方式中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。作为另一方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施方式中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本公开的方法。以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1