丹尼尔·斯皮尔曼(Daniel Spielman)作为本科生就读于耶鲁大学,并于 2005 年作为教员返回,开始在计算机科学领域取得一系列突破性成果。
布兰登舒尔曼为广达杂志
坐落在耶鲁大学令人印象深刻的圆顶和尖顶之间的是丹尼尔斯皮尔曼的简单办公室。他的书架上摆满了黑色的高笔记本,里面有几十年的手写笔记,靠墙放着一张看起来特别好用的大而舒适的沙发。
“我天生就是为了静坐思考,”他承认道。
在哥特式的宏伟校园中,他想到的是一个稍微更现代的话题:计算机科学。在他的职业生涯中,斯皮尔曼取得了一系列有影响力的成果,尽管正如他所描述的,失败是他最常见的结果。 “关键是你必须享受工作的过程,”他说。 “只要我喜欢这个过程,那就没问题——只要偶尔有成功。”
斯皮尔曼首先以本科生身份来到耶鲁大学,然后在麻省理工学院攻读研究生,并于 1995 年获得博士学位。在那里,他研究了用于保护通信免受干扰的方法,其中涉及所谓的纠错码.罗伯特·加拉格(Robert Gallager)在 1963 年展示了如何从图形构建这些代码——由线(边)连接的点(顶点)组成的数学对象——但到了斯皮尔曼的时代,这种方法在很大程度上被遗忘了。斯皮尔曼和他的顾问迈克尔·西普瑟(Michael Sipser)是为数不多的人之一,他们复兴了它以创建由称为扩展图的特殊图构建的新代码。他们发明的代码成为编码理论后续工作的基础,包括最近的一项重大突破。
斯皮尔曼获得了两项哥德尔奖和罗尔夫·内万林纳奖,这些都是他所在领域的最高荣誉。
在麻省理工学院期间,斯皮尔曼遇到了现在南加州大学的研究员滕尚华,他的职业生涯将与他自己的事业交织在一起。他们最富有成效的合作之一涉及解释一种广泛使用的算法,称为单纯形法,为此,他们获得了哥德尔奖,这是理论计算机科学领域杰出工作的年度奖。
两人因提出可以快速求解大量简单线性方程组的算法而获得第二次哥德尔奖。每当科学家对简单的物理系统(如热流或电流)进行建模时,他们研究的方程组就会出现,这使得他们的算法具有重要的实际意义。
鉴于这些成果,斯皮尔曼在 2010 年获得了 Rolf Nevanlinna 奖,该奖每四年颁发一次,授予一位不到 40 岁的杰出信息科学家。 (该奖项已更名为 IMU 算盘奖章。)
最近,斯皮尔曼将注意力转向了支持现代医学研究的随机对照试验背后的数学。这些试验的组织者试图将研究对象随机分配到接受实验性治疗的测试组和不接受实验性治疗的对照组之间。然而,有限规模的群体最终总是会在某些类别中出现不平衡,例如年龄、体重或血压。斯皮尔曼与他的研究小组一起努力寻找实现更好平衡的算法。尽管起步缓慢,但该项目的进展比斯皮尔曼预期的要好。 “我们还没有宣布它失败,”他说。
“对于我已经解决的大多数问题,我可以确定某个时刻并讲述我想到某个解决方案的那一刻的故事,”斯皮尔曼说。 “但那只是因为我在他们身上花费了荒谬的时间。”
布兰登舒尔曼为广达杂志
Quanta在他的办公室与斯皮尔曼坐下来讨论思考的力量、成功合作的要素以及研究如何像赌博。为清晰起见,采访经过浓缩和编辑。
编者注:自 2012 年以来,斯皮尔曼获得了西蒙斯基金会的研究资助,该基金会也资助了这本编辑独立的出版物。
你是如何开始从事计算机科学的?
中学时图书馆里有一本关于计算机编程的书。我记得读过它,它让它听起来像是有史以来最神奇的事情。他们在谈论你如何为机器人编程——解释你必须如何对所有这些基本任务进行编程,并想出一些组织它的方法。从那时起,我就完全想要一台电脑。在某个时候,我的父母发现了一位工程师正在出售的一台旧 Commodore 计算机。令人惊叹的是,我们不仅得到了计算机,还得到了所有工程师的杂志和书籍。我仔细研究了它们。我只是花了很多时间阅读所有这些东西并学习编程。
小时候独自阅读书籍听起来很难。你是如何度过难关的?
我倾向于推动一切。当我年轻的时候,我真的很喜欢思考。但在我得到一台电脑之前,我没有可以花那么多时间思考的事情。我想你可以说我倾向于痴迷于事物。我喜欢非常努力地做一些事情。我确实感到沮丧,但这并不能真正阻止我。
让我继续前进的另一件事可能是让赌徒继续前进的同一件事。我会认为我有一个绝妙的主意,我会认为我解决了一些问题。我会很兴奋的。我将无法入睡。我妻子的反应是:“睡吧,早上你会发现虫子的。”她知道,几乎每次我都认为我已经解决了一些问题,但我没有。但是当你认为你已经解决了一些问题时,这是一种巨大的内啡肽冲动。即使通常的结果是你错了,那种兴奋的感觉也是激励人心的。
“我的记忆力真的很差,”斯皮尔曼说。 “当我需要记住事情时,如果我阅读笔记,我会记得更好。”
布兰登舒尔曼为广达杂志
是什么让你开始了你的第一个大项目,关于纠错码?
我的顾问曾建议尝试更好地理解概率可检验的证明——这是当时理论计算机科学的主要发展之一。我有一个将它们与扩展图相关联的想法,结果证明这实际上并没有用——但我意识到它对于制作纠错码很有用。所以我们正在研究一个问题,但我们未能解决这个问题,但我们开发的东西对其他事情很有用。扩展器代码感觉就像是我们偶然发现的意外。
我的很多研究都是如此。很多时候,我做某事的方式并不是因为这是我要解决的问题。我正着手解决其他问题,但它没有用。但我对知识领域有足够的了解,可以弄清楚我可以用它做什么。
这就是腾尚华和平滑分析的情况吗?
那是一个非常漫长的项目。至少,当时是这样的感觉。对于其中一些人来说,尚华实际上住在我们的公寓里。而且它确实来自我和尚华以前做过的另一个研究项目,但失败了。
您是如何开始进行平滑分析的?
人们在实践中做了很多事情,他们发现对他们有用,我们没有很好的理论解释为什么。我们试图理解其中一种被大量使用的算法,称为单纯形法。每个人都知道有失败的例子,但在实践中仍然非常成功地使用它。我们试图弄清楚如何解释这一点。我们最终提出的想法是它之所以有效,是因为它失败的所有情况似乎都非常非常脆弱。
在进行研究时,斯皮尔曼使用多种方法,如铅笔和纸计算、计算机实验以及简单地坐着思考。
部分原因是我们一直在编写所有这些示例。我们注意到,如果我们对数值精度不十分小心,那么突然间本应破坏单纯形法的事情就没有了。所以这就是我们得到的想法,如果输入中有一点随机性,那么这个方法就可以了。我们能够证明这一点。这是一个有影响力的想法,既因为它帮助人们理解为什么这个算法有效,也因为人们已经使用这个想法和概念来理解为什么许多其他算法有效。
为什么您认为您与 Teng 的合作如此成功?
当我在麻省理工学院开始读研究生时,他是那里的讲师。那时我们开始解决问题,并且有一种非常兼容的工作方式。你会注意到我的办公室里有一张沙发。在麻省理工学院的办公室里,我有两张沙发。这意味着尚华和我都可以工作——就像整天躺着思考某事,当你有想法时,就起来谈论它。他很乐意花很多时间思考事情和谈论问题。和我一样,他乐于解决我们可能无法解决的荒谬难题。失败是我们所做的任何事情的标准结果,即使我们已经为此工作了多年。但这没关系。
图在现代计算机科学和斯皮尔曼的大部分工作中都是必不可少的。
乍一看,对照试验的主题似乎比这些其他问题更直接。把人分成几组有什么难的?
这样想吧。如果我给你一枚硬币,你翻转 10 次并查看这些结果,即使它们是随机生成的,你也会看到其中的模式,比如可能连续四个正面。如果你只给我几个数量来衡量,比如年龄和性别,你给我 100 个人,如果你随机分解,那么其中一个就会有差异。完全随机几乎从来都不是正确的做法。
所以你想走某种随机性的钢丝?
我们称之为“巧妙地随机”。我们将其描述为完全随机和平衡您关心的数量之间的权衡。如果你测量的东西(如年龄或性别)对结果的影响很小,最好稍微平衡一下。我最初以为我们会平衡这些事情,但事实证明你只需要一点平衡和很多随机性。但这是最近的事态发展。大多数结果只是告诉您存在很好的划分,但没有告诉您如何找到它们。这是 Nikhil Bansal 从 2009 年开始取得的突破性成果,它首先开始让我们使用高效的算法来执行此操作。在我们的工作中,我们利用理论计算机科学的结果来进行这些平衡划分的有效算法。人们以前没有考虑过使用这些。
归根结底,为什么首先要解决如此困难的问题,而失败似乎如此频繁地发生?
这是一场赌博。我最有动力去做一些事情,如果我解决了这些问题,我会很高兴四处走动并发表演讲。一般来说,我不做其他事情。通常周围有一些。其他问题,我没有那么有动力花时间在他们身上。我也觉得所有的研究都很难——至少对我来说是这样。即使是看起来很简单的问题,我仍然认为很难解决。所以如果我要做一些很难的事情,为什么不做一些影响很大的事情,或者其他人认为也很难的事情呢?