Genetic programming (GP) is one of the best approaches today to discover symbolic regression models. To find models that trade off accuracy and complexity, the non-dominated sorting genetic algorithm II (NSGA-II) is widely used. Unfortunately, it has been shown that NSGA-II can be inefficient: in early generations, low-complexity models over-replicate and take over most of the population. Consequently, studies have proposed different approaches to promote diversity. Here, we study the root of this problem, in order to design a superior approach. We find that the over-replication of low complexity-models is due to a lack of evolvability, i.e., the inability to produce offspring with improved accuracy. We therefore extend NSGA-II to track, over time, the evolvability of models of different levels of complexity. With this information, we limit how many models of each complexity level are allowed to survive the generation. We compare this new version of NSGA-II, evoNSGA-II, with the use of seven existing multi-objective GP approaches on ten widely-used data sets, and find that evoNSGA-II is equal or superior to using these approaches in almost all comparisons. Furthermore, our results confirm that evoNSGA-II behaves as intended: models that are more evolvable form the majority of the population.
翻译:基因编程(GP)是当今发现象征性回归模型的最佳方法之一。为了找到能够交换准确性和复杂性的模型,广泛使用非主流分类算法II(NSGA-II)的模型。不幸的是,事实证明,第二代基因算法II(NSGA-II)可能效率低下:在早期世代,低复杂性模型过于重复,并接管了大部分人口。因此,研究提出了促进多样性的不同方法。在这里,我们研究这一问题的根源,以便设计一个优异的方法。我们发现,低复杂性模型的过度重复是因为缺乏可流动性,即无法以更准确的方式产生后代。因此,我们扩展第二代基因算法,以跟踪不同复杂程度模型的可变性。根据这一信息,我们限制每个复杂程度的许多模型能够活过一代。我们比较了这个新版本的NSGA-II(evoNSGA-II),在10个广泛使用的数据集中使用了7种现有多目标的GGA-GA方法,即无法产生更精确的后代。因此,我们扩展第二代的NGA-II(evoGA-II)的多数比较结果几乎可以用来确认这些格式。