基于多目标优化算法的纸盆车间生产调度方法及调度系统
文献发布时间:2023-06-19 11:08:20
技术领域
本发明涉及生产调度技术领域,具体涉及一种基于多目标优化算法的纸盆车间生产调度方法及调度系统。
背景技术
电声企业的纸盆车间是一种柔性作业车间类型,其生产过程具有如下特征:(1)具有多品种和中小批量生产的特点;(2)不同类型的生产任务工艺路径不同;(3)车间内涉及模具、机器、操作人员三种加工资源,各生产任务的各道工序对各资源的需求不同;(4)同一道工序可能存在多个可选加工资源;(5)各加工资源的加工时间和加工能耗可能不同。
该类车间调度问题涉及分批、加工资源选择和生产排序,较为复杂。使用现有的技术进行纸盆车间生产调度,存在以下问题尚需改进:多数纸盆车间仍依靠调度人员的经验进行生产分批和调度,未能灵活考虑各道工序存在可用加工资源不同的情况,不利于生产效率的提高;未能综合考虑完工时间指标和节能目标,造成能源浪费。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种基于多目标优化算法的纸盆车间生产调度方法及调度系统。
为实现上述目的,本发明提供了如下技术方案:
一种基于多目标优化算法的纸盆车间生产调度方法,其包括以下步骤:
1)根据待调度生产任务的工艺参数和生产资源信息建立约束条件,并根据所述约束条件建立以完工时间最短和节能为目标的纸盆车间生产调度模型;
2)根据所述约束条件进行加工资源选择;
3)根据所述约束条件和所述加工资源选择进行批量划分;
4)根据多目标优化算法、步骤2)中的加工资源选择和步骤3)中的批量划分对所述生产调度模型进行优化求解,得到纸盆车间排产方案。
所述约束条件为:各生产任务有一定的数量需求,在各道工序可采用分批生产的策略组织加工;各生产任务所含工序需要按工艺顺序进行;各工序对资源的需求不同,按需求进行加工资源的选择;模具可以在需要的时候,从一台机器转移到另一台机器;对于需要多种资源配合的工序,在所涉及的加工资源均空闲的情况下才能开始加工;在同一加工资源上,当前的加工任务结束后才能开始下一任务的加工。
所述生产调度模型中包括完工时间最短目标以及节能目标,
完工时间最短目标:建立完工时间最短关系式min C
根据各生产任务的完工时间得到所有任务的完工时间,
C
节能目标:建立生产能耗最小关系式:min E,
根据各任务各道工序在加工机器上的任务分配情况,计算生产能耗,
步骤2)中加工资源选择步骤如下:
2.1)清空加工资源集RC和最早可用时间集TRC,设置集合内资源数nRC=0;
2.2)若生产任务i的第j道工序仅需要配备机器,则选出可用的机器,设置nRC为可用机器数,并将机器按机器的最早可用时间与单件加工时间之和的大小先后顺序排列,将机器编号依序纳入加工资源集RC,将机器最早可用时间依序纳入最早可用时间集TRC;
2.3)若生产任务i的第j道工序既需要配备机器还需配备模具,则选出可用的机器和可用的模具,取可用机器数和可用模具数的最小值作为nRC值,将机器按其最早可用时间与单件加工时间之和的大小先后顺序排列,将模具按其最早可用时间先后顺序排列,取前nRC台机器与前nRC个模具一一组成加工资源组合纳入RC,并取各组合里机器和模具的最早可用时间的最大值依序纳入最早可用时间集TRC;
2.4)若生产任务i的第j道工序不需要机器和模具,则选出可用的操作人员,设置nRC为可用人员数,并按人员的空闲时间与单件加工时间之和的大小先后顺序排列,将人员编号依序纳入加工资源集RC,将人员空闲时间依序纳入最早可用时间集TRC。
步骤3)中,
3.1)检查步骤2)所得的最早可用时间集TRC,对于集合中小于C
3.2)对于RC中的每个资源r,根据
计算其分配的子批量,nm
3.3)对于RC中的每个资源r,若存在划分所得批量nm
3.4)在RC中找到对应nm
3.5)对于加工资源集RC中涉及的资源r,若nm
3.6)更新生产任务i的完工时间C
步骤4)中:
4.1)设置种群规模和最大迭代次数;
4.2)用基于工序的整数编码个体表示待调度生产任务的排序信息,初始化种群;
4.3)根据所述加工资源选择和所述批量划分对种群中的每个个体进行解码;
4.4)找到种群中的非支配解,组建非支配解集Pareto_best;
4.5)对种群中每个个体采用插入、互换操作产生新个体;
4.6)对步骤4.5)产生的新个体进行解码,执行选择操作,并更新非支配解集Pareto_best;
4.7)重复步骤4.5)至4.6)直到达到设定的最大迭代次数。
步骤4.3)中解码步骤如下:
4.3.1)设置h=1,对种群中个体h进行解码;
4.3.2)设置m=1,设置各资源从0时刻开始可用,设置C
4.3.3)获取个体h上排在第m位加工的生产任务序号i、工序号j;
4.3.4)为生产任务i的第j道工序选择加工资源;
4.3.5)将生产任务i所含批量在第j道工序分配到各加工资源上进行分批生产;
4.3.6)设置m++,重复步骤4.3.3)~4.3.5)直至每个生产任务的所有工序均完成加工资源的选择和批量划分;
4.3.7)根据生产调度模型中的所有任务的完工时间和生产能耗计算个体h的完工时间和生产能耗目标值;
4.3.8)设置h++,重复步骤4.3.2)~4.3.7)直到种群中所有个体完成解码操作。
步骤4.5)中:
4.5.1)设置h=1,对种群中个体h执行插入、互换操作,所得的新个体记为个体h’;
4.5.2)随机产生[1,上]之间的两个整数m
4.5.3)获取个体h上排在第m
4.5.4)若i
4.5.5)若i
4.5.6)设置h++,重复步骤4.5.2)~4.5.5)直到为种群中的所有个体产生一对一的新个体。
步骤4.6)中:
4.6.1)设置h=1;
4.6.2)对步骤4.5)新产生的个体h’进行解码;
4.6.3)若新个体h’被原个体h支配,则放弃新个体h’,保留原个体h,执行步骤4.6.10);
4.6.4)若新个体h’支配原个体h,则将种群中的个体h替换成新个体h’,并与Pareto_best中的非支配解一一比较,去除Pareto_best中被个体h支配的解,执行步骤4.6.10);
4.6.5)若新个体h’与原个体h非支配,则将新个体h’与Pareto_best中的非支配解一一比较,执行步骤4.6.6)~4.6.9);
4.6.6)若新个体h’支配Pareto_best中某个解,则去除Pareto_best中所有被新个体h’支配的解,并执行步骤4.6.7),否则,执行步骤4.6.8);
4.6.7)若原个体h不是非支配解,则将种群中的个体h替换成新个体h’并纳入Pareto_best,若原个体h是非支配解,则随机选择种群中的支配解替换成新个体h’并纳入Pareto_best,执行步骤4.6.10);
4.6.8)若新个体h’与Pareto_best中所有解均为非支配,执行步骤4.6.7);
4.6.9)新个体h’被Pareto_best中某个解支配,若原个体h是非支配解,则放弃新个体h’,否则将种群中的个体h替换成新个体h’;
4.6.10)设置h++,重复步骤4.6.2)~4.6.9)直到为新产生的所有个体完成选择操作。
一种基于上述基于多目标优化算法的纸盆车间生产调度方法的调度系统,其包括:
信息获取模块,用于获取纸盆车间的待调度生产任务、工艺参数和生产资源信息;
模型建立模块,用于根据信息获取模块获取的信息建立约束条件,并根据约束条件建立以完工时间最短和节能为目标的纸盆车间生产调度模型;
优化模块,用于根据所述多目标优化算法、加工资源选择和批量划分对生产调度模型进行优化求解;
输出模块,用于将优化模块所得非支配解作为纸盆车间排产方案输出。
本发明的有益效果:实现完工时间和生产能耗指标下的生产分批和调度优化,以达到减少调度人员工作量、提高生产效率、节约能源的目的,有效解决了纸盆车间多资源双目标批量生产调度问题。
附图说明
图1为优化所得非支配解集。
图2为调度甘特图。
具体实施方式
下面对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开了一种基于多目标优化算法的纸盆车间生产调度方法,其包括以下步骤:
1)根据待调度生产任务的工艺参数和生产资源信息建立约束条件,并根据所述约束条件建立以完工时间最短和节能为目标的纸盆车间生产调度模型。
其中所述约束条件为:各生产任务有一定的数量需求(加工批量),在各道工序可采用分批生产的策略组织加工;各生产任务所含工序需要按工艺顺序进行;各工序对资源(模具、机器、操作人员)的需求不同,按需求进行加工资源的选择;模具可以在需要的时候,从一台机器转移到另一台机器;对于需要多种资源配合的工序,在所涉及的加工资源均空闲的情况下才能开始加工;在同一加工资源上,当前的加工任务结束后才能开始下一任务的加工;
建立完工时间最短(目标1)表达式为:
min C
根据各生产任务的完工时间得到所有任务的完工时间,表达式如下:
C
其中,i为第i个生产任务,N为生产任务个数,C
建立生产能耗最小(目标2)表达式为:
min E
根据各任务各道工序在加工机器上的任务分配情况,计算生产能耗,表达式如下:
其中,l为第l台机器,M为机器数,j为第j道工序,O
2)根据所述约束条件进行加工资源选择;
其中加工资源选择步骤如下:
2.1)清空加工资源集RC和最早可用时间集TRC,设置集合内资源数nRC=0;
2.2)若生产任务i的第j道工序仅需要配备机器,则选出可用的机器,设置nRC为可用机器数,并将机器按机器的最早可用时间与单件加工时间之和的大小先后顺序排列,将机器编号依序纳入加工资源集RC,将机器最早可用时间依序纳入最早可用时间集TRC;
2.3)若生产任务i的第j道工序既需要配备机器还需配备模具,则选出可用的机器和可用的模具,取可用机器数和可用模具数的最小值作为nRC值,将机器按其最早可用时间与单件加工时间之和的大小先后顺序排列,将模具按其最早可用时间先后顺序排列,取前nRC台机器与前nRC个模具一一组成加工资源组合纳入RC,并取各组合里机器和模具的最早可用时间的最大值依序纳入最早可用时间集TRC;
2.4)若生产任务i的第j道工序不需要机器和模具,则选出可用的操作人员,设置nRC为可用人员数,并按人员的空闲时间与单件加工时间之和的大小先后顺序排列,将人员编号依序纳入加工资源集RC,将人员空闲时间依序纳入最早可用时间集TRC。
3)根据所述约束条件和所述加工资源选择进行批量划分;
3.1)检查步骤2)所得的最早可用时间集TRC,对于集合中小于C
3.2)对于RC中的每个资源r,根据
计算其分配的子批量,nm
3.3)对于RC中的每个资源r,若存在划分所得批量nm
3.4)在RC中找到对应nm
3.5)对于加工资源集RC中涉及的资源r,若nm
3.6)更新生产任务i的完工时间C
4)根据多目标优化算法、步骤2)中的加工资源选择和步骤3)中的批量划分对所述生产调度模型进行优化求解,得到纸盆车间排产方案。
4.1)设置种群规模和最大迭代次数;
4.2)用基于工序的整数编码个体表示待调度生产任务的排序信息,初始化种群;
以3种工件且各工件均含4道工序的调度问题为例,种群中的个体编码长度为12,共包含4个1、4个2和4个3,分别表示工件J
4.3)根据所述加工资源选择和所述批量划分对种群中的每个个体进行解码;
步骤4.3)中解码步骤如下:
4.3.1)设置h=1,对种群中个体h进行解码;
4.3.2)设置m=1,设置各资源从0时刻开始可用,设置C
4.3.3)获取个体h上排在第m位加工的生产任务序号i、工序号j;
4.3.4)根据步骤2.1)~2.4)为生产任务i的第j道工序选择加工资源;
4.3.5)根据步骤3.1)~3.6)将生产任务i所含批量在第j道工序分配到各加工资源上进行分批生产;
4.3.6)设置m++,重复步骤4.3.3)~4.3.5)直至每个生产任务的所有工序均完成加工资源的选择和批量划分;
4.3.7)根据生产调度模型中的所有任务的完工时间和生产能耗计算个体h的完工时间和生产能耗目标值;
4.3.8)设置h++,重复步骤4.3.2)~4.3.7)直到种群中所有个体完成解码操作。
4.4)找到种群中的非支配解,组建非支配解集Pareto_best;
对于完工时间最短目标和节能目标,若个体h
4.5)对种群中每个个体采用插入、互换操作产生新个体;
步骤4.5)中:
4.5.1)设置h=1,对种群中个体h执行插入、互换操作,所得的新个体记为个体h’;
4.5.2)随机产生[1,L]之间的两个整数m
4.5.3)获取个体h上排在第m
4.5.4)若i
4.5.5)若i
4.5.6)设置h++,重复步骤4.5.2)~4.5.5)直到为种群中的所有个体产生一对一的新个体。
4.6)对步骤4.5)产生的新个体进行解码,执行选择操作,并更新非支配解集Pareto_best;
步骤4.6)中:
4.6.1)设置h=1;
4.6.2)对步骤4.5)新产生的个体h’进行解码;
4.6.3)若新个体h’被原个体h支配,则放弃新个体h’,保留原个体h,执行步骤4.6.10);
4.6.4)若新个体h’支配原个体h,则将种群中的个体h替换成新个体h’,并与Pareto_best中的非支配解一一比较,去除Pareto_best中被个体h支配的解,执行步骤4.6.10);
4.6.5)若新个体h’与原个体h非支配,则将新个体h’与Pareto_best中的非支配解一一比较,执行步骤4.6.6)~4.6.9);
4.6.6)若新个体h’支配Pareto_best中某个解,则去除Pareto_best中所有被新个体h’支配的解,并执行步骤4.6.7),否则,执行步骤4.6.8);
4.6.7)若原个体h不是非支配解,则将种群中的个体h替换成新个体h’并纳入Pareto_best,若原个体h是非支配解,则随机选择种群中的支配解替换成新个体h’并纳入Pareto_best,执行步骤4.6.10);
4.6.8)若新个体h’与Pareto_best中所有解均为非支配,执行步骤4.6.7);
4.6.9)新个体h’被Pareto_best中某个解支配,若原个体h是非支配解,则放弃新个体h’,否则将种群中的个体h替换成新个体h’;
4.6.10)设置h++,重复步骤4.6.2)~4.6.9)直到为新产生的所有个体完成选择操作。
4.7)重复步骤4.5)至4.6)直到达到设定的最大迭代次数。
本发明还公开了一种基于上述基于多目标优化算法的纸盆车间生产调度方法的调度系统,其包括:
信息获取模块,用于获取纸盆车间的待调度生产任务、工艺参数和生产资源信息;
在本发明实施例中,获取的信息包括:生产任务(工件)的个数、各工件的生产批量、各工件所含的工序数、车间内的机器数、模具数和人员数、各工件在各道工序的加工资源需求(是否需要配备机器或模具或人员)、各工件各道工序的可用加工资源(并行加工资源)、各工件各道工序在各加工资源上的单件加工时间和单位时间能耗;
模型建立模块,用于根据信息获取模块获取的信息建立约束条件,并根据约束条件建立以完工时间最短和节能为目标的纸盆车间生产调度模型;
优化模块,用于根据所述多目标优化算法、加工资源选择和批量划分对生产调度模型进行优化求解;
输出模块,用于将优化模块所得非支配解作为纸盆车间排产方案输出。
以表1所述的调度问题为例,表格中的M表示机器(含操作者)、P表示操作人员、D代表模具,各工序对资源的需求不同,例如工件J
表1调度问题数据
设置种群规模为50,最大迭代次数为80,采用算法对表1调度问题进行优化求解,所得非支配解集如图1所示。取图中添加了数据标签的解“2340,49751”(生产周期,生产能耗)为例,该解对应的加工排序为{11222133222151343435454435555},具体排产方案如图2调度甘特图。图2展示了各工件的各道工序所分配的加工资源及分批生产的情况,图中方块里的数字“ij”代表工件i的第j道工序,方块上方的数字代表加工批量,结合时间轴可得到各工序的开始和结束加工时间。
采用本发明所述的生产调度方法可有效解决纸盆车间多资源双目标批量生产调度问题,达到减少调度人员工作量、提高生产效率、节约能源的目的。
实施例不应视为对本发明的限制,但任何基于本发明的精神所作的改进,都应在本发明的保护范围之内。
- 基于多目标优化算法的纸盆车间生产调度方法及调度系统
- 基于多目标优化算法的纸盆车间生产调度方法及调度系统