基于归一化实数编码遗传算法的圆锥度误差计算
1 引言
圆锥配合具有对中性、密封性等优点,在机械产品中应用较广。但是,圆锥度误差按最小区域法进行评定,其数学模型非常复杂,难以用传统的优化算法进行求解。而遗传算法在处理这类复杂的非线性优化问题具有独到之处,且算法容易在计算机上实现。
传统的遗传算法采用的是二进制编码,虽然遗传操作简单,但对于实数空间的寻优,存在计算精度与编码长度、计算工作量之间的矛盾。为此,提出了归一化实数值编码的遗传算法。
2 归一化实数编码的遗传算法
2.1 归一化实数编码的定义
参照二进制编码遗传算法的基本定义,给出归一化实数编码的定义。
设优化问题的一般形式为:
任何一个复杂的连续空间的寻优问题,其解的可行域都可以映射到[0,1]的范围。
定义1 归一化实数值编码是在[0,1]的区间内进行编码。它是从二进制编码演化而来的,其基因位为小数位,有(0~9)十种可能取值。
由定义1可知,归一化实数值编码遗传算法的实质是小数编码。
2.2 交叉操作
遗传算法的有效性主要来自于选择和交叉,尤其是交叉算子,它是模式生成的主要手段,在遗传算法中起核心作用。常用的交叉算子有:一点交叉,两点交叉,多点交叉、启发式交叉、顺序交叉、混合交叉等,但用得较多的还是一点交叉。下面以一点交叉为例,说明归一化实数值编码交叉算子的操作。
一点交叉是在被选择进行交叉的两个个体中随机设定一个交叉点,然后在该点的后面两个个体的结构进行交换,从而形成两个新个体,如图1所示。
在图1中,交叉点设在第3个和第4个基因位之间,交叉操作后,位于该交叉点后面的基因位进行了互换,从而生成了两个新的个体A’、B’。由于交叉点是随机设定的,所以个体的串长为L时,则有L-1各个可能的交叉点,所以一点交叉可得到L-1种可能的交叉结果。
2.3 变异操作
对于归一化实数编码的遗传算法,由于是基于字符集{0,1,2,3,4,5,6,7,8,9}的编码,因此其变异操作并不像二进制编码的遗传算法那样简单。其基本过程如下:
(1)种群中按变异概率pm随机选择参与变异的个体。
(2)在被选择的串长为L的个体上随机确定变异的基因位,然后在字符集{0,1,2,3,4,5,6,7,8,9}中除本基因位值外的其它9个字符中,随机选择一个取代该基因位的原来值。因此,这种变异操作在基因位上有9个不同的基因变异值的可能。
2.4 遗传算法控制参数的选取
相关文章
- 2024-07-31铁路客车提速轴承外圈非基准端面挡边平行度测量仪的研制
- 2022-04-27监控摄像机日夜及彩色黑白转换两用简析
- 2023-03-02智能化色谱分析软件的研究与应用探讨
- 2024-02-26实现同一分析周期内两流路并行分析的技术改造
- 2024-07-09多CCD拼接相机中图像传感器不均匀性校正



请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。