非支配排序遗传算法(NSGA):基于 Pareto 最优概念的遗传算法原理及应用
后台-插件-广告管理-内容页头部广告(手机) |
聊遗传算法,非支配排序遗传算法(NSGA)和普通的遗传算法是热门话题。这NSGA,在开始选人之前先分个层,这招让它在解决多目标优化问题时特别能打。相反,普通的遗传算法虽然能凑合着优化,但面对复杂的多目标问题就有点心有余而力不足了。这篇文章要深入说说NSGA和简单遗传算法的差别,还有NSGA-II是怎么进步和发展的。
一、非支配排序的理念
NSGA就是讲究这种“非支配排序”的玩法。普通的遗传算法,选个体全看谁适应性强。但NSGA不一样,它是看个体间谁更占优势,这样一来,不光看适应度,还得看位置。比如,一个个体能压倒另一个,那它就更有机会被选上。这样子,NSGA就能让种群保持多样性,还不至于太早定型。
分层处理时,NSGA会把它们分到多个级别,同时给每个级别指定个虚拟适应度。比如,最上层是1分,下层就降0.1分,就这样递减。这样分法能帮我们更好地选个体,不光看适应度,还得看谁比谁强,这样才能让优化效果更好。
二、NSGA-II的提出与改进
Deb,2000年的时候就搞出了个叫NSGA-II的东西,这是个加了精英策略的非支配排序遗传算法。做这玩意儿主要是为了解决原来NSGA那些问题,主要是计算难度和种群多样性这块。NSGA-II里头有个快速非支配排序的方法,这一手让算法计算起来快多了,处理大问题特能行。
在NSGA-II里,每个家伙得有两个关键数:n(i)和S(i)。n(i)就是它被谁压杠杠的数量,S(i)则是它压着谁。有了这两个数,NSGA-II就能更准地给非支配种分组排位,保证种群里的每个家伙都有个合理评价。这改动让它在用场上更顺,尤其对付多目标的优化难题时。
三、种群初始化与选择过程
在NSGA-II算法里,初始种群搭建可关键得很。咱们先随便挑出一群父代种群P(0),再把这些个体的优劣排排队,给它们定个适应度。适应度能跟它们的排位一样,比如排第一的就是最适应的,后面的就依次下去。这招儿保证了好苗子能选得更好。
NSGA-II,它是通过挑选、配对和变化来产生新一代群体Q(0)。这事儿,非支配排序起大作用。群体里每个人都经过这排序,就分成几个“非支配群”,再看看它们的拥挤度。这个法子既保留了顶呱呱个体的基因,又保证了群体丰富,不让算法卡在一点小地方。
四、拥挤度的计算与应用
算NSGA-II这事儿,得好好算一下个体挤不挤。这个计算能帮着选哪个个体更有优势,给它们分点权重。比如说,哪个个体不那么拥挤,选它的几率就大点。就这样,种群里的个体能保持多样性,不会全往一块儿挤。
用实际操作来说,当F(1)比N小,NSGA-II就继续往P(t+1)里加F(2)后面的非支配集。一直这样加,直到F(3)加上来的时候种群数目超了N。这时候就对F(3)里的个体来个拥挤度排排坐。这样一来,NSGA-II就能确保每代种群的质和量,为下回优化打下好基础。
五、NSGA-II的实际应用与前景
NSGA-II升级后,在多目标优化这块儿火得很,各行各业都用得挺多,比如工程设计、经济计划,还有环境管理啥的。这玩意儿能快速计算,又能保持品种多样性,所以处理那些复杂的多目标问题很有一套,帮决策者们找到更棒的办法。
随着计算的进步,NSGA-II的发展空间更广。研究人员可以继续研究新改进,加上深度学习等新科技,促进多目标优化算法的进步。不管是工业还是学术圈,NSGA-II都会继续贡献大。
咱们这篇文章深入说了NSGA和基础遗传算法的差别,还有NSGA-II的升级和运用。对NSGA-II的实际使法,你怎么看?快来评论区分享一下你的想法,顺便给我们点个赞、转发一下,也让大伙儿都来认识下这个关键算法!
本文 融资融券杠杆炒股 原创,转载保留链接!网址:http://www.lf889.com/zmt/313.html
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。
后台-插件-广告管理-内容页尾部广告(手机) |