引言
序曲:为什么你的车总是无法在他们承诺的时间内修好
百万美元问题
每年都有一群杰出的科学家、经济学家、文学巨人和人道主义者聚集在斯德哥尔摩领取声名卓著且奖金丰富的诺贝尔奖,但他们之中没有一位数学家。诺贝尔奖为何没有数学奖这个问题一直悬而未决。一种流行但也许是不足信的传闻是这样说的,在诺贝尔奖设立之时,阿尔弗雷德·诺贝尔(Alfred Nobel)的妻子与当时有名的瑞典数学家古斯塔夫米塔格-莱弗勒(Gustav Mittag-Leffler)有染。当然,数学界有自己的菲尔兹奖,它每四年颁发一次,但是只授予四十岁以下的数学家。获得菲尔兹奖能够终身说明你是顶尖聪明的,但所获得的收益恐怕不够负担你孩子的大学学费。
在新世纪的转折点,克莱数学研究所(Clay Mathematics Institute)提出了数学领域的七个重要问题并为每道问题提供了前所未有的一百万美元奖金。其中的某些问题,例如伯奇和斯温纳顿-戴尔猜想(Birch and Swinnerton-Dyer conjecture)非常专业,只有该领域的专家才能理解它所描述的问题;另外两个问题,纳维-斯托克斯方程(Navier-Stokes equation)和杨-米尔斯理论(Yang-Mills theory)则属于数学物理领域,这些问题的答案将让我们能够更好的理解物理世界,并且也许能够带来显著的技术进展;然而其中的一个问题却联系着我们生活中最令人迷惑的小烦恼:为什么你的车总是无法在他们承诺的时间内修好?
送人去月球
当约翰·F·肯尼迪总统保证要在20世纪60年代末将人送到月球上的时候,他肯定没有预见到太空竞赛将会产生的众多影响。当然,太空竞赛对微电子工业产生了巨大的推动作用,导致了计算器和个人计算机的出现。两个次要的结果则是果珍(Tang)一种供宇航员饮用并迅速登陆超市货架的橙味饮料和特氟龙(Teflon),一种超级光滑的物质,它不仅仅被用于制作众多厨具的涂层,还逐渐融入了英语中成为了渎职指控永不沾身的政治家的代名词。最后,太空竞赛也导致了一系列对于理解为什么这个世界从不循规蹈矩这样的问题的新观念。
美国曾经执行过另一个庞大的科技计划曼哈顿计划,但是研制原子弹对于把一个人送到月球上要相对简单至少从日程安排的观点上来看是这样的。曼哈顿计划有三个主要日程炸弹设计与测试、铀原料的生产和训练任务。前两项计划可以独立地执行,虽然实际的测试需要等待从汉福德(Hanford)或橡树岭(Oak Ridge)工厂送来的足够的可裂变材料。训练任务只有在武器的规格都众所知周的时候才开始,并且相对简单保证有一架运送的飞机和一队机组人员即可。
从日程安排的观点,送人去月球是一项困难得多的任务。在工业联合体、科学部门和宇航员训练计划之间存在着巨量的协调工作。即使是看上去很简单的事情,比如说计划编制月球宇航员的单独任务职责就需要非常细致的工作。在将宇航员送往月球的时候,许多任务需要精确的计划,才能在外界限制条件(像保证太空舱的旋转避免过热)都满足的情况之下最合理地利用时间。这样就诞生了一门叫做时序安排(Scheduling)的数学分支,有了它,有关改进如何将独立部分组成一个整体(往往是反效果或反直觉)的发现就不断涌现。
那么为什么你的车总是无法在他们承诺的时间内修好?
无论你家附近的修车厂是在达拉斯、丹佛或是得梅因,它们大都会遇到同样的问题。在任意一天里,总有一大堆的汽车等待修理,以及一大堆的修理设备和修理工人需要安排。如果只有一辆车,那么谈不上好计划;但如果有多辆车需要修理,那么高效率地修车就变得重要。修理厂中也许只有一台诊断分析仪和两台液压升降台理论上,我们希望将修理顺序做一个计划,使得每台设备都能派上用场,因为闲置等于浪费。同样的事情也适用于空闲的修理工,因为他们是按小时付费的,如果他们只是坐在一边等待汽车进入修理状态,那也会浪费金钱。
时序安排的一个关键方面是如何显示待完成的任务、它们之间的相互联系、以及完成每项任务需要的时间。比如说,要检测一个轮胎是否漏气,需要在将它进入水中检查之前从车上卸下。标准的显示任务、耗费时间以及任务之间相互关系的方法是利用有向图(digraph)。有向图是一种图表,它利用方块和箭头表示哪些任务需要完成,任务完成之间的顺序,以及所需要的时间下面是一幅示意图。