掌桥专利:专业的专利平台
掌桥专利
首页

末端码取值的优化方法、装置、设备及存储介质

文献发布时间:2024-04-18 19:59:31


末端码取值的优化方法、装置、设备及存储介质

技术领域

本发明涉及随机计算技术领域,尤其涉及一种末端码取值的优化方法、装置、设备及存储介质。

背景技术

传统的纸质面单与电子面单派件联都可以撕下来方便快递员进行签收操作与联系客户,而一联单则不行,由于粘力强,很难从货物上撕下来,即便勉强撕下来,也会损坏外包装,而且很费时费力,因此,应一联单后台的要求,纸质面单不用再撕下来了,因传统的纸质面单与电子面单已逐步被一联单代替,一联单不只是模板样式的调整,更是有带三段码的一联单。

目前市场快递面单的后台管理作业流程系统已经无法适应带有三段码的一联单面单,但是三段码容易缺失或者逻辑更改较为麻烦,如何对三段码进行管理是现阶段丞待解决的技术问题。

因此,现有技术还有待于改进和发展。

发明内容

本发明的主要目的在于解决现有技术目前市场快递面单的后台管理作业流程系统无法适应带有三段码的一联单面单的问题。

本发明第一方面提供了一种末端码取值的优化方法、装置、设备及存储介质,该方法包括:获取物流订单的物流订单信息;基于Las Vegas随机算法,根据所述物流订单信息计算得到所述物流订单的三段码;基于决策树分类算法对所述物流订单的三段码进行分析,得到易于识别的三段码和不易识别的三段码;若所述三段码为便于识别的三段码,则调整所述Las Vegas随机算法的参数,并沿用所述参数对末端码进行随机计算取值。

可选的,在本发明第一方面的第一种实现方式中,所述获取物流订单信息的步骤包括:通过第一算法获取历史订单数据;通过第二算法训练所述历史订单数据中对应的历史签收数据,形成历史签收结果集,将所述历史签收结果集以键值对的形式进行存储;更新所述历史签收数据,同步到所述物流订单信息中,并获取更新后的物流订单信息。

可选的,在本发明第一方面的第二种实现方式中,所述将所述历史签收结果集以键值对的形式进行存储的步骤包括:将目的区划和结构化地址存储为键;根据所述第二算法的计算规则,将签收网点、与所述签收网点对应的签收次数以及最后一次签收的网点存储为与所述键对应的值信息。

可选的,在本发明第一方面的第三种实现方式中,所述更新所述历史签收数据的步骤包括:若所述历史订单数据对应的始发区划和目的区划在所述历史签收结果集中无对应的键时,则创建新的键;若所述历史订单数据中在所述历史签收结果集中存在对应的键时,则更新所述键对应的值信息;根据历史网点信息、业务员信息、历史第一段码、历史第二段码和历史第三段码,形成历史地址的三段码。

可选的,在本发明第一方面的第四种实现方式中,所述基于决策树分类算法对所述物流订单的三段码进行分析,获取易于识别的三段码和不易识别的三段码的步骤包括:基于决策树分类算法检查附加服务列表中是否存在新代码块;若不存在所述新代码块,则驿站码的取值逻辑为,使用第一分隔符对三段码进行分隔,取所述第一分隔符前的部分作为三段码,并舍去末端码;若存在所述新代码块,则判断所述新代码块中的值信息是否为空值,以及所述新代码块中的值信息是否使用所述第一分隔符进行分隔;若所述新代码块中的值信息为空值,和/或所述新代码块中的值信息中不包括所述第一分隔符,则不对所述新代码块进行处理,则驿站码的取值逻辑为,使用第一分隔符对三段码进行分隔,取所述第一分隔符前的部分作为三段码,并舍去末端码;若所述新代码块中的值信息为非空值且所述新代码块中的值信息使用所述第一分隔符进行分隔,则取所述第一分隔符前的内容为驿站码,取所述第一分隔符后的内容为末端码;对使用第一分隔符取值后的三段码进行分析,并判断所述三段码为易于识别的三段码或不易识别的三段码。

可选的,在本发明第一方面的第五种实现方式中,所述若所述三段码为便于识别的三段码,则调整Las Vegas随机算法的参数,并沿用所述参数对末端码进行随机计算取值的步骤包括:对所述三段码进行分析,若判断所述三段码为便于识别的三段码,则通过调整Las Vegas随机算法的参数,进行迭代优化;记录每次迭代的参数设置,选择最优的参数并沿用所述参数对末端码进行随机计算取值。

可选的,在本发明第一方面的第六种实现方式中,所述沿用所述参数对末端码进行随机计算取值的步骤包括:若分拣详情中四段码为空值,则将驿站码从三段码中拆分,对所述驿站码进行取值;若分拣详情中终点代码名称为空值,则不对末端码进行取值;若第一扩展字段中第二个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;若第一扩展字段中第四个第二分隔符前为末端码,且所述末端码为空值,则不对所述末端码进行取值;若第二扩展字段中第五个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;若所述第二扩展字段中第三个第二分隔符前为末端码,且所述末端码为空值,则不对所述末端码进行取值;若第三扩展字段中第一个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;所述三段码的取值逻辑不进行改动,若所述三段码中存在第一分隔符,取所述第一分隔符前的内容作为三段码。

本发明第二方面提供了一种末端码取值的优化装置,包括:获取模块,用于获取物流订单的物流订单信息;计算模块,用于基于Las Vegas随机算法,根据所述物流订单信息计算得到所述物流订单的三段码;处理模块,用于基于决策树分类算法对所述物流订单的三段码进行分析,得到易于识别的三段码和不易识别的三段码;取值模块,用于若所述三段码为便于识别的三段码,则调整所述Las Vegas随机算法的参数,并沿用所述参数对末端码进行随机计算取值。

可选的,在本发明第二方面的第一种实现方式中,所述获取模块包括:第一获取单元,用于通过第一算法获取历史订单数据;第二获取单元,用于通过第二算法训练所述历史订单数据中对应的历史签收数据,形成历史签收结果集,将所述历史签收结果集以键值对的形式进行存储;更新单元,用于更新所述历史签收数据,同步到所述物流订单信息中,并获取更新后的物流订单信息。

可选的,在本发明第二方面的第二种实现方式中,所述第二获取单元包括:键处理子单元,用于将目的区划和结构化地址存储为键;值信息处理子单元,用于根据所述第二算法的计算规则,将签收网点、与所述签收网点对应的签收次数以及最后一次签收的网点存储为与所述键对应的值信息。

可选的,在本发明第二方面的第三种实现方式中,所述更新单元包括:键更新单元,用于若所述历史订单数据对应的始发区划和目的区划在所述历史签收结果集中无对应的键时,则创建新的键;值信息更新单元,用于若所述历史订单数据中在所述历史签收结果集中存在对应的键时,则更新所述键对应的值信息;三段码处理单元,用于根据历史网点信息、业务员信息、历史第一段码、历史第二段码和历史第三段码,形成历史地址的三段码。

可选的,在本发明第二方面的第四种实现方式中,所述处理模块包括:第一判断单元,用于基于决策树分类算法检查附加服务列表中是否存在新代码块;第一取值单元,用于若不存在所述新代码块,则驿站码的取值逻辑为,使用第一分隔符对三段码进行分隔,取所述第一分隔符前的部分作为三段码,并舍去末端码;第二判断单元,用于若存在所述新代码块,则判断所述新代码块中的值信息是否为空值,以及所述新代码块中的值信息是否使用所述第一分隔符进行分隔;第二取值单元,用于若所述新代码块中的值信息为空值,和/或所述新代码块中的值信息中不包括所述第一分隔符,则不对所述新代码块进行处理,则驿站码的取值逻辑为,使用第一分隔符对三段码进行分隔,取所述第一分隔符前的部分作为三段码,并舍去末端码;第三取值单元,用于若所述新代码块中的值信息为非空值且所述新代码块中的值信息使用所述第一分隔符进行分隔,则取所述第一分隔符前的内容为驿站码,取所述第一分隔符后的内容为末端码;第三判断单元,用于对使用第一分隔符取值后的三段码进行分析,并判断所述三段码为易于识别的三段码或不易识别的三段码。

可选的,在本发明第二方面的第五种实现方式中,所述取值模块包括:迭代单元,用于对所述三段码进行分析,若判断所述三段码为便于识别的三段码,则通过调整LasVegas随机算法的参数,进行迭代优化;取值单元,用于记录每次迭代的参数设置,选择最优的参数并沿用所述参数对末端码进行随机计算取值。

可选的,在本发明第二方面的第六种实现方式中,所述取值单元包括:第四取值子单元,用于若分拣详情中四段码为空值,则将驿站码从三段码中拆分,对所述驿站码进行取值;若分拣详情中终点代码名称为空值,则不对末端码进行取值;第五取值子单元,用于若第一扩展字段中第二个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;若第一扩展字段中第四个第二分隔符前为末端码,且所述末端码为空值,则不对所述末端码进行取值;第六取值子单元,用于若第二扩展字段中第五个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;若所述第二扩展字段中第三个第二分隔符前为末端码,且所述末端码为空值,则不对所述末端码进行取值;第七取值子单元,用于若第三扩展字段中第一个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;第八取值子单元,用于所述三段码的取值逻辑不进行改动,若所述三段码中存在第一分隔符,取所述第一分隔符前的内容作为三段码。

本发明第三方面提供了一种末端码取值的优化设备,包括:存储器和至少一个处理器,所述存储器中存储有计算机可读指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述计算机可读指令,以使得所述物流订单自动配载调度设备执行如上所述末端码取值的优化方法的各个步骤。

本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可读指令,当其在计算机上运行时,使得计算机执行如上所述末端码取值的优化方法的各个步骤。

有益效果:本发明的技术方案中,通过获取系统中的物流订单信息,取物流订单信息至少包括物流订单下单来源信息,物流订单寄件地址信息、物流订单收件地址信息,基于Las Vegas随机算法,根据物流订单信息的具体进行对三段码进行计算,获得该物流订单的三段码,基于决策树分类算法通过对所有的物流订单三段码进行分析,得到便于识别的三段码和不易识别的三段码,若为便于识别的三段码,则调整Las Vegas随机算法的参数,后续都利用该参数进行随机计算。本发明提供的是一种末端码取值的优化方法,通过对三段码分类识别,提升三段码的识别效率,优化末端码的取值同时提升物流订单的揽派件效率和用户体验度。

附图说明

图1为本发明实施例提供的优化末端码的取值方法的第一种流程图;

图2为本发明实施例提供的优化末端码的取值方法的第二种流程图;

图3为本发明实施例提供的优化末端码的取值方法的第三种流程图;

图4为本发明实施例提供的优化末端码的取值方法的第四种流程图;

图5为本发明实施例提供的优化末端码的取值方法的第五种流程图;

图6为本发明实施例提供的优化末端码的取值装置的一种结构示意图;

图7为本发明实施例提供的优化末端码的取值装置的另一种结构示意图;

图8为本发明实施例提供的优化末端码的取值设备的结构示意图。

具体实施方式

本发明实施例提供了一种末端码取值的优化方法、装置、设备及存储介质,获取物流订单的物流订单信息;基于Las Vegas随机算法,根据所述物流订单信息计算得到所述物流订单的三段码;基于决策树分类算法对所述物流订单的三段码进行分析,得到易于识别的三段码和不易识别的三段码;若所述三段码为便于识别的三段码,则调整所述Las Vegas随机算法的参数,并沿用所述参数对末端码进行随机计算取值。本发明解决了因传统的纸质面单与电子面单已逐步被一联单代替,一联单不只是模板样式的调整,更有带三段码的一联单,目前的市场快递面单的后台管理作业流程系统已经无法适应的问题。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中末端码取值的优化方法的第一个实施例包括:

S101、获取物流订单的物流订单信息;

在本实施例中,所述物流订单信息应至少包括物流订单下单来源信息、物流订单寄件地址信息和物流订单收件地址信息,但不限于此,这些信息将用于后续步骤的处理。

所述物流订单通常是由物流管理系统或信息系统自动完成,从客户下单到配送,系统化地管理和跟踪包裹的每一个阶段,以确保高效和准确的物流服务。

作为举例,物流订单信息的生成通常始于客户的下单行为,客户可以通过快递的官方网站、手机应用程序、电话或前往快递网点进行下单,客户在下单时通常需要提供的信息包括寄件地址、收件地址、包裹信息等;客户提供的下单信息将被输入到快递的系统中,基于客户提供的信息,快递的物流管理系统将生成物流订单,这个订单包括所有必要的信息,如物流订单下单来源信息、物流订单寄件地址信息、物流订单收件地址信息、寄件人、收件人、包裹信息、订单编号等,但不限于此。

S102、基于Las Vegas随机算法,根据所述物流订单信息计算得到所述物流订单的三段码;

在本实施例中,使用Las Vegas随机算法,根据物流订单信息计算出物流订单的三段码,Las Vegas随机算法是一种随机算法,因此生成的三段码具有随机性,Las Vegas算法是一种概率算法,它的特点是在有限的时间内总是能够给出正确的结果,但运行时间是随机的,并且可能会在不同运行中产生不同的运行时间,与另一种概率算法Monte Carlo算法不同,Las Vegas算法的主要优点是它们通常能够在解决难题时提供可接受的性能,并且它们提供了输出结果的正确性保证,因此基于Las Vegas随机算法,可以保证得到的物流订单三段码的可靠性。

作为举例,首先,从物流订单中获取必要的信息,Las Vegas算法在这一步骤中用于计算订单的三段码,使用预设的规则分析订单信息,以确定三段码的组成部分,生成三段码,并确保它们是唯一的,所述规则可以是地址分隔符规则:根据地址中使用的分隔符来分割地址信息,以确定三段码的组成部分。例如,可以使用逗号、斜杠、短横线等分隔符;地址元素规则:根据地址中特定元素的存在来确定三段码的内容。例如,可以检查地址中是否包含"街道"、"路"、"大厦"等关键词,并将它们包括在三段码中;以及其他自定义规则来适应不同的三段码使用需求。三段码用于标识订单的不同部分,将三段码与订单关联,以便后续处理和跟踪。

S103、基于决策树分类算法对所述物流订单的三段码进行分析,得到易于识别的三段码和不易识别的三段码;

在本实施例中,所述三段码是否为易于识别的三段码需要经过决策树分类算法进行分析。具体来讲,假设输入的数据集包含物流订单的三段码和是否易于识别的标签,使用决策树分类算法来构建一个模型,根据三段码的特征来判断其易识别性,可以根据三段码的长度、字符类型、特定字符的出现等特征来构建决策树模型。

作为举例,例如某个三段码的长度小于等于3且只包含数字,则可以判断为易于识别;如果长度大于3或包含其他字符,则判断为不易识别。通过这个决策树模型,可以对新的物流订单的三段码进行预测,并判断其易识别性,例如,对于三段码为"987"的订单,根据决策树模型,可以判断其易于识别。

S104、若所述三段码为便于识别的三段码,则调整所述Las Vegas随机算法的参数,并沿用所述参数对末端码进行随机计算取值;

在本实施例中,将使用Las Vegas算法来优化物流公司的物流订单处理,特别是关于末端码(terminalCode)的取值,Las Vegas算法在这个场景中用于确定末端码的取值方式,这是一个概率性问题,因为在一些情况下,可能有多种合理的末端码取值方法,LasVegas算法的随机性可用于选择末端码取值的参数,根据需求调整Las Vegas随机算法的参数,以生成符合要求的末端码,优化处理流程。

作为举例,可以根据易于识别的三段码集合,调整Las Vegas随机算法的参数,以方便进行末端码的取值。具体的参数调整方式可以根据实际需求进行设计,例如增加易于识别的字符或数字的权重、限制末端码长度等,调整Las Vegas随机算法的参数,使其在生成末端码时更倾向于选择易于识别的字符或数字,例如,可以增加数字1和2的权重,使其更有可能出现在末端码中。

本实施例提供的是一种末端码取值的优化方法,通过Las Vegas随机算法,根据物流订单信息的具体进行对三段码进行计算,获得该物流订单的三段码;基于决策树分类算法通过对所有的物流订单三段码进行分析,得到便于识别的三段码和不易识别的三段码;若为便于识别的三段码,则调整Las Vegas随机算法的参数,后续都利用该参数进行随机计算,从而提升三段码的识别效率,同时提升物流订单的揽派件效率和用户体验度。

请参阅图2,本发明实施例中末端码取值的优化方法的第二个实施例包括:

S201、通过第一算法获取历史订单数据;

S202、通过第二算法训练所述历史订单数据中对应的历史签收数据,形成历史签收结果集,将所述历史签收结果集以键值对的形式进行存储;

S203、更新所述历史签收数据,同步到所述物流订单信息中,并获取更新后的物流订单信息。

在本实施例中,所述第一算法可以是用csv.reader算法从云盘数据中提取历史订单数据,csv模块可以用于读写csv文件,其中reader适用于兼容Excel的方式输出数据文件,在读取时无需知道Excel所采用的csv格式细节就可以使用,兼容性强。假设有一个历史订单数据文件,包含多个订单信息,其中一个订单的单号为A。通过csv.reader算法从云盘中提取历史订单数据。在扫描表中获取订单A的扫描信息,发现其目的地址是上海青浦区盈港东路123号,签收网点是200230。

在本实施例中,所述将所述历史签收结果集以键值对的形式进行存储的步骤包括:将目的区划和结构化地址存储为键;根据所述第二算法的计算规则,将签收网点、与所述签收网点对应的签收次数以及最后一次签收的网点存储为与所述键对应的值信息。

在本实施例中,所述第二算法可以是使用地址归集引擎训练算法,训练历史订单数据,即当天正常的签收数据,将其应用于订单A,根据历史订单数据中的扫描信息和目的地址,使用地址归集引擎训练算法得到签收结果。这个算法可以根据目的区划和结构化地址找到对应的签收网点和签收次数或最后一次签收的网点。假设历史订单数据中有一条订单A的扫描信息,目的地址为北京市海淀区中关村大街123号,签收网点为中关村网点。使用地址归集引擎训练算法后,可以得到订单A的签收结果。将订单A的目的区划和结构化地址“海淀区中关村大街123号”作为key,签收网点“中关村网点”作为value,存储到历史签收结果集中。同样地,对于其他历史订单数据中的订单B、订单C等,也可以使用相同的方法训练得到对应的签收结果,并将这些结果以键值对的形式进行存储。最终形成的历史签收结果集是一个集合,其中每个元素都是一个键值对,键表示目的区划和结构化地址,值表示签收网点和签收次数或最后一次签收的网点,这个结果集可以用于后续的物流管理和分析。通过算法训练,可以准确地匹配历史订单数据中的目的地址和签收网点,从而获得准确的签收结果,提高物流数据的准确性,减少错误和偏差,历史签收结果集可以为物流公司提供大量的数据,可以进行数据分析和挖掘,这些数据可以用于制定策略和决策,例如优化配送范围、改进运输方式等,以提升整体运营效率和客户满意度。

例如,物流公司使用系统来管理他们的物流订单信息以及与之相关的签收数据。当一个订单被送达并签收后,这个信息将被记录在历史签收数据中。现在,有一个新的订单被创建并分配给一个司机进行配送。司机成功将货物送达给客户,并客户签收了货物。司机将签收信息输入系统,系统会将这个签收信息与订单进行匹配并记录在历史签收数据中。在这个过程中,系统还会更新物流订单信息中的签收状态和相关信息。例如,订单的状态将从“配送中”改变为“已签收”,签收时间和签收人的信息也被更新。这样,物流订单信息中的签收状态将反映实际的签收情况。通过这种方式,物流公司可以通过同步历史签收数据和物流订单信息来确保订单的准确性和完整性,并能够随时获取最新的物流订单信息,包括签收状态和相关信息。这对于物流跟踪和客户服务非常重要,可以提供实时的签收信息,满足客户的需求。

在本实施例中,若所述历史订单数据对应的始发区划和目的区划在所述历史签收结果集中无对应的键时,则创建新的键;若所述历史订单数据中在所述历史签收结果集中存在对应的键时,则更新所述键对应的值信息;根据历史网点信息、业务员信息、历史第一段码、历史第二段码和历史第三段码,形成历史地址的三段码。例如,系统首先检查历史订单数据的始发区和目的区划是否在历史签收结果集中存在。如果不存在,系统就会创建新的键。例如,如果一个订单从“北京市朝阳区”发往“上海市浦东新区”,而这个区划在历史签收结果集中没有出现过,那么系统就会创建一个新的键,键值为“北京市朝阳区”和“上海市浦东新区”。然后系统会检查历史订单数据中的区划是否在历史签收结果集中存在。如果存在,系统就会更新该键对应的值信息。例如,如果一个订单从“北京市朝阳区”发往“上海市浦东新区”,而在历史签收结果集中已经存在这个区划的键,那么系统就会更新这个键对应的值信息,即更新签收状态、时间等信息。最后系统会根据历史网点信息、业务员信息以及历史第一段码、第二段码和第三段码等信息,形成历史地址的三段码。三段码的生成是为了方便对地址进行分段管理和查询。例如,“北京市朝阳区”可以表示为“北京朝阳001”,“北京市朝阳区麦子店街道”可以表示为“北京朝阳001麦子店001”,这样就可以快速定位到具体的街道或网点,历史签收数据的更新可以保持数据的同步,以及快件的运送派送的信息、人员的同步,保证数据一致性。通过以上步骤,可以实现历史签收数据的更新。这种更新机制可以保持数据的同步性,保证快件的运送、派送信息以及人员的同步性,并确保数据的一致性。例如,当一个快件从“北京市朝阳区”发往“上海市浦东新区”并被签收后,这个信息会立即更新到系统中,系统会创建一个新的键值对,并更新原有的键值对信息,这样,无论是查询还是统计,都可以得到最新的数据。

请参阅图3,本发明实施例中末端码取值的优化方法的第三个实施例包括:

S301、基于决策树分类算法检查附加服务列表中是否存在新代码块;

S302、若不存在所述新代码块,则驿站码的取值逻辑为,使用第一分隔符对三段码进行分隔,取所述第一分隔符前的部分作为三段码,并舍去末端码;

S303、若存在所述新代码块,则判断所述新代码块中的值信息是否为空值,以及所述新代码块中的值信息是否使用所述第一分隔符进行分隔;

S304、若所述新代码块中的值信息为空值,和/或所述新代码块中的值信息中不包括所述第一分隔符,则不对所述新代码块进行处理,则驿站码的取值逻辑为,使用第一分隔符对三段码进行分隔,取所述第一分隔符前的部分作为三段码,并舍去末端码;

S305、若所述新代码块中的值信息为非空值且所述新代码块中的值信息使用所述第一分隔符进行分隔,则取所述第一分隔符前的内容为驿站码,取所述第一分隔符后的内容为末端码;

S306、对使用第一分隔符取值后的三段码进行分析,并判断所述三段码为易于识别的三段码或不易识别的三段码。

在本实施例中,需要基于决策树分类算法通过对所有的物流订单三段码进行分析,得到便于识别的三段码和不易识别的三段码,

例如在某平台系统中,首先检查附加服务列表(additionalServiceList)中是否存在"newBlockCode"的项。如果不存在新代码块"newBlockCode",则执行原逻辑取值:使用第一分隔符("-")将三段码进行分隔,取第一分隔符之前的部分作为三段码,并舍去末端码(terminalCode)。例如,如果原始三段码是"AAA-BBB-CCC",则三段码为"AAA",末端码为空。如果存在新代码块"newBlockCode",则判断其值信息是否为空且是否使用第一分隔符进行分隔。如果值信息为空值,或者值信息中不包含第一分隔符,则不对新代码块"newBlockCode"进行处理,执行原逻辑取值。例如,如果新代码块"newBlockCode"的值信息为空值或不包含"-",则三段码取值逻辑同原逻辑。如果新代码块"newBlockCode"的值信息非空且使用第一分隔符进行分隔,则取第一分隔符前的内容作为驿站码(postStationCode),取第一分隔符后的内容作为末端码(terminalCode)。例如,如果新代码块"newBlockCode"的值信息为"AAA-BBB",则驿站码为"AAA",末端码为"BBB"。对使用第一分隔符取值后的三段码进行分析,并判断其为易于识别的三段码或不易识别的三段码。假设物流订单中的三段码字段为"ABC-DEF-GHI",并且附加服务列表(additionalServiceList)中存在以下项:新代码块"newBlockCode"的值信息为"JKL-MNO",则驿站码为"JKL",末端码为"MNO"。最终易于识别的三段码为"ABC"。

请参阅图4,本发明实施例中末端码取值的优化方法的第四个实施例包括:

S401、对所述三段码进行分析,若判断所述三段码为便于识别的三段码,则通过调整Las Vegas随机算法的参数,进行迭代优化;

S402、记录每次迭代的参数设置,选择最优的参数并沿用所述参数对末端码进行随机计算取值。

在本实施例中,分析三段码首先对给定的三段码进行详细分析,以确定是否符合"便于识别"的标准。调整Las Vegas随机算法的参数,Las Vegas随机算法是一种具有随机性的算法,在每次迭代中使用随机数来决定计算结果。为了使其适应便于识别的三段码,可以调整算法中的参数,例如调整随机数的范围、数量或使用设定的分布情况,应用调整后的Las Vegas随机算法进行迭代优化,在每次迭代中,通过随机计算取值生成新的末端码,并根据特定的评估指标(例如距离、相似度等)对生成的结果进行评估,同时记录每次迭代中Las Vegas随机算法的参数设置,包括所使用的随机数范围、数量以及其他相关参数,便于选择最优的参数设置。在多次迭代后,根据评估指标选择表现最好的参数设置,选定最优参数后,使用这组参数对末端码进行随机计算取值,并生成最终的结果。假设要对一个三段码进行随机计算取值,并调整Las Vegas随机算法的参数,通过分析三段码发现这个三段码为便于识别的三段码,然后调整Las Vegas随机算法的参数,增加随机数的数量,并缩小随机数的范围,根据预设的评估指标,选择最优的参数设置,并在后续继续使用这组参数进行末端码的取值。

请参阅图5,本发明实施例中末端码取值的优化方法的第五个实施例包括:

S501、若分拣详情中四段码为空值,则将驿站码从三段码中拆分,对所述驿站码进行取值;若分拣详情中终点代码名称为空值,则不对末端码进行取值;

S502、若第一扩展字段中第二个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;若第一扩展字段中第四个第二分隔符前为末端码,且所述末端码为空值,则不对所述末端码进行取值;

S503、若第二扩展字段中第五个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;若所述第二扩展字段中第三个第二分隔符前为末端码,且所述末端码为空值,则不对所述末端码进行取值;

S504、若第三扩展字段中第一个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;

S505、所述三段码的取值逻辑不进行改动,若所述三段码中存在第一分隔符,取所述第一分隔符前的内容作为三段码。

在本实施例中,对于实施场景一,驿站码(postStationCode)取值:从分拣详情(sort_detail)中获取四段码(fourSectionCode),如果此字段为空值,则需要从三段码中拆分获取驿站码。末端码(terminalCode)取值:从分拣详情(sort_detail)中获取终点代码名称(endCodeName),如果此字段为空值,则不对末端码进行取值。假设一个物流订单的分拣详情和扩展字段数据中:sort_detail中的fourSectionCode字段为空值。sort_detail中的endCodeName字段为空值。postStationCode(驿站码)取值:从三段码中拆分,根据原有逻辑取值。terminalCode(末端码)取值:不进行取值,因为endCodeName字段为空值。

对于实施场景二,驿站码(postStationCode)取值:从第一扩展字段(extend_field3)中获取第二个第二分隔符即英文分号";"前的内容作为驿站码,如果此字段为空值,则需要从三段码中拆分获取驿站码。末端码(terminalCode)取值:从第一扩展字段(extend_field3)中获取第四个英文分号";"前的内容作为末端码,如果此字段为空值,则不对末端码进行取值。假设一个物流订单的分拣详情和扩展字段数据中:extend_field3中的第2个英文分号“;”前为空值。extend_field3中的第4个英文分号“;”前为末端码。postStationCode(驿站码)取值:从extend_field3中的第2个英文分号“;”前取值,如果该字段为空值,则从三段码中拆分,根据原有逻辑取值。terminalCode(末端码)取值:从extend_field3中的第4个英文分号“;”前取值,如果该字段为空值,则不进行取值。

对于实施场景三,驿站码(postStationCode)取值:从第二扩展字段(extend_field2)中获取第五个英文分号";"前的内容作为驿站码,如果此字段为空值,则需要从三段码中拆分获取驿站码。末端码(terminalCode)取值:从第二扩展字段(extend_field2)中获取第三个英文分号";"前的内容作为末端码,如果此字段为空值,则不对末端码进行取值。假设一个物流订单的分拣详情和扩展字段数据中:extend_field2中的第5个英文分号“;”前为驿站码。extend_field2中的第3个英文分号“;”前为空值。

postStationCode(驿站码)取值:从extend_field3中的第2个英文分号“;”前取值,如果该字段为空值,则从三段码中拆分,根据原有逻辑取值。terminalCode(末端码)取值:从extend_field3中的第4个英文分号“;”前取值,如果该字段为空值,则不进行取值。

对于实施场景四,驿站码(postStationCode)取值:从第三扩展字段(extend_field1)中获取第一个英文分号前的内容作为驿站码,如果英文分号前无值,则需要从三段码中拆分获取驿站码(原有逻辑)。末端码(terminalCode)取值:不论第三扩展字段中是否存在驿站码,都不对末端码进行取值。继续沿用三段码的取值逻辑,即如果三段码中包含"-",则取"-"前面的内容作为末端码。假设一个物流订单的分拣详情和扩展字段数据中:假设我们有一个物流订单的分拣详情和扩展字段数据如下:extend_field1字段为空值。三段码中包含“-”,需要取“-”前的内容作为三段码。

postStationCode(驿站码)取值:从extend_field1字段中,第一个英文分号前面的内容取值,如果该字段为空值,则从三段码中拆分,根据原有逻辑取值。terminalCode(末端码)取值:不进行取值,因为extend_field1字段为空值。

上面对本发明实施例中末端码取值的优化方法进行了描述,下面对本发明实施例中末端码取值的优化装置进行描述,请参阅图6,本发明实施例中末端码取值的优化方装置一个实施例包括:

获取模块50,用于获取物流订单的物流订单信息,所述物流订单信息包括物流订单下单来源信息、物流订单寄件地址信息和物流订单收件地址信息;

计算模块60,用于基于Las Vegas随机算法,根据所述物流订单信息计算得到所述物流订单的三段码;

处理模块70,用于基于决策树分类算法对所述物流订单的三段码进行分析,得到易于识别的三段码和不易识别的三段码;

取值模块80,用于若所述三段码为便于识别的三段码,则调整所述Las Vegas随机算法的参数,并沿用所述参数对末端码进行随机计算取值。

本实施例中,通过Las Vegas随机算法,根据物流订单信息的具体进行对三段码进行计算,获得该物流订单的三段码;基于决策树分类算法通过对所有的物流订单三段码进行分析,得到便于识别的三段码和不易识别的三段码;若为便于识别的三段码,则调整LasVegas随机算法的参数,后续都利用该参数进行随机计算,从而提升三段码的识别效率,同时提升物流订单的揽派件效率和用户体验度。

请参阅图7,本发明实施例中末端码取值的优化装置的另一个实施例包括:

获取模块50,用于获取物流订单的物流订单信息,所述物流订单信息包括物流订单下单来源信息、物流订单寄件地址信息和物流订单收件地址信息;

计算模块60,用于基于Las Vegas随机算法,根据所述物流订单信息计算得到所述物流订单的三段码;

处理模块70,用于基于决策树分类算法对所述物流订单的三段码进行分析,得到易于识别的三段码和不易识别的三段码;

取值模块80,用于若所述三段码为便于识别的三段码,则调整所述Las Vegas随机算法的参数,并沿用所述参数对末端码进行随机计算取值。

在本实施例中,所述获取模块50包括:

第一获取单元501,用于通过第一算法获取历史订单数据;

第二获取单元502,用于通过第二算法训练所述历史订单数据中对应的历史签收数据,形成历史签收结果集,将所述历史签收结果集以键值对的形式进行存储;

更新单元503,用于更新所述历史签收数据,同步到所述物流订单信息中,并获取更新后的物流订单信息。

在本实施例中,所述第二获取单元502还包括:

键处理子单元5021,用于将目的区划和结构化地址存储为键;

值信息处理子单元5022,用于根据所述第二算法的计算规则,将签收网点、与所述签收网点对应的签收次数以及最后一次签收的网点存储为与所述键对应的值信息。

在本实施例中,所述更新单元503还包括:

键更新子单元5031,用于若所述历史订单数据对应的始发区划和目的区划在所述历史签收结果集中无对应的键时,则创建新的键;

值信息更新子单元5032,用于若所述历史订单数据中在所述历史签收结果集中存在对应的键时,则更新所述键对应的值信息;三段码处理单元,用于根据历史网点信息、业务员信息、历史第一段码、历史第二段码和历史第三段码,形成历史地址的三段码。

在本实施例中,所述处理模块70包括:

第一判断单元701,用于基于决策树分类算法检查附加服务列表中是否存在新代码块;

第一取值单元702,用于若不存在所述新代码块,则驿站码的取值逻辑为,使用第一分隔符对三段码进行分隔,取所述第一分隔符前的部分作为三段码,并舍去末端码;

第二判断单元703,用于若存在所述新代码块,则判断所述新代码块中的值信息是否为空值,以及所述新代码块中的值信息是否使用所述第一分隔符进行分隔;

第二取值单元704,用于若所述新代码块中的值信息为空值,和/或所述新代码块中的值信息中不包括所述第一分隔符,则不对所述新代码块进行处理,则驿站码的取值逻辑为,使用第一分隔符对三段码进行分隔,取所述第一分隔符前的部分作为三段码,并舍去末端码;

第三取值单元705,用于若所述新代码块中的值信息为非空值且所述新代码块中的值信息使用所述第一分隔符进行分隔,则取所述第一分隔符前的内容为驿站码,取所述第一分隔符后的内容为末端码;

第三判断单元706,用于对使用第一分隔符取值后的三段码进行分析,并判断所述三段码为易于识别的三段码或不易识别的三段码。

在本实施例中,所述取值模块80包括:

迭代单元801,用于对所述三段码进行分析,若判断所述三段码为便于识别的三段码,则通过调整Las Vegas随机算法的参数,进行迭代优化;

取值单元802,用于记录每次迭代的参数设置,选择最优的参数并沿用所述参数对末端码进行随机计算取值。

在本实施例中,所述取值单元802还包括:

第四取值子单元8021,用于若分拣详情中四段码为空值,则将驿站码从三段码中拆分,对所述驿站码进行取值;若分拣详情中终点代码名称为空值,则不对末端码进行取值;

第五取值子单元8022,用于若第一扩展字段中第二个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;若第一扩展字段中第四个第二分隔符前为末端码,且所述末端码为空值,则不对所述末端码进行取值;

第六取值子单元8023,用于若第二扩展字段中第五个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;若所述第二扩展字段中第三个第二分隔符前为末端码,且所述末端码为空值,则不对所述末端码进行取值;

第七取值子单元8024,用于若第三扩展字段中第一个第二分隔符前为驿站码,且所述驿站码为空值,则将所述驿站码从三段码中拆分,对所述驿站码进行取值;

第八取值子单元8025,用于所述三段码的取值逻辑不进行改动,若所述三段码中存在第一分隔符,取所述第一分隔符前的内容作为三段码。

上面图6和图7从模块化功能实体的角度对本发明实施例中的末端码取值的优化装置进行详细描述,下面从硬件处理的角度对本发明实施例中末端码取值的优化设备进行详细描述。

图8是本发明实施例提供的一种末端码取值的优化设备的结构示意图,该末端码取值的优化设备10可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)11(例如,一个或一个以上处理器)和存储器12,一个或一个以上存储应用程序133或数据132的存储介质13(例如一个或一个以上海量存储设备)。其中,存储器12和存储介质13可以是短暂存储或持久存储。存储在存储介质13的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对末端码取值的优化设备10中的一系列指令操作。更进一步地,处理器11可以设置为与存储介质13通信,在末端码取值的优化设备10上执行存储介质13中的一系列指令操作。

末端码取值的优化设备10还可以包括一个或一个以上电源14,一个或一个以上有线或无线网络接口15,一个或一个以上输入输出接口16,和/或,一个或一个以上操作系统131,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图8示出的设备结构并不构成对末端码取值的优化设备10的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在计算机上运行时,使得计算机执行末端码取值的优化方法的步骤。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统或装置、单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 一种鱼腹式钢箱梁组装辅助装置及鱼腹式钢箱梁组装方法
  • 一种大截面钢箱梁拼装焊接装置及其使用方法
  • 一种大跨度无拉索变截面钢箱梁桥梁悬臂拼装的施工方法
技术分类

06120116516085