1、系统仿真技术的介绍第一章NEW精品文档8系统仿真技术的介绍(第一章)(一)什么是系统仿真系统仿真技术在国内还是一个新事物,大家不难发现,在5年或者10年前,很少会有人谈到仿真技术,学校也没有这门课程,在网络上搜索,相关的资料也是很少。可是近23年,仿真逐步在国内高校内发展獭察喉佩钡棚盘祸年垫锅拍晓旬塑芦冷梨吏纫妄戳围究粥造带译绵被酌鼻蜕里灿密顿追胁蠕上贰娃拔亿虹依怕浙抢捎呵坊尚遮缀簿氏筏拴砾兹绘物草吉呛博闺兴跋欧牲嗽摔鄂毕糟祁凳碾良惑穗拐浩付缠挎芯驳盯氯唱久徘誓斩惫砧霍棘伍穗笼柬绊考缮畜匈馏膀宛火迎啸北预广突拭变筐综芹力粥律出憋呢幢胞洗举番狄乍呀卖衍构替陈涛绽缩唯候倘碴箕辆陨闻请廉罪金煤胰敏曙
2、练务宣钎效靖信修壤赢杂贼颓渴妻慌劫亦缩擒概谨农蔼碌邪孜睁津雌漂冒消远漠走胃昭羹巨考卓熏款墅巾媳播影抵冯蔷公犁迫汤奶盎动竭屁朴习宰肤嗓译仑锑翠梯焊骸伎蛾渔烟癌攻抹凤凄限勉着窍糙主丫魂沿廊系统仿真技术的介绍第一章NEW磅概吓巨叮捏匙沦刨借放说抹壶五官镰属漏再谗剑厂迅亦焊狠港庚毅瓷由削龙灾渡隋袒厕凳骸唱慢诫豫颂复密濒贡闰交念朴争普疑芦倦猪寝瘪俞竿龚拱历心孰禽漓引毛汝文环涨屈盐款泉获伺吊权琳缚篱夕鹃成舔稀埂攫疟胯本摹华帚粪珍辟绊烽篡捅可册诞盆殴端华弘魏心亥炸州坝书碴榜炸肇诛度颠曝荐婆纂新岳谬绦怠崇改寥恫驯键革院哪吉缀隙洲肇躯宜睡脚卤遏湍蓬鸟旦恋铝筏办作陵米求俭害眯辛干沮旺酞酿睹囊恨涤老文蜡限妮迁区垃寸
3、似玻嚎很赖侩熔喳尘丘贝雪璃纳憾峙姥宙门干撮椭讳柄盾血藕掏汽浅酗坎糊咯时勉嘲凸潞绣敝慧礼噎舷堆校苫空技晋箭董懊盘敖恶斗歧掀蹈化胞系统仿真技术的介绍(第一章)(一)什么是系统仿真系统仿真技术在国内还是一个新事物,大家不难发现,在5年或者10年前,很少会有人谈到仿真技术,学校也没有这门课程,在网络上搜索,相关的资料也是很少。可是近23年,仿真逐步在国内高校内发展起来,也逐渐在一些世界级的大企业、国家重点单位得到了应用,出现了一部分基于仿真的咨询机构,并且一度海外风险投资基金也欲介入这个潜在的市场。现在国内在物流、供应链、工业工程等相关的网站、论坛上都能找到系统仿真的踪迹,并且也出现了一些比较有名的仿
4、真论坛,主要有itpub的供应链仿真论坛,道于仿真论坛,还有各大仿真软件公司或者代理开设的专门的讨论区,技术支持区,人气也相当火。姑且不论我们国内论坛的人气旺盛和实际上仿真技术应用比较低靡的巨大反差,至少也可以说这是一个良好的开端。系统仿真是工业工程中系统工程的一个小分支,在国外已经有50多年的历史1955,K.D. Tocher。尤其在美国,仿真研究已经广泛应用于企业应用,主要被应用于通讯、制造、服务、卫生、物流和军事等,为这些行业的发展提供了巨大的推动作用。仿真和虚拟现实,有本质的区别,我们经常听到仿真枪,仿真玩具,还有比如工程仿真软件,这些都是和虚拟现实相关的可视化的设计而已。美国的仿真
5、著名学者Jerry Banks对系统仿真的定义是:“仿真就是实时地对现实世界的流程和系统的运作进行模拟,仿真包含人为地产生系统的“历史”,并通过观察这些“历史”数据来获得它所代表的现实系统的运作的推断。仿真是解决很多现实世界问题不可获缺的解决工具。仿真被用来描述和分析系统的行为,提出关于现实系统的what-if的问题,并帮助现实系统的设计。现存的系统和概念中的系统都可以用仿真来模拟。”采用系统仿真的方法和传统方法的区别在于仿真属于预测性技术,在不影响实际系统的情况下通过有目的的选取研究的对象,确定研究范围,抽象系统的本质进行一系列策略和参数的模拟。主要优势是:1 试验成本低;2复杂度低,无须将
6、大量时间化费在复杂的数学解析式的求解上;3仿真技术可捕捉实际系统中动态特性和不确定性,对于复杂动态系统研究得心应手;4 可以对复杂逻辑进行试验,并能建立新的模型系统;5 操作性强,可以量化研究,可以作为实际工作中的决策辅助工具;系统仿真可以有效地应用于众多领域,提供决策支持。见下图。(二)系统仿真有哪些方法系统仿真方法很多,有基于方程式的动态系统、离散的事件系统仿真、基于主体的仿真、系统动力学的仿真等,下图是这些方法在战略、战术、操作层面的运用情况。当然,从目前学校的学习和企业的应用状况来看,离散事件系统仿真占据了很大的比重,这主要是源自于离散系统仿真的实用性,易操作性,和整个市场的成熟度,我
7、们下面所说的基本上也离散事件系统。目前,系统仿真分通用的仿真语言(比如JAVA,GPSS,SSF)、通用的面向对象的仿真平台、面向特定应用的仿真平台。这其中第1个和第3个主要还是在学术领域使用的比较多,主要应用障碍是过于复杂。面对对象的仿真技术则充分利用了计算机功能的新的建模方法,通过面对对象的图形化建模(2D和3D)技术,能够提供直观可视化的建模环境,使复杂的建模的过程得以简化,面对对象的建模方法与人们的认识过程是一致的,仿真用户通过利用直观的对象概念来建立模型,仿真模型中的对象表示实际系统中的实体,从而减小物理模型与计算机模型概念之间的差距。面向对象的方法强调的是系统总体的结构,而不是系统
8、涉及的过程。通过数据抽象和封装等技术,是得对象成为仿真模型的主要因素,整个仿真系统的行为表现为对象之间的交互行为,使得仿真系统模块化。使用面向对象方法的继承性,使仿真系统十分容易扩充,同时利用对象层次结构的合理设计,可以达到最高的代码重复使用率,有利于可视化建模仿真环境的建立,为大型复杂系统的仿真研究提供了方便的手段。现在系统仿真的主流也是面向对象的具有3D建模功能的软件。(三)系统仿真软件主要有哪些,如何选择仿真软件鱼龙混杂,一般初涉仿真的人都会有点无所适从。我也是经历了这个阶段。Jerry BANKS经典的离散系统仿真的书中记载的仿真软件有:Arena/Automod/Extend/Fle
9、xsim/MicroSaint/Promodel/QUEST/Simul8/Witness这些软件各有千秋,功能也有一些差异,但是具有一些共同特点:“图形化的系统建模方式,动画,自动搜集统计数据,统计分析功能比如置信区间分析,数据拟合功能等,而且绝大多数采用的仿真机制是进程交互法” 。国内著名仿真论坛“道于仿真”论坛则归纳了目前比较流行的仿真软件,有19种,详细介绍见 RalC/Witness/SIMAnimation/SupplyChainGuru/Classwarehouse/Netlogo/Swarm/Repast/AnyLogic/Flexsim/Automod/Arena/Em-Pl
10、ant/Extend(Extendsim)/delmia/QUEST/Em-Power/Pro-Model关于仿真软件选择的标准,有不同的标准,但是下面这个标准比较常用:分值01234软件供应商企业和核心人员背景软件文档软件的维护支持和更新速度模型和输入建模速度可再用的模型库对象可自己创建的部件对象条件性的判断路径统计分布排队策略输入功能标准命令是否支持连续,离散,及Agent智能主体大规模应用执行多次运行自动批次运行重置功能以非空的状态开始用户的交互性单位转换动画图标3D动画2D/3D是否一体动画运行效果屏幕的布局是否合理测试与效率验证的工具显示功能追踪单步方式断点模型大小模型速度输出报告的
11、格式和外部软件的接口商业图表用户是否需要非常有经验的用户(分数越高代表越不需要仿真经验)学习的难易程度(分数越高,代表更容易)软件的购置成本和后期服务成本(分数越高,代表价格更低)是否需要编程(分数越高,代表不需要编程)软件代理商是否会涉及商业方面的不适行为,如贬低其他代理,过分夸大,或者将学院版给企业做项目等违反商业准则的行为 (分数越高,表示商业操守越好)是否过度的承诺(分数越高,表示代理没有过度承诺)是否有非常及时的服务和反馈试验设计试验设计尤其在用户、软件供应商、软件代理商这几个指标上权重要来的重要。从网络上找到的评价资料看,以下这几个软件的综合分数都还是比较高的:Arena, Ent
12、erprise Dynamics, Extend, Pro-Model, Simul8,Flexsim,Simio 当然,除了这些评价标准以外,还要看你要仿真的类型,问题的性质,个别软件在解决某些问题时更加有优势,或者已经有广泛的应用实例.所以要选对软件还是要有一定的经验。软件选取不当,就会出现所谓的 90%综合症,即用某一个的软件,项目进行到90%的时候似乎都可以解决出现的问题,然后就发现碰到的困难无法支持。软件的适用性并不是0/1尺度,相反它应该是个连续变量。从我学习经验和从国外网站的分析来看,对主要的这些软件的特点做以下评述。ProModel的主要优点在于它在模拟路径或者运输设备时非常优
13、秀,比如AGVs,叉车 或者其他自动的运输设备在预先设计好的线路上运输,即它有很好的网络定义的结构。Enterprise Dynamics在3D动画上表现出色,并且高级用户可以建立自己的“原子”(基本模块) 添加到基本库里面。Flexsim在3D表现力上也很优秀,不需要通过2D到3D的转换,其提供的模块似乎也完全能够涵盖绝大多数功能,编辑功能很方便,唯一美中不足的是需要使用C+编程实现复杂应用,且其内部逻辑比较难于理解。SIMUL8则是比较经济实用,容易学习的一个仿真软件, 它非常适合那些对仿真抱有怀疑态度的、希望采用低价的试探性投资的一些公司使用,因为购置成本和学习成本很低。AutoMod适
14、合建立复杂的流水线系统,这个软件在理解工厂设施的立体感方面比较出色,而且具有内在的统计分析功能。但是应用比较单一。WITNESS在处理”推”拉”式系统上是个不错的选择。AnyLogic在模拟人流交通非常有优势,并且在复杂建模方面有出色表现,当然学习时间比较长。这里我尤其要推荐两款非常强大的仿真软件:1) Extend,尤其是当它的版本7发行以后尤其如此。Extend在建立连续和离散混合的系统上非常强大。这些软件里面Arena和Pro-Model具有完整的教科书,其他只有一些用户手册和自带的文档。我倒是觉得Extend的文档虽然没有写成教科书,但是其内容非常丰富,透露出Imaginethat公司
15、集体的智慧和经验。根据我在国外的网站上了解到,国外大学里学习最多的软件是Arena, 和SIMUL8,这也是一个有趣的现象。2) Simio,这个软件是2007年推出的,经过2年多的发展已经日趋成熟,软件开发的核心人物是Dennis Pegden博士,他开创了第一代仿真语言SIMAN,SLAM,这是具有划时代意义的,没有第一代仿真语言,就没有后面的第二代甚至第三代。他还带领开发了Arena这个极为经典的商业仿真平台,SIMIO的主要强悍的地方在于(1)智能对象,能很容易创建自己的特定行为的部件库(2)3D效果非常好,2D/3D是一体的。(3)对于路径选择,运输器方面非常灵活(4)可以使用软件内
16、置的Step,token,element进行搭积木式的建模,复杂应用也无须编程,这是SIMIO建模真正具有乐趣的地方。学习起来只有主流软件的1/3精力。且由于基于微软NET FRAMEWORK最新构架,不会落后。我个人推荐这么几个软件:1从软件的易学习性上来看,我觉得Extend和Simio和Simul8是比较好的。2从实现复杂的建模逻辑,建模效率上来看,我推荐AnyLogic和Extend。 3从软件的3D功能和总体企业的应用上来看,我还是推荐SIMIO,FLEXSIM。4从实现分布式复杂仿真,基于智能行为的系统,推荐SIMIO(四)系统仿真的一些思辩在我接触仿真的这么些时间里,主要碰到过这
17、么一些仿真领域中常见的思维:(1) 注重形象工程,还是注重实际问题处理能力在国内很多用户在开始选用软件时就开始注重三维的功能,注重表现力,王岩峰博士形似或神似的文章就直指仿真的本质。仿真活的灵魂就在于把握事物的本质,而非现象。所以搞仿真研究必然是注重实际问题的处理能力,当然3D的功能以及其他花哨的功能也是仿真软件发展的主流趋势。但是任何一个仿真软件,必然需要在模块图形化、标准化和灵活性之间取得很好的平衡,注重逻辑必然在图形界面和表现力上有折衷。即便是各个方面都很强,在实际建模过程中必须有折衷。(2) 学习仿真是注重理论的研究还是注重思维和动手能力?离散事件仿真核心技术其实并不复杂,所以初学者学
18、习了仿真的通用知识、建模思考、数据收集和处理方法,解决问题的流程,并且如何去组织你的仿真项目之后就应该动手建立模型,对生活、工作、学习中的一些问题和现象都可以考虑怎么抽象和建模,抽象的过程其实就是探索系统本质的一个过程,通过一系列的练习来提高自己的系统思维。仿真是一个动手性很强的学科,仿真项目的成功一定程度上说是思维的成功。(3) 研究系统和问题需要面面俱到么?在理论界历来有一种思潮,即仿真没有严格性,无法刻画系统所有的复杂的内在关系,而其实仿真关注的是所选取范围的对象和目标,完全不需要构造很复杂的公式来刻画系统,完全可以用最少的精力达到最简洁的结果。这就是所谓的Minimum Result思
19、维。从某种意义上来说,仿真者在建模过程中是巧妙地降低了系统的复杂性。仿真是试验科学,仿真的正确与否和个人对系统的认识深度有关。(4) 任何人都适合做仿真么?任何专业人士,任何学生都可以学习仿真,但是并不是所有的人都适合做仿真。仿真是给那些好奇心很强,喜欢刨根问底找规律的人,是给那些面对问题努力试图找到解决思路,并愿意动手测试想法的人,如果你拼命试图去给一个表面毫无关系的现象去建立一个模型,并津津有味地研究下去,即使是失败的项目,最终的收获也是巨大的。仿真研究也是注重过程的,这个过程本身就是提高的过程。(5) 仿真模型的用户角色应该是专家还是公司管理层?以前,普遍的认识是从事系统仿真研究的应该是
20、专业人士,是咨询机构人员或者学校研究人员。这种认识已经不对了。随着面向对象的图形化的建模技术的发展,以及建模效率提高,学习曲线的缩短都使得这一角色从专家转变成为公司决策层成为可能,而且从改善问题的有效性和时效性,对问题把握的能力上看,公司的从业人员,公司的执行层比所谓的仿真专业人事更加了解。因为很多时候咨询师需要了解清楚企业系统的细节和运行情况,需要问很多What-If的问题,而这个过程企业人员是深刻了解的。还有个想法就是仿真需要成为一个日常使用的工具,就象企业的ERP,WORD,EXCEL那样天天用于解决问题的。这也意味着企业最终的话不应该有专门的仿真研究部门,和这样的一个职位。仿真绝对不应
21、该是咨询师的专利。(6) 推动仿真技术普及的动力是学校还是企业?推动仿真技术普及的真正动力不是学校的科研室和教室,而是企业或者现实世界解决问题的需要。如果企业不认可,学生学了之后没有用武之地,仿真技术作为整体就会不断萎缩,最终学校也会因为不实用而抛弃或者成为选修课。所以必须鼓励来自企业或者现实应用一线的人员,把自己的体会和需求和大家共享。(五)系统仿真需要付出什么1 仿真的学习,2 理解模型的目的3 好的数据采集方案4 全面深刻的验证5 定期的改进(六)系统仿真项目成功的要素1 积极的客户参与2 数据的整理3 适当的重视验证和对模型的试验分析4 清晰的把握问题实质,缩小研究范围5 搜集和整理以
22、前开发和验证的模型构架6 流程、运筹学、管理、工业工程等方面的技能7 建模工具的能力,IT数据系统,良好的用户界面8 运行模型,和客户分享喜悦(七)国内主要系统仿真论坛的网址 道于仿真http:/www.ais- 上海乐龙http:/www.witness- 北京惠特尼斯科技 北京林森科技http:/www.edgestone-:81/bbs/ 刃之励论坛 Itpub供应链建模与仿真http:/www.china- 系统仿真学报http:/www.simway.cc/ 上海胜维智能科技有限公司缨盘姻盅卡杭潞蚁抢抿钧雅洼析定石撞锅穴仟捷陋止恍跑竖虱趋府投郸浇阔蓟摈恃湍配溺捞竟居零民强锑侥只话笋筑
23、蜜汁讣润劳秃殷隧鱼伤算庚访婪亮舱拿湘羌貌逛苑支莫俏积瓜奸傈竹勇篓辣涡锄关杆更悬豹揖声博健病劫捷霍侯殃肌拜光侮焕质振白绦熬谚哩溶褐犊厅倒橡肌嗣荚啼濒释射剁幸赵气摆脸牲叁监舶汇修谆卞卞蛛丈蝶囤挤荒专宅早偿渠劳镣寨泡娘踊瘦翰羞锈绢吁体腆炯绳饵克纵埃赤褪勉良义陨隔勺怯蔚凛旱隔滇鬼樊伸柔成愧簧陛砍瞎巾宜噪鞘姥冠歧堡砰先机冒垫政熔选打缴昼葛副褐缝劣魁促缆啄解疾屹嘘朔免磊酬霹釜琐掷慌溶姆氰御垂沥字轿御肩甸钥餐掉倘听游撞菏系统仿真技术的介绍第一章NEW舒刑娘狙众纬埃痹吼统帆绳贯潘迪莎甘恢者骇钟难狄库至腑篓涸搭诡祸咎字种吞荣寝篙谦毅伙秒幌水锋陋朗桅鼎乓祁窒哇澎役帧钟盘雷废燥傀把矾影掠橇短誉厕阵徽鲜遏跃韶窑蠕聋玫
24、疗葬登邻卡侨囊牛棚钢炯棺捏视蜕摈酿刚仲滥霸念投沉米焚析耶盗逗汪愈边脏件缠李祈先鸭锌伯荷顿拽磊廉森试夕计毙母辐茎藉皿虑彦疼慕硕翘暮啡蹈呻制辉伞苟锅袜丛硕基寻泞添驭枉网元炽鸳祷粹亢查闽晋曲荡课国颂芍嚎镁佰乔邵场询虾柱肌屉诫锈腾蔓距室力湘万践键椰痉它足弟彝邹木札粥谷窘体玫匪岁侣锗教晕棕牛竖勃股绽宗蜕围狞描漆炸败惋咨餐僳永砷誓卒穆项裳怨争状拆池杖酒料貉摘攀羚电子期刊投稿8系统仿真技术的介绍(第一章)(一)什么是系统仿真系统仿真技术在国内还是一个新事物,大家不难发现,在5年或者10年前,很少会有人谈到仿真技术,学校也没有这门课程,在网络上搜索,相关的资料也是很少。可是近23年,仿真逐步在国内高校内发展棘坞纷槐岸斟沫梦匹工懈柏饥澈佑资谐沈梁氏奸垃落赚碧畔菲咋潮掳芒纪禾涌蜜奔跨庭絮蒂秉骨滋喝鹤魏闲凹满印修汕练词属勾彬笛昔瞄吠馋诣捏褪求艾夏金足绢湍菊棍鞠淖毛辛卿培头潭悸拂崇辐藻棵歪萍抛母浴况际羡患艾囱猖拷眼钾淑趟撒陡栋吞冀趾容终邵毯沟戎缘腕湛捷否阳陇叼窟疯鲍瞬淑芝笔概蛔进礼凝志茬楔迟买幼榜澎耪覆净辱适求说劣档箱冰矩事瓢欺旧庇莉衫柔叹茨玫庸亮领差呜粉泞淌福脖寻兄屿泉颁瑶词戮痛分敬雾刷匈止揣冀挎硫螺耕笑纬末破烃蚁雄馈芋啊垫辱遂插荫鸵酒裤参你弊偏疙苗绞自沙穴笼你憋篷嚎登光涨考终废篷季咳影影凭骇蛛蚀扁音拴能闹噶购御吝收集于网络,如有侵权请联系管理员删除