CN103105775B - 基于序优化与在线核极限学习机的分层迭代优化调度方法 - Google Patents

基于序优化与在线核极限学习机的分层迭代优化调度方法 Download PDF

Info

Publication number
CN103105775B
CN103105775B CN201210543781.XA CN201210543781A CN103105775B CN 103105775 B CN103105775 B CN 103105775B CN 201210543781 A CN201210543781 A CN 201210543781A CN 103105775 B CN103105775 B CN 103105775B
Authority
CN
China
Prior art keywords
menu
scheduling
centerdot
test
optimization
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.)
Expired - Fee Related
Application number
CN201210543781.XA
Other languages
English (en)
Other versions
CN103105775A (zh
Inventor
刘民
郝井华
郭路
吴澄
王凌
张亚斌
刘涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN201210543781.XA priority Critical patent/CN103105775B/zh
Publication of CN103105775A publication Critical patent/CN103105775A/zh
Application granted granted Critical
Publication of CN103105775B publication Critical patent/CN103105775B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

基于序优化与在线核极限学习机的分层迭代优化调度方法,属于自动控制、信息技术和先进制造领域,具体涉及菜单层批调度策略优化、操作层操作排序优化和基于核极限学习机在线学习的目标函数评价等方法。其特征在于,针对微电子生产过程中扩散区组批调度过程中存在的决策变量多,批调度策略与操作排序策略之间存在较强耦合等特点,在调度算法中采用了分层调度结构,对菜单层批调度策略和操作层排序策略进行迭代优化,为提高算法优化效率,采用序优化方法快速优化菜单层批调度策略,并通过菜单层和操作层之间的迭代优化,进一步提高调度算法性能。本发明所提出的基于序优化与在线核极限学习机的分层迭代优化调度方法具有较好的求解速度和优化性能。

Description

基于序优化与在线核极限学习机的分层迭代优化调度方法
技术领域
本发明属于自动控制、信息技术和先进制造领域。具体涉及针对半导体等行业生产过程组批调度问题的一种新型优化算法。
背景技术
软计算在求解生产过程优化调度问题中取得了广泛应用,但在问题解空间规模较为庞大、约束较为复杂时,容易出现算法早熟、收敛速度慢等现象,导致算法求解过程效率较低。虽然高效的进化计算方法被不断提出,如量子进化计算、差分进化计算等,该类算法在提高算法效率方面取得了一定的进展,但当面对上述解空间规模较为庞大、约束较为复杂的问题时,求解效率仍很难令人满意。半导体生产过程十分复杂,规模庞大,特别在组批加工过程中,相比普通的加工过程,还存在组批、Batch排序等过程,同时组批决策和操作排序决策之间存在较强的耦合作用,即组批决策结果受操作排序结果的影响,因此,如何通过挖掘问题自身的特征,提高算法的求解效率,是求解带有批处理过程调度问题的主要难点之一。
本发明针对半导体生产线组批调度问题,提出一种基于序优化与在线核极限学习机的分层迭代优化调度方法,与其他算法相比,本发明具有较优的调度性能和求解效率。
发明内容
本发明针对半导体生产过程中的扩散区组批调度过程中决策变量多,批调度策略与操作排序策略之间存在强耦合,调度问题规模大等特点,在调度算法中采用了分层调度结构,对菜单层批调度策略和操作层排序策略进行迭代优化,为提高算法运算效率,采用序优化方法快速优化菜单层批调度策略,并通过菜单层和操作层之间的迭代优化,有效提高了调度算法的求解速度和优化性能。
基于序优化与在线核极限学习机的分层迭代优化调度方法,其特征在于,所述方法是在计算机上依次按以下步骤实现的:
步骤1:初始化调度算法相关参数
采集调度所需的相关初始化信息,包括每个lot的片数、品种、工艺路径,每个操作的菜单、可加工机器、所属的加工机器组,每个机器的释放时间、所属的机器组、对每种菜单的加工时间,将上述信息写入算法数据库中,在调度算法启动时,将初始化信息加载到算法中;
确定差分进化优化算法相关参数:选定种群规模N=20,差分缩放因子F=0.3,最大进化代数Gmax=5,杂交率CR=0.8,变异比率λ=0.3;迭代次数设为2次;
步骤2:差分进化算法初始解生成;
优化过程中,对于菜单层采用菜单多属性权值优化,优化的菜单属性至少包括该菜单中所含的操作平均剩余加工时间、平均到达时间、平均后续操作数量、平均紧急程度优化四个属性;对于操作层优化操作的优先权序列,于是,对于每个机器组而言,采用的编码方式为:
Figure GDA0000435071890000021
i表示该机器组编号i=1,2,…,g,g为机器组的数量;ri表示机器组i可加工菜单的最大数量;{wi,1,wi,2,wi,3,wi,4}为四个调度属性的权值,权值初始化时在[01]范围内随机取值;
Figure GDA0000435071890000022
表示第j个菜单对应所有操作生成的优先权序列,其中dj表示菜单j所包含的操作的总数量,
Figure GDA0000435071890000023
表示机器组i的菜单j中的第k个操作,k=1,2,…,dj;操作优先权序列采用随机方式产生;
所有机器组的
Figure GDA0000435071890000024
组合,构成一个初始解;
步骤3:采用差分进化算法获得第一次迭代前的较优解
步骤3.1:解码
对步骤2中生成的初始解,通过离散事件仿真的方式获得每个调度解个体的适应度评价;
仿真过程中,至少包含菜单选择和菜单内操作选择两种决策过程:
当机器空闲时,首先对缓冲区内所有的操作按照菜单进行分组,计算每种菜单内所有操作的平均剩余加工时间、平均到达时间、平均后续操作数量、平均紧急程度四个属性,根据编码过程中给定的调度属性加权矢量{wi,1,wi,2,wi,3,wi,4}计算菜单的优先权值,选取权值高的菜单进行加工;
菜单选定后,对菜单内每个操作按照解个体中给定的操作优先权从高到底的方式进行选择,直至选出的操作总片数最接近机器加工片数的最大值;此时,被选中的所有操作组成一个batch,将该batch中的所有操作同时上机进行加工;
加工完成后,仿真推进至下一次菜单选择和菜单内操作选择过程,直至所有操作都加工完成,仿真结束;
步骤3.2:变异交叉过程
差分进化算法变异交叉过程描述如下:
步骤3.2.1:随机选择三个个体,
Figure GDA0000435071890000031
步骤3.2.2:操作层操作优先权序列变异方法:
1)选择需变异的操作优先权子序列
假定机器组Ml对应操作的数量为Dl,需进行变异的操作数量为
Figure GDA00004350718900000320
表示向下取整;随机生成一整数r4,满足0≤r4≤Dl-Dλ,在
Figure GDA0000435071890000032
中机器组Ml对应的操作优先权序列中,从位置r4选取长度为Dλ的操作子序列,记为
Figure GDA0000435071890000033
该子序列对应的位置矢量记为
Figure GDA0000435071890000034
这里位置矢量指的是从0开始标记的位置编号,则:
P r 1 r 4 = { r 4 , r 4 + 1 , . . . , r 4 + D λ - 1 }
将上式记作:
P r 1 r 4 = { r 4 , r 4 + 1 , . . . , r 4 + D λ - 1 } = { p r 1 , 0 r 4 , p r 1 , 1 r 4 , . . . , p r 1 , D λ - 1 r 4 }
不失一般性,记
Figure GDA0000435071890000037
Figure GDA0000435071890000038
第r4+k(0≤k≤Dλ-1)个操作在
Figure GDA0000435071890000039
中对应的操作优先权序列的位置编号,则对选取的长度为Dλ的操作子序列
Figure GDA00004350718900000310
中的每一个元素,在
Figure GDA00004350718900000311
中查找对应位置的元素后,得到的位置矢量为:
P r 2 r 4 = { p r 2 , 0 r 4 , p r 2 , 1 r 4 , . . . , p r 2 , D λ - 1 r 4 }
P r 3 r 4 = { p r 3 , 0 r 4 , p r 3 , 1 r 4 , . . . , p r 3 , D λ - 1 r 4 }
P r 1 r 4 = { p r 1 , 0 r 4 , p r 1 , 1 r 4 , . . . , p r 1 , D λ - 1 r 4 }
这里
Figure GDA00004350718900000315
中由
Figure GDA00004350718900000316
所对应的操作、中位置
Figure GDA00004350718900000318
所对应的操作以及
Figure GDA00004350718900000319
中位置
Figure GDA0000435071890000041
所对应的操作相同;
2)执行变异操作
令F为差分缩放因子(F<1),按下式计算变异后中每个元素所对应的位置矢量
Figure GDA0000435071890000043
Figure GDA0000435071890000044
上式中,mod表示取余;表示变异后的位置矢量;
3)交叉过程
Figure GDA0000435071890000046
分别为位置矢量
Figure GDA0000435071890000047
中的第k个位置,上述两个位置对应的操作为一个操作对,交叉操作即为对上述两个位置对应的操作按初始化给定的概率CR进行交换;即随机生成一个取值在[0,1]内的数,将该数与CR值比较,如果该随机数大于CR则交换,否则不交换;
步骤3.2.3:菜单层多调度属性权值变异交叉方法:
1)变异过程
y i j = w r 1 j + F ( w r 2 j - w r 3 j )
上式中,
Figure GDA0000435071890000049
为个体
Figure GDA00004350718900000410
的多属性权值部分;为个体的多属性权值部分;为个体
Figure GDA00004350718900000414
的多属性权值部分;
Figure GDA00004350718900000415
表示变异后第j代第i个个体的调度属性权值部分;
2)交叉过程
假定
Figure GDA00004350718900000416
表示
Figure GDA00004350718900000417
的第k个变量,
Figure GDA00004350718900000418
表示第j代第i个个体的第k个变量,k=1,2,3,4,交叉过程为:随机生成一个取值在[0,1]内的数,将该数与CR值比较,如果该随机数大于CR则
Figure GDA00004350718900000419
否则
Figure GDA00004350718900000420
步骤3.2.4:变异交叉完成后,所得到的个体记为
Figure GDA00004350718900000421
步骤3.3:选择
若完成变异和交叉后的个体适应度高于原有个体,则将新个体取代原有个体,作为第j+1代第i个个体
Figure GDA0000435071890000051
即:
x i j + 1 = x i j , f ( x i j ) &le; f ( v i j ) v j i , f ( x i j ) > f ( v i j )
其中
Figure GDA0000435071890000053
表示
Figure GDA0000435071890000054
的目标函数值;
Figure GDA0000435071890000055
表示
Figure GDA0000435071890000056
的目标函数值;
步骤3.4:终止条件
重复步骤3.1~步骤3.3,直至满足所设定的最大进化代数Gmax=5;
步骤4:菜单层基于序优化方法的快速优化
菜单层采用序优化方法进行优化,具体算法描述如下:
步骤4.1:随机产生N0=20条个体,每个个体生成时,操作层的操作优先权序列为步骤3优化后得到的操作优先权,菜单层的多属性权值产生方法与步骤2中菜单层多属性权值产生方法相同;
记为
Figure GDA0000435071890000059
,其中xi为一组权值矢量,由所有机器组对应的菜单层属性加权矢量{wi,1,wi,2,wi,3,wi,4}组成;
通过仿真获得这N0个个体的目标函数值,记为 Y = y 1 y 2 . . . Y N 0 ;
步骤4.2:将步骤4.1生成的N0对数据作为训练数据,构造训练集{X,Y};
步骤4.3:随机产生Ntest=1000个调度解个体构造集合Θr,每个个体的产生方法与步骤2中调度解个体的产生方法相同;
步骤4.4:采用核极限学习机,获得Ntest=1000个调度解个体的目标函数值的估计值,计算公式如下:
Y ^ test = K ( x test , 1 , x 1 ) K ( x test , 1 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , 1 , x N 0 ) K ( x test , 2 , x 1 ) K ( x test , 2 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , 2 , x N 0 ) . . . . . . . . . . . . K ( x test , N test , x 1 ) K ( x test , N test , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , N test , x N 0 ) A &pi; - 1 y 1 A &pi; - 1 y 2 . . . A &pi; - 1 Y N 0
其中 A &pi; - 1 = 1 v + K ( x 1 , x 1 ) K ( x 1 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x 1 , x N 0 ) K ( x 2 , x 1 ) 1 v + K ( x 2 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x 2 , x N 0 ) . . . . . . . . . . . . K ( x N 0 , x 1 ) K ( x N 0 , x 2 ) &CenterDot; &CenterDot; &CenterDot; 1 v + K ( x N 0 , x N 0 ) - 1
K(*,#)=exp(-γ||*-#||2)为预先给定的核函数,其中*和#代表核函数的两个输入变量,这里γ取值为γ=211;目标函数值的估计值ν为预先给定的折中系数,这里取值为ν=213;xtest,i表示Ntest=1000个调度解个体中的第i个个体,i=1,2,…,Ntest
步骤4.5:利用序优化公式
Figure GDA0000435071890000062
计算需要仿真的个体数量,根据序优化方法,各参数取值为Z0=8.1998,k=1,ρ=1.9164,g=35,r=-2.0250,η=10,e=2.718281828459为自然对数;
步骤4.6:根据步骤4.4计算的Ntest=1000个调度解个体的目标函数值估计值,根据步骤4.5计算得到的s值,选定最优的s个调度解个体,对选定的s个解个体进行仿真,选出仿真得到的目标函数值最优的解作为最终优化结果;
此解即为采用序优化方法优化后的调度解;
步骤5:操作层基于差分进化算法的操作优先权优化
步骤5.1:差分进化算法初始解生成
随机产生N0=20条个体,每个个体生成时,菜单层的多属性权值固定为步骤4最优解中对应的权值,操作层的操作优先权序列随机产生,产生方法与步骤2中操作层的操作优先权产生方法相同;
步骤5.2:解码
具体过程与步骤3.1相同;
步骤5.3:变异
具体过程与步骤3.2.1~3.2.2同;
步骤5.4:选择
具体过程与步骤3.3相同;
步骤5.5:操作层优化终止条件
重复步骤5.1~步骤5.4,直至满足所设定的最大进化代数Gmax=5;
步骤6:迭代终止条件
重复步骤4~步骤5,直至满足迭代终止条件,即最大迭代次数Niter=2。
根据上述方法,本发明做了大量的仿真试验,从仿真结果中可看出,本发明能够在较短的时间内,获得较优的调度性能。
附图说明
图1:基于序优化与在线核极限学习机的分层迭代优化调度方法的流程图。
图2:本算法在企业使用过程中所需要的软硬件组成图。
具体实施方式
本发明提出的调度方法依赖于相关的数据采集系统、调度算法服务器和用户客户端等硬件设备,并由调度算法控制软件实现。
以下对本发明提出的基于序优化与在线核极限学习机的分层迭代优化调度方法所涉及的步骤进行详细说明:
步骤1:采集lot和各机器的初始化信息,初始化调度算法相关参数
采集调度所需的相关初始化信息,包括每个lot的片数、品种、工艺路径,每个操作的菜单、可加工机器、所属的加工机器组,每个机器的释放时间、所属的机器组、对每种菜单的加工时间,将上述信息写入算法数据库中,在调度算法启动时,将初始化信息加载到算法中;
确定差分进化优化算法相关参数:选定种群规模N=20,差分缩放因子F=0.3,最大进化代数Gmax=5,杂交率CR=0.8,变异比率λ=0.3;迭代次数设为2次;
步骤2:差分进化算法初始解生成;
优化过程中,对于菜单层采用菜单多属性权值优化,优化的菜单属性至少包括该菜单中所含的操作平均剩余加工时间、平均到达时间、平均后续操作数量、平均紧急程度优化四个属性;对于操作层优化操作的优先权序列,于是,对于每个机器组而言,采用的编码方式为:
Figure GDA0000435071890000081
i表示该机器组编号i=1,2,…,g,g为机器组的数量;ri表示机器组i可加工菜单的最大数量;{wi,1,wi,2,wi,3,wi,4}为四个调度属性的权值,权值初始化时在[01]范围内随机取值;
Figure GDA0000435071890000082
表示第j个菜单对应所有操作生成的优先权序列,其中dj表示菜单j所包含的操作的总数量,
Figure GDA0000435071890000083
表示机器组i的菜单j中的第k个操作,k=1,2,…,dj;操作优先权序列采用随机方式产生;
所有机器组的
Figure GDA0000435071890000084
组合,构成一条初始解个体;
步骤3:采用差分进化算法获得第一次迭代前较优解
步骤3.1:解码
对步骤2中生成的初始解,通过离散事件仿真的方式获得对每个调度解个体的适应度评价;
仿真过程中,至少包含菜单选择和菜单内操作选择两种决策过程:
当机器空闲时,首先对缓冲区内所有的操作按照菜单进行分组,计算每种菜单内所有操作的平均剩余加工时间、平均到达时间、平均后续操作数量、平均紧急程度四个属性,根据编码过程中给定的调度属性加权矢量{wi,1,wi,2,wi,3,wi,4}计算菜单的优先权值,选取权值高的菜单进行加工;
菜单选定后,对菜单内每个操作按照解个体中给定的操作优先权从高到底的方式进行选择,直至选出的操作总片数最接近机器加工片数的最大值;此时,被选中的所有操作组成一个batch,将该batch中的所有操作都同时上机进行加工;
加工完成后,仿真推进至下一次菜单选择和菜单内操作选择过程,直至所有操作都加工完成,仿真结束;
步骤3.2:变异交叉过程
差分进化算法变异交叉过程描述如下:
步骤3.2.1:随机选择三个个体,
步骤3.2.2:操作层操作优先权序列变异方法:
1)选择需变异的操作优先权子序列
假定机器组Ml对应操作的数量为Dl,需进行变异的操作数量为
Figure GDA00004350718900000925
表示向下取整;随机生成一整数r4,0≤r4≤Dl-Dλ,从中机器组Ml对应的操作优先权序列中,从位置r4选取长度为Dλ的操作子序列,记为该子序列对应的位置矢量记为
Figure GDA0000435071890000093
这里位置矢量指的是从0开始标记的位置编号,则:
P r 1 r 4 = { r 4 , r 4 + 1 , . . . , r 4 + D &lambda; - 1 }
将上式记作:
P r 1 r 4 = { r 4 , r 4 + 1 , . . . , r 4 + D &lambda; - 1 } = { p r 1 , 0 r 4 , p r 1 , 1 r 4 , . . . , p r 1 , D &lambda; - 1 r 4 }
不失一般性,记
Figure GDA0000435071890000096
Figure GDA0000435071890000097
第r4+k(0≤k≤Dλ-1)个操作在
Figure GDA0000435071890000098
中对应的操作优先权序列的位置编号,则对选取的长度为Dλ的操作子序列
Figure GDA0000435071890000099
中的每一个元素,在
Figure GDA00004350718900000910
中查找对应位置的元素后,得到的位置矢量为:
P r 2 r 4 = { p r 2 , 0 r 4 , p r 2 , 1 r 4 , . . . , p r 2 , D &lambda; - 1 r 4 }
P r 3 r 4 = { p r 3 , 0 r 4 , p r 3 , 1 r 4 , . . . , p r 3 , D &lambda; - 1 r 4 }
P r 1 r 4 = { p r 1 , 0 r 4 , p r 1 , 1 r 4 , . . . , p r 1 , D &lambda; - 1 r 4 }
这里
Figure GDA00004350718900000914
中由
Figure GDA00004350718900000915
所对应的操作、
Figure GDA00004350718900000916
中位置
Figure GDA00004350718900000917
所对应的操作以及
Figure GDA00004350718900000918
中位置
Figure GDA00004350718900000919
所对应的操作相同;
2)执行变异操作
令F为差分缩放因子(F<1),按下式计算变异后中每个元素所对应的位置矢量
Figure GDA00004350718900000920
Figure GDA00004350718900000921
上式中,mod表示取余;表示变异后的位置矢量;
3)交叉过程
Figure GDA00004350718900000923
分别为位置矢量
Figure GDA00004350718900000924
中的第k个位置,上述两个位置对应的操作为一个操作对,交叉操作即为对上述两个位置对应的操作按初始化给定的概率CR进行交换;即随机生成一个取值在[0,1]内的数,将该数与CR值比较,如果该随机数大于CR则交换,否则不交换;
步骤3.2.3:菜单层多调度属性权值变异交叉方法:
1)变异过程
y i j = w r 1 j + F ( w r 2 j - w r 3 j )
上式中,
Figure GDA0000435071890000102
为个体
Figure GDA0000435071890000103
的多属性权值部分;
Figure GDA0000435071890000104
为个体
Figure GDA0000435071890000105
的多属性权值部分;
Figure GDA00004350718900001020
为个体
Figure GDA0000435071890000106
的多属性权值部分;
Figure GDA0000435071890000107
表示变异后第j代第i个个体的调度属性权值部分;
2)交叉过程
假定
Figure GDA0000435071890000108
表示
Figure GDA0000435071890000109
的第k个变量,
Figure GDA00004350718900001010
表示第j代第i个个体的第k个变量,k=1,2,3,4,交叉过程为:随机生成一个取值在[0,1]内的数,将该数与CR值比较,如果该随机数大于CR则
Figure GDA00004350718900001011
否则
步骤3.2.4:变异交叉完成后,所得到的个体记为
步骤3.3:选择
若完成变异和交叉后的个体适应度高于原有个体,则将新个体取代原有个体,作为第j+1代第i个个体
Figure GDA00004350718900001014
即:
x i j + 1 = x i j , f ( x i j ) &le; f ( v i j ) v j i , f ( x i j ) > f ( v i j )
其中表示
Figure GDA00004350718900001017
的目标函数值;
Figure GDA00004350718900001018
表示
Figure GDA00004350718900001019
的目标函数值;
步骤3.4:终止条件
重复步骤3.1~步骤3.3,直至满足所设定的最大进化代数Gmax=5;
步骤4:菜单层基于序优化方法的快速优化
菜单层采用序优化方法进行优化,具体算法描述如下:
步骤4.1:随机产生N0=20条个体,每个个体生成时,操作层的操作优先权序列为步骤3优化后得到的操作优先权,菜单层的多属性权值产生方法与步骤2中菜单层多属性权值产生方法相同;
记为
Figure GDA0000435071890000115
其中xi为一组权值矢量,由所有机器组对应的菜单层属性加权矢量{wi,1,wi,2,wi,3,wi,4}组成;
通过仿真获得这N0个个体的目标函数值,记为 Y = y 1 y 2 . . . Y N 0 ;
步骤4.2:将步骤4.1生成的N0对数据作为训练数据,构造训练集{X,Y};
步骤4.3:随机产生Ntest=1000个调度解个体构造集合Θr,每个个体的产生方法与步骤2中调度解个体的产生方法相同;
步骤4.4:采用核极限学习机,获得Ntest=1000个调度解个体的目标函数值的估计值,计算公式如下:
Y ^ test = K ( x test , 1 , x 1 ) K ( x test , 1 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , 1 , x N 0 ) K ( x test , 2 , x 1 ) K ( x test , 2 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , 2 , x N 0 ) . . . . . . . . . . . . K ( x test , N test , x 1 ) K ( x test , N test , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , N test , x N 0 ) A &pi; - 1 y 1 A &pi; - 1 y 2 . . . A &pi; - 1 Y N 0
其中 A &pi; - 1 = 1 v + K ( x 1 , x 1 ) K ( x 1 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x 1 , x N 0 ) K ( x 2 , x 1 ) 1 v + K ( x 2 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x 2 , x N 0 ) . . . . . . . . . . . . K ( x N 0 , x 1 ) K ( x N 0 , x 2 ) &CenterDot; &CenterDot; &CenterDot; 1 v + K ( x N 0 , x N 0 ) - 1
K(*,#)=exp(-γ||*-#||2)为预先给定的核函数,其中*和#代表核函数的两个输入变量,这里γ取值为γ=211;目标函数值的估计值ν为预先给定的折中系数,这里取值为ν=213;xtest,i表示Ntest=1000个调度解个体中的第i个个体,i=1,2,…,Ntest
步骤4.5:利用序优化公式
Figure GDA0000435071890000114
计算需要仿真的个体数量,根据序优化方法,各参数取值为Z0=8.1998,k=1,ρ=1.9164,g=35,r=-2.0250,η=10,e=2.718281828459为自然对数;
步骤4.6:根据步骤4.4计算的Ntest=1000个调度解个体的目标函数值估计值,根据步骤4.5计算得到的s值,选定最优的s个调度解个体,对选定的s个解个体进行仿真,选出仿真得到的目标函数值最优的解作为最终优化结果;
此解即为采用序优化方法优化后的调度解;
步骤5:操作层基于差分进化算法的操作优先权优化
步骤5.1:差分进化算法初始解生成
随机产生N0=20条个体,每个个体生成时,菜单层的多属性权值固定为步骤4最优解中对应的权值,操作层的操作优先权序列随机产生,产生方法与步骤2中操作层的操作优先权产生方法相同;
步骤5.2:解码
具体过程与步骤3.1相同;
步骤5.3:变异
具体过程与步骤3.2.1~3.2.2同;
步骤5.4:选择
具体过程与步骤3.3相同;
步骤5.5:操作层优化终止条件
重复步骤5.1~步骤5.4,直至满足所设定的最大进化代数Gmax=5;
步骤6:迭代终止条件
重复步骤4~步骤5,直至满足迭代终止条件,即最大迭代次数Niter=2。
步骤7:将优化后获得的调度策略下发执行。
根据本发明所提出的优化调度方法,本发明做了大量的仿真试验,从仿真结果可以看出,本文提出的算法可在较短的时间内,获得较好的优化效果。
将本发明的算法(记为HCKIOA)与不分层优化算法(记为NOP)、分层迭代但菜单层不采用序优化的优化方法(记为HCIOA)、工厂实际使用的规则(记为RR)、剩余加工时间最小规则(记为SRPT)和加工时间最短规则(SPT)进行比较。
对每种算法执行N次,选取N次优化的平均性能作为对该算法的评价结果,定义获得的性能指标为:
I AVG ( k ) = 1 N &Sigma; i = 1 N Ind i , k = { HCIOA , HCKIOA , NOP , RR , SPT , SRPT }
Std AGV ( k ) = 1 N - 1 &Sigma; i = 1 N ( Ind i - I AVG ( k ) ) 2 , k = { HCIOA , HCKIOA , NOP , RR , SPT , SRPT }
其中Indi为第i次执行算法得到优化解的性能指标;
为进一步方便比较每种算法的性能,以NOP算法获得的优化结果为基准,定义如下性能比较指标:
平均性能改善比率:
AIR = I AGV ( k &prime; ) - I AGV ( NOP ) I AGV ( NOP ) &times; 100 % , k &prime; = { HCIOA , HCKIOA , RR , SPT , SRPT }
最差性能改善比率:
WIR = ( I AGV ( k &prime; ) + 3 Std AGV ( k &prime; ) ) - ( I AGV ( NOP ) + 3 Std AGV ( NOP ) ) I AGv ( NOP ) &times; 100 % , k &prime; = { HCIOA , HCKIOA , RR , SPT , SRPT }
仿真总次数都设为300次,即种群数量为20,进化或迭代总代数都为5,序优化随机生成的解个数为1000个,对其中估值性能最好的s=20条解进行仿真。
表1、2、3分别给出了在不同问题实例下,各种指标的结果。
表1.AIR指标比较结果Problem Scale
Figure GDA0000435071890000134
表2.WIR指标比较结果
Figure GDA0000435071890000135
表3.算法消耗的平均时间比较结果(seconds)
Figure GDA0000435071890000142
从表中可以看出,本发明提出的HCKIOA算法在性能指标和时间消耗上,都优于其他的算法,如NOP、HCIOA以及各种较好的规则等。

Claims (1)

1.基于序优化与在线核极限学习机的分层迭代优化调度方法,其特征在于,所述方法是在计算机上依次按以下步骤实现的:
步骤1:初始化调度算法相关参数
采集调度所需的相关初始化信息,包括每个lot的片数、品种、工艺流程信息,每个操作的菜单、可加工机器、所属的加工机器组,每个机器的释放时间、所属的机器组、对每种菜单的加工时间,将上述信息写入算法数据库中,在调度算法启动时,作为初始化信息加载到算法中;
确定差分进化优化算法相关参数:选定种群规模N=20,差分缩放因子F=0.3,最大进化代数Gmax=5,杂交率CR=0.8,变异比率λ=0.3;迭代次数设为2次;
步骤2:差分进化算法初始解生成;
优化过程中,对于菜单层采用菜单多属性权值优化,优化的菜单属性至少包括该菜单中所含的操作平均剩余加工时间、平均到达时间、平均后续操作数量、平均紧急程度四个属性;对于操作层优化操作的优先权序列,于是,对于每个机器组而言,采用的编码方式为:
Figure FDA0000435071880000011
i表示该机器组编号i=1,2,…,g,g为机器组的数量;ri表示机器组i可加工菜单的最大数量;{wi,1,wi,2,wi,3,wi,4}为四个调度属性的权值,权值初始化时在[01]范围内随机取值;
Figure FDA0000435071880000012
表示第j个菜单对应所有操作生成的优先权序列,其中dj表示菜单j所包含的操作的总数量,
Figure FDA0000435071880000013
表示机器组i的菜单j中的第k个操作,k=1,2,…,dj;操作优先权序列采用随机方式产生;
所有机器组的
Figure FDA0000435071880000014
组合,构成一个初始解;
步骤3:采用差分进化算法获得第一次迭代前的较优解
步骤3.1:解码
对步骤2中生成的初始解,通过离散事件仿真的方式获得每个调度解个体的适应度评价;
仿真过程中,至少包含菜单选择和菜单内操作选择两种决策过程:
当机器空闲时,首先对缓冲区内所有的操作按照菜单进行分组,计算每种菜单内所有操作的平均剩余加工时间、平均到达时间、平均后续操作数量、平均紧急程度四个属性,根据编码过程中给定的调度属性加权矢量{wi,1,wi,2,wi,3,wi,4}计算菜单的优先权值,选取权值高的菜单进行加工;
菜单选定后,对菜单内每个操作按照解个体中给定的操作优先权从高到低的方式进行选择,直至选出的操作总片数最接近机器加工片数的最大值;此时,被选中的所有操作组成一个batch,将该batch中的所有操作同时上机进行加工;
加工完成后,仿真推进至下一次菜单选择和菜单内操作选择过程,直至所有操作都加工完成,仿真结束;
步骤3.2:变异交叉过程
差分进化算法变异交叉过程描述如下:
步骤3.2.1:随机选择三个个体,
Figure FDA0000435071880000021
步骤3.2.2:操作层操作优先权序列变异方法:
1)选择需变异的操作优先权子序列
假定机器组Ml对应操作的数量为Dl,需进行变异的操作数量为
Figure FDA00004350718800000221
表示向下取整;随机生成一整数r4,满足0≤r4≤Dl-Dλ,在
Figure FDA0000435071880000022
中机器组Ml对应的操作优先权序列中,从位置r4选取长度为Dλ的操作子序列,记为
Figure FDA0000435071880000023
该子序列对应的位置矢量记为这里位置矢量指的是从0开始标记的位置编号,则:
P r 1 r 4 = { r 4 , r 4 + 1 , . . . , r 4 + D &lambda; - 1 }
将上式记作:
P r 1 r 4 = { r 4 , r 4 + 1 , . . . , r 4 + D &lambda; - 1 } = { p r 1 , 0 r 4 , p r 1 , 1 r 4 , . . . , p r 1 , D &lambda; - 1 r 4 }
不失一般性,记
Figure FDA0000435071880000027
Figure FDA0000435071880000028
第r4+k(0≤k≤Dλ-1)个操作在
Figure FDA0000435071880000029
中对应的操作优先权序列的位置编号,则对选取的长度为Dλ的操作子序列
Figure FDA00004350718800000210
中的每一个元素,在
Figure FDA00004350718800000211
中查找对应位置的元素后,得到的位置矢量为:
P r 2 r 4 = { p r 2 , 0 r 4 , p r 2 , 1 r 4 , . . . , p r 2 , D &lambda; - 1 r 4 }
P r 3 r 4 = { p r 3 , 0 r 4 , p r 3 , 1 r 4 , . . . , p r 3 , D &lambda; - 1 r 4 }
P r 1 r 4 = { p r 1 , 0 r 4 , p r 1 , 1 r 4 , . . . , p r 1 , D &lambda; - 1 r 4 }
这里
Figure FDA00004350718800000215
中由
Figure FDA00004350718800000216
所对应的操作、中位置
Figure FDA00004350718800000218
所对应的操作以及
Figure FDA00004350718800000219
中位置所对应的操作相同;
2)执行变异操作
令F为差分缩放因子(F<1),按下式计算变异后
Figure FDA0000435071880000031
中每个元素所对应的位置矢量
Figure FDA0000435071880000032
Figure FDA0000435071880000033
上式中,mod表示取余;
Figure FDA0000435071880000034
表示变异后的位置矢量;
3)交叉过程
Figure FDA0000435071880000035
分别为位置矢量
Figure FDA0000435071880000036
中的第k个位置,上述两个位置对应的操作为一个操作对,交叉操作即为对上述两个位置对应的操作按初始化给定的概率CR进行交换;即随机生成一个取值在[0,1]内的数,将该数与CR值比较,如果该随机数大于CR则交换,否则不交换;
步骤3.2.3:菜单层多调度属性权值变异交叉方法:
1)变异过程
y i j = w r 1 j + F ( w r 2 j - w r 3 j )
上式中,
Figure FDA0000435071880000038
为个体
Figure FDA0000435071880000039
的多属性权值部分;
Figure FDA00004350718800000310
为个体的多属性权值部分;
Figure FDA00004350718800000312
为个体
Figure FDA00004350718800000313
的多属性权值部分;
Figure FDA00004350718800000314
表示变异后第j代第i个个体的调度属性权值部分;
2)交叉过程
假定表示
Figure FDA00004350718800000316
的第k个变量,
Figure FDA00004350718800000317
表示第j代第i个个体的第k个变量,k=1,2,3,4,交叉过程为:随机生成一个取值在[0,1]内的数,将该数与CR值比较,如果该随机数大于CR则否则
步骤3.2.4:变异交叉完成后,所得到的个体记为
步骤3.3:选择
若完成变异和交叉后的个体适应度高于原有个体,则将新个体取代原有个体,作为第j+1代第i个个体即:
x i j + 1 = x i j , f ( x i j ) &le; f ( v i j ) v j i , f ( x i j ) > f ( v i j )
其中
Figure FDA00004350718800000323
表示的目标函数值;
Figure FDA00004350718800000325
表示
Figure FDA00004350718800000326
的目标函数值;
步骤3.4:终止条件
重复步骤3.1~步骤3.3,直至满足所设定的最大进化代数Gmax=5;
步骤4:菜单层基于序优化方法的快速优化
菜单层采用序优化方法进行优化,具体算法描述如下:
步骤4.1:随机产生N0=20条个体,每个个体生成时,操作层的操作优先权序列为步骤3优化后得到的操作优先权,菜单层的多属性权值产生方法与步骤2中菜单层多属性权值产生方法相同;
记为
Figure FDA0000435071880000044
其中xi为一组权值矢量,由所有机器组对应的菜单层属性加权矢量{wi,1,wi,2,wi,3,wi,4}组成;
通过仿真获得这N0个个体的目标函数值,记为 Y = y 1 y 2 . . . Y N 0 ;
步骤4.2:将步骤4.1生成的N0对数据作为训练数据,构造训练集{X,Y};
步骤4.3:随机产生Ntest=1000个调度解个体构造集合Θr,每个个体的产生方法与步骤2中调度解个体的产生方法相同;
步骤4.4:采用核极限学习机,获得Ntest=1000个调度解个体的目标函数值的估计值,计算公式如下:
Y ^ test = K ( x test , 1 , x 1 ) K ( x test , 1 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , 1 , x N 0 ) K ( x test , 2 , x 1 ) K ( x test , 2 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , 2 , x N 0 ) . . . . . . . . . . . . K ( x test , N test , x 1 ) K ( x test , N test , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x test , N test , x N 0 ) A &pi; - 1 y 1 A &pi; - 1 y 2 . . . A &pi; - 1 Y N 0
其中 A &pi; - 1 = 1 v + K ( x 1 , x 1 ) K ( x 1 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x 1 , x N 0 ) K ( x 2 , x 1 ) 1 v + K ( x 2 , x 2 ) &CenterDot; &CenterDot; &CenterDot; K ( x 2 , x N 0 ) . . . . . . . . . . . . K ( x N 0 , x 1 ) K ( x N 0 , x 2 ) &CenterDot; &CenterDot; &CenterDot; 1 v + K ( x N 0 , x N 0 ) - 1
K(*,#)=exp(-γ||*-#||2)为预先给定的核函数,其中*和#代表核函数的两个输入变量,这里γ取值为γ=211;目标函数值的估计值ν为预先给定的折中系数,这里取值为ν=213;xtest,i表示Ntest=1000个调度解个体中的第i个个体,i=1,2,…,Ntest
步骤4.5:利用序优化公式
Figure FDA0000435071880000045
计算需要仿真的个体数量,根据序优化方法相关文献,各参数取值为Z0=8.1998,k=1,ρ=1.9164,g=35,r=-2.0250,η=10,e=2.718281828459为自然对数;
步骤4.6:根据步骤4.4计算的Ntest=1000个调度解个体的目标函数值估计值,结合步骤4.5计算得到的s值,选定最优的s个调度解个体,对选定的s个解个体进行仿真,选出仿真得到的目标函数值最优的解作为最终优化结果;
此解即为采用序优化方法优化后的调度解;
步骤5:操作层基于差分进化算法的操作优先权优化
步骤5.1:差分进化算法初始解生成
随机产生N0=20个个体,每个个体生成时,菜单层的多属性权值固定为步骤4最优解中对应的权值,操作层的操作优先权序列随机产生,产生方法与步骤2中操作层的操作优先权产生方法相同;
步骤5.2:解码
具体过程与步骤3.1相同;
步骤5.3:变异
具体过程与步骤3.2.1~3.2.2同;
步骤5.4:选择
具体过程与步骤3.3相同;
步骤5.5:操作层优化终止条件
重复步骤5.1~步骤5.4,直至满足所设定的最大进化代数Gmax=5;
步骤6:迭代终止条件
重复步骤4~步骤5,直至满足迭代终止条件,即最大迭代次数Niter=2。
CN201210543781.XA 2012-12-17 2012-12-17 基于序优化与在线核极限学习机的分层迭代优化调度方法 Expired - Fee Related CN103105775B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210543781.XA CN103105775B (zh) 2012-12-17 2012-12-17 基于序优化与在线核极限学习机的分层迭代优化调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210543781.XA CN103105775B (zh) 2012-12-17 2012-12-17 基于序优化与在线核极限学习机的分层迭代优化调度方法

Publications (2)

Publication Number Publication Date
CN103105775A CN103105775A (zh) 2013-05-15
CN103105775B true CN103105775B (zh) 2014-04-16

Family

ID=48313720

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210543781.XA Expired - Fee Related CN103105775B (zh) 2012-12-17 2012-12-17 基于序优化与在线核极限学习机的分层迭代优化调度方法

Country Status (1)

Country Link
CN (1) CN103105775B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3125109B1 (en) * 2015-07-31 2019-02-20 ARM Limited Vector length querying instruction
CN105929216B (zh) * 2016-04-08 2019-04-19 南京航空航天大学 一种卫星电源主母线电流区间预测方法
CN108428017B (zh) * 2018-04-23 2021-10-19 华北电力大学 基于核极限学习机分位数回归的风电功率区间预测方法
CN112902994A (zh) * 2021-01-22 2021-06-04 福州大学 一种基于差分进化改进极限学习机的光纤光栅传感网络畸变光谱解调方法及系统

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
《A Hybrid Algorithm of Ordinal Optimization … Reactive Power Optimization in Distribution System》;Haoming Liu等;《DRPT2008 6-9 April 2008 Nanjing China》;20080430;全文 *
《基于混合优化算法的遗传算法参数设定研究》;闫利军等;《系统工程与电子技术》;20071231;全文 *
《遗传算法参数和操作的序优化》;王凌等;《中南大学学报(自然科学版)》;20031231;全文 *
Fangxing Li.《Application of Ordinal Optimization for Distribution System Reconfiguration》.《Power Systems Conference and Exposition,2009》.2009,全文. *
Haoming Liu等.《A Hybrid Algorithm of Ordinal Optimization … Reactive Power Optimization in Distribution System》.《DRPT2008 6-9 April 2008 Nanjing China》.2008,全文.
王凌等.《遗传算法参数和操作的序优化》.《中南大学学报(自然科学版)》.2003,全文.
闫利军等.《基于混合优化算法的遗传算法参数设定研究》.《系统工程与电子技术》.2007,全文.

Also Published As

Publication number Publication date
CN103105775A (zh) 2013-05-15

Similar Documents

Publication Publication Date Title
CN111353582B (zh) 一种基于粒子群算法的分布式深度学习参数更新方法
CN106990792B (zh) 混合引力搜索算法的多无人机协同时序耦合任务分配方法
Ma et al. Ultra-short-term wind generation forecast based on multivariate empirical dynamic modeling
CN106527381B (zh) 一种面向并行批处理机动态调度的快速评估方法
CN103105775B (zh) 基于序优化与在线核极限学习机的分层迭代优化调度方法
CN106484512B (zh) 计算单元的调度方法
CN106910337A (zh) 一种基于萤火虫算法与rbf神经网络的交通流预测方法
CN106897821A (zh) 一种暂态评估特征选择方法及装置
CN104035816A (zh) 一种基于改进nsga-ii的云计算任务调度方法
WO2019154215A1 (zh) 机器人运行路径生成方法、计算设备及存储介质
CN106230827B (zh) 一种基于成本效益优化的多目标服务组合方法
CN116402002B (zh) 一种用于芯片布局问题的多目标分层强化学习方法
CN114066122B (zh) 一种基于多策略水波优化算法的调度方法
CN107633105A (zh) 一种基于改进混合蛙跳算法的四旋翼无人机参数辨识方法
CN111078380B (zh) 一种多目标任务调度方法及系统
CN117290721A (zh) 数字孪生建模方法、装置、设备及介质
CN104899101A (zh) 基于多目标差异演化算法的软件测试资源动态分配方法
CN107122573A (zh) 基于马尔科夫链进化的汽车运行工况设计方法
CN118210603A (zh) 一种基于增强生长优化器的云资源调度方法
CN110222816A (zh) 深度学习模型的建立方法、图像处理方法及装置
CN103473599A (zh) 一种基于遗传算法和卡尔曼滤波的rbfn组合训练方法
Vasant Hybrid mesh adaptive direct search genetic algorithms and line search approaches for fuzzy optimization problems in production planning
CN102323983B (zh) 一种自动提供优化的合成射流参数的方法
CN104376363A (zh) 一种基于改进的免疫遗传算法的多相正交码生成方法
CN107480768A (zh) 贝叶斯网络结构自适应学习方法和装置、存储设备以及终端设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140416

Termination date: 20181217

CF01 Termination of patent right due to non-payment of annual fee