一种基于实变函数侧距的帝国主义竞争算法制造技术

技术编号:15268145 阅读:77 留言:0更新日期:2017-05-04 03:23
本发明专利技术提出了一种基于实变函数侧距的帝国主义竞争算法求解作业车间调度问题,针对传统帝国主义竞争算法容易过早收敛;求解精确度不够高;且在车间调度问题中的应用不够灵活的问题,提出了一种基于实变函数侧距的帝国主义竞争算法竞争算法。该算法的改进在于:1、直接定义机器为帝国、作业为殖民地;2、殖民地归属性质由帝国集团势力和侧距确定,使算法最终结果更加适用于实际问题;3、利用实变函数侧距来衡量帝国侵占殖民地地理位置优势问题,使复杂问题简单化;4、结合社会进化过程以及实际应用实例具体情况,设计算法中有新殖民地、新帝国产生的情况,切合实际,简单直观,计算精度高;5、算法以帝国存活率来刻画机器利用率,简单易懂。

An imperialist competitive algorithm based on real variable function

The invention provides a variable lateral distance based on real imperialist competitive algorithm for solving job shop scheduling problem, the traditional imperialist competitive algorithm is prone to premature convergence; solve the accuracy is not high enough; and the application in the workshop scheduling problem in flexible enough problems, proposed a variable side distance based on real Empire \competition algorithm competition algorithm. Is to improve the algorithm: 1, direct definition of machines for the Empire, operating as the colonies; 2, colonies from property determined by the imperial group and side forces, the final result makes the algorithm more suitable for the practical problems; 3, the use of real variable function side distance to measure the geographical position of the colonial occupation of the Empire. Complicated problem; 4, combined with the social evolution process and application examples, a new colony, the new empire, design method is practical, simple and intuitive, high accuracy; 5, the Empire survival rate to describe the algorithm of machine utilization, easy to understand.

【技术实现步骤摘要】
所属领域本专利技术涉及作业车间调度领域,具体地涉及用算法求解作业车间调度问题。
技术介绍
作业车间调度问题(Job-ShopSchedulingProblem,JSP)是制造执行系统研究的核心和重点之一,它的研究不仅具有重大的现实意义,而且具有深远的理论意义。JSP就是根据产品制造需求合理分配资源,进而达到合理利用产品制造资源、提高企业经济效益的目的。JSP是产品制造行业中共存的问题,它与计算机集成制造系统(ComputerIntegratedManufacturingSystems,CIMS)的工厂管理、产品制造层次紧密相关,是CIMS领域中研究的重要课题。JSP是一个典型的NP-hard问题,它的研究必然会对NP问题的研究起到有意义的影响。近些年,许多解决作业车间调度问题的算法被提出,这些方法包括目标启发式算法,如:遗传、禁忌搜索算法、算法模拟退火算法、粒子群算法、混合动力车算法,除此之外,还有枚举法、数学规划法、支定界法、优先规则、迭代局部搜索算法和进化算法等。帝国主义算法(ICA)也称为殖民地竞争算法,是Atashaz_Gargari和Lucas于2007年提出的一种基于帝国主义殖民竞争机制的进化算法,属于社会启发的随机优化搜索方法。ICA算法根据帝国主义的社会政策来控制更多的国家,在殖民地国家受到一些规律支配时使用它们的资源,如果一个帝国失去强大的势力,其他国家将占有它。帝国主义竞争算法的基本思想是:同其他进化算法相似,帝国主义竞争算法开始于一组被定义为国家的个体,所有国家被分为两类:帝国主义国家和殖民地国家。将最初势力比较强大的国家作为帝国主义国家,其他国家作为殖民地国家。根据每个国家的势力将殖民地分配给不同的帝国主义国家。帝国主义国家与其所包含的殖民地被称为一个帝国。帝国之间通过竞争以获得更多的殖民地为目的,势力更大的帝国有较大的可能性战友最弱的殖民地,智力薄弱的帝国将逐渐失去其殖民地,当所有殖民地全部被一个帝国占有时,该算法结束。帝国主义竞争算法具有简单、较快的收敛速度和全局最优搜索等优点,但是也同其他智能优化算法一样,在作业车间调度问题中,帝国主义竞争算法也存在着过早收敛、精确度不够等缺点。
技术实现思路
针对现有帝国主义竞争算法中存在的上述不足,本专利技术要解决的技术问题是提供一种基于实变函数侧距的帝国主义竞争算法解决作业车间的调度问题。本专利技术的目的是克服现有技术中存在的:帝国主义竞争算法容易收敛;帝国主义竞争算法求解精确度不够高;帝国主义算法在车间调度问题中的应用不够灵活。本专利技术为实现上述目的所采用的技术方案是:一种基于实变函数侧距的帝国主义竞争算法求解作业车间调度问题,该算法的步骤如下:步骤1:初始化帝国主义竞争算法参数:初始化国家数量、帝国主义国家、殖民地国家。步骤2:计算帝国的相对势力:用机器处理作业能力Cn来刻画。步骤3:计算帝国主义国家的势力:用作业运行时间来刻画。步骤4:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多。步骤5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力步骤6:计算帝国地理位置占有优势:采用基于实变函数的侧距来衡量两个帝国占有同一个殖民地的地理位置占有优势的大小。步骤7:殖民地归属的确定:殖民地的归属性质由帝国集团势力和侧距这两部分因素确定。步骤8:殖民地向所属帝国移动:当帝国集团形成后,殖民地国家沿着指向其所属帝国的方向靠近帝国。步骤9:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们。步骤10:殖民地国家的灭亡:在帝国的侵犯过程中,存在殖民地国家灭亡。步骤11:新殖民地国家的产生:在社会进化过程中,会有新的殖民地产生。步骤12:弱势帝国的灭亡:在帝国竞争中,失去势力的帝国集团将会灭亡,而且它所拥有的殖民地将被其他帝国集团所瓜分。步骤13:新帝国的产生:在帝国竞争中,会有新的帝国产生。步骤14:计算帝国存活率:用机器利用率来刻画步骤15:最后,保留最终剩余的帝国,将适应度值作为最优解。本专利技术的有益效果是:1.帝国的相对势力直接用机器处理作业能力来刻画,减少算法计算复杂度。2.直接定义机器为帝国、作业为殖民地,避免了随机产生初始解带来的不确定性,减少算法运行时间。3.殖民地的归属性质由帝国集团势力和侧距这两部分因素确定,一方面使算法结果更加精确,另一方面使算法更加贴切于实际情况,使算法最终结果更加适用于实际问题。4.通过利用实变函数中的侧距来衡量某个帝国侵占某个殖民地的地理位置占有优势,可以把复杂的位置问题系统地简化。5.利用作业运行时间来计算帝国主义国家的势力大小,简单、实际、靠谱。6.利用机器作业能力来作为帝国国家殖民地分配的准则,简单直观、解的精确度高。7.改变了帝国的总势力的计算方式,使算法更加灵活。附图说明图1为本专利技术的算法基本流程图图2为帝国国家和殖民地国家的位置关系图具体实施方式传统的帝国主义竞争算法具有简单、准确、省时等优点,是一种十分有效率且易于使用的优化算法,该算法节省内存,寻优时间短,并且能够迅速地在搜索空间里收敛到最优解。但是,对于作业车间调度问题的优化,易于收敛,帝国主义算法不能够得到足够的精确解,且帝国主义算法最终求得一个解而不是一组解,不适用于作业车间的管理安排问题的求解。为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合流程图进行具体说明。一、帝国主义竞争算法在帝国主义竞争算法中,每一个国家都是由一个实数数组或向量来表示。对于一个Nvar维优化问题,该数组定义如下:一个国家的势力大小需要通过计算一定的目标函数来得到,变量为即为二、具体实施步骤步骤1:初始化帝国主义竞争算法参数:初始化国家数量Npop、帝国主义国家Nimp、殖民地国家Ncol。其中,帝国主义国家用机器来表示,殖民地国家用作业来表示。Npop=Nimp+Ncol步骤2:计算帝国的相对势力:用机器处理作业能力Cn来刻画。其中,Ncn表示所有有可能等待某台机器Mn处理的作业数量,Mcn表示可以处理这Ncn个作业的机器数量。步骤3:计算帝国主义国家的势力:第n个帝国主义国家的势力大小定义为:式中,ti为第i项作业的在第n台机器的运行时间,即代价值。步骤4:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多。帝国和它所拥有的殖民地组成一个帝国集团。在车间调度问题中,帝国所拥有的殖民地等于该机器实际处理的作业数。因此,殖民地分配方法按式:式中,N.Cn代表第n个帝国所拥有的殖民地。步骤5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力,在这两部分中,帝国主义国家的势力对势力有更大的影响。因此,一个帝国的总势力计算方式如下:式中,T.Cn为第n个帝国集团的总代价函数值,tn为第n个帝国主义国家的代价函数值,ti为帝国集团的殖民地的代价函数值,即车间调度问题中作业的在某台机器的运行时间,0<μ<1,是个实数,一般情况本文档来自技高网
...
一种基于实变函数侧距的帝国主义竞争算法

【技术保护点】
一种基于实变函数侧距的帝国主义竞争算法,本专利技术涉及作业车间调度领域,具体地涉及用算法求解作业车间调度问题,其特征是:该算法的步骤如下:步骤1:初始化帝国主义竞争算法参数:初始化国家数量、帝国主义国家、殖民地国家,其中,帝国主义国家用机器来表示,殖民地国家用作业来表示步骤2:计算帝国的相对势力:用机器处理作业能力来刻画其中,Ncn表示所有有可能等待某台机器Mn处理的作业数量,Mcn表示可以处理这Ncn个作业的机器数量步骤3:计算帝国主义国家的势力:第n个帝国主义国家的势力大小定义为:式中,为第i项作业的在第n台机器的运行时间,即代价值步骤4:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多,帝国和它所拥有的殖民地组成一个帝国集团,在车间调度问题中,帝国所拥有的殖民地等于该机器实际处理的作业数,因此,殖民地分配方法按式:式中,代表第n个帝国所拥有的殖民地,步骤5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力,在这两部分中,帝国主义国家的势力对势力有更大的影响,因此,一个帝国的总势力计算方式如下:式中,为第n个帝国集团的总代价函数值,为第n个帝国主义国家的代价函数值,为帝国集团的殖民地的代价函数值,即车间调度问题中作业的在某台机器的运行时间,,是个实数,一般情况下取步骤6:计算帝国地理位置占有优势:采用基于实变函数的侧距来衡量两个帝国占有同一个殖民地的地理位置占有优势的大小步骤7:殖民地归属的确定: 殖民地的归属性质由帝国集团势力和侧距这两部分因素确定步骤8:殖民地向所属帝国移动:当帝国集团形成后,殖民地国家沿着指向其所属帝国的方向靠近帝国,在该过程中,部分国家会产生革命,即殖民地随机的发生位置上的改变,殖民地向其所属帝国靠近方式如下:为了使殖民地从各个方向向其所属帝国移动,增强帝国到达全局最优的收敛性,设立两个服从于正态分布的随机参数:式中,d是殖民地与帝国之间的距离,是一个大于1的数,会使殖民地国家从四面八方向其所属帝国移动,一般取步骤9:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们,通过竞争使得强大的帝国集团更加强大,弱小的帝国集团更加弱小,在ICA算法中,最弱帝国集团中的最弱一个殖民地国家将被其他帝国集团通过竞争去占有,每一个帝国集团都有可能占有最弱的国家,这种可能性的大小由下式定义得到:式中,第n个帝国集团的相对代价函数值,定义如下:向量P:向量R是与向量P相同规格的向量:向量D有以下的到:在向量D中最大的元素所对应的帝国集团将会占有上述最弱的殖民地国家步骤10:殖民地国家的灭亡:在帝国的侵犯过程中,存在殖民地国家灭亡在车间调度问题中,殖民地灭亡即表示订单处理完毕,此时,殖民地数目会减少k为消亡的殖民地数量,e为社会进化第e次步骤11:新殖民地国家的产生:在社会进化过程中,会有新的殖民地产生在车间调度问题中,新殖民地的产生极为订单的增加,此时,殖民地数目会增加h为增加的殖民地数量,e为社会进化第e次步骤12:弱势帝国的灭亡:在帝国竞争中,失去势力的帝国集团将会灭亡,而且它所拥有的殖民地将被其他帝国集团所瓜分,在车间调度问题中,机器故障、机器完工都可用帝国的灭亡来表示,帝国灭亡,则帝国数目减少l为减少的帝国数量,e为社会进化第e次步骤13:新帝国的产生:在帝国竞争中,会有新的帝国产生,在车间调度问题中,增加新机器即为新帝国的产生g为新增的帝国数量,e为社会进化第e次步骤14:计算帝国存活率:用机器利用率来刻画,如下定义:e为社会进化第e次.步骤15:最后,保留最终剩余的帝国,将适应度值作为最优解。...

【技术特征摘要】
1.一种基于实变函数侧距的帝国主义竞争算法,本发明涉及作业车间调度领域,具体地涉及用算法求解作业车间调度问题,其特征是:该算法的步骤如下:步骤1:初始化帝国主义竞争算法参数:初始化国家数量、帝国主义国家、殖民地国家,其中,帝国主义国家用机器来表示,殖民地国家用作业来表示步骤2:计算帝国的相对势力:用机器处理作业能力来刻画其中,Ncn表示所有有可能等待某台机器Mn处理的作业数量,Mcn表示可以处理这Ncn个作业的机器数量步骤3:计算帝国主义国家的势力:第n个帝国主义国家的势力大小定义为:式中,为第i项作业的在第n台机器的运行时间,即代价值步骤4:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多,帝国和它所拥有的殖民地组成一个帝国集团,在车间调度问题中,帝国所拥有的殖民地等于该机器实际处理的作业数,因此,殖民地分配方法按式:式中,代表第n个帝国所拥有的殖民地,步骤5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力,在这两部分中,帝国主义国家的势力对势力有更大的影响,因此,一个帝国的总势力计算方式如下:式中,为第n个帝国集团的总代价函数值,为第n个帝国主义国家的代价函数值,为帝国集团的殖民地的代价函数值,即车间调度问题中作业的在某台机器的运行时间,,是个实数,一般情况下取步骤6:计算帝国地理位置占有优势:采用基于实变函数的侧距来衡量两个帝国占有同一个殖民地的地理位置占有优势的大小步骤7:殖民地归属的确定:殖民地的归属性质由帝国集团势力和侧距这两部分因素确定步骤8:殖民地向所属帝国移动:当帝国集团形成后,殖民地国家沿着指向其所属帝国的方向靠近帝国,在该过程中,部分国家会产生革命,即殖民地随机的发生位置上的改变,殖民地向其所属帝国靠近方式如下:为了使殖民地从各个方向向其所属帝国移动,增强帝国到达全局最优的收敛性,设立两个服从于正态分布的随机参数:式中,d是殖民地与帝国之间的距离,是一个大于1的数,会使殖民地国家从四面八方向其所属帝国移动,一般取步骤9:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们,通过竞争使得强大的帝国集团更加强大,弱小的帝国集团更加弱小,在ICA算法中,最弱帝国集团中的最弱一个殖民地国家将被其他帝国集团通过竞争去占有,每一个帝国集团都有可能占有最弱的国家,这种可能性的大小由...

【专利技术属性】
技术研发人员:姜艾佳胡成华
申请(专利权)人:四川用联信息技术有限公司
类型:发明
国别省市:四川;51

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

1