正如约翰·斯特曼教授所说,建模从本质上是创造性的。成功的建模并没有固定的方法,也不一定完全遵循什么一成不变的步骤。不同的建模者有不同的风格和方法。但是一般而言,软件建模应包含下述一系列活动的组合:
(1)准备:明确问题和建模目的,确定系统的边界;
(2)分析:收集并分析信息,确定核心变量,提出关于问题因果关系的一系列假设或理论,画出基本的系统循环图;
(3)建模:通过方程将变量和上述假设定量化,建构出软件模型;
(4)测试:反复测试、修改,直到你认为它达到预定目标为止;
(5)应用:进行政策设计与评估,给出决策建议。
本部分将分别对其进行简要介绍。
准备
准备充分对于建模成功是至关重要的。在准备阶段,主要工作包括:
(1)组建团队
虽然经过学习,高中生或公司经理都可以轻松掌握建模所需用到的软件,但建模并不是简单的软件使用,它要求使用严谨的方法,对业务有深入的了解,还要具有专业的经验和技能。因此,最好邀请建模专家而不是初学者,与客户共同组建建模开发小组,并在建模过程中让客户尽可能早、尽可能多地融入建模过程,让他们看到模型,鼓励他们对模型提出建议,亲自检测并一起工作,解决他们提出的问题,直到他们满意。
在组建项目团队之后,通常需要进行系统思考相关理论、方法与工具方面的培训或研讨,使大家明确所共同使用的语言,具备初步的系统思考技能。
此外,项目组还要共同拟定项目计划、职责与分工、工作机制、基本规则等,在此不赘述。
(2)明确问题
在建模中最重要的步骤之一就是明确问题。什么是客户最关心的事项?他们试图解决的问题是什么?真正的问题(而不是表象)在哪里?
(3)确定建模目标
正如约翰·斯特曼所讲,一个清晰的目标是成功建模最重要的因素。目标不仅是指导项目工作最重要的指导因素,而且是取舍的逻辑规则。
(4)确定系统边界
根据待研究的问题和建模目标,明确与此问题相关的时间和空间范围、概括程度,定义模型的边界。模型的边界决定了哪些变量被当作内部变量,哪些被当作外部变量,哪些根本不需考虑。分析
收集并分析信息,确定核心变量,提出关于问题因果关系的一系列假设或理论,画出基本的系统循环图。第一步和这一步与计算机或软件无关,它的主要内容参见本书第4章。
建模
在完成对问题的分析并且确认系统循环图之后,软件建模才真正开始。可以利用专门的系统动力学软件,对变量赋值,并以数学方程式的形式来量化表示变量之间的关系,建构出软件模型。
在目前情况下,常用的系统动力学建模软件信息如表6 1所示。表6 1系统动力学常用建模软件
软件简介点评Vensim由美国VentanaSystems公司开发,现已更新到5.9版,有PLE、DSS等版本。推荐初学者使用PLE版,具备基本功能,可免费使用,支持中文变量名,模型可保存。专业用户可购买DSS版商业软件。iThink/Stella由美国iSeeSystems公司开发,现已更新到9.0版。系商业软件,需付费购买license。试用版为Demo版,不支持中文变量名,不可保存模型。PowerSimPowersimStudio8由挪威Powersim软件公司开发,最新版本为8.0,拥有SDK、专业版等。与上述软件功能类似,有Demo版可下载(可免费试用,但有试用期)。
使用系统动力学软件绘制系统循环图和水管图以及进行软件仿真模拟的具体步骤,可以参见本章第4节。