[转]赵金熙: 浅谈计算数学的过去和未来

赵金熙
南京大学计算机科学与技术系
1.引言
Numerical analysis is the study of algorithms for the problems of
continuous mathematics
—-Lloyd N. Trefethen
“计算数学”就是研究在计算机上解决数学问题的理论和数值方法。今天的数值计算方法,无论从形式到内容,还是从工具到效果,已远非半世纪前Von Neumann、Lax等先驱们所处的环境和条件了,计算机技术和应用软件的发展,让计算数学展开了双翼。许多迅速发展的其他学科和社会进步给计算数学的发展开拓出 更为广阔的新天地。
Maxims About Numerical  Mathematics and Computers
—-L.N. Trefethen
There are three great branches of science:
theory, experiment, and computation.
The fundamental law of computer science: As machines become more powerful, the
efficiency of algorithms grows more important,not less.
这里主要谈二个方面:从计算物理的发展过程来看计算数学的过去;计算数学的未来50年.[1–3].

一. 计算数学发展的历史回顾

1. 从计算物理谈起
计算数学的发展与科学工程计算是紧密相联的,计算数学的发展历史也就是与其他学科结合,利用计算机不断形成新的理论及数值方法并不断形成新的学科的历史,例如:”计算物理”。1959年5月美国总统发布命令,可以揭开曼哈顿计划的内幕,部分内容可以解密。故以”计算物理方法”丛书的名义陆续编辑出版

我们常说:
计算物理的物质基础是计算机;
计算物理的关键技术是”计算方法”和”程序设计”

计算物理发展的原始动力是美国核武器研制的刺激。
三位计算机设计大师的贡献(1900-1973),
哈佛大学的博士研究生毕业。因做博士论文涉及到空间电荷传导问题的计算,1937年提出方案,1939年得到IBM资助,1944年建成投入使用。这是继电式计算机-Mark I

J. W. Manchly (1907-1980),宾夕法尼亚物理博士,因从事天气预报需要想设计计算机,1942年提出计算机方案,1945年底竣工,这就是世界上第一台电子计算机-ENIAC机

J. Von Neumann (1903-1956)
普林斯顿高级研究所,1945年在普林斯顿研制成MANIAC机,有力地支持美国氢弹研制,称为计算机之父。(与中国的109丙机、J-501机相当)。
美国从1942年8月13日开始曼哈顿计划,到1945年制造出三颗原子弹:代号为:”三一”,用于试验(7月16日),”瘦子”投于广岛(8月6日),”胖子”投于长崎(8月9日)。
历时三年,涉及到理论物理、爆轰 物理、中子物理、金属物理、弹体弹道等大量的数值计算。
1949年8月苏联第一次原子弹爆炸后,杜鲁门总统在1950年1月31日下令继续研究各种类型的原子弹 武器,成立以氢弹之父特勒(E. Teller)为首的氢弹研制小组。直到1952年10月31日爆炸了代号为”麦克”的核试验。
在研制原子弹和氢弹过程中,许多物理规律必须通过计算机上的计算摸清楚。计算物理、理论物理与实验物理相辅相成相互促进共同发展,形成现代物理学的三大分支。
由于核武器研制需要,1950年全球只有15台,到了1962年9月仅美国就有16187台计算机。60年代中期,由于硅平面工艺的出现,集成电路成为独立的工艺,并且可借助计算机本身的力量而精益求精。硅的集成度平均三年增加4倍,而计算机本身每三年更新一次。60年代中期开始推出小型计算机,70年代末推出个人计算机,80年代中期又推出高性能的超级微机。而计算物理发展所涉及的大规模科学计算和模拟所需要的大型计算机却得到发展。
1981年以哈佛大学普雷斯(W. H. Press)为首的11位著名科学家联名上书,向美国国家科学基金会(NSF)呈送”发展计算物理的建议书”,大声疾呼计算物理发展正处于一个危机阶段,是NSF采取实质性行动的时候了。
1981年,戈尔在美国科学与电视艺术研究的一次演讲中,首先提出”信息高速公路”这个很前瞻性的概念,可能受其父亲以前曾向国会提出”洲际高速公路”提案的影响。

2.科学计算
1983年一个由美国著名数学家拉克斯(P. Lax)为首的不同学科的专家委员会向美国政府提出的报告之中,强调”科学计算是关系到国家安全、经济发展和科技进步的关键性环节,是事关国家命脉的大事。”
1984年美国政府大幅度地增加对科学计算经费的支持, 新建成五个国家级超级计算中心(分别在普林斯顿大学、圣地亚哥、伊里诺大学、康奈尔大学、匹兹堡),配备当时最高性能的计算机,建立NSF-net新网络。
80年代中期我国将“大规模科学与工程计算”列入国家资助重大项目。
1987年起美国NSF把”科学与工程计算”、”生物工程””全局性科学”作为三大优先资助的领域。
1990年美国国家研究委员会发表《振兴美国数学:90年代的计划》的报告,建议对由计算引发的数学给予特殊的鼓励和资助。
报告指出由于大存储的高速计算机的使用已导致了科学和技术方面的两大突出进展:
一是大量用于设计工作的实验被数学模型的研究逐步取代,如航天飞机设计、反应堆设计、人工心瓣膜设计等;二是能获取和存储大量的数据,并能提取隐秘的信息,如计算机层析X射线摄影,核磁共振等。
1991年以美国总统倡议的形式提出了”高性能计算与通信(HPCC)计划”。这是为了保持和提高美国在计算和网络的所有先进领域中的领导地位而制定的。
该计划为期五年(1992-1996),由美国8个重要部门负责实施。投资的重点(43%)是发展先进的软件技术与并行算法,关键技术是可扩展的大规模并行计算。
要求到1996年高性能计算能力提高14倍,达到每秒万亿次浮点运算速度(1012 Teraops/S)。
计算机网络通迅能力提高1百倍,达到每秒109位(Gigabits/S)。
该计划中列举的”挑战”项目有:磁记录技术、药物设计、催化、燃烧、海洋模拟、臭氧洞、空气污染、高速民用运输机、数字解剖、蛋白质结构设计、金星成像等。
1993年初美国总统发布”发展信息高速公路”(NII)的总统令。
1994年4月美国总统发布”建立国家(地球)空间数据基础实施”(NSDI)的总统令

3.战略计算
“战略计算”一词首次出现在1995年美国为了确保核库存的性能、安全性、可靠性和更新需要而实施的”加速战略计算创新(ASCI)计划”。这是因为美国克林顿总统在1995年8月11日宣布:”美国决定谋求真正的”零当量”全面禁止试验核武器条约”。
这并不意味着核竞赛的结束,恰恰相反是核武器计划新时代的开始,要求通过逼真的建模和模拟计算来取代传统的反复试验的工程处理方法。这主要依赖于先进的数值计算和模拟能力,为此应用程序必须达到高分辩、三维、全物理和全系统的水平。为了确保ASCI目标的实现,采取一项相互关联的策略措施:
① 建立协调一致的管理,在三个防务计划实验室的基础上组成”战略计算和模拟办公室”,统一指挥,由负责国家防务的副部长领导。
② 致力于开发高级应用软件。
③ 致力于发展高性能计算。
④ 建立解决问题的环境。
⑤ 促进战略联合和协作。
1995年8月22日(即美国总统宣布决定后的11天),能源部(DOE)就采购世界上最快的一台计算机(运算速度超过万亿次)交付圣地亚实验室(96年12月安装)。
1996年2月20日,能源部公开招标,将购买两台每秒运算速度达3万亿次的计算机。并竞争下一代系统,2000年达10万亿次。本计划实现的最后日期为2003或2004年,达到100万亿次(我国2000年8月宣布达3000亿次)。
1997财政年度美国总统提出1.216亿美元作为实施五个策略的经费预算。ASCI的学术战略合作计划(ASAP)在1997年8月通过招标和签订合同方式,
建立了五家合作中心:
斯坦福大学的湍流综合模拟中心;加州理工学院的模拟材料动态特性的计算中心;芝加哥大学的天体物理学热核反应瞬间闪光研究中心;犹他大学的意外火灾与爆炸模拟中心;伊利诺斯州州立大学的助推火箭模拟中心。
1998年1月31日,美国副总统戈尔(Al. Gore)在美国加利福尼亚科学中心发表了题为”数字地球-二十一世纪认识地球的方式”的演讲,首次提出”数字地球”的全新概念。
为此需要的技术有:计算科学、海量储存、卫星图像、宽带网络、互操作、元数据等。

1998年7月30-31日,美国的DOE/FNS共同联合组织召开了关于”先进科学计算”的全国会议。会议强调科学模拟的重要性,希望应用科学模拟来攻克复杂的科学与工程难题。号召全国科学技术工程界更广泛地使用高性能超级计算机,动员更多的人来从事软件、算法、通信基础设施、可视化系统的研究和开发。
1998年9月,美国DOE在全国范围内倡议实施”科学模拟计划”(SSP),提出要加速”燃烧系统”与全球气候系统”这两大应用领域的科学模拟研究。并希望在以下五个方面的工作能得到全国的大力支持:
算法,其它方法与库技术;
解决问题的环境与工具;
分布式计算与协同计算环境;
可视化处理与数据管理系统;
系统体系结构与平台战略研究。
1999年初美国总统信息技术顾问委员会提出一项题为《21世纪的信息技术:对美国未来的大胆投资》的报告(即IT2计划)。
美国在2000年度财政预算中有关信息技术方面的投资达3.66 亿美元(增加28%),重点投资的三个领域是:①长期信息技术研究;②用于科学、工程和国家的高级计算;③信息革命的经济和社会意义研究。将在超级计算机、数学模拟和网络等方面取利新的进步,
开创一个新的迈向自然世界的窗口一使得计算作为科学发现的一种工具,而和理论及实验具有同等的价值。

数值方法和数值软件过去50年的主要进展附录
Before 1940
Newton’s method; Gaussian elimination; Gauss quadrature; least squares
fitting; Adams and Runge-Kutta formulas;Richardson extrapolation

1940-1970
floating point arithmetic; Fortran ; finite differences; finite elements; FFT; simplex algorithm; Monte Carlo; orthogonal linear algebra; spline function

1970-2000
quasi-Newton iterations; adaptivity; stiff ODE solvers; software libraries; Matlab; multigrid; sparse and iterative linear algebra; spectral methods; interior point methods

二.计算数学未来50年的展望
我们将更多的通过声音,而不是键盘向计算机传递信息,而计算机将更多地以图象而不是数字反映结果。
数值计算将更具有适应性、迭代性、灵活性。计算能力大得惊人。数值计算中更具智能性。求解线性方程组的浮点运算量会下降。
Krylov型算法会有新的进展;条件预优矩阵的确定、谱方法、PDE的时间步长会有新的突破。

2000–2050
linear algebra in O(N2+eps) flops;multipole methods; breakthroughs in reconditioners, spectral methods, time stepping for PDE;fully intelligent, adaptive numerics; loss of determinism;speech and graphics everywhere…

参考文献:
[1]张锁春:计算学是科技进步的重要推动力量—浅谈计算物理和高性能计算
学。中国科学报, 1997/8/4
[2]张锁春:  计算物理、科学计算、战略计算, 计算数学通讯,2000.2
[3]L.N. Trefethen: 今后50年科学计算预测, 计算数学通讯, 1999.1