遗传编程成功解决了哪些问题?

时间:2014-06-03 16:43:20

标签: testing genetic-algorithm evolutionary-algorithm genetic-programming

我目前正在试验GP,我想要一些已经用GP解决的测试问题。这样,我就知道遗传编程能够提供有效的解决方案。此外,更短更简单的测试用例会更好,因为我计划多次运行算法。谢谢。

2 个答案:

答案 0 :(得分:3)

以下是GP测试的更常见基准测试问题的列表。这些应用非常广泛,Google的每个应该很容易找到。有关每种方法的详尽描述,包括适当的适应度函数和结果,您可以比较看看Koza的第一本遗传编程书籍(如果可以的话)(从那时起该领域已经出现了一些,所以它们不是领先的结果,但你是不太可能找到更全面的描述。)

布尔函数

  • Even Parity
  • Odd Parity
  • 多路复用器(3位,6位,11位)
  • 多数

符号回归

  • 四次多项式
  • 提及的其他功能太多了

路径查找

  • 人工蚂蚁(Santa Fe Trail)
  • 割草机
  • Tartarus问题
  • 电路设计
  • 旅行推销员

<强>控制

  • 购物车中心
  • 极点平衡

<强>迭代/递归

  • 排序
  • 列表还原
  • 斐波那契序列
  • 阶乘

GP已经成功测试了其他一系列问题,这里还有一些问题,尽管这些问题可能超出了你现在所期待的范围:

  • 游戏,包括Pacman女士,奥赛罗,马里奥
  • 分类问题(蛋白质分类等)
  • 调度
  • 金融交易
  • Biped locomotion
  • 天线设计

如果您只是为了开始寻找一些问题,看看算法是否正常工作并生成解决方案,那么我建议从简单的符号回归开始(在这里你试图找到一个数学公式) ,然后尝试一个更简单的布尔问题,如Even-3-Parity或6-bit Multiplexer。这些问题的好处在于,您可以通过更改要查找的公式或增加位数来轻松提高难度。

答案 1 :(得分:0)

这是关于将遗传算法应用于旅行商问题的interesting paper。我敢肯定,如果你查看JStor或类似的期刊馆藏,你可以找到大多数NP完全问题的遗传编程算法。例如,Here's a paper关于SAT求解器。