第22话
在充分分析了大家的建议后,最终决定谁的建议也不听,而是找个自己感兴趣的领域,比如电子游戏“双人网球”。小时候就经常听老师说:“兴趣是最好的老师。”但我从小的兴趣就是玩,也没见谁给我介绍个专门教怎么玩的老师。
如果再去麻烦之前给我提过建议的人,帮我研究其他题目,恐怕会让人反感。于是找了唯一没有问过他建议的朋友,大黄舍友——威廉·戴维斯。想求他能不能找找了解模拟计算机的人,或者提供一些参考文献。戴维斯平时很少开玩笑,甚至有时候过于较真。不过优点是非常有原则,求他的时候内心要保持真诚,戴维斯是非常能感受到朋友正在寻求帮助,必定会全力帮忙。
戴维斯帮我介绍了一个在伺服机构实验室做研究的导师——埃弗里特·范巴斯滕。听我说对双人网球特别感兴趣,范巴斯滕也认为模拟计算机可以计算微分方程之外,还可以做很多应用。范巴斯滕说:我们就以“双人网球”游戏作为切入点。由模拟计算机的工作原理、核心组件与“双人网球”系统的具体实现开始逐渐深入。最后拿模拟计算机与数字计算机进行对比分析,可以尝试一下将两种计算的优点结合。畅想一下除传统科学计算外,还有什么应用前景。我说您一句话就能让我顺利毕业了,范帅真高明。范巴斯滕说:范帅是什么意思?我说就是一种尊称,和“大师”,“师傅”差不多。但是叫范师傅有点像厨师,所以就尊称您为范帅了。范巴斯滕说哈哈,我还以为你也看球呢。
范帅又推荐了我两本关于模拟计算机的书,一本是格拉尼诺·科恩和特蕾莎·科恩合著的《电子模拟计算机》。主要讲了模拟计算机基本原理,模拟计算机使用连续变化的物理量,主要是电压和电流,来表示变量,通过电子元件的特性来实现数学运算。模拟计算机直接在物理层面模拟数学关系,因此特别适合解决微分方程等连续问题。
从这本书里摘抄的第二个重点就是核心组件与功能,模拟计算机的基本组件包括:运算放大器,实现加法、减法、积分、微分等基本运算。电位器,设置常数和参数。电容器,执行积分运算。电阻网络,调节系数和比例。这些组件以特定方式连接,构成了可以求解复杂方程的计算网络。
另一本是阿彻尔写的《计算与模拟中的模拟方法》。介绍模拟计算机的数学建模、应用和实际电路设计。这书里的知识点正好可以覆盖“双人网球”这个电子游戏的设计思路。重力场,通过积分器实现加速度对速度的影响。碰撞检测,使用比较器电路检测边界条件。轨迹计算,利用微分方程求解器计算球的位置。用户通过控制器调整击球角度和时机,系统实时响应并更新显示。这种交互模式利用了模拟计算机的实时性能,无需复杂的程序逻辑即可实现流畅的用户体验。
这些内容几乎可以直接拿来当我论文的技术背景。论文的第二部分就是用模拟计算机与数字计算机进行对比分析。这里也是范帅最感兴趣的地方,范帅说:现在比较流行跨学科搞研究,你们林肯实验室的SAGE系统,将计算机、电子、通信等技术结合起来。人工智能实验室把语言学与计算机科学结合。比较大胆的还是杰伊·福雷斯特教授,将工程学的系统动力学方法应用于管理学领域。我说你也知道福雷斯特教授啊,我还参加过他上次组织的啤酒游戏呢。范帅说我没参加,那不就是一个蝴蝶效应的例子吗。我说福雷斯特教授好像说这个叫长鞭效应吧。范帅说有什么区别呢。我想了想说:好像没什么区别,都是连锁反应,小变化导致大影响。
范帅说如果做模拟计算机与数字计算机的比较,我觉得可以从几个方面考虑。他站起身,拉过来一个黑板,边写边说道:第一,处理速度与精度。模拟计算机在处理特定类型的微分方程时,展现出近乎实时的计算能力,但精度受限于电子元件的物理特性。相比之下,数字计算机虽然计算速度较慢,但可以通过增加位数实现更高精度。我说这就造成了这两种计算机应用场景不同了吧。
范帅说对,这正是我要说的第二点,适用领域的比较。模拟计算机更注重模拟,航空工程广泛使用模拟计算机来研究飞机的飞行特性,例如风洞实验中的空气动力学模拟。数字计算机擅长执行逻辑运算和数据处理,例如存储和检索大量文本、数字、图像信息;加密解密算法等。我说范帅你为了我这个论文,竟然想了这么多,太感谢你了。范帅说感谢我收下了,但不是特意为你想的。这就像一个线头,一拽出来就没完没了,你能理解吗。我说能,小时候穿毛衣,我就这样把一个袖口拽没了。
范帅继续说:第三就是编程复杂性比较,模拟计算机的“编程“主要是设计和连接电路,需要深入理解电子学原理,但无需编写复杂的指令序列。数字计算机则需要详细的程序设计,但具有更高的灵活性。我说那模拟计算机才是真正的“模块化”设计,要修改逻辑,需要真实的更换电子元件了。
范帅说你以为机械计算机不是这样的吗?其实“模块化”并不是创新,我觉得是一种妥协,面对解决不了的问题想出的一种折中方案。我没接话,只是想我什么时候可以有自己的理解。都在说模块化是进步的时候,范帅却能说出不同意见,也许这得靠足够多的知识和眼界才行把。范帅说那今天就先到这,你总结总结,有什么不懂的再来找我。
