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

原材料排样方法、装置、电子设备及存储介质与流程

2022-06-11 15:00:37 来源:中国专利 TAG:


1.本技术实施例涉及排样技术领域,尤其涉及一种原材料排样方法、装置、电子设备及存储介质。


背景技术:

2.np(nondeterministic polynomially,非确定性多项式)类问题是指一个复杂问题不能确定是否能在多项式时间内找到答案,但是可以在多项式时间内验证答案是否正确。目前,对于np问题无法求得最优解,只能采取迭代的方式逼近最优解,求得较优的结果,目前常用的算法有蚁群算法、遗传算法、动态规划算法等。
3.其中,原材料排样算法属于遗传算法的一种,原材料为任意形状的板件,计算将多个工件从原材料切割出来需要消耗多少原材料,其中工件边界均包含在原材料边界内部,且工件的尺寸各不相同。为了得到原材料消耗最少的排样结果需要进行多次的迭代计算,且每次迭代都需要对每一个排样结果的原材料消耗情况进行计算,在迭代次数较多时,整个计算过程非常耗时,效率极低。


技术实现要素:

4.鉴于此,为解决上述在迭代次数较多时,整个计算过程非常耗时,效率极低的技术问题,本技术实施例提供一种原材料排样方法、装置、电子设备及存储介质。
5.第一方面,本技术实施例提供一种原材料排样方法,所述方法包括:获取工件群体,获取所述工件群体中的全部工件;确定所述工件群体对应的排样结果数量;按照预设的排样规则对所述全部工件进行排样,得到所述排样结果数量的排样结果;并行确定每种所述排样结果的原材料消耗情况;根据所述原材料消耗情况,从所有所述排样结果中确定目标排样结果。
6.在一个可选的实施方式中,所述按照预设的排样规则对所述全部工件进行排样,得到所述排样结果数量的排样结果,包括:获取所述全部工件的初始顺序;对所述初始顺序的所述全部工件按照预设的比例进行交叉,得到所述全部工件的目标顺序;基于所述全部工件的目标顺序,在原材料上对所述全部工件进行排样得到所述排样结果数量的排样结果;或者,获取所述全部工件的初始方向;对所述初始方向的所述全部工件按照预设的比例进行变异,得到所述全部工件的目标方向;
基于所述全部工件的目标方向,在原材料上对所述全部工件进行排样得到所述排样结果数量的排样结果;或者,获取所述全部工件的初始顺序和初始方向;对所述初始顺序的所述全部工件按照预设的交叉比例进行交叉,得到所述全部工件的目标顺序;基于所述全部工件的目标顺序,在原材料上对所述全部工件进行排样,以使得到p个排样结果;对所述初始方向的所述全部工件按照预设的变异比例进行变异,得到所述全部工件的目标方向;基于所述全部工件的目标方向,在原材料上对所述全部工件进行排样,以使得到q个排样结果,所述p和所述q之和与所述排样结果数量相等。
7.在一个可选的实施方式中,所述并行确定每种所述排样结果的原材料消耗情况,包括:确定所述排样结果数量,启动与所述排样结果数量相同的多个线程;通过多个线程并行确定每种所述排样结果的原材料消耗情况。
8.在一个可选的实施方式中,所述根据所述原材料消耗情况,从所有所述排样结果中确定目标排样结果,包括:根据所述原材料消耗情况对所述排样结果进行排序;确定未超过原材料范围的原材料消耗最少的排样结果为所述目标排样结果。
9.在一个可选的实施方式中,在所述确定未超过原材料范围的原材料消耗最少的排样结果为所述目标排样结果之前,还包括:判断是否满足预设的停止规则;若满足所述停止规则,则确定所述未超过原材料范围的原材料消耗最少的排样结果为所述目标排样结果;若不满足所述停止规则,则对所有所述排样结果进行遗传操作,生成新的所述排样结果数量的排样结果;以及,跳转至所述并行确定每种所述排样结果的原材料消耗情况的步骤。
10.在一个可选的实施方式中,所述对所有所述排样结果进行遗传操作,生成新的所述排样结果数量的排样结果,包括:根据所述原材料消耗情况对所述排样结果数量的排样结果进行筛选,得到预设的目标数量的排样结果;对所述目标数量的排样结果通过预设的衍生规则进行衍生,得到新的所述排样结果数量的排样结果。
11.在一个可选的实施方式中,所述对所述目标数量的排样结果通过预设的衍生规则进行衍生,包括:从所述目标数量的排样结果中选取n个排样结果,确定所述n个排样结果中每种排样结果对应的所述全部工件的第一顺序;对所述第一顺序的所述全部工件按照预设的比例进行交叉,得到所述全部工件的
第二顺序;基于所述全部工件的第二顺序,在原材料上对所述全部工件进行排样得到第一数量的排样结果;从所述目标数量的排样结果中选取m个排样结果,确定所述m个排样结果中每种排样结果对应的所述全部工件的第一方向,所述m和所述n之和小于等于所述目标数量;对所述第一方向的所述全部工件按照预设的比例进行变异,得到所述全部工件的第二方向;基于所述全部工件的第二方向,在原材料上对所述全部工件进行排样得到第二数量的排样结果,所述第一数量与所述第二数量之和与所述排样结果数量相等;或者,从所述目标数量的排样结果中选取n个排样结果,确定所述n个排样结果中每种排样结果对应的所述全部工件的第一顺序;对所述第一顺序的所述全部工件按照预设的比例进行交叉,得到所述全部工件的第二顺序;基于所述全部工件的第二顺序,在原材料上对所述全部工件进行排样得到所述排样结果数量的排样结果;或者,从所述目标数量的排样结果中选取m个排样结果,确定所述m个排样结果中每种排样结果对应的所述全部工件的第一方向;对所述第一方向的所述全部工件按照预设的比例进行变异,得到所述全部工件的第二方向;基于所述全部工件的第二方向,在原材料上对所述全部工件进行排样得到所述排样结果数量的排样结果。
12.第二方面,本技术实施例提供一种原材料排样装置,所述装置包括:工件获取模块:获取工件群体,获取所述工件群体中的全部工件;排样结果数量确认模块:确定所述工件群体对应的排样结果数量;排样模块:按照预设的排样规则对所述全部工件进行排样,得到所述排样结果数量的排样结果;排样结果计算模块:并行确定每种所述排样结果的原材料消耗情况;目标排样结果确定模块:根据所述原材料消耗情况,从所有所述排样结果中确定目标排样结果。
13.第三方面,本技术实施例提供一种电子设备,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的程序,以实现第一方面中任一项所述的方法。
14.第四方面,本技术实施例提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第一方面中任一项所述的方法。
15.本技术实施例提供的技术方案,获取工件群体,获取工件群体中的全部工件,确定工件群体对应的排样结果数量,按照预设的排样规则对全部工件进行排样,得到排样结果数量的排样结果,并行确定每种排样结果的原材料消耗情况,根据原材料消耗情况,从所有
排样结果中确定目标排样结果。在进行原材料排样过程中,采用并行运算方式计算每种排样结果的原材料消耗,能够提高运算效率。
附图说明
16.图1为本技术实施例提供的第一种原材料排样方法的实施流程示意图;图2为本技术实施例提供的第二种原材料排样方法的实施流程示意图;图3为本技术实施例提供的第三种原材料排样方法的实施流程示意图;图4为本技术实施例提供的第四种原材料排样方法的实施流程示意图;图5为本技术实施例提供的第五种原材料排样方法的实施流程示意图;图6为本技术实施例提供的第六种原材料排样方法的实施流程示意图;图7为本技术实施例提供的一种排样结果生成方法的实施流程示意图;图8为本技术实施例提供的另一种排样结果生成方法的实施流程示意图;图9为本技术实施例提供的又一种排样结果生成方法的实施流程示意图;图10为本技术实施例提供的再一种排样结果生成方法的实施流程示意图;图11为本技术实施例提供的一种原材料排样的装置的结构示意图;图12为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
17.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
18.为便于理解本技术实施例,下面结合附图以具体实施例对本技术提供的原材料排样方法做进一步的解释说明,实施例并不构成对本技术实施例的限定。
19.图1为本技术实施例提供的第一种原材料排样方法的实施流程示意图,该方法可包括以下步骤:s101:获取工件群体,获取工件群体中的全部工件。
20.在本技术实施例中,工件群体可以是任意数量的工件组成的群体,群体中所包含的全部工件为需要进行原材料排样的所有工件。
21.其中,工件为任意形状的工件,例如矩形工件,矩形工件为长宽均小于原材料的矩形,且工件的长宽各不相同,将全部工件按照排样结果从原材料中切割出来。本技术的工件可以是木板、地板砖等,本技术中对工件的具体种类不做限定。
22.s102:确定工件群体对应的排样结果数量。
23.在本技术实施例中,工件群体中的全部工件有多种排样方式,工件群体越大,排样方式越多,一一列举会产生很大的消耗,因此在初始需要确定一个排样结果数量,按照此数量去产生排样结果。
24.例如,确定用户输入的工件群体对应的排样结果数量100,意味着要产生100种排样结果。
25.s103:按照预设的排样规则对全部工件进行排样,得到排样结果数量的排样结果。
26.在本技术实施例中,按照预设的排样规则对全部工件进行排样,排样过程为:按照全部工件的摆放顺序及方向每次取一个工件放到原材料板件上,当该原材料板件被排满(无法放下任何一个工件),取出下一个板件,继续排放工件,直到所有工件都排放到了原材料板件中,此时全部工件的摆放顺序及方向为一个排样结果。
27.排样结果的数量由s102中的排样结果数量确定。例如,确定用户输入的工件群体对应的排样结果数量100,则要对全部工件进行100次排样,产生100种排样结果。
28.s104:并行确定每种排样结果的原材料消耗情况。
29.在本技术实施例中,例如工件种类不同,对应的原材料也不同,例如工件为矩形木板,则原材料为长宽均大于工件的矩形木板,本技术对此不做限定。
30.在本技术实施例中,根据s103中的排样结果计算每种排样结果对应的原材料消耗情况,若采用串行计算会耗费大量时间,为了节省时间,提高运算效率,本技术采用并行计算方式,即同时计算所有排样结果的原材料消耗情况。
31.在本技术实施例中,可以采用gpu架构进行并行运算,gpu拥有的并行线程比cpu要多得多,因此相比cpu,gpu对数据的并行处理能力更强大,如果排样结果数量为1000,将1000个排样结果,在gpu中启用1000个线程,每种排样结果都单独在一个线程中运行,效率将远高于在cpu中完成一次运算。
32.s105:根据原材料消耗情况,从所有排样结果中确定目标排样结果。
33.在本技术实施例中,根据s104中计算得到的每种排样结果对应的原材料消耗情况去确定最符合要求的目标排样结果。目标排样结果包括所有排样结果中原材料消耗最少的排样结果。
34.通过上述对本技术实施例提供的技术方案的描述,本技术的原材料排样方法在获取工件群体后,对全部工件进行排样,对每种排样结果的原材料消耗情况进行并行计算,根据原材料消耗情况从中确定原材料消耗最少的排样结果。并行计算所有排样结果的原材料消耗情况,加快了计算时间,提高了效率。
35.图2为本技术实施例提供的第二种原材料排样方法的实施流程示意图,该方法可包括以下步骤:s201:获取工件群体,获取工件群体中的全部工件。
36.s202:确定工件群体对应的排样结果数量。
37.在本技术实施例中,s201、s202在s101、s102中已经给出了详细介绍,在此不再赘述。
38.s203:获取全部工件的初始顺序。
39.在本技术实施例中,在获取工件群体后,获取工件群体每个工件的初始摆放顺序,例如全部工件按照面积由大到小的顺序摆放,也可以是面积由小到大摆放,本技术对此不做限定。
40.s204:对初始顺序的全部工件按照预设的比例进行交叉,得到全部工件的目标顺序。
41.在本技术实施例中,预设的比例表示从全部工件中抽取的工件比例,例如全部工件数量为100,预设的比例为0.1,则表示从100个工件中抽取10个工件。
42.对按照预设的比例抽取的工件进行交叉,即修改抽取出来的工件的顺序,例如从
100个工件中抽取第2位和第50位的两个工件,对这两个工件进行交叉,交换它们的位置,得到工件进行交叉后的全部工件的目标顺序,对于全部工件数量、抽取的工件数量的数量及工件的位置,工件交叉时的组合方式,本技术不做限定。
43.s205:基于全部工件的目标顺序,在原材料上对全部工件进行排样得到排样结果数量的排样结果。
44.在本技术实施例中,进行一次交叉,即可获得一种全部工件的目标顺序,根据通过交叉获得的目标顺序,将全部工件在原材料上进行排样得到排样结果数量的排样结果。
45.例如,排样结果数量为100,则需要进行100次交叉,获得100种目标顺序,从而获得100种排样结果,本技术对此不做限定。
46.s206:并行确定每种排样结果的原材料消耗情况。
47.s207:根据原材料消耗情况,从所有排样结果中确定目标排样结果。
48.在本技术实施例中,s206、s207在s104、s105中已经给出了详细介绍,在此不再赘述。
49.图3为本技术实施例提供的第三种原材料排样方法的实施流程示意图,该方法可包括以下步骤:s301:获取工件群体,获取工件群体中的全部工件。
50.s302:确定工件群体对应的排样结果数量。
51.在本技术实施例中,s301、s302在s101、s102中已经给出了详细介绍,在此不再赘述。
52.s303:获取全部工件的初始方向。
53.在本技术实施例中,在获取工件群体后,获取工件群体每个工件的初始摆放方向,例如工件为矩形时,全部工件按照长边同向摆放,本技术对此不做限定。
54.s304:对初始方向的全部工件按照预设的比例进行变异,得到全部工件的目标方向。
55.在本技术实施例中,预设的比例表示从全部工件中抽取的工件比例,例如全部工件数量为100,预设的比例为0.1,则表示从100个工件中抽取10个工件。
56.对按照预设的比例抽取的工件进行变异,即修改抽取出来的工件的方向,例如从100个工件中抽取随机抽取一个工件,对随机抽取出的工件进行旋转90
°
的操作,得到全部工件的目标方向,对于工件的数量、抽取的工件数量、抽取的工件进行旋转的角度,本技术不做限定。
57.s305:基于全部工件的目标方向,在原材料上对全部工件进行排样得到排样结果数量的排样结果。
58.在本技术实施例中,进行一次变异,即可获得一种全部工件的目标方向,根据通过变异获得的目标方向,将全部工件在原材料上进行排样得到排样结果数量的排样结果。
59.例如,排样结果数量为100,则需要进行100次变异,获得100种目标方向,从而获得100种排样结果,本技术对此不做限定。
60.s306:并行确定每种排样结果的原材料消耗情况。
61.s307:根据原材料消耗情况,从所有排样结果中确定目标排样结果。
62.在本技术实施例中,s306、s307在s104、s105中已经给出了详细介绍,在此不再赘
述。
63.图4为本技术实施例提供的第四种原材料排样方法的实施流程示意图,该方法可包括以下步骤:s401:获取工件群体,获取工件群体中的全部工件。
64.s402:确定工件群体对应的排样结果数量。
65.在本技术实施例中,s401、s402在s101、s102中已经给出了详细介绍,在此不再赘述。
66.s403:获取全部工件的初始顺序和初始方向。
67.在本技术实施例中,在获取工件群体后,获取工件群体每个工件的初始摆放顺序和方向,例如工件为矩形时,全部工件按照面积由大到小的顺序、长边同向的方式摆放,也可以是面积由小到大的顺序、长边同向的方式摆放,本技术对此不做限定。
68.s404:对初始顺序的全部工件按照预设的交叉比例进行交叉,得到全部工件的目标顺序。
69.在本技术实施例中,预设的比例包括交叉比例和变异比例,例如在全部工件数量为100时,交叉比例为0.2表示,在100个工件中抽取20个工件进行交叉,即进行顺序的改变;变异比例为0.3表示,在100个工件中抽取30个工件进行变异,即进行旋转一定的角度。其中,交叉比例和变异比例可以相同也可以不同,本技术对此不做限定。
70.在本技术实施例中,对按照预设的交叉比例进行抽取的工件进行交叉,在s204中已经给出了详细介绍,在此不再赘述。
71.s405:基于全部工件的目标顺序,在原材料上对全部工件进行排样,以使得到p个排样结果。
72.在本技术实施例中,进行一次交叉,即可获得一种全部工件的目标顺序,根据通过交叉获得的目标顺序,将全部工件在原材料上进行排样得到p个排样结果。
73.例如,用户确定p为30,则需要进行30次交叉,获得30种目标顺序,从而获得30种排样结果,需要说明的是,p的值应小于本技术中s202确定的排样结果数量,本技术对p的具体数值不做限定。
74.s406:对初始方向的全部工件按照预设的变异比例进行变异,得到全部工件的目标方向。
75.在本技术实施例中,在s404对预设的交叉比例和预设的变异比例已经给出了详细介绍,在此不再赘述。
76.在本技术实施例中,对按照预设的变异比例进行抽取的工件进行变异,在s304中已经给出了详细介绍,在此不再赘述。
77.s407:基于全部工件的目标方向,在原材料上对全部工件进行排样,以使得到q个排样结果,p和q之和与排样结果数量相等。
78.在本技术实施例中,进行一次变异,即可获得一种全部工件的目标方向,根据通过变异获得的目标方向,将全部工件在原材料上进行排样得到q个排样结果。
79.例如,用户确定q为70,则需要进行70次交叉,获得70种目标顺序,从而获得70种排样结果,其中,p的值与q的值相加为本技术s402确定的排样结果数量,本技术对p、q的具体数值不做限定。
80.s408:并行确定每种排样结果的原材料消耗情况。
81.s409:根据原材料消耗情况,从所有排样结果中确定目标排样结果。
82.在本技术实施例中,s408、s409在s104、s105中已经给出了详细介绍,在此不再赘述。
83.通过上述图2到图4对本技术实施例提供的技术方案的描述,对按照预设的比例抽取的工件进行交叉和/或变异,得到排样结果数量的排样结果,可以是只进行交叉,得到排样结果数量的排样结果;也可以只进行变异,得到排样结果数量的排样结果;还可以通过交叉和变异两种方式得到排样结果数量的排样结果,用户在获取排样结果时,有更多的选择。
84.例如,确定排样结果数量为100,可以通过100次的交叉得到100种排样结果;可以通过100次的变异得到100种排样结果;还可以通过40次交叉得到40种排样结果,通过60次变异得到60种排样结果。
85.需要说明的是,用户可以采取任意组合方式得到排样结果数量的排样结果,本技术对此不做限定。
86.图5为本技术实施例提供的第五种原材料排样方法的实施流程示意图,该方法可包括以下步骤:s501:获取工件群体,获取工件群体中的全部工件。
87.s502:确定工件群体对应的排样结果数量。
88.s503:按照预设的排样规则对全部工件进行排样,得到排样结果数量的排样结果。
89.在本技术实施例中,s501至s503在s101至s103中已经给出了详细介绍,在此不再赘述。
90.s504:确定排样结果数量,启动与排样结果数量相同的多个线程。
91.在本技术实施例中,根据确定的排样结果数量,确定启动的线程数量,例如确定的排样结果数量为100,则需要启动的线程数为100。
92.s505:通过多个线程并行确定每种排样结果的原材料消耗情况。
93.在本技术实施例中,需要对每种排样结果进行原材料消耗情况的计算,根据排样结果数量确定启动的线程数量,保证每种排样结果都能单独占有一个线程。
94.例如,排样结果数量为100,则启动100个线程,100个排样结果分别在单独的线程中计算各自的原材料消耗情况。
95.s506:根据原材料消耗情况对排样结果进行排序。
96.在本技术实施例中,根据s505中确定的所有排样结果的原材料消耗情况,对排样结果进行排序,可以根据原材料消耗情况由多到少进行排序,也可以由少到多进行排序,本技术对此不做限定。
97.s507:确定未超过原材料范围的原材料消耗最少的排样结果为所述目标排样结果。
98.在本技术实施例中,根据s506的排序结果,其中原材料消耗最少的排样结果为本技术要求的目标结果。未超过原材料范围表示,根据选取的目标排样结果进行排样时,工件均包含于原材料的边界内部,不得超过原材料的范围。
99.例如,本技术的工件为矩形,则基于目标排样结果对原材料进行排样时,工件不得超过原材料的长宽。
100.其中,在确定未超过原材料范围的原材料消耗最少的排样结果为所述目标排样结果之前,还可以根据预设条件进行停止判断,具体步骤请参见图6。
101.s601:获取工件群体,获取工件群体中的全部工件。
102.s602:确定工件群体对应的排样结果数量。
103.s603:按照预设的排样规则对全部工件进行排样,得到排样结果数量的排样结果。
104.s604:并行确定每种排样结果的原材料消耗情况。
105.在本技术实施例中,s601至s604在s101至s104中已经给出了详细介绍,在此不再赘述。
106.s605:根据原材料消耗情况对排样结果进行排序。
107.在本技术实施例中,s605在s506中已经给出了详细介绍,在此不再赘述。
108.s606:判断是否满足预设的停止规则。
109.在本技术实施例中,得到原材料消耗情况后,可以判断是否满足预设的停止规则,例如预设的停止规则可以是预设的迭代次数,预设迭代次数为50时,即需要执行50次程序;预设的停止规则还可以是原材料消耗量小于某个数值,在所有的排样结果的原材料消耗量均未小于这个数值时,需要重复执行程序;预设的停止规则还可以是预设的一个时间阈值,在程序运行时间达到该时间阈值时,程序停止运行,本技术对预设的停止规则不做限定,可依据实际情况确定停止规则。
110.s607:若满足停止规则,则确定未超过原材料范围的原材料消耗最少的排样结果为目标排样结果。
111.在本技术实施例中,满足停止规则时,根据s605选取未超过原材料范围的原材料消耗最少的排样结果,该排样结果即为目标排样结果,在s507中已经给出了详细介绍,在此不再赘述。
112.s608:若不满足停止规则,则对所有排样结果进行遗传操作,生成新的排样结果数量的排样结果;以及,跳转至并行确定每种排样结果的原材料消耗情况的步骤。
113.在本技术实施例中,若此时不满足预先设置的停止规则,则对所有排样结果进行遗传操作,生成新的排样结果数量的排样结果,排样结果数量即为s602确定的排样结果数量。
114.图7为本技术实施例提供的一种排样结果生成方法的实施流程示意图,该方法可包括以下步骤:s701:根据原材料消耗情况对排样结果数量的排样结果进行筛选,得到预设的目标数量的排样结果。
115.在本技术实施例中,根据原材料消耗情况对排样结果进行筛选,淘汰掉原材料消耗较多的部分排样结果,保留原材料消耗较少的部分排样结果,其中保留的排样结果的数量为预设的目标数量。
116.例如,排样结果数量为100,目标数量为50,则需要根据原材料消耗情况淘汰掉50个原材料消耗较多的排样结果,保留50个原材料消耗较少的排样结果。
117.s702:对目标数量的排样结果通过预设的衍生规则进行衍生,得到新的排样结果数量的排样结果。
118.在本技术实施例中,将保留的目标数量的原材料消耗较少的排样结果按照预设的衍生规则进行衍生,得到一组新的排样结果,新的排样结果的数量为s602确定的排样结果数量。
119.例如,排样结果数量为100,目标数量为50,则需要通过衍生规则将50个排样结果进行衍生,得到100个排样结果。
120.具体地,图8为本技术实施例提供的另一种排样结果生成方法的实施流程示意图,该方法可包括以下步骤:s801:根据原材料消耗情况对排样结果数量的排样结果进行筛选,得到预设的目标数量的排样结果。
121.在本技术实施例中,s801在s701中已经给出了详细介绍,在此不再赘述。
122.s802:从目标数量的排样结果中选取n个排样结果,确定n个排样结果中每个排样结果对应的全部工件的第一顺序。
123.在本技术实施例中,从目标数量的排样结果中选取n个排样结果,确定n个排样结果中的每个排样结果对应的全部工件的第一顺序,其中n的值应小于目标数量。
124.例如,目标数量为50,n为10,则确定10个排样结果中每个排样结果对应的全部工件的顺序,统称为第一顺序。
125.s803:对第一顺序的全部工件按照预设的比例进行交叉,得到全部工件的第二顺序。
126.在本技术实施例中,预设的比例包括交叉比例和变异比例,对第一顺序的全部工件按照预设的比例进行交叉使用的是交叉比例,交叉后得到全部工件的第二顺序。
127.例如,全部工件数量为100,交叉比例为0.1,变异比例为0.2,则对第一顺序的全部工件按照预设的比例进行交叉,需要从100个工件中抽取10个工件,修改它们的顺序,得到全部工件的第二顺序。
128.s804:基于全部工件的第二顺序,在原材料上对全部工件进行排样得到第一数量的排样结果。
129.在本技术实施例中,第一数量的排样结果是从目标数量的排样结果中选取的n个排样结果通过交叉规则衍生得到的排样结果。
130.例如,目标数量为50,n为10,第一数量为30,则需要从50个排样结果中选取10个排样结果进行交叉,得到30个排样结果。
131.s805:从目标数量的排样结果中选取m个排样结果,确定m个排样结果中每个排样结果对应的全部工件的第一方向,m和n之和小于等于目标数量。
132.在本技术实施例中,从目标数量的排样结果中选取n个排样结果进行交叉后,从剩余的排样结果中选取m个排样结果,确定m个排样结果中的每个排样结果对应的全部工件的第一方向,其中m的值与n的值相加应小于等于目标数量,当m和n小于目标数量时,先对m和n之和进行计算,从目标数量中选取原材料消耗较少的m n个排样结果。
133.例如,目标数量为50,n为10,则m的数值应小于等于40,当m为40时,则确定40个排样结果中每个排样结果中每个排样结果对应的全部工件的方向,统称为第一方向。
134.s806:对第一方向的全部工件按照预设的比例进行变异,得到全部工件的第二方向。
135.在本技术实施例中,预设的比例包括交叉比例和变异比例,对第一方向的全部工件按照预设的比例进行变异使用的是变异比例,变异后得到全部工件的第二方向。
136.例如,全部工件数量为100,交叉比例为0.1,变异比例为0.2,则对第一方向的全部工件按照预设的比例进行变异,需要从100个工件中抽取20个工件,对它们旋转一定的角度,得到全部工件的第二方向。
137.s807:基于全部工件的第二方向,在原材料上对全部工件进行排样得到第二数量的排样结果,第一数量与第二数量之和与排样结果数量相等。
138.在本技术实施例中,第二数量的排样结果是从目标数量的排样结果中选取的m个排样结果通过变异规则衍生得到的排样结果。
139.例如,目标数量为50,m为40,第一数量为70,则需要从50个排样结果中选取40个排样结果进行变异,得到70个排样结果。
140.在本技术实施例中,第一数量与第二数量之和与排样结果数量相等,例如排样结果数量为100,第一数量为40,第二数量为60,本技术对第一数量与第二数量的数值不做限定。
141.图9为本技术实施例提供的又一种排样结果生成方法的实施流程示意图,该方法可包括以下步骤:s901:根据原材料消耗情况对排样结果数量的排样结果进行筛选,得到预设的目标数量的排样结果。
142.在本技术实施例中,s901在s701中已经给出了详细介绍,在此不再赘述。
143.s902:从目标数量的排样结果中选取n个排样结果,确定n个排样结果中每个排样结果对应的全部工件的第一顺序。
144.在本技术实施例中,从目标数量的排样结果中选取n个排样结果,确定n个排样结果中的每个排样结果对应的全部工件的第一顺序,其中n的值应小于等于目标数量。
145.例如,目标数量为50,n为10,则确定10个排样结果中每个排样结果对应的全部工件的顺序,统称为第一顺序。
146.s903:对第一顺序的全部工件按照预设的比例进行交叉,得到全部工件的第二顺序。
147.在本技术实施例中,预设的比例包括交叉比例和变异比例,对第一顺序的全部工件按照预设的比例进行交叉使用的是交叉比例,交叉后得到全部工件的第二顺序。
148.例如,全部工件数量为100,交叉比例为0.1,变异比例为0.2,则对第一顺序的全部工件按照预设的比例进行交叉,需要从100个工件中抽取10个工件,修改它们的顺序,得到全部工件的第二顺序。
149.s904:基于全部工件的第二顺序,在原材料上对全部工件进行排样得到排样结果数量的排样结果。
150.在本技术实施例中,从目标数量的排样结果中选取n个排样结果,通过交叉规则衍生得到排样结果数量的排样结果。从目标数量的排样结果中选取n个排样结果时,优先选择原材料消耗较少的排样结果。
151.例如,排样结果数量为100,目标数量为50,n为40,则需要从50个排样结果中选取40个排样结果进行交叉,得到100个排样结果。
152.图10为本技术实施例提供的再一种排样结果生成方法的实施流程示意图,该方法可包括以下步骤:s1001:根据原材料消耗情况对排样结果数量的排样结果进行筛选,得到预设的目标数量的排样结果。
153.在本技术实施例中,s1001在s701中已经给出了详细介绍,在此不再赘述。
154.s1002:从目标数量的排样结果中选取m个排样结果,确定m个排样结果中每个排样结果对应的全部工件的第一方向。
155.在本技术实施例中,从目标数量的排样结果中选取m个排样结果,确定m个排样结果中的每个排样结果对应的全部工件的第一方向,其中m的值应小于等于目标数量。
156.例如,目标数量为50,m为10,则确定10个排样结果中每个排样结果对应的全部工件的方向,统称为第一方向。
157.s1003:对第一方向的全部工件按照预设的比例进行变异,得到全部工件的第二方向。
158.在本技术实施例中,预设的比例包括交叉比例和变异比例,对第一顺序的全部工件按照预设的比例进行变异使用的是变异比例,变异后得到全部工件的第二方向。
159.例如,全部工件数量为100,交叉比例为0.1,变异比例为0.2,则对第一方向的全部工件按照预设的比例进行变异,需要从100个工件中抽取20个工件,修改它们的方向,得到全部工件的第二方向。
160.s1004:基于全部工件的第二方向,在原材料上对全部工件进行排样得到排样结果数量的排样结果。
161.在本技术实施例中,从目标数量的排样结果中选取m个排样结果,通过变异规则衍生得到排样结果数量的排样结果。从目标数量的排样结果中选取m个排样结果时,优先选择原材料消耗较少的排样结果。
162.例如,排样结果数量为100,目标数量为50,m为50,则对50个排样结果全部进行变异,得到100个排样结果。
163.通过上述对本技术实施例提供的技术方案的描述,本技术进行遗传操作时,筛选得到原材料消耗较少的目标数量的排样结果,对目标数量的排样结果按照预设的衍生规则进行衍生,衍生规则包括三种,一种是对目标数量的排样结果只进行交叉衍生得到排样结果数量的排样结果;一种是对目标数量的排样结果只进行变异衍生得到排样结果数量的排样结果;一种是对目标数量的排样结果进行交叉和变异得到排样结果数量的排样结果。通过上述三种方式衍生,增加了用户在对目标数量的排样结果进行衍生时的选择。
164.图11为本技术实施例提供的一种原材料排样的装置的结构示意图,该装置包括:工件获取模块111、排样结果数量确认模块112、排样模块113、排样结果计算模块114,以及目标排样结果确定模块115。
165.工件获取模块111:获取工件群体,获取工件群体中的全部工件;排样结果数量确认模块112:确定工件群体对应的排样结果数量;排样模块113:按照预设的排样规则对全部工件进行排样,得到排样结果数量的排样结果;排样结果计算模块114:并行确定每种排样结果的原材料消耗情况;
目标排样结果确定模块115:根据原材料消耗情况,从所有排样结果中确定目标排样结果。
166.图12为本技术实施例提供的一种电子设备的结构示意图,图12所示的电子设备1200包括:至少一个处理器1201、存储器1202、至少一个网络接口1204和用户接口1203。电子设备1200中的各个组件通过总线系统1205耦合在一起。可理解,总线系统1205用于实现这些组件之间的连接通信。总线系统1205除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了说明的清楚起见,在图12中将各种总线都标为总线系统1205。
167.其中,用户接口1203可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball))、触感板或者触摸屏等。
168.可以理解,本技术实施例中的存储器1202可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicram,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledatarate sdram,ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。本文描述的存储器1202旨在包括但不限于这些和任意其它适合类型的存储器。
169.在一些实施方式中,存储器1202存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统12021和应用程序12022。
170.其中,操作系统12021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序12022,包含各种应用程序,例如媒体播放器(mediaplayer)、浏览器(browser)等,用于实现各种应用业务。实现本技术实施例方法的程序可以包含在应用程序12022中。
171.在本技术实施例中,通过调用存储器1202存储的程序或指令,具体的,可以是应用程序12022中存储的程序或指令,处理器1201用于执行各方法实施例所提供的方法步骤,例如包括:获取工件群体,获取工件群体中的全部工件;确定工件群体对应的排样结果数量;按照预设的排样规则对全部工件进行排样,得到排样结果数量的排样结果;并行确定每种排样结果的原材料消耗情况;根据原材料消耗情况,从所有排样结果中确定目标排样结果。
172.上述本技术实施例揭示的方法可以应用于处理器1201中,或者由处理器1201实现。处理器1201可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1201中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1201可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(fieldprogrammablegatearray, fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑
器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1202,处理器1201读取存储器1202中的信息,结合其硬件完成上述方法的步骤。
173.可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(applicationspecificintegratedcircuits,asic)、数字信号处理器(digitalsignalprocessing,dsp)、数字信号处理设备(dspdevice,dspd)、可编程逻辑设备(programmablelogicdevice,pld)、现场可编程门阵列(field-programmablegatearray,fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本技术功能的其它电子单元或其组合中。
174.对于软件实现,可通过执行本文功能的单元来实现本文的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
175.本实施例提供的电子设备可以是如图12中所示的电子设备,可执行如图1-10中原材料排样方法的所有步骤,进而实现图1-10中原材料排样方法的技术效果,具体请参照图1-10相关描述,为简洁描述,在此不作赘述。
176.本技术实施例还提供了一种存储介质(计算机可读存储介质)。这里的存储介质存储有一个或者多个程序。其中,存储介质可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘;存储器还可以包括上述种类的存储器的组合。
177.当存储介质中一个或者多个程序可被一个或者多个处理器执行,以实现上述在电子设备侧执行的原材料排样方法。
178.处理器用于执行存储器中存储的原材料排样程序,以实现以下在电子设备侧执行的原材料排样方法的步骤:获取工件群体,获取工件群体中的全部工件;确定工件群体对应的排样结果数量;按照预设的排样规则对全部工件进行排样,得到排样结果数量的排样结果;并行确定每种排样结果的原材料消耗情况;根据原材料消耗情况,从所有排样结果中确定目标排样结果。
179.专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
180.结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
181.以上所述的具体实施方式,对本技术的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本技术的具体实施方式而已,并不用于限定本技术的保护范围,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献