《模拟仿真》由会员分享,可在线阅读,更多相关《模拟仿真(36页珍藏版)》请在金锄头文库上搜索。
1、模拟仿真模拟 仿真SIMULATION 1.仿真的基本概念仿真的定义在不同的领域或范畴中有不同的描述,可以概括为:“模拟就是利用物理的、数学的模型来类比、模仿现实系统及其演变过程,以寻求过程规律的一种方法。 ”模拟的基本思想是建立一个试验模型,这个模型包含所研究系统的主要特点通过对这个实验模型的运行,获得所要研究系统的必要信息。仿真遵循的原则: 原理抽象 相似原理。相似原理:几何相似、性能相似、环境相似。几何相似:根据相似原理把原来的实际系统放大可缩小。如把12000吨水压机可用1200吨或120吨水压机作其模型。万吨轮船也要用缩小的模型来研究。性能相似:构成模型的元素和原系统的不同,但其性能
2、相似。如:可用一个电气系统来模拟热传导系统。在这个电气系统中电容代表热容量,电阻代表热阻,电压代表温差,电流代表热流。 2.仿真的目的或作用优化设计预测系统的性能和参数经济性采用物理模型或实物实验,花费巨大。采用数学模型即计算机数学仿真可大幅度的降低成本并可重复使用。安全性载人飞行器和核电站的危险性不允许。预测性对于非工程系统,直接实验不可能,只能采用预测的方法。(天气预报)复原性 3.仿真的分类1.按模型的性质分类(1)物理仿真(2)数学仿真 (3)半实物仿真 2.按被研究系统的特征分类(1)连续系统仿真(2)离散事件系统仿真 物理仿真物理仿真:按照真实系统的物理性质构造系统的物理模型,:按
3、照真实系统的物理性质构造系统的物理模型,并在物理模型上进行实验的过程称为物理仿真。并在物理模型上进行实验的过程称为物理仿真。物理仿真的优点是:直观、形象,也称为物理仿真的优点是:直观、形象,也称为“模拟模拟”。物理仿真的缺点是:模型改变困难,实验限制多,投资较大。物理仿真的缺点是:模型改变困难,实验限制多,投资较大。数学仿真数学仿真:对实际系统进行抽象,并将其特性用数学关系加:对实际系统进行抽象,并将其特性用数学关系加以描述而得到系统的数学模型,对数学模型进行实验的过以描述而得到系统的数学模型,对数学模型进行实验的过程称为数学仿真。程称为数学仿真。计算机技术的发展为数学仿真创造了环境,亦称为计
4、算机仿计算机技术的发展为数学仿真创造了环境,亦称为计算机仿真真数学仿真优点是:方便、灵活、经济数学仿真优点是:方便、灵活、经济数学仿真缺点是:受限于系统建模技术,即系统数学模型不数学仿真缺点是:受限于系统建模技术,即系统数学模型不易建立。易建立。 半实物仿真半实物仿真半实物仿真:即将数学模型与物理模型甚至实物半实物仿真:即将数学模型与物理模型甚至实物联合起来进行实验。联合起来进行实验。对系统中比较简单的部分或对其规律比较清楚的对系统中比较简单的部分或对其规律比较清楚的部分建立数学模型,并在计算机上加以实现部分建立数学模型,并在计算机上加以实现对比较复杂的部分或对规律尚不十分清楚的系统,对比较复
5、杂的部分或对规律尚不十分清楚的系统,其数学模型的建立比较困难,则采用物理模型其数学模型的建立比较困难,则采用物理模型或实物或实物仿真时将两者连接起来完成整个系统的实验仿真时将两者连接起来完成整个系统的实验 连续系统仿真(微分方程或差分方程)系统的输入输出信号均为时间的连续函数,可系统的输入输出信号均为时间的连续函数,可用一组数学表达式来描述,比如采用微分方程、用一组数学表达式来描述,比如采用微分方程、状态方程等。状态方程等。(如各种物理和工程领域中的(如各种物理和工程领域中的“场场”问题)问题)9一个系统,如电话交换台系统、交通管理系统、物流管理系统等,这些系统的状态变化发生在随机时间点上,称
6、为离散事件系统,可以用概率分布、排队论等数学模型来描述。在计算机上建立相应的仿真模型并运行和实验,称为离散事件系统仿真。 离散事件系统,时间的发生过程在时间和空间都是离散的. 各事件发生以某种顺序或某种条件下发生,具有随机性. 经典概率论,数理统计和随机过程理论为这类系统提供理论基础.离散系统仿真(随机事件、随机函数)与连续系统的主要与连续系统的主要区别区别在于:在于:状态变化发生在随机时间点上这种引起状态变化的行为称状态变化发生在随机时间点上这种引起状态变化的行为称为为“事件事件”,因而这类系统是由事件驱动的;,因而这类系统是由事件驱动的;“事件事件”往往发生在随机时间点上,亦称为随机事件,
7、因往往发生在随机时间点上,亦称为随机事件,因而一般都具有随机特性而一般都具有随机特性系统的状态变量往往是系统的状态变量往往是离散变化离散变化的的系统的系统的动态特性动态特性很难用人们所熟悉的数学方程形式描述很难用人们所熟悉的数学方程形式描述研究与分析的主要目标是系统行为的研究与分析的主要目标是系统行为的统计性能统计性能而不是行而不是行为的点轨迹。为的点轨迹。 计算机仿真计算机仿真技术是一门利用计算机软件模计算机仿真技术是一门利用计算机软件模拟实际环境进行科学实验的技术拟实际环境进行科学实验的技术.它是以数学理论为基础,以计算机和各它是以数学理论为基础,以计算机和各种物理设施为设备工具,利用系统
8、模型种物理设施为设备工具,利用系统模型对实际的或设想的系统进行实验仿真研对实际的或设想的系统进行实验仿真研究的一门综合技术究的一门综合技术.它已经成为对许多复杂系统进行分析、它已经成为对许多复杂系统进行分析、设计、实验、评估的必不可少的手段设计、实验、评估的必不可少的手段.1、仿真是一种数值计算技术2、是一种“人工”的试验手段3、在计算机上进行4、对系统状态在时间序列中的动态写照5、大多是随机性系统仿真计算机仿真的实质及特点特点(1 1)模拟时间的可伸缩性)模拟时间的可伸缩性(2 2)仿真运行的可控性)仿真运行的可控性(3 3)仿真实验的优化性)仿真实验的优化性局限性(1)仿真不是最优化技术,
9、它只是针对各个不同的具体决策,通过反复实验比较得出一个较好的结论,但不能保证是最优的。(2)仿真仅仅是一种评价性的技术,不能自己产生决策,产生方案。(3)在仿真实验运行中,通常要使用大量的随机数,这些随机抽样也会造成仿真的误差,这种误差在其它定量分析技术中一般是不存在的。无法实施的问题大量方案比较选优不易为人们所了解的复杂的大系统有危险的现象无法重复的现象成本过高的现象需要用仿真解决的问题1. 工业企业管理系统:如顾客行为预测、工业企业工业企业管理系统:如顾客行为预测、工业企业模型、生产作业计划、设备的平面布置、财务预模型、生产作业计划、设备的平面布置、财务预测、人员安排、企业内部的物资流动、
10、工厂生产测、人员安排、企业内部的物资流动、工厂生产过程设计等。过程设计等。2. 物资分配与流通系统:如仓库布局、集装箱管理、物资分配与流通系统:如仓库布局、集装箱管理、存储订货规则设计等。存储订货规则设计等。3. 交通运输管理系统:如航空运输控制排队服务、交通运输管理系统:如航空运输控制排队服务、飞机维修作业计划、机场设计、公共汽车线路管飞机维修作业计划、机场设计、公共汽车线路管理、公共汽车线路设计、货物装卸设计、停车场理、公共汽车线路设计、货物装卸设计、停车场设计、城市交通系统设计、铁路运输调度、城市设计、城市交通系统设计、铁路运输调度、城市交叉口信号控制、出租汽车调度等。交叉口信号控制、出
11、租汽车调度等。应用领域4.卫生及教育系统:如医院模型,医药物资管理、卫生及教育系统:如医院模型,医药物资管理、医疗救护车的布局和调度、医院人员安排、学医疗救护车的布局和调度、医院人员安排、学校区域模型、图书馆作业设计、大学财务和作校区域模型、图书馆作业设计、大学财务和作业预测等。业预测等。5.资源管理系统:如国家人力调节系统、自然资资源管理系统:如国家人力调节系统、自然资源安排、水利资源开发等。源安排、水利资源开发等。6.服务系统:如银行出纳作业安排、文书档案处服务系统:如银行出纳作业安排、文书档案处理系统设计、通信系统设计、信息系统设计、理系统设计、通信系统设计、信息系统设计、保险人员雇用决
12、策等。保险人员雇用决策等。7.军事及保安系统:如军事作战模拟、军事后勤军事及保安系统:如军事作战模拟、军事后勤系统设计、警察系统设计等。系统设计、警察系统设计等。虚拟厂房虚拟厂房虚拟生产线虚拟生产线20原子弹原子弹+氢弹核爆模拟:氢弹核爆模拟: 超级计算机上亿次模拟,不可能进行多次实物试验超级计算机上亿次模拟,不可能进行多次实物试验21气象模拟预测气象模拟预测22三峡水库总库容 393 亿立方米,总装机容量1820万千瓦,将是世界上最大的水电站。但是三峡的安全问题是一个很重要的问题,我们不可能等到建好后再看它的安全性,用计算机仿真就可以很好的解决这一问题。 问题描述与系统定义系统分析建立系统模
13、型数据准备建立仿真模型验证、确认模型模型有效?计算机仿真运行分析仿真结果结果满意?实施仿真决策建立文档Y试验设计YNN蒙特卡罗模拟(Monte Carlo)蒙特卡洛(蒙特卡洛(Monte Carlo)方法)方法是一种应用随机数来进行计算机模拟的方法此方法对研究的系统进行随机观察抽样,通过对样本值的观察统计,求得所研究系统的某些参数 Monte Carlo 方法 Monte Carlo 是世界著名赌城摩洛哥的蒙特卡罗,在二次世界大战中,美国军方将一项绝密研究计划的代号命名为Monte Carlo ,其目的是研究铀裂变过程中链式反应的能量计算问题。 Monte Carlo 方法是随机模型的计算机仿
14、真方法,在用传统方法难以解决的问题中,有很大一部分可以用概率模型描述,由于这类问题含有不确定的随机因素,难以用定量分析法得到解析结果,在这种情况下, Monte Carlo 方法是非常有效。Monte Carlo Monte Carlo 方法的步骤方法的步骤4.2 Monte Carlo 4.2 Monte Carlo 方法的步骤和数学原理方法的步骤和数学原理问题分析建模问题分析建模问题分析建模问题分析建模建立问题的概率模型建立问题的概率模型建立问题的概率模型建立问题的概率模型抽抽抽抽 样:按照假设的分布,产生随机数样:按照假设的分布,产生随机数样:按照假设的分布,产生随机数样:按照假设的分布
15、,产生随机数计算有关结果计算有关结果计算有关结果计算有关结果抽样计算结束?抽样计算结束?抽样计算结束?抽样计算结束?否否依照多次抽样试验的结果依照多次抽样试验的结果依照多次抽样试验的结果依照多次抽样试验的结果估计有关统计参数估计有关统计参数估计有关统计参数估计有关统计参数是是算出模型解算出模型解算出模型解算出模型解的近似值的近似值的近似值的近似值结果满意?结果满意?结果满意?结果满意?是是结束结束否否例例1 1在我方某前沿防守地域,敌人以一个炮排(含两在我方某前沿防守地域,敌人以一个炮排(含两门火炮)为单位对我方进行干扰和破坏为躲避我方门火炮)为单位对我方进行干扰和破坏为躲避我方打击,敌方对其
16、阵地进行了伪装并经常变换射击地点打击,敌方对其阵地进行了伪装并经常变换射击地点 经过长期观察发现,我方指挥所对敌方目标的指经过长期观察发现,我方指挥所对敌方目标的指示有示有5050是准确的,而我方火力单位,在指示正确是准确的,而我方火力单位,在指示正确时,有时,有1/31/3的射击效果能毁伤敌人一门火炮,有的射击效果能毁伤敌人一门火炮,有1/61/6的射击效果能全部消灭敌人的射击效果能全部消灭敌人 现在希望能用某种方式把我方将要对敌人实施现在希望能用某种方式把我方将要对敌人实施的的2020次打击结果显现出来,确定有效射击的比率及次打击结果显现出来,确定有效射击的比率及毁伤敌方火炮的平均值。毁伤
17、敌方火炮的平均值。分析分析:这是一个概率问题,可以通过理论计算得到相应的概率和期望值.但这样只能给出作战行动的最终静态结果,而显示不出作战行动的动态过程. 为了能显示我方20次射击的过程,现采用模拟的方式。 需要模拟出以下两件事: 1. 问题分析问题分析2 2 当指示正确时,我方火力单位的射击结果情况当指示正确时,我方火力单位的射击结果情况1 1 观察所对目标的指示正确与否观察所对目标的指示正确与否模拟试验有两种结果,每一种结果出现的概率都是1/2 因此,可用投掷一枚硬币的方式予以确定可用投掷一枚硬币的方式予以确定,当硬币出现正面时为指示正确,反之为不正确 模拟试验有三种结果:毁伤一门火炮的可
18、能性为1/3(即2/6),毁伤两门的可能性为1/6,没能毁伤敌火炮的可能性为1/2(即3/6) 这时可用投掷骰子的方法来确定可用投掷骰子的方法来确定:如果出现的是、三个点:则认为没能击中敌人;如果出现的是、点:则认为毁伤敌人一门火炮;若出现的是点:则认为毁伤敌人两门火炮2. 符号假设符号假设i:要模拟的打击次数; k1:没击中敌人火炮的射击总数; k2:击中敌人一门火炮的射击总数;k3:击中敌人两门火炮的射击总数E:有效射击比率; E1:20次射击平均每次毁伤敌人的火炮数3. 模拟框图模拟框图初始化:i=0,k1=0,k2=0,k3=0i=i+1骰子点数?k1=k1+1k2=k2+1k3=k3+1k1=k1+1i20?E=(k2+k3)/20 E1=0*k1/20+1*k2/20+2*k3/20停止硬币正面?YNNY1,2,34,564. 模拟结果模拟结果5. 理论计算理论计算6. 结果比较结果比较 虽然模拟结果与理论计算不完全一致,但它却能更加真实地表虽然模拟结果与理论计算不完全一致,但它却能更加真实地表达实际战斗动态过程达实际战斗动态过程 用蒙特卡洛方法进行计算机模拟的步骤用蒙特卡洛方法进行计算机模拟的步骤:1 设计一个逻辑框图,即模拟模型这个框图要正确反映系统各部分运行时的逻辑关系。2 模拟随机现象可通过具有各种概率分布的模拟随机数来模拟随机现象