在霍德.利普森位于康奈尔大学的创意机器实验室中,奇形怪状的机器人正在学习爬行和飞行。这些机器人并不是人类工程师设计出来的,而是进化来的,和地球上生命多样性产生的过程一样。
使这些机器人进化的算法,是19世纪由查尔斯.达尔文发明的。那时他不觉得这是一种算法,部分原因在于当时缺少一个关键的子程序。一旦1953年詹姆斯.沃森和弗朗西斯.克里克提供了该子程序,进化就会进入第二个阶段:该进化是在计算机中而不是活体中进行,而且会比活体进化快10亿倍。该子程序的提倡者是约翰.霍兰德。
和许多其他早期的机器学习研究者一样,霍兰德开始时研究的是神经网络。在密歇根大学读研究生时,他阅读了罗纳德.费雪的经典著作《自然选择的遗传理论》。在该著作中,同时作为现代统计学奠基人的费雪,提出了关于进化的第一套数学理论。霍兰德认为该理论遗漏了进化论的精华,费雪孤立地看待每个基因,但是有机体的适应度就是它所有函数的复值函数。如果基因都是独立的,它们变量的相对频率会快速收敛至最大适应点,然后从此保持均衡。但如果基因相互作用,进化(追求最大适应度)就要复杂得多。
随着霍兰德的创作渐渐为人所知,遗传算法的关键输入就是一个适应度函数。给定一个特定程序和某个设定的目标,适应度函数会给程序打分,反映它与目标的契合度。
适应度函数将人