一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种路径规划方法及装置与流程

2022-12-06 22:27:40 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,尤其涉及一种路径规划方法及装置。


背景技术:

2.在金融行业中,押运公司会与多个的银行签订押运合同,在银行下属支行、分行或自助设备间进行现金、贵重金属以及重要凭证的押运,若分别进行押运,则会造成人力物力损失,因此需要押运公司对多个银行间的押运任务进行统一路径规划。
3.现有技术中,通常由押运公司的业务人员进行路径规划。但随着银行业开始实行区域化管理,路径规划所涉及的银行数量增多,使得路径规划的复杂程度进一步提高。在此基础上,人为路径规划将无法支撑未来的业务规模,同时,在临时插入押运任务后,人为路径规划无法进行全局调整。


技术实现要素:

4.有鉴于此,本发明实施例提供了一种路径规划方法及装置,通过所述方法可以进行高复杂程度的路径规划,同时能够在已规划好的线路中插入临时押运任务并进行全局调整。
5.第一方面,本发明实施例提供一种路径规划方法,所述方法包括:
6.获取押运任务组;
7.根据预设分类规则将所述押运任务组中的押运任务分为早尾箱任务组、晚尾箱任务组以及非尾箱任务组;
8.将所述早尾箱任务组中的早尾箱任务按照第一分配规则分配到各待分配线路;
9.将所述晚尾箱任务组中的晚尾箱任务分配到所述各待分配线路;
10.将所述非尾箱任务组中的非尾箱任务分配到所述各待分配线路;
11.其中,所述早尾箱任务组中的早尾箱任务与所述晚尾箱任务组中的晚尾箱任务对应;
12.其中,所述早尾箱任务为早上尾箱送款任务,所述晚尾箱任务为晚上尾箱接款任务。
13.进一步地,在获取押运任务组之前,还包括:
14.从任务数据库中获取全部押运任务;
15.根据预定分组规则,将所述全部押运任务分为多个押运任务组;
16.将各押运任务组中送达时间和网点均相同的押运任务进行合并;
17.其中,所述根据预定分组规则,将所述全部押运任务分为多个押运任务组包括:
18.根据押运任务的库房归属、网点所在区域或不同服务对象的押运任务合并规则中的至少一个将所述押运任务分为多个押运任务组。
19.进一步地,所述根据预设分类规则将所述押运任务组中的押运任务分为早尾箱任务组、晚尾箱任务组以及非尾箱任务组包括:
20.根据押运类别将所述押运任务组中的押运任务分为尾箱任务组以及所述非尾箱任务组;
21.根据押运属性将所述尾箱任务组中的押运任务分为所述早尾箱任务和所述晚尾箱任务;
22.将所述押运任务组中的押运任务形成数据集合;
23.其中,所述数据集合至少包括:各押运任务对应的网点、送达时间、库房归属、网点所在区域以及合并后的不同服务对象。
24.进一步地,所述将所述早尾箱任务组中的早尾箱任务按照第一分配规则分配到各线路包括:
25.以迭代方式执行如下步骤直至所述早尾箱任务组中的早尾箱任务全部分配完毕:
26.创建待分配线路;
27.根据第一分配规则将所述早尾箱任务分配到当前创建的所述待分配线路;
28.将已分配的早尾箱任务移出所述早尾箱任务组;
29.其中,所述根据第一分配规则将所述早尾箱任务分配到当前创建的所述待分配线路包括:
30.按送达时间的先后顺序从所述早尾箱任务组中选取至少一个早尾箱任务;
31.从选取的早尾箱任务中确定目标早尾箱任务;
32.响应于当前待分配线路为首次早尾箱任务任务分配,将所述目标早尾箱任务分配给当前待分配线路;
33.响应于当前待分配线路非首次早尾箱任务任务分配,且所述目标早尾箱任务网点到上一早尾箱任务网点所需路程时间小于所述目标早尾箱任务与上一早尾箱任务的送达时间差,将所述目标早尾箱任务分配给当前待分配线路;
34.其中,所述从选取的早尾箱任务中确定目标早尾箱任务包括:
35.响应于多个早尾箱任务被选取,且当前待分配线路没有分配任何早尾箱任务,将网点距离库房最远的早尾箱任务确定为所述目标早尾箱任务;
36.响应于多个早尾箱任务被选取,且当前待分配线路已被分配早尾箱任务,将网点距离上一早尾箱任务的网点最近的早尾箱任务确定为所述目标早尾箱任务。
37.进一步地,所述将所述晚尾箱任务组中的晚尾箱任务分配到所述各待分配线路包括:
38.以迭代方式执行如下步骤直至所述晚尾箱任务组中的晚尾箱任务全部分配完毕:
39.从已创建待分配线路中选取一条未进行过晚尾箱任务分配的待分配线路;
40.在所述晚尾箱任务组中选出与所述待分配线路中已分配早尾箱任务对应的晚尾箱任务;
41.将选出的晚尾箱任务按照送达时间的先后顺序分配到当前选取的所述待分配线路。
42.进一步地,所述将所述非尾箱任务组中的非尾箱任务分配到所述各待分配线路包括:
43.将所述非尾箱任务组中的非尾箱任务按照时限要求分为非尾箱时间点任务组和非尾箱时间段任务组;
44.将所述非尾箱时间点任务组中的非尾箱时间点任务分配到所述各待分配线路;
45.将所述非尾箱时间段任务组中的非尾箱时间段任务分配到所述各待分配线路。
46.进一步地,所述将所述非尾箱时间点任务组中的非尾箱时间点任务分配到所述各待分配线路包括:
47.以迭代方式执行如下步骤直至所述非尾箱时间点任务组中的非尾箱时间点任务全部分配完毕:
48.从已创建的待分配线路中选取一条未进行过非尾箱时间点任务分配的待分配线路,其中,若当前所有待分配线路均进行过非尾箱时间点任务分配,则创建一条新的待分配线路,选取新创建的待分配线路;
49.根据第二分配规则将所述非尾箱时间点任务分配到当前选取的所述待分配线路;
50.将已分配的非尾箱时间点任务移出所述非尾箱时间点任务组;
51.其中,所述根据第二分配规则将所述非尾箱时间点任务分配到当前选取的所述待分配线路包括:
52.按送达时间的先后顺序从所述非尾箱时间点任务组中选取至少一个非尾箱时间点任务;
53.从选取的非尾箱时间点任务中确定第一非尾箱时间点任务;
54.根据实际分配情况,将所述第一非尾箱时间点任务确定为目标非尾箱时间点任务;
55.响应于所述目标非尾箱时间点任务的送达时间在预设时刻之前,且不需要回库,将所述目标非尾箱时间点任务分配给当前待分配线路;
56.响应于所述目标非尾箱时间点任务需要回库,且在任务完成后到达库房的时间不超过预设时刻,将所述目标非尾箱时间点任务分配给当前待分配线路;
57.响应于所述目标非尾箱时间点任务的送达时间在预设时刻之后,且所述目标非尾箱时间点任务的网点到当前待分配线路中第一个晚尾箱任务的网点所需路程时间小于所述目标非尾箱时间点任务与所述第一个晚尾箱任务的送达时间差,将所述目标非尾箱时间点任务分配给当前待分配线路;
58.响应于所述目标非尾箱时间点任务的送达时间在预设时刻之后,且当前待分配线路中无晚尾箱任务,将所述目标非尾箱时间点任务分配给当前待分配线路;
59.其中,所述从选取的非尾箱时间点任务中确定第一非尾箱时间点任务包括:
60.响应于多个非尾箱时间点任务被选取,且当前待分配线路已被分配任何非尾箱时间点任务,将网点距离上一非尾箱时间点任务的网点最近的非尾箱时间点任务确定为所述第一非尾箱时间点任务;
61.响应于多个非尾箱时间点任务被选取,且当前待分配线路没有分配任何非尾箱时间点任务以及当前待分配线路中有早尾箱任务,将网点距离早尾箱任务的网点最近的非尾箱时间点任务确定为所述第一非尾箱时间点任务;
62.响应于多个非尾箱时间点任务被选取,且当前待分配线路没有分配任何非尾箱时间点任务以及当前待分配线路中无早尾箱任务,将网点距离库房最近的非尾箱时间点任务确定为所述第一非尾箱时间点任务;
63.其中,所述根据实际分配情况,将所述第一非尾箱时间点任务确定为目标非尾箱
时间点任务包括:
64.响应于当前待分配线路没有分配任何非尾箱时间点任务和早尾箱任务,将所述第一非尾箱时间点任务确定为目标非尾箱时间点任务;
65.响应于当前待分配线路没有分配任何非尾箱时间点任务,且当前待分配线路已被分配早尾箱任务以及所述第一非尾箱时间点任务的网点到最后一个早尾箱任务的网点所需路程时间小于所述第一非尾箱时间点任务与最后一个早尾箱任务的送达时间差,将所述第一非尾箱时间点任务确定为目标非尾箱时间点任务;
66.响应于当前待分配线路已被分配非尾箱时间点任务,且所述第一非尾箱时间点任务的网点到上一非尾箱时间点任务的网点所需路程时间小于所述第一非尾箱时间点任务与上一非尾箱时间点任务的送达时间差,将所述第一非尾箱时间点任务确定为目标非尾箱时间点任务。
67.进一步地,所述将所述非尾箱时间段任务组的非尾箱时间段任务分配到所述各线路包括:
68.以迭代方式执行如下步骤直至所述非尾箱时间段任务组中的非尾箱时间段任务全部分配完毕:
69.从未分配非尾箱时间点任务的待分配线路中选取一条未进行过非尾箱时间段任务分配的待分配线路,其中,若当前所有待分配线路均进行过非尾箱时间段任务或非尾箱时间点任务分配,则创建一条新的待分配线路,选取新创建的待分配线路;
70.根据第三分配规则将所述非尾箱时间段任务分配到当前选取的所述待分配线路;
71.将已分配的非尾箱时间段任务移出所述非尾箱时间段任务组;
72.其中,所述根据第三分配规则将所述非尾箱时间段任务分配到当前选取的所述待分配线路包括:
73.从非尾箱时间段任务中确认目标非尾箱时间段任务并计算出送达时间;
74.响应于送达时间在预设时刻之前且不需要回库,或需要回库但达到库房的时间在预设时刻之前,将目标非尾箱时间段任务分配给当前待分配线路;
75.其中,从非尾箱时间段任务中确认目标非尾箱时间段任务并计算送达时间包括:
76.响应于当前待分配线路中未被分配早尾箱任务,且为首次非尾箱时间段任务分配,从非尾箱时间段任务组中选取网点距离库房最近的非尾箱时间段任务为目标非尾箱时间段任务并计算送达时间;
77.响应于当前待分配线路中未被分配早尾箱任务,且非首次非尾箱时间段任务分配,从非尾箱时间段任务组中选取网点距离上一非尾箱时间段任务网点最近的非尾箱时间段任务为目标非尾箱时间段任务并计算送达时间;
78.响应于当前待分配线路中已被分配早尾箱任务,且为首次非尾箱时间段任务分配,从非尾箱时间段任务组中选取网点距离最后一个早尾箱任务的网点最近的非尾箱时间段任务为目标非尾箱时间段任务并计算送达时间;
79.响应于当前待分配线路中已被分配早尾箱任务,且非首次非尾箱时间段任务分配,从非尾箱时间段任务组中选取网点距离上一非尾箱时间段任务的网点最近的非尾箱时间段任务为目标非尾箱时间段任务并计算送达时间。
80.第二方面,本发明实施例提供一种电子设备,包括存储器和处理器,所述存储器用
于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如第一方面所述的方法。
81.第三方面,本发明实施例提供一种计算机可读存储介质,用于存储计算机程序指令,所述计算机程序指令在被处理器执行时实现如第一方面所述的方法。
82.本发明实施例的方法在获取押运任务组后,根据预设分类规则将押运任务组中的押运任务分为早尾箱任务组、晚尾箱任务组以及非尾箱任务组,再将早尾箱任务组、晚尾箱任务组以及非尾箱任务组中的押运任务分配到各待分配线路,通过所述方法可以快速、准确的得到规划好的押运线路,能够实现高复杂程度的路径规划以及对临时押运任务进行处理。
附图说明
83.通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:
84.图1为本发明实施例的路径规划方法的流程示意图;
85.图2为本发明实施例的押运任务预先分组的流程示意图;
86.图3为本发明实施例的押运任务分组的流程示意图;
87.图4为本发明实施例的押运任务分组示意图;
88.图5为本发明实施例的早尾箱任务分配的流程示意图;
89.图6为本发明实施例的第一分配规则分配早尾箱任务的流程示意图;
90.图7为本发明实施例的晚尾箱任务分配的流程示意图;
91.图8为本发明实施例的待分配线路的示意图;
92.图9为本发明实施例的非尾箱任务分配的流程示意图;
93.图10为本发明实施例的非尾箱时间点任务分配的流程示意图;
94.图11为本发明实施例的第二分配规则分配非尾箱时间点任务的流程示意图;
95.图12为本发明实施例的非尾箱时间段任务分配的流程示意图;
96.图13为本发明实施例的第三分配规则分配非尾箱时间段任务的流程示意图;
97.图14是本发明实施例的电子设备的示意图。
具体实施方式
98.以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。
99.此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
100.除非上下文明确要求,否则在说明书的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
101.在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义
是两个或两个以上。
102.图1为本发明实施例的路径规划方法的流程示意图。如图1所示,本实施例的路径规划方法包括如下步骤:
103.在步骤s11,从数据库中获取押运任务组。
104.其中,所述押运任务组为由多个押运任务形成的集合,所述押运任务为银行的下属支行/分行/自助设备之间的现金、贵重金属、重要凭证的押运业务,所述押运任务或押运任务组可以存储在数据库中。
105.具体地,可以从数据库中存储的多个押运任务组中获取一个押运任务组。
106.在一个可选的实现方式中,还可以在获取押运任务组前,预先对所有押运任务进行分组,图2为本发明实施例的押运任务预先分组的流程示意图,如图2所示,本实施例的押运任务预先分组包括如下步骤:
107.步骤s21:从任务数据库中获取全部押运任务。
108.步骤s22:根据预定分组规则,将所述全部押运任务分为多个押运任务组。
109.步骤s23:将各押运任务组中送达时间和网点均相同的押运任务进行合并。
110.对于步骤s21,所获取的押运任务可以为当天需要进行押运的任务。
111.对于步骤s22,所述预定分组规则为库房归属、网点所在区域或不同服务对象的押运任务合并规则,可以根据以上规则中的至少一个对获取的押运任务进行分类,其中,所述不同服务对象的押运任务合并规则指的是将不同银行之间允许合并的押运任务分到一组,所述网点为押运任务对应的支行/分行/自助设备所在地点。
112.具体地,在获取全部押运任务后,可以根据押运任务对应的库房归属、网点所在区域或不同服务对象的押运任务合并规则中的至少一个规则,将全部押运任务分为多个押运任务组。
113.例如:在从任务数据库中获取当天需要进行押运的任务后,可以先将使用相同库房的押运任务分为一组,再从余下押运任务中将网点所在区域相同的押运任务分为一组,最后将不同银行间允许合并的押运任务分为一组。
114.可选地,所述可以根据实际情况使用对应的分组规则对获取的押运任务进行分组,本实施例并不对此进行限制。
115.对于步骤s23,具体地,在将全部押运任务分为多个押运任务组后,对于各押运任务组,将押运任务组中送达时间和网点均相同的押运任务合并为一个押运任务,其中,若押运任务对应的网点为自助设备则不进行合并。
116.例如:在一个押运任务组中包含押运任务a和b,押运任务a和b的送达时间和网点均相同,且两者对应的网点不为自助设备,则可以将押运任务a和b合并,在后续步骤中,将押运任务a和b看作一个押运任务。
117.优选地,在将不同的押运任务进行合并后,应当在合并后的任务上进行相应的标记,例如在将押运任务a和b进行合并后,可以在押运任务a或b的网点信息上标记“common”字符串。
118.通过步骤s21-s23,可以将从数据库中获取的当天押运任务预先分为不同的押运任务组,同时将押运任务组内的网点和送达时间相同的押运任务进行合并,可以减少路径规划过程中所占用的系统内存,同时在此基础上进行任务分配,可以增加路径规划的准确
性和合理性,同时加快路径规划速度。
119.在步骤s12,根据预设分类规则将所述押运任务组中的押运任务分为早尾箱任务组、晚尾箱任务组以及非尾箱任务组。
120.在一个可选的实现方式中,可以通过图3所示的流程对押运任务进行分组。图3为本发明实施例的押运任务分组的流程示意图,如图3所示,本实施例的押运任务分组包括如下步骤:
121.步骤s31:根据押运类别将所述押运任务组中的押运任务分为尾箱任务组以及所述非尾箱任务组。
122.步骤s32:根据押运属性将所述尾箱任务组中的押运任务分为所述早尾箱任务和所述晚尾箱任务
123.在步骤s33:将所述押运任务组中的押运任务形成数据集合。
124.对于步骤s31,所述押运类别为押运任务中的押运物品所属的类别。
125.具体地,图4为本发明实施例的押运任务分组示意图,如图4所示,在获取到押运任务组41后,将押运任务组41中属于现金调校和尾箱的押运任务分为尾箱任务组42,将其余押运任务分为非尾箱任务组43。
126.对于步骤s32,所述押运属性为押运任务所具有的属性,所述早尾箱任务为需要早上送款的任务,所述晚尾箱任务为需要晚上接款的任务,其中,每个需要早上送款的押运任务都需要晚上去接款,也即,每个早尾箱任务都有与其对应的晚尾箱任务。
127.具体地,如图4所示,将尾箱任务组42中需要早上送款的押运任务分为早尾箱任务44,将需要晚上接款的押运任务分为早尾箱任务45。
128.对于步骤s33,具体地,在对押运任务组中押运任务进行分组后,将押运任务组中押运任务形成数据集合,其中,所述数据集合至少包括:各押运任务对应的网点、送达时间、库房归属、网点所在区域以及合并后的不同服务对象。
129.通过步骤s31-s33,可以对押运任务组中的押运任务进一步分组,将押运任务组中的押运任务分为早尾箱任务、晚尾箱任务和非尾箱任务,同时将押运任务组中的押运任务形成相应的数据集合,来减少路径规划过程中系统所占用的计算资源,加快路径规划速度。
130.在步骤s13,将所述早尾箱任务组中的早尾箱任务按照第一分配规则分配到各待分配线路。
131.其中,所述第一分配规则为与早尾箱任务对应的任务分配规则,可以根据第一分配规则分配早尾箱任务,所述待分配线路为由当天需要押运的押运任务形成的押运线路,每条押运线路对应一组押运人员,所述待分配线路中至少包括线路中当天需要押运的押运任务所对应的网点信息以及送达时间。
132.具体地,在从押运任务组中分出早尾箱任务后,可以根据早尾箱任务创建出多条待分配线路,并根据第一分配规则将早尾箱任务分配给所创建的各待分配线路。
133.在本实施例的一种可选方式中,可以通过如图5所示的流程对早尾箱任务进行分配,也即,采用图5所示流程来实施步骤s13。图5为本发明实施例的早尾箱任务分配的流程示意图,如图5所示,本实施例的早尾箱任务分配包括如下步骤:
134.步骤s51:创建待分配线路。
135.步骤s52:根据第一分配规则将所述早尾箱任务分配到当前创建的所述待分配线
路。
136.具体地,在创建一条待分配线路后,可以根据第一分配规则将早尾箱任务分配到该线路中。
137.其中,不同的押运任务所对应的网点不同,从一个网点到另一个网点需要一定路程时间,到达一个网点后也需要一定的时间来进行押运物品的搬运,因此,每个押运任务都需要一段时间来完成,而每条待分配线路中的可分配时间是固定的,也即,一条待分配线路中只能分配有限的押运任务。
138.步骤s53:将已分配的早尾箱任务移出所述早尾箱任务组。
139.步骤s54:判断当前是否满足条件54,其中,所述条件54为早尾箱任务组中的早尾箱任务未全部分配完毕,具体地,若早尾箱任务组中的早尾箱任务未全部分配完毕,则跳回s51,否则结束早尾箱任务分配过程。
140.图6为本发明实施例的第一分配规则分配早尾箱任务的流程示意图,在本实施例的一种可选方式中,可以通过如图6所示流程将早尾箱任务分配到待分配线路中,也即,采用图6所示流程来实施步骤s52,如图6所示,本实施例的第一分配规则分配早尾箱任务包括如下步骤:
141.步骤s61:按送达时间的先后顺序选取至少一个任务,具体地,按送达时间的先后顺序从早尾箱任务组中选取出至少一个早尾箱任务。
142.例如:早尾箱任务组中包含早尾箱任务a、b和c,对应的时间分别为9:00,9:00,10:00,则在第一次选取的时候选出早尾箱任务a和b,在第二次选取的时候选出早尾箱任务c。
143.步骤s62:判断选取的早尾箱任务个数是否为多个,是则执行s64,否则执行s63。
144.步骤s63:将该任务确定为目标任务,具体地,将该任务确定为目标早尾箱任务。
145.步骤s64:判断当前情况是否满足条件64,其中,所述条件64为当前待分配线路没有分配任何早尾箱任务,具体地,若当前待分配线路没有分配任何早尾箱任务,则执行s66,否则执行s65。
146.步骤s65:将距离上一任务最近的任务确定为目标任务,具体地,将距离上一早尾箱任务的网点最近的早尾箱任务确定为目标早尾箱任务。
147.步骤s66:将距离库房最远的任务确定为目标任务,具体地,将网点距离库房最远的早尾箱任务确定为目标早尾箱任务。
148.步骤s67:判断当前情况是否满足条件67,其中,所述条件67为当前待分配线路为首次早尾箱任务任务分配,具体地,若当前待分配线路为首次早尾箱任务任务分配,则执行s69,否则执行s68。
149.步骤s68:判断当前情况是否满足条件68,其中,所述条件68为目标早尾箱任务网点到上一早尾箱任务网点所需路程时间小于目标早尾箱任务与上一早尾箱任务的送达时间差,具体地,若目标早尾箱任务网点到上一早尾箱任务网点所需路程时间小于目标早尾箱任务与上一早尾箱任务的送达时间差,则执行s69,否则跳回s61。其中,在计算所需路程时间时,可以根据网点所属城市的拥堵系数,使用相应的算法来进行计算,来确保计算的准确率。
150.步骤s68:将目标任务分配给当前待分配线路,具体地,将目标早尾箱任务分配给当前待分配线路。
151.在步骤s14,将所述晚尾箱任务组中的晚尾箱任务分配到所述各待分配线路。
152.具体地,在将早尾箱任务分配给各待分配线路后,将晚尾箱任务同样分到各待分配线路。
153.在本实施例的一种可选方式中,可以通过如图7所示方法来对晚尾箱任务进行分配,也即,采用图7所示流程来实施步骤s14,图7为本发明实施例的晚尾箱任务分配的流程示意图,如图7所示,本实施例的晚尾箱任务分配包括如下步骤:
154.步骤s71:从已创建待分配线路中选取一条未进行过晚尾箱任务分配的待分配线路。
155.步骤s72:在所述晚尾箱任务组中选出与所述待分配线路中已分配早尾箱任务对应的晚尾箱任务。具体地,图8为本发明实施例的待分配线路的示意图,如图8所示,在待分配线路81中包含已分配好的早尾箱任务811,可以从晚尾箱任务组中选出与所选取的待分配线路中的早尾箱任务811对应的晚尾箱任务812。
156.步骤s73:将选出的晚尾箱任务按照送达时间的先后顺序分配到当前选取的所述待分配线路。具体地,如图8所示,将选出的晚尾箱任务812按照送达时间的先后顺序分配到当前选取的待分配线路81中。其中,对于各待分配线路,在执行第一个早尾箱任务前,需要去库房一次性提取全部早尾箱任务过程中的押运物品,再进行押运。相应的,在进行晚尾箱任务时,需要在接收全部晚尾箱任务过程中的押运物品后,将押运物品运送到库房。
157.步骤s74:判断当前情况是否满足条件74,其中,所述条件74为有待分配线路未进行过晚尾箱任务分配,具体地,若有待分配线路未进行过晚尾箱任务分配,则跳回71,否则结束晚尾箱任务分配过程。
158.在步骤s15,将所述非尾箱任务组中的非尾箱任务分配到所述各待分配线路。
159.具体地,如图8所示,在将早尾箱任务和晚尾箱任务分配到各待分配线路之后,将非尾箱任务分配到各待分配线路。
160.在本实施例的一种可选方式中,可以通过如图9所示方法来对晚尾箱任务进行分配,也即,采用图9所示流程来实施步骤s15。图9为本发明实施例的非尾箱任务分配的流程示意图,如图9所示,本实施例的非尾箱任务分配包括如下步骤:
161.步骤s91:将非尾箱任务组中的非尾箱任务按照时限要求分为非尾箱时间点任务组和非尾箱时间段任务组。
162.步骤s92:将所述非尾箱时间点任务组中的非尾箱时间点任务分配到所述各待分配线路。
163.步骤s93:将所述非尾箱时间段任务组中的非尾箱时间段任务分配到所述各待分配线路。
164.对于步骤s91,具体地,非尾箱任务包含有时间限制的任务和无时间限制的任务,可以根据任务时限要求将非尾箱任务组中的非尾箱任务分为非尾箱时间点任务组和非尾箱时间段任务组。
165.对于步骤s92,具体地,在将非尾箱押运任务分为非尾箱时间点任务组和非尾箱时间点任务组后,先将非尾箱时间点任务组中的非尾箱时间点任务分配到各待分配线路。
166.图10为本发明实施例的非尾箱时间点任务分配的流程示意图,在本实施例的一种可选方式中,可以通过如图10所示流程将非尾箱时间点任务分配到待分配线路中,也即,采
用图10所示流程来实施步骤s92,如图10所示,本实施例的非尾箱时间点任务分配包括如下步骤:
167.步骤s101:从已创建的待分配线路中选取一条未进行过非尾箱时间点任务分配的待分配线路。其中,若当前所有待分配线路均进行过非尾箱时间点任务分配,则创建一条新的待分配线路,选取新创建的待分配线路。
168.步骤s102:根据第二分配规则将所述非尾箱时间点任务分配到当前选取的所述待分配线路。
169.步骤s103:将已分配的非尾箱时间点任务移出所述非尾箱时间点任务组。
170.步骤s104:判断当前情况是否满足条件104,其中所述条件104为非尾箱时间点任务组中的非尾箱时间点任务未全部分配完毕,具体地若非尾箱时间点任务组中的非尾箱时间点任务未全部分配完毕,则跳回s101,否则结束非尾箱时间点任务分配过程。
171.图11为本发明实施例的第二分配规则分配非尾箱时间点任务的流程示意图,在本实施例的一种可选方式中,可以通过如图11所示将非尾箱时间点任务分配到待分配线路中,也即,采用图11所示流程来实施步骤s102,如图11所示,本实施例的第二分配规则分配非尾箱时间点任务包括如下步骤:
172.步骤s111:按送达时间的先后顺序选取至少一个任务,具体地,按送达时间的先后顺序从非尾箱时间点任务组中选取至少一个非尾箱时间点任务。
173.步骤s112:判断选取的非尾箱时间点任务个数是否为多个,是则执行s114,否则执行s113。
174.步骤s113:将该任务确定为第一任务,具体地,将该任务确定为第一非尾箱时间点任务。
175.步骤s114:判断当前条件是否满足条件114,其中,所述条件114为当前待分配线路没有分配任何非尾箱时间点任务。具体地,若当前待分配线路没有分配任何非尾箱时间点任务,则执行s116,否则执行s115。
176.步骤s115:将距离上一任务最近的任务确定为第一任务,具体地,将网点距离上一非尾箱时间点任务的网点最近的非尾箱时间点任务确定为第一非尾箱时间点任务
177.步骤s116:判断当前条件是否满足条件116,其中,所述条件116为当前待分配线路中没有早尾箱任务。具体地,若当前待分配线路没有分配任何早尾箱任务,则执行s118,否则执行s117。
178.步骤s117:将距离早尾箱任务最近的任务确定为第一任务,具体地,将网点距离早尾箱任务的网点最近的非尾箱时间点任务确定为第一非尾箱时间点任务。
179.步骤s118:将距离库房最近的任务确定为第一任务,具体地,将网点距离库房最近的非尾箱时间点任务确定为第一非尾箱时间点任务。
180.为了保证分配非尾箱时间点任务的过程中不影响已分配好的早尾箱任务,分配过程中需要考虑到非尾箱时间点任务对早尾箱任务的影响。
181.步骤s119:判断当前条件是否满足条件114,其中,所述条件114为当前待分配线路没有分配任何非尾箱时间点任务。具体地,若当前待分配线路没有分配任何非尾箱时间点任务,则执行s1111,否则执行s1110。
182.步骤s1110:判断当前条件是否满足条件1110,其中,所述条件1110为第一非尾箱
时间点任务网点到上一非尾箱时间点任务网点所需路程时间小于第一非尾箱时间点任务与上一非尾箱时间点任务的送达时间差。具体地,若第一非尾箱时间点任务网点到上一非尾箱时间点任务网点所需路程时间小于第一非尾箱时间点任务与上一非尾箱时间点任务的送达时间差,则执行s1113,否则跳回s111。
183.步骤s1111:判断当前条件是否满足条件116,其中,所述条件116为当前待分配线路中没有早尾箱任务。具体地,若当前待分配线路没有分配任何早尾箱任务,则执行s1113,否则执行s1112。
184.步骤s1112:判断当前条件是否满足条件1112,其中,所述条件1112为第一非尾箱时间点任务的网点到最后一个早尾箱任务的网点所需路程时间小于第一非尾箱时间点任务与最后一个早尾箱任务的送达时间差。具体地,若第一非尾箱时间点任务的网点到最后一个早尾箱任务的网点所需路程时间小于第一非尾箱时间点任务与最后一个早尾箱任务的送达时间差,则执行s1113,否则跳回s111。
185.步骤s1113:将第一任务确定为目标任务,具体地,将第一非尾箱时间点任务确定为目标非尾箱时间点任务。
186.步骤s1114:将目标非尾箱时间点任务分配给当前待分配线路。
187.其中,部分非尾箱时间点任务在押运过程中需要进行回库,且在分配过程中要保证需要回库的任务在任务完成后能够在某一时刻前到达库房。
188.具体地,响应于所述目标非尾箱时间点任务的送达时间在预设时刻之前,且不需要回库,将所述目标非尾箱时间点任务分配给当前待分配线路。
189.例如:目标非尾箱时间点任务a的送达时间在3点之前,且该任务不需要回库,则直接将目标非尾箱时间点任务a分配给当前待分配线路。
190.响应于所述目标非尾箱时间点任务需要回库,且在任务完成后到达库房的时间不超过预设时刻,将所述目标非尾箱时间点任务分配给当前待分配线路。
191.例如:目标非尾箱时间点任务的送达时间在3点之前,且该任务需要回库,则需要计算非尾箱时间点任务在任务完成达到库房的时间,若未超过3点,则将目标非尾箱时间点任务分配给当前待分配线路,否则跳转回s111。
192.同时,在步骤s1114中,对于送达时间在某一时刻后的任务,为了保证分配非尾箱时间点任务的分配过程中不影响已分配好的晚尾箱任务,需要考虑到对其的影响。
193.具体地,响应于所述目标非尾箱时间点任务的送达时间在预设时刻之后,且所述目标非尾箱时间点任务的网点到当前待分配线路中第一个晚尾箱任务的网点所需路程时间小于所述目标非尾箱时间点任务与所述第一个晚尾箱任务的送达时间差,将所述目标非尾箱时间点任务分配给当前待分配线路。
194.响应于所述目标非尾箱时间点任务的送达时间在预设时刻之后,且当前待分配线路中无晚尾箱任务,将所述目标非尾箱时间点任务分配给当前待分配线路。
195.例如:当目标非尾箱时间点任务的送达时间在3点之后,则需要考虑其对晚尾箱任务的影响,也即,若当前待分配线路中包含晚尾箱任务,但是目标非尾箱时间点任务在任务完成后能够按时到达第一个晚尾箱任务的网点,则将目标非尾箱时间点任务分配给当前待分配线路,否则跳转回s111,相应地,当前待分配线路中不包含晚尾箱任务时,则直接将目标非尾箱时间点任务分配给当前待分配线路。
196.对于步骤s93,具体地,在将早尾箱任务、晚尾箱任务和非尾箱时间点任务分配到各待分配线路后,对无时间限制的非尾箱时间段任务进行分配。
197.图12为本发明实施例的非尾箱时间段任务分配的流程示意图,在本实施例的一种可选方式中,可以通过如图12所示流程将非尾箱时间段任务分配到待分配线路中,也即,采用图12所示流程来实施步骤s93,如图12所示,本实施例的非尾箱时间段任务分配包括如下步骤:
198.步骤s121:从未分配非尾箱时间点任务的待分配线路中选取一条未进行过非尾箱时间段任务分配的待分配线路。
199.例如:有三条待分配线路,其中一条包含有非尾箱时间点任务,另外两条不包含非尾箱时间点任务,则从两条不包含非尾箱时间点任务的待分配线路中先选取一条待分配线路,再选取另一条待分配线路。
200.步骤s122:根据第三分配规则将所述非尾箱时间段任务分配到当前选取的所述待分配线路。其中,所述第三分配规则为用来从非尾箱时间段任务组中挑选出合适的非尾箱时间段任务作为目标非尾箱时间段任务,再根据实际情况,将目标非尾箱时间段任务分配给待分配线路的一种分配规则。
201.步骤s123:将已分配的非尾箱时间段任务移出所述非尾箱时间段任务组。
202.步骤s124:判断当前情况是否满足条件124,其中,所述条件124为非尾箱时间段任务组中的非尾箱时间段任务未全部分配完毕,具体地,若非尾箱时间段任务组中的非尾箱时间段任务未全部分配完毕,则跳回s122,否则结束非尾箱时间段任务分配。
203.步骤s125:判断当前情况是否满足条件125,其中,所述条件125为非尾箱时间段任务组中的非尾箱时间段任务均被选取过目标非尾箱时间段任务,具体地,若非尾箱时间段任务组中的非尾箱时间段任务均被选取过目标非尾箱时间段任务,则跳回s121,否则跳回122。
204.图13为本发明实施例的第三分配规则分配非尾箱时间段任务的流程示意图,可以,采用图13所示流程来实施步骤s122,如图13所示,本实施例的第三分配规则分配非尾箱时间段任务包括如下步骤:
205.步骤s131:判断当前情况是否满足条件131,其中,所述条件131为当前待分配线路中未被分配早尾箱任务,具体地,若当前待分配线路中未被分配早尾箱任务,则执行s133,否则执行s132。
206.步骤s132:判断当前情况是否满足条件132,其中,所述条件132为当前待分配线路为首次非尾箱时间段任务分配,具体地,若当前待分配线路中未被分配早尾箱任务,则执行s135,否则执行s134。
207.步骤s133:判断当前情况是否满足条件132,其中,所述条件132为当前待分配线路为首次非尾箱时间段任务分配,具体地,若当前待分配线路中未被分配早尾箱任务,则执行s136,否则执行s137。
208.步骤s134:从任务组中选取距离上一任务最近的任务为目标任务并计算送达时间,具体地,从非尾箱时间段任务组中选取网点距离上一非尾箱时间段任务的网点最近的非尾箱时间段任务为目标非尾箱时间段任务并计算送达时间,同时计算出若将该目标非尾箱时间段任务分配在上一非尾箱时间段任务后面时的任务完成时间作为送达时间。
209.步骤s135:从任务组中选取距离最后一个早尾箱任务的最近的任务为目标任务并计算送达时间,具体地,从非尾箱时间段任务组中选取网点距离最后一个早尾箱任务的网点最近的非尾箱时间段任务为目标非尾箱时间段任务,同时计算出若将该目标非尾箱时间段任务分配在最后一个早尾箱任务后面时的任务完成时间作为送达时间。
210.步骤s136:从任务组中选取距离库房最近的任务为目标任务并计算送达时间,具体地,从非尾箱时间段任务组中选取网点距离库房最近的非尾箱时间段任务为目标非尾箱时间段任务,同时计算出若将该目标非尾箱时间段任务作为当前待分配线路中第一个任务时的任务完成时间作为送达时间。
211.步骤s137:从任务组中选取距离上一任务最近的任务为目标任务并计算送达时间,具体地,从非尾箱时间段任务组中选取网点距离上一非尾箱时间段任务网点最近的非尾箱时间段任务为目标非尾箱时间段任务,同时计算出若将该目标非尾箱时间段任务分配在上一非尾箱时间段任务后面时的任务完成时间作为送达时间。
212.步骤s138:判断当前情况是否满足条件138,其中,所述条件138为送达时间在预设时刻之前且不需要回库,或需要回库但到达库房的时间在预设时刻之前,具体地,若送达时间在预设时刻之前且不需要回库,或需要回库但达到库房的时间在预设时刻之前,则执行s139,否则执行s140。
213.步骤s139:将目标任务分配给当前待分配线路,具体地,将目标非尾箱时间段任务分配给当前待分配线路。在另一种可实现方式中,还可以根据其他时间点来分配任务,例如:当前待分配线路需要在12点到13点进行午休,则在分配过程中,可以进行对应的限制,本技术对此并不进行限制。
214.步骤s140:判断当前情况是否满足条件140,其中,所述条件140为非尾箱时间段任务组中的非尾箱时间段任务均被选取过,具体地,若非尾箱时间段任务组中的非尾箱时间段任务均被选取过,则跳转至s121,否则跳回s131。
215.本发明实施例的方法在获取押运任务组后,根据预设分类规则将押运任务组中的押运任务分为早尾箱任务组、晚尾箱任务组以及非尾箱任务组,再将早尾箱任务组、晚尾箱任务组以及非尾箱任务组中的押运任务分配到各待分配线路,通过所述方法可以快速、准确的得到规划好的押运线路,能够实现高复杂程度的路径规划以及对临时押运任务进行处理。
216.图14是本发明实施例的电子设备的示意图。如图14所示,电子设备为通用数据处理装置,其包括通用的计算机硬件结构,其至少包括处理器141和存储器142。处理器141和存储器142通过总线143连接。存储器142适于存储处理器141可执行的指令或程序。处理器141可以是独立的微处理器,也可以是一个或者多个微处理器集合。由此,处理器141通过执行存储器142所存储的指令,从而执行如上所述的本发明实施例的方法流程实现对于数据的处理和对于其它装置的控制。总线143将上述多个组件连接在一起,同时将上述组件连接到显示控制器144和显示装置以及输入/输出(i/o)装置145。输入/输出(i/o)装置145可以是鼠标、键盘、调制解调器、网络接口、触控输入装置、体感输入装置、打印机以及本领域公知的其他装置。典型地,输入/输出装置145通过输入/输出(i/o)控制器146与系统相连。
217.本领域的技术人员应明白,本技术的实施例可提供为方法、装置(设备)或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的
实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品。
218.本技术是参照根据本技术实施例的方法、装置(设备)和计算机程序产品的流程图来描述的。应理解可由计算机程序指令实现流程图中的每一流程。
219.这些计算机程序指令可以存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现流程图一个流程或多个流程中指定的功能。
220.也可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程中指定的功能的装置。
221.本发明的另一实施例涉及一种非易失性存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。
222.即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指定相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
223.以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献