【发布时间】:2011-08-09 15:04:45
【问题描述】:
进化编程似乎是解决许多优化问题的好方法。这个想法很简单,实现起来也没有问题。
我想知道是否有任何方法可以进化地使用 ruby/python 脚本(或任何其他语言)创建程序?
这个想法很简单:
- 创建程序群
- 执行遗传操作(轮盘赌选择或任何其他选择),创建继承最佳程序的新程序等。
- 循环点 2 直到找到满足我们条件的程序
但还是有几个问题:
- 如何表示染色体?例如,染色体的一个细胞应该是一行代码吗?
- 如何生成染色体?如果它们是代码行,我们如何生成它们以确保它们在语法上是正确的等等?
可以生成的程序示例:
创建将 N 个数字作为输入并返回其均值作为输出的脚本。
如果有人尝试创建此类算法,我将很高兴看到任何链接/来源。
【问题讨论】:
-
如果生成的程序之一会擦除驱动器可能会很有趣。当然,您需要一些方法来沙箱化,然后在打开潘多拉魔盒时要小心。我相信有一本书(虽然记不起名字了),其中这样一个程序最终会演变成这样一种方式,它将控制世界上所有的机器并开始杀死人类;)
-
一本书?这个想法在廉价的科幻小说中被打死了。
-
我试过一次。在程序变得具有自我意识后,它接管了打印机并使用激光射击建筑物中的每个人。
-
什么是适应度函数?这些进化方法需要一种方法来计算它们与某些标准的匹配程度。
-
Jivlain 的答案是您想要标记为答案的答案
标签: algorithm code-generation genetic-algorithm genetic-programming evolutionary-algorithm