遗传编程

✍ dations ◷ 2025-11-21 03:02:42 #人工智能,进化算法,遗传算法

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

相关

  • 消瘦症消瘦(英语:emaciation)被定义为由于皮下脂肪和身体肌肉的损失导致过度的体重减轻和不自然的羸瘦。过度的消瘦会影响到人类和动物的健康。消瘦是由严重的营养不良和饥饿引起的。
  • 实名制网络实名制是在一些国家和地区实行的法规, 顾名思义,此法规就是要求所有使用网络及服务的人或群体必须要以真实姓名出现或登记。最早实施网络实名制的国家为南韩,如今网络实名
  • 大阴唇前连合阴唇前联合,是指大阴唇左右两侧在前端的联合处,位于阴阜下方。相应的后端则称为阴唇后联合。
  • 人类性别分化人类性别分化是人类性别差异之中的发展过程。 它被定义为表现型结构的结果对于产生贺尔蒙而跟随性腺决定的过程。 性别分化包括生殖器,体毛于两性上产生差异的过程,并扮演着性
  • 苏联人苏联人、苏联人民、苏维埃人民(俄语:советский народ)或称苏联公民(俄语:Граждане СССР)是对居住于苏联者之住民总称,最初仅非特定指涉居住在苏联的人民
  • 第八第八航空队(英语:Eighth Air Force)是美国空军全球打击司令部下属的一个编号航空队,指挥部位于路易斯安那州的巴克斯代尔空军基地(英语:Barksdale Air Force Base)。
  • 二氨基庚二酸二氨基庚二酸(DAP)是一种α-氨基酸。它是赖氨酸的ε-羧基衍生物。二氨基庚二酸是某些原核生物的细胞壁的组成成分。在构成革兰氏阴性菌的细胞壁的肽聚糖链上常常可以发现它的
  • 碘酸钠碘酸钠(NaIO3)是碘酸的钠盐。碘酸钠是一种氧化剂,但比氯酸钠和溴酸钠稳定得多。它与可燃物或还原剂接触可能导致火灾。它可以由氢氧化钠与碘酸的中和反应制备:还可以向热的氢氧
  • 磷酸钾磷酸钾是钾的磷酸盐,化学式为K3PO4,常见无水物和一水合物。磷酸钾可由磷酸铵((NH4)3PO4)和氯化钾(KCl)的复分解反应制得,溶解度较小的一者将沉淀:氢氧化钾和磷酸或磷酸二氢钾的反应
  • 公钥密码学标准公钥加密标准(Public Key Cryptography Standards, PKCS),此一标准的设计与发布皆由RSA信息安全公司(英语:RSA Security)所制定。RSA信息安全公司旗下的RSA实验室为了发扬公开密钥