返回第九十章 秒掉莫斯科  1978:从婴儿开始增加智商首页

关灯 护眼     字体:

上一页 目录 下一章

陆沉完成了全部代码和文档。林枫的测试用例也准备好了。

“提交吗?”林枫问。

“等一下。”陆沉说,“我再优化一个地方。”

他重新打开代码文件,定位到预条件子的构造部分。

其实现在提交,成绩已经足够好了。

不完整的cholesky分解比雅可比预条件快至少一个数量级,中国队在这个模块上的优势是碾压级的。

但陆沉忽然想试试另一个思路。

如果不完整的cholesky分解是1980年的解法,那么—

他能不能把时间线再往前推一点?

比如,1990年代才成熟的多重网格预条件?

不。时间不够。四十分钟写不完一个完整的多重网格框架。

但有一个折中的思路。

他可以在不完整分解的基础上,加入一个简单的块对角预处理,针对这道题矩阵的特殊分块结构。

这个改进不大,但能进一步压缩15%的运行时间。

而且,可以在现有代码的基础上用十分钟改完。

他动手了。

十一点五十五分。

陆沉按下保存键。

“提交。”

林枫长长地呼出一口气,像是终於卸下了什么重担。

评测过程是公开的。

各队的程序被依次送入besm—6主机,在统一的测试集上运行,运行时间和结果实时显示在赛场前方的大屏幕上。

第一队,保加利亚。运行结果:部分正確。运行时间:47.3秒。

第二队,捷克斯洛伐克。运行结果:正確。运行时间:42.1秒。

第三队,东德。运行结果:正確。运行时间:38.7秒。

隨著结果一个个公布,赛场里的气氛渐渐紧张起来。正確完成这道题的队伍並不多,大多数要么结果错误,要么运行超时。

第六队,匈牙利。运行结果:正確。运行时间:35.2秒。

匈牙利队的区域里发出一阵压低声音的欢呼。戴眼镜的男生朝陆沉这边看了一眼,比了个大拇指。

第七队,苏联。运行结果:正確。运行时间:

屏幕上跳动了一下。

31.4秒。

苏联队的区域里,队员们终於露出了笑容。金髮队长靠在椅背上,神色明显放鬆下来0

31.4秒。目前全场最快。

第八队,波兰。运行结果:正確。运行时间:33.8秒。

第九队,罗马尼亚。运行结果:部分正確。运行时间:超时。

第十队,中国。

陆沉感觉到林枫的身体绷紧了。

屏幕上的数字开始跳动。

加载程序。

初始化数据。

开始计算。

计时器的数字飞速增长。

0.5秒。1.0秒。1.5秒。

林枫死死盯著屏幕。

陆沉倒是很平静。

他已经知道了结果。

2.1秒。

计时停止。

运行结果:正確。

.

——

运行时间:2.1秒。

赛场安静了一瞬。

然后“什么?”

声音是从苏联队的区域传出来的。

金髮队长站了起来,盯著屏幕上的数字,脸上的表情从困惑变成难以置信。

2.1秒。

比第二名快了將近十五倍。

这不是“更快”。

这是不在同一个维度。

主考官也愣住了。他低头检查评测系统的日誌,確认没有出错。

没有出错。

日誌显示,中国队的程序確实在2.1秒內完成了全部计算任务。

而且,內存占用只有標准解法的三分之一。

主考官抬起头,看向中国队的方向。

“你们————”他用俄语说,然后切换成英语,“你们的预条件子,用的是什么方法?

翻译还没开口,陆沉已经用俄语回答了。

“不完整的cholesky分解,结合块对角预处理。”

主考官的眼神变了。

“不完整的cholesky分解?”他重复了一遍,“你是指————对係数矩阵做不完全的三角分解,捨弃填充元?”

“是的。”

“这个方法的收敛性””

“有保证。”陆沉说,“对於m矩阵,不完整分解的存在性和稳定性都可以证明。具体来说,如果係数矩阵是m矩阵,则任意捨弃填充元的不完整cholesky分解都存在,且预条件后的矩阵特徵值均为正实数。这道题的矩阵正好满足m矩阵条件。”

主考官沉默了好一会儿。

“你————证明过吗?”

“推导过。”陆沉说,“证明过程在我的文档附录里。”

主考官快步走向评测终端,调出中国队提交的文档。

屏幕上的內容一页页翻过。

算法描述。复杂度分析。数值实验。

然后,他看到了附录。

那里有一段简洁而严谨的证明,从m矩阵的定义出发,逐步推导出不完整cholesky分解的存在性和稳定性条件。

推导过程乾净得像一场外科手术。

主考官看了很久。

然后他转过身,用一种很奇怪的语气说:“中国队。算法设计模块。满分。”

他顿了顿,又补充了一句:“附加分。10分。”

附加分。

这是本届比赛第一次出现附加分。

林枫猛地转过头看陆沉,眼睛瞪得像铜铃。

陆沉只是平静地收拾著桌上的纸笔。

但他的手指,微微收紧了。

不是因为紧张。

是因为他知道,这件事不会就这么结束。

一个十岁的中国孩子,在莫斯科的赛场上,拿出了一套比世界最前沿还要超前的数值算法。

这不是数学竞赛。

这是某种信號。

他抬头看了一眼赛场后方的观察席。

那里坐著几个没有佩戴参赛证件的人。

其中一个,是索科洛夫。

索科洛夫正低头在笔记本上写著什么,似乎感觉到陆沉的目光,抬起头来。

隔著整个赛场的距离,两人再次对视。

索科洛夫合上了笔记本。

他的表情,看不出任何情绪。

但他的眼神,像是在看一件他找了很久的东西。

『加入书签,方便阅读』

上一页 目录 下一章