简述遗传算法 | 您所在的位置:网站首页 › 简述遗传算法的基本原理及流程 › 简述遗传算法 |
思想 达尔文自然选择学说和孟德尔遗传机理的生物进化过程的计算模型,个体经过每一代的迭代不断产生更优良的基因序列(可行解),淘汰掉适应度值低的个体,从而不断接近最优的适应度(目标函数),一般来说遗传算法是启发性算法,得到的目标函数值可能不尽相同 步骤遗传算法由编解码,个体适应度评估和遗传运算三大模块组成 可行解的编码(取决于决策变量的定义域区间) 一般采用二进制编码,设某一个参数x的取值范围为(L,U),假设用长度为k的二进制编码表示该参数,则一共有2^k种不同的编码,参数变化的步长为 \delta,则 \delta = \frac{U-L}{2^k-1}因为x的变化情况是 L, L+\delta,L+2\delta,...,2^k-1编码解码成可行解目的是为了把不直观的二进制串还原成十进制,设某一个个体的二进制串为 b_k b_{k-1} b_{k-2}...b_3 b_2 b_1,则解码公式为 x = L+(\sum_{i=1}^kb_i 2^{i-1})\delta =L + (\sum_{i=1}^kb_i 2^{i-1})\frac{U-L}{2^k-1}确定k的大小,一般需要根据所求的x精度来确定,若x精度要求保留m位小数,则可行解的空间大小为(U-L)*10^m,所以此时的k应该满足 2^{k-1} |
CopyRight 2018-2019 实验室设备网 版权所有 |