遗传算法
词条百科 0
目录
遗传算法
在计算机科学和运筹学中,遗传算法(GA)是一种元启发式的自然选择过程,属于较大的进化算法(EA)。遗传算法通常被用来生成高质量的优化和搜索问题的解决方案,依靠的是受生物启发的运算符,如变异、交叉和选择。遗传算法的一些应用实例包括优化决策树以提高性能,解决数独谜题,超参数优化等。
方法论
初始化
群体大小取决于问题的性质,但通常包含几百或几千个可能的解决方案。通常,初始群体是随机产生的,允许整个可能的解决方案(搜索空间)的范围。偶尔,解决方案可以在可能找到最优解决方案的区域被播种。
遗传算法的选择
在每一个连续的世代中,现有种群的一部分被选择来繁殖新的世代。个别解决方案是通过一个基于健身的过程来选择的,其中更适合的解决方案(由健身函数衡量)通常更可能被选中。某些选择方法对每个解决方案的适用性进行评级,并优先选择最佳解决方案。其他方法只对群体的随机样本进行评级,因为前一个过程可能非常耗时。健身函数是在遗传表示上定义的,并衡量表示的解决方案的质量。健身函数总是取决于问题。例如,在背包问题中,人们希望xxx限度地提高可以放在某个固定容量的背包中的物体的总价值。一个解决方案的代表可能是一个比特数组,其中每个比特代表一个不同的物体,而比特的值(0或1)代表该物体是否在背包中。

不是每一个这样的表示都是有效的,因为物体的大小可能超过背包的容量。如果表示是有效的,解决方案的适用性是背包中所有对象的值之和,否则就是0。在一些问题中,很难甚至不可能定义适配性表达式;在这些情况下,可以用模拟来确定表征的适配性函数值(例如,用计算流体力学来确定车辆的空气阻力,其形状被编码为表征),甚至可以使用交互式遗传算法。
遗传算子
下一步是从那些被选中的解决方案中产生第二代种群,通过一个com
内容来源于网络,本内容不代表16map.com立场,内容投诉举报请联系16map.com客服。如若转载,请注明出处:https://16map.com/wiki/nmtegizlnizy