遗传编程

✍ dations ◷ 2025-02-25 01:11:31 #人工智能,进化算法,遗传算法

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

相关

  • 医师誓词希波克拉底誓词(希腊语:Όρκος του Ιπποκράτη,英语:Hippocratic Oath),俗称医师誓词,是西方医生传统上行医前的誓言,希波克拉底乃古希腊医者,被誉为西方“医学之父”
  • 亚马逊河流域亚马孙雨林(葡萄牙语:Amazônia、西班牙语:Amazonia),又称亚马孙河雨林,位于南美洲亚马孙盆地的热带雨林,占地550万平方公里,使这片雨林生机盎然的就是亚马孙河。雨林横越了8个国家:
  • 契尔西切尔西(英语:Chelsea)是美国马萨诸塞州沙福克县的一个城市,位于波士顿东北。面积6.4平方千米,是该州面积最小的城市。根据美国2000年人口普查,人口35,080人。1624年白人开始殖民,17
  • 少尿寡尿(英文:Oliguria),指排尿的量比正常人少。寡尿的定义因年龄差异而有所不同。寡尿通常是异常肾功能的最早征兆。
  • 硼氢化物硼氢化物是一类含有BH4−离子的化合物。硼氢化物无论对于无机物的制备还是有机物的合成都是非常重要的试剂。关于硼氢化物的制备可以参见文献。一些硼氢化物的性质如下表:
  • 栃木县栃木县(日语:栃木県/とちぎけん Tochigi ken */?),以前又叫做橡木县、杤木县,是位于日本关东地方北部的一个内陆县。东面连接茨城县、西面为群马县、南面为埼玉县、北面则接邻福
  • 新西兰国家广播电台新西兰国家广播电台(英语:Radio New Zealand;毛利语:Te Reo Irirangi o Aotearoa)是依据1995年的专法成立、由新西兰政府资金支持的公共广播电台,播出新闻、时事、艺术与音乐。
  • 抚顺抚顺县位于中国辽宁省东部,是抚顺市下辖的一个县。抚顺县大体是“七山一水半分田,半分道路和庄园”。处于低山丘陵向平原的过渡地带。东、东南、东北地势高,西、西南、西北稍平
  • 2011年凡城地震2011年凡城地震,震中位于土耳其东部凡城省境内,靠近与伊朗边境地区,地震规模为里氏7.2,震源深度距离地表7.2千米,发生于当地时间2011年10月23日13点41分21秒(UTC时间10时41分21秒)
  • 抹茶抹茶(日语:抹茶)是一种除去水分后的粉末状茶品,通常为冲泡热水后饮用,也常用于制作糕点、甜点制品。中文传统正写为“末茶”,其中“末”是“粉末”、“碎末”的意思,是一种起源于中