架,同时也具有一定的应用价值。(1)编码方法用遗传算法求解问题时,不是对所求解问题的实际决策变量直接进行操作,而是对表示可行解的个体编码的操作,不断搜索出适应度较高的个体,并在群体中增加其数量,最终寻找到问题的最优解或近似最优解。因此,必须建立问题的可行解的实际表示和遗传算法的染色体位串结构之间的联系。在遗传算法中,把一个问题的可行解从其解空间转换到遗传算法所能处理的搜索空间的转换方法称之为编码。反之,个体从搜索空间的基因型变换到解空间的表现型的方法称之为解码方法。编码是应用遗传算法是需要解决的首要问题,也是一个关键步骤。迄今为止人们已经设计出了许多种不同的编码方法。基本遗传算法使用的是二进制符号0和1所组成的二进制符号集{0,1},也就是说,把问题空间的参数表示为基于字符集{0,1}构成的染色体位串。每个个体的染色体中所包含的数字的个数L称为染色体的长度或称为符号串的长度。一般染色体的长度L为一固定的数,如X10011100100011010100表示一个个体,该个体的染色体长度L20。二进制编码符号串的长度与问题所要求的求解精度有关。假设某一参数的取值范围是a,b,我们用长度为L的二进制编码符号串来表示该参数,总共能产生2L种不同的编码,若参数与编码的对应关系为00000000000……000000000→a00000000000……000000011→aδ111111111111……111111112L1→b则二进制编码的编码精度δ
ba2L1
假设某一个个体的编码是xkak1ak2Lakl,则对应的解码公式为
xka
baL∑akj2LjL21j1
例如,对于x∈01023若用长度为10的二进制编码来表示该参数的话,则下述符号串:x0010101111就表示一个个体,它对应的参数值是x175此时的编码精度为1二进制编码方法相对于其它编码方法的优点,首先是编码、解码操作简单易行;其次是交叉遗传操作便于实现;另外便于对算法进行理论分析。
f(2)个体适应度函数在遗传算法中,根据个体适应度的大小来确定该个体在选择操作中被选定的概率。个体的适应度越大,该个体被遗传到下一代的概率也越大;反之,个体的适应度越小,该个体被遗传到下一代的概率也越小。基本遗传算法使用比例选择操作方法来确定群体中各个个体是否有可能遗传到下一代群体中。为了正确计算不同情况下各个个体的选择概率,要求所有个体的适应度必须为正数或为零,不能是负数。这样,根据不同种类的问题,必须预先确定好由目标函数值到个体适应度之间的转换规则,特r