C. Elegans: The Worm That No Computer Scientist Can Crack
让计算机科学家也束手无策的 C. Elegans 蠕虫
当我在第一次运行蠕虫模拟程序时,圣安娜风已经刮得很猛烈了。我不是什么黑客,但操作起来很简单:打开一个 Terminal shell,粘贴从 GitHub 复制的一些命令,看着字符像电影里一样倾泻而下。我一边扫描着代码中出现的 neuron (神经元)、synapse (突触)等熟悉的词,一边等朋友来接我去吃晚饭。“等一下,”我在办公室里喊道,“我正在我的电脑上运行一个蠕虫。”
在韩国餐厅,气氛很狂热;风把棕榈树吹弯了腰,让购物车在停车场里四处滑动。这种感觉既强烈又不真实,就像在以双倍速播放的 podcast 一样。你正在做什么?网络犯罪吗? 朋友问道。在喧闹声中,我试图解释:不,不是像 Stuxnet 那样的蠕虫。而是像 Richard Scarry 绘本里的蠕虫。
当我回到家时,天已经黑了,第一批火花已经落在了 Altadena。我的笔记本电脑上,在一个立体的像素盒子里,等待着我的是那条蠕虫。它的两端是尖的,漂浮在粒子雾中,怪异地笔直且静止。当然,它不是活的。但对我来说,它看起来比死还死。“干得好,” Stephen Larson 在那天晚上晚些时候我联系他时说,“你已经达到了模拟的 ‘hello world’ 状态。”
后量子算法、热力学硬件、开源架构、末日级编程等等:WIRED 带你走进现代计算的前沿领域。
Larson 是 OpenWorm 的联合创始人,这是一个开源软件项目,自 2011 年以来,一直试图构建一种叫做 Caenorhabditis elegans 的微观线虫的计算机模拟。他的目标是创建一个真实蠕虫的数字孪生体,精确到分子级别。如果 OpenWorm 能够做到这一点,它将成为第一个虚拟动物——并且是我们所有关于 C. elegans 知识的体现,C. elegans 是科学研究最多的动物之一,也是大脑如何与世界互动以产生行为的知识体现:正如 OpenWorm 所说,这是系统生物学的“圣杯”。
不幸的是,他们还没有成功。我笔记本电脑上的模拟程序提取了从活蠕虫实验中收集的数据,并将其转换为名为 c302 的计算框架,然后驱动 C. elegans 蠕虫在流体动力学环境中的模拟肌肉——总而言之,是对蠕虫如何在平板状粘液中向前蠕动的模拟。生成五秒钟的这种行为需要大约 10 个小时的计算时间。
10 个小时内可能会发生很多事情。一个火星可能会随着风飘移,从山脚下进入沉睡的城市。那天晚上,在 Larson 的建议下,我调整了模拟的时间参数,超越了“hello world”状态,进入了蠕虫的恐怖谷。第二天早上,我醒来时看到一片诡异的橙色雾霾,当我睁开朦胧的睡眼,打开笔记本电脑时,有两件事让我心跳加速:洛杉矶着火了。而我的蠕虫动了。
此时,你可能会问自己一个非常合理的问题。回到韩国餐厅,在吃韩国小菜的间隙,我的朋友也问了这个问题。问题是:呃……为什么? 面对我们岌岌可危的绿色世界所遭受的一切,面对所有需要解决的问题,为什么有人会花 13 年的时间试图将一条微小的蠕虫编码到存在中?
作为一种回答,我将提供物理学家 Richard Feynman 最著名的一句话:我无法创造的东西,我就不理解。 在其大部分历史中,生物学一直是一门还原论科学,其原则是理解生物令人难以置信的复杂性的最佳方式是将它们解剖成它们的组成部分——器官、细胞、蛋白质、分子。但生命不是一个钟表装置;它是一个动态系统,意想不到的事情从所有这些小部分之间的相互作用中涌现出来。要真正理解生命,你不能只是把它分解。你必须也能够把它重新组合起来。
C. elegans 线虫是一种微小的蠕虫,长度几乎和头发一样细,身体里只有不到一千个细胞。其中只有 302 个是神经元——大脑能达到的最小规模。“我记得,当我的第一个孩子出生时,当他们达到可以数到 302 的年龄时,我是多么自豪,” Netta Cohen 说,她是一位计算神经科学家,在利兹大学经营着一个 蠕虫实验室。但 Cohen 强调说,渺小并不丢人:C. elegans 用少量的资源做了很多事情。与它那些令人讨厌的表亲不同,它不是寄生虫,不需要将它的生存需求外包给更大的生物体。相反,它是生物学家所说的“自由生活”动物。“它可以繁殖,它可以吃东西,它可以觅食,它可以逃跑,” Cohen 说。“它出生并发展,它衰老并死亡——所有这些都在一毫米之内发生。”
像 Cohen 这样的蠕虫爱好者会很快告诉你,至少有四个诺贝尔奖授予了对 C. elegans 的研究,C. elegans 是第一个既完成了基因组测序又完成了神经元图谱绘制的动物。但示意图和操作手册之间存在差异。“我们知道连接方式;我们不知道动态,” Cohen 说。“你会认为这是一个物理学家、计算机科学家或数学家解决的理想问题。”
他们当然尝试过了。C. elegans 的第一个模拟者是 Sydney Brenner,他通过他那篇 具有里程碑意义的 1986 年论文《线虫 Caenorhabditis elegans 神经系统的结构》将不起眼的蠕虫从堆肥堆提升到了科学巨星的地位,这篇论文在蠕虫圈子里被恭敬地称为“蠕虫的思维”。在英国剑桥的一个实验室里,Brenner 的团队花了 13 年的时间,一丝不苟地切片蠕虫,并通过电子显微镜拍摄它们,依靠第一代小型计算机——用穿孔纸带编程的那种——将它们的数据重构成蠕虫神经系统的基本图谱。
自那以后,每隔 10 或 20 年,计算机科学家都会尝试扩展 Brenner 的工作。但生物学往往会很快让计算机专家感到谦卑。2003 年,计算机科学家 David Harel 宣布模拟 C. elegans 是生物学的一个“重大挑战”,他认为生物学领域早就应该从“分析转向合成”了。虽然 Harel 肯定是对的,但他从未设法模拟超过蠕虫的阴门——这是真的。
就 Cohen 而言,她花了 20 年的大部分时间发表突破性的计算模型,这些模型解释了 C. elegans 在不同粘度中向前蠕动时的正弦曲线。但是蠕虫如何向后移动是一个完全不同的、尚未解决的问题——甚至不要问蠕虫如何向上和向下移动,或者,就此而言,为什么。我们拥有的关于 C. elegans 行为的所有数据都来自平板琼脂中的蠕虫。就我们所知,它们在野外可能会做完全不同的事情。“为什么不呢?” Cohen 笑着说。“这是生物学。”
当 OpenWorm 在 2011 年宣布其意图时,工程师 Stephen Larson 在开源中“找到了信仰”,他相信如果他能够召集一群敬业的计算研究人员来尝试解决生物学问题,他们可能会在模拟方面取得有意义的进展。十三年后,他更加悔恨。“这个项目可能是一座大教堂,” Larson 告诉我。“如果我没有能力完成它,那么至少其他人可以看到它并在此基础上继续建设。”
这可能是倦怠在说话;在任何时间段内领导一个资金不足的开源项目都会耗尽即使是最专注的理想主义者。这可能是 C. elegans 大脑具有欺骗性的复杂性,它继续拒绝被轻易捕获。这也可能只是糟糕的时机。
OpenWorm 不做自己的研究。相反,该项目的志愿者团队从 C. elegans 文献中收集数据,并将他们可以找到的任何数据整合到他们的模拟中。这意味着他们依赖于像 Cohen 这样的蠕虫实验室,这些实验室在产生对计算工作真正有用的输入方面进展缓慢。但是在过去的十年左右的时间里,实验人员已经启动了显微镜并改进了遗传技术,从而产生了更多、更好的蠕虫大脑在进行其活动时的记录。与此同时,机器学习工具已经出现,可以理解所有这些数据,并且计算能力也在飞速发展。这种融合让 Larson 充满希望。“当你处于几乎呈指数级增长的技术扩张时代时,听起来很疯狂的事情也许是可行的,”他说。
我问了在 OpenWorm 科学顾问委员会任职的 Cohen,这实际上是否可行。“好吧,让我们从前提开始,它是可行的,”她说。“我们需要做什么?” Cohen 是 最近一篇观点论文 的 37 位合著者之一,该论文概述了一个新的计划:使用基因成像技术,逐个激活蠕虫神经系统中的每个神经元,测量其对其他 301 个神经元的影响。通过在平行实验中重复数十万次,这种有条不紊的过程应该收集到足够的数据,最终为计算人员提供可供使用的东西——甚至足以“逆向工程”蠕虫。
这是一个雄心勃勃的提议,需要大约 20 个不同的蠕虫实验室之间进行前所未有的合作。新泽西理工学院的计算神经科学家,也是逆向工程论文的主要作者 Gal Haspel 估计,要完成这项工作可能需要长达 10 年的时间,耗资数千万美元,并需要大约 100,000 到 200,000 条真实蠕虫。在此过程中,它将产生比迄今为止所有科学中收集到的关于 C. elegans 的更多数据。最终,逆向工程师将展示什么呢?“所有这些人,所有这些计算机,” Haspel 说。“我们最终会做一只小动物现在就能做的事情。”
他很幽默。Haspel 还将该项目比作 NASA 的登月计划:这是一种推动技术前进的行动,促使工程师制造更好的工具,并促使科学家们协同工作。Haspel 认为,蠕虫模拟是一个新科学的机会,一种由自动化、大数据和机器学习驱动的科学。尽管最终产品只是一条蠕虫,而且是一条昂贵的、效率低下的蠕虫——在某种意义上是世界上最精致的 Tamagotchi——但它可以成为理解更复杂神经系统,并最终在未来某一天理解人类思维的垫脚石。
去年夏天,一位加密货币开发者在 X 上发布了一个虚拟 C. elegans 蠕虫在屏幕窗口中乱撞的动画 GIF。该动画是使用与我在自己的笔记本电脑上运行的相同的代码生成的,该代码可在 OpenWorm 的 GitHub 上免费获得。“如果蠕虫矩阵在我的 M1 Mac 上运行,” 他宣称,“我们实际上处于基础现实的概率是多少?” 也许_我们_是蠕虫,他的意思是——并且,在某个更高层面的宇宙 MacBook 上,有人正在运行我们。这篇文章迅速传播开来;当然,Elon Musk 也点赞了。
当我向 OpenWorm 项目主管 Padraig Gleeson(伦敦大学学院的计算神经科学家)提到蠕虫矩阵时,他明显地畏缩了一下。“有些人来到这里是因为他们想要进行关于这类事情的哲学讨论。这很好,”他说。“我的首要任务是非常希望能够实际地看看生物学。”
Gleeson 是 Larson 的 Woz——他对构建 Überworm 的兴趣不如构建一个捆绑了 C. elegans 生物机制的更小、更精细的模型的平台。计算建模在生物学中是一种常见的做法;这是一种廉价的方式来编码和测试理论,作为“思想实验”,然后再取出琼脂平板和蠕虫食物。通常,生物模型关注的是所研究生物体的某些小方面——例如,驱动向前运动的少数神经元。在建模方面,“我们不希望地图和区域一样好。这将适得其反,” Rose-Hulman Institute of Technology 的计算神经科学家 Eduardo Izquierdo 解释说,他专注于蠕虫建模。“我们正在寻找一些东西来帮助我们思考问题。”
没有人会将生物模型与真实事物混淆。但是一个完整的模拟打开了一个非常不同的潘多拉魔盒。借用 Izquierdo 的说法,它_是_一张与区域一样好的地图——因此,它引发了对该区域性质的新猜测,更不用说生命本身了。如果模型可以帮助科学家回答问题,那么模拟会提出问题。例如,如果虚拟蠕虫与其活着的同类在分子水平上完全相同,那么是什么将它们区分开来?
Larson 认为,一个完全真实的蠕虫模拟将是一个类别扩展事件:它不会使我们当前对生命的理解失效,而是可能会扩大它。“如果我们想说只有具有物理分子的系统才能满足生命的要求,这些物理分子实际上存在于地球上并具有质量,那么计算机中没有物理分子的东西就不能是活的,”他说。“但是,如果我们扩展我们对生命力的定义,使其更多地与信息有关,那么也许有一种生命力的版本可以应用于模拟动物。然后问题是,这重要吗?”
我认为这很重要。生命是信息,但它也是更多的东西——当我们失去它时,我们感受最强烈的东西。我想,在这种情况下,Feynman 的说法不应该被修改。确切地说,不是创造孕育理解。而是只有通过尝试重新创造生命,我们才能理解它是多么的不可替代。
当然,我说这些话是因为我周围都是破坏。现在的空气有毒,白色的灰烬飘落到房子的每一个角落。在疏散区的边缘,距离足够近可以闻到烟味的地方,我一直在通过烹饪越来越多的 C. elegans 原型模拟来分散自己的注意力。看着它们,我不禁惊叹于破坏生命是多么容易,创造生命是多么困难。只需一个火花就能在一夜之间烧毁几个世纪的生长——但是要促使一条虚拟蠕虫向前蠕动一英寸?那是几十年来的工作,而且可能永远无法完成。
请告诉我们您对本文的看法。请发送信件至编辑邮箱 mail@wired.com。
计算前沿议题
- 如何在计算机控制你之前控制它们
- 量子末日即将来临。非常害怕
- 全新的热力学芯片 可能超越经典计算机
- 互联网的重量 会让你震惊
- 软件工程师 实际如何使用 AI
- 量子计算已死。量子计算万岁!
- Angelina Jolie 对计算机的看法是对的
Claire L. Evans 是 YACHT 的主唱,也是《Broad Band: The Untold Story of the Women Who Made the Internet》的作者。 ... 阅读更多
主题:longreads Computers computer Evolution worms coding Frontiers of Computing Biology open source
标题: C. Elegans:计算机科学家也无法破解的蠕虫