我不打算在我的博客上放一个链接,但我没有任何其他方法来澄清我的真正意思。这篇文章很长,分为三部分(1 , 2 , 3),但如果你好奇的话,还是值得一读的。
很久以前(至少 5 年)我编写了一个生成“数学细菌”的 python 程序。这些细菌是具有简单的基于操作码的遗传密码的蟒蛇对象。你可以给他们一个数字,他们会根据代码的执行返回一个数字。我随机生成它们的遗传密码,并将环境选择应用于那些产生类似于预定义预期值的结果的对象。然后我让它们复制、引入突变并进化它们。结果非常有趣,因为他们的遗传密码基本上学会了如何求解简单的方程,即使对于训练数据集的不同值也是如此。
现在,这东西只是一个玩具。我有时间可以浪费,我想满足我的好奇心。但是,我认为在研究方面已经取得了一些成果……我希望在这里重新发明轮子。您是否知道像我编程的那样创建计算机内细菌的更认真的尝试?
请注意,这并不是真正的“遗传算法”。遗传算法是当您使用进化/选择来针对给定评分函数改进参数向量时。这有点不同。我针对给定的评分函数优化代码,而不是参数。