多目标蜜蜂繁殖优化算法解决柔性工艺规划绿色制造问题的方法与流程

文档序号:18399145发布日期:2019-08-09 23:42阅读:337来源:国知局
多目标蜜蜂繁殖优化算法解决柔性工艺规划绿色制造问题的方法与流程

本发明涉及工艺规划技术领域,具体是多目标蜜蜂繁殖优化算法解决柔性工艺规划绿色制造问题的方法。



背景技术:

着经济的快速增长和人类文明的进步,信息技术、制造技术以及网络技术得到迅猛发展,科技给人类带来了越来越多的便利,改变了人的生活、生产方式,极大地促进了人类物质文明和精神文明。尽管科技对人类社会意义重大,但同时也让人类面临着越来越严峻的资源和环境压力,使人类陷入一系列的困境之中,如全球气候变暖、环境污染、生态危机等,因此可持续发展是人类必要的选择。可持续发展必然离不开对能源利用的关注,中国作为经济快速增长的发展中国家,能源消费量与日俱增,此伴随的污染问题给环境带来了极大的压力。机械加工是制造业主要的生产过程,机床是制造过程中重要的耗能资源,针对机加工零件制造过程的能耗进行优化,实行绿色制造,对提高制造业的可持续发展,实现低碳制造具有重要意义。

工艺规划即确定车间中工件加工的工艺路线,规定了工件从毛胚变成零件的全部加工过程。在研究柔性工艺规划问题时,近优的工艺路线一般所指的是加工单个工件最大完工时间的最小化,即单目标最大完工时间最小化。对柔性工艺规划问题优化时不仅要考虑工件加工特征的工艺选择和排序,还要再进一步的选择与确定不同工艺下的加工机器以及刀具,与此同时还会受到工序之间优先约束影响,加工特征之间也会有约束存在,比如先粗后精、先主后次、先面后孔、先基准后其他等等,因此该问题是一个典型的np-complete问题。另外,在研究绿色制造模式下的柔性工艺规划问题时,不仅需要考虑柔性工艺规划环节的经济效益指标,还需考虑绿色指标,如工件加工时能耗引起的碳排放,其中包含每道工序机床加工能耗引起的碳排放、机床一次启动、预热以及停止的能耗引起的碳排放、冷却液消耗引起的碳排放、润滑油消耗引起的碳排放、工序顺序加工变换机床时搬运设备能耗引起的碳排放,考虑绿色柔性工艺规划的问题符合国家倡导的可持续制造理念。但是,由于需要兼顾经济指标和绿色指标的同时进行工艺规划,与传统柔性工艺规划问题相比,绿色柔性工艺规划问题更加复杂,设计高效的求解方法非常重要。

蜜蜂交配优化(honeybeesmatingoptimization,简称hbmo)算法是一种模仿蜜蜂繁殖行为的群体智能优化算法,由澳大利亚新南威尔士大学的abass教授在2001年提出。hbmo算法始于一个完整的蜂群,蜂群由蜂王、雄蜂和工蜂三种蜜蜂构成,三种类型的蜜蜂在算法寻优过程中的作用各不相同。蜂群中适应度值最优的蜜蜂作为蜂王,进行婚飞,以一定的概率与雄蜂进行婚配,生成幼蜂,工蜂负责对幼蜂进行培育,根据幼蜂适应度值的不同,进一步分化为新的蜂王与雄蜂。传统的蜜蜂交配优化算法在组合优化问题中的应用效果较好,普遍优于遗传算法和粒子群优化算法,但仅适用于单目标优化的情况。

绿色多目标柔性工艺规划问题(greenmulti-objectiveflexibleprocessplanning,gmofpp)就是在存在多个不同加工特征约束的情况下确定工件的工艺路线,该工艺路线需兼顾到效率指标(最大完工时间)和低碳指标(总碳排放量),通过本发明的技术方案可寻到一组均衡解。对于gmofpp问题需同时兼顾以下两个目标:最小化最大完工时间和最小化总碳排放量。

本发明为了解决绿色柔性工艺规划问题,将对基本的蜜蜂交配优化算法进行改进,为了兼顾经济指标和绿色指标,提出了基于pareto优化理念的多目标蜜蜂交配优化算法,提高求解绿色柔性工艺规划问题的计算效率。



技术实现要素:

针对上述情况,为克服现有技术的缺陷,本发明提供一种多目标蜜蜂繁殖优化算法解决柔性工艺规划绿色制造问题的方法,该方法可以解决现有蜜蜂交配优化算法在绿色柔性工艺规划问题应用的不足,解决传统的蜜蜂交配优化算法难以同时优化绿色柔性工艺规划问题多个优化目标的问题。主要改进内容如下:由于多目标优化问题的解是一组解而非一个解,因此设定了蜂王集保存算法寻优过程中找到的非劣解;根据绿色柔性工艺规划问题需要兼顾多个优化目标,设计了基于欧氏距离的雄蜂与蜂王交配概率计算方法;针对绿色工艺规划问题多维度柔性编码方案的特点,设计了基于变邻域搜索的工蜂培育幼蜂策略;基于快速非支配排序策略设计了幼蜂分化策略。

本发明包括一下步骤:

步骤1:参数设置,设置多目标蜜蜂交配优化算法求解绿色柔性工艺规划问题的相关参数,包括:蜂群大小popsize,幼蜂个数broodsize,工蜂个数workernum,蜂王集规模queensize,蜂王受精囊大小spernum,蜂王飞行时的能量阈值t,蜂王飞行时能量和速度的衰减系数α,工蜂培育幼蜂的迭代次数itermax,算法迭代次数genmax;

步骤2:初始化蜂群中的蜜蜂个体,每个蜜蜂代表一个可行的柔性工艺规划方案,蜂王集和雄蜂的初始化,当前迭代次数为gen=0;

步骤3:在蜂王集中随机选择一个蜂王,进行婚飞,并生成幼蜂种群;

步骤4:工蜂培育幼蜂,每一个工蜂都相当于一种局部搜索策略;

步骤5:蜂王集和雄峰种群的更新;将雄峰种群和幼蜂种群合并为一个新种群ptemp;对新种群的个体进行快速非支配排序,构造非支配等级曲面{f1,f2,...,fn};按照等级或拥挤度对蜂王集和雄峰种群进行更新;

步骤6:gen=gen+1,判断是否满足算法终止准则,即算法迭代次数是否达到最大迭代次数genmax,如果gen<genmax,则跳转到步骤3;否则,输出最后得到的蜂王集,算法结束。

优选的,衰减系数0<α<1。

优选的,算法的终止条件为:蜂王集数目达到queensize且gen<genmax,算法终止;否则运行到genmax代,终止算法。

优选的,蜂群数目popsize取值100-400之间;

幼蜂数目broodsize和蜂群数目popsize是一致的;

工蜂数目workersize自定义;

蜂王集数目queensize一般取蜂群数目popsize的10%-20%;

蜂王受精囊spersize取蜂群数目popsize的50%-60%;

蜂王飞行时阈值threshold取0.1%-0.4%;

工蜂培育幼蜂的迭代次数lmax和算法终止迭代次数genmax一致,取值50-200之间。

本发明将传统的蜜蜂繁殖优化算法经过改进将其应用领域扩展到了柔性工艺规划绿色制造问题中,多目标hbmo算法中与传统的hbmo算法比可以同时优化多个目标;设定了蜂王集,蜂王集相当于一种外部档案维护策略。它既可以保存父代种群的非劣解,同时也能参与种群幼蜂的生成;采用了快速非支配排序方法作为多目标hbmo算法中蜂王集和雄蜂种群的更新策略,促进算法的寻优搜索。

附图说明

图1为本发明算法流程图。

图2为本发明问题实例图。

图3为本发明幼蜂生成图一。

图4为本发明幼蜂生成图二。

图5为本发明工蜂特征培育图。

图6为本发明工蜂工艺培育图。

图7为本发明pareto解集的分布图。

具体实施方式

有关本发明的前述及其他技术内容、特点与功效,在以下配合参考附图1至图7对实施例的详细说明中,将可清楚的呈现。以下实施例中所提到的结构内容,均是以说明书附图为参考。

下面将参照附图描述本发明的各示例性的实施例。

步骤1:参数设置,设置多目标hbmo算法求解柔性工艺规划绿色制造问题的相关参数,包括:蜂群数目popsize,幼蜂数目broodsize,工蜂数目workersize,蜂王集数目queensize,蜂王受精囊容量spersize,蜂王飞行时阈值threshold,蜂王能量和速度的衰减系数α,工蜂培育幼蜂的迭代次数lmax。

其中衰减系数0<α<1,一般取0.7~0.9左右,α不宜取的太小,不然受精囊不易填满。

雄峰种群为蜂群数目popsize减去蜂王集数目queensize,令此时的dronesize表示为雄蜂种群。

多目标hbmo算法的终止条件为:蜂王集数目达到queensize且gen<genmax,算法终止;否则运行到genmax代,终止算法。

关于变量取值的说明:蜂群数目popsize自定义,根据问题需要和电脑的处理能力确定,可以取值100-400之间。

幼蜂数目broodsize和蜂群数目popsize是一致的。

工蜂数目workersize自定义,每个工蜂相当于一种局部搜索策略。但是需要注意的是,如果工蜂对幼蜂的特征串进行培育时,培育后的特征串有可能不满足特征的约束关系,此时需要使用约束处理方法将不可行解转换为可行解。对于定义多个工蜂的情况下,需要采用轮盘赌法来选择工蜂。

蜂王集数目queensize一般取蜂群数目的10%-20%,就可以比较出问题解的好坏。

蜂王受精囊spersize取蜂群数目的50%-60%。

蜂王飞行时阈值threshold不宜取太大,一般取0.1%-0.4%之间即可。蜂王能量和速度随机取值。

工蜂培育幼蜂的迭代次数lmax和算法终止迭代次数genmax一致,取值50-200之间,一般取值100。

步骤2:随机初始化蜂群;清空蜂王集,蜂王集和雄蜂的初始化;令gen=0。

蜂王集和雄蜂的初始化:先对当前蜂群进行非支配排序;如果当前种群的非支配解的数目大于蜂王集的数目,则需把非支配解集中所有个体的拥挤距离计算出来,将拥挤距离大的个体放入蜂王集;如果当前种群的非支配解的数目小于蜂王集的数目,则将所有的非支配解直接放入到蜂王集中;从蜂群popsize中去除蜂王集中的所有个体,蜂群去除后的popsize定义为雄峰种群。

图2中给出了一个实例,该实例中变量取值为:蜂群数目为100,幼蜂数目100蜂王集数目为10,蜂王受精囊为60,工蜂数目为2,蜂王飞行时的能量阈值为0.001,蜂王速度和能量的衰减系数为0.9,工蜂培育幼蜂的迭代次数100,算法迭代次数100。其中目标函数两个,对碳排放量函数和时间函数的同时优化。

步骤3:随机选择蜂王集中的一个蜂王,进行婚飞,并生成幼蜂种群。

蜂王婚飞阶段

随机从蜂王集中挑选一只蜂王,清空蜂王的受精囊;随机蜂王的速度(speed)和能量(energy);设a为跟蜂王婚飞成功的雄蜂个数,令a=0;设t为蜂王的飞行次数,令t=0;进行以下操作,如图1算法流程图所示。

a)从雄蜂种群popsize随机选择一只雄蜂。

b)计算该雄蜂与蜂王的交配概率值,概率值公式:d代表的雄蜂,q代表蜂王;speed(t)为蜂王在第t次飞行时的飞行速度;δ(f)为雄蜂与蜂王适应度差值的绝对值,因为在多目标hbmo算法中无法确定每只蜜蜂具体的适应度值,故取分别代表蜂王和雄蜂第i个目标函数值,其中i∈{1,2}。

c)定义0-1之间随机数,用以判断雄蜂是否与蜂王交配,如果雄蜂与蜂王的交配概率值大于该随机数,则进行婚配将雄蜂的基因型存入蜂王的受精囊中,令a=a+1且在雄蜂群popsize中删除该雄蜂;否则,不进行婚配直接进行蜂王速度和能量的更新。

d)蜂王速度和能量的更新;

按公式:speed(t+1)=α×speed(t),energy(t+1)=α×energy(t)对蜂王的速度和能量更新,更新后令t=t+1。

如果此时蜂王的能量energy(t)大于能量阈值threshold且存入受精囊中的雄蜂个数未满时,即energy(t)>threshold且a<spersize,跳转到a)步骤重复循环。当蜂王能量是否小于阈值或蜂王受精囊已满时,婚飞结束,进行下面操作。

幼蜂生成阶段

在蜂王的受精囊中随机选择一只雄蜂的基因型,对蜂王和该基因型使用如图3、图4所示的交叉操作生成幼蜂,直到生成broodsize个幼蜂为止。每只蜜蜂都包含着三个序列,分别是可选特征序列、可选工艺序列、可选机器序列。在这三个序列中工艺序列、机器序列交叉方式相同,故接下来只对特征序列和工艺具体的交叉操作详细介绍如下所示。

图3上的数值表示工件具体的特征加工顺序,比如蜂王的5-4-2-3-1-6-7代表的是特征5-特征4-特征2-特征3-特征1-特征6-特征7的加工顺序;图4上的数值表示的是工件具体的加工工艺号,比如蜂王的1-1-1-1-2-1-1代表的是特征5选择2号加工工艺、特征4选择1号加工工艺、特征2选择1号加工工艺、特征3选择1号加工工艺、特征1选择2号加工工艺、特征1选择1号加工工艺、特征1选择1号加工工艺。

特征序列的交叉操作:在蜂王和雄蜂的特征序列上,随机两个交叉点,如图3所示,将蜂王和雄蜂的两个交叉点的中间特征序列2-3-1、1-3-5,分别复制到幼蜂1和幼蜂2的中间序列。

删掉蜂王中幼蜂2已有的特征数值;删掉雄蜂中幼蜂1已有的特征数值;图3中虚线表示删掉的数值。

将蜂王剩下的特征数值按照从左到又的顺序依次填入幼蜂2中剩余空位;同理将雄蜂剩下的特征数值依次填入幼蜂1中剩余的空位。

可选工艺序列的交叉操作:在蜂王和雄蜂的工艺序列上,随机两个交叉点,如图4所示,将工艺序列分为三部分,分为首部、中部、尾部。交叉点1前面部分为首部,交叉点1到交叉点2之间为中部,交叉点2后面部分为尾部。

如图4所示进行工艺交叉,即两点交叉。蜂王和雄蜂的中部分别复制到幼蜂1和幼蜂2的中部,蜂王的首部、尾部复制到幼蜂2的首部、尾部,雄蜂的首部、尾部复制到幼蜂1的首部、尾部。

步骤4:工蜂培育幼蜂阶段。每通过交叉算子生成一只幼蜂时,都需配备一只工蜂进行培育。针对绿色工艺规划问题多维度柔性编码方案的特点,设计了基于变邻域搜索的工蜂培育幼蜂策略,在多目标hbmo算法中,每一只工蜂都相当于一种局部搜索策略,工蜂培育幼蜂的过程即局部搜索策略对幼蜂更新的过程。图2实例在进行算法验证时使用了两种不同的领域结构(用n1、n2来表示)来构成工蜂,工蜂数目2只,t代表的是当前工蜂培育幼蜂的代数。

n1:随机选择幼蜂特征序列上的一个位置,判断在满足特征约束的情况下可插入该序列的其他位置,将该位置上的数值随机插入满足约束关系下的其他任意位置,如图5所示。

n2:随机选择幼蜂中可选工艺序列、可选加工机器序列的一个位置,根据工艺、加工机器可选情况,如果可选的加工资源只有一种则利用轮盘赌法重新随机确定位置,否则,选择另外一种加工资源替换当前加工资源,如图6所示。

令t=1;

a)利用轮盘赌法随机选择一个工蜂ni对当前幼蜂j进行培育,获得新的幼蜂j'其中i∈{1,2};

b)判断新的幼蜂j′是否可以支配幼蜂j,如果可以,则幼蜂j取代幼蜂j;否则放弃新的幼蜂j′,对幼蜂j进行后续操作。

c)令t=t+1;如果t<lmax,跳转到a)步骤进行重复循环。否则,终止培育过程。

步骤5:当所有的幼蜂生成后,对蜂王集和雄峰种群的进行更新。

将雄峰种群和幼蜂种群合并为一个新种群ptemp;对新种群的个体进行快速非支配排序,构造非支配等级曲面{f1,f2,...,fn}。

蜂王集的更新:将非支配等级曲面的最高级f1级的个体与当前蜂王集的个体合并为一个新种群,找出新种群分所有非支配解。

判断该非支配解的数目是否大于queensize。

如果该非支配解的数目是否大于queensize,则计算出这些非支配解的个体的拥挤距离,将每个个体的拥挤距离,从大到小依次排列,取前queensize个个体存入到蜂王集中。

如果该非支配解的数目是否小于或者等于queensize,则将所有非支配解存入到蜂王集中;将存入到蜂王集的个体从f1中删掉;更新新种群ptemp个体数量。

雄蜂种群的更新:清空雄蜂种群;按等级依次将f1,f2...中的个体存入到雄蜂种群中;当存到fi级别时,存入雄蜂群的个体数目大于dronesize,i∈{1,2,3,...,n},此时计算fi等级每个体的拥挤度;将每个个体的拥挤距离,从大到小依次排列,取前dronesize个个体存入到雄蜂集中。

gen=gen+1;判断是否满足算法终止准则,即算法迭代次数是否达到最大迭代次数genmax;如果gen<genmax,则跳转到步骤3,如算法流程图1所示;否则,输出最后得到的蜂王集,算法结束。

对图2的问题进行求解,以最大完工时间最小和最大碳排放量最小为目标函数,通过传统蜜蜂繁殖优化算法的求解算出,当单目标时间最优时522,单目标碳排放量最优时2349.68。当用改进后的多目标hbmo算法求解算得,存在多个解,在这组解集中仍然可以找到任意单目标优化时最优的解,此外求得的非支配解集不仅可以从客观上反映gmofpp问题多个目标值之间的关系,从而为决策者提供多种备选方案,而且能够降低目标之间相互制约的因素以及决策者主观不确定性因素对于问题求解的影响,对实际生产更具指导意义。针对上述实例,采用本发明的技术方法求得的pareto解集的分布图如图7所示。

本发明提出了一种多目标蜜蜂繁殖优化算法解决柔性工艺规划绿色制造问题的方法,算法中是设立一个蜂王集,相当于一种外部档案维护策略,它既可以保存父代种群的非劣解,同时也能参与种群幼蜂的生成来保存优良个体;采用了非支配排序,对蜂王集和雄蜂种群进行初始化,采用快速非支配排序方法作为多目标hbmo算法中蜂王集和雄蜂种群的更新策略,设计了基于变邻域搜索的工蜂培育幼蜂策略,促进算法的寻优搜索。最后通过实例对提出改良的多目标hbmo算法进行验证,计算结果证明提出的方法是有效的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1