第149章 计算机雏形(1/2)
兴威三十三年(1381年),东宋清华书院的大师贝奇,心中萌生了一个大胆的想法——建造一台大型差分机。
彼时的东宋,航海、工程、天文等领域的发展日新月异,这些领域的精准推进,高度依赖三角函数表、对数表等各类数学用表,每一个数据的精准度,都直接关係到各项事业的成败。
然而,当时所有的数学用表,全靠人工计算、手工誊写而成,即便计算者、誊写者万分谨慎,也几乎无法避免出现微小的数字错误。
可谁也没想到,就是这样一个看似不起眼的微小错误,往往会引发难以挽回的后果:可能导致航船在茫茫大海中迷失方向,最终葬身海底;也可能让一座桥樑的设计出现偏差,竣工后不堪一击,酿成安全事故。
贝奇本人就曾深受对数表中错误数据的困扰,他曾不止一次感嘆:“我真希望这些繁琐的计算,能用蒸汽来完成!”
正是这份对数据精確性的极致追求,以及对人工计算弊端的深切体会,让他萌生了一个前所未有的念头——用机器替代人工,完成计算与数表印製的工作,从根本上杜绝人为误差。
於是,贝奇潜心钻研,设计出了差分机的雏形。
这台机器的核心思想的是“差分法”,这个方法极为巧妙,成功避开了复杂繁琐的乘法和除法运算,只需通过重复的加法操作,就能精准计算出多项式的值,大大降低了计算的难度与误差。
它的基本原理並不复杂:对於一个n次多项式,其n次差分是一个恆定不变的常数。
而东宋航海、天文等领域常用的对数函数、三角函数等,都可以通过多项式展开的方式进行逼近。
因此,只要给机器输入几个关键的初始值,它就能够通过反覆的机械加法运算,自动、快速且准確无误地生成一长串函数值,完美替代人工计算。
为了让人们更直观地理解差分机的工作原理,我们可以看一个简单的例子。
以函数f(x)=x2+ x + 28为例:
一次差分Δf(x)= f(x+1)- f(x)= 2x + 2;
二次差分Δ2f(x)=Δf(x+1)-Δf(x)= 2(这是一个恆定不变的常数)。
只要知道f(0)、Δf(0)和这个常数2,就可以像滚雪球一样,通过连续的加法运算,一步步得出f(1)、f(2)、f(3)……的所有数值。
这个过程,就像是在玩一个数字版的“多米诺骨牌”,只要推倒第一块,后面的数字就会按照规律自动生成,无需人工干预。
我们可以將函数f(x)=x2+ x + 28的整个计算过程,拆解成三步,清晰理解其逻辑:
第一步:理解“差分”。
“差分”简单来说,就是相邻两个计算结果之间的差值。
一次差分(Δf),就像是爬楼梯时,从当前台阶到下一个台阶,上升的高度;二次差分(Δ2f),则是看看“上升的幅度”本身如何变化,也就是相邻两个“一次差分”之间的差值。
第二步:计算初始值(也就是我们需要的那“第一块骨牌”)。根据函数公式,我们先算出开头几个数值,就能找出其中的规律,具体如下表所示:
x | f(x)=x2+ x + 28 | 一次差分(Δf) | 二次差分(Δ2f)
0 | 28 | f(1)-f(0)= 30 - 28 = 2 | -
1 | 30 | f(2)-f(1)= 34 - 30 = 4 | 4 - 2 = 2
2 | 34 | f(3)-f(2)= 40 - 34 = 6 | 6 - 4 = 2
3 | 40 | ...... | ......
从这个表格中,我们能提取出三个最关键的数字,这也是差分机计算的核心:
f(0)= 28:这是整个计算的起点,是所有后续数值的基础;
Δf(0)= 2:这是从x=0到x=1的第一个“一次差分”,是第一步加法的关键;
二次差分= 2:这是一个恆定不变的常数,也是二次函数的核心特徵,正是这个常数,让连续加法计算成为可能。
举个例子,我们用差分法计算f(4)的值。按照传统方法,我们需要计算42+ 4 + 28 = 16 + 4 + 28 = 48;但如果用差分机的思路,只用加法就能完成:
本章未完,点击下一页继续阅读。