搜索随机python程序生成器

我正在寻找一个可以生成随机但有效的python程序的程序,类似于 随机C程序生成器。 我试图自己给python
tokenize.untokenize()
函数提供随机输入,但当然大多数生成的源代码都不是我用
eval()
解释的有效程序。所以我想知道,如果你知道如何生成随机但有效的python程序(可能使用
ast
模块?)或者如果这样的生成器已经存在。 编辑:我想使用随机python源代码作为使用python进行遗传编程的起点。所以我希望有一个随机程序列表,然后将它们演变为让我们说一个返回“Hello World!”的程序。     
已邀请:
谷歌搜索python“随机程序生成器”出现了随机Python程序生成器。 如果你想要一个可下载的脚本,请看一下pyfuzz。     
执行遗传编程以发展命令式程序并非完全无足轻重。 关于你想要这些程序的表示,可能值得考虑一下,因为如果你打算对它们执行交叉/变异,那么字符串表示可能并不理想。相反,某种解析树或抽象语法树可能更可取。这将允许您的遗传操作员轻松操纵子树。然而,很大的困难在于在这些操作期间保持程序的有效性。 您可能想要考虑的一种方法是使用基于语法的进化技术,例如Grammatical Evolution或Whigham的CFG-GP。然后,您可以使用BNF语法提供语言语法,并生成符合此语法的程序。毫无疑问,您可以在线找到适合您的Python语法。这些技术存在一些局限性,因为它们通常使用无上下文语法,因此不能代表细微的语义约束,但如果有必要,可以采用各种方法。 进一步的考虑是你是否真的希望整个python语言可用于进化过程。您提供的功能越多,搜索空间就越大。在传统的GP中,功能和终端集是根据正在处理的问题来指定的,并且挑战之一是决定具有足够表达力而不过度的语法。使用单独的语法,您将能够针对不同的问题使用不同的语法。     
我推荐PushGP。这是一个python类的链接。     

要回复问题请先登录注册