一个能对自身进行编码,从而不断进行进化的代码程序,进化到最终是否会成为强人工智能

请参考koza的遗传编程,1992年提出的,genetic programming,koza的第四本书有26个比肩人类的发明。这个算法的研究在中国很小众,但是在国外还可以。主要是计算机系的人在研究。其实学到最后,机器出来的是一堆人也看不懂的程序,前提是需要定义程序片段。我目前的工作是研究是排程问题,采用遗传编程得到启发式知识用于排程,最后进化出来的程序我确实看不懂,但是问题的评价指标确实比专家构造的知识要好!
类似还可以用强化学习,决策树,神经网络等工具去构造知识,不止是遗传编程。
Update:
最近做实验发现计算能力还是很重要的,用机器进化有点类似于机器在人工定义了知识条件下的暴力搜索,有点类似与神经网络的训练过程,其中有很多trick。例如Bloat Control,Local Sseach,Genetic Operator。只不过目前大多数人被AlphaGo吸引了目光,认为深度神经网络就是人工智能。
其实实现人工智能的方式有很多,最重要的就是能够自我学习,自我进化。人工智能实现的方式不重要,重要的是解决问题。我认为用GP进化出强人工智能不大现实,因为现实中太多的约束、目标以及特征需要告知电脑,GP的天然树状结构不太适合做这种事情。目前看法还是神经网络相比GP更有可能性一点。
但是,回到解决排程问题,我认为GP比神经网络更加好用一些,因为排程问题天然的约束复杂、特征方便提取的特点更加适合用GP进行问题的表达。对于图像识别,语音识别等领域,神经网络的非线性特点比GP更加适合。
总结:针对解决的问题,选用合适的工具,在有限的时间内获得尽可能高质量的满意解!
参考文献:
Poli, R., W.B. Langdon and N.F. McPhee, A Field Guide to Genetic Programming. Vol. 10. 2009. 229-230.
Koza, J.R., et al., Genetic Programming IV. Genetic Programming Series. 2003: Springer US.
Langdon, W.B. and R. Poli, Foundations of Genetic Programming. 2002: Springer Berlin Heidelberg.
Luke S. Essentials of Metaheuristics. Diagnosis \u0026amp; Treatment, 2009.

■网友
进化算法是很慢的,例如现时的 state-of-the-art 似乎都只能进化出几行左右的程式。如下图 (节录自我的某次演讲):地球进化了 4 billions years 才出现我们:
一个能对自身进行编码,从而不断进行进化的代码程序,进化到最终是否会成为强人工智能

有性生殖出现在 1.5-2 billion years ago. 这可以看成是地球「学会了」genetic programming。 地球有了 GP 之后还需要一两个 billion years 才发明人类。
多细胞生物出现之后才有 neural network。
如果我们结合 genetic programming + neural networks (已经有人这么做),都仍然有大约 1 billion years 的功夫 is unaccounted for。
所以我提出了将 逻辑学 的结构加进系统中,令它的 inductive bias 更加受约束。 否则我们都死了还未进化出人工智能

■网友
你需要有对应的环境啊,不然怎么确定进化方向?
■网友
跟我提的问题一起合并吧要实现强人工智能的系统是否必须掌握专业知识?
这问题关键在于:强人工智能的系统是否属于可计算问题??
个人认为遗传编程之所以不成功,表面上是效率太慢,实际上是方法论有问题,准确来讲是对“软件究竟是什么”理解不深造成的。

■网友
你以为机器学习的概念是用来干啥的?
■网友
啥叫对自身编码
■网友
先问有没有gp(genetic programing)已经做了很久了,新兴的神经网络编程每年也有很多论文
■网友
有序来自无序
生命来自阴影

■网友
To answer the question just for fun !


推荐阅读