前 言
System Design, Modeling, and Simulation using Ptolemy II“我”上次发表著作是在一千九百年前。“我”很高兴从退休中复出,对以本人名字命名的工程(Ptolemy工程)发表自己的看法。与“我”以往在天文和地理方面的工作相似,该项目也是对复杂系统进行处理。值得一提的是,类似“我”之前的许多著作,本书同样凝结了许多人共同的智慧和努力。
“我”以前在《The Almagest》(天文大全)中研究行星、太阳、地球和月亮的运动规律,这些运动都是并发交互过程(concurrent interacting process)。并且这些运动都是确定性的(deterministic),并不以神的意志为转移。这些模型的关注点不仅仅是对所观察到的行为进行精确匹配,更重要的是对行为的预测。类似地,Ptolemy项目研究并发交互过程,并重点关注确定性模型。
理想情况下,求知欲推动着人类从迷信和盲目的信仰发展到逻辑和计量。现在所谓的“科学”深深根植于科学方法(scientific method),特别是在自然系统的研究中。利用科学方法,从设想开始,设计实验,并基于实验来对之前的设想下定论。当然,为了能够进行计量,待测量的工件或过程必须以某种形式存在。在“我”早期的研究中,不存在该问题,因为太阳、地球、月亮和行星是已经存在的事物。然而工程学科所关注的是人为的工件和过程,研究的是自然界中本不存在的系统。即便如此,科学方法也可用于并已经应用于工程设计中。工程师构建仿真和原型系统,将设想公式化,然后通过实验来进行设想的测试
。 因为针对的是本不存在的工件和过程,所以工程设计不能单单基于科学方法。实验的目的是提高对所设计的工件、过程的认知。但是在进行实验前,必须将这些工件或者过程创造出来。在认识某些事物之前,不得不先把它们创造出来,这点注定了我们的设计会根植于“迷信”和盲目的信仰。
模型构造是与科学方法互补的重要科学部分。模型是物理现实的一种抽象,并且模型提供内视和行为预测的能力可以形成设想的核心思想,该思想核心等待被实验证实或证伪。建模本身更应归于工程学科,而非自然科学。从根本上讲,它并不是对于自然界已存在系统的研究。相反,它是人类主导的、对于自然界本身不存在事物的建造过程。一个模型本身就是一项工程。
好的模型甚至可以减少对计量的需求,因此可以减少对科学方法的依赖。比如,我们一旦有一个行星运动模型,我们就可以精确预测它们的位置,这样就减少了对其位置测量的需要。计量的角色从确定行星位置转变为改善它们的运动模型以及检测模型对运动的影响(工程上称为“故障检测”(fault detection))。
无论在自然科学还是在工程中,模型都可以通过迭代方法来进行优化。“我”提出的以地球为中心的宇宙模型需要很多次迭代来修正,以逼近实验观测到的行星运动情况。最终模型的预测能力让“我”引以为豪。并且,基于这些模型的预测方法可以通过星盘机械化,这点同样让“我”感到自豪。即便这样,不得不承认,令人尊敬的同行哥白尼(Nicolaus Copernicus)为行星运动提出了一个更好的模型(日心学说)。他的模型从概念上讲是更简单的。这是一种概念上的飞跃:我们可观测到的宇宙的中心,即我们所在的大地
,并非一定是宇宙模型的中心。更进一步说,相对于物理世界,对于模型我们有更大的自由度,因为模型不需要被自然界所限制。即便如此,“我”所建立的模型在将近1400年的时间里也是一流的。 Ptolemy项目确实是一项关注系统模型的研究。但是,该系统与“我”之前关注的系统有很大的不同。之前的那些系统都是自然界提供的,但是本书中的系统都是人造的。在本书中,建模的目的是优化系统,我们不可能对自然界给予的行星系统做任何的优化。
简而言之,在与科学相反的工程中,模型要在被建模系统的设计阶段发挥作用。与科学一样,工程中的模型是可以被优化的,但是与科学不同的是,工程中的系统还可以被模型化。
更有趣的是,与科学不同的是,在工程中模型的选择对被建模的系统是有影响的。给予相同的目标,两位工程师可能会得出截然不同的系统设计和实现方案,这仅仅是因为他们在开始阶段使用了截然不同的系统模型。进一步说,若两位工程师提出了不同的模型,其原因可能仅仅是他们在开始阶段使用了不同的工具来构建模型。一位用纸和笔建模的工程师与一位用软件工具建模的工程师得出的模型可能很不一样。结果就是,他们很可能得出迥异的系统设计。
针对复杂系统,本书收集了非常丰富的建模工具和技术。它们中的一些毫无疑问在以后会被优化,正如“我”自己提出的本轮(epicycle)模型,其建模的复杂性被哥白尼学派证明为不必要的。即使如此,本书的目的是向工程师提供目前可用的最好的建模技术。可以确信的是,我们将做得更好。
如何使用本书本书是为需要对各种系统建模的工程师和科学家,以及想了解如何为复杂、异构系统建模的人而编写的。这些系统包括机械系统、电气系统、控制系统、生物系统等,更有趣的是,还包括结合了这些领域或者其他领域元素的异构系统。