首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >进化编程

进化编程
EN

Stack Overflow用户
提问于 2012-02-04 16:10:42
回答 7查看 1.8K关注 0票数 9

我刚刚看了丹尼·希利斯1994年写的一部很酷的ted talk

在视频中,他一度谈到了“进化编程”,即他要求计算机通过生成随机的命令序列来生成数百个程序,然后测试每个程序对数字的排序效果。他保留了10%的对数字进行最佳排序的程序,然后根据这10%的程序生成下一轮表现良好的程序,并重复他想要的次数,最终生成最终的排序程序。

有没有工具/编程语言可以做到这一点?例如,给定某些约束,生成最能满足这些约束的C代码。

我访问了一些与“进化编程”相关的维基百科文章;那里似乎有很多理论,但似乎并不容易找到一些你可以玩玩的东西。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2012-02-26 16:52:20

一个非常简单和通用的免费下载源代码是用Java语言实现的TinyGP。顺便说一下..。有关这方面的更多详细信息,您应该搜索有关“遗传编程”而不是“进化编程”的信息。这一切都有点令人困惑,因为进化计算有太多的子领域,在名称上有很小的差异,比如“遗传算法”,“进化策略”,“进化编程”,“遗传编程”……但我认为你所说的实际上是遗传编程

票数 5
EN

Stack Overflow用户

发布于 2012-02-05 12:17:16

一个实际的例子:

Csmith是一个可以生成静态和动态符合C99标准的随机C程序的工具。它对于压力测试编译器、静态分析器和其他处理C代码的工具非常有用。Csmith在它测试的每个工具中都发现了错误,我们已经使用它来发现和报告400多个以前未知的编译器错误。

票数 3
EN

Stack Overflow用户

发布于 2012-02-06 17:02:45

典型的例子是TierraAvida

一个相关的领域是硬件进化和进化机器人,例如参见this page

在Mathematica中还有一个关于进化计算的很好的book

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9139442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档