Lance Fortnow是一位世界级计算机科学家,佐治亚理工学院计算机科学系教授、主席。他的研究关注计算复杂性及其在经济理论上的应用。他在交互式证明系统领域取得的重要研究成果使他获选美国计算机协会院士。Fortnow教授创立了Computational Complexity博客,这是第一个主流计算机理论科学博客。他还是《ACM计算理论》的主编,同时也是美国计算机协会算法和计算理论协会(ACM SIGACT)会长。Fortnow任2000-2006年IEEE大会计算复杂性分会的主席。他把自己最受欢迎的学术论文“P/NP问题的现状”,改编成一部科普著作《可能与不可能的边界:P/NP问题趣史》。
图灵社区:你在书中通过讲故事的方式来解释很多晦涩的理论。你为什么要采用这种方式呢?
很多优秀的书都很好地阐释了P/NP问题及其相关问题。我想通过我的书影响更广的读者群,为了达到这个目的,我需要用有趣又达意的故事把这些艰涩的理论包装起来。这就像是几个世纪以来人类通过故事来描述自身的伦理道德和行为规范一样。
图灵社区:很多人认为计算复杂性既难又无趣,但是你却把它们定义为“有趣的东西”。你是如何开始对科学和计算机感兴趣的?
这都要多亏了我少年时代的老师们。特别是我高中时的一位老师,他真的做到了让数学和计算变得生机勃勃了。同时,我也很幸运能够拥有一台最早的微机,TRS-80,作为一个十几岁的少年,我的好奇心让我一直探索下去,我曾在那台计算机上花了大把时间试图弄明白它到底是怎么运行的。
图灵社区:你为什么建立了一个关于计算复杂性的博客?你最大的收获是什么?在这过程中有什么意想不到的经历吗?
2002年,我在《美国新闻周刊》上读到了一篇关于写博客的文章,然后我决定作为一个试验,我也要做一个博客。我选择了一个主题,计算复杂性,这是我熟知的题目。对我来说最大的嘉奖莫过于来自各行各业的人告诉我他们很喜欢读这个博客,甚至还有几位学生,他们之所以选择学习计算机科学就是因为这个博客。意想不到的经历也有一些,比如一些粗暴的留言者。看来一个人要想写哪怕只有一点点争议的题材,都需要一个厚脸皮。
图灵社区:为什么你的研究方向是计算复杂性在经济理论上的应用?计算复杂性在解决经济问题上能提供一个独特的视角吗?
经济学家通常都认为人们对自己选择所导致的结果很清楚。但是很多时候这些结果都很难通过计算得出。我的研究应用了计算复杂性的工具,用来理解人们做决策的过程,以及当人们拥有有限计算能力的时候如何互相影响。
举个例子,比如当你选择在哪个饭店用晚餐的时候。你不太可能会通过互联网来查看你所在城市每个餐馆的菜单、价格,以及评价。但是,你会把你的选择限制在有好评或者推荐的几家餐馆上,然后再能做出一个最适度的决定。计算复杂性可以帮助解释这些决策过程。
图灵社区: Stan Williams(HP实验室高级院士)说过,我们为计算能力所做的一切都是为了尽可能地接近物理定律,你同意吗?你的工作也是这样吗?
这是一个关于计算机科学的危险的简单视角。在2005年的时候,我们无法在不大幅度提高发热的条件下提高处理器的速度。如果我们跟着这样的思路走,我们在那时候就已经止步不前了。幸运的是计算机科学发展出了一些工具,它们可以让几个处理器在一块芯片上工作并和云上的其他芯片一起工作,而且,现在我们的计算能力仍然在逐年提高。
这确实是我工作的主要部分,作为佐治亚理工大学计算机科学学院的主席,我的工作就是要通过架构中的算法来确保获得更快、更安全、更聪明的计算环境,并在此领域处于领先水平。
图灵社区:现在很多大公司像Facebook或者Google都有自己的实验室,而且会提供给研究者接触大规模真实数据的机会。在你看来成为大学的研究者——教授的好处是什么?
对研究者来说得到大规模的数据是好事,这样我们的研究就可以更多地影响到现实世界。所以为什么要成为一个教授呢?钱并不是个大问题,教授可以做咨询,可以拥有他们IP的很大部分(根据学校不同),他们也可以自己开公司。教学虽然很费时间,但是让人很有收获。在我看来有两点,让当教授成为世界上最好的工作。
- 我有自己制定研究日程的自由。世界上只有很少的商业实验室给你自由选择课题的权利,为此奖励你的则少之又少。在学术界,我们期望你能够建立自己的研究领域,并获得成功。
- 我可以和学生们一起工作。导师和学生的关系跟父母和孩子很像。没有比看到自己的学生获得成功更让人高兴的事了。在业界也会有暑期实习生和博士后,但是感觉完全不同。
图灵社区:很多大型机构,甚至是军方都投资来研究量子计算机。如果有一天量子计算机高度发展,您能否预测一下人们的生活会如何改变?
根据我们现在所有的知识,并不会很大程度上改变我们的生活。量子计算只会在一些很专业的问题上给我们以很大的帮助,比如破解公开密匙加密。或许未来算法会在量子计算机上更快地执行一般任务,但是目前量子计算机的优势只是在有限的几个专业领域。
图灵社区:在读了你的书之后Vint Cerf说,他有点开始希望P不等于NP了。似乎不同的人对P/NP问题的最终回答有不同的期待。你是如何希望的呢?为什么?
我希望P = NP,那样我们就可以用一个简单的算法解决现实中大多数问题了。鉴于此,我认为P和NP是不同的,因为我不相信自然会给我们一个如此简单的解决方案。
图灵社区:如果并行计算和量子计算有一天投入使用,是否意味着人工智能已经离我们不远了。
计算机科学家在人工智能上已经做出了一些巨大的成就,特别是在机器学习方面,它在计算机视觉、病毒检测、语言翻译,以及语音识别方面都进步斐然。在这个十年的末尾,汽车就可以实现自动驾驶了,当然不是所有车。并行计算(并非量子计算)已经在这些领域中成为了一个主要角色。
如果你说的是真正意义上的人工智能,也就是有自我意识的计算机程序,那么并行或量子计算应该就帮不上我们的忙了,当然,前提是这件事本身是可能的。
图灵社区:有很多人对计算机相关领域和互联网产业很感兴趣,你对他们有什么建议?
首先,一定要学习很多东西。编程只是一个渠道,要在计算领域里实现成功需要很多天才共同的努力。
如果一定要从我的书中学会一件事的话,那就是很多计算问题都没有直接的解决方案。我们必须要跳出固有的思维模式,然后才能得出一个聪明的算法,而且有时候我们必须要接受一个事实,有些问题需要的解决方法非常不同,甚至需要重新定义成功的标准。