遗传算法(Genetic Algorithm,GA)
模仿生物的遗传进化原理,通过选择(Selection)、交叉(Crossover)与变异(Mutation)等操作机制,使种群中个体的适应度(Fitness)不断提高。
核心思想:物竞天择,适者生存(“天”——适应度函数,Fitness Function)

个体:个体空间的元素称为个体,它是染色体带有特征的实体。
种群:称个体空间 S 中 N 个个体组成的一个子集(个体允许重复)称为一个种群,记为:
A = (A1,A2,…,An),其中Aj ( j=1,2,…,N ) ∈ S,N称为种群规模。
适应度:在研究自然界中生物的遗传和进化现象时,生物学家使用适应度这个术语来度量某个物种对于生存环境的适应程度。对生存环境适应程度较高的物种将获得更多的繁殖机会,而对生存环境适应程度较低的物种,其繁殖机会就会相对较少,甚至逐渐灭绝。在遗传算法中,一般通过适应度函数来衡量某一个体的适应度高低。目标函数。
编码:将一个待求解的问题的实际可行解从其解空间转换到遗传算法所能处理的搜索空间(即个体空间)的过程,就称为编码。
解码:解码是将遗传算法所搜索到的最优个体的染色体转换成待求解问题的实际最优解的过程,即编码的逆过程。
选择操作:根据各个个体的适应度,按照一定的规则,从第t代群体P(t)中选择出一些优良的个体遗传到下一代群体P(t+1)中。一般地,选择操作通过选择算子进行。
交叉操作:将群体P(t)内的各个个体随机搭配成对,对每一对个体,以某个概率(称为交叉概率,Crossover Rate)遵循某一种规则交换它们之间的部分染色体。
变异操作:对群体P(t)中的每一个个体,以某一概率(称为变异概率,Mutation Rate)改变某一个或某一些基因座上的基因值为其他的等位基因。

基本遗传算法的组成
1.编解码
2.适应度函数
3.遗传运算(选择、交叉和变异)

应用步骤

(1)确定决策变量及各种约束条件,即确定出个体的表现型X和问题的解空间。
(2)建立优化模型,确定出目标函数的类型及其数学描述形式或量化方法。
(3)确定表示可行解的染色体编码方法,即确定出个体的基因型X*,也是遗传算法的搜索空间。

编码是遗传算法解决问题的先决条件和关键步骤:
①不仅决定个体基因的排列形式(从而决定选择与繁殖等操作的作用方式),而且也决定从搜索空间的基因型到解空间的表现型的解码方式(从而决定对GA所获解的翻译与理解);
②决定GA搜索的困难度与复杂性;
③决定对问题的求解精度。
常用的遗传算法编码方法主要有:二进制编码、浮点数编码等。可以证明,二进制编码比浮点数编码搜索能力强,但浮点数编码比二进制编码在变异操作上能够保持更好的种群多样性。

标准遗传算法多采用二进制编码方法,将决策变量用二进制字符串表示,二进制编码串的长度由所求精度决定。然后将各决策变量的二进制编码串连接在一起,构成一个染色体。

例如:变量x的定义域为[-2,3],要求其精度为10-5,则需要将[-2, 3]分成至少500000个等长小区域,而每个小区域用一个二进制串表示。于是有,2 L = 500 000,即 log2 500000 = 18.93
向上取整,可得到 L = 19。即可用19位二进制串 a18a17…a0来表示。
(4)确定解码方法,即确定出由个体基因型X*,到个体表现型X的对应关系和转换方法。
(5)确定个体适应度的量化评价方法,就是确定出由目标函数值到个体适应度的转换规则。标准遗传算法的适应度函数常用一下三种:
1)直接以待求解的目标函数为适应度函数
若目标函数为最大值问题,则Fit(f(X)) = f(X)
若目标函数为最小值问题,则Fit(f(X)) = -f(X)
优点:简单直观;
缺点:其一,可能不满足非负的要求;其二,某些代求解的函数值分布相差很大,由此得到的平均适应度可能不利于体现种群的平均性能。
2)界限构造法
3)倒数法

遗传算法具体步骤

1、选择编码策略,把参数集合(可行解集合)转换染色体结构空间;

2、定义适应度函数,便于计算适应值;

3、确定遗传策略,包括选择群体大小,选择、交叉、变异方法以及确定交叉概率、变异概率等遗传参数;

4、随机产生初始化群体;

5、计算群体中的个体或染色体解码后的适应值;

6、按照遗传策略,运用选择、交叉和变异算子作用于群体,形成下一代群体;

7、判断群体性能是否满足某一指标,或者已完成预定的迭代次数,不满足则返回第五步,或者修改遗传策略再返回第六步。

遗传算法优化BP神经网络的适度值函数是什么 遗传算法 适应度_浮点数


待更新!