我正在研究遗传算法。
有两个目标,每个目标都有自己的适应值(fv1,fv2)。
我知道世代(SGE)和稳态(SS)遗传算法是如何工作的。
我正在努力了解NSGA-2和SPEA-2(我正在使用Java库JCLEC的实现)如何工作,特别是:
如果有人正在使用JCLEC库,这些是我设置的参数:
答案 0 :(得分:22)
以下是NSGA-II的解释
答案 1 :(得分:4)
我建议阅读有关这些算法的论文,这些论文很好地解释了这些功能:
我确信您可以在网上找到这些出版物的PDF格式。
关于稳态遗传算法和世代遗传算法之间的区别:在世代替代中,您只使用旧种群中的基因创建一个与旧代相同大小的全新种群,然后将其替换为整体。在稳态替换中,您只需创建一个新个体,然后只替换人口中的一个人。稳态GAs通常会收敛得更快,但它们不太可能找到良好的局部最佳值,因为它们不像使用世代替换那样探索健身状况。它当然取决于问题,有时你可以选择你想要替换多少老一代,这允许你在这两者之间有一些任意比例。
答案 2 :(得分:1)
可以在
找到一个来自几何的简单例子,有很好的解释 https://www.youtube.com/watch?app=desktop&v=Yb82W2Bolqc&ab_channel=IITKharagpurJuly2018
其他都可以
https://www.slideshare.net/AhmedGadFCIT/multiobjective-optimization-using-nondominated-sorting-genetic-algorithm-with-numerical-example-stepbystep