工位包括各个检测项目 的检测工位和返修工位,每一个检测项目为一个单元;
[0046]
<1)
[0047] 其中,CTlj表示第j类品种的发动机在第i个检测单元中的检测工位节拍
[0048]
(2)
[0049] 其中,CRlj表示第j类品种的发动机在第i个检测单元中的返修工位节拍
[0050] (2)计算平均节拍乙=,其中,N表示产量,T表示运行时间,α表示机器开 Ταγ 动率,γ表示故障率。
[0051 ] (3)计算允许单元节拍范围CTR。其中,C,.,:e!.r| 0.50 5;.r>:: 〇卜
[0052] (4)对染色体进行基因编码
[0053] 根据检测工位数量和返修工位数量确定种群规模,以检测工位数量和返修工位数 量的二进制数值的全排列作为标准,对染色体进行基因编码,编码后的一连串基因构成一 条染色体,每一个染色体代表一种检测工位和返修工位数量的方案,多个染色体构成一个 种群;基因编码的形式如【附图说明】中图2所示。基因编码的数学表达式为:
[0054]
(3)
[0055] 其中,i表示测试线检测项目的种类数量,共有s种检测项目,i= 1,2,…,s;j表 示测试线的所要检测发动机的品种,共有t类品种的发动机,j= 1,2,…,t%表示发动机 测试线上第i个检测单元的检测工位数量,叫表示发动机测试线上第i个检测单元的返修 工位数量。
[0056] (5)初始化种群:随机产生一个种群规模为100的初始种群。
[0057] (6)进入迭代循环:
[0058] 6. 1计算最优检测工位数量和返修工位数量的适应度函数minF⑴:
[0059] - C4) -yJ
[0060] 其中,⑴为最大单元节拍的目标函数,.,
I -1 f2(X)为最小单元间节拍差异度的目标函数
βu表 示发动机测试线上第j类发动机品种通过第i个检测项目的比例;表示第i个检测单元 的平均时间节拍;ξ表示f\(X),f2(X)之间的转换系数;
[0061] 6. 2分级操作:采用种群排序技术,在最优检测工位数量和返修工位数量的前提 下,对种群进行分级,通过比较发动机测试线上⑴和fJX)的数值,提取当前种群中所有 非劣解染色体,构成当前非劣解集,并将其划分为同一级,赋予等级1 ;然后将这些染色体 从种群中剥离出来,在剩余染色体中找出新的非劣解集,并赋予等级为2,;重复上述过程, 直到种群中所有染色体都被分类为止;
[0062] 6. 3对当前种群的染色体采用交叉概率和变异概率的自适应策略:根据当前种群 中每一个染色体在分级操作中赋予的等级,自动调整交叉和变异的概率,实现自适应。所述 的交叉和变异具体操作在步骤6. 5中论述。其中交叉概率匕=0. 7,变异概率0. 05。
[0063] 6. 4判断当前种群的迭代次数是否达到预先设置的最大迭代数;若否,进行步骤 (6. 5);若是,进行步骤7 ;设置迭代次数为500。
[0064] 6. 5按最优检测工位数量和返修工位数量的适应度进行遗传操作
[0065] 遗传操作包括在种群中选择算子、交叉算子和变异算子的过程,在整个遗传操作 的过程中根据禁忌条件将当前染色体中满足禁忌条件的染色体剔除出种群,避免迂回搜索 以提高搜索的效率。
[0066] 所述选择算子的过程是在单元间最小差异度和闲置率约束条件下,根据适应度函 数minF(X)评价染色体,把优良的染色体直接保留到下一代,其余染色体通过交叉配对产 生新的染色体再遗传到下一代。选择操作建立在种群中染色体的适应度评估基础上,并且 选择过程贯穿在整个遗传操作中;
[0067] 所述的交叉算子是将交叉算子作用于种群,进行染色体间的交叉配对,产生新的 染色体的过程,交叉算子在遗传算法中起核心作用;
[0068] 所述的变异算子是将变异算子作用于种群,对种群的染色体中编码基因的基因值 作变动。
[0069] 所述的禁忌条件是把发动机测试线上第i个检测项目的测试工位的闲置率λ^乍 为条件,禁忌对象为:λ,〇. 5。
[0070] 6. 6经过选择运算和交叉运算之后,种群中的染色体更新,产生了新一代种群,因 此产生新一代发动机测试线工位数量的种群;所述的工位包括检测工位和维修工位;完成 种群更新后,进行步骤(6),接着进行迭代循环。
[0071] (7)输出最优的种群集合,并输出最大单元平均节拍值。将所得到的种群进行解 码,得到矩阵X,即各检测单元的检测工位数量和返修工位数量。
【主权项】
1. 一种基于遗传算法的发动机测试线工位分配优化方法,其特征在于,包括以下步 骤: (1) 输入测试线上各品种发动机的产量N,、测试线的开动率α、测试线上工位节拍矩阵 C#PCR、测试线的故障率γ、各检测工位的通过率、测试线所需要检测的项目种类数量为s ; 所述的工位包括检测工位和返修工位,每一个检测项目为一个单元; 检测工位节拍矩阵(^为:其中,CTl]表示第j类品种的发动机在第i个检测单元中的检测工位节拍; 返修工位节拍矩阵〇;为:其中,CRl]表示第j类品种的发动机在第i个检测单元中的返修工位节拍; (2) 计算平均节拍其中,N表示产量,T表示运行时间,α表示机器开动率, γ表示故障率; (3) 计算允许单元节拍范围CTR,其中,(4) 对染色体进行基因编码 根据检测工位数量和返修工位数量确定种群规模,以检测工位数量和返修工位数量的 二进制数值的全排列为标准,对染色体进行基因编码,编码后的一连串基因构成一条染色 体,每一个染色体代表一种检测工位和返修工位数量的方案,多个染色体构成一个种群,所 述的种群规模为100~1000 ; 基因编码的数学表达式为:其中,i表示测试线检测项目的种类数量,共有S种检测项目,i = 1,2,…,S ;j表示测 试线的所要检测发动机的品种,共有t类品种的发动机,j = 1,2,…,t ; 11;表示发动机测试线上第i个检测单元的检测工位数量,11^表示发动机测试线上第i 个检测单元的返修工位数量; (5) 初始化种群:随机产生一个初始种群; (6) 进入迭代循环: (6-1)计算最优检测工位数量和返修工位数量的适应度函数minF (X):其中,fi⑴为最大单元节拍的目标函数,为最小单元间节拍差异度的目标函数,β 表示发 动机测试线上第j类发动机品种通过第i个检测项目的比例;Cti表示第i个检测单元的平 均时间节拍;ξ表示f\(X),f2(X)之间的转换系数; (6-2)分级操作:采用群体排序技术,在最优检测工位数量和返修工位数量的前提下, 对种群进行分级,比较发动机测试线If1(X)和f2 (X)的数值,提取当前种群中所有非劣解 染色体,构成当前非劣解集,并将其划分为同一级,赋予等级1 ;并将这些染色体从种群中 剥离,在剩余染色体中提取新的非劣解集,并赋予等级为2 ;重复上述过程,直到种群中所 有染色体都被分类为止; (6-3)根据当前种群中每一个染色体在分级操作中赋予的等级,自动调整交叉概率和 变异概率,实现自适应;所述的交叉概率P。为〇. 1~〇. 9,所述的变异概率Pni为0. 1~0.0 l ; (6-4)判断当前种群的迭代次数是否达到预先设置的最大迭代数;若否,进行步骤 (6-5);若是,进行步骤7 ;所述的迭代次数为100~1000 ; (6-5)按最优检测工位数量和返修工位数量的适应度进行遗传操作 遗传操作包括在种群中选择算子、交叉算子和变异算子的过程,在整个遗传操作的过 程中根据禁忌条件将当前染色体中满足禁忌条件的染色体剔除出种群,提高搜索效率; 所述选择算子的过程是在单元间最小差异度和闲置率约束条件下,根据适应度函数 minF(X)评价染色体,把优良的染色体保留到下一代,其余染色体通过交叉配对产生新的染 色体,再遗传到下一代; 所述的交叉算子是在染色体间进行交叉配对,产生新的染色体; 所述的变异算子是对种群的染色体中编码基因的基因值作变动; 所述的禁忌条件是把发动机测试线上第i个检测项目的测试工位的闲置率λ i作为条 件,禁忌对象为:λ i>〇. 5 ; (6-6)经过选择运算和交叉运算之后,种群中的染色体更新,产生新一代发动机测试线 检测工位数量和维修工位数量的种群;完成种群更新后,进入迭代循环; (7)输出最优的种群集合,并输出最大单元平均节拍值;将所得的种群进行解码,得到 矩阵X,即各检测单元的检测工位数量和返修工位数量。
【专利摘要】本发明公开一种基于遗传算法的发动机测试线工位分配优化方法,根据发动机测试线的检测工位和返修工位的种类确定种群规模,以各工位数量的二进制数值的全排列作为标准进行基因编码;计算测试线平均节拍和允许单元节拍范围;计算最大单元节拍和最小单元间节拍差异度;采用分级操作对种群进行排序,执行精英保留策略;判断是否达到预先设定的最大迭代次数得到最优解集;进行解码操作,输出结果矩阵X,得到发动机测试线的检测工位和返修工位数量。本发明将产量、开动率、各工位节拍、故障率、检测种类数目作为输入条件,在遗传操作中综合多个优化目标,保证种群多样性的同时,得出最优的输出结果。
【IPC分类】G06Q50/04, G06Q10/06
【公开号】CN105427058
【申请号】CN201510979736
【发明人】丛明, 廖忠情, 郑华栋, 刘冬, 杜宇
【申请人】大连理工大学
【公开日】2016年3月23日
【申请日】2015年12月23日