1.1.3 仿真
仿真是对现实世界的过程或系统随时间运行的模仿,产生并观测系统的人造历史记录,以便推断出实际系统的运行特性。系统随时间演进的行为的研究是通过开发一个仿真模型来进行的。该模型的形式通常是采用一组与运行相关的假设,这些假设用系统的实体或感兴趣的对象间的数学、逻辑及符号关系来表示。模型一旦开发出来并通过有效性验证,就可以用于解答现实世界系统各种各样的“如果……就会……”问题。系统可能的改变可以先进行仿真,以便预测其对系统性能的影响。在系统建立之前,仿真也可用于研究处于设计阶段的系统。这样,仿真模型既可以作为分析工具用于预测对已有系统进行改变所带来的影响,也可以作为设计工具预测新系统在不同环境条件下的性能。
在某些情况下,开发的模型简单到可以通过数学方法“求解”。通过使用差分计算、概率论、代数方法或其他数学方法,就可以得到这样的解。解通常由一个或多个数值参数组成,这些参数被称为系统性能的量度。然而,许多现实世界系统非常复杂,以至于这些系统的模型事实上不可能通过数学求解得到。在这些情况下,基于计算机仿真可以用于模拟系统随时间变化的行为。通过仿真,数据被收集起来,仿佛观察实际系统一样。这些通过仿真生成的数据用于估计系统的性能。
根据系统模型的类型,仿真模型可以被进一步划分为静态的或动态的、确定的或随机的、离散的或连续的。静态仿真模型通常被称为蒙特卡罗仿真模型,代表了在一个特殊时间点上的系统。动态仿真模型代表了随时间变化的系统。
不包含随机变量的仿真模型被划分为确定性模型。确定性模型具有一组已知的输入,并产生一组唯一的输出。例如,在牙医诊所中,如果全部病人都按照准确的约定时间到达,则发生确定性的到达。随机仿真模型具有一个或多个随机变量作为输入。随机输入导致随机输出。由于输出是随机的,所以只能被作为模型真实特性的估计。例如,银行的仿真通常包括随机到达时间间隔及随机服务时间。因此,在随机仿真中,输出的测量结果(平均等待人数、单个客户平均等待时间)必须作为系统真实特性的统计估计。
仿真模型也可以是混合的,即既有离散模型也有连续模型。对于离散或连续(或既是离散也是连续)仿真模型的选择,是根据所研究的系统及对象的特性。因此,如果认为每条消息的特性和运动是重要的,通信信道就可以以离散的方式建模。反之,如果信道上的消息流集合是重要的,则通过连续仿真对系统建模可能更恰当。本书涉及的模型是离散的、动态的和随机的。
随着专用仿真语言的产生,大规模计算因每次运行费用不断下降而成为可能;仿真方法学的进步,使得仿真成为运筹学及系统分析中最被广泛使用和采纳的工具。许多学者都对仿真在何种环境下使用才恰当进行了研究。仿真可被用于以下目的:
(1)仿真使对复杂系统之间的相互影响或对在复杂系统中的子系统的研究和实验成为可能。
(2)可以仿真信息、组织及环境的变更,以观察这些改变对模型行为的影响。
(3)在仿真模型设计过程中获取的知识可能具有很大的价值,可对被研究系统的改进提出建议。
(4)改变仿真的输入并观察产生的输出,可以使我们深入了解哪些变量是最重要的,以及了解变量间是如何相互作用的。
(5)仿真可以作为教学设备来增强解析求解方法学的能力。
(6)仿真可以用于在新设计或策略实施前进行实验,以便为可能发生的事情做好准备。
(7)仿真可以用于验证解析解。
(8)对机器的不同能力进行仿真有助于确定其需求。
(9)设计用于训练的仿真模型使得学习成为可能,无需费用及现场指导。
(10)动画显示仿真运行中的系统,从而使计划具有可视性。
(11)现代系统(工厂、晶圆生产厂、服务组织等)非常复杂,其只能通过仿真来处理其内部的相互作用。