人工智能如何让机器自动写编写程序代码!.doc
《人工智能如何让机器自动写编写程序代码!.doc》由会员分享,可在线阅读,更多相关《人工智能如何让机器自动写编写程序代码!.doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流人工智能如何让机器自动写编写程序代码!【精品文档】第 10 页人工智能如何让机器自动写编写程序代码! 对于一台电脑来说,它可能写下它自己的程序吗?人类软件开发者有一天能够被电脑取代吗?如同一个农民,一个流水线工人,一个电话运营员被取代一样,软件开发者会是下一个吗?这篇论文诠释了这个概念:回复:ai写代码 下载论文论文的精华部分: 接下来我们将会描述创造一个人工智能程序的实验,人工智能工程能够开发其自己的程序,执行一个遗传算法,具有自我修正的代码。上面这个代码是由人工智能程序创造的。这个人工智能被设计出写能够自我修正的代码。上面的代码是在29分钟中写出来的
2、。其程序语言是brain-fuck。什么是BrainFuck ?BrainFuck 语言,是一种按照“Turing complete”思想设计的语言,它的主要设计思路是:用最小的概念实现一种“简单”的语言,BrainFuck 语言只有八种符号,所有的操作都由这八种符号的组合来完成。 BrainFuck 基于一个简单的机器模型,除了八个指令,这个机器还包括:一个以字节为单位、被初始化为零的数组、一个指向该数组的指针(初始时指向数组的第一个字节)、以及用于输入输出的两个字节流。 人工智能占据写代码人工智能随着电脑科技,硬件,CPU的发展,不断地发展着。随着计算机越来越快发展,更多的计算被执行,所以
3、人工智能算法所要求的计算密集型处理能够被实现。人工智能习惯对于我来说,让人工智能写程序是我的爱好。我指的是从一个完全白手起家,对于程序完全没有认知的人工智能,它自己学习如何去创造功能性程序。 这是个艰难的任务:首先,使用使if/else条件写一个随机程序看起来并不是那么智能。无论是BASIC,C,C+语言,都不能产生一个能够运行的程序。因为这些语言都是以被人类使用为目的的,对于人工智能来说太复杂。 最终的目标是创造一个能够写自己的处理软件,图像编辑工具和浏览器的计算机程序。我坚定于这样的想法是可能的。 很多的猴子和破碎的打字机这个想法源于无限猴子定理:这个定理描述了如果你有1000只猴子,在打
4、字机上不断地敲击足够长的时间的话,它们最终会创造由莎士比亚写出的话剧。这听起来很荒唐,但是给定足够的时间,这些猴子最终会创造出随机的文字,组成莎士比亚的作品。如果这些猴子得到指引呢?每次其中一个猴子敲对键盘的话,就会得到奖励。在足够长的时间后,猴子能够开始习得规律和模式。遗传算法遗传算法是一种人工智能,以生物进化为模型。人工智能随机选择一系列的指令(DNA中的一个),检查结果的合适度。在很多的程序中,比方说100个程序,选择出最佳合适度的进行配对,产生后代。 每一代得到额外的多样性,由进化的技巧例如轮盘选择,交叉,和突变而来。这个过程在每一代中重复。但愿产生更好的结果,直到找到解决方法。遗传算
5、法执行适者生存法则。最合适的生存下来,并被执行。遗传算法可以被划分为人工智能搜索算法。在巨大的问题空间中寻找具体的解决方案。为什么是Brain-fuck解释器?开始寻找简单的程序语言,用有限数量的指令,来训练人工智能程序使用。Assembly(ASM)很接近,但是仍然包含太多的排列。听起来很幽默,最后brain-fuck解释器产生,产生了上面的代码。 brain-fuck最初被设计的初衷是一个笑话程序语言,产生于对于人们使用来说,它的难度是怎样。它实际上有着一些对于电脑来说不同的优势。Brain-fuck作为人工智能程序语言的优势1. Turning complete 完全图灵这意味着它在理论
6、上能够解决任何的计算问题。有着这样能力的程序语言打开了很大可能性的序列。总之很多(如果不是所有的的话)计算机程序被设计来执行计算。 2. 由简化的只有8个指令的序列组成简化的指令序列减少了搜索空间,很容易搜索到目标程序代码。随着计算机运行越来越快,问题空间能够被搜索到。然而,搜索空间需要被限制。限制程序指令在8个不同的字母,人工智能能够更快运行,在合理的时间内获得最优的合适度。 3. 很容易建立一个解释器指令系列很好整理,容易理解。因此,创造一个执行程序的简单解释器很直接。在包含人工智能程序+遗传算法的解释器中,代码能够被优化,运行更快。这也能提供安全约束。人工智能能够获得解释器的内部内容,例
7、如内存,指令和输出。这在计算合适度中非常有用。然而,第三方的编译器的这些内容很难获得。 4. 每个指令一个字节因为每个指令只是一个字节,很容易找到每个double。 5. 扩展指令的可能性存在很多程序语言的解释器简单地执行代码,保存记忆值,支持输入和输出的操控台。然而,扩展解释器支持产生图标,文件系统途径是可能的。如何运行人工智能程序工作如下:1. 一个genome由一组的double 组成。2. 每个gene等同于在brainfuck语言中的指令。3. 从大量随机的genome开始。4. 解码每个genome成为想要的程序,转化每个double成为对应的指令并执行程序。5. 在输出的基础上得
8、到每个程序的合适度,然后将它们排序。6. 使用轮盘选择,交叉,和突变方法将最好的genome配对,产生新的一代。7. 使用新的一代重复过程,知道达到目标的合适度。因为合适度方法是计算最集中的部分(执行程序中每个gene),人工智能程序使用Parallel。用这种方法,它能够为每一代多个genome执行多样的合适度算法。这个允许程序利用最大化CPU资源,利用多样的CPU核心。这个程序也能够保存状态,防止程序突然关闭,然后从离开的地方继续搜索。The Fitness Method合适度方法通过产生程序的结果的获得得分运行。这个分数通过在观察每个字母输出进行计算,减去和目标字母的数值差距。当然,最初
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 人工智能 如何 机器 自动 编写 程序代码
限制150内