遗传编程

✍ dations ◷ 2025-11-22 18:47:00 #人工智能,进化算法,遗传算法

遗传编程或称基因编程,简称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进一步提出了宏遗传编程,一种使用遗传编程来生成一个遗传编程系统的技术。一些评论认为宏遗传编程在理论上不可行,但是需要更多的研究来确认。

相关

  • 康涅狄格康涅狄格州(英语:State of Connecticut),简称康州,是美国东北部的一州,也是新英格兰区域中最南的一州。在美国独立战争时期,是13州联盟之一。州花山桂,州鸟美洲知更鸟,州树白橡。美国
  • 95号州际公路95号州际公路(Interstate 95,简称I-95)是美国州际公路系统的一部分,共计跨越15州,是美国东岸的交通大动脉,位于东北部的路段更是因为大量的使用量而被称为东北走廊。北起缅因州与
  • 芬兰湾芬兰湾(芬兰语:Suomenlahti;爱沙尼亚语:Soome laht;俄语:Финский залив, Finskiy zaliv;瑞典语:Finska viken)是波罗的海东部的大海湾,位于芬兰、爱沙尼亚之间,伸展至俄罗
  • ssRNA-RT逆转录病毒科(学名:Retroviridae)又称“反转录病毒科”,分为双链DNA逆转录病毒和正链RNA逆转录病毒。它们增殖时都有将遗传物质RNA逆转录为DNA的过程(前者逆转录反链RNA,后者逆转
  • 荠菜荠菜(学名:Capsella bursa-pastoris),又名护生草、地菜、地米菜、菱闸菜等,十字花科荠菜属植物。起源于东欧和小亚细亚,目前在世界各地都很常见。其种加词来自拉丁语,意思是“小盒
  • Omega-3脂肪酸ω−3脂肪酸(Omega-3 fatty acids)又称n−3脂肪酸,是一类不饱和脂肪酸,其中最重要的3种为:ALA(存在于植物中的油),EPA和DHA(这二种发现存在于海洋动植物油中)。从脂肪酸分子中距离羧基
  • 大屠杀列表本列表按照发生年代的先后顺序列举世界历史上发生的大屠杀。
  • 松泽哲郎松泽哲郎(1950年10月15日-),出生于日本爱媛县,国籍日本。动物心理学(比较心理学)研究者,灵长类学家。京都大学教授。京都大学理学博士。 松沢教授主要研究黑猩猩智力,包括实验室研究
  • 王京镇王京镇,是中华人民共和国河北省保定市唐县下辖的一个乡镇级行政单位。王京镇下辖以下地区:王京村、东安乐村、西安乐村、北安乐村、拔茄村、东马寨村、西马寨村、东冯村、东沿
  • 电容器电容器(英文:capacitor,又称为condenser)是将电能储存在电场中的被动电子元件。电容器的储能特性可以用电容表示。在电路中邻近的导体之间即存在电容,而电容器是为了增加电路中的