遗传算法怎么学,python遗传算法库

  遗传算法怎么学,python遗传算法库

  单个数字可以直观的看到和理解,但是如果两个数字连在一起运算,就不是单个数字,而是独立的组合。你还会明白这是什么意思吗?相信很多人第一次看的话,肯定是看不懂的。就像我们在编程的时候,每个算法之间都有各种运算符号,使得它们的含义不一样。所以,系统的学习很重要。我们来看看如何学好遗传算法。

  1.遗传算法主要流程

  2.遗传算法理论基础

  

  L (Schema):模式是指具有相同特征的子集。例如,二进制字符串11 * * \ (*是通配符\)可以表示八个人(2x2x2)。

  l阶:图案中确定位置的个数成为阶,例如1110*的阶为1。

  l-定义长度:图案中第一个确定位置和最后一个确定位置之间的距离成为定义距离。

  3.遗传算法与传统算法的区别

  e="font-family: Wingdings;font-size: 14px">l遗传算法中的种群中始终维持一定数量的个体(每个个体都是问题的解),而传统算法中每次迭代都一般只保留最优解。

  

l遗传算法用个体/基因型来代表问题的解,而传统算法的解一般都更直观。

  

l遗传算通过计算适应度来计算最优解,而传统算法一般通过导数或梯度来计算最优解。

  

l遗传算由概率驱动,比如杂交概率、突变概率等,而传统算法一般都是有确定性的。PS:因为遗传算法的每一次迭代就朝着最优解的方向前进,即便遗传算法的过程有不确定性,但遗传算法最终的最优解一般都是确定的。

  

4.什么情景使用遗传算法

  

l当遇到以下类型的问题时,可以尝试遗传算法:

  

l当问题的数学表达过于复杂或很难用数学表达时:遗传算法只需要定义个体、种群,选择、杂交、突变方法和适应度方程就可以求最优解。

  

l当数据含较多噪音时:遗传算法受数据中异常值的影响较小。

  

l当外部环境在不断变化时:遗传算法的种群始终保有一定数量的个体(解),因此遗传算法可以适应数据的改变,并针对新的环境产生新的最优解。

  

相信大家在浏览过系统的学习遗传算法各个阶段的内容,逐一去攻破,会比较容易好上手遗传算法的哦~如果大家对这个算法感兴趣的话,可以多浏览几遍以上内容,就可以了解怎么开始学习遗传算法啦~

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: