MATLAB-遗传算法-求解多元非线性规划问题

       遗传算法是模拟达尔文生物进化论的选择和孟德尔遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。

遗传算法的参数设计原则

      在单纯的遗传算法中,也并不总是收敛,即使在单峰或单调也是如此。这是因为种群的进化能力已经基本丧失,种群早熟。为了避免种群的早熟,参数的设计一般遵从以下原则:

    (1)种群的规模当群体规模太小时,很明显会出现近亲交配,产生病态基因,可能性仍很小,况且大概率变异算子对已有模式的破坏作用极大,所以种群规模的一个建议值为0~100。

    (2)当变异概率太小时,种群的多样性下降太快,容易导致有效基因的迅速丢失且不容易修补;当变异概率太大时,尽管种群的多样性可以得到保证,但是高阶模式被破坏的概率也随之增大。所以变异概率一般取0.0001~0.2。

    (3)交配概率交配是生成新种群最重要的手段。与变异概率类似,交配概率太大容易破坏已有的有利模式,随机性增大,容易错失最优个体;交配概率太小不能有效更新种群。所以交配概率一般取0.4~0.99。

    (4)进化代数太小,算法不容易收敛,种群还没有成熟;代数太大,算法已经熟练或者种群过于早熟不可能再收敛,继续进化没有意义,只会增加时间开支和资源浪费。所以进化代数一般取100~500。

  遗传算法的特征   

你可能感兴趣的:(matlab,算法,动态规划)