一种基于食物链生态进化算法的产品优化更新方法

文档序号:10471577阅读:553来源:国知局
一种基于食物链生态进化算法的产品优化更新方法
【专利摘要】本发明涉及一种基于食物链生态进化算法的产品优化更新方法,其特征在于,将初始产品表示为初始食物链,其中产品的零件对应食物链的个体,将零件的特征参数表示为编码,编码对应个体的染色体;当产品设计要求发生变化时,对应食物链的环境发生变化,利用食物链生态进化算法使个体迭代进化,直到迭代结束,对染色体进行反向翻译,获得符合设计要求的产品的特征参数。与现有技术相比,本发明克服了现有产品静态模型无法实现产品的自组织智慧进化的缺陷,采用的食物链生态进化算法包含遗传算法自然选择和目标优化的优点,且多种群协同进化,提高产品更新速度,实现复杂产品在设计要求变化时的自动优化更新。
【专利说明】
-种基于食物链生态进化算法的产品优化更新方法
技术领域
[0001] 本发明设及一种产品设计方法,尤其是设及一种基于食物链生态进化算法的产品 优化更新方法。
【背景技术】
[0002] 从计算机出现开始,计算机已成为各领域产品设计计算的重要工具。1963年,自美 国学者Slither iand首次提出计算机辅助设计(CAD)的概念后,计算机和CAD技术发展迅速, 成功的应用到产品设计、产品制造等各个方面。产品的智慧进化过程并未完善。产品特别是 复杂产品,由于其内部的复杂性,其设计变更并非一成不变,产品的静态模型无法实现产品 的自组织智慧进化,导致了产品的静态模型无法完全使用,运为产品设计人员带来成本和 工作量的浪费和增加。其创造性的设计方案的实施收到了很大影响。

【发明内容】

[0003] 本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种能实现产品自 组织智慧进化的基于食物链生态进化算法的产品优化更新方法。
[0004] 本发明的目的可W通过W下技术方案来实现:
[0005] -种基于食物链生态进化算法的产品优化更新方法,其特征在于,将初始产品表 示为初始食物链,其中产品的零件对应食物链的个体,将零件的特征参数表示为编码,编码 对应个体的染色体;当产品设计要求发生变化时,对应食物链的环境发生变化,利用食物链 生态进化算法使个体迭代进化,直到迭代结束,对染色体进行反向翻译,获得符合设计要求 的产品的特征参数。
[0006] 该方法具体包括W下步骤:
[0007] S1,将初始产品表示为初始食物链;
[000引S2,变更初始产品的零件特征参数,并对应变更初始食物链中个体的染色体编码;
[0009] S3,利用食物链生态进化算法使个体迭代进化,直到迭代结束;
[0010] S4,对染色体进行反向翻译,获得符合设计要求的产品的特征参数。
[0011] 所述的编码为二进制编码。
[0012] 所述的零件的特征参数包括零件是否可更改、材质、形状W及与形状相关的尺寸。
[0013] 所述的食物链生态进化算法中,个体对环境的适应度与待优化问题的目标函数线 性相关。
[0014] 所述的个体对环境的适应度通过式(a)或式(b)求解:
[0017] 其中Fitness(*)为个体对环境的适应度,Cmax为2%η为编码长度,Gf(x)为待优化 问题的目标函数。
[0018] 与现有技术相比,本发明具有W下优点:
[0019] (1)将初始产品表示为初始食物链,利用食物链生态进化算法使个体迭代进化,获 得符合设计要求的产品的特征参数,克服了现有产品的静态模型无法实现产品的自组织智 慧进化的缺陷,实现产品在设计要求变化时的自动优化更新。
[0020] (2)食物链生态进化算法既包含遗传算法自然选择和目标优化的优点,也包含多 种群协同进化,克服了单种群遗传算法的收敛慢等缺陷,提高产品更新速度,适用于复杂产 品的优化更新。
[0021] (3)采用二进制编码表示产品特征参数,可解决复杂产品等非线性离散型结构优 化问题。
【附图说明】
[0022] 图1为本发明方法实现流程图;
[0023] 图2为本发明食物链生态进化算法流程图;
[0024] 图3为本发明实施例2系统状态图。
【具体实施方式】
[0025] 下面结合附图和具体实施例对本发明进行详细说明。本实施例W本发明技术方案 为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于 下述的实施例。
[00%] 实施例1
[0027]如图1所示的一种基于食物链生态进化算法的产品优化更新方法,将初始产品表 示为初始食物链,其中产品的零件对应食物链的个体,将零件的特征参数表示为二进制编 码,编码对应个体的染色体,零件的特征参数包括零件是否可更改、材质、形状W及与形状 相关的尺寸;当产品设计要求发生变化时,对应食物链的环境发生变化,利用食物链生态进 化算法使个体迭代进化,直到迭代结束,对染色体进行反向翻译,获得符合设计要求的产品 的特征参数。
[00%]该方法具体包括W下步骤:
[0029] S1,将初始产品表示为初始食物链;
[0030] S2,变更初始产品的零件特征参数,并对应变更初始食物链中个体的染色体编码; [0031 ] S3,利用食物链生态进化算法使个体迭代进化,直到迭代结束;
[0032] S4,对染色体进行反向翻译,获得符合设计要求的产品的特征参数。
[0033] 食物链生态进化算法中,个体对环境的适应度与待优化问题的目标函数线性相 关,个体对环境的适应度通过式(a)或式(b)求解:
[0034] )
[0035]
[0036] 其中Fitness(*)为个体对环境的适应度,Cmax为2%,代表参数编码的数量的最大 值,η为编码的长度(编码过程在下方表1、表2中,先给出编码过程,再给出对适应度的求 解),Gf (X)为待优化问题的目标函数。
[0037] 食物链生态进化算法化EAFC)是W多种群相互竞争机制为基础的进化算法,它将 所有染色体初始化组成一条初始食物链,食物链上每个染色体对应为待优化问题的一个候 选解,对环境的适应性对应为待优化问题的适应度函数值,借助于模仿生态系统食物链上 的多种群染色体自适应进化思想,实现待优化问题的最优化。它既包含遗传算法自然选择 和目标优化的优点,也包含多种群协同进化,从而降低了单种群遗传算法的收敛慢等缺陷。
[0038] 食物链生态进化算法在求解待优化问题时,首先从初始食物链出发,初始化待求 解问题的可行解,各类种群在各自的生存环境中根据环境多模式纵向并行进化,种群适应 度沿着食物链逐级提高。同时,种群间通过多模式调整达到横向进化,从而实现了种群个体 之间、种群与种群之间信息能量交换和种群结构调整,直到算法迭代结束。算法迭代使得种 群品质不断提高,直到获得满足条件的全局最优解。
[0039] 食物链生态进化算法步骤如下:
[0040] (1)初始化产生初始种群。
[0041] (2)多模式进化:计算食物链上个体适应度函数值,根据适应值的大小将食物链排 序并划分为高、中、低等Ξ个种群进化链,各种群按照各自的模式独立进化。
[0042] (3)对各种群进行模式调整,将较优个体移动到高一级模式中,高级种群中的个体 对低级种群个体进行替换。
[0043] (4)判断是否满足收敛条件,满足条件,输出结果,停止计算;否则,重复步骤2)、 3)、4)。
[0044] 食物链生态进化算法流程图如图2所示。
[0045] 食物链生态进化算法的具体实现如下:
[0046] (1)定义目标函数
[0047] 食物链生态进化算法的目标函数为:
[004引 Gf(x)
[0049] 其中,约束条件:
[0050] H(x)=0
[0051] 对于任意解,若H(x) = 0,则该解即为可行变量,可W根据食物链生态进化算法的 目标函数计算其f(x)值。若对于任意解H(x)^0,则该个体不是可行解。约束条件表达了目 标函数解的取值范围。
[0052] (2)生成食物链编码
[0053] 食物链生态进化算法通过合理的编码来把待优化问题的可行解转化到食物链生 态进化算法可W处理的解空间中,目前,主要的编码方法有:多参数编码方法、二级制编码 方法、格雷码、符号编码方法等。根据遗传算法,本发明采用二进制编码,可解决复杂产品等 非线性离散型结构优化问题。
[0054] 首先,初始化待优化问题的捜索空间NXL,N是指初始食物链上的染色体个数,L是 指待优化问题解的维度。食物链上的染色体表示为化(i),其中i代表染色体代数,k表示染 色体。
[0055] Uk(i) = [Uki(i),Uk2(i),...UkL(i)] ke[l,N]
[0056] Ukj(i)=rand〇j je[l,L]
[0化7] 其中,rand()表示随机生成的解。
[0058] 由于食物链进化算法是按照能量从低到高多级别进化,各个模式种群规模的生成 方式可表示为:
[0059] N的1 = 3N% ( 1 )
[0060] 式中,0表示食物链上低级种群向高级种群的能量传递效率。
[0061 ] W -木质长方体零件A为例,根据参数表进行编码,如表1:
[0062] 表1编码翻译表
[0063]
[0064] 按照给出的编码翻译表1对平板进行编码,可W将编码转变为二进制形式,则产品 编码过程如表2:
[00化]表2编码过程 [0066]
[0067]
[0068] 根据表2可知,该零件在遗传操作中使用结构编码为01 I 011 01 11010 I 1111 I 0101。 进化结束后,通过对产品的结构编码进行反向翻译,可还原产品个体的结构信息。
[0069] (3)计算适应度函数
[0070] 适应度函数是评价种群个体是否为较优个体的评价标准,食物链进化算法在选择 适应度函数是,需要基于待优化问题的目标函数。根据待优化问题的目标函数模型的变化 来选择适应度函数。常见的适应度函数有两种:
[0071 ]若待求解问题为目标函数最小求解问题,则:
[0075] 计算个体的适应度,根据适应度值大小排序并划分划分高、中、低Ξ种进化模式, 各模式生成相应数量的个体。从而将食物链划分成高、中、低等层次差异的进化链。
[0076] (4)多模式进化
[0077] 生物链生态进化算法本质上是基于遗传算法的优化算法。优化的具体步骤为:初 始化食物链,随机生成若干候选解。根据种群选择、交叉、变异等进化策略在当前状态产生 下一代较优解。通过多种群协同进化等策略调整候选解和较优解。重复该优化过程,直至满 足收敛条件,算法迭代结束,输出最优结果。
[0078] (5)进化后的模式调整
[0079] 物链生态进化算法遵从生物中"适者生存,不适者淘汰"的竞争准则,高级物种的 进化对低级物种的进化起到了促进作用。其模式调整的思想为:高级种群调整低一级种群 个体,种群间信息结构交叉重组,运促使一个局部较优的解向更优的局部较优解迁移。
[0080] 食物链生态进化算法的模式调整依据是调整度,个体X对个体Y的调整度定义为: [0081 ] Ajust (X,y) = (?* (fi t (X) - fi t (y)) + (I -巧 / S i ni (X,y)
[0082] 5山山7)=乂,¥相同编码个数/染色体长度
[0083] 其中3表示为X,Y的相似度。算法每迭代一次高级种群对低一级种群调整,按照调 整度排序,若个体调整度小于1,低一级种群个体X则被调整替换为高一级种群Y。
[0084] 实施例2
[0085] W发动机的设计过程为例,发动机由气缸体、活塞、连杆等组成,将各组成部分作 为食物链上的个体(PU),W气缸体为例,将气缸体的内径D、冲程J、气缸体结构是否可更改、 材质、外形表示为二进制编码即染色体编码。
[0086] 当气缸设计要求发生变化,即进气量由现有减小为2.化,则表示总体环境发生改 变。遍历所有行为变量,发现关系B13(功能:排气口开启,进气口关闭,排放废气。排出气体 体积即排量:A^L = v)与排量直接相关,B13作用于气缸体PU1,确定气缸体为最先受到环境影 响的个体,PU1产生食物。由排量计算公式:化=0.7854蝴巧J*N/1000可知,现有排量接近于 3.0L,W更改气缸结构为例,更改气缸内径D、冲程J等W适应环境变化。此时系统状态如图3 所示。
[0087] 根据食物链生态进化算法,气缸进化过程如下:
[0088] a)初始化参数,设置适应度函数:确定种群规模N=6,交叉概率化= 0.5,变异概率 化=0.3和进化代数计数器t = 0。适应度函数为:
[0089] Fitness(Gf(x))=abs(化/1000-2.0)
[0090] 设置终止进化准则迭代次数n<100或适应度Fitness(GfU)) < 丫日,此时,丫越小, 越符合环境要求。其中丫 0为未更改前对系统的适应度,未更改前,丫 0 = 0.0155。
[0091] b)生成初始化种群并进行产品编码:
[0092] 结合如表3所示的编码翻译表对产品个体进行编码,并将其转化为二进制形式。
[0093] 表3气缸体编码翻译表
[0094]
[00951
[0096] 根据式(1)设置林德曼生态效率值构造多模式进化链,N= 1,? ==0.5。计算各种群适 应度,根据适应度大小排序,生成多模式进化链。见表4:
[0097] 表4多模式进化链 rnnpRi
[0099] ~C)多种群模式进化
[0100] 计算食物链上个体适应度函数值,根据适应值的大小将食物链划分为高、中、低等 Ξ个种群进化链,各种群独立进化。
[0101] (1)选择
[0102] 采取选择概率P表示个体被选中的概率,即个体适应度函数值越低,被选中概率越 高。选择概率的实现方式如下:
[0103]
[0104] Pi即为第i个体的选择概率。或者采用轮盘赌选择算法随机选择。
[010引(2)巧叉、变异。
[0106] 实现简单交叉:首先对群体进行随机配对,然后在配对个体中随机设定交叉点,配 对个体交换彼此信息。
[0107] 设定变异概率为0.3,因此,变异个体为6*0.3 = 1.8,四舍五入取2,即两个个体中 会发生变异。随机选取两个个体进行变异。
[0108] 多模式进化如表5所示,个体编码中,每一个分段代表一个参数值,参见表1、表2。
[0109] 表5种群选择、交叉、编译过程
[0110]
[0111]
[0112] d)模式调整。
[0113] 计算Ml模式中前2位的个体对于M2中的个体相似度及调整度,依据调整度排序顺 序对Ml进行调整,调整度小于1的个体将被M2中个体调整并替换。
[0114] 计算M2模式中前1位的个体对于M3中的个体相似度及调整度,依据调整度排序顺 序对M2进行调整,调整度小于1的个体将被M3中个体调整并替换。
[011引 e)终止检验。
[0116]对新一代群体自c)起重新进行个体评价、选择、交叉,再次生成下一代群体,直至 群体中有个体的适应度达到终止约束条件,或迭代次数达到100次。在本实施例中,在第Ξ 次迭代,即第4次群体中,产生个体 11|01|01|01011111 0100 01010101 01011000 000100101100,它的适应度丫 =0.0026含丫 0,迭代终止。此时,个体为外径95、壁厚5、内径 85、冲程88、高300。设置个体为已更改,不可二次更改。
【主权项】
1. 一种基于食物链生态进化算法的产品优化更新方法,其特征在于,将初始产品表示 为初始食物链,其中产品的零件对应食物链的个体,将零件的特征参数表示为编码,编码对 应个体的染色体;当产品设计要求发生变化时,对应食物链的环境发生变化,利用食物链生 态进化算法使个体迭代进化,直到迭代结束,对染色体进行反向翻译,获得符合设计要求的 产品的特征参数。2. 根据权利要求1所述的一种基于食物链生态进化算法的产品优化更新方法,其特征 在于,该方法具体包括以下步骤: S1,将初始产品表示为初始食物链; S2,变更初始产品的零件特征参数,并对应变更初始食物链中个体的染色体编码; S3,利用食物链生态进化算法使个体迭代进化,直到迭代结束; S4,对染色体进行反向翻译,获得符合设计要求的产品的特征参数。3. 根据权利要求1所述的一种基于食物链生态进化算法的产品优化更新方法,其特征 在于,所述的编码为二进制编码。4. 根据权利要求1所述的一种基于食物链生态进化算法的产品优化更新方法,其特征 在于,所述的零件的特征参数包括零件是否可更改、材质、形状以及与形状相关的尺寸。5. 根据权利要求1所述的一种基于食物链生态进化算法的产品优化更新方法,其特征 在于,所述的食物链生态进化算法中,个体对环境的适应度与待优化问题的目标函数线性 相关。6. 根据权利要求4所述的一种基于食物链生态进化算法的产品优化更新方法,其特征 在于,所述的个体对环境的适应度通过式(a)或式(b)求解:其中Fitness(*)为个体对环境的适应度,Cma^2n,n为编码长度,Gf(x)为待优化问题的 目标函数。
【文档编号】G06N3/12GK105825291SQ201610132863
【公开日】2016年8月3日
【申请日】2016年3月9日
【发明人】郝泳涛, 张伟
【申请人】同济大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1