一种改良的帝国竞争算法解决柔性作业车间调度问题的方法技术

技术编号:19424065 阅读:23 留言:0更新日期:2018-11-14 10:13
本发明专利技术提供一种改良的帝国竞争算法解决柔性作业车间调度问题的方法,解决现有的帝国竞争算法在离散型的柔性作业车间调度问题中的应用不足。每个国家个体采用两段式的整数编码来表达其中的一种方案,该编码方式能够适应多种柔性作业车间调度问题,减少算法的计算复杂度。三种初始化方法相混合产生初始国家群体的方法提高了群体整体解的质量,提高了算法运行效率,更快得到最优解。帝国内部的同化操作进行了改进,将殖民地国家与帝国主义国家之间通过优良信息进行交换的方式使得优良信息得以共享,从而使殖民地国家靠近帝国主义国家。帝国内部的革命操作操作,依据帝国竞争算法的迭代次数进行概率变化,增加国家个体的多样性,防止算法过早收敛。

【技术实现步骤摘要】
一种改良的帝国竞争算法解决柔性作业车间调度问题的方法
本专利技术涉及车间调度,特别是一种改良的帝国竞争算法解决柔性作业车间调度问题的方法。
技术介绍
随着先进的信息技术、制造技术以及网络技术的迅猛发展,客户的需求越来越多样化、个性化,新的产品不断涌现,产品更新换代速度加快,生产模式逐渐转向“品种多样、批量变小、注重交货期、减少库存”的大规模客户定制化模式。新一轮的科技革命和产业革命蓄势待发,如德国工业界提出了“工业4.0”战略和中国提出了“中国制造2025”战略。其中,智能制造是主要发展方向之一,也是从制造大国转向制造强国的根本路径。生产调度是智能制造生产管理的关键环节,是先进智能制造系统高效运转的关键。从1954年,Johnson研究了两台机器的流水车间调度问题n/2/F/Cmax开始,车间调度问题一直受到众多研究学者的关注,其研究成果在机械、钢铁、纺织、电子等行业的车间生产中得到了广泛应用。在研究车间生产调度时,一般简化为若干调度模型,其中作业车间调度问题(Jobshopschedulingproblem,JSP)是一种十分典型的模型。它的特点是每个工序使用的机床被事先确定,并且是唯一的。但是,这并不符合实际加工情况,容易导致加工计划与实际生产调度相脱节。随着现代企业中生产柔性不断提高,柔性作业车间调度问题得到日益广泛的关注和研究。柔性作业车间调度问题(FlexibleJobShopSchedulingProblem,FJSP)是一类重要的生产调度问题,是在传统经典作业车间调度问题基础上,增加了加工设备的选择约束,符合实际生产过程中同一道工序会有多台加工设备满足加工的需求,使问题更加接近实际生产过程。FJSP问题是经典JSP问题的扩展,也是NP-难问题。帝国竞争算法(ImperialistCompetitiveAlgorithm,ICA)是一种受帝国竞争行为启发的新的智能优化算法,由Atashpaz-Gargari和Lucas在2007年提出的,属于基于社会进化革命的群体元启发式智能优化算法。帝国竞争算法的主要思想模仿了人类社会进化过程中帝国之间相互竞争并占领其殖民地的过程。帝国竞争算法开始于一群被定义为国家的个体,每个国家代表一种基本设计方案。所有国家分为两类:帝国主义国家和殖民地国家。每个国家通过成本函数判断国家的势力,势力强大的国家作为帝国主义国家;反之,势力弱的国家作为殖民地国家,之后按照帝国主义国家势力的大小对剩下的国家进行分配,使其成为各自的殖民地。由帝国主义国家和殖民地国家组成一个帝国。然后,依次进行同化、革命等操作,势力更强的帝国能够占领最弱帝国的殖民地,当所有的殖民地全部被一个帝国占有时,算法结束。传统帝国竞争算法主要解决连续型优化问题,如函数优化、设计参数优化等,并取得了比遗传算法和粒子群算法更好的结果。本专利技术将提出三种方法进行初始国家个体的产生,提高初始国家个体解的质量,提高求解柔性作业车间调度问题的效率。
技术实现思路
针对上述情况,为克服现有技术之缺陷,本专利技术提供一种改良的帝国竞争算法解决柔性作业车间调度问题的方法,其可以解决现有的帝国竞争算法在离散型的柔性作业车间调度问题中的应用不足,传统帝国竞争算法中的国家个体表达方式难以表达柔性作业车间问题;解决现有的帝国竞争算法容易陷入局部最优,过早收敛的问题。本专利技术的技术方案为:包括以下步骤:步骤1:参数设置,设置帝国竞争算法求解柔性作业车间调度问题的相关参数,包括:国家数量Npop、帝国主义国家数量Nimp、殖民地国家数量Ncol、迭代次数Niter,帝国内部同化概率Pcimp,帝国内部革命概率Pmimp,殖民地国家影响因子α;帝国竞争算法的终止条件为:若在还未达到迭代次数Niter就只剩一个帝国时,算法终止,否则,运行到迭代次数为止;步骤2:初始化国家个体,每一个国家代表一组柔性作业车间调度问题的可行方案,传统帝国竞争算法解决连续型优化问题,编码方式不适合离散型柔性作业车间调度问题,结合柔性作业车间调度问题特点设计两段式实数编码方式进行国家个体的编辑,并分别提出全领域搜索、局部领域搜索和随机搜索的初始化方法来产生Npop个国家;步骤3:通过成本函数,计算每个国家的成本值;步骤4:产生帝国主义国家和殖民地国家,按照每个国家的成本值计算每个国家的势力大小,依据之前设定的帝国主义国家数量,将殖民地国家随机分配给帝国主义国家,形成Nimp个帝国;步骤5:帝国内部进行同化操作,帝国内部的殖民地国家与帝国主义国家之间进行同化操作,使得殖民地国家不断向帝国主义国家移动;步骤6:帝国内部进行革命操作,帝国内部的殖民地国家为防止同化作用造成过早收敛,需要进行革命操作;步骤7:帝国内部判断是否更换帝国主义国家,对各个帝国内部的国家进行成本计算,将成本最小的殖民地与其所属的帝国主义国家进行比较,如果比帝国的成本还低,就替换该帝国主义国家,而成为统治者;步骤8:帝国之间的竞争操作,势力最强的帝国占有势力最弱的帝国中的殖民地,使得强大的帝国更加强大,弱小的帝国更加弱小;步骤9:弱势帝国的灭亡,删除掉没有殖民地的帝国,该帝国灭亡;步骤10:计算每个国家成本;步骤11:判断算法是否终止,依据参数中对算法停止条件的设定,判断算法是否终止,若算法终止,则输出运行结果;反之,算法还没有终止,则回到步骤5继续执行。本专利技术将传统的帝国竞争算法经过改进将其应用领域扩展到了柔性作业车间调度问题中。每个国家个体采用两段式的整数编码来表达其中的一种方案,该编码方式能够适应多种柔性作业车间调度问题,而且简单实用,减少算法的计算复杂度。三种初始化方法相混合产生初始国家群体的方法提高了群体整体解的质量,提高了算法运行效率,更快的搜索到最优解。帝国内部的同化操作进行了改进,将殖民地国家与帝国主义国家之间通过优良信息进行交换的方式使得优良信息得以共享,从而使殖民地国家靠近帝国主义国家。帝国内部的革命操作操作,依据帝国竞争算法的迭代次数进行概率变化,增加国家个体的多样性,防止算法过早收敛。附图说明图1为本专利技术算法流程图。图2为本专利技术问题实例图。图3为本专利技术中国家个体表达式图。图4为本专利技术加工机器部分的同化操作图。图5为本专利技术加工工序部分的同化操作图。图6为本专利技术中革命操作图。图7为本专利技术更换帝国主义国家图。图8为本专利技术甘特图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图,对本专利技术的具体实施方式作进一步详细说明。步骤1:设置帝国竞争算法的参数,包括:国家数量Npop、帝国主义国家数量Nimp、殖民地国家数量Ncol、迭代次数Niter,帝国内部同化概率Pcimp,帝国内部革命概率Pmimp,殖民地国家影响因子α。其中,Npop=Nimp+Ncol,0<Pcimp<1,0<Pmimp<1。帝国竞争算法的终止条件为:若在还未达到迭代次数Niter就只剩一个帝国时,算法终止;否则,运行到迭代次数为止。关于变量取值的说明:国家数量Npop可以取值200-400,国家数量根据电脑处理能力或问题规模来进行取值,没有必须取多少;帝国主义国家数量Nimp、帝国主义国家数量一般占国家数量的10%-20%;殖民地国家本文档来自技高网
...

【技术保护点】
1.一种改良的帝国竞争算法解决柔性作业车间调度问题的方法,其特征在于,包括以下步骤:步骤1:参数设置,设置帝国竞争算法求解柔性作业车间调度问题的相关参数,包括:国家数量Npop、帝国主义国家数量Nimp、殖民地国家数量Ncol、迭代次数Niter,帝国内部同化概率Pcimp,帝国内部革命概率Pmimp,殖民地国家影响因子α,帝国竞争算法的终止条件为:若在还未达到迭代次数Niter就只剩一个帝国时,算法终止,否则,运行到迭代次数为止;步骤2:初始化国家个体,每一个国家代表一组柔性作业车间调度问题的可行方案,传统帝国竞争算法解决连续型优化问题,编码方式不适合离散型柔性作业车间调度问题,结合柔性作业车间调度问题特点设计两段式实数编码方式进行国家个体的编辑,并分别提出全领域搜索、局部领域搜索和随机搜索的初始化方法来产生Npop个国家;步骤3:通过成本函数,计算每个国家的成本值;步骤4:产生帝国主义国家和殖民地国家,按照每个国家的成本值计算每个国家的势力大小,依据之前设定的帝国主义国家数量,将殖民地国家随机分配给帝国主义国家,形成Nimp个帝国;步骤5:帝国内部进行同化操作,帝国内部的殖民地国家与帝国主义国家之间进行同化操作,使得殖民地国家不断向帝国主义国家移动;步骤6:帝国内部进行革命操作,帝国内部的殖民地国家为防止同化作用造成过早收敛,需要进行革命操作;步骤7:帝国内部判断是否更换帝国主义国家,对各个帝国内部的国家进行成本计算,将成本最小的殖民地与其所属的帝国主义国家进行比较,如果比帝国的成本还低,就替换该帝国主义国家,而成为统治者;步骤8:帝国之间的竞争操作,势力最强的帝国占有势力最弱的帝国中的殖民地,使得强大的帝国更加强大,弱小的帝国更加弱小;步骤9:弱势帝国的灭亡,删除掉没有殖民地的帝国,该帝国灭亡;步骤10:计算每个国家成本;步骤11:判断算法是否终止,依据参数中对算法停止条件的设定,判断算法是否终止,若算法终止,则输出运行结果;反之,算法还没有终止,则回到步骤5继续执行。...

【技术特征摘要】
1.一种改良的帝国竞争算法解决柔性作业车间调度问题的方法,其特征在于,包括以下步骤:步骤1:参数设置,设置帝国竞争算法求解柔性作业车间调度问题的相关参数,包括:国家数量Npop、帝国主义国家数量Nimp、殖民地国家数量Ncol、迭代次数Niter,帝国内部同化概率Pcimp,帝国内部革命概率Pmimp,殖民地国家影响因子α,帝国竞争算法的终止条件为:若在还未达到迭代次数Niter就只剩一个帝国时,算法终止,否则,运行到迭代次数为止;步骤2:初始化国家个体,每一个国家代表一组柔性作业车间调度问题的可行方案,传统帝国竞争算法解决连续型优化问题,编码方式不适合离散型柔性作业车间调度问题,结合柔性作业车间调度问题特点设计两段式实数编码方式进行国家个体的编辑,并分别提出全领域搜索、局部领域搜索和随机搜索的初始化方法来产生Npop个国家;步骤3:通过成本函数,计算每个国家的成本值;步骤4:产生帝国主义国家和殖民地国家,按照每个国家的成本值计算每个国家的...

【专利技术属性】
技术研发人员:张国辉陈洪根王国东刘航薛丽佀庆民王永成刘星高广章
申请(专利权)人:郑州航空工业管理学院
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1