产品的生产任务处理方法、设备、介质及程序产品

文档序号:30754918发布日期:2022-07-13 10:31阅读:150来源:国知局
产品的生产任务处理方法、设备、介质及程序产品

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.利用下列公式计算每一所述初始化任务排班表的不适应度值:
[0026][0027]
其中,所述f表示不适应度值,所述λ表示权重参数,所述r表示完成所述产品所需的资源集合,所述rk表示所述资源集合中第k个资源,所述uk表示第k个资源的资源利用率,所述t表示所述产品的生产周期,所述pi表示第i个生产任务的任务时长;所述bk表示对第k个资源的需求数量,所述e表示全部产品的最终完成时间,所述表示第j个产品的第i个生产任务的开始时间;所述表示第j个产品的第i个生产任务的完成时间;所述b
ik
表示第i个生产任务对第k个资源的需求数量,所述t表示时刻,所述表示示性函数,当满足时,当不满足时,
[0028]
在一种可能的实施方式中,还包括:
[0029]
若所述初始化任务排班表的不适应度值相同,则确定所述初始化任务排班表对应的生产总时长,按照所述生产总时长由小到大的顺序对所述初始化任务排班表进行排序。
[0030]
在一种可能的实施方式中,在所述计算每一所述初始化任务排班表的不适应度值之后,还包括:
[0031]
确定所述不适应度值中的最小不适应度值;
[0032]
判断所述最小不适应度值是否大于预设的不适应度值;
[0033]
若否,则根据所述最小不适应度值更新所述预设的不适应度值;
[0034]
若是,则更新所述初始化任务排班表的资源的需求数量,并且根据更新后的资源的需求数量重新计算所述初始化任务排班表的不适应度值,直至所述不适应度值中的最小不适应度值小于等于所述预设的不适应度值。
[0035]
在一种可能的实施方式中,所述更新所述初始化任务排班表的资源的需求数量,具体包括:
[0036]
确定所述最小不适应度值对应的初始化任务排班表对每个资源的资源利用率;
[0037]
判断所述资源利用率中的最小资源利用率是否大于预设阈值;
[0038]
若是,则确定所述最小资源利用率对应的资源的需求数量,将所述资源的需求数量减去预设的数量差值,以生成所述资源更新后的需求数量;
[0039]
若否,则确定所述资源利用率中与所述最小资源利用率差值最小的资源利用率,将所述差值最小的资源利用率作为最小资源利用率,执行判断最小资源利用率是否大于预设阈值的步骤。
[0040]
第二方面,本技术提供一种产品的生产任务处理设备,包括:处理器,以及与所述处理器通信连接的存储器;
[0041]
所述存储器存储计算机执行指令;
[0042]
所述处理器执行所述存储器存储的计算机执行指令,以实现上述的方法。
[0043]
第三方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述的方法。
[0044]
第四方面,本技术提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法。
[0045]
本技术提供的产品的生产任务处理方法,可以接收输入的产品的生产约束,产品的生产约束包括产品的生产数目、每一产品的生产周期、全部产品的最终完成时间、完成每一产品的生产任务、每一生产任务对应的任务时长以及生产任务之间的先序关系;根据每一产品的生产周期、每一生产任务对应的任务时长以及全部产品的最终完成时间随机设置每一生产任务的开始时间和完成时间;根据产品的生产数目、完成每一产品的生产任务以及生产任务之间的先序关系随机设置生产任务的生产顺序;根据每一生产任务的开始时间和完成时间以及生产任务的生产顺序随机生成第一预设数目个初始化任务排班表;利用遗传算法对第一预设数目个初始化任务排班表进行预设次数的迭代训练,确定产品最终的任务排班表。本技术的方法,在现有的生产约束的基础上增加了产品的生产数目、每一产品的生产周期以及全部产品的最终完成时间。由于产品生产有周期性,不同生产时刻对资源的需求同样具备周期性,因此,可以通过在生产约束中增加产品的生产周期,使得产品的任务
排班表也具备周期性。周期性的任务排班表可以适应生产流水线无限生产的实际,满足生产流水线上多个产品的生产需求,从而实现高效的流水化生产。进一步,生产流水线上产品生产时也有产量和时间的限制,即一定时间期限内需要生产一定数量的产品。因此,可以在生产约束中增加产品的生产数目以及全部产品的最终完成时间,使得任务排班表可以进一步满足生产流水线上产品生产的需求。根据该生产约束随机设置生成多个任务排班表之后,可以利用遗传算法计算出这些任务排班表中的最优任务排班表。通过这样的设置,使得最优任务排班表不仅能够满足生产约束,还能满足流水线上多个产品的生产需求,从而实现高效的流水化生产。进一步,在现有的生产约束中增加每一产品的生产周期,还可以保证流水线生产的生产效率和有序性,使得流水线上多个产品的生产能够有序按照一定的生产效率进行。
附图说明
[0046]
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
[0047]
图1为本技术一实施例的系统架构图;
[0048]
图2为本技术一实施例的产品的生产任务处理方法的流程图;
[0049]
图3为本技术另一实施例的产品的生产任务处理方法的流程图;
[0050]
图4为本技术一实施例的产品的生产任务处理设备的结构示意图。
[0051]
附图标记:1、计算机;2、生产控制设备;3、生产流水线。
[0052]
通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
[0053]
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
[0054]
现有的生产流水线的任务排班表是针对单个产品来确定的。计算机接收工作人员输入的单个产品的生产约束条件,该生产约束条件可以包括生产该产品的全部生产任务、每一项生产任务对应的任务时长、各项生产任务的先序关系、各项生产任务所需资源的类别以及各资源的需求数量。计算机基于所接收的生产约束条件可以建立形式化模型,例如包括任务集合、任务时长向量、关系集合等的数学模型。之后,计算机可以通过求解该形式化模型的最优解得到最优的任务排班表,该最优解即为在满足生产约束条件下完成产品生产的最小总耗时。该最优的任务排班表包括该产品的各项生产任务的生产顺序、每一项生产任务对应的开始时间和完成时间,以及各项生产任务对应的资源类别以及资源数量等。该计算机可以将任务排班表输出给产品生产控制设备,从而使得产品生产控制设备可以利用该最优的任务排班表进行生产控制,从而完成一个产品的生产。
[0055]
但是,流水线并不是一次仅生产一个产品,而是不断运转接近无限地批量生产产
品,同时在流水线上生产的产品有多个。现有技术所生成的针对单个产品的任务排班表并不能满足流水线上多个产品的生产需求,无法实现高效的流水化生产。多个产品在流水线上同时生产时并不能够利用现有的针对单个产品的任务排班表,也并不能将任务排班表中的数据乘以产品数目直接拿来利用。例如,某产品单独生产时第三项生产任务需要1个工作人员和3个物料a和4个物料b,同时生产5个产品时,第三项生产任务并不是简单的只需要5个工作人员和15个物料a和20个物料b。由于生产流水线具备有序性和节拍性等特点,这5个工作人员和15个物料a和20个物料b要具备一定的先后顺序并且分次进行,每次需要1个工作人员和3个物料a和4个物料b,例如,第一个工作人员使用3个物料a1和4个物料b1,第二个工作人员使用3个物料a2和4个物料b2等分次有序进行。
[0056]
本技术提供的产品的生产任务处理方法,旨在解决现有技术的如上技术问题。该方法在现有的生产约束的基础上增加了产品的生产数目、每一产品的生产周期以及全部产品的最终完成时间。由于产品生产有周期性,不同生产时刻对资源的需求同样具备周期性,因此,可以通过在生产约束中增加产品的生产周期,使得产品的任务排班表也具备周期性。周期性的任务排班表可以适应生产流水线无限生产的实际,满足生产流水线上多个产品的生产需求,从而实现高效的流水化生产。进一步,生产流水线上产品生产时也有产量和时间的限制,即一定时间期限内需要生产一定数量的产品。因此,可以在生产约束中增加产品的生产数目以及全部产品的最终完成时间,使得任务排班表可以进一步满足生产流水线上产品生产的需求。根据该生产约束随机设置生成多个任务排班表之后,可以利用遗传算法计算出这些任务排班表中的最优任务排班表。通过这样的设置,使得最优任务排班表不仅能够满足生产约束,还能满足流水线上多个产品的生产需求,从而实现高效的流水化生产。此外,在现有的生产约束中增加每一产品的生产周期,还可以保证流水线生产的生产效率和有序性,使得流水线上多个产品的生产能够有序按照一定的生产效率进行。
[0057]
下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
[0058]
图1是本技术一实施例的系统架构图,如图1所示,计算机1接收工作人员输入的基于多个产品生产的生产约束,计算机1基于所接收的生产约束随机生成一定的任务排班表之后,以资源最小化为优化目标对任务排班表进行优化以得到最优的任务排班表。计算机1将任务排班表输出给产品生产控制设备2,生产控制设备2根据任务排班表控制生产流水线3完成多个产品的生产。
[0059]
实施例一
[0060]
图2是本技术一实施例提供的产品的生产任务处理方法的流程图,本技术实施例提供的产品的生产任务处理方法的执行主体可以是生产任务处理装置,也可以是服务器,本实施例以执行主体为生产任务处理装置对该产品的生产任务处理方法进行说明。如图2所示,该产品的生产任务处理方法可以包括以下步骤:
[0061]
s101:接收输入的产品的生产约束,该产品的生产约束可以包括产品的生产数目、每一产品的生产周期、全部产品的最终完成时间、完成每一产品的生产任务、每一生产任务对应的任务时长以及各生产任务之间的先序关系。
[0062]
在本实施例中,由于产品生产有周期性,不同生产时刻对资源的需求同样具备周
期性,因此,可以通过在生产约束中增加产品的生产周期,使得产品的任务排班表也具备周期性。周期性的任务排班表可以适应生产流水线无限生产的实际,满足生产流水线上多个产品的生产需求,从而实现高效的流水化生产。
[0063]
进一步,生产流水线上产品生产时也有产量和时间的限制,即一定时间期限内需要生产一定数量的产品。因此,可以在生产约束中增加产品的生产数目以及全部产品的最终完成时间,使得任务排班表可以进一步满足生产流水线上产品生产的需求。
[0064]
示例性的,某工厂要生产10台车,其输入的生产约束如下:车辆的生产周期为1h,最终完成时间为10h,1台车的生产约束如下表1所示:
[0065]
表1
[0066]
生产任务连接位置制孔结构检查组件安装抛光任务时长5min10min15min30min资源类别制孔枪结构组人员安装组人员;螺组抛光组人员资源数量111;41
[0067]
各任务的先序关系为:组件安装必须在结构检查之前。
[0068]
在本实施例中,上述生产约束本领域技术人员可以根据生产实际灵活设置,在此不做任何限制。
[0069]
在本实施例中,每一产品的生产周期可以认为是该产品的工业生产节拍。工业生产节拍通常是以工艺品(产品)作为整体考虑的,比如制造一架飞机的整个过程节拍为一周,意味着架次1的飞机和架次2的飞机之间的所有子工艺均存在一周的固定节拍。以组装机翼为例,工位1执行架次1的组装机翼,一周后的同一时间工位1会组装架次2的组装机翼,类似的,工位2执行架次1的组装机头,一周后的同一时间工位2会执行架次2的组装机头。架次1和架次2所有相同工序的时间间隔(节拍)都是一周。
[0070]
在本实施例中,通过在产品生产约束中引入生产周期(生产节拍)这一概念,并且每一产品的生产节拍均设置为相同,使得完成任意一个产品的时间是固定的、可计算的。
[0071]
s102:根据每一产品的生产周期、每一生产任务对应的任务时长以及全部产品的最终完成时间随机设置每一生产任务的开始时间和完成时间。
[0072]
在本实施例中,随机设置每一生产任务的开始时间和完成时间时,需要满足以下时间约束条件:
[0073][0074][0075][0076][0077][0078]
其中,n表示产品的生产数目,m表示产品的最后一个生产任务的,表示最后一个产品的最后一个生产任务的完成时间。表示第一个产品的第一个生产任务的开始时
间。e表示全部产品的最终完成时间。表示第j个产品的第i个生产任务的开始时间;表示第j个产品的第i个生产任务的完成时间;pi表示第i个生产任务对应的任务时长;表示第一个产品的第i个生产任务的开始时间;表示第一个产品的第i个生产任务的完成时间;t表示每一产品的生产周期。
[0079]
示例性的,若第一个产品的第三个生产任务的开始时间为10:00,第三个生产任务对应的任务时长为20min,则第一个产品的第三个生产任务的完成时间可以设置为10:20,也可以设置为10:21或者10:22。
[0080]
在本实施例中,每一产品的生产周期均相同,使得完成一个产品的时间是固定的,便于每一生产任务的开始时间和完成时间的设置,保证流水线生产的生产效率和有序性,符合流水线的生产实际。
[0081]
s103:根据产品的生产数目、完成每一产品的生产任务以及各生产任务之间的先序关系随机设置各生产任务的生产顺序。
[0082]
在本实施例中,随机设置的生产顺序要满足每一产品对应的生产任务都是连续的,不同产品的生产任务不能间隔设置,例如:第一个产品的生产任务顺序中不能插入第二个产品的生产任务。某产品的各任务要符合先序关系,例如,如果任务a约束在任务b之前,那么生产顺序可以是任务a、任务c、任务b,而不能是任务b、任务a、任务c。
[0083]
s104:根据每一生产任务的开始时间和完成时间以及各生产任务的生产顺序随机生成第一预设数目个初始化任务排班表。
[0084]
在本实施例中,上述步骤s102生成的每一生产任务的开始时间和完成时间和上述步骤s103生成的各生产任务的生产顺序之前可以随机组合,以使生成的初始化任务排班表具备更多的可能,为后续的训练产生足够数量的样本。
[0085]
示例性的,根据输入的生产约束随机设置的任务排班表可以如下表2所示:
[0086]
表2
[0087]
生产任务开始时间完成时间资源类别资源数量第1台车连接位置制孔8:308:35制孔枪1第1台车组件安装8:358:50安装组人员;螺母1;4第1台车结构检查8:509:00结构组人员1第1台车抛光9:009:30抛光组人员1第2台车连接位置制孔9:309:35制孔枪1第2台车组件安装9:359:50安装组人员;螺母1;4第2台车结构检查9:5010:00结构组人员1第2台车抛光10:0010:30抛光组人员1第3台车连接位置制孔11:3011:35制孔枪1第3台车组件安装11:3511:50安装组人员;螺母1;4第3台车结构检查13:0013:10结构组人员1第3台车抛光13:1013:40抛光组人员1...............
[0088]
需要说明的是,表2中的任务排班表只列举了部分车辆的生产任务的开始时间和完成时间,由于车辆的生产周期为1h,根据生产周期即可得出剩余车辆各生产任务的开始时间和完成时间。
[0089]
s105:利用遗传算法对第一预设数目个初始化任务排班表进行预设次数的迭代训练,确定产品最终的任务排班表。产品最终的任务排班表的具体确定方式请详见实施例二。
[0090]
在本实施例中,本领域技术人员可以灵活设置第一预设数目和预设次数,在此不做任何限制。
[0091]
在本实施例中,在现有的生产约束的基础上增加了产品的生产数目、每一产品的生产周期以及全部产品的最终完成时间。由于产品生产有周期性,不同生产时刻对资源的需求同样具备周期性,因此,可以通过在生产约束中增加产品的生产周期,使得产品的任务排班表也具备周期性。周期性的任务排班表可以适应生产流水线无限生产的实际,满足生产流水线上多个产品的生产需求,从而实现高效的流水化生产。进一步,生产流水线上产品生产时也有产量和时间的限制,即一定时间期限内需要生产一定数量的产品。因此,可以在生产约束中增加产品的生产数目以及全部产品的最终完成时间,使得任务排班表可以进一步满足生产流水线上产品生产的需求。根据该生产约束随机设置生成多个任务排班表之后,可以利用遗传算法计算出这些任务排班表中的最优任务排班表。通过这样的设置,使得最优任务排班表不仅能够满足生产约束,还能满足流水线上多个产品的生产需求,从而实现高效的流水化生产。进一步,在现有的生产约束中增加每一产品的生产周期,还可以保证流水线生产的生产效率和有序性,使得流水线上多个产品的生产能够有序按照一定的生产效率进行,符合流水线的生产实际。
[0092]
下面以实施例二对实施例一中的步骤s105利用遗传算法对第一预设数目个初始化任务排班表进行预设次数的迭代训练,确定产品最终的任务排班表的具体内容进行详细的阐述。
[0093]
实施例二
[0094]
图3是本技术一实施例提供的产品的生产任务处理方法的流程图,本技术实施例提供的产品的生产任务处理方法的执行主体可以是生产任务处理装置,也可以是服务器,本实施例以执行主体为生产任务处理装置对该产品的生产任务处理方法进行说明。如图3所示,该产品的生产任务处理方法可以包括以下步骤:
[0095]
s201:计算每一初始化任务排班表的不适应度值,不适应度值是根据产品的生产需求设置的。
[0096]
在本实施例中,不适应度值可以根据产品的生产需求设置,例如,如果某产品的生产需求是资源的需求数量最小,那么不适应度值可以是生产该产品所需资源的总数量;如果某产品的生产需求是资源的利用率最大,那么不适应度值可以是生产该产品时对资源的利用率;如果某产品的生产需求是生产时间最短,那么不适应度值可以是生产该产品的总时间。
[0097]
在一个可能的实施方式中,上述步骤s201中的计算每一初始化任务排班表的不适应度值可以包括:利用下列公式(1)计算每一初始化任务排班表的不适应度值:
[0098][0099]
其中,f表示不适应度值,λ表示权重参数,r表示完成该产品所需的资源集合,rk表示资源集合中第k个资源,uk表示第k个资源的资源利用率,bk表示对第k个资源的需求数量。
[0100]
需要说明的是,产品的生产约束中还包括资源约束,该资源约束包括各项任务所需的资源以及每个资源的需求数量。初始化任务排班表中还包括各项任务对某个资源的需求数量,各项任务对某个资源的需求数量是根据资源约束随机设置的。如实施例1中的表1所示,车辆生产时不同的任务需要不同类别的资源(人员、等物料),每种资源也有数量要求,例如,车辆生产时,组件安装需要1名安装组人员和4个螺组件,结构检查则需要1名安装组人员。
[0101]
在本实施方式中,该不适应度值可以表示产品的生产需求为最小资源需求数量的同时最大化资源利用率,权重参数λ是资源需求数量与资源利用率之间的权衡,本领域技术人员可以根据生产需要灵活设置。
[0102]
在本实施方式中,第k个资源的资源利用率uk是利用下列公式(2)计算得到的:
[0103][0104]
其中,t表示该产品的生产周期,pi表示第i个生产任务的任务时长;bk表示对第k个资源的需求数量,b
ik
表示第i个生产任务对第k个资源的需求数量。
[0105]
在本实施方式中,对第k个资源的需求数量是利用下列公式(3)计算得到的:
[0106][0107]
其中,e表示全部产品的最终完成时间,表示第j个产品的第i个生产任务的开始时间;表示第j个产品的第i个生产任务的完成时间;b
ik
表示第i个生产任务对第k个资源的需求数量,t表示时刻,表示示性函数,当满足时,当不满足时,
[0108]
在本实施方式中,通过公式(1)将不适应度值设置为最小资源需求数量的同时最大化资源利用率,使得后续利用不适应度值可以求解出在满足生产约束的基础上所需资源最小并且最大化资源利用率的最优任务排班表,节省产品流水线生产所需的资源,提高资源利用率。进一步,还可以利用权重参数λ权衡资源需求数量与资源利用率之间的关系,当产品的生产需求偏重最小资源需求数量,则权重参数λ可以增大,当产品的生产需求偏重最大化资源利用率,则权重参数λ可以减小,通过这样的设置,也可简单便捷地使不适应度值与产品的生产需求相符,提高最优任务排班表与流水线的生产实际以及生产资源约束之间的适配性,实现高效节省的流水化生产。
[0109]
在一个可能的实施方式中,在上述步骤s201中的计算每一初始化任务排班表的不适应度值之后,还可以包括:确定不适应度值中的最小不适应度值;判断最小不适应度值是否大于预设的不适应度值;若否,则根据最小不适应度值更新预设的不适应度值;若是,则更新初始化任务排班表的资源的需求数量,并且根据更新后的资源的需求数量重新计算初始化任务排班表的不适应度值,直至不适应度值中的最小不适应度值小于等于预设的不适应度值。
[0110]
在本实施方式中,本领域技术人员可以事先根据经验或者实际生产过程设置一个预设的不适应度值,该预设的不适应度值对应的任务排班表可以作为根据经验生成的基础任务排班表。之后,每一轮迭代训练计算出不适应度值之后,选择其中的最小不适应度值,该最小不适应度值对应的任务排班表是本轮训练中的最优任务排班表。最后,利用最小不适应度值与预设的不适应度值进行比较,如果最小不适应度值小于该预设的不适应度值,说明最小不适应度值对应的任务排班表优于该预设的不适应度值对应的任务排班表。此时可以将最小不适应度值作为新的预设的不适应度值,并与后续的迭代训练计算出的最小不适应度值进行对比,不断对比得出最优的任务排班表。如果最小不适应度值不小于该预设的不适应度值,说明最小不适应度值对应的任务排班表还没有技术人员根据经验生成的基础任务排班表好,需要及时更新初始化任务排班表的资源的需求数量,从而求解出资源需求数量最小的任务排班表。
[0111]
在本实施方式中,由于资源利用率是基于资源的需求数量计算得到的,不适应度最小可以认为是资源的需求数量的最小化。因此,最小不适应度值不小于该预设的不适应度值时,可以通过更新初始化任务排班表的资源的需求数量以使不适应度值变小。
[0112]
在本实施方式中,由于初始化任务排班表中各项任务对某个资源的需求数量是根据生产约束中的资源约束随机设置的,从数量众多的初始化任务排班表中计算资源的需求数量的最优解比较繁琐,计算量大。因此技术人员可以事先根据经验或者实际生产过程设置一组资源的需求数量,根据该资源的需求数量可以计算出一个预设的不适应度值,再将预设的不适应度值与每一轮迭代训练计算出的不适应度值进行对比,提高资源的需求数量的最优解的计算效率,高效准确地计算出资源需求数量最小的任务排班表。
[0113]
在一个可能的实施方式中,更新初始化任务排班表的资源的需求数量,具体可以包括:确定最小不适应度值对应的初始化任务排班表对每个资源的资源利用率;判断资源利用率中的最小资源利用率是否大于预设阈值;若是,则确定最小资源利用率对应的资源的需求数量,将资源的需求数量减去预设的数量差值,以生成资源更新后的需求数量;若否,则确定资源利用率中与最小资源利用率差值最小的资源利用率,将差值最小的资源利用率作为最小资源利用率,执行判断最小资源利用率是否大于预设阈值的步骤。
[0114]
在本实施方式中,预设阈值本领域技术人员可以灵活设置,例如,预设阈值可以为1,即此时的资源利用率已经最大,不能再减少数量了。此外,预设的数量差值本领域技术人员可以灵活设置,例如,预设的数量差值可以为1,即每次需求数量都减一,逐渐减少至最小数量。
[0115]
在本实施方式中,最小不适应度值不小于该预设的不适应度值,说明最小不适应度值对应的初始化任务排班表对资源的需求数量较多,实际生产时不需要这么多数量的资源,需要减少资源的需求数量。减少资源的需求数量时,可以首先减少最小资源利用率对应
的资源的需求数量,如果最小资源利用率对应的资源的需求数量已经不能减少,则减少第二小的资源利用率对应的资源的需求数量,以此类推,完成初始化任务排班表的资源的需求数量的更新。通过这样的设置,利用对每个资源的资源利用率减少相应资源的需求数量,可以进一步提高资源的需求数量的最优解的计算效率,高效准确地计算出资源需求数量最小的任务排班表。
[0116]
s202:按照不适应度值由小到大的顺序对初始化任务排班表进行排序,以生成任务排班表序列。
[0117]
在本实施例中,按照不适应度值由小到大的顺序与产品的生产需求对应的,上述公式(1)的产品的生产需求为最小值,则不适应度值按照由小到大的顺序排列;若产品的生产需求为最大值,则不适应度值按照由大到小的顺序排列。
[0118]
在一个可能的实施方式中,如果利用上述公式(1)计算得到的初始化任务排班表的不适应度值相同,则确定初始化任务排班表对应的生产总时长,按照生产总时长由小到大的顺序对初始化任务排班表进行排序。
[0119]
在本实施方式中,计算不适应度值时,可能存在某两个或几个初始化任务排班表的不适应度值相同的情况,此时可以根据产品的次之生产需求例如生产时长对这几个初始化任务排班表进行排序,通过这样的设置,进一步为初始化任务排班表的优化程度进行区分和排序,便于后续根据任务排班表序列生成下一轮迭代训练的样本。
[0120]
在本实施方式中,也可以按照其他数值对不适应度值相同的初始化任务排班表进行排序,依据的数值可以根据产品的生产需求进行设置。
[0121]
s203:确定任务排班表序列中前第二预设数目个的保留任务排班表以及剩余的待处理任务排班表。
[0122]
在本实施例中,由于不适应度值是按照由小到大的顺序排列的,而不适应度值越小,任务排班表越优,因此任务排班表序列中前第二预设数目个的任务排班表可以认为是较优的个体,可以保留,剩下的个体需要进行处理,以生成下一轮迭代训练的样本。第二预设数目本领域技术人员可以灵活设置,在此不做任何限制。
[0123]
s204:根据保留任务排班表以及待处理任务排班表生成更新后的任务排班表集合。
[0124]
在本实施例中,更新后的任务排班表集合可以作为样本进行下一轮的迭代训练。
[0125]
在一个可能的实施方式中,上述步骤s204根据保留任务排班表以及待处理任务排班表生成更新后的任务排班表集合可以包括:将待处理任务排班表随机两两组合产生第三预设数目的组合任务排班表,第三预设数目等于第一预设数目与第二预设数目之差;按照预设的交叉概率对组合任务排班表进行交叉操作,以生成交叉后的任务排班表,交叉操作是基于先序关系进行的;按照预设的变异概率对交叉后的任务排班表进行交换变异操作,以生成变异后的任务排班表;根据保留任务排班表以及变异后的任务排班表生成更新后的任务排班表集合。
[0126]
在本实施方式中,每轮迭代训练的训练样本的数量是相同的,即任务排班表的数量相同,因此,在保留第二预设数目个任务排班表后,还要生成第一预设数目减去第二预设数目个任务排班表。
[0127]
在本实施方式中,较优的任务排班表保留,较差的的待处理任务排班表可以随机
两两组合产生组合任务排班表,再将组合任务排班表进行交叉变异以生成新的任务排班表。通过这样的设置,可以在保留较优个体的前提下产生更多的新个体,提高了最优任务排班表的计算效率。
[0128]
s205:根据更新后的任务排班表集合继续进行迭代训练,直至完成预设次数的迭代训练。
[0129]
s206:确定最后一次迭代训练得到的不适应度值中的最小不适应度值对应的任务排班表,该任务排班表即为资源需求数量最小并且资源利用率最大的最优任务排班表。
[0130]
在本实施例中,随机生成满足生产约束的初始化任务排班表之后,可以通过以根据产品的生产需求设置的不适应度值为优化目标对初始化任务排班表进行优化,从而计算出最优的任务排班表。优化过程中,可以根据初始化任务排班表的不适应度值确定较优的保留任务排班表以及较差的待处理任务排班表。对较差的待处理任务排班表进行随机组合以及交叉变异之后生成新的个体,将新的个体以及较优的保留个体作为下一轮迭代训练的样本,以此类推,不断进行迭代训练,使得最后一次迭代训练中的最小不适应度值对应的任务排班表即为最优任务排班表。通过这样的设置,可以高效准确地得到资源需求数量最小并且资源利用率最大的最优任务排班表。
[0131]
下面以一个具体的实施例对本技术的产品的生产任务处理方法进行阐述。
[0132]
实施例三
[0133]
在一个具体的实施例中,某工厂需要完成一定数目的飞机的流水线生产,因此工作人员需要通过集成有生产任务处理装置的计算机设置具体的飞机生产工作的任务排班表,其具体步骤如下:
[0134]
第一步,接收工作人员输入的产品的生产约束,包括飞机的生产数目、一架飞机的装配周期、全部飞机的装配完成时间、一架飞机的各项装配任务、每一装配任务对应的任务时长以及各装配任务之间的先序关系。
[0135]
第二步,根据一架飞机的装配周期、每一装配任务对应的任务时长以及全部飞机的装配完成时间随机设置每一装配任务的开始时间和完成时间。
[0136]
第三步,根据飞机的生产数目、一架飞机的各项装配任务、以及各装配任务之间的先序关系随机设置各装配任务的装配顺序。
[0137]
第四步,根据每一装配任务的开始时间和完成时间以及各装配任务的装配顺序随机生成50个初始化任务排班表。
[0138]
第五步,计算每一初始化任务排班表的不适应度值,不适应度值是完成飞机生产所需的资源数量。
[0139]
第六步,按照不适应度值由小到大的顺序对初始化任务排班表进行排序,以生成任务排班表序列。
[0140]
第七步,确定任务排班表序列中前10个的保留任务排班表以及剩余的40个待处理任务排班表。
[0141]
第八步,根据10个保留任务排班表以及40个待处理任务排班表生成更新后的任务排班表集合,该集合包括50个任务排班表。
[0142]
第九步,根据50个更新后的任务排班表集合继续进行迭代训练,直至完成50次的迭代训练。
[0143]
第十步,确定第50次迭代训练得到的不适应度值中的最小不适应度值对应的任务排班表,该任务排班表即为资源需求数量最小的最优飞机生产任务排班表。
[0144]
图4为本技术一实施例的产品的生产任务处理设备的结构示意图,如图4所示,该产品的生产任务处理设备包括:处理器101,以及与处理器101通信连接的存储器102;存储器102存储计算机执行指令;处理器101执行存储器102存储的计算机执行指令,实现上述各方法实施例中产品的生产任务处理方法的步骤。
[0145]
该产品的生产任务处理设备可以是独立的,也可以是产品生产控制设备的一部分,该处理器101和存储器102可以采用通信网络现有的硬件。
[0146]
在上述产品的生产任务处理设备中,存储器102和处理器101之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可以通过一条或者多条通信总线或信号线实现电性连接,如可以通过总线连接。存储器102中存储有实现数据访问控制方法的计算机执行指令,包括至少一个可以软件或固件的形式存储于存储器102中的软件功能模块,处理器101通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理。
[0147]
存储器102可以是,但不限于,随机存取存储器(random access memory,简称:ram),只读存储器(read only memory,简称:rom),可编程只读存储器(programmableread-only memory,简称:prom),可擦除只读存储器(erasable programmable read-onlymemory,简称:eprom),电可擦除只读存储器(electric erasable programmable read-only memory,简称:eeprom)等。其中,存储器102用于存储程序,处理器101在接收到执行指令后,执行程序。进一步地,上述存储器102内的软件程序以及模块还可包括操作系统,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通信,从而提供其他软件组件的运行环境。
[0148]
处理器101可以是一种集成电路芯片,具有信号的处理能力。上述的处理器101可以是通用处理器,包括中央处理器(central processing unit,简称:cpu)、网络处理器(network processor,简称:np)等。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0149]
本技术的一实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现本技术各方法实施例的步骤。
[0150]
本技术的一实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本技术各方法实施例的步骤。
[0151]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
[0152]
应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1