自制遗传编程框架的集成测试

Integration Test for Homemade Genetic Programming Framework

我已经编写了自己的遗传编程框架。我的单元测试覆盖率非常高,所以我相信各个组件都能正常工作。

我正在寻找的是一个相当简单的问题,它非常适合我可以用作集成级别测试的遗传编程,它将检查我的框架是否有效并可以找到解决方案。

我不能使用我编写框架解决的原始问题作为集成测试,因为:

  1. 我不知道这个问题是否可以用遗传编程来解决 方法。
  2. 每一代大约需要 5 分钟到 运行。

任何人都可以描述一个非常适合遗传编程的简单、重要的问题吗? 谢谢。

遗传编程可以应用于回归和分类问题。符号回归可能是最简单的一种。你有一些训练数据,你必须发现一个近似于给定数据的数学公式(计算机程序)。

例如,函数 f(x) 生成以下数据(输入、输出):

0 1

1 5

2 31

3 121

4 341

5 781

6 1555

7 2801

8 4681

9 7381

找到一个将输入链接到输出的函数。 答案:函数为f(x) = x^4 + x^3 + x^2 + x + 1

这绝对不应该每代花费 5 分钟......事实上,当你有 50 个个体时,每代应该花费不到 1 秒。

编辑:我只是用我的 GP 实现(来自 http://mepx.org)测试了这个问题,它 运行 整个 运行 不到 0.02 秒(50 个人 50代和代码长度为 50)。