如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
会计学[编码原则]针对一个具体应用问题,如何设计一种完美的编码方案一直是遗传算法的应用难点之一,也是遗传算法的一个重要研究方向。可以说目前还没有一套既严密又完整的指导理论及评价准则能够帮助我们设计编码方案。作为参考,DeJong曾提出了两条操作性较强的实用编码原则(又称为编码规则):•编码原则一(有意义积木块编码原则):应使用能易于(yìyú)产生与所求问题相关的且具有低阶、短定义长度模式的编码方案。•编码原则二(最小字符集编码原则):应使用能使问题得到自然表示或描述的具有最小编码字符集的编码方案。由于遗传算法应用的广泛性,迄今为止人们已经提出了许多种不同的编码方法。总的来说,这些编码方法可以分为三大类:二进制编码方法浮点数编码方法符号编码方法4.1.1二进制编码方法二进制编码方法是遗传算法中最常用的一种编码方法,它使用的编码符号集是由二进制符号0和1所组成的二值符号集{0,1},它所构成的个体基因型是一个二进制编码符号串。(1)编码假设某一参数的取值范围是[umax,umin],我们(wǒmen)用长度为l的二进制编码符号串来表示该参数,则它总共能够产生2l种不同的编码,参数编码时的对应关系如下:00000000…00000000=0umin00000000…00000001=1umin+……11111111…11111111=2l–1umax二进制编码的编码精度为:(2)解码(jiěmǎ)假设某一个体的编码是:x:blbl-1bl-2……b2b1则对应的解码(jiěmǎ)公式为:(3)二进制编码(biānmǎ)方法的优点:Ⅰ.编码(biānmǎ)、解码操作简单易行;Ⅱ.交叉、变异等遗传操作便于实现;Ⅲ.符合最小字符集编码(biānmǎ)原则(使用能使问题得到自然表示或描述的具有最小编码(biānmǎ)字符集的编码(biānmǎ)方案。);Ⅳ.便于利用模式定理对算法进行理论分析。4.1.2格雷码编码方法格雷码编码方法是二进制编码方法的一种变形。(1)格雷码编码:其连续的两个整数所对应的编码值之间仅仅只有一个码位是不相同的,其余码位都完全相同。如图所示。(2)优点:•便于提高遗传算法的局部搜索能力(nénglì);•交叉、变异等遗传操作便于实现;•符合最小字符集编码原则;•便于利用模式定理对算法进行理论分析。44.1.3浮点数编码方法(1)二进制编码的缺点•二进制编码存在着连续函数离散化时的映射误差。个体编码串的长度较短时,可能达不到精度要求;个体编码串的长度较长时,虽然能提高编码精度,但却会使遗传算法的搜索空间急剧扩大。•二进制编码不便于反映所求问题的特定知识(zhīshi),这样也就不便于开发针对问题专门知识(zhīshi)的遗传运算算子,人们在一些经典优化算法的研究中所总结出的一些宝贵经验也就无法在这里加以利用,也不便于处理非平凡约束条件。(2)浮点数编码方法个体的每个基因值用某一范围内的一个浮点数来表示;个体的编码长度等于其决策变量的个数。因为这种编码方法使用的是决策变量的真实值,所以浮点数编码方法也叫做真值编码方法。例如,如果一个优化问题含有5个变量(biànliàng)xi(i=1,2,…,5),每个变量(biànliàng)都有其对应的上下限[Uimin,Uimax],则:(4)浮点数编码方法的优点(yōudiǎn):•适合于在遗传算法中表示范围较大的数;•适合于精度要求较高的遗传算法;•便于较大空间的遗传搜索;•改善了遗传算法的计算复杂性,提高了运算效率;•便于遗传算法与经典优化方法的混合使用;•便于设计针对问题的专门知识的知识型遗传算子;•便于处理复杂的决策变量约束条件。4.1.4符号编码方法(1)编码方法个体染色体编码串中的基因值取自一个无数值含义、而只有代码含义的符号集。这个符号集可以是一个字母表,如{A,B,C,D,…};也可以是一个数宇序号表,如{1,2,3,4,5,…};还可以是一个代码表,如{Al,A2,A3,A4,A5,…}等等。例如:对于旅行商问题,假设有n个城市分别记为C1,C2,…,Cn,将各个城市的代号按其被访问的顺序连接在一起,就可构成一个表示旅行路线的个体,如:X:[C1,C2,…,Cn]若将各个城市按其代号的下标进行编号,则这个个体也可表示为:X:[1,2,…,n][旅行商问题(TravelingSalesmanProblem,简称TSP)可描述为;已知n个城市之间的相互距离。现有一推销员必须遍访这n个城市,并且每个城市只能访问一次,最后又必须返回出发(chūfā)城市。如何安排他对这些城市的访问次序,可使