一种基于帝国主义竞争的算法解决车间工人调度问题制造技术

技术编号:15270973 阅读:125 留言:0更新日期:2017-05-04 09:01
本发明专利技术提出了一种基于帝国主义竞争的算法解决车间工人调度问题,该算法首先利用一种改进的帝国主义算法对作业与机器之间的调度进行优化,然后利用该算法的最优结果的帝国数组等作为解决工人与机器之间的调度问题的一些参数,结合机器处理能力、机器与工人之间的地理距离等等参数建立一个新的帝国主义竞争算法模型,以解决工人与机器的调度问题。本发明专利技术直接定义工人为帝国、机器为殖民地,避免了随机产生初始解带来的不确定性,减少算法运行时间。利用机器与工人的距离来刻画帝国主义国家的相对势力,简单、方便。

An algorithm for solving job shop scheduling problem based on imperialist competition

The invention provides a method based on imperialist competitive algorithm to solve shop workers scheduling problem, the algorithm firstly uses a modified algorithm of imperialism between job and machine scheduling to optimize some parameters and then use the optimal results of the algorithm of the Empire array as a scheduling problem solving between workers and machines. The combination between the machine processing capacity, machine workers and geographical distance and so on parameters to establish a new imperialist competitive algorithm to solve the scheduling problem of model workers and machines. The direct definition of workers for the Empire, machines for the colonies, avoid the randomly generated initial solutions to the uncertainty, reduce the running time of the algorithm. It is simple and convenient to use the distance between the machine and the workers to describe the relative power of the imperialist countries.

【技术实现步骤摘要】
所属领域本专利技术涉及作业车间调度领域,具体地涉及用算法求解车间人员调度问题。
技术介绍
在过去的几十年,各种算法被应用来解决作业车间调度问题,如:帝国主义竞争算法、遗传算法、粒子群算法等等,各自有优点和缺点。也有一些综合解决作业车间调度问题的方法提出,但是,还是存在没法同时满足求得精确解和运行时间短的问题,并且,所提出的方法都只是基于解决作业与机器的调度问题。然而,现今的作业车间调度问题已不仅仅是生产线上作业与机器之前的调度问题,因为工人的稀缺,还需要考虑到工人与机器的分配管理问题。
技术实现思路
针对现有技术存在的上述不足,本专利技术要解决的技术问题是提供一种考虑车间工人、作业与机器三者的分配管理的基于帝国主义竞争算法的算法。本专利技术的目的是克服现有技术中存在的:没有一个算法将车间调度中作业与机器的调度和工人与机器的调度联系在一起;帝国主义竞争算法解决调度优化不够灵活;帝国主义算法解决调度优化问题求解精度不高的问题。本专利技术为实现上述目的所采用的技术方案是:一种基于帝国主义竞争的算法解决车间工人调度问题,该算法的具体步骤如下:步骤1:首先利用一种改进的帝国主义竞争算法求解作业车间调度问题,具体步骤如下:步骤1.1:初始化帝国主义竞争算法参数:初始化国家数量、帝国主义国家、殖民地国家。步骤1.2:计算帝国的相对势力:用机器处理作业能力来刻画。步骤1.3:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家。步骤1.4:计算帝国主义国家的势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力。步骤1.5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力。步骤1.6:殖民地向所属帝国移动:当帝国集团形成后,每个帝国集团中的帝国主义国家试图增加其殖民地的数量,在ICA算法中,殖民地国家沿着指向其所属帝国的方向靠近帝国。步骤1.7:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们。通过竞争使得强大的帝国集团更加强大,弱小的帝国集团更加弱小。步骤1.8:殖民地国家的灭亡:在帝国的侵犯过程中,存在殖民地国家灭亡。步骤1.9:新殖民地国家的产生:在社会进化过程中,会有新的殖民地产生。步骤1.10:弱势帝国的灭亡:在帝国竞争中,失去势力的帝国集团将会灭亡,而且它所拥有的殖民地将被其他帝国集团所瓜分。步骤1.11:新帝国的产生:在帝国竞争中,会有新的帝国产生。步骤1.12:计算帝国存活率:用机器利用率ρ来刻画。步骤1.13:最后,保留最终剩余的帝国,将适应度值作为最优解,返回最优解的帝国主义国家数组。步骤2:将作业与机器的调度问题最优解的帝国主义数组作为工人调度帝国主义算法的参数,进工人与机器的智能调度。具体步骤如下:步骤2.1:初始化工人调度帝国主义竞争算法参数:帝国主义国家用工人来表示,殖民地国家用机器来表示。步骤2.2:计算帝国的相对势力:用作业与机器的调度中的帝国的势力作为机器与工人的调度的帝国相对势力。步骤2.3:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多。帝国和它所拥有的殖民地组成一个帝国集团。步骤2.4:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力。步骤2.5:帝国国家向殖民地移动:当帝国集团形成后,每个帝国集团中的帝国主义国家试图增加其殖民地的数量,在改进的ICA算法中,帝国主义国家沿着指向其邻近的殖民地方向靠近殖民地。步骤2.6:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们。通过竞争使得强大的帝国集团更加强大,弱小的帝国集团更加弱小。步骤2.7:最后,保留最终剩余的帝国,将适应度值作为最优解,输出帝国主义国家以及对应的殖民地。本专利技术的有益效果是:1.本专利技术解决了车间中作业与机器的调度以及工人的工作调度,将人工化管理变为智能化、系统化管理,方便高效。2.直接定义工人为帝国、机器为殖民地,避免了随机产生初始解带来的不确定性,减少算法运行时间。3.利用机器与工人的距离来刻画帝国主义国家的相对势力,简单、方便。4.利用作业调度问题中的帝国主义竞争算法的相对势力来描述工人调度问题帝国的势力,建立了作业与工人的间接联系,系统化、开放化、逻辑化,并且计算精度高。5.改变了帝国总势力的计算方式,使算法更加灵活。附图说明图1表示改进的帝国主义算法解决作业调度问题的流程图图2改进的帝国主义算法解决工人调度问题流程图具体实施方式本算法首先利用一种改进的帝国主义算法对作业与机器之间的调度进行优化,然后利用该算法的最优结果的帝国数组等作为解决工人与机器之间的调度问题的一些参数,结合机器处理能力、机器与工人之间的地理距离等等参数建立一个新的帝国主义竞争算法模型,以解决工人与机器的调度问题。为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图1、附图2对本专利技术进行详细说明。一、帝国主义竞争算法在帝国主义竞争算法中,每一个国家都是由一个实数数组或向量来表示。对于一个Nvar维优化问题,该数组定义如下:一个国家的势力大小需要通过计算一定的目标函数来得到,变量为即为二、具体实施步骤1、所述步骤1采用改进的帝国主义竞争算法解决作业与机器之间的调度问题,结合图1,其中各步骤具体描述如下:步骤1.1:初始化帝国主义竞争算法参数:初始化国家数量Npop、帝国主义国家Nimp、殖民地国家Ncol。其中,帝国主义国家用机器来表示,殖民地国家用作业来表示。Npop=Nimp+Ncol步骤1.2:计算帝国的相对势力:用机器处理作业能力Cn来刻画。其中,Ncn表示所有有可能等待某台机器Mn处理的作业数量,Mcn表示可以处理这Ncn个作业的机器数量。步骤1.3:计算帝国主义国家的势力:第n个帝国主义国家的势力大小定义为:式中,ti为第i项作业的在第n台机器的运行时间,即代价值。步骤1.4:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多。帝国和它所拥有的殖民地组成一个帝国集团。在车间调度问题中,帝国所拥有的殖民地等于该机器实际处理的作业数。因此,殖民地分配方法按式:式中,N.Cn代表第n个帝国所拥有的殖民地。步骤1.5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力,在这两部分中,帝国主义国家的势力对势力有更大的影响。因此,一个帝国的总势力计算方式如下:式中,T.Cn为第n个帝国集团的总代价函数值,tn为第n个帝国主义国家的代价函数值,ti为帝国集团的殖民地的代价函数值,即车间调度问题中作业的在某台机器的运行时间,0<μ<1,是个实数,一般情况下取μ∈[0.1,0.5]。步骤1.6:殖民地向所属帝国移动:当帝国集团形成后,每个帝国集团中的帝国主义国家试图增加其殖民地的数量,在ICA算法中,殖民本文档来自技高网...
一种基于帝国主义竞争的算法解决车间工人调度问题

【技术保护点】
一种基于帝国主义竞争的算法解决车间工人调度问题,本专利技术涉及作业车间调度领域 ,具体地涉及用算法求解车间人员调度问题,其特征是:该算法的实施步骤如下:步骤1:首先利用一种改进的帝国主义竞争算法求解作业车间调度问题,具体步骤如下:步骤1.1:初始化帝国主义竞争算法参数:初始化国家数量、帝国主义国家、殖民地国家;步骤1.2:计算帝国的相对势力:用机器处理作业能力来刻画;步骤1.3:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家;步骤1.4:计算帝国主义国家的势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力;步骤1.5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力;步骤1.6:殖民地向所属帝国移动:当帝国集团形成后,每个帝国集团中的帝国主义国家试图增加其殖民地的数量,在ICA算法中,殖民地国家沿着指向其所属帝国的方向靠近帝国;步骤1.7:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们,通过竞争使得强大的帝国集团更加强大,弱小的帝国集团更加弱小;步骤1.8:殖民地国家的灭亡:在帝国的侵犯过程中,存在殖民地国家灭亡;步骤1.9:新殖民地国家的产生:在社会进化过程中,会有新的殖民地产生;步骤1.10:弱势帝国的灭亡:在帝国竞争中,失去势力的帝国集团将会灭亡,而且它所拥有的殖民地将被其他帝国集团所瓜分;步骤1.11:新帝国的产生:在帝国竞争中,会有新的帝国产生;步骤1.12:计算帝国存活率:用机器利用率来刻画;步骤1.13:最后,保留最终剩余的帝国,将适应度值作为最优解,返回最优解的帝国主义国家数组;步骤2:将作业与机器的调度问题最优解的帝国主义数组作为工人调度帝国主义算法的参数,进工人与机器的智能调度,具体步骤如下:步骤2.1:初始化工人调度帝国主义竞争算法参数:帝国主义国家用工人来表示,殖民地国家用机器来表示;步骤2.2:计算帝国的相对势力:用作业与机器的调度中的帝国的势力作为机器与工人的调度的帝国相对势力;步骤2.3:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多,帝国和它所拥有的殖民地组成一个帝国集团;步骤2.4:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力;步骤2.5:帝国国家向殖民地移动:当帝国集团形成后,每个帝国集团中的帝国主义国家试图增加其殖民地的数量,在改进的ICA算法中,帝国主义国家沿着指向其邻近的殖民地方向靠近殖民地;步骤2.6:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们,通过竞争使得强大的帝国集团更加强大,弱小的帝国集团更加弱小;步骤2.7:最后,保留最终剩余的帝国,将适应度值作为最优解,输出帝国主义国家以及对应的殖民地。...

【技术特征摘要】
1.一种基于帝国主义竞争的算法解决车间工人调度问题,本发明涉及作业车间调度领域,具体地涉及用算法求解车间人员调度问题,其特征是:该算法的实施步骤如下:步骤1:首先利用一种改进的帝国主义竞争算法求解作业车间调度问题,具体步骤如下:步骤1.1:初始化帝国主义竞争算法参数:初始化国家数量、帝国主义国家、殖民地国家;步骤1.2:计算帝国的相对势力:用机器处理作业能力来刻画;步骤1.3:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家;步骤1.4:计算帝国主义国家的势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力;步骤1.5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力;步骤1.6:殖民地向所属帝国移动:当帝国集团形成后,每个帝国集团中的帝国主义国家试图增加其殖民地的数量,在ICA算法中,殖民地国家沿着指向其所属帝国的方向靠近帝国;步骤1.7:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们,通过竞争使得强大的帝国集团更加强大,弱小的帝国集团更加弱小;步骤1.8:殖民地国家的灭亡:在帝国的侵犯过程中,存在殖民地国家灭亡;步骤1.9:新殖民地国家的产生:在社会进化过程中,会有新的殖民地产生;步骤1.10:弱势帝国的灭亡:在帝国竞争中,失去势力的帝国集团将会灭亡,而且它所拥有的殖民地将被其他帝国集团所瓜分;步骤1.11:新帝国的产生:在帝国竞争中,会有新的帝国产生;步骤1.12:计算帝国存活率:用机器利用率来刻画;步骤1.13:最后,保留最终剩余的帝国,将适应度值作为最优解,返回最优解的帝国主义国家数组;步骤2:将作业与机器的调度问题最优解的帝国主义数组作为工人调度帝国主义算法的参数,进工人与机器的智能调度,具体步骤如下:步骤2.1:初始化工人调度帝国主义竞争算法参数:帝国主义国家用工人来表示,殖民地国家用机器来表示;步骤2.2:计算帝国的相对势力:用作业与机器的调度中的帝国的势力作为机器与工人的调度的帝国相对势力;步骤2.3:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多,帝国和它所拥有的殖民地组成一个帝国集团;步骤2.4:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力;步骤2.5:帝国国家向殖民地移动:当帝国集团形成后,每个帝国集团中的帝国主义国家试图增加其殖民地的数量,在改进的ICA算法中,帝国主义国家沿着指向其邻近的殖民地方向靠近殖民地;步骤2.6:帝国集团的竞争:帝国主义的竞争过程发生在帝国集团之间,因为每一个帝国集团都试图占有其他帝国的殖民地并且控制他们,通过竞争使得强大的帝国集团更加强大,弱小的帝国集团更加弱小;步骤2.7:最后,保留最终剩余的帝国,将适应度值作为最优解,输出帝国主义国家以及对应的殖民地。2.根据权利要求1所述的一种基于帝国主义竞争的算法解决车间工人调度问题,其特征是:步骤1的具体实施步骤如下:步骤1.1:初始化帝国主义竞争算法参数:初始化国家数量、帝国主义国家、殖民地国家,其中,帝国主义国家用机器来表示,殖民地国家用作业来表示:;步骤1.2:计算帝国的相对势力:用机器处理作业能力来刻画:其中,Ncn表示所有有可能等待某台机器Mn处理的作业数量,Mcn表示可以处理这Ncn个作业的机器数量;步骤1.3:计算帝国主义国家的势力:第n个帝国主义国家的势力大小定义为:式中,为第i项作业的在第n台机器的运行时间,即代价值;步骤1.4:初始化帝国主义集团:根据帝国的势力将不同数量的殖民地国家分配给帝国主义国家,帝国国家势力越大,该帝国所拥有的殖民地国家就越多,帝国和它所拥有的殖民地组成一个帝国集团,在车间调度问题中,帝国所拥有的殖民地等于该机器实际处理的作业数,因此,殖民地分配方法按式:式中,代表第n个帝国所拥有的殖民地;步骤1.5:计算帝国集团的总势力:一个帝国集团的总势力包括两部分,一部分为帝国主义国家的势力,另一部分为它所拥有的殖民地国家的势力,在这两部分中,帝国主义国家的势力对势力有更大的影响,因此,一个帝国的总势力计算方式如下:式中,为第n个帝国集团的总代价函数值,为第n个帝国主义国家的代价函数值,为帝国集团的殖民地的代价函数值,即车间调度问题中作业的在某台机器的运行时间,,是个实数,一般情况下取;步骤1.6:殖民地向所属帝国移动:当帝国集团形成后,每个帝国集团中的帝国主义国家试图增加其殖民地的数量,在ICA算法中,殖民地国家沿着指向其所属帝国的方向靠近帝国,在该过程中,部分国家会产生革命,即殖民地随机的发生位置上的改变,殖民地向其所属帝国靠近方式如下:为了使殖民地从各个方向向其所属帝国移动,增强帝国到达全局最优的...

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

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

1