marquee
  • 2018上半年将更新数据库、C++、计算机组成原理、操作系统等文章,谢谢关注~
  • 由于算法限制,搜索时注意简化关键字,谢谢支持~
  • 网站不兼容IE5.0及以下,请使用主流浏览器访问.
  • 试用搜索、标签、分类目录功能发现更多。
  • NSGA-Ⅱ算法Matlab实现(测试函数为ZDT1)

    为了能随时了解Matlab主要操作及思想。

    故本文贴上NSGA-Ⅱ算法Matlab实现(测试函数为ZDT1)。

    感谢郭伟学长提供的代码。

    代码所有权归郭伟学长。

    在看Matlab实现之前,请先看一下NSGA-II算法概述

    NSGA-II多目标遗传算法概述

    NSGA-Ⅱ就是在第一代非支配排序遗传算法的基础上改进而来,其改进主要是针对如上所述的三个方面:
    ①提出了快速非支配排序算法,一方面降低了计算的复杂度,另一方面它将父代种群跟子代种群进行合并,使得下一代的种群从双倍的空间中进行选取,从而保留了最为优秀的所有个体;
    ②引进精英策略,保证某些优良的种群个体在进化过程中不会被丢弃,从而提高了优化结果的精度;
    ③采用拥挤度和拥挤度比较算子,不但克服了NSGA中需要人为指定共享参数的缺陷,而且将其作为种群中个体间的比较标准,使得准Pareto域中的个体能均匀地扩展到整个Pareto域,保证了种群的多样性。

    Matlab实现:

     

    读者评分
    [评分人数: 2 平均分: 3.5]

    评论

    OmegaXYZ