基于遗传算法的产品基因重组设计

2016-03-07 02:39:14黄菊
电脑与电信 2016年12期
关键词:适应度算子交叉

黄菊

(南通科技职业学院,江苏 南通 226007)

基于遗传算法的产品基因重组设计

黄菊

(南通科技职业学院,江苏 南通 226007)

针对客户定制产品设计灵活性差的问题,提出一种基于遗传算法的产品基因重组的设计方法。在产品的重组设计中引入基因工程,利用遗传算法对现有的产品设计方案进行优化,以满足制造业客户定制产品的多样化需求,实现客户定制产品的智能设计。以某机械制造企业的数控机床为例,完成了遗传算法的关键技术:适应度函数、选择算子、交叉算子的设计开发,验证了该方法的可行性和有效性。

遗传算法;基因重组;智能设计

1 引言

随着经济全球化和产品多样化的发展,客户需求呈现出多样化和个性化的特点。设计一种有效、科学的产品设计方法,既能降低产品的生产成本,又能实现客户定制产品的快速开发,成为智能制造领域研究的热点问题[1]。

客户定制产品的概念最初提出于20世纪50年代,当时的客户定制产品仅针对相同类型的产品,远不能达到设计不同类型产品的需求。随着信息技术的发展和各类新技术的应用,推动了客户定制产品设计的进一步发展[2]。许多学者围绕客户定制产品的设计与优化,进行了大量的研究,常见的客户定制产品快速开发方法主要有产品族设计、适应性设计、模块化设计、变型设计等方法。对产品的功能及设计知识的建模却并不多见。而产品设计的复杂性和相关创意性设计知识难以总结正是复杂产品设计方案的难点所在。

在此背景下智能设计开始逐步应用到产品设计领域,人工智能算法也加入其中来帮助解决产品的智能设计问题,比较常用的有遗传算法,通过模拟进化特性来解决产品方案的设计问题[3]。由于产品基因工程中的重组操作与遗传算法中的选择、交叉与变异运算类似,因此在前人研究的基础上,本文提出一种基于遗传算法的产品基因重组的设计方法。借鉴基因工程思想,利用遗传算法对现有产品基因进行重组,通过对遗传算法的适应度函数、选择算子、交叉算子的设计开发,获得满足用户需求的客户定制产品。

2 产品智能设计框架的研究

2.1 产品智能设计工作流程

产品智能设计分为三个过程,首先获取产品基因,这是整个设计工作的基础。将机械产品设计任务进行分解,对分解后的各个子任务进行参数编码和信息表示构成产品基因,对提取出的产品基因编码存储建立产品基因库;然后通过建立适应度函数、选择、交叉等遗传算法操作对现有产品基因组进行重组操作,以获取新的产品基因组;最后根据用户的输入参数从重组操作得到的产品基因库中搜索到相似匹配的产品设计方案,对所选方案的物理参数进行修改后得出满足客户需求的产品设计方案输出。

2.2 产品基因重组

产品基因重组是产品智能设计的重要环节也是最关键的环节。为了获得满足客户需求的新产品,需要对获取到的产品基因进行重组操作。实现原理是根据客户需求,对产品基因库中的现有基因、基因组进行子基因或子基因组的交叉,以获得新的产品基因库。

2.3 遗传算法

遗传算法来源于生物界的适者生存规律,是一种应用于人工智能领域解决全局优化的随机化搜索算法。遗传算法将要解决的问题模拟成一个生物进化的过程,以具有问题可能潜在解集的一个种群为开端。首先将种群的表现映射成相应的基因。然后依据遗传学的交叉和变异理论产生下一代的解,按照个体的适应度选择更适合问题解的个体,不断迭代,进化N代后最终在整个遗传过程结束后,得到问题解的种群。

遗传算法设计过程包括编码、初始种群的选取、适应度函数的确定、遗传操作(选择、交叉、变异)、设置运行参数和算法终止规则这几个过程。

2.4 基于遗传算法的产品基因重组设计

产品基因工程中的重组操作与遗传算法中的选择、交叉与变异操作功能类似,因此选用遗传算法来对机械产品设计过程中的产品基因重组进行操作,以最大化地满足客户的个性化需求。考虑到产品基因的变异会导致结构上的不兼容,且具体实施时操作难度较大,而实际效果较小,故本文在产品基因重组操作中舍弃了传统遗传算法中的变异算子,保留了选择算子和交叉算子。

(1)选择算子设计

在遗传算法中,用适应度来衡量个体的好坏,选择操作是建立在个体的适应度评价的基础上的,是确定哪些个体被遗传到后代的一种优化算法。在产品基因的重组中,可以利用选择算子找出适应度高的产品基因就可能是最符合客户需求的产品基因,将其转化为产品设计方案提供给客户,或找出多个适应度高的产品基因组,经过交叉重组得到最优产品设计方案提供给客户。

目前有多种选择方法,各有其优缺点。本文根据产品基因组的表达方式,选取了联赛选择法,其原理为:先从当前群体中随机选取两个个体,再以事先定义的概率p选择适应度较高的个体,以概率1-p选择适应度较低的个体。这种选择方法是利用个体适应度的大小进行选取。在选择过程中只比较适应度的大小并无具体的算术运算。

(2)交叉算子设计

交叉来源于生物界的种群间的交配,被用来产生新个体,是遗传算法的核心操作。产品基因组的交叉操作与遗传算法类似,按照一定的交叉原则和概率对两个或两个以上的父代个体的某个基因或某些基因组重组以得到新的子代基因组的过程。为了保证交叉操作后产生的新基因组基本不会发生结构不兼容的问题,交叉算子的确定与前期种群的编码方式应一致。

根据客户需求与现有基因组功能的不同,交叉操作分为单点交叉和两点交叉。在客户需求与现有产品属性相差较大时,使用两点交叉。两个产品基因组交换一个或多个具有相同编码方式的子基因组,以得到功能大幅度改变的新基因组。而在对现有产品基础上进行小规模改变时,使用单点交叉。两个产品基因组交换一个或多个产品基因,以实现结构上的小幅度改变。

交叉操作执行的次数受交叉概率pc的影响,当交叉概率pc设定较大时,遗传算法在区域的搜索能力会变强,但是群体里的优秀基因也可能会随时被破坏。当交叉概率pc取值很小时,遗传算法搜索速度又会变慢。权衡利弊,本文中交叉概率pc的取值范围在0.3~0.8之间。

(3)适应度函数的确定

遗传算法中,用适应度函数值来评价个体对环境的适应程度。适应度高的个体遗传到子代的概率就更大,相反具有较低适应度的个体被遗传的概率也相对更小。客户定制产品的设计过程是一个多目标优化的过程,设计者既要考虑如何设计出令用户满意的产品,又要尽可能降低制造成本。运用适应度函数值来评价产品设计方案。将评价标准作为适应度函数,评估方案的优良。从技术指标和经济指标两个方面,按照客户所选择的设计要求对设计出的产品方案进行整体评价。

3 实例验证

本文在进行机械产品的智能化设计时,在产品基因重组操作中,提出用遗传算法对设计方案进行优化。下面以数控机床为例,说明具体实现方式。

3.1 产品基因重组过程模型

使用遗传算法对产品基因进行智能重组的过程模型,如下图1所示。

图1 产品基因重组过程模型

3.2 产品基因重组设计过程

前面分析了通过遗传算法进行客户定制产品重组所需的不同操作和适应度函数的建立,下面将给出使用遗传算法对产品基因进行智能重组的设计过程。

(1)适应度函数的确定

将评价标准作为适应度函数,从技术指标和经济指标两个方面对设计方案进行评价。经济指标主要考虑价格要求,技术指标主要从占地面积、功率大小、精确度和功能复杂性这几个方面进行评价。

对技术评价和经济评价两方面采取权重系数法对产品的设计方案进行优化,分别给予不同的权重系数,累加起来形成一个总的适应度作为产品基因组的最终适应度。

定义产品方案集合A,A={a1,a2,a3,…,an},其中设计方案评价参数包括:技术参数ti,ti={ti1,ti2,ti3,…,tin},价格参数vi:vi={vi1,vi2,vi3,…,vin}

定义技术参数权重为P:P={ p1,p2,p3,…,pn},价格参数权重为Q:Q={q ,q,q,…,q}。

计算产品设计方案的适应度,如下式所示:

代入实际的技术参数和经济参数数值,计算出有效的适应度值。

(2)选择算子的设计

采取联赛选择法,过程如下:

①当代种群中随机选取X个个体,比较其适应度大小,将适应度最高的个体进行遗传。

②将①描述的过程重复Y次,就可以得到Y个个体的种群。

具体执行过程如下:

do

{

x1=rand(maxp);

x2=rand(maxp);

if(Fitness(oldp(x1)>Fitness(oldp(x2))))

newp(x)=oldp(x1);

else

newp(x)=oldp(x2);

i++;

}while(i<=Fitness_threshold);

(3)交叉算子的设计

交叉算子的设计过程如下:

①个体基因不同时,将对应位置基因以交叉概率pc进行交换,下一层次的结构随之交换。

②个体基因相同时,最高层次基因相同则不做交叉操作,检查两个个体子基因,如果不同,执行①操作,否则执行②操作。

运用遗传算法实现产品的基因重组,很大程度上简化了人工设计的过程。但是在遗传算法中也很难生成机械产品的部件尺寸的详细信息,后期需要对形成的方案进一步细化。

4 结论

本文针对客户定制产品设计灵活性差的问题,提出一种基于遗传算法的产品基因重组的设计方法。在产品的重组设计中引入基因工程,利用遗传算法对现有的产品设计方案进行优化,以满足制造业客户定制产品的多样化需求,实现客户定制产品的智能设计。以某机械制造企业的数控机床为例,完成了遗传算法的关键技术:适应度函数、选择算子、交叉算子的设计开发,验证了该方法的可行性和有效性。

但是运用遗传算法所设计出的机械产品方案并不详细,仅仅包含大概的设计部件并没有详细参数,后期准备继续研究实例推理,运用实例推理方法细化遗传算法设计出的机械产品方案。

[1]张雷,彭宏伟,刘志峰,等.绿色产品概念设计中的知识重用[J].机械工程学报,2013,49(7):72-79.

[2]祁国宁,顾新建,杨青海等.大批量定制原理及关键技术研究[J].计算机集成制造系统,2003,9(9):776-783.

[3]金群,李欣然等.遗传算法参数设置及其在负荷建模中的应用[J].电力自动化设备,2006,26(5):23-27.

[4]承莉莉.复杂机械产品概念设计中实例推理技术的研究与应用[D].南京航空航天大学,2011:1-77.

[5]王猛.基于改进遗传算法的网格资源调度策略算法研究[J].电脑与电信,2010(5):35-37.

Product Gene Recombination Design Based on GeneticAlgorithm

Huang Ju
(Nantong Science and Technology CareerAcademy,Nantong 226007,Jiangsu)

Aiming at the problem of poor design flexibility of customized product,a genetic algorithm based on genetic algorithm is proposed.The recombinant gene engineering is introduced in product design.The existing product design schemes are optimized by genetic algorithm,to meet with the diverse needs of customized products and realize the intelligent design.Taking the numerical control machine of a mechanical manufacturing enterprise as an example,the key technologies of genetic algorithm which are the fitness function,selection operator and crossover operator are designed,verifying the feasibility and effectiveness of the method.

genetic algorithm;gene recombination;intelligent design

TP311.52

A

1008-6609(2016)12-0053-03

黄菊(1981-),女,江苏南通人,硕士,讲师,研究方向为计算机软件与理论、物联网。

猜你喜欢
适应度算子交叉
改进的自适应复制、交叉和突变遗传算法
计算机仿真(2022年8期)2022-09-28 09:53:02
拟微分算子在Hp(ω)上的有界性
各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用
应用数学(2020年2期)2020-06-24 06:02:44
“六法”巧解分式方程
一类Markov模算子半群与相应的算子值Dirichlet型刻画
Roper-Suffridge延拓算子与Loewner链
连一连
基于空调导风板成型工艺的Kriging模型适应度研究
中国塑料(2016年11期)2016-04-16 05:26:02
基于Fast-ICA的Wigner-Ville分布交叉项消除方法
计算机工程(2015年8期)2015-07-03 12:19:54
双线性时频分布交叉项提取及损伤识别应用