我不打算在我的博客上添加链接,但我没有任何其他方法来澄清我的真正含义。这篇文章很长,分为三个部分(1,2,3),但如果你很好奇,那么值得一读。
很久以前(至少5年)我编写了一个生成“数学细菌”的python程序。这些细菌是python对象,具有简单的基于操作码的遗传密码。您可以使用数字为它们提供数据,并根据其代码的执行返回一个数字。我随机生成他们的遗传密码,并将环境选择应用于那些产生类似于预定义预期值的结果的对象。然后我让他们复制,引入突变,并进化它们。结果非常有趣,因为他们的遗传密码基本上学习了如何解决简单方程,即使是训练数据集的不同值。
现在,这件事只是一个玩具。我有时间浪费,我想满足自己的好奇心。 但是,我认为在研究方面已经做了一些事情......我希望,我在这里重新发明轮子。您是否意识到更多尝试创造像我编程的细菌一样的细菌?
请注意,这不是真正的“遗传算法”。遗传算法是指您使用进化/选择来改进针对给定评分函数的参数向量。这有点不同。我根据给定的评分函数优化代码,而不是参数。
答案 0 :(得分:10)
如果您正在优化代码,也许您参与了 genetic programming ?
答案 1 :(得分:2)
免费实用程序Eureqa在某种意义上类似于基于多变量输入数据可以创建拟合符号函数(比简单线性回归等复杂得多)。但是,它使用GA来提出这些功能,所以我不确定这是不是你的想法。
另请参阅"Download Your Own Robot Scientist" article on Wired,了解其运作方式的一般概念。
答案 2 :(得分:2)
好文章, 我会说你在谈论“基因表达编程”而不是“基因编程”,顺便说一句。
答案 3 :(得分:1)