CN110531716A - 基于离散鲸鱼算法求解低碳车间调度问题的方法 - Google Patents
基于离散鲸鱼算法求解低碳车间调度问题的方法 Download PDFInfo
- Publication number
- CN110531716A CN110531716A CN201910740292.5A CN201910740292A CN110531716A CN 110531716 A CN110531716 A CN 110531716A CN 201910740292 A CN201910740292 A CN 201910740292A CN 110531716 A CN110531716 A CN 110531716A
- Authority
- CN
- China
- Prior art keywords
- discrete
- machine
- workpiece
- carbon
- whale
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 139
- 229910052799 carbon Inorganic materials 0.000 title claims abstract description 63
- 241000283153 Cetacea Species 0.000 title claims abstract description 56
- 238000005265 energy consumption Methods 0.000 claims abstract description 19
- 238000004519 manufacturing process Methods 0.000 claims abstract description 8
- 230000008569 process Effects 0.000 claims description 100
- 238000012545 processing Methods 0.000 claims description 44
- 238000012163 sequencing technique Methods 0.000 claims description 23
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 claims description 16
- 230000000717 retained effect Effects 0.000 claims description 10
- 238000005553 drilling Methods 0.000 claims description 6
- 108090000623 proteins and genes Proteins 0.000 claims description 6
- 210000000349 chromosome Anatomy 0.000 claims description 5
- 238000009826 distribution Methods 0.000 claims description 5
- 230000014509 gene expression Effects 0.000 claims description 5
- 230000000284 resting effect Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 230000006978 adaptation Effects 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 3
- 235000013399 edible fruits Nutrition 0.000 claims 1
- 244000062804 prey Species 0.000 claims 1
- 238000005457 optimization Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 25
- 241000196324 Embryophyta Species 0.000 description 4
- 230000002068 genetic effect Effects 0.000 description 3
- 241000251468 Actinopterygii Species 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003754 machining Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于离散鲸鱼算法求解低碳车间调度问题的方法,首先构建柔性作业车间低碳调度问题模型;建立柔性作业车间低碳调度问题的目标函数,将目标函数直接作为离散鲸鱼算法的适应度函数;混合式方法生成初始车间调度解集,作为离散鲸鱼算法的初始种群;计算初始种群中所有个体的适应度函数,找到并保存当前最优个体,并对离散鲸鱼算法的参数初始化;对所有种群个体进行迭代更新;对当前最优个体执行领域搜索操作,最终输出最优个体,及最优个体对应的适应度函数值,进而获得低碳车间调度问题的最佳调度方案。本发明解决了现有技术中存在的低碳调度这种新的可持续制造模式下包括能耗在内的多目标复杂优化的问题。
Description
技术领域
本发明属于作业调度技术领域,具体涉及一种基于离散鲸鱼算法求解低碳车间调度问题的方法。
背景技术
在目前的柔性作业车间调度问题上,企业面临的压力主要是降低成本和减少污染两个方面。因此,作为生产系统的重要环节调度,也不再局限于只考虑成本、时间和效率这些传统目标,需要进一步统筹考虑能源消耗等问题。而低碳调度作为一种新的可持续制造模式,可以很好地解决包括能耗在内的多目标复杂优化问题,逐步受到学者们的广泛关注。尽管如此,目前有关低碳调度的研究还是相对较少。
发明内容
本发明的目的是提供一种基于离散鲸鱼算法求解低碳车间调度问题的方法,解决了现有技术中存在的低碳调度这种新的可持续制造模式下包括能耗在内的多目标复杂优化的问题。
本发明所采用的技术方案是,一种基于离散鲸鱼算法求解低碳车间调度问题的方法,具体按照以下步骤实施:
步骤1、构建柔性作业车间低碳调度问题模型:包括车间低碳调度问题问题描述、模型假设及构建;
步骤2、建立柔性作业车间低碳调度问题的目标函数,将目标函数直接作为离散鲸鱼算法的适应度函数;
步骤3、柔性作业车间低碳调度问题的调度解的编码方式采用等长两段式编码方式;
步骤4、混合式方法生成初始车间调度解集,作为离散鲸鱼算法的初始种群;
步骤5、计算种群中所有个体的适应度函数,找到并保存当前最优个体,并对离散鲸鱼算法的参数初始化;
步骤6、用离散鲸鱼算法对所有种群个体进行迭代更新;
步骤7、对当前最优个体执行领域搜索操作,判断是否满足当前迭代次数大于最大迭代次数,若满足执行步骤8,若不满足,则对前迭代次数加一,执行步骤5;
步骤8、输出最优个体,及最优个体对应的适应度函数值,进而获得低碳车间调度问题的最佳调度方案。
本发明的特点还在于,
步骤1中:
(1)问题描述如下:
n个工件在m台加工设备上安排加工,其中每一个工件具有一道以上的加工工序,同一个工件的工序之间具有固定的加工顺序,且一个工序可以在一台以上的设备上完成加工,选取加工成本和碳排放成本之和最小为目标;
(2)模型假设如下:
工件和设备在初始时刻都可用;
每台设备同时只能加工一个工件;
工件加工过程不能中断;
工件运输时间和安装时间均忽略不计;
不同工件之间相互独立;
(3)模型构建具体如下:
F为目标函数,n表示工件的数量,m是机器的数量,Ji表示工件i的工序数,Oij是作业i的第j个操作,pijk表示工序Oij在机器k上的处理时间,sijk为工序Oij在机器k上加工的单位时间的加工成本,cijk为工序Oij在机器k上加工的单位时间的能耗成本,θk为机器k处于待机状态时单位时间的能耗成本,CTk为机器k的完成时间,Wk为机器k的工作负载,STij为工序Oij开始加工的时间,CTij为工序Oij加工的完成时间,η是一个常数,η大于1000,xijk为0-1变量,如果工序Oij在机器k上加工则,xijk=1;否则,xijk=0,ziji'j'k为0-1变量,如果工序Oi'j'先于工序Oij在机器k上加工,则为ziji'j'k=1;否则ziji'j'k=0,其目标是使能源消耗成本和加工成本之和最小化。
步骤2中适应度函数具体如下:
STi(j+1)≥CTij,i=1,2,...n,j=1,2,...Ji-1; (3)
xijk∈{0,1},i=1,2,...n,j=1,2,...Ji,k=1,2,...m; (6)
ziji'j'k∈{0,1},i,i'=1,2,...n,j,j'=1,2,...m (7)
式(1)表示总成本最小,F表示总成本,第一项表示加工成本,第二项表示机器负载状态下总的碳排放成本,第三项表示空载状态下总的碳排放成本;式(2)表示工序加工过程不允许中断;式(3)表示同工件中工序之间的顺序约束;式(4)表示各机器同时只能加工一个工件;式(5)表示每道工序只能被分配到一台设备;式(6)表示0-1变量xijk;式(7)表示0-1变量ziji'j'k。
步骤3中等长两段式编码方式具体如下:
前半部分码串表示工序的机器选择,其相应位置的数字表示对应工序选择的加工机器编号;后半部分码串表工序排序,其中数字表示对应的工件,该数字出现的次数表示对应工件的第几道工序。
步骤4中混合式方法生成初始车间调度解集具体为:初始化分别针对步骤3中的机器选择部分和工序排序进行,机器选择部分的初始种群采用混合搜索方式产生,其中60%由全局搜索产生,30%由局部搜索产生,10%由随机搜索方式产生,在此基础上,对每一个已产生的机器选择方案,随机生成多个工序排序方案,依次与之组合,并计算对应目标函数值,选择其中目标函数值最好的作为初始解,对所有机器选择方案执行相同操作完成种群初始化。
步骤5具体如下:
利用式(1)的适应度函数计算每一个调度解的目标函数值,即为对应每个鲸鱼个体的适应度值,找到并保存当前鲸鱼种群中最佳适应度值的鲸鱼个体S*,进行算法相关参数设置,包括群体数目N,最大迭代次数M,对数螺旋形状常数b=1,领域搜索最大迭代次数为20,局部搜索的最大迭代次数为10。
步骤6具体如下:
在算法每一次迭代前,首先在[0,1]上随机生成参数p,r;若p>0.5,则执行离散螺旋位置更新模式;若p≤0.5,且A≥1,则执行离散环绕捕食更新模式,若p≤0.5,且A<1,则执行离散随机搜索模式,进而完成种群的迭代更新,其中,
A=2a·r-a (8)
a'=amax-(amax-amin)cos(tπ/2tmax) (9)
公式(8)中A是系数向量,r为随机向量,a为线性收敛因子,其表达式为t为当前迭代次数,tmax为最大迭代次数,·是逐元素相乘符号;公式(9)中,a′为非线性收敛因子,amax为a的最大值,amin为a的最小值。
离散螺旋位置更新模式具体如下:
(1)机器选择部分两点交叉操作:
从步骤4的种群中,随机选择两个父代个体P1和P2上的两个位置,将父代个体中位于选中的两个位置之间片段相互交换,进而产生子代个体C1和C2;
(2)工序排序部分的交叉操作:
步骤6.1.1、取父代个体P1和P2;
步骤6.1.2、随机生成整数q1,q2∈[1,k],k为工件个数;
步骤6.1.3、将父代个体P1中隶属于q1的基因复制到子代个体C1中,将父代个体P2中的其他基因按原来的顺序复制到子代个体C1中;
步骤6.1.4、将父代个体P2中隶属于q2的基因复制到子代个体C2中,将父代个体P1中的其他基因按原来的顺序复制到子代个体C2中,转至步骤7;
所述离散环绕捕食模式具体如下:
(1)机器选择部分多点交叉操作如下:
随机产生一组长度与步骤3的FJSP码串等长的由0,1组成的数组S,依次在父代个体P1和父代个体P2中选出与S中的0位置相对应的工序,交换工序对应分配的机器,保留父代个体P1和父代个体P2中与S中的1位置相对应的机器,进而产生子代个体C1和子代个体C2;
(2)工序排序部分改进的基于优先级保留的交叉操作IPOX如下:
仅交叉父代染色体中工序的加工顺序,保留工件中工序分配的机器到子代,改进的基于优先级保留的交叉操作过程具体为,其中父代个体P1和父代个体P2为步骤3产生的初始种群中的两个父代个体,交叉产生子代个体C1和子代个体C2,IPOX交叉操作的过程为:把所有工件随机分成两个集合J1和J2,复制P1中属于J1的工件到C1,P2中属于J2的工件到C2,保持工件位置不变,复制P1中属于J1的工件到C2,P2中属于J2的工件到C1,保持工件顺序不变,转至步骤7;
所述离散随机搜索模式具体如下:
机器选择部分采用多点交叉操作,工序部分采用改进的基于优先级保留的交叉操作,随机选择一个个体与其他所有个体进行交叉操作,而不是选择当前最优个体,转至步骤7。
步骤7中邻域搜索模式,以三种不同的邻域结构来展开,三种邻域结构具体如下:
1)邻域结构N1:在工序排序部分的码段中任选两个元素,将选中的两个元素进行位置交换操作;
2)邻域结构N2:在工序排序部分的码段中任选两个元素,将选中的两个元素中位置靠前的元素插入到位置靠后的元素后面的位置;
3)邻域结构N3:在机器分配部分的码段中任选一个元素,该元素的可加工设备数量大于1台,然后将该元素的对应加工设备变为其他可选设备。
步骤7中邻域搜索过程如下:
7.1、设置X'←X*,μ=1,κ=1,和最大迭代次数μmax;
7.2、如果κ=1,则X″←N1(X')∪N3(X');如果κ=0,则X″←N2(X')∪N3(X');此处N2(X')∪N3(X')表示执行邻域结构N2(X')∪N3(X')的搜索操作;
7.3、如果则X'←X″;否则κ←|κ-1|;
7.4、设置μ←μ+1,如果μ>μmax,则X'←X″,执行步骤7.5;否则,执行步骤7.2;
7.5、结束并输出X',
其中,为判断阈值,μ表示当前迭代次数,κ表示0-1变量,X*表示当前最优解,X'表示邻域搜索的执行解,X″执行邻域搜索后得到的解,F(X″)表示执行邻域搜索后得到的解对应的目标函数值,F(X″)表示执行邻域搜索前执行解对应的目标函数值。
本发明的有益效果是,一种基于离散鲸鱼算法求解低碳车间调度问题的方法,该算法借鉴鲸鱼算法的迭代原理,设计了三种不同交叉操作和变领域搜索操作来实现算法的迭代更新,不需要引入转化机制,即可直接用于求解低碳车间调度这类离散问题,提高算法的求解效率,引入的混合式种群初始化策略提高了初始种群的质量,变领域搜索模式提高了算法的局部搜索能力,此外对传统鲸鱼算法收敛因子的非线性改进,提高了算法协调局部搜索和全局寻优的能力,相比遗传算法和传统鲸鱼算法,离散鲸鱼算法大大提高了求解低碳车间调度问题的速度和精度。
附图说明
图1是本发明一种基于离散鲸鱼算法求解低碳车间调度问题的方法流程图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
FJSP指的是n个工件在m台加工设备上安排加工的问题。其中每一个工件具有一道以上的加工工序,同一个工件的工序之间具有固定的加工顺序,且一个工序可以在一台以上的设备上完成加工。FJSP在解决工序加工顺序的同时,还需要为工序选择合适的加工设备,求解该问题的目的常见的有最大完工时间最小化,完工时间成本最小,设备平均负荷最小等。然而,当今低碳经济的大环境下,企业在完成加工任务的同时,还必须考虑能耗成本。低碳柔性作业车间调度问题是在FJSP的基础之上增加了碳排放量最小的目标,求解的目的是在满足其他目标的同时,使得碳排放量最小。据此,本文选取加工成本和碳排放成本之和最小为目标。
本文主要考虑车间内机器的两种工作状态,即加工和空载,其所对应的能耗成本分别为负载成本和空载能耗成本。能耗成本包含两个方面,各工序在对应机器加工的单位能耗成本和各机器空载的单位能耗成本。本文中,工序在不同机器上加工的单位时间能耗成本不同,因此,首先要为工序分配合适的机器,此外,还要合理安排工序在各台机器上的加工顺序,从而尽可能地减少机器空载能耗成本。因此,本文柔性作业车间调度低碳调度问题与一般柔性作业车间调度问题类似,包含机器分配和工序排序两个子问题。
本发明一种基于离散鲸鱼算法求解低碳车间调度问题的方法,流程图如图1所示,具体按照以下步骤实施:
步骤1、构建柔性作业车间低碳调度问题模型:包括车间低碳调度问题问题描述、模型假设及构建;
步骤1中:
(1)问题描述如下:
n个工件在m台加工设备上安排加工,其中每一个工件具有一道以上的加工工序,同一个工件的工序之间具有固定的加工顺序,且一个工序可以在一台以上的设备上完成加工,选取加工成本和碳排放成本之和最小为目标;
(2)模型假设如下:
工件和设备在初始时刻都可用;
每台设备同时只能加工一个工件;
工件加工过程不能中断;
工件运输时间和安装时间均忽略不计;
不同工件之间相互独立;
(3)模型构建具体如下:
F为目标函数,n表示工件的数量,m是机器的数量,Ji表示工件i的工序数,Oij是作业i的第j个操作,pijk表示工序Oij在机器k上的处理时间,sijk为工序Oij在机器k上加工的单位时间的加工成本,cijk为工序Oij在机器k上加工的单位时间的能耗成本,θk为机器k处于待机状态时单位时间的能耗成本,CTk为机器k的完成时间,Wk为机器k的工作负载,STij为工序Oij开始加工的时间,CTij为工序Oij加工的完成时间,η是一个常数,η大于1000,xijk为0-1变量,如果工序Oij在机器k上加工则,xijk=1;否则,xijk=0,ziji'j'k为0-1变量,如果工序Oi'j'先于工序Oij在机器k上加工,则为ziji'j'k=1;否则ziji'j'k=0,其目标是使能源消耗成本和加工成本之和最小化。
步骤2、建立柔性作业车间低碳调度问题的目标函数,将目标函数直接作为离散鲸鱼算法的适应度函数,其中适应度函数具体如下:
STi(j+1)≥CTij,i=1,2,...n,j=1,2,...Ji-1; (3)
xijk∈{0,1},i=1,2,...n,j=1,2,...Ji,k=1,2,...m; (6)
ziji'j'k∈{0,1},i,i'=1,2,...n,j,j'=1,2,...m (7)
式(1)表示总成本最小,F表示总成本,第一项表示加工成本,第二项表示机器负载状态下总的碳排放成本,第三项表示空载状态下总的碳排放成本;式(2)表示工序加工过程不允许中断;式(3)表示同工件中工序之间的顺序约束;式(4)表示各机器同时只能加工一个工件;式(5)表示每道工序只能被分配到一台设备;式(6)表示0-1变量xijk;式(7)表示0-1变量ziji'j'k。
步骤3、柔性作业车间低碳调度问题的调度解的编码方式采用等长两段式编码方式,其中等长两段式编码方式具体如下:
前半部分码串表示工序的机器选择,其相应位置的数字表示对应工序选择的加工机器编号;后半部分码串表工序排序,其中数字表示对应的工件,该数字出现的次数表示对应工件的第几道工序。
FJSP包含机器选择和工序排序两个子问题,针对这一特点,采用等长的两段式编码方式来对问题加以描述。以3×5(3个工件,5台设备)的FJSP为例,其中每个工件都有2道工序,对应个体位置向量的编码方案如表1所示,向量总长度为12,其中前6位表示6道工序选择的机器编码,后序6位表示工的加工顺序,Oij表示工件i的第j道工序:
表1 两段式编码方法
步骤4、混合式方法生成初始车间调度解集,作为离散鲸鱼算法的初始种群;其中混合式方法生成初始车间调度解集具体为:初始化分别针对步骤3中的机器选择部分和工序排序进行,机器选择部分的初始种群采用混合搜索方式产生,其中60%由全局搜索产生,30%由局部搜索产生,10%由随机搜索方式产生。在此基础上,对每一个已产生的机器选择方案,随机生成多个工序排序方案,依次与之组合,并计算对应目标函数值,选择其中目标函数值最好的作为初始解,对所有机器选择方案执行相同操作完成种群初始化。
步骤5、计算种群中所有个体的适应度函数,找到并保存当前最优个体,并对离散鲸鱼算法的参数初始化;
具体如下:
利用式(1)的适应度函数计算每一个调度解的目标函数值,即为对应每个鲸鱼个体的适应度值,找到并保存当前鲸鱼种群中最佳适应度值的鲸鱼个体S*,进行算法相关参数设置,包括群体数目N,最大迭代次数M,对数螺旋形状常数b=1,领域搜索最大迭代次数为20,局部搜索的最大迭代次数为10。
步骤6、用离散鲸鱼算法对所有种群个体进行迭代更新;具体如下:
在算法每一次迭代前,首先在[0,1]上随机生成参数p,r;若p>0.5,则执行离散螺旋位置更新模式;若p≤0.5,且A≥1,则执行离散环绕捕食更新模式,若p≤0.5,且|A|<1,则执行离散随机搜索模式,进而完成种群的迭代更新,其中,
A=2a·r-a (8)
a'=amax-(amax-amin)cos(tπ/2tmax) (9)
公式(8)中A是系数向量,r为随机向量,a为线性收敛因子,其表达式为t为当前迭代次数,tmax为最大迭代次数,·是逐元素相乘符号;公式(9)中,a′为非线性收敛因子,amax为a的最大值,amin为a的最小值。
离散螺旋位置更新模式具体如下:
(1)机器选择部分两点交叉操作:
从步骤4的种群中,随机选择两个父代个体P1和P2上的两个位置,将父代染色体中位于选中的两个位置之间片段相互交换,进而产生子代染色体C1和C2;两点交叉操作如表2所示:
表2 两点交叉操作
(2)工序排序部分的交叉操作(基于随机数的交叉操作),工序排序部分如果进行随机交叉很容易产生非法解,为了避免这种情况的发生,设计工序部分的交叉如表3所示:
步骤6.1.1、取父代个体P1和P2;
步骤6.1.2、随机生成整数q1,q2∈[1,k],k为工件个数;
步骤6.1.3、将父代个体P1中隶属于q1的基因复制到子代个体C1中,将父代个体P2中的其他基因按原来的顺序复制到子代个体C1中;
步骤6.1.4、将父代个体P2中隶属于q2的基因复制到子代个体C2中,将父代个体P1中的其他基因按原来的顺序复制到子代个体C2中,转至步骤7,工序部分的交叉操作如表3所示:
表3 工序部分的交叉操作
所述离散环绕捕食模式具体如下:
(1)机器选择部分多点交叉操作如下:
随机产生一组长度与步骤3的FJSP码串等长的由0,1组成的数组S,依次在父代个体P1和父代个体P2中选出与S中的0位置相对应的工序,交换工序对应分配的机器,保留父代个体P1和父代个体P2中与S中的1位置相对应的机器,进而产生子代个体C1和子代个体C2;多点交叉操作如表4所示:
表4 多点交叉操作
(2)工序排序部分改进的基于优先级保留的交叉操作IPOX如下:
仅交叉父代染色体中工序的加工顺序,保留工件中工序分配的机器到子代,改进的基于优先级保留的交叉操作过程具体为,其中父代个体P1和父代个体P2为中步骤3产生的初始种群的两个父代个体,交叉产生子代个体C1和子代个体C2,IPOX交叉操作的过程为:把所有工件随机分成两个集合J1和J2,复制P1中属于J1的工件到C1,P2中属于J2的工件到C2,保持工件位置不变,复制P1中属于J1的工件到C2,P2中属于J2的工件到C1,保持工件顺序不变,转至步骤7;基于优先级保留的交叉操作如表5所示,J1={1},J2={2,3}:
表5 基于优先级保留的交叉操作
所述离散随机搜索模式具体如下:
机器选择部分采用多点交叉操作,工序部分采用改进的基于优先级保留的交叉操作,随机选择一个个体与其他所有个体进行交叉操作,而不是选择当前最优个体,转至步骤7。
步骤7中邻域搜索模式,以三种不同的邻域结构来展开,三种邻域结构具体如下:
1)邻域结构N1:在工序排序部分的码段中任选两个元素,将选中的两个元素进行位置交换操作;
2)邻域结构N2:在工序排序部分的码段中任选两个元素,将选中的两个元素中位置靠前的元素插入到位置靠后的元素后面的位置;
3)邻域结构N3:在机器分配部分的码段中任选一个元素,该元素的可加工设备数量大于1台,然后将该元素的对应加工设备变为其他可选设备。
步骤7、对当前最优个体执行邻域搜索操作,判断是否满足当前迭代次数大于最大迭代次数,若满足执行步骤8,若不满足,则对前迭代次数加一,执行步骤5;
步骤7中领域搜索过程如下:
7.1、设置X'←X*,μ=1,κ=1,和最大迭代次数μmax;
7.2、如果κ=1,则X″←N1(X')∪N3(X');如果κ=0,则X″←N2(X')∪N3(X');此处N2(X')∪N3(X')表示执行邻域结构N2(X')∪N3(X')的局部搜索操作;
7.3、如果则X'←X″;否则κ←|κ-1|;
7.4、设置μ←μ+1,如果μ>μmax,则X'←X″,执行步骤7.5;否则,执行步骤7.2;
7.5、结束并输出X',
其中,为判断阈值,μ表示当前迭代次数,κ表示0-1变量,X*表示当前最优解,X'表示邻域搜索的执行解,X″执行邻域搜索后得到的解,F(X″)表示执行邻域搜索后得到的解对应的目标函数值,F(X″)表示执行邻域搜索前执行解对应的目标函数值。
步骤8、输出最优个体,及最优个体对应的适应度函数值,进而获得低碳车间调度问题的最佳调度方案。
实验验证:
实验分析共采用19个算例进行验证:14个标准算例和5个随机算例,标准算例采用Brandimarte的基准算例MK01-MK10和Kacem的基准算例KA01-KA05,随机算例则由程序随机产生,此处,工件在所有设备上的单位时间加工成本都为50元/分钟,基准算例中,所有设备在负载状态下单位时间的碳排放成本由[0,1]上随机生成,所有设备在空载状态下单位时间的碳排放成本也由[0,1]上随机生成。5个随机算例中,所有工序的加工时间在[0,100]上随机生成,工件的工序之间的加工顺序也通过随机方式产生,所有设备在负载/空载状态下单位时间的碳排放成本都由[0,1]上随机生成,由此构造出19个带有碳排放数据的测试算例。采用Matlab2016b编程,运行环境:win10系统,内存8G,R5 3.2GHz。算法参数设置:种群大小30,迭代次数100,运行次数50次。
其中:Best表示算法运行50次获得的最佳结果;Avg表示算法50次运行结果的平均值;ARPD表示相对百分比偏差,计算公式为Time表示算法运行时间。
实验针对离散鲸鱼算法、基本收敛因子的鲸鱼算法、随机初始化种群策略的鲸鱼算法和遗传算法四种算法进行。运行环境相同。算法结果对比如表6所示:
表6 算法对比结果
在上表中,CosWOA为本专利的离散鲸鱼优化算法,BWOA为采用了基本鲸鱼算法中收敛因子a形式的离散鲸鱼算法,RWOA为采用随机初始化种群的离散鲸鱼优化算法,GA为遗传算法。由上表相关数据可知,虽然遗传算法也能得到一些优秀的结果,但运行时间过长,且解的均匀性不好。而本发明的离散鲸鱼优化算法得到的最优结果最多,而且平均值也更好,求解时间也更短。所以本文提出的离散鲸鱼优化算法在求解低碳车间调度问题上具有一定的有效性。
Claims (10)
1.一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,具体按照以下步骤实施:
步骤1、构建柔性作业车间低碳调度问题模型:包括车间低碳调度问题问题描述、模型假设及构建;
步骤2、建立柔性作业车间低碳调度问题的目标函数,将目标函数直接作为离散鲸鱼算法的适应度函数;
步骤3、柔性作业车间低碳调度问题的调度解的编码方式采用等长两段式编码方式;
步骤4、混合式方法生成初始车间调度解集,作为离散鲸鱼算法的初始种群;
步骤5、计算种群中所有个体的适应度函数,找到并保存当前最优个体,并对离散鲸鱼算法的参数初始化;
步骤6、用离散鲸鱼算法对所有种群个体进行迭代更新;
步骤7、对当前最优个体执行领域搜索操作,判断是否满足当前迭代次数大于最大迭代次数,若满足执行步骤8,若不满足,则对前迭代次数加一,执行步骤5;
步骤8、输出最优个体,及最优个体对应的适应度函数值,进而获得低碳车间调度问题的最佳调度方案。
2.根据权利要求1所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述步骤1中:
(1)问题描述如下:
n个工件在m台加工设备上安排加工,其中每一个工件具有一道以上的加工工序,同一个工件的工序之间具有固定的加工顺序,且一个工序可以在一台以上的设备上完成加工,选取加工成本和碳排放成本之和最小为目标;
(2)模型假设如下:
工件和设备在初始时刻都可用;
每台设备同时只能加工一个工件;
工件加工过程不能中断;
工件运输时间和安装时间均忽略不计;
不同工件之间相互独立;
(3)模型构建具体如下:
F为目标函数,n表示工件的数量,m是机器的数量,Ji表示工件i的工序数,Oij是作业i的第j个操作,pijk表示工序Oij在机器k上的处理时间,sijk为工序Oij在机器k上加工的单位时间的加工成本,cijk为工序Oij在机器k上加工的单位时间的能耗成本,θk为机器k处于待机状态时单位时间的能耗成本,CTk为机器k的完成时间,Wk为机器k的工作负载,STij为工序Oij开始加工的时间,CTij为工序Oij加工的完成时间,η是一个常数,η大于1000,xijk为0-1变量,如果工序Oij在机器k上加工则,xijk=1;否则,xijk=0,ziji'j'k为0-1变量,如果工序Oi'j'先于工序Oij在机器k上加工,则为ziji'j'k=1;否则ziji'j'k=0,其目标是使能源消耗成本和加工成本之和最小化。
3.根据权利要求2所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述步骤2中适应度函数具体如下:
STi(j+1)≥CTij,i=1,2,...n,j=1,2,...Ji-1; (3)
xijk∈{0,1},i=1,2,...n,j=1,2,...Ji,k=1,2,...m; (6)
ziji'j'k∈{0,1},i,i'=1,2,...n,j,j'=1,2,...m (7)
式(1)表示总成本最小,F表示总成本,第一项表示加工成本,第二项表示机器负载状态下总的碳排放成本,第三项表示空载状态下总的碳排放成本;式(2)表示工序加工过程不允许中断;式(3)表示同工件中工序之间的顺序约束;式(4)表示各机器同时只能加工一个工件;式(5)表示每道工序只能被分配到一台设备;式(6)表示0-1变量xijk;式(7)表示0-1变量ziji'j'k。
4.根据权利要求3所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述步骤3中等长两段式编码方式具体如下:
前半部分码串表示工序的机器选择,其相应位置的数字表示对应工序选择的加工机器编号;后半部分码串表工序排序,其中数字表示对应的工件,该数字出现的次数表示对应工件的第几道工序。
5.根据权利要求4所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述步骤4中混合式方法生成初始车间调度解集具体为:初始化分别针对步骤3中的机器选择部分和工序排序进行,机器选择部分的初始种群采用混合搜索方式产生,其中60%由全局搜索产生,30%由局部搜索产生,10%由随机搜索方式产生,在此基础上,对每一个已产生的机器选择方案,随机生成多个工序排序方案,依次与之组合,并计算对应目标函数值,选择其中目标函数值最好的作为初始解,对所有机器选择方案执行相同操作完成种群初始化。
6.根据权利要求5所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述步骤5具体如下:
利用式(1)的适应度函数计算每一个调度解的目标函数值,即为对应每个鲸鱼个体的适应度值,找到并保存当前鲸鱼种群中最佳适应度值的鲸鱼个体S*,进行算法相关参数设置,包括群体数目N,最大迭代次数M,对数螺旋形状常数b=1,领域搜索最大迭代次数为20,局部搜索的最大迭代次数为10。
7.根据权利要求6所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述步骤6具体如下:
在算法每一次迭代前,首先在[0,1]上随机生成参数p,r;若p>0.5,则执行离散螺旋位置更新模式;若p≤0.5,且|A|≥1,则执行离散环绕捕食更新模式,若p≤0.5,且|A|<1,则执行离散随机搜索模式,进而完成种群的迭代更新,其中,
A=2a·r-a (8)
a'=amax-(amax-amin)cos(tπ/2tmax) (9)
公式(8)中A是系数向量,r为随机向量,a为线性收敛因子,其表达式为t为当前迭代次数,tmax为最大迭代次数,·是逐元素相乘符号;公式(9)中,a’为非线性收敛因子,amax为a的最大值,amin为a的最小值。
8.根据权利要求7所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述离散螺旋位置更新模式具体如下:
(1)机器选择部分两点交叉操作:
从步骤4的种群中,随机选择两个父代个体P1和P2上的两个位置,将父代个体中位于选中的两个位置之间片段相互交换,进而产生子代个体C1和C2;
(2)工序排序部分的交叉操作:
步骤6.1.1、取父代个体P1和P2;
步骤6.1.2、随机生成整数q1,q2∈[1,k],k为工件个数;
步骤6.1.3、将父代个体P1中隶属于q1的基因复制到子代个体C1中,将父代个体P2中的其他基因按原来的顺序复制到子代个体C1中;
步骤6.1.4、将父代个体P2中隶属于q2的基因复制到子代个体C2中,将父代个体P1中的其他基因按原来的顺序复制到子代个体C2中,转至步骤7;
所述离散环绕捕食模式具体如下:
(1)机器选择部分多点交叉操作如下:
随机产生一组长度与步骤3的FJSP码串等长的由0,1组成的数组S,依次在父代个体P1和父代个体P2中选出与S中的0位置相对应的工序,交换工序对应分配的机器,保留父代个体P1和父代个体P2中与S中的1位置相对应的机器,进而产生子代个体C1和子代个体C2;
(2)工序排序部分改进的基于优先级保留的交叉操作IPOX如下:
仅交叉父代染色体中工序的加工顺序,保留工件中工序分配的机器到子代,改进的基于优先级保留的交叉操作过程具体为,其中父代个体P1和父代个体P2为步骤3产生的初始种群中的两个父代个体,交叉产生子代个体C1和子代个体C2,IPOX交叉操作的过程为:把所有工件随机分成两个集合J1和J2,复制P1中属于J1的工件到C1,P2中属于J2的工件到C2,保持工件位置不变,复制P1中属于J1的工件到C2,P2中属于J2的工件到C1,保持工件顺序不变,转至步骤7;
所述离散随机搜索模式具体如下:
机器选择部分采用多点交叉操作,工序部分采用改进的基于优先级保留的交叉操作,随机选择一个个体与其他所有个体进行交叉操作,而不是选择当前最优个体,转至步骤7。
9.根据权利要求7所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述步骤7中邻域搜索模式,以三种不同的邻域结构来展开,三种邻域结构具体如下:
1)邻域结构N1:在工序排序部分的码段中任选两个元素,将选中的两个元素进行位置交换操作;
2)邻域结构N2:在工序排序部分的码段中任选两个元素,将选中的两个元素中位置靠前的元素插入到位置靠后的元素后面的位置;
3)邻域结构N3:在机器分配部分的码段中任选一个元素,该元素的可加工设备数量大于1台,然后将该元素的对应加工设备变为其他可选设备。
10.根据权利要求9所述的一种基于离散鲸鱼算法求解低碳车间调度问题的方法,其特征在于,所述步骤7中邻域搜索过程如下:
7.1、设置X'←X*,μ=1,κ=1,和最大迭代次数μmax;
7.2、如果κ=1,则X”←N1(X')∪N3(X');如果κ=0,则X”←N2(X')∪N3(X');此处N2(X')∪N3(X')表示执行邻域结构N2(X')∪N3(X')的局部搜索操作;
7.3、如果则X'←X”;否则κ←|κ-1|;
7.4、设置μ←μ+1,如果μ>μmax,则X'←X”,执行步骤7.5;否则,执行步骤7.2;
7.5、结束并输出X',
其中,为判断阈值,μ表示当前迭代次数,κ表示0-1变量,X*表示当前最优解,X'表示邻域搜索的执行解,X”执行邻域搜索后得到的解,F(X”)表示执行邻域搜索后得到的解对应的目标函数值,F(X”)表示执行邻域搜索前执行解对应的目标函数值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910740292.5A CN110531716A (zh) | 2019-08-12 | 2019-08-12 | 基于离散鲸鱼算法求解低碳车间调度问题的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910740292.5A CN110531716A (zh) | 2019-08-12 | 2019-08-12 | 基于离散鲸鱼算法求解低碳车间调度问题的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110531716A true CN110531716A (zh) | 2019-12-03 |
Family
ID=68663011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910740292.5A Pending CN110531716A (zh) | 2019-08-12 | 2019-08-12 | 基于离散鲸鱼算法求解低碳车间调度问题的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110531716A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191818A (zh) * | 2019-12-12 | 2020-05-22 | 同济大学 | 一种考虑节拍与能耗的u型装配线任务分配方法 |
CN111967654A (zh) * | 2020-07-27 | 2020-11-20 | 西安工程大学 | 一种基于混合遗传算法求解柔性作业车间调度的方法 |
CN113378343A (zh) * | 2021-07-09 | 2021-09-10 | 浙江盘盘科技有限公司 | 一种基于离散Jaya算法的电缆生产调度方法 |
CN113447022A (zh) * | 2020-03-24 | 2021-09-28 | 百德机械股份有限公司 | 工件检测的路径规划方法及其系统 |
CN113780871A (zh) * | 2021-09-22 | 2021-12-10 | 大连交通大学 | 一种多目标低碳柔性作业车间调度方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109784604A (zh) * | 2018-11-15 | 2019-05-21 | 长安大学 | 一种基于鲸鱼算法的柔性作业车间制造资源分配方法 |
CN109886589A (zh) * | 2019-02-28 | 2019-06-14 | 长安大学 | 一种基于改进鲸鱼优化算法求解低碳车间调度的方法 |
CN109886588A (zh) * | 2019-02-28 | 2019-06-14 | 长安大学 | 一种基于改进鲸鱼算法求解柔性作业车间调度的方法 |
-
2019
- 2019-08-12 CN CN201910740292.5A patent/CN110531716A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109784604A (zh) * | 2018-11-15 | 2019-05-21 | 长安大学 | 一种基于鲸鱼算法的柔性作业车间制造资源分配方法 |
CN109886589A (zh) * | 2019-02-28 | 2019-06-14 | 长安大学 | 一种基于改进鲸鱼优化算法求解低碳车间调度的方法 |
CN109886588A (zh) * | 2019-02-28 | 2019-06-14 | 长安大学 | 一种基于改进鲸鱼算法求解柔性作业车间调度的方法 |
Non-Patent Citations (1)
Title |
---|
FEI LUAN ET AL: ""Optimizing the Low-Carbon Flexible Job Shop Scheduling Problem with Discrete Whale Optimization Algorithm"", 《MATHEMATICS》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191818A (zh) * | 2019-12-12 | 2020-05-22 | 同济大学 | 一种考虑节拍与能耗的u型装配线任务分配方法 |
CN111191818B (zh) * | 2019-12-12 | 2023-04-07 | 同济大学 | 一种考虑节拍与能耗的u型装配线任务分配方法 |
CN113447022A (zh) * | 2020-03-24 | 2021-09-28 | 百德机械股份有限公司 | 工件检测的路径规划方法及其系统 |
CN111967654A (zh) * | 2020-07-27 | 2020-11-20 | 西安工程大学 | 一种基于混合遗传算法求解柔性作业车间调度的方法 |
CN113378343A (zh) * | 2021-07-09 | 2021-09-10 | 浙江盘盘科技有限公司 | 一种基于离散Jaya算法的电缆生产调度方法 |
CN113378343B (zh) * | 2021-07-09 | 2022-06-10 | 浙江盘盘科技有限公司 | 一种基于离散Jaya算法的电缆生产调度方法 |
CN113780871A (zh) * | 2021-09-22 | 2021-12-10 | 大连交通大学 | 一种多目标低碳柔性作业车间调度方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110531716A (zh) | 基于离散鲸鱼算法求解低碳车间调度问题的方法 | |
Pan et al. | A knowledge-based two-population optimization algorithm for distributed energy-efficient parallel machines scheduling | |
CN110543151B (zh) | 基于改进nsga-ⅱ求解车间节能调度问题的方法 | |
Yu et al. | Assembly line balancing based on an adaptive genetic algorithm | |
CN113159383B (zh) | 一种面向多机协作加工车间的制造资源重构调度方法及系统 | |
CN101901425A (zh) | 一种基于多种群协同进化的柔性作业车间调度方法 | |
Li et al. | Model and metaheuristics for robotic two-sided assembly line balancing problems with setup times | |
CN107301504A (zh) | 基于混合蛙跳—路径重连的生产运输协同调度方法和系统 | |
CN103729694B (zh) | 基于多色集合层次结构的改进ga求解柔性车间调度的方法 | |
CN106250583A (zh) | 基于双种群基因表达式编程的动态车间调度规则优化方法 | |
CN112381273B (zh) | 一种基于u-nsga-iii算法的多目标作业车间节能优化方法 | |
CN105956689A (zh) | 一种基于改进粒子群优化的运输和生产协同调度方法 | |
He et al. | Optimization of energy-efficient open shop scheduling with an adaptive multi-objective differential evolution algorithm | |
Huang et al. | Genetic algorithm for rotary machine scheduling with dependent processing times | |
CN116560313A (zh) | 一种多目标柔性作业车间问题的遗传算法优化调度方法 | |
CN113569483A (zh) | 基于人工蜂群算法求解多目标柔性作业车间调度的方法 | |
CN116957177A (zh) | 一种柔性车间产线规划方法、系统、设备及介质 | |
CN117555305B (zh) | 一种基于nsgaii的多目标可变子批柔性车间作业调度方法 | |
CN114021934A (zh) | 基于改进spea2求解车间节能调度问题的方法 | |
CN104281917A (zh) | 基于自适应遗传和克隆选择算法的模糊作业车间调度方法 | |
CN113792494B (zh) | 基于迁徙鸟群算法和交叉融合的多目标柔性作业车间调度方法 | |
CN114648247A (zh) | 一种工艺规划与调度集成的再制造决策方法 | |
CN115496322A (zh) | 分布式流水车间调度方法及装置 | |
CN114237166A (zh) | 基于改进spea2算法求解多转速节能调度问题的方法 | |
Raghavendra | Scheduling in parallel machines environment using genetic algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191203 |
|
RJ01 | Rejection of invention patent application after publication |