遗传编程

✍ dations ◷ 2025-12-07 13:15:07 #人工智能,进化算法,遗传算法

遗传编程或称基因编程,简称GP,是一种从生物演化过程得到灵感的自动化生成和选择计算机程序来完成用户定义的任务的技术。从理论上讲,人类用遗传编程只需要告诉计算机“需要完成什么”,而不用告诉它“如何去完成”,最终可能实现真正意义上的人工智能:自动化的发明机器。

遗传编程是一种特殊的利用进化算法的机器学习技术,它开始于一群由随机生成的千百万个计算机程序组成的“人群”,然后根据一个程序完成给定的任务的能力来确定某个程序的适合度,应用达尔文的自然选择(适者生存)确定胜出的程序,计算机程序间也模拟两性组合,变异,基因复制,基因删除等代代进化,直到达到预先确定的某个终止条件为止。

遗传编程的首批试验由斯蒂芬·史密斯(1980年)和Nichael·克拉姆(1985年)发表。约翰·Koza(1992年)也写了一本著名的书,《遗传编程:用自然选择让计算机编程》(ISBN 9780262111706),来介绍遗传编程。

使用遗传编程的计算机程序可以用很多种编程语言来写成。早期(或者说传统)的GP实现中,程序的指令和数据的值使用树状结构的组织方式,所以那些本来就提供树状组织形式的编程语言最适合与GP,例如Koza使用的Lisp语言。其他形式的GP也被提倡和实现,例如相对简单的适合传统编程语言(例如Fortran、BASIC和C语言)的线性遗传编程。有商业化的GP软件把线性遗传编程和汇编语言结合来获得更好的性能,也有的实现方法直接生成汇编程序。

遗传编程所需的计算量非常之大(处理大量候选的计算机程序),以至于在90年代的时候它只能用来解决一些简单的问题。近年来,随着遗传编程技术自身的发展和中央处理器计算能力的指数级提升,GP开始产生了一大批显著的结果。例如在2004年左右,GP在多个领域获取近40项成果:量子计算、电子设计、游戏比赛、排序、搜索等等。这些计算机自动生成的程序(算法)中有些与2000年后人工产生的发明十分类似,甚至有两项结果产生了可以申请专利的新发明。

在90年代,人们普遍认为为遗传编程发展一个理论十分困难,GP在各种搜索技术中也处于劣势。2000年后,GP的理论获取重大发展,创建确切的GP概率模型和马尔可夫链模型已成为可能。遗传编程比遗传算法适用的范围更广(实际上包含了遗传算法)

除了生成计算机程序,遗传编程也被用与产生可发展的硬件。

Juergen Schmidhuber进一步提出了宏遗传编程,一种使用遗传编程来生成一个遗传编程系统的技术。一些评论认为宏遗传编程在理论上不可行,但是需要更多的研究来确认。

相关

  • 灵魂伴侣灵魂伴侣(英语:Soulmate)是指与之相处有深深的或是天然的亲和感的人。 可以是两者之间的相像、爱、浪漫、友情、亲密、性、性关系、灵性或配合度与信任。soul代表灵魂,mate代表
  • 陈永康陈永康(1951年-),生于台湾台北,籍贯广东吴川,中华民国海军二级上将退役,现任国防安全研究院战略咨询委员、国家中山科学研究院董事,毕业于美国海军战争学院1997年班,与前行政院退辅会
  • 维吉尼亚级弗吉尼亚级可能意指下列美国海军所操作的战斗用船只舰级:
  • 妇女章《妇女章》(阿拉伯语:سورة النساء‎,Sūrat an-Nisā)是《古兰经》的第四章节(苏拉),拥有176个节句(阿亚)。妇女章是第87个降示的,降示于麦地那(即为麦地那篇章)。该篇章之所
  • 阿波罗尼奥斯问题阿波罗尼奥斯问题是一道有名的几何题:“平面上给定三个圆周,如何用尺规作图构造出和这三个已知圆都相切的圆(图1 )?”佩尔盖(英语:Perga)的阿波罗尼奥斯(Apollonius of Perga,约前262年
  • 乌胡鲁·肯雅塔乌胡鲁·肯雅塔(Uhuru Muigai Kenyatta ,1961年10月26日-),现任肯尼亚总统。乌胡鲁·肯雅塔是肯尼亚开国总统乔莫·肯雅塔之子。其名乌胡鲁在斯瓦希里语中意思是“自由”,以冀他能
  • 葛蕾丝安娜·露易斯葛蕾丝安娜·露易斯 (英语:Graceanna Lewis,1821年8月3日-1912年2月25日),美国自然历史学家、插画家暨社会改革家,专精于鸟类学。她既是美国女科学家先驱,也是社会运动者,致力于倡导
  • 太郎与次郎太郎(タロ、1955年(昭和30年)10月 - 1970年(昭和45年)8月11日)与次郎(ジロ、1955年(昭和30年)10月 - 1960年(昭和35年)7月9日)是日本在早期的南极地域观测队中,与队伍同行的萨哈林哈士奇(
  • 天主教蒂厄姆总教区天主教蒂厄姆总教区(拉丁语:Archidioecesis Tuamensis、爱尔兰语:Ard-Deoise an Tuaim)是罗马天主教在爱尔兰的一个教省总教区。526年设立教区,1152年升为总教区。座堂位于圣母升
  • 廖家镇廖家镇,是中华人民共和国四川省成都市崇州市下辖的一个乡镇级行政单位。2019年12月,撤销崇平镇,将其所属行政区域划归廖家镇管辖,廖家镇人民政府驻白云路2号。廖家镇下辖以下地