【比较】遗传算法GA和遗传编程GP有什么不同?

遗传算法GA

  • 本质上有一个固定的长度,这意味着所产生的功能有限的复杂性
  • 通常会产生无效状态,因此需要以非破坏性方式处理这些状态
  • 通常依赖于运算符优先级(例如,在我们的例子中,乘法发生在减法之前),这可以被看作是一种限制

遗传编程GP

  • 本质上具有可变长度,这意味着它们更加灵活,但往往复杂度增加
  • 很少产生无效状态,通常可以丢弃这些状态
  • 使用显式结构来完全避免运算符的优先级

总结:两者的区别应该是GP是GA的进化版本,但是原理相同