涡街流量计数字信号处理技术的探讨 八十一
遗传算法足具有“生成+检测”迭代过程的搜索算法,具有很强的适应性。
它的基本处理流程如图5—2所示,从图中可以看出,遗传算法运行过程为一个迭代过程,其基本步骤如下:(1)选择编码策略,把参数转换为位串X;(2)定义适应值函数f(x);(3)选择群体大小玎、交叉概率£、变异概率巴等遗传参数,初始化群体:(4)计算群体中位串的适应值f(x),位串解码后,解越好,值越大;(5)由选择、交叉和变异算子作用于群体,形成下一代群体:(6)判断是否满足某一指标或规定迭代次数,不满足,返回步骤(4)。
由图5.2工作流程可知,新群体是通过旧群体应用遗传算子形成的,这些遗传算子,如选择、交叉和变异,分别模拟自然选择和自然遗传过程中发生的繁殖、交配和突变等现象。
1.选择(Selection)
选择是遗传算法中最主要的机制,有时也称为繁殖、复制,是影响遗传算法性能最主要的因素。通过使用选择技术把染色体新个体从老个体中以一定比例选择,随机地抽取出来。选择依据为染色体的适应值大小,适应值大的染色体产生后代多,而适应值小的染色体产生后代少,甚至没有后代。这就是“自然选择、适者生存”。
选择压(Selective pressure)描述了选择机制挑选种群中不同个体做母体的概率大小的差异。选择压过大,会造成几个较好可行解(不一定是近似全局最优解)迅速抢占了整个种群:选择压过小,则会使算法呈现出纯粹的随机徘徊行为。秩选择、适应值函数的尺度变换均是为了克服经典的比例选择所造成的选择压过大或过小而设计的。杰出者选择则通过无条件地保留每代种群中最优者而克服了比例选择下遗传算法不能依概率收敛到全局最优解的问题。然而正如De Jong指出的,现有的遗传算法理论无法对这些现象做出完善的解释和提供指导。
2.交叉(Crossover)
以上的选择算子没有建立新解,即没有产生新的染色体。没有发展,也就不会有进步。虽然群体很快就会被初始群体中最优个体所充满,但并不一定最优。
3.变异(Mutation)
遗传算法仅依赖于选择和交叉运算会出现问题,可能会发生丢失解的现象。例如,当群体中所有串同一位置全为0时,则此处为l的可行解则丢失。变异算子解决了这个问题。变异算子把群体中每一个体每位依一定概率进行取反运算,即由0一l或l寸0,则避免丢失解。
流量计