一种物体装载的方法和装置与流程

文档序号:32746520发布日期:2022-12-30 22:25阅读:38来源:国知局
一种物体装载的方法和装置与流程

1.本技术涉及交通运输技术领域,尤其涉及一种物体装载的方法和装置。


背景技术:

2.随着交通运输的不断发展,在商品装箱和货物车辆装载等场景中,常常涉及到三维装载,即将不同尺寸的物体装入一个或多个容器的过程。并且三维装载属于典型的非确定性多项式时间难问题(np-hard),例如输入待装载物体信息和用于装载物体的容器信息,并输出三维装载方案的全局最优解。因此,通过计算三维装载方案的全局最优解或近似全局最优解(方案),可以提高三维装载的装载率,从而可有效降低运输成本。
3.在实际的物体装载和车辆装载过程中,待装载的物体信息和用于装载的容器信息已知,但物体到达的顺序未知,而可用于缓存到达物体的区域面积有限,无法将所有待装载物体均提前堆放至缓存区域,因此,需要通过算法根据实时到达的物体,确定三维装载的方案,使得工人或机器可以参考该三维装载的方案执行物体的装载。
4.在现有算法中,通常默认一次性输入全部待装载物体的信息和用于装载物体的容器信息,得到可行解或全局近似最优解,因此,无法保证得到的三维装载的全局最优解(方案),并且目前没有一个算法,可以针对大规模装载物体,在可接受的时间内得到三维装载的全局最优解(方案)。因此,亟待提出一种新的物体装载方法,可以推荐最优或近似最优的装载方案去指导工人或机器对物体进行装载。


技术实现要素:

5.本技术提供一种物体装载的方法和装置,用于推荐最优或近似最优的装载方案,以提高容器的装载率。
6.第一方面,本发明实施例提供一种物体装载的方法,该方法可以由装载装置执行,也可以由装载装置中的芯片执行,对此不做限定。包括以下步骤:获取当前第一待装载物体的信息和当前的装载方案;根据所述第一待装载物体的信息和所述当前的装载方案,生成第一空间位置关系图;获取n个推荐的装载方案和n个第二空间位置关系图,每个第二空间位置关系图是根据相应的一个推荐的装载方案生成的,n为正整数;根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案。
7.通过该设计,实时接收到第一待装载的物体,获取该第一待装载物体的信息和当前的装载方案;可以根据第一待装载物体的信息和当前的装载方案,得到第一空间位置关系图;进一步的,获取n个推荐的装载方案和n个第二空间位置关系图,每个第二空间位置关系图是根据相应的一个推荐的装载方案生成的,从n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案。由于该n个推荐的装载方案可以为离线阶段生成并保存的,因此,该方案根据实时到达的当前物体信息和当前容器装载方案,可以快速从多个推荐装载方案中,灵活的确定最优或近似最优的装载方案,以指导人工或机器进行装载,从而可以提
高容器的装载率。
8.在一种可能的设计中,在所述获取n个推荐的装载方案和所述n个推荐的装载方案的空间位置关系图之前,还包括:获取t个物体的信息和所述t个物体的装载信息,以及用于装载物体的容器信息;所述t为正整数;所述t个物体中包括所述第一待装载物体,所述装载信息包括所述t个物体的装载顺序和堆叠层数;根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,得到m个原装载方案,其中,所述m个装载方案的装载率均大于或等于设定的第一阈值;所述m为大于或等于n的正整数;根据所述m个原装载方案,生成m个空间位置关系图,每个原装载方案对应一个空间位置关系图;根据所述m个空间位置关系图,在所述m个原装载方案中,确定所述n个推荐的装载方案。
9.通过该设计,在获取n个推荐的装载方案和n个推荐的装载方案的空间位置关系图之前,可以从历史的装载记录中获取所有物体的信息和物体的装载信息以及容器信息;然后,根据所有物体的信息和物体的装载信息,以及容器信息,采用树搜索算法,可以得到所有可能的原装载方案以及生成每个原装载方案对应的空间位置关系图,并且这些原装载方案的装载率均在设定阈值之上,从而既可以为在线的物体的装载提供足够的可选装载方案,也可保证较高的装载率;最后从多个原装载方案中筛选推荐的装载方案,以供在线装载物体进行选择,可以进一步保证装载的多样性,使得装载率最高。
10.在一种可能的设计中,所述根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,得到m个原装载方案,包括:根据所述t个物体中的每个物体的信息和每个物体的装载信息以及所述容器信息,采用树搜索算法,得到每个物体的第一原装载方案集合;将所述t个物体对应的t个第一原装载方案集合进行汇总,作为所述m个原装载方案。
11.通过该设计,可以根据t个物体中的每个物体的信息和每个物体的装载信息以及容器信息,采用树搜索算法得到每个物体的第一原装载方案集合并进行汇总。由于离线阶段生成大量的原装载方案,因此可以提供足够的推荐的方案给在线的物体装载,进而可以提高装载的多样性和装载率。
12.在一种可能的设计中,所述根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,得到m个原装载方案,包括:根据所述t个物体的信息和所述t个物体的装载信息,得到至少一个第一块的信息和/或至少一个第二块的信息,其中,所述第一块由至少一个待装载物体组合得到,所述第二块由至少一个所述第一块组合得到;根据每个第一块的信息和/或每个第二块的信息,以及所述容器信息,采用树搜索算法,得到每个所述第一块的第二原装载方案集合,和/或每个所述第二块的第二原装载方案集合;将所述至少一个第一块对应的至少一个第二原装载方案集合进行汇总,和/或将所述至少一个第二块对应的至少一个第二原装载方案集合进行汇总,作为所述m个原装载方案。
13.通过该设计,先可以根据t个物体的信息和t个物体的装载信息,将t个物体之间进行组合,得到多个简单块,进一步将多个简单块组合成复杂块,然后,将每个简单块和/或每个复杂块作为一个整体块;再根据多个整体块的信息和容器信息,采用树搜索算法,得到每个复杂块对应的原装载集合并汇总,从而既可以为在线装载提供足够的装载方案,同时也可以提高实际装载的效率。
14.需要注意的是,本技术中根据t个物体的信息和t个物体的装载信息以及容器信
息,采用树搜索算法,得到m个原装载方案,还可以采用其他启发式方法来得到原装载方案,本技术不做具体限定。
15.在一种可能的设计中,所述根据所述m个空间位置关系图,在所述m个原装载方案中,确定所述n个推荐的装载方案,包括:根据所述m个空间位置关系图,计算所述m个原装载方案中每个原装载方案的多样性函数值;按照所述m个原装载方案的多样性函数值由大到小的顺序,将顺序处于前n个的所述多样性函数值分别对应的原装载方案作为所述n个推荐的装载方案。
16.通过该设计,可以根据m个原装载方案对应的m个空间位置关系图,计算出每个原装载方案中的多样性函数值;然后将m个原装载方案的多样性函数值按照大到小的顺序排序,选择排列在前n个的多样性函数值对应的原装载方案,作为推荐的装载方案,从而可以保证推荐的装载方案的多样性,可以避免推荐的装载方案相同或相似。
17.在一种可能的设计中,所述根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案,可以有如下几种实现方式:
18.第一种实现方式:在所述n个第二空间位置关系图中,确定与所述第一空间位置关系图相同的目标空间位置关系图;将与所述目标空间位置关系图对应的推荐的装载方案,作为所述第一待装载物体的最终装载方案。
19.通过该方式,将第一空间位置关系图分别与n个第二空间位置关系图进行比对,从n个第二空间位置关系图中,找到与第一空间位置关系图相同的目标空间位置关系图,将该目标空间位置关系图对应的推荐的装载方案最为第一待装载物体的最终装载方案,从而既可以为第一待装载物体提供有效的装载方案,同时也可保证装载率。
20.第二种实现方式:在所述n个第二空间位置关系图中,存在所述第一空间位置关系图时,所述根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案,具体包括:确定在所述n个第二空间位置关系图中包含的i个第二空间位置关系图中包含所述第一空间位置关系图,所述i为小于或等于n的正整数;在所述i个第二空间位置关系图所对应的i个推荐的装载方案中,将装载率最大的一个推荐的装载方案,作为所述第一待装载物体的最终装载方案。
21.通过该方式,在n个第二空间位置关系图中包含的i个第二空间位置关系图中包含第一空间位置关系图,即第一空间位置关系图为i个第二空间位置关系图的子图;进一步的,在i个第二空间位置关系图对应的i个推荐的装载方案中,选择装载率最大的推荐的装载方案作为第一待装载物体的最终装载方案,从而可以在为第一待装载物体提供有效的装载方案时,也尽可能的保证装载率。
22.第三种实现方式:在所述n个第二空间位置关系图中,不存在所述第一空间位置关系图时,所述根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案,具体包括:根据所述第一空间位置关系图,对所述n个第二空间位置关系图进行调整,得到所述n个第二空间位置关系图的调整幅度值;将所述调整幅度值最小的所述第二空间位置关系图对应的推荐的装载方案,作为所述第一待装载物体的最终装载方案。
23.通过该方式,第一空间关系图均不是n个第二空间位置关系图的子图,此时,可以
基于第一空间位置关系图,分别对n个第二空间位置关系图进行调整,得到n个第二空间位置关系图的调整幅度值;将调整幅度值最小的第二空间位置关系图对应的推荐的装载方案,作为第一待装载物体的最终装载方案,从而既可提高为第一待装载物体提供装载方案的效率,同时也可保证装载率。
24.第四种实现方式:若采用第三种实现方式对n个第二空间位置关系图进行调整时,n个第二空间位置关系图的调整幅度值均大于设定的第二阈值时,根据所述第一待装载物体的信息和所述第一待装载物体的装载信息,以及所述容器信息,采用树搜索算法,得到q个装载方案,q为正整数;所述第一待装载物体的装载信息包括所述第一待装载物体的装载顺序和堆叠层数;将所述q个装载方案中装载率最大的装载方案,作为所述第一待装载物体的最终装载方案。
25.通过该方式,若基于第一空间位置关系图,分别对n个第二空间位置关系图进行调整的幅度值均大于设定的阈值,即每个推荐的装载方案调整较大而导致不可用,此时可以根据第一待装载物体的信息和第一待装载物体的装载信息,以及容器信息,采用树搜索算法,在线方式得到多个装载方案,并将装载率最大的装载方案作为第一待装载物体的最终装载方案,从而可以为第一待装载物体提供有效的装载方案,以指导工人或机器进行装载,同时也可保证装载率。
26.在一种可能的设计中,所述第一待装载物体的信息包括但不限于包括下述信息中的至少一种:所述第一待装载物体的长度、所述第一待装载物体的高度、所述第一待装载物体的宽度、所述第一待装载物体的重量。
27.通过该设计,第一待装载物体的信息包括但不限于第一待装载物体的长度、宽度、高度和重量等,因此,这些信息都可以作为第一待装载物体选择装载方案的有效信息。
28.第二方面,本技术还提供一种物体装载的装置,该装置可应用于用于装载物品或货物的装置,具有实现上述第一方面或上述第一方面的任意一种可能的设计中的方法的功能。该装载的装置可以包括:输入模块、生成模块、处理模块和输出模块。
29.应理解,上述的输入模块和输出模块可以为通信接口电路,以实现数据和/或信息的接收和/或发送,上述的输入模块和输出模块还可以为收发器,以实现数据和/或信息的接收和/或发送。因此,输入和输出模块的具体形态,本技术不做具体限定。
30.第三方面,本技术还提供一种物体装载的装置,该装置可应用于用于装载物品或货物的装置,具有实现上述第一方面或上述第一方面的任意一种可能的设计中的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的单元。比如包括输入单元、生成单元、处理单元和输出单元。
31.第四方面,本技术实施例还提供一种计算机存储介质,该存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时可实现上述第一方面或其中任意一种设计提供的方法。
32.第五方面,本技术实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得上述第一方面或其中任一种设计提供的方法执行。
33.第六方面,本技术实施例还提供一种芯片系统,该芯片系统包括处理器,用于支持客户端实现上述第一方面中所涉及的功能。
34.在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存装载装
置执行的必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
35.上述第二方面至第六方面中或任一方面的任意一种设计可以达到的技术效果,可以参照上述第一方面或第一方面中任意一种设计可以达到的技术效果说明,这里不再重复赘述。
附图说明
36.图1为本技术实施例提供的一种物体装载的运用场景的示意图;
37.图2为本技术实施例提供的一种物体装载的方法的流程示意图;
38.图3a为本技术实施例提供的一种物体(块)所在空间位置坐标的示意图;
39.图3b为本技术实施例提供的一种不同块在空间位置上的坐标示意图;
40.图3c为本技术实施例提供的一种绘制空间位置关系图的示意图;
41.图3d为本技术实施例提供的一种生成最终装载方案的空间位置关系图的示意图;
42.图3e为本技术实施例提供的一种三维装载的空间分割的示意图;
43.图3f为本技术实施例提供的一种采用树搜索算法得到原装载方案的示意图;
44.图3g为本技术实施例提供的一种树搜索算法的搜索过程的示意图;
45.图3h为本技术实施例提供的一种物体组合成简单块和复杂块的示意图;
46.图3i为本技术实施例提供的一种空间位置关系图和子图的示意图;
47.图4a为本技术实施例提供的一种离线阶段生成原装载方案的流程示意图;
48.图4b为本技术实施例提供的一种筛选出推荐的装载方案的流程示意图;
49.图5为本技术实施例提供的一种物体装载方法推荐的流程结构图;
50.图6为本技术实施例提供的一种物体装载实例的方法流程示意图;
51.图7a为本技术实施例提供的不同方案在br数据集上的测试结果柱形图;
52.图7b为本技术实施例提供的不同方案在公开数据集上的测试结果柱形图;
53.图8为本技术实施例提供的一种物体装载的装置结构示意图;
54.图9为本技术实施例提供的一种物体装载的设备结构示意图。
具体实施方式
55.本技术实施例提供一种物体装载的方法和装置,其中,方法和装置是基于相同或相似技术构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。
56.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
57.本技术实施例通常应用到货物搬运或货物装载等领域,比如应用到自动化的物流搬运场景中。图1示出了本技术实施例提供的一种物体装载方法所适用的可能的运用场景。参阅图1所示,假设目前有一堆待装载的物体a到达,通过人工搬运或机器,可以按照指定的装载顺序或堆叠方式,将这一堆物体a装入用于装载物体的容器中,人工或机器再将该用于装载物体的容器搬运到车辆上,或者通过人工搬运或机器,可以按照指定的装载顺序或堆叠方式,将这一堆物体a直接搬运到车辆上。最后,再由车辆将这堆物体a运送到目的地。
58.在上述场景中为了实现自动装载物体a,常常会涉及到自动化三维装载,三维装载
是典型的非确定性多项式时间难问题,目前没有一个算法可以在大规模物品装载下,在可接受的时间内得到全局最优解。通常默认一次输入全部待装载物品和用于装载的容器,输出可行解或者全局近似最优解。但在实际的物品装箱和车辆装载过程中,很多情况下虽然可以事先知道所有待装载物品,但各个物品的到达顺序未知(即物品是随着时间随机到达),这时就需要通过算法,根据物体到达的顺序,实时输出三维装载方案,从而可以真正指导实际工人或机器进行有序装载,从而提高一个容器(比如一个车厢)装载物品的装载率,即同样的容器可以装载更多数量的物品。
59.以下,首先对本技术实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
60.1)、本技术实施例中涉及的物体,可以为被装载的实体,例如,某工厂的货物或某超市的商品等。在装载的过程中,被装载的物体可以均为相同材质的物体,或者为不同材质的货物或商品,本技术不做具体限定。另外,被装载的物体的形状、尺寸大小以及重量等,本技术也不做具体的限定。
61.2)、本技术实施例中涉及的容器,可以为内部拥有一定空间的物体,且可以用于装载物体的实体,该容器可以在装载物体后,被处理成密封状态,例如纸箱、木箱、或箱式货车等,也可以被处理成非密封状态,例如非密封的箱子或货车等。因此,本技术对装载物体的容器的形状、尺寸大小、重量、材质等不做具体的限定。
62.3)、本技术实施例中涉及的装载率,可以表示为某容器实际装载的物体的总体积与该容器总的体积之比,它可以反映使用容器装载物体时的分配情况。通常装载率越大,说明容器的利用率越高,即利用容器装载物体时,分配更合理,装载率越小,说明容器的利用率越低,即利用容器装载物体时,空间存在分配不合理的情况。
63.4)、本技术实施例中涉及的装载方案,可以表示如何将待装载的物体装入指定的容器中,通常装载方案中可以包括一个或多个物体在容器中的具体空间摆放位置、物体的叠放层数、以及物体的装载顺序等。因此,本技术中装载方案具体所包括的内容,可以根据实际情况设定,本技术不做具体限定。
64.目前,现有的装载方案存在如下几种:
65.现有技术方案一,将原始的动态问题按照时间切片转化为静态问题,例如每10分钟缓冲一批待装载物体,将这批物体使用传统的三维装载算法,一次性进行装载。传统的三维装载算法包括:数学规划法,例如时线性规划(instant linear programming,ilp)、动态规划算法(dynamic programming,dp),启发式算法,例如下次适应算法(next fit,nf)、首次适应算法(first fit,ff)、最佳适应算法(best fit,bf)、降序首次适应算法(first fit decreasing,ffd),学习优化算法,例如无监督的学习(unsupervised learning,rl)、深度学习(deep learing,dl)等。虽然该方案可以简单沿用现有算法,快速适配,但是该方案一次性装载物体,未根据物体到达的顺序实时得到装载方案,即只考虑局部信息,忽略了全局信息,因此,通过该方案,无法保证得到的装载方案为最佳。
66.现有技术方案二,采用f-b绝对近似算法,解决一维在线装载的问题。首先对未装满的容器进行分类,然后构造函数对分类后的容器进行匹配,最后根据构造规则对新到达的物体进行装载。然而,该方案未根据物体到达的顺序实时得到装载问题,即只考虑局部信息,忽略了全局信息,因此,通过该方案,无法保证得到的装载方案为最佳。并且该方案只适
用于一维装载,在多维装载问题中,很难统一确定容器的分类和匹配,以及物体的装载规则。
67.现有技术方案三,采用调和装载算法,解决在线装载的问题。即将每次达到的物体按照尺寸大小分到不同区间,并将每个尺寸区间的物体,均装入到同一个容器中,若容器满载时,即使用新的容器进行装载。然而,该方案中物体的尺寸区间需要人为进行确定,非常定制化,而且该方案的适用性较差,最终也无法保证得到的装载方案为最佳。
68.综上所述,在实际的物体装载过程中,很多情况下未知物体的到达顺序,而现有的动态装载方案大都根据当前达到的物体进行启发式装载,难以利用物体的全局信息,因此,无法保证最终得到的装载方案的装载率最高。
69.因此,本技术提供了一种物体装载方法,以快速从多个推荐装载方案中,灵活的确定最优或近似最优的装载方案,以指导人工或机器进行装载,从而可以提高容器的装载率。
70.本技术实施例涉及的至少一个,包括一个或者多个;其中,多个是指大于或者等于两个。另外,需要理解的是,在本技术的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
71.以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本技术的限制。如在本技术的说明书和所附权利要求书中所使用的那样,单数表达形式“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本技术实施例中,“一个或多个”是指一个或两个以上(包含两个);“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a、b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
72.在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
73.本说明书中描述的“物品”或“物体”可以混用,即“物品”可以指代“物体”,两个概念具有相同的含义。
74.本技术实施例提供一种物体装载的方法,该方法可适用于但不限于如图1所示的装载场景。参阅图2所示,为本技术实施例提供的一种物体装载的方法流程图,具体的,该方法可以由装载设备执行,或者由装载设备中的芯片执行,本技术这里不做限定,具体可以包括如下步骤:
75.s201:获取当前第一待装载物体的信息和当前的装载方案。
76.应理解,第一待装载物体可以为当前实时到达的物体,并且在第一待装载物体到达之前,已到达的物体已被装载在容器中。
77.可选的,第一待装载物体的信息包括但不限于包括第一待装载物体的长度、第一待装载物体的高度、第一待装载物体的宽度、第一待装载物体的重量中的一项或多项,本技术这里不做限定。
78.s202:根据第一待装载物体的信息和当前的装载方案,生成第一空间位置关系图。
79.应理解,在本技术实施例中,每个装载方案对应的空间位置关系图中包括但不限于:左右关系图、前后关系图、上下关系图(垂直关系图)。
80.具体的,空间位置关系图可以定义如下:
81.如图3a所示,以货车的车厢作为容器为例,可以将货车的车厢的宽定义为x轴方向(对应左右关系图),货车的车箱的长度定义为y轴方向(对应前后关系图),货车的集装箱的高度定义为z轴方向(对应上下关系图)。
82.车厢内的每个物体(块)在空间位置关系图中表示为一个节点,点的编号可以表示物体(块)的编号,因此,可以根据实际车厢内的三维装载情况,确定空间位置关系图中节点与节点之间是否连线。
83.具体的,在车厢内,按照左右方向分别放置物体(块)i和物体(块)j为例。若物体(块)i和物体(块)j在x轴上的投影存在重叠时,参考图3b中的(a)所示,则物体(块)i和物体(块)j需要满足下述条件(1):
84.(x
i2
≥x
j1
或x
j2
≥x
i1
)
85.其中,和分别表示物体(块)i在x轴方向两个边缘顶点的坐标值,和分别表示物体(块)j在x轴方向两个边缘顶点的坐标值。
86.应理解,本技术在绘制前后关系图时,人位于x轴位置(货车的车厢尾部的位置),人直视视野范围内,确定物体(块)i和物体(块)j是否存在互相遮挡的情况,即物体(块)i和物体(块)j在x轴上的投影是否存在重叠;当物体(块)i和物体(块)j满足上述条件(1)时,说明物体(块)i和物体(块)j在x轴上的投影存在重叠时,此时,在绘制左右关系图时,需要将物体(块)i和物体(块)j对应的节点进行连线。
87.若物体(块)i和物体(块)j在y轴上的投影存在重叠时,参考图3b中的(b)所示,物体(块)i和物体(块)j需要满足下述条件(2):
88.(y
i2
≥y
j1
或y
j2
≥y
i1
)
89.其中,和分别表示物体(块)i在y轴方向两个边缘顶点的坐标值,和分别表示物体(块)j在y轴方向两个边缘顶点的坐标值。
90.应理解,本技术在绘制左右关系图时,人位于y轴位置(货车的车厢侧面的位置),人直视视野范围内,确定物体(块)i和物体(块)j是否存在互相遮挡的情况,即物体(块)i和物体(块)j在y轴上的投影是否存在重叠;当物体(块)i和物体(块)j满足上述条件(2)时,说明物体(块)i和物体(块)j在y轴上的投影存在重叠时,此时,在绘制前后关系图时,需要将物体(块)i和物体(块)j对应的节点进行连线。
91.若物体(块)i和物体(块)j在z轴上的投影存在重叠时,参考图3b中的(c)所示,物体(块)i和物体(块)j需要满足下述条件(3):
92.(z
i2
≥z
j1
或z
j2
≥z
i1
)
93.其中,和分别表示物体(块)i在z轴方向两个边缘顶点的坐标值,和分别表示物体(块)j在z轴方向两个边缘顶点的坐标值。
94.应理解,本技术在绘制上下关系图时,人位于车厢中看向车厢高度方向,确定物体(块)i和物体(块)j在垂直方向是否存在互相遮挡的情况,即物体(块)i和物体(块)j在z轴上的投影是否存在重叠;当物体(块)i和物体(块)j满足上述条件(3)时,说明物体(块)i和
物体(块)j在z轴上的投影存在重叠时,此时,在绘制上下关系图时,需要将物体(块)i和物体(块)j对应的节点进行连线。
95.需要注意的是,本技术中相同序号的节点对应的物体可以为相同长、宽、高、重量的不同物体。
96.例如,绘制前后关系图时,参考图3c所示,图3c中(a)为实际的物体装载方案,图3c中(a)中有两个块1(即第一个块1和第二块1),两个块1左右放置且在y轴方向投影有交叠,则两个块1满足上述条件(2),因此,将在图3c中(b)的前后关系图中的两个节点1进行连线;另外,图3c中(a)中块3均与两个块1(即第一个块1和第二个块1)在y轴方向投影有重叠,则块3分别和两个块1满足上述条件(2),因此,在图3c中(b)的前后关系图中的节点3分别与两个节点1进行连线;图3c中(a)中块5与两个块1在y轴方向的投影也有重叠,则块5分别与两个块1满足上述条件(2),因此,在图3c中(b)的前后关系图中的节点5分别与两个节点1进行连线;另外,图3c中(a)中的块5还分别与块4、两个块6在y轴方向的投影有交叠,则块5与块4和两个块6也满足上述条件(2),因此,将在图3c中(b)的前后关系图中的节点5分别与节点4、两个节点6进行连线。依次类推,可以画出3c中(a)方案完整的前后关系图,具体如图3c中(b)所示。
97.绘制左右关系图时:图3c中(a)中第一个块1与下方对应的块4和第一个块6在x轴方向投影均有重叠,则该第一个块1分别与块4和第一个块6满足上述条件(1),因此,将图3c中(c)左右关系图中的第一个节点1分别与节点4和第一个节点6进行连线;图3c中(a)中第二个块1与下方对应的块4和第二个块6在x轴方向投影也有重叠,则该第二个块1分别与块4和第二个块6也满足上述条件(1),因此,将图3c中(c)左右关系图中的第二个节点1分别与节点4和第二个节点6进行连线;图3c中(a)中块3分别与块4和块5在x轴方向投影也有重叠,则该块3分别与块4和块5也满足上述条件(1),因此,将图3c中(c)左右关系图中的节点3分别与节点4和节点5进行连线。依次类推,可以画出3c中(a)方案完整的左右关系图,具体连线情况可以参考图3c中(c)。
98.应理解,为简化起见,在本技术实施例中,只示意了二维的情况,未展示上下关系图(垂直关系图),但实际中,3c中(a)方案完整的上下关系图(垂直关系图)的连接绘制,可以参考3c中(a)方案的前后关系图(b)和左右关系图(c),此处不再具体赘述。
99.在执行上述步骤s202时,具体可以参考下述例子:
100.例如,如图3d中,图3d中的(a)为离线阶段得到的推荐的装载方案,图3d中的(b)为当前的装载方案,图3d中的(c)为推荐的装载方案的前后关系图,即反映不同块在y轴上的投影是否存在重叠(遮挡),图3d中的(d)为推荐的装载方案的左右关系图,即确定不同块在x轴上的投影是否存在重叠(遮挡)。参考图3d中(b),当前的装载方案中,车厢内已经放置了1、4、5三个块,因此,当前的装载方案的前后关系图如图3d中(c)中实线连接部分所示,即表示块1和块5在y轴存在投影重叠,块4和块5在y轴也存在投影重叠;当前的装载方案的左右关系图如3d中(d)中的实线连接部分所示,即表示块1和块4在x轴存在投影重叠。若当前新到达了一个块1,由于当前的装载方案的空间位置关系图为推荐的装载方案的空间位置关系图的子图,因此,可以根据推荐的装载方案的空间位置关系图,推断出新达到块1的位置应该位于图3d中的(e)中间位置,放置新到达的块1之后,更新当前的装载方案空间位置关系图仍是推荐的装载方案对应的空间位置关系图的子图,依次类推完成剩余块的装载,得
到最终的装载方案为图3d中的(e)所示。
101.需要注意的是,图3d中的(c)的前后关系图中,其中,不同的两个节点之间用虚线连接时,表示该两个节点实际对应的块在y方向上的投影可能有重叠,也可能没有重叠;不同的两个节点之间用实线连接时,表示该两个节点实际分别对应的块在y方向上的投影一定有重叠。图3d中的(d)的当前的装载方案的左右关系图中,不同的两个节点之间用虚线连接时,表示该两个节点实际对应的块在x方向上的投影可能有重叠,也可能没有重叠;不同的两个节点之间用实线连接时,表示该两个节点实际对应的块在x方向上的投影一定有重叠。
102.同理,在当前的装载方案的上下关系图(垂直关系图)中,不同节点之间用虚线连接或用实线连接的表示意义,与上述前后关系图或左右关系图中的表示意义相同,此处不再具体赘述。
103.s203:获取n个推荐的装载方案和n个第二空间位置关系图,每个第二空间位置关系图是根据相应的一个推荐的装载方案生成的,n为正整数。
104.在一种实施方式中,在获取n个推荐的装载方案和n个推荐的装载方案的空间位置关系图之前,还包括离线阶段,在该离线阶段中,生成n个推荐的装载方案,并生成n个推荐的装载方案的空间位置关系图。具体的,生成n个推荐的装载方案,可以通过以下步骤实现:
105.第一步骤:根据t个物体的信息和t个物体的装载信息以及容器信息,采用树搜索算法,得到m个原装载方案,其中,m个装载方案的装载率均大于或等于设定的第一阈值;m为大于或等于n的正整数。
106.第二步骤:根据m个原装载方案,生成m个空间位置关系图,每个原装载方案对应一个空间位置关系图。第三步骤:根据m个空间位置关系图,在m个原装载方案中,确定n个推荐的装载方案。
107.其中,每个物体的信息包括但不限于包括下述信息中的至少一种:物体的长度、物体的高度、物体的宽度、物体的重量。
108.具体的,在执行上述实施方式中的第一步骤时:如图4a所示,s401a:获取t个物体的信息和t个物体的装载信息,以及用于装载物体的容器信息;t为正整数;t个物体中包括第一待装载物体,装载信息包括t个物体的装载顺序和堆叠层数;s402a:基于t个物体的信息和t个物体的装载信息,构成一系列不同的块;s403a:调整不同块的优先顺序;s404a:采用树搜索算法,求解原装载方案;s405a:判断得到的原装载方案是否满足装载率和方案数目要求;s406a:若是,则保存由s304得到的大量(即m个)的原装载方案。若否,则回到步骤s403a,继续执行s403a之后的步骤,直至得到的原装载方案是否满足装载率和方案数目要求。
109.示例性的,在执行上述实施方式中的第一步骤时,可以通过但不限于以下两种方式实现:
110.在第一种方式中:可以根据t个物体中的每个物体的信息和每个物体的装载信息以及容器信息,采用树搜索算法,得到每个物体的第一原装载方案集合;将t个物体对应的t个第一原装载方案集合进行汇总,作为m个原装载方案。
111.具体的,调整t个物体的装载顺序,使用树搜索算法进行三维装载,输出大量的原装载方案,具体的执行装载过程如下:
112.在使用树搜索算法得到大量的原装载方案,主要为树的每个节点对可用空间spaces={space1,space2,...,space
p
}进行选择的过程。若初始可用空间为整个容器,即spaces={whole_container},如图3e所示,每放置一个物体,被放置的空间将从三维方向分成为最多三个空间,并且已被放置的物体和对应放置的空间分别从t个物体集合和可用空间spaces集合中移除,新分割出的空间若至少能放下剩余的任意一个物体,则加入空间spaces集合中,直至最终的空间spaces集合不存在可用空间或者无法放下任意一个物体,最终得到的spaces集合中所有可用的空间个数,即为每种装载顺序下对应的原装载方案的个数,最后汇总每种装载顺序下对应原装载方案。
113.例如,如图3f所示,初始可用空间为整个空间,即spaces={whole_container},在初始可用空间中放置第一个物体之后,清除第一个物体所占用的空间,并分割出新的较小的3个可用空间(即空间1、空间2、空间3),此时更新初始可用空间spaces={whole_container},得到新的第一空间集合spaces={space1,space2,space3}。在放置第二个物体时,可以在第一空间集合中选择相应的空间进行放置,若选择空间1放置第二物体之后,又对应分割出3个更小的新的可用空间,即空间(1,1)、空间(1,2)、空间(1,3),若选择空间2放置第二物体之后,又对应分割出3个更小的新的可用空间,即空间(2,1)、空间(2,2)、空间(2,3),若选择空间3放置第二物体之后,又对应分割出3个更小的新的可用空间,即空间(3,1)、空间(3,2)、空间(3,3)。依次类推,剩下的物体,可以继续从上一次更新的空间spaces集合选择相应的空间进行放置。从而在上述的装载过程中,最后可以汇总得到所有原装载方案。
114.由于完整的树搜索时间复杂度非常高,则需要控制树搜索的广度w(即物体待放置空间的个数)和深度d(最多向下搜索几个节点),总计算可输出的原装载方案个数n=wd。
115.例如,参考图3g所示,该图3g展示了广度为3,深度为2的树搜索过程,在节点l0,如抽样3个空间进行尝试{l
1,1
,l
1,2
,...,l
1,3
},在达到2层深度之后,可以使用启发式贪心算法(例如first fit,next fit,best fit等),对剩下的物体进行快速装载。因此,在需要对2个物体(即物体1和物体2)进行装载时,假设有3个空间,放置物体1时,有3个空间可选,即对应第一装载方案包括3个(l
1,1
,l
1,2
,l
1,3
),由于选择其中一个方案对应的空间放置完物体1之后,会对应分割出3个新的空间,因此,在放置物体2时,对应存在3个可放置的空间,即第一装载方案中每个方案对应分裂出3个方案。因此,最终输出总计9个完整的原装载方案。
116.在第二种方式中:根据t个物体的信息和t个物体的装载信息,得到至少一个第一块的信息和/或至少一个第二块的信息,其中,第一块由至少一个待装载物体组合得到,第二块由至少一个第一块组合得到;根据每个第一块的信息和/或每个第二块的信息,以及容器信息,采用树搜索算法,得到每个第一块的第二原装载方案集合,和/或每个第二块的第二原装载方案集合;将至少一个第一块对应的至少一个第二原装载方案集合进行汇总,和/或将至少一个第二块对应的至少一个第二原装载方案集合进行汇总,作为m个原装载方案。
117.例如,如图3h所示,先将t个物体中组合成简单块(即第一块),包括:在t个物体中,将相同物料的物体,按照相同方向放置,在长度、宽度、高度三个方向上堆叠成简单块,组合成简单块(即第一块)。然后,可以将得到的简单块进行组合,得到如图3h中的复杂块(即第二块)。进一步,将得到的简单块/复杂块/物体,均作为块。最后,调整每个块的装载顺序,使用树搜索算法进行三维装载,输出大量的原装载方案。具体如何采用树搜索算法输出大量
的原装载方案,可以参考上述第一种方式中记载的内容,此处不再具体赘述。
118.应理解的是,若在t个物体中,存在与其它物体的物料不同且无法组成简单块的物体时,则将该物体单独作为一个块;若在多个简单块中,存在无法组成复杂块的简单块时,则将该简单块作为单独一个块。
119.需要注意的是,在执行上述两种方式之后,可以得到多个原装载方案(大于或等于m个原装载方案),然后在多个原装载方案中,选择出装载方案对应装载率均大于或等于设定的第一阈值的m个原装载方案。若得到的m个原装载方案个数满足设定数量(需求),则停止执行上述的两种获得原装载方案的过程。若得到的m个原装载方案个数不满足设定数量(需求),则继续调整上述第一方式中的物体的装载顺序或者调整上述第二方式中块的装载顺序,并重复执行调整装载顺序后的步骤,直到得到的m个原装载方案的数量满足设定数量(需求)。
120.具体的,在执行上述实施方式中的第二步骤时:根据m个原装载方案,生成对应的m个空间位置关系图,即每个原装载方案对应一个空间位置关系图,具体可以参考上述步骤s202,此处不再具体赘述。
121.具体的,在执行上述实施方式中的第三步骤时:即根据m个空间位置关系图,在m个原装载方案中,确定n个推荐的装载方案,可以通过以下方式实现:如图4b所示,s401b:获取m个原装载方案和m个空间位置关系图;s402b:根据m个空间位置关系图,计算m个原装载方案中每个原装载方案的多样性函数值;s403b:从m个原装载方案中确定n个推荐的装载方案,即按照m个原装载方案的多样性函数值由大到小的顺序,将顺序处于前n个的多样性函数值分别对应的原装载方案作为n个推荐的装载方案;s404b:保存离线的n个推荐的方案。
122.在执行上述步骤s402b时,具体可以包括以下步骤:
123.step1:计算每个原装载方案的多样性函数值,即将m个原装载方案中每个原装载方案分别与其它的原装载方案通过多样性函数进行多样性比较,每个原装载方案得到对应的m-1个多样性函数值。
124.其中,多样性评价函数可以定义如下:
125.对于两个原装载方案(s,t),它们之间的差异性值可以通过以下公式评估:
126.diff
(s,t)
=三个关系图中不同的边的总数
ꢀꢀ
公式一
127.step2:针对m个原装载方案中每个原装载方案,将由step1得到的m-1个多样性函数值中最小的多样性函数值作为该原装载方案的多样性函数值,因此,可以得到m个原装载方案的多样性函数值。
128.评估原装载方案集合m中的某个方案s的多样性函数值可以通过以下公式得到:
[0129][0130]
应理解,diversitys的值越大,则表示差并性越高。
[0131]
step3:将m个原装载方案的多样性函数值由大到小进行排序,将顺序处于前n个的多样性函数值分别对应的原装载方案作为n个推荐的装载方案。
[0132]
例如,m=5时,5个原装载方案包括:第1原装载方案、第2原装载方案、第3原装载方案、第4原装载方案、第5原装载方案。
[0133]
根据上述公式一,得到第1原装载方案与其它4个原装载方案的4个差异性值分别为:diff
(1,2)
、diff
(1,3)
、diff
(1,4)
、diff
(1,5)
,若4个差异性值中差异性值最小的为diff
(1,2)

则将差异性值最小的diff
(1,2)
作为第1原装载方案的多样性函数值。即diversity1=diff
(1,2)

[0134]
根据上述公式一,得到第2原装载方案与其它4个原装载方案的4个差异性值分别为:diff
(2,1)
(即diff
(1,2)
)、diff
(2,3)
、diff
(2,4)
、diff
(2,5)
,若4个差异性值中差异性值最小的为diff
(2,3)
,则将差异性值最小的diff
(2,3)
作为第2原装载方案的多样性函数值。即diversity2=diff
(2,3)

[0135]
根据上述公式一,得到第3原装载方案与其它4个原装载方案的4个差异性值分别为:diff
(3,1)
(即diff
(1,3)
)、diff
(3,2)
(即diff
(2,3)
)、diff
(3,4)
、diff
(3,5)
,若4个差异性值中差异性值最小的为diff
(3,4)
,则将差异性值最小的diff
(3,4)
作为第3原装载方案的多样性函数值。即diversity3=diff
(3,4)

[0136]
根据上述公式一,得到第4原装载方案与其它4个原装载方案的4个差异性值分别为:diff
(4,1)
(即diff
(1,4)
)、diff
(4,2)
(即diff
(2,4)
)、diff
(4,3)
(即diff
(3,4)
)、diff
(4,5)
,若4个差异性值中差异性值最小的为diff
(4,5)
,则将差异性值最小的diff
(4,5)
作为第4原装载方案的多样性函数值。即diversity4=diff
(4,5)

[0137]
根据上述公式一,得到第5原装载方案与其它4个原装载方案的4个差异性值分别为:diff
(5,1)
(即diff
(1,5)
)、diff
(5,2)
(即diff
(2,5)
)、diff
(5,3)
(即diff
(3,5)
)、diff
(5,4)
(即diff
(4,5)
),若4个差异性值中差异性值最小的为diff
(5,1)
,则将差异性值最小的diff
(5,1)
作为第5原装载方案的多样性函数值。即diversity5=diff
(5,1)

[0138]
将五个原装载方案的多样性值(diversity1、diversity2、diversity3、diversity4、diversity5),按照从大到小进行排序,若排序后为:diversity1、diversity3、diversity2、diversity4、diversity5),且若设定推荐装载方案数量为3个时,则将其中diversity1、diversity3、diversity2分别对应的第1原装载方案、第2原装载方案、第3原装载方案作为推荐装载方案。
[0139]
需要注意的是,上述的5个原装载方案对应的装载率均大于或等于设定的第一阈值;该设定的第一阈值可以根据实际要求进行设定,本技术不做具体限定。
[0140]
应理解,该步骤s203中的实施方式属于离线装载阶段,因此,该步骤s203还可以在上述步骤s201和/或步骤s202之前执行,本技术可以不做具体限定。
[0141]
另外,在离线装载阶段中可以利用全部的待装载物体的信息和可用容器信息、约束信息等,生成离线的多个原装载方案;然后从多个原装载方案中,确定多个推荐的装载方案。因此,当前到达第一待装载物体时,可以在多个推荐的装载方案中,确定最终装载方案,不仅可以保证装载物体的灵活性,也可以最大程度提高装载率。
[0142]
s204:根据第一空间位置关系图和n个第二空间位置关系图,在n个推荐的装载方案中,确定第一待装载物体的最终装载方案。
[0143]
在执行该步骤s204时,可以通过以下但不限于以下四种实施方式实现:
[0144]
在第一种实施方式中:在n个第二空间位置关系图中,确定与第一空间位置关系图相同的目标空间位置关系图;将与目标空间位置关系图对应的推荐的装载方案,作为第一待装载物体的最终装载方案。
[0145]
在第二种实施方式中:在n个第二空间位置关系图中,存在第一空间位置关系图时;执行步骤s204可以包括:确定在n个第二空间位置关系图中包含的i个第二空间位置关
系图中包含第一空间位置关系图,i为小于或等于n的正整数;在i个第二空间位置关系图所对应的i个推荐的装载方案中,将装载率最大的一个推荐的装载方案,作为第一待装载物体的最终装载方案。
[0146]
应理解,本技术实施例中i个第二空间位置关系图中包含第一空间位置关系图可以表示为第一空间位置关系图为i个第二空间位置关系图的子图。
[0147]
例如,如图3i所示,以第一空间位置关系图和第二空间位置关系图中包括的左右关系图为例,图3i中(a)可以表示为推荐的装载方案对应的第二空间位置关系图,图3i(a)中的节点4可以表示为待装载的物体,图3i中的(b)可以表示为当前的装载方案对应的第一空间位置关系图,显然,图3i中(b)为3i中(a)的子图。
[0148]
在第三种实施方式中:在n个第二空间位置关系图中,不存在第一空间位置关系图;执行该步骤s204可以包括:根据第一空间位置关系图,对n个第二空间位置关系图进行调整,得到n个第二空间位置关系图的调整幅度值;将调整幅度值最小的第二空间位置关系图对应的推荐的装载方案,作为第一待装载物体的最终装载方案。
[0149]
在第三种实施方式中,第一空间位置关系图不是任何第二空间位置关系图的子图时,首先可以选出与第一空间位置关系图相似度较高的至少一个第二空间位置关系图,然后,参考当前的装载方案对应的第一空间位置关系图,对每个第二空间位置关系图进行调整,确定调整幅度值最小的第二空间位置关系图。将调整幅度值最小的第二空间位置关系图所对应的推荐的装载方案,作为最终的装载方案,用于指导人工或机器装载该第一待装载物体。
[0150]
第四种实施方式中:当采用第三种实施方式对n个第二空间位置关系图进行调整,上述n个第二空间位置关系图的调整幅度值均大于设定的第二阈值时,还可以通过以下方式实现步骤s204:根据第一待装载物体的信息和第一待装载物体的装载信息,以及容器信息,采用树搜索算法,得到q个装载方案,q为正整数;使用的树搜索算法得到多个装载方案的具体实现方式,可以参考上述步骤s203中对使用树搜索算法得到原装载方案的具体描述,此处不再具体赘述。其中,第一待装载物体的装载信息包括但不限于包括:第一待装载物体的装载顺序和堆叠层数;进一步的,将q个装载方案中装载率最大的装载方案,作为第一待装载物体的最终装载方案。
[0151]
另外,在本技术中根据t个物体的信息和t个物体的装载信息以及容器信息,可以采用上述的树搜索算法,得到m个原装载方案,还可以采用其他启发式方法来得到原装载方案,例如,下次适应算法nf、首次适应算法ff、最佳适应算法bf等,本技术不做具体限定。
[0152]
应理解,本技术在装载完第一待装载物体之后,需要实时更新待装载物品信息,并且更新当前的装载方案以及对应的空间位置关系图,以便等待下一个待装载物体的到达,执行与上述步骤s201-s204对应的步骤,得到相应的装载方案,以实现物体的装载。
[0153]
综上所述,本技术提供一种物体装载的方法,该方法中,获取当前第一待装载物体的信息和当前的装载方案;根据第一待装载物体的信息和当前的装载方案,生成第一空间位置关系图;再获取n个推荐的装载方案和n个第二空间位置关系图,每个第二空间位置关系图是根据相应的一个推荐的装载方案生成的,n为正整数;根据第一空间位置关系图和n个第二空间位置关系图,在n个推荐的装载方案中,确定第一待装载物体的最终装载方案。该方案根据实时到达的当前物体信息和当前容器装载方案,可以快速从多个推荐装载方案
中,灵活的确定最优或近似最优的装载方案,以指导人工或机器进行装载,从而可以提高容器的装载率。
[0154]
下面结合具体的实施例对本技术实施例提供一种物体装载的方法进行详细描述。
[0155]
基于上述图2中提出的一种物体装载的方法,对本技术提供的一种物体装载的方法进行详细介绍,图6为该实施例的具体实施流程:
[0156]
s601:获取t个物体的信息和t个物体的装载信息,以及用于装载物体的容器信息,t为大于0的正整数。
[0157]
具体的,可以从历史所有的装载记录中获取t个物体(即所有装载的物体)的信息和t个物体的装载信息,以及用于装载物体的容器信息。其中,每个物体的信息包括但不限于:物体的长度、宽度、高度中任意一项或多项,本技术不做限定。每个物体的装载信息包括但不限于:物体的装载顺序和堆叠层数。
[0158]
需要注意的是,在该步骤中还可能需要获取实际装载的约束信息,约束信息可以根据实际需求进行设定,本技术不做具体限定。
[0159]
s602:根据t个物体的信息和t个物体的装载信息以及容器信息,采用树搜索算法,得到m个原装载方案,m为大于0的正整数。
[0160]
具体的,为了保证装载的效率,优先可以通过以下方式但不限于以下方式实现:
[0161]
首先,可以将t个物体中相同物体进行组合得到多个简单块,进一步的,将多个简单块组合成复杂块;然后调整多个复杂载块的装载顺序,每次调整装载顺序,采用树搜索算法,都对应生成一原装载方案集合,将多个原装载方案集合进行汇合,得到上述的m个原装载方案,例如10000个原装载方案。执行该步骤时,可以参考上述步骤s203中的具体方式,得到原装载方案,此处不再赘述。
[0162]
s603:根据m个原装载方案,生成m个空间位置关系图,每个原装载方案对应一个空间位置关系图。
[0163]
例如上述步骤s602中的10000个原装载方案中,每个原装载方案,生成对应的空间位置关系图。其中,每个原装载方案对应的空间位置关系图中包括但不限于:前后关系图、左右关系图、上下关系图(垂直关系图)。
[0164]
执行步骤s603具体可以参考上述步骤s202,此处不再具体赘述。
[0165]
s604:根据m个空间位置关系图,在m个原装载方案中,确定n个推荐的装载方案,n为大于或等于m的正整数。
[0166]
具体的,首先将m个原装载方案中每个原装载方案与其它m-1个原装载方案进行差异性比较,每个原装载方案均得到m-1个差异性值(差异性值计算可以参考上述步骤s203中的公式一);每个原装载方案的m-1个差异值中,将差异值最小的值作为该原装载方案的多样性函数值(多样性函数值计算可以参考上述步骤s203中的公式二),从而每个原装载方案得到一个多样性函数值;进一步,将m个原装载方案的m个多样性函数值从大到小进行排序,将顺序处于前n个的多样性函数值分别对应的原装载方案作为n个推荐的装载方案。例如在上述10000个原装载方案中通过该具体步骤筛选出200个离线推荐的装载方案。
[0167]
应理解,上述步骤s601-s604为如图5中的第一阶段,该阶段为离线阶段,在该阶段,可以从历史的装载记录中,获取所有物体信息和容器信息,装载约束条件等信息。然后根据获取的信息,可以生成m个离线原装载方案;进一步,对m个离线原装载方案进行多样性
检测,进而筛选出n推荐的装载方案并保存,以等待后续实时到达的物体到达时,提供可选的装载方案。因此,该方案既可以保证装载方案的多样性,也可以保证装载率。
[0168]
s605:获取当前第一待装载物体的信息和当前的装载方案。
[0169]
具体的,该步骤相当于如图5中实时到达物体,获取实时到达的物体的信息;同时,还获取目前已由人工或机器装载好的容器的部分装载情况,该容器即将用于装载该实时到达物体;进一步的,可以根据目前已由人工或机器装载好的容器的部分装载情况,确定当前的装载方案。
[0170]
s606:根据第一待装载物体的信息和当前的装载方案,生成第一空间位置关系图。
[0171]
其中,根据第一待装载物体的信息和当前的装载方案生成的第一空间位置关系图包括但不限于:前后关系图、左右关系图、上下关系图(垂直关系图)。具体的,可以参考上述步骤s202,此处不再具体赘述。
[0172]
s607:根据第一空间位置关系图和n个推荐的装载方案对应的n个第二空间位置关系图,在n个推荐的装载方案中,确定第一待装载物体的最终的装载方案。
[0173]
具体的,在执行步骤s607时,包括但不限于以下四种实现方式:
[0174]
第一种实现方式:在n个第二空间位置关系图中,直接查询与第一空间位置关系图相同的目标空间位置关系图;将与目标空间位置关系图对应的推荐的装载方案,作为第一待装载物体的最终装载方案。
[0175]
第二种实现方式:在n个第二空间位置关系图中,若存在i个第二空间位置关系图包含第一空间位置关系图,i为小于或等于n的正整数,即该第一空间位置关系图为i个第二空间位置关系图的子图,则计算i个第二空间位置关系图对应装载方案的装载率,将其中装载率最大的推荐的装载方案作为第一待装载物体的最终装载方案。
[0176]
第三种实现方式:在n个第二空间位置关系图中,若不存在第二空间位置关系图包含第一空间位置关系图,即该第一空间位置关系图均不是n个第二空间位置关系图的子图,则基于第一空间位置关系图,对n个第二空间位置关系图进行调整,将调整幅度最小的第二空间位置关系图对应的推荐的装载方案,作为第一待装载物体的最终装载方案。
[0177]
第四种实现方式:基于第三种实现方式,根据第一空间位置关系图,对n个第二空间位置关系图进行调整,每个第二空间位置关系图的调整幅度值大于预设的阈值时,即推荐的方案调整幅度较大而导致均不可用,此时可以根据第一待装载物体的信息和第一待装载物体的装载信息,以及容器信息,采用树搜索算法,在线方式得到多个装载方案,并将装载率最大的装载方案作为第一待装载物体的最终装载方案。该方式可以为第一待装载物体提供有效的装载方案,以指导工人或机器进行装载,同时也可保证装载率。
[0178]
需要注意的是,上述s605-s607为如图5中的第二阶段,该阶段中待装载的物体实时到达,从上述第一阶段中得到的推荐的装载方案集合中,动态推荐出装载方案,以指导工人或机器对实时到达的物体进行装载,从而可以提高容器装载率。图5的第二阶段中还包括:对上述动态推荐出的装载方案进一步测试,即使用该动态推荐出的装载方案,对实时到达的物体进行装载后,判断是否还剩余未装载的物体,若无,则将该动态推荐出的装载方案作为最终装载方案输出,若否,继续进行动态推荐装载方案(执行上述步骤s605-s607),直至无剩余物体,从而该方案既可以保证到达的物体全部装载完毕,也可以使得最终装载方案的装载率较高。
[0179]
另外,在公开的br数据集和实践生产所用的真实数据集上,下述将本技术实施例提供的方案分别与其它的传统方法进行对比。
[0180]
示例性的,这里以采用树搜索算法的宽度为5,深度为2,baseline选用启发式砌墙法进行对比分析。参考表1所示,展示了本技术的动态推荐的装载方案与其它传统的装载方案在使用br数据集所得到的测试结果(例如最终装载率)(单位为%),图7a为不同方案在使用公开的br数据集所得到的测试结果的柱形图。参考表2所示,展示了本技术的动态推荐的装载方案与其它传统的装载方案在使用公开的数据集所得到的测试结果(例如最终装载率)(单位为%),图7b为不同方案在使用公开的数据集所得到的测试结果的柱形图。
[0181]
根据表1、表2,以及对应的图1和图2所展示的实验结果,可知本技术采用的动态推荐的方案的测试结果在所有情况下(即不同的人工摆放数量下)均优于baseline的方法,并且,本技术采用的动态推荐的方案除了在使用br数据集且人工摆放数量为1和2的情况下,大多数的情况下的结果优于当前树搜索;另外,本技术采用的动态推荐的方案的测试结果能够接近全局树搜索的测试结果。
[0182]
表1
[0183]
人工摆放数量全局树搜索当前树搜索baseline动态推荐189.0488.7981.5086.75289.0487.7080.4487.45389.0486.7578.9587.54489.0485.4976.1786.83
[0184]
表2
[0185]
人工摆放数量全局树搜索当前树搜索baseline动态推荐185.5178.9774.0579.13285.5178.9774.0679.13385.5178.9774.0579.13485.5178.9674.0479.12
[0186]
基于同一技术构思,本技术实施例提供一种物体装载的装置,该物体装载的装置可以包括执行上述方法实施例中所描述的方法/操作/步骤/动作所一一对应的模块或单元,该模块或单元可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。该装置可以具有如图8所示的结构。
[0187]
如图8所示,该装置800可包括输入单元801、生成单元802、处理单元803、输出单元804,下面对各单元进行具体的介绍。
[0188]
所述输入单元801,可以用于获取当前第一待装载物体的信息和当前的装载方案;所述生成单元802,可以用于根据所述第一待装载物体的信息和所述当前的装载方案,生成第一空间位置关系图;所述输入单元801,还可以用于获取n个推荐的装载方案和n个第二空间位置关系图,每个第二空间位置关系图是根据相应的一个推荐的装载方案生成的,n为正整数;所述处理单元803,可以用于根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案;所述输出单元804,可以用于输出所述第一待装载物体的最终装载方案。
[0189]
一种可能的设计中,所述处理单元803,还可以用于在所述输入单元801获取n个推
荐的装载方案和所述n个推荐的装载方案的空间位置关系图之前,先通过所述输入单元801获取t个物体的信息和所述t个物体的装载信息,以及用于装载物体的容器信息;所述t为正整数;所述t个物体中包括所述第一待装载物体,所述装载信息包括所述t个物体的装载顺序和堆叠层数;然后根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,可以得到m个原装载方案,其中,所述m个装载方案的装载率均大于或等于设定的第一阈值;所述m为大于或等于n的正整数;进一步的根据所述m个原装载方案,生成m个空间位置关系图,每个原装载方案对应一个空间位置关系图;最后可以根据所述m个空间位置关系图,在所述m个原装载方案中,确定所述n个推荐的装载方案。
[0190]
一种可能的设计中,所述处理单元803,在根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,得到m个原装载方案时,具体可以用于:根据所述t个物体中的每个物体的信息和每个物体的装载信息以及所述容器信息,采用树搜索算法,可以得到每个物体的第一原装载方案集合;然后再将所述t个物体对应的t个第一原装载方案集合进行汇总,作为所述m个原装载方案。
[0191]
一种可能的设计中,所述处理单元803,在根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,得到m个原装载方案时,具体可以用于:首先可以根据所述t个物体的信息和所述t个物体的装载信息,得到至少一个第一块的信息和/或至少一个第二块的信息,其中,所述第一块由至少一个待装载物体组合得到,所述第二块由至少一个所述第一块组合得到;然后可以根据每个第一块的信息和/或每个第二块的信息,以及所述容器信息,采用树搜索算法,得到每个所述第一块的第二原装载方案集合,和/或每个所述第二块的第二原装载方案集合;最后可以将所述至少一个第一块对应的至少一个第二原装载方案集合进行汇总,和/或将所述至少一个第二块对应的至少一个第二原装载方案集合进行汇总,作为所述m个原装载方案。
[0192]
一种可能的设计中,所述处理单元803,在根据所述m个空间位置关系图,在所述m个原装载方案中,确定所述n个推荐的装载方案时,具体可以用于:首先可以根据所述m个空间位置关系图,计算所述m个原装载方案中每个原装载方案的多样性函数值;然后可以按照所述m个原装载方案的多样性函数值由大到小的顺序,将顺序处于前n个的所述多样性函数值分别对应的原装载方案作为所述n个推荐的装载方案。
[0193]
一种可能的设计中,所述处理单元803,在根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案时,具体可以用于:在所述n个第二空间位置关系图中,确定与所述第一空间位置关系图相同的目标空间位置关系图;将与所述目标空间位置关系图对应的推荐的装载方案,作为所述第一待装载物体的最终装载方案。
[0194]
一种可能的设计中,在所述n个第二空间位置关系图中,存在所述第一空间位置关系图;所述处理单元803在根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案时,具体可以用于:确定在所述n个第二空间位置关系图中包含的i个第二空间位置关系图中包含所述第一空间位置关系图,所述i为小于或等于n的正整数;在所述i个第二空间位置关系图所对应的i个推荐的装载方案中,将装载率最大的一个推荐的装载方案,作为所述第一待装载物体的最终装载方案。
[0195]
一种可能的设计中,在所述n个第二空间位置关系图中,不存在所述第一空间位置关系图;所述处理单元803,在根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案时,具体可以用于:首先可以根据所述第一空间位置关系图,对所述n个第二空间位置关系图进行调整,得到所述n个第二空间位置关系图的调整幅度值;再将所述调整幅度值最小的所述第二空间位置关系图对应的推荐的装载方案,作为所述第一待装载物体的最终装载方案。
[0196]
一种可能的设计中,所述处理单元803,还可以用于:当所述n个第二空间位置关系图的调整幅度值均大于设定的第二阈值时,可以根据所述第一待装载物体的信息和所述第一待装载物体的装载信息,以及所述容器信息,采用树搜索算法,得到q个装载方案,q为正整数;所述第一待装载物体的装载信息包括所述第一待装载物体的装载顺序和堆叠层数;可以将所述q个装载方案中装载率最大的装载方案,作为所述第一待装载物体的最终装载方案。
[0197]
一种可能的设计中,所述第一待装载物体的信息包括下述信息中的至少一项或多项:所述第一待装载物体的长度、所述第一待装载物体的高度、所述第一待装载物体的宽度、所述第一待装载物体的重量。
[0198]
基于同一技术构思,本技术实施例提供一种物体装载的设备,该物体装载的装置可以包括执行上述方法实施例中所描述的方法/操作/步骤/动作所一一对应的模块或单元,该模块或单元可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。该装置可以具有如图9所示的结构。
[0199]
如图9所示,该装置900可包括输入模块901、生成模块902、处理模块903、输出模块904,下面对各单元进行具体的介绍。
[0200]
应理解,上述的输入模块901和输出模块904可以为通信接口电路,以实现数据和/或信息的接收和/或发送,上述的输入模块901和输出模块904还可以为收发器,以实现数据和/或信息的接收和/或发送。因此,输入和输出模块的具体形态,本技术不做限定。另外,装载设备中的处理模块实际可以为处理器。
[0201]
所述输入模块901,可以用于获取当前第一待装载物体的信息和当前的装载方案;所述生成模块902,可以用于根据所述第一待装载物体的信息和所述当前的装载方案,生成第一空间位置关系图;所述输入模块901,还可以用于获取n个推荐的装载方案和n个第二空间位置关系图,每个第二空间位置关系图是根据相应的一个推荐的装载方案生成的,n为正整数;所述处理模块903,可以用于根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案;所述输出模块904,可以用于输出所述第一待装载物体的最终装载方案。
[0202]
一种可能的设计中,所述处理模块903,还可以用于:在所述输入模块901获取n个推荐的装载方案和所述n个推荐的装载方案的空间位置关系图之前,首先可以通过所述输入模块901获取t个物体的信息和所述t个物体的装载信息,以及用于装载物体的容器信息;所述t为正整数;所述t个物体中包括所述第一待装载物体,所述装载信息包括所述t个物体的装载顺序和堆叠层数;然后可以根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,得到m个原装载方案,其中,所述m个装载方案的装载率均大于或等于设定的第一阈值;所述m为大于或等于n的正整数;最后可以根据所述m个原装载
方案,生成m个空间位置关系图,每个原装载方案对应一个空间位置关系图;根据所述m个空间位置关系图,在所述m个原装载方案中,确定所述n个推荐的装载方案。
[0203]
一种可能的设计中,所述处理模块903,在根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,得到m个原装载方案时,具体可以用于:先根据所述t个物体中的每个物体的信息和每个物体的装载信息以及所述容器信息,采用树搜索算法,可以得到每个物体的第一原装载方案集合;再将所述t个物体对应的t个第一原装载方案集合进行汇总,作为所述m个原装载方案。
[0204]
一种可能的设计中,所述处理模块903,在根据所述t个物体的信息和所述t个物体的装载信息以及所述容器信息,采用树搜索算法,得到m个原装载方案时,具体可以用于:首先可以根据所述t个物体的信息和所述t个物体的装载信息,得到至少一个第一块的信息和/或至少一个第二块的信息,其中,所述第一块由至少一个待装载物体组合得到,所述第二块由至少一个所述第一块组合得到;进一步可以根据每个第一块的信息和/或每个第二块的信息,以及所述容器信息,采用树搜索算法,得到每个所述第一块的第二原装载方案集合,和/或每个所述第二块的第二原装载方案集合;最后可以将所述至少一个第一块对应的至少一个第二原装载方案集合进行汇总,和/或将所述至少一个第二块对应的至少一个第二原装载方案集合进行汇总,作为所述m个原装载方案。
[0205]
一种可能的设计中,所述处理模块903,在根据所述m个空间位置关系图,在所述m个原装载方案中,确定所述n个推荐的装载方案时,具体可以用于:先可以根据所述m个空间位置关系图,计算所述m个原装载方案中每个原装载方案的多样性函数值;然后按照所述m个原装载方案的多样性函数值由大到小的顺序,再将顺序处于前n个的所述多样性函数值分别对应的原装载方案作为所述n个推荐的装载方案。
[0206]
一种可能的设计中,所述处理模块903,在根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案时,具体可以用于:在所述n个第二空间位置关系图中,可以确定与所述第一空间位置关系图相同的目标空间位置关系图;再将与所述目标空间位置关系图对应的推荐的装载方案,作为所述第一待装载物体的最终装载方案。
[0207]
另一种可能的设计中,在所述n个第二空间位置关系图中,存在所述第一空间位置关系图;所述处理模块903,在根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案时,具体可以用于:首先确定在所述n个第二空间位置关系图中包含的i个第二空间位置关系图中包含所述第一空间位置关系图,所述i为小于或等于n的正整数;在所述i个第二空间位置关系图所对应的i个推荐的装载方案中,可以将装载率最大的一个推荐的装载方案,作为所述第一待装载物体的最终装载方案。
[0208]
一种可能的设计中,在所述n个第二空间位置关系图中,不存在所述第一空间位置关系图;所述处理模块903,在根据所述第一空间位置关系图和所述n个第二空间位置关系图,在所述n个推荐的装载方案中,确定所述第一待装载物体的最终装载方案时,具体可以用于:先根据所述第一空间位置关系图,对所述n个第二空间位置关系图进行调整,可以得到所述n个第二空间位置关系图的调整幅度值;然后将所述调整幅度值最小的所述第二空间位置关系图对应的推荐的装载方案,作为所述第一待装载物体的最终装载方案。
[0209]
一种可能的设计中,所述处理模块903,还可以用于:当所述n个第二空间位置关系图的调整幅度值均大于设定的第二阈值时,可以根据所述第一待装载物体的信息和所述第一待装载物体的装载信息,以及所述容器信息,采用树搜索算法,得到q个装载方案,q为正整数;所述第一待装载物体的装载信息包括所述第一待装载物体的装载顺序和堆叠层数;进一步的可以将所述q个装载方案中装载率最大的装载方案,作为所述第一待装载物体的最终装载方案。
[0210]
一种可能的设计中,所述第一待装载物体的信息包括下述信息中的至少一项或多项:所述第一待装载物体的长度、所述第一待装载物体的高度、所述第一待装载物体的宽度、所述第一待装载物体的重量。
[0211]
基于与上述方法实施例相同构思,本技术实施例还提供了一种计算机可读存储介质,其上存储有一些指令,这些指令被计算机调用执行时,可以使得计算机完成上述方法实施例、方法实施例的任意一种可能的设计中所涉及的方法。本技术实施例中,对计算机可读存储介质不做限定,例如,可以是ram(random-access memory,随机存取存储器)、rom(read-only memory,只读存储器)等。
[0212]
基于与上述方法实施例相同构思,本技术还提供一种计算机程序产品,该计算机程序产品在被计算机调用执行时可以完成方法实施例以及上述方法实施例任意可能的设计中所涉及的方法。
[0213]
基于与上述方法实施例相同构思,本技术还提供一种芯片,该芯片可以包括处理器以及接口电路,用于完成上述方法实施例、方法实施例的任意一种可能的实现方式中所涉及的方法,其中,“耦合”是指两个部件彼此直接或间接地结合,这种结合可以是固定的或可移动性的,这种结合可以允许流动液、电、电信号或其它类型信号在两个部件之间进行通信。
[0214]
综上所述,本技术实施例可以根据实时到达的当前物体信息和当前容器装载方案,快速从多个推荐装载方案中,灵活的确定最优或近似最优的装载方案,以指导人工或机器进行装载,从而可以提高容器的装载率。
[0215]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本技术实施例可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括ram、rom、电可擦可编程只读存储器(electrically erasable programmable read only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(digital subscriber line,dsl)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、dsl或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本技术实施例所使用的,盘(disk)和碟(disc)包括压缩光碟(compact disc,cd)、
激光碟、光碟、数字通用光碟(digital video disc,dvd)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
[0216]
总之,以上所述仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡根据本技术的揭露,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1