系统仿真技术的介绍(第一章)NEW
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统仿真技术的介绍(第一章)
(一)什么是系统仿真
系统仿真技术在国内还是一个新事物,大家不难发现,在5年或者10年前,很少会有人谈到仿真技术,学校也没有这门课程,在网络上搜索,相关的资料也是很少。可是近2~3年,仿真逐步在国内高校内发展起来,也逐渐在一些世界级的大企业、国家重点单位得到了应用,出现了一部分基于仿真的咨询机构,并且一度海外风险投资基金也欲介入这个潜在的市场。现在国内在物流、供应链、工业工程等相关的网站、论坛上都能找到系统仿真的踪迹,并且也出现了一些比较有名的仿真论坛,主要有itpub的供应链仿真论坛,道于仿真论坛,还有各大仿真软件公司或者代理开设的专门的讨论区,技术支持区,人气也相当火。姑且不论我们国内论坛的人气旺盛和实际上仿真技术应用比较低靡的巨大反差,至少也可以说这是一个良好的开端。
系统仿真是工业工程中系统工程的一个小分支,在国外已经有50多年的历史[1955,K.D. Tocher]。尤其在美国,仿真研究已经广泛应用于企业应用,主要被应用于通讯、制造、服务、卫生、物流和军事等,为这些行业的发展提供了巨大的推动作用。
仿真和虚拟现实,有本质的区别,我们经常听到仿真枪,仿真玩具,还有比如工程仿真软件,这些都是和虚拟现实相关的可视化的设计而已。美国的仿真著名学者Jerry Banks对系统仿真的定义是:“仿真就是实时地对现实世界的流程和系统的运作进行模拟,仿真包含人为地产生系统的“历史”,并通过观察这些“历史”数据来获得它所代表的现实系统的运作的推断。仿真是解决很多现实世界问题不可获缺的解决工具。仿真被用来描述和分析系统的行为,
提出关于现实系统的what-if的问题,并帮助现实系统的设计。现存的系统和概念中的系统都可以用仿真来模拟。”
采用系统仿真的方法和传统方法的区别在于仿真属于预测性技术,在不影响实际系统的情况下通过有目的的选取研究的对象,确定研究范围,抽象系统的本质进行一系列策略和参数的模拟。主要优势是:
1.试验成本低;
2.复杂度低,无须将大量时间化费在复杂的数学解析式的求解上;
3.仿真技术可捕捉实际系统中动态特性和不确定性,对于复杂动态系统研究得心应手;
4.可以对复杂逻辑进行试验,并能建立新的模型系统;
5.操作性强,可以量化研究,可以作为实际工作中的决策辅助工具;
系统仿真可以有效地应用于众多领域,提供决策支持。见下图。
(二)系统仿真有哪些方法
系统仿真方法很多,有基于方程式的动态系统、离散的事件系统仿真、基于主体的仿真、系统动力学的仿真等,下图是这些方法在战略、战术、操作层面的运用情况。当然,从目前学校的学习和企业的应用状况来看,离散事件系统仿真占据了很大的比重,这主要是源自于离散系统仿真的实用性,易操作性,和整个市场的成熟度,我们下面所说的基本上也离散事件系统。
目前,系统仿真分通用的仿真语言(比如JAVA,GPSS,SSF)、通用的面向对象的仿真平台、面向特定应用的仿真平台。这其中第1个和第3个主要还是在学术领域使用的比较多,主要应用障碍是过于复杂。面对对象的仿真技术则充分利用了计算机功能的新的建模方法,通过面对对象的图形化建模(2D和3D)技术,能够提供直观可视化的建模环境,使复杂的建模的过程得以简化,面对对象的建模方法与人们的认识过程是一致的,仿真用户
通过利用直观的对象概念来建立模型,仿真模型中的对象表示实际系统中的实体,从而减小
物理模型与计算机模型概念之间的差距。面向对象的方法强调的是系统总体的结构,而不是
系统涉及的过程。通过数据抽象和封装等技术,是得对象成为仿真模型的主要因素,整个仿
真系统的行为表现为对象之间的交互行为,使得仿真系统模块化。使用面向对象方法的继承
性,使仿真系统十分容易扩充,同时利用对象层次结构的合理设计,可以达到最高的代码重
复使用率,有利于可视化建模仿真环境的建立,为大型复杂系统的仿真研究提供了方便的手
段。现在系统仿真的主流也是面向对象的具有3D建模功能的软件。
(三)系统仿真软件主要有哪些,如何选择
仿真软件鱼龙混杂,一般初涉仿真的人都会有点无所适从。我也是经历了这个阶段。
Jerry BANKS经典的离散系统仿真的书中记载的仿真软件有:
Arena/Automod/Extend/Flexsim/MicroSaint/Promodel/QUEST/Simul8/Witness
这些软件各有千秋,功能也有一些差异,但是具有一些共同特点:“图形化的系统建模方
式,动画,自动搜集统计数据,统计分析功能比如置信区间分析,数据拟合功能等,而且绝
大多数采用的仿真机制是进程交互法”。
国内著名仿真论坛“道于仿真”论坛则归纳了目前比较流行的仿真软件,有19种,详细
介绍见/bbs/thread-9893-1-1.html。
RalC/Witness/SIMAnimation/SupplyChainGuru/Classwarehouse/Netlogo/Swarm/Re
past/AnyLogic/Flexsim/Automod/Arena/Em-Plant/Extend(Extendsim)/delmia/QUEST/Em-
Power/Pro-Model
关于仿真软件选择的标准,有不同的标准,但是下面这个标准比较常用:
分值0 1 2 3 4 软件供应
企业和核心人员背景
商
软件文档
软件的维护支持和更新速度
模型和输
入
建模速度
可再用的模型库对象
可自己创建的部件对象
条件性的判断路径
统计分布
排队策略
输入功能
标准命令
是否支持连续,离散,及Agent智能主体大规模应用执行多次运行
自动批次运行
重置功能
以非空的状态开始
用户的交互性
单位转换
动画图标
3D动画
2D/3D是否一体
动画运行效果
屏幕的布局是否合理
测试与效
率
验证的工具
显示功能
追踪
单步方式
断点
模型大小
模型速度
输出报告的格式
和外部软件的接口
商业图表
用户是否需要非常有经验的用户(分数越高代表越不需要仿真经验)
学习的难易程度(分数越高,代表更容易)
软件的购置成本和后期服务成本(分数越高,代表价格更低)
是否需要编程(分数越高,代表不需要编程)
软件代理商是否会涉及商业方面的不适行为,如贬低其他代理,过分夸大,或者将学院版给企业做项目等违反商业准则的行为(分数越高,表示商业操守越好)
是否过度的承诺(分数越高,表示代理没有过度承诺)是否有非常及时的服务和反馈
试验设计试验设计