一种基于多色集合遗传算法的多目标车间调度方法与流程

文档序号:12721825阅读:357来源:国知局
一种基于多色集合遗传算法的多目标车间调度方法与流程
本发明属于作业调度
技术领域
,涉及一种基于多色集合遗传算法的多目标车间调度方法。
背景技术
:目前对单目标调度问题的优化求解,很少考虑工艺过程与调度之间的联系以及如何设计二者之间的关系。在实际生产中,经常会遇到作业调度目标不同的状况:如有一批加工任务,有些工件必须满足客户的交货期要求,有些工件要求尽快完工,而有些工件要求尽可能低的生产加工成本,因此车间调度必须兼顾所有工件的调度目标。技术实现要素:本发明的目的在于克服上述现有技术的缺点,提供一种基于多色集合遗传算法的多目标车间调度方法,在改进遗传算法中运用带有偏好信息的随机权重系数法,将多目标调度问题转化成单目标问题来求解。为达到上述目的,本发明采用以下技术方案予以实现:一种基于多色集合遗传算法的多目标车间调度方法,包括以下步骤:1)根据约束条件和目标函数,运用随机权重系数法将多目标优化转单目标优化;2)建立工序-设备围道矩阵的约束方式,进行染色体编码,缩小GA的搜索范围。本发明进一步的改进在于:所述步骤1)中,约束条件如下:FJSP被描述为:设M为加工设备的数量,N为待加工工件数量,P为工序数,I为所有设备的集合;Ieg代表工件e的第g道工序的可用设备集合,Je为工件e的工序数;X为所有工件的加工次序,Segk表示工件e的第g道工序在设备k上加工的开始时间;Eegk为工件e的第g道工序在设备k上的加工结束时间;Tegk为工件e的第g道工序在设备k上的持续加工时间,且k∈Ieg则有Eegk=Segk+Tegk;Ep表示最后工序的完工时间;MS表示所有工件的最后完工时间;当工件i的第j道工序和工件e的第g道工序在同一台设备上执行,若工序j先于工序g加工时,Qijeg=1,否则Qijeg=0;若工件e的第g道工序在机床k上加工,则Xegk=1,否则Xegk=0;所述步骤1)中,目标函数为:(a)完工时间最小:(b)生产成本最低:(c)工序能力指数最大:所述步骤1)中,运用随机权重系数法将多目标优化转单目标优化1-1)偏好定义:偏好用二元关系表示,给定一组二元关系P和Q,决策者存在以下偏好关系:(a)若决策者对P的偏好大于Q,记作P>Q;(b)若决策者对P的偏好小于Q,记作P<Q;(c)若决策者对P,Q的偏好都差不多,记作P~Q;(d)若未知决策者对P,Q的偏好,记作P?Q;1-2)设偏好矩阵确定各个目标的重要程度,得到各个目标函数的重要度排序;1-3)用偏好信息设置各目标函数的随机权重系数:从偏好矩阵中得到的各个目标之间的重要程度排序,根据重要程度排序来设置随机权重系数;若有n个目标,根据偏好矩阵得到n个目标的偏好排序,比如f1>f2>...>fi>...>fn,利用Matlab软件中的随机函数rand(1,n)得到n个随机数,记为rand1,randi,...,randn,将这n个随机数比较大小后排列,越重要的目标对应的随机数越大,进而得到各个目标函数相应的随机权重系数为:生成权重向量:W=(w1,w2,...,wi,...,wn),进而将多目标函数转化为单目标函数:所述步骤2)具体方法如下:2-1)染色体编码首先建立工序-设备的围道矩阵,然后进行染色体编码,具体编码是按照某种工件的某道工序在某个设备上加工的信息进行设备的编码,每个码位代表了某种工件的某道工序,每个码位上的信息是设备信息;2-2)初始化种群在遗传算法中是对种群执行遗传操作,这里的种群是指染色体,即包含工件工序信息的设备编码;在算法的处理过程中,初始种群数量大小的设置,是算法开始执行的起始点;2-3)适应度函数利用偏好矩阵给目标函数配上相应权重,组成一个整体标量适应度函数,进行求解,公式如下:以三目标为例,F(x)为综合最优函数,综合最优是求最小,由于f3的目标是求工序能力指数最大,而综合最优是求最小,将求最大的通过倒数形式换成求最小的,所以这里写成如下式所示:2-4)选择策略在计算完适应度值F(x)后,采用精英保留策略,在众多染色体中选取种群数量Npop的80%的染色体,进入初步的帕累托最优解集;2-5)交叉操作采用多点交叉方法,对于数量Npop=50的种群,取交叉概率为Pc=0.8随机选择两个交叉点,对两个染色体上交叉点之间的片段进行交叉操作;2-6)变异操作取变异概率Pm=0.06,计算出需要变异的染色体数量,对于每条染色体随机确定变异的码位,然后搜索工序-设备围道矩阵,寻找该码位上的能够替换的设备编码,产生变异之后的新染色体;通过计算已经变异个体的适应度值Fk'(x)=fit(k')和Fk(x)=fit(k),并进行比较,若fit(k')≥fit(k)则变异可行,反之变异失败,该条染色体无需进行变异。所述步骤2-2)中,种群数量设置在20~100。与现有技术相比,本发明具有以下有益效果:本发明采用偏好矩阵能够根据管理需要对每个目标赋予合理的权重,进而将多目标调度问题转化为单目标调度问题,进而降低了调度问题的复杂度,另外通过建立工序-设备围道矩阵的约束方式,进行染色体编码,使得GA的搜索范围得到了精确而有效的缩小,提高了求解效率和精度。【附图说明】图1为本发明运用随机权重系数法将多目标优化转单目标优化的流程图;图2为本发明遗传算法的流程图;图3为本发明最优综合值的遗传进化曲线;图4为本发明多目标调度甘特图。【具体实施方式】下面结合附图对本发明做进一步详细描述:本发明在改进遗传算法中运用带有偏好信息的随机权重系数法,将多目标调度问题转化成单目标问题来求解。一、约束条件:FJSP被描述为:设M为加工设备的数量,N为待加工工件数量,P为工序数,I为所有设备的集合;Ieg代表工件e的第g道工序的可用设备集合,Je为工件e的工序数;X为所有工件的加工次序,Segk表示工件e的第g道工序在设备k上加工的开始时间;Eegk为工件e的第g道工序在设备k上的加工结束时间;Tegk为工件e的第g道工序在设备k上的持续加工时间,且k∈Ieg则有Eegk=Segk+Tegk;Ep表示最后工序的完工时间;MS表示所有工件的最后完工时间;当工件i的第j道工序和工件e的第g道工序在同一台设备上执行,若工序j先于工序g加工时,Qijeg=1,否则Qijeg=0;若工件e的第g道工序在机床k上加工,则Xegk=1,否则Xegk=0;二、目标函数(以三目标为例):(1)完工时间最小:(2)生产成本最低:(3)工序能力指数最大:三、运用随机权重系数法将多目标优化转单目标优化1偏好定义:偏好是决策者倾向程度的表示,让决策者有个重要程度先后顺序上的认识。通常可以用二元关系表示。给定一组二元关系,P和Q,决策者对它们可能存在以下偏好关系:(a)若决策者对P的偏好大于Q,记作P>Q;(b)若决策者对P的偏好小于Q,记作P<Q;(c)若决策者对P,Q的偏好都差不多,记作P~Q;(d)若未知决策者对P,Q的偏好,记作P?Q;此处主要用来描述决策者对车间作业调度优化目标的重视程度。2设偏好矩阵确定各个目标的重要程度,得到个目标函数的重要度排序。3用偏好信息设置各目标函数的随机权重系数从偏好矩阵中得到的各个目标之间的重要程度排序(偏好排序),根据这个排序来设置随机权重系数。若有n个目标,根据偏好矩阵得到n个目标的偏好排序,比如f1>f2>...>fi>...>fn,利用Matlab软件中的随机函数rand(1,n)得到n个随机数,记为rand1,randi,...,randn,将这n个随机数比较大小后排列,越重要的目标对应的随机数越大,进而得到各个目标函数相应的随机权重系数为:生成权重向量:W=(w1,w2,...,wi,...,wn),进而将多目标函数转化为单目标函数:四、改进算法的设计1染色体编码考虑到多目标调度问题需要衡量各个目标,然后从整体进行比较。首先建立工序-设备的围道矩阵,GA操作都是在工序-设备围道矩阵内进行,然后进行染色体编码,具体编码是按照某种工件的某道工序在某个设备上加工的信息进行设备的编码,每个码位代表了某种工件的某道工序,每个码位上的信息是设备信息。2初始化种群在遗传算法中是对种群执行遗传操作,这里的种群是指染色体,即包含工件工序信息的设备编码。在算法的处理过程中,初始种群数量大小的设置,是算法开始执行的起始点,因此种群数量大小对算法有着一定的影响。当种群规模较大时,群体的多样性能够得到保证,更容易搜索到全局最优解,但种群更新速度较慢;当种群规模较小时,种群多样性比较小,虽然种群更新速度加快,但有可能使算法在局部搜索,得到的只是局部最优,无法搜索到全局,得到全局最优解。根据经验,种群数量设置在20~100。3适应度函数遗传算法在搜索中几乎不使用外部信息,只是以适应度函数为依据,利用种群中每条染色体的适应度值来进行搜索,所以如何选取适应度函数至关重要,这会直接影响算法的收敛速度及能否找到最优解。在单目标遗传算法中,求解的目标只有一个,只要建立函数关系式根据目标是求最大还是最小,直接可求得目标解。而多目标遗传算法中,目标有多个,相应的函数也是多个,利用偏好矩阵给目标函数配上相应权重,组成一个整体标量适应度函数,进行求解,公式如下:由于多目标求解中,并不是每个目标都要求最大或者最下,往往是既有求最大,又有求最小,所以需要将某些目标通过数学关系转化一下,使整体是求最大或者最小。如有三个目标:最小完工时间,最低生产成本,最大工序能力指数要综合起来求解是困难的,因为三个目标的方向不一致,两个目标要求最小,一个目标要求最大,所以考虑把求最大的,通过倒数形式,换成求最小的,如下所示:其中,F(x)为综合最优函数,由于f3的目标是求工序能力指数最大,而综合最优是求最小,所以这里写成4选择策略选择操作是一种通用的操作,与求解问题无关,但却是遗传算法中最重要的一环,不同的选择方式,会影响父代遗传到下一代的种群特点,而且选择多少父代遗传到下一代,会影响种群的多样性以及算法的收敛速度,选择的父代个体数多,种群多样性好,收敛慢,反之则多样性差,收敛快,产生过早收敛,最后影响最优解的产生。针对多目标的问题的选择操作问题中,不能像单目标选择操作那样直接采用精英保留策略,把个体适应度值最大的染色体直接复制到下一代,因为多目标的适应度值是在给各个目标赋上不同权重后得出的一个综合值,每进行一次遗传操作,随机权重会发生变化,可能出现综合值是最大的,但其中单个目标的值可能不理想,如果将这样的染色体复制进入下一代,将是不利的。所以在计算完适应度值F(x)后,采用稍作修改的精英保留策略,在众多染色体中选取一定数量的,适应度值较大的染色体(种群数量Npop的80%),进入初步的帕累托最优解集。5交叉操作本文主要采用多点交叉方法,对于数量Npop=50的种群,取交叉概率为Pc=0.8随机选择两个交叉点进行交叉操作;6变异操作本发明的变异操作是基于围道矩阵的,目的是确保变异后的染色体仍旧满足工序-设备约束。取变异概率Pm=0.06,计算出需要变异的染色体数量,对于每条染色体随机确定变异的码位,然后搜索工序-设备围道矩阵,寻找该码位上的可替换的设备编码,产生变异之后的新染色体。通过计算已经变异个体的适应度值Fk'(x)=fit(k')和Fk(x)=fit(k)比较,若fit(k')≥fit(k)则变异可行,反之变异失败,该条染色体无需进行变异。实施例:下面采用一个3×6×8的柔性作业车间调度问题案例(3类工件,对应最大工序数为6,在8台设备上进行加工)来讨论改进遗传算法对多目标调度问题的求解。其加工任务信息表如表1所示,相关参数为:单位时间成本,设备1,20元/小时;设备2,33元/小时;设备3,60元/小时;设备4;72元/小时;设备5,45元/小时;设备6,100元/小时;设备7,126元/小时;设备8,179元/小时。表1加工任务信息表调度的目的为同时实现最小化最大完工时间,最小化生产成本,最大化工序能力指数三个优化目标。1染色体编码多目标调度问题的染色体编码和单目标调度的染色体编码方式原理相同,考虑到多目标调度问题需要衡量各个目标,然后从整体进行比较。利用工序-设备的围道矩阵进行染色体编码,矩阵如表2所示:表2工序-设备围道矩阵描述:F1--F9表示机加工中的不同加工工艺:粗车、精车、外圆磨、磨端面、镗、钻孔等;F10--F12表示3种工件类型A、B、C;a1--a18表示每个工件各道工艺类型;M1--M8表示完成各道工序所使用的机床。编码是按照某种工件的某道工序在某个设备上加工的信息进行设备的编码,每个码位代表了某种工件的某道工序,每个码位上的信息是设备信息。根据围道矩阵生成的染色体编码,如下所示:146740235283132173前6个数:1,4,6,7,4,0表示工件A的5道工序分别在1号设备,4号设备,6号设备,7号设备,4号设备加工,依次类推。注:解码的目标是为了得到每个设备上与各种工件对应的工序的先后,并根据这些工序得出该设备上某种工件某道工序的起始时间,完工时间,加工成本和工序能力指数。在单目标问题中已经详细叙述,这里不再赘述。2初始化种群随机生成初始种群Ψ,种群数量Npop=50条染色体,每条染色体是含有工件工序信息的设备编码。3适应度函数此处的目标函数为最小完工时间,最低生产成本,最大工序能力指数三项(1)定义偏好为最小化最大完工时间f1,最小化生产成本f2,最大化工序能力指数f3,其中重要程度依次为f1,f2,f3。(2)建立偏好矩阵如式所示。矩阵第一行表示完工时间目标函数f1与生产成本目标函数f2的偏好关系为1>0,说明决策者认为完工时间比生产成本重要一些f1>f2,同理可得f1<f3,f2>f3,所以可得到三个目标的重要程度的先后顺序即偏好排序:f1>f2>f3。(3)利用偏好信息设置随机权重系数从偏好矩阵中得到的各个目标之间的重要程度排序f1>f2>f3,利用Matlab软件中的随机函数rand(1,n)得到3个随机数rand1,rand2,rand3,比较大小后排列对应f1,f2,f3,进而得相应权重为:w1,w2,w3(4)确定适应度函数由于最小完工时间,最低生产成本,最大工序能力指数三个目标的方向不一致综合起来求解较为困难的,两个目标要求最小,一个目标要求最大,所以考虑把求最大的,通过倒数形式,换成求最小的,如下所示:其中,F(x)为综合最优函数,由于f3的目标是求工序能力指数最大,而综合最优是求最小,所以这里写成4选择策略本文中在计算完适应度值F(x)后,采用稍作修改的精英保留策略,在众多染色体中选取一定数量的,适应度值较大的染色体(种群数量Npop的80%),进入初步的帕累托最优解集。之后计算每条染色体被选择的概率P(x),只有概率P(x)≥K(K=0.8,这个数值的选取,是利用帕累托的二八定律选出,即在自然界的繁衍中,好的个体只占了一小部分,大多数是次要的),才会被选择进入交叉变异等后续操作。下一代个体由于在选择后进入交叉变异的数量减少,所以为了弥补这种减少,从第一代的初步的帕累托最优解集中随机选取一定数量的个体进入第二代。概率P(x)定义如下(初始种群Ψ,种群数量Npop):这里的Fmin(Ψ)是种群中适应度值最小的染色体的代表。5交叉操作采用多点交叉方法,对于数量Npop=50的种群,取交叉概率为Pc=0.8随机选择两个交叉点进行交叉操作。如下所示:父代个体:Chrom1:146740235283132173Chrom2:234140135213236274子代个体:ChromA:134740235283136273ChromB:246140135213232174注:因为染色体的码位代表各工件的工序,所以在交叉时,码位必须一一对应。6变异操作变异操作是基于围道矩阵的,目的是确保变异后的染色体仍旧满足工序-设备约束。取变异概率Pm=0.06,计算出需要变异的染色体数量,对于每条染色体随机确定变异的码位,然后搜索工序-设备围道矩阵,寻找该码位上的可替换的设备编码,产生变异之后的新染色体。如:原染色体:146740235283132173变异后:136740135283132273通过计算已经变异个体的适应度值Fk'(x)=fit(k')和Fk(x)=fit(k)比较,若fit(k')≥fit(k)则变异可行,反之变异失败,该条染色体无需进行变异。根据不同的设备编码得出不同的最优综合值F(x),如表3所示:表3不同编码与综合值从表中可得,最优综合值最小的是MT12矩阵对应的加工信息,矩阵信息及按该矩阵加工多目标调度的遗传进化曲线如表4,图3所示:表4MT12矩阵续表5.4-2以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1