最新公告
  • 欢迎您光临站盟网(原知事网),一个优质的网站源码基地、精品网站模板和插件。欢迎加入永久SVIP
  • 如何学习python遗传算法?

    正文概述 知事网   2020-11-12 09:11   577

    单独的数字大家可以直观看到理解,但是如果两个数字之间连接运算,那它就不是单独的数字,而是一个独立的组合,那大家还会理解是什么意思吗?相信很多人如果第一次看到,那肯定不理解,就跟我们编程时候,每个算数之间都有着各种各种的运算符号,让他们的意义不同,因此,系统的学习是非常重要的,一起来看下如何学习好遗传算法。

    1. 遗传算法主要流程

     2. 遗传算法理论基础

    模式(Schema):模式指有相同特征的子集,比如二进制字符串11***(*为通配符)可以代表八个个体(2x2x2)。

    阶(Order):模式中确定位置的个数成为阶,比如1110*的阶为1

    定义距(Defining Length):模式中第一个确定位置和最后一个确定位置之间的距离成为定义距

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

    遗传算法中的种群中始终维持一定数量的个体(每个个体都是问题的解),而传统算法中每次迭代都一般只保留最优解。

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

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

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

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

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

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

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

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

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


    站盟网 » 如何学习python遗传算法?

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者
    请选择支付方式
    ×
    支付宝支付
    微信支付
    余额支付
    ×
    微信扫码支付 0 元