解决作业车间调度问题的混合差分进化算法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[ 10]
。国内目前 , 朱旭东结合 Job Shop 问
[ 6]
题和遗传算法的特征, 提出了改进遗传算法 ( GA )
。
宋晓宇等提出了基于关键工序的领域选择方法, 改进 [ 7] 744[ 8 - 9] 了求解 Job Shop 调度问题的禁忌搜索算法 。 1 混合差分进化算法 如同所有的优化算法一样, 差分进化算法基于种 群的进化算法。差分进化算法主要的参数主要有种群 规模 N P , 解空间的维数 D, 缩放因子 F 和交叉概率 C r。 D 维矢量 X i = [ x i, 1, x i, 2,
[ 3]
。作为一种新颖的进化算法 , 主要用来解
决连续空间最优化问题。 DE 作为一 种全局的 , 并行 的 , 迅速的进化算法, 因其结构简单, 控制参数少, 收敛 速度快 , 被证实是解决联系最优化问题的最好的进化 方法之一。因为 DE 算法的连续特性 , 因此采用差分 算法解决非联系空间问题的研究很少。作业车间调度 问题, 是一种比流水车间调度问题 ( F low Shop Schedu 收稿日期 : 2010 -03-01; 修回日期 : 2010 -03-15
G+1 , j i G+ 1 G+1
贡献的,
增加试验个体的多样性。交叉时我们采用分组交叉思 Vi , [ rand( ) x , 其他
G i, j G+ 1
。如果每个工件在每台机器上加工顺
=
CR 或 j = rand ( 0 ,D)]
序相同 , Job Shop转化为 F low Shop 调度问题, 如果每 台机器上每个工件的加工次序也相同, 那么 F low Shop 转化为置换 F low Shop( PFSP )调度问题。 2. 1 问题编码 差分进化算法是一种在连 续空间的随机 搜索算 法 , 一般采用的是实数编码方式。而作业车间研究的 是确定每个工件在每台机器上的加工顺序 , 使得莫项 指标达到最优。因此算法解空间内的个体无法直接代 替工序进行编码。首先我们要将解空间内的实数转化 为可以表示工序的整数。对于 n 个工件 , m 台机器上 的 JSP 问题 , 为了便于理解 , 我们这里先讨论 3 个工件 在 2 台机器上的编码。 第 1 步 : 初始化种群个体时 , 因为要确定每个工件
周 萧, 王万良, 徐新黎
310023) (浙江工业大学 信息学院 , 浙江 杭州
摘 要 : 文章提出了一种改进的 差分进化 算法
混合 差分进 化算法 ( H ybr id D ifferentia l Evo lution A lgo rithm ) 来解 决作业
车间调度问题 。 为了防止基本差 分进化算法陷入早熟收敛和局部 最优 , 从 2 个方面对 算法进 行了改 进 。 首先为 了在进 化初期能够保持种群多 样性 , 后期减少缩放因子对最优解的破坏 , 提出了自适应的缩放因子 F。 其 次交叉操作 时采用分 组交叉思想 。 通过对作业车间调 度问题的研究 , 改进后的算法全局寻优能力和鲁棒性 有了明显改进 。 图 1 表 3 参 9 关 键 词 : 生产管理 ; 混合差分 进化算法 ; 自适应缩放因子 ; 分组交叉 ; 作业车间调度问题 文献标志码 : A 文章编号 : 1005-2895( 2010) 05-0121-04 中图分类号 : F 273
[ 5]
文中算法改进主要有 2 方面。算法的参数值在算 法开始时已经被设定 , 随着迭代次数的改变, 可能不适 应种群变化的要求。差分算法的控制参数主要有缩放 因子 ( F )和交叉概率 ( C r ) 。缩放因子 (F ) 的大小决定 了算法的收敛速度和种群的多样性 , 在进化过程中发 挥着重要的作用。选择合适 的 F 能够 平衡算法全局 搜索和局部搜索。较小的 F 有助于提 高算法的局部 搜索能力, 但同时也增加了算法陷入局部最优 , 出现早 熟的可能性 ; 而较大的 F 有利于增加种群的多 样性, 提高全局寻优能力, 但会降低算法的收敛速度。我们 提出了一种自适应的缩放因 F, 使缩放因子能够随着 迭代次数的改变 , 适应当前种群的变化情况, 使得最优 解可以保存。颜学峰 , 余娟等也提出了自适应差分进 [ 7] 748 化算法 , 主要改进了算法的全局寻优能力。本文 提出的自适应的缩放因子可以从以下公式得出 F= 0 . 8 [ (G m ax - G + 1) /G m ax ] ( 4) G m ax 是种群最大 迭代次数 , G 是种群当前 迭代次 数。同时为了能够更早的找到最优解 , 减少算法的计 算量。在交叉过程中 , 我们采用种 群分组交叉思 想。 经种群变异产生的子代个体, 通过比较其适应度大小, 适应度更好的个体直接进入选择操作 , 而剩下的个体 根据交叉概率选择性的进入选择 操作。通过 分组交 叉 , 可以大大提高种群搜索到最优解的概率, 同时增加 算法的健壮性。 2 Job Shop 问题描述 Job Shop 研究 n 个工件在 m 台机器上加工, 每个 工件加工工序不同, 每个工序需要由特定的机器经过 一定的加工时间才能完成。已知每个工件每道工序的 加工时间, 每道工序加工机器号 , 使得某些加工性能指 标达到最优
[ 1]
ling P rob le m )更为复杂的 , 更符合实际调度问 题的车 间调度模型。由于模型的复杂性, 长期以来 , JSP 问题 研究的方法始终以遗传算法 , 启发式算法为主。遗传 算法 ( GA ) 在作业调度问题上的应用 , 是很重要的研究 方向。 Davis首先用 GA 方法应用到没 有约束的简单 [ 2] 的 JSP 问题上 。 B iegal和 Davern将 GA 应用到串行 情况下的多机调度问题 , 这里在每台机器上有相同的 任务序列
Abstract : T his pap er prop osed an im proved DE alg orithm, nam ed HDE to solve job shop scheduling problem. In order to avo id the algo rithm fa lling in to a loca l opti mu m and prem ature convergence . H ybrid differential evo lu t io n a lg orithm has been i m proved in tw o aspects . F irs, t the paper presented se lf fit factor F in order to m a in tain group -diversificat io n in early evolution period and gradua lly reduce the destruction of the opti m um so lu tion by F factor in th e later period . Second , adopted group -d ivided cross over thought during cross over operation . T hrough research on the jo b shop scheduling prob le ms , the ability of g lo ba l research and robust are obv iously m i proved . [ Ch , 1 fig . 3 tab . 9 re. f ] K ey w ord s : production m anagem en; t hybrid differential evolution a lg orithm; se lf adaptive F; group crossover ; jo b shop scheduling prob le m 0 引言 差分进化算法 ( D ifferen tial E vo lu tio n , DE ) 它是由 S torn 等人提出的 , 最初的设想是用于解决切比雪夫多 项式问题
G+1
= x r1 + F ( x r2 - x r3 )
G G
G
G
G
( 1)
, N p } 任意选择且互不相等, 并且和 i
也不相等。缩放因子 F 控制着差分量 ( x r2 - x r3 ) 的 大小。 1. 2 交叉 交叉操作用来增加种群多样性, U i, , j 表示第 i 个 个体交叉个体第 j 个分量, rand ( ) 表示在 [ 0 , 1 ] 区间 任取的随机数, C r 是交叉概率, 而条件 j = rand ( 0 ,D) 是为了确保试验个体中至少有一位是由 Vi 想 , 增强算法的局部搜索能力。 U
G G G
wk.baidu.com
, x i, D ] , i = 1 , 2 ,
G
, N p, 表
示 G 代第 i个个体。变异和交叉操作在每一代中产生 新的种群, 然后选择操作实现种群优化。基本差分进 化算法过程如下。 1. 1 变异 通过变异操作, 新产生的个体由初始种群中任意 选取的个体加上任意选取的两个个体的差分量乘以缩 放因子。根据如下所示 , 缩放因子我们采用自适应缩 放因子 , 如公式 ( 1) 所示。 Vi r1, r2, r3 {1 , 2 ,
G
X i , 其他
G+1
( 3)
这里的 f ( x ) 代 表目标函数 , X i 个体。
代表新产生 的种群
[ 经营
管理 ]
周
萧, 等
解决作业车间调度问题的混合差分进化算法
123
在每台机器上的加工工序 , 所以解空间的维数 D = n m。 X i = ( x i, 1, x i, 2, , x i, D ) 代表初始个体。 第 2 步 : 初始个体 X i = (x i, 1, x i, 2, , x i, D ) 按照降 序进行排列 , 中间排序结果用 i, j 表示。 第 3步 : 降序排列的中间结果 化为工序。
。 K ane, t 对简单的单机调度问题, 提出了
[ 4]
遗传搜索算法 。 Kanet的基因串表明了机器上的任 务序列 , 他们的方法的目标是寻找最好的操作的排列,
基金项目 : 国家 863 计划项目 ( 2007AA 04Z155 ); 国家自然科学基金 ( 60874074); 浙江省自然科学基金 ( Y1090592) 作者简介 : 周萧 ( 1984), 女 , 山东枣庄人 , 在 读硕士 研究 生 , 主要研 究方 向为 差分进 化算 法解决 生产 调度 问题。 E-m a i: l zhoux i ao121 @ 126 . co m
122
轻工机械
L ight Industry M ach inery
2010年第 5期
然后应用基于给定的序列的调度规则 ( dispatch ru le), 确定真正的调度。 X ing Y ing jie , Chen Zhen tong 等提 出了运用改进的 S 形函数的自适应遗传算法求解作业 车间调度问题
( 2)
1. 3 选择 选择操作是为了决定交叉个体是否保留到 G + 1 代。对于最小化问题 , 交叉个体 U i, j 和原始个体通过 贪婪策略进行比较, 目标函数更小的个体被保留作为 新产生的种群个体。选择操作公式如下所示 Xi
G+ 1 G+1
=
Ui
G+ 1 G
, f (U i
G+1
) < f (X i )
H ybrid D ifferential Evolution Solving Job Shop Scheduling P roblem s
ZHOU X iao , W ANG W an- liang, XU X in - li
( Co llege of Infor m ation Eng ineering , Zhe jiang Un iv ers ity o f T echno logy , H ang zhou 310023, Ch ina)
第 28卷 第 5期 2010年 10 月
轻工机械 L ight Industry M achinery
V o. l 28 N o. 5 O ct . 2010
[ 经营
管理 ]
DO I: 10 . 3969 / j. issn. 1005 -2895 . 2010 . 05 . 033
解决作业车间调度问题的 混合差分进化算法
。国内目前 , 朱旭东结合 Job Shop 问
[ 6]
题和遗传算法的特征, 提出了改进遗传算法 ( GA )
。
宋晓宇等提出了基于关键工序的领域选择方法, 改进 [ 7] 744[ 8 - 9] 了求解 Job Shop 调度问题的禁忌搜索算法 。 1 混合差分进化算法 如同所有的优化算法一样, 差分进化算法基于种 群的进化算法。差分进化算法主要的参数主要有种群 规模 N P , 解空间的维数 D, 缩放因子 F 和交叉概率 C r。 D 维矢量 X i = [ x i, 1, x i, 2,
[ 3]
。作为一种新颖的进化算法 , 主要用来解
决连续空间最优化问题。 DE 作为一 种全局的 , 并行 的 , 迅速的进化算法, 因其结构简单, 控制参数少, 收敛 速度快 , 被证实是解决联系最优化问题的最好的进化 方法之一。因为 DE 算法的连续特性 , 因此采用差分 算法解决非联系空间问题的研究很少。作业车间调度 问题, 是一种比流水车间调度问题 ( F low Shop Schedu 收稿日期 : 2010 -03-01; 修回日期 : 2010 -03-15
G+1 , j i G+ 1 G+1
贡献的,
增加试验个体的多样性。交叉时我们采用分组交叉思 Vi , [ rand( ) x , 其他
G i, j G+ 1
。如果每个工件在每台机器上加工顺
=
CR 或 j = rand ( 0 ,D)]
序相同 , Job Shop转化为 F low Shop 调度问题, 如果每 台机器上每个工件的加工次序也相同, 那么 F low Shop 转化为置换 F low Shop( PFSP )调度问题。 2. 1 问题编码 差分进化算法是一种在连 续空间的随机 搜索算 法 , 一般采用的是实数编码方式。而作业车间研究的 是确定每个工件在每台机器上的加工顺序 , 使得莫项 指标达到最优。因此算法解空间内的个体无法直接代 替工序进行编码。首先我们要将解空间内的实数转化 为可以表示工序的整数。对于 n 个工件 , m 台机器上 的 JSP 问题 , 为了便于理解 , 我们这里先讨论 3 个工件 在 2 台机器上的编码。 第 1 步 : 初始化种群个体时 , 因为要确定每个工件
周 萧, 王万良, 徐新黎
310023) (浙江工业大学 信息学院 , 浙江 杭州
摘 要 : 文章提出了一种改进的 差分进化 算法
混合 差分进 化算法 ( H ybr id D ifferentia l Evo lution A lgo rithm ) 来解 决作业
车间调度问题 。 为了防止基本差 分进化算法陷入早熟收敛和局部 最优 , 从 2 个方面对 算法进 行了改 进 。 首先为 了在进 化初期能够保持种群多 样性 , 后期减少缩放因子对最优解的破坏 , 提出了自适应的缩放因子 F。 其 次交叉操作 时采用分 组交叉思想 。 通过对作业车间调 度问题的研究 , 改进后的算法全局寻优能力和鲁棒性 有了明显改进 。 图 1 表 3 参 9 关 键 词 : 生产管理 ; 混合差分 进化算法 ; 自适应缩放因子 ; 分组交叉 ; 作业车间调度问题 文献标志码 : A 文章编号 : 1005-2895( 2010) 05-0121-04 中图分类号 : F 273
[ 5]
文中算法改进主要有 2 方面。算法的参数值在算 法开始时已经被设定 , 随着迭代次数的改变, 可能不适 应种群变化的要求。差分算法的控制参数主要有缩放 因子 ( F )和交叉概率 ( C r ) 。缩放因子 (F ) 的大小决定 了算法的收敛速度和种群的多样性 , 在进化过程中发 挥着重要的作用。选择合适 的 F 能够 平衡算法全局 搜索和局部搜索。较小的 F 有助于提 高算法的局部 搜索能力, 但同时也增加了算法陷入局部最优 , 出现早 熟的可能性 ; 而较大的 F 有利于增加种群的多 样性, 提高全局寻优能力, 但会降低算法的收敛速度。我们 提出了一种自适应的缩放因 F, 使缩放因子能够随着 迭代次数的改变 , 适应当前种群的变化情况, 使得最优 解可以保存。颜学峰 , 余娟等也提出了自适应差分进 [ 7] 748 化算法 , 主要改进了算法的全局寻优能力。本文 提出的自适应的缩放因子可以从以下公式得出 F= 0 . 8 [ (G m ax - G + 1) /G m ax ] ( 4) G m ax 是种群最大 迭代次数 , G 是种群当前 迭代次 数。同时为了能够更早的找到最优解 , 减少算法的计 算量。在交叉过程中 , 我们采用种 群分组交叉思 想。 经种群变异产生的子代个体, 通过比较其适应度大小, 适应度更好的个体直接进入选择操作 , 而剩下的个体 根据交叉概率选择性的进入选择 操作。通过 分组交 叉 , 可以大大提高种群搜索到最优解的概率, 同时增加 算法的健壮性。 2 Job Shop 问题描述 Job Shop 研究 n 个工件在 m 台机器上加工, 每个 工件加工工序不同, 每个工序需要由特定的机器经过 一定的加工时间才能完成。已知每个工件每道工序的 加工时间, 每道工序加工机器号 , 使得某些加工性能指 标达到最优
[ 1]
ling P rob le m )更为复杂的 , 更符合实际调度问 题的车 间调度模型。由于模型的复杂性, 长期以来 , JSP 问题 研究的方法始终以遗传算法 , 启发式算法为主。遗传 算法 ( GA ) 在作业调度问题上的应用 , 是很重要的研究 方向。 Davis首先用 GA 方法应用到没 有约束的简单 [ 2] 的 JSP 问题上 。 B iegal和 Davern将 GA 应用到串行 情况下的多机调度问题 , 这里在每台机器上有相同的 任务序列
Abstract : T his pap er prop osed an im proved DE alg orithm, nam ed HDE to solve job shop scheduling problem. In order to avo id the algo rithm fa lling in to a loca l opti mu m and prem ature convergence . H ybrid differential evo lu t io n a lg orithm has been i m proved in tw o aspects . F irs, t the paper presented se lf fit factor F in order to m a in tain group -diversificat io n in early evolution period and gradua lly reduce the destruction of the opti m um so lu tion by F factor in th e later period . Second , adopted group -d ivided cross over thought during cross over operation . T hrough research on the jo b shop scheduling prob le ms , the ability of g lo ba l research and robust are obv iously m i proved . [ Ch , 1 fig . 3 tab . 9 re. f ] K ey w ord s : production m anagem en; t hybrid differential evolution a lg orithm; se lf adaptive F; group crossover ; jo b shop scheduling prob le m 0 引言 差分进化算法 ( D ifferen tial E vo lu tio n , DE ) 它是由 S torn 等人提出的 , 最初的设想是用于解决切比雪夫多 项式问题
G+1
= x r1 + F ( x r2 - x r3 )
G G
G
G
G
( 1)
, N p } 任意选择且互不相等, 并且和 i
也不相等。缩放因子 F 控制着差分量 ( x r2 - x r3 ) 的 大小。 1. 2 交叉 交叉操作用来增加种群多样性, U i, , j 表示第 i 个 个体交叉个体第 j 个分量, rand ( ) 表示在 [ 0 , 1 ] 区间 任取的随机数, C r 是交叉概率, 而条件 j = rand ( 0 ,D) 是为了确保试验个体中至少有一位是由 Vi 想 , 增强算法的局部搜索能力。 U
G G G
wk.baidu.com
, x i, D ] , i = 1 , 2 ,
G
, N p, 表
示 G 代第 i个个体。变异和交叉操作在每一代中产生 新的种群, 然后选择操作实现种群优化。基本差分进 化算法过程如下。 1. 1 变异 通过变异操作, 新产生的个体由初始种群中任意 选取的个体加上任意选取的两个个体的差分量乘以缩 放因子。根据如下所示 , 缩放因子我们采用自适应缩 放因子 , 如公式 ( 1) 所示。 Vi r1, r2, r3 {1 , 2 ,
G
X i , 其他
G+1
( 3)
这里的 f ( x ) 代 表目标函数 , X i 个体。
代表新产生 的种群
[ 经营
管理 ]
周
萧, 等
解决作业车间调度问题的混合差分进化算法
123
在每台机器上的加工工序 , 所以解空间的维数 D = n m。 X i = ( x i, 1, x i, 2, , x i, D ) 代表初始个体。 第 2 步 : 初始个体 X i = (x i, 1, x i, 2, , x i, D ) 按照降 序进行排列 , 中间排序结果用 i, j 表示。 第 3步 : 降序排列的中间结果 化为工序。
。 K ane, t 对简单的单机调度问题, 提出了
[ 4]
遗传搜索算法 。 Kanet的基因串表明了机器上的任 务序列 , 他们的方法的目标是寻找最好的操作的排列,
基金项目 : 国家 863 计划项目 ( 2007AA 04Z155 ); 国家自然科学基金 ( 60874074); 浙江省自然科学基金 ( Y1090592) 作者简介 : 周萧 ( 1984), 女 , 山东枣庄人 , 在 读硕士 研究 生 , 主要研 究方 向为 差分进 化算 法解决 生产 调度 问题。 E-m a i: l zhoux i ao121 @ 126 . co m
122
轻工机械
L ight Industry M ach inery
2010年第 5期
然后应用基于给定的序列的调度规则 ( dispatch ru le), 确定真正的调度。 X ing Y ing jie , Chen Zhen tong 等提 出了运用改进的 S 形函数的自适应遗传算法求解作业 车间调度问题
( 2)
1. 3 选择 选择操作是为了决定交叉个体是否保留到 G + 1 代。对于最小化问题 , 交叉个体 U i, j 和原始个体通过 贪婪策略进行比较, 目标函数更小的个体被保留作为 新产生的种群个体。选择操作公式如下所示 Xi
G+ 1 G+1
=
Ui
G+ 1 G
, f (U i
G+1
) < f (X i )
H ybrid D ifferential Evolution Solving Job Shop Scheduling P roblem s
ZHOU X iao , W ANG W an- liang, XU X in - li
( Co llege of Infor m ation Eng ineering , Zhe jiang Un iv ers ity o f T echno logy , H ang zhou 310023, Ch ina)
第 28卷 第 5期 2010年 10 月
轻工机械 L ight Industry M achinery
V o. l 28 N o. 5 O ct . 2010
[ 经营
管理 ]
DO I: 10 . 3969 / j. issn. 1005 -2895 . 2010 . 05 . 033
解决作业车间调度问题的 混合差分进化算法