SaberRD之蒙特卡罗分析(一)
【声明】本博文的大部分内容摘录于网络,本人按照自己的思维习惯和文字风格进行了重新整理以便于理解和记忆。
鉴于篇幅,我打算先对蒙特卡罗分析的基本思想和历史渊源做一下简单的梳理,然后在下一篇博文中介绍SaberRD软件中的蒙特卡罗分析。
蒙特卡罗(Monte Carlo) 方法, 又称随机抽样法,统计试验法或随机模拟法。是一种用计算机模拟随机现象,通过仿真试验,得到实验数据,再进行分析推断,得到某些现象的规律或某些问题的解的方法。
蒙特卡罗方法的基本思想是,为了求解某一问题,首先建立一个与求解有关的概率模型或随机过程,使它的参数等于所求问题的解,然后通过对模型或过程的观察或抽样试验来计算所求参数的统计特征,最后给出所求解的近似值。
概率统计是蒙特卡罗方法的理论基础,其手段是随机抽样或随机变量抽样。对于那些难以进行的或条件不满足的试验而言,这是一种极好的替代方法。蒙特卡罗方法能够比较逼真地描述事物的特点及物理实验过程,解决一些数值方法难以解决的问题,很少受几何条件限制,收敛速度与问题的维数无关。
Monte Carlo方法的基本思想很早以前就被人们所发现和利用。早在17世纪,人们就知道用事件发生的“频率”来决定事件的“概率“。19世纪,法国科学家蒲丰(Buffon)提出了用投针试验计算圆周率π值的问题。阮一峰的博客:蒙特卡罗方法入门介绍了另一种计算圆周率π值的方法,也让我们更容易地理解蒙特2卡罗分析是如何通过建立概率模型独辟蹊径实现乾坤大挪移,求解出复杂问题的近似解。
蒙特卡罗分析,本质上是一种使用随机抽样统计来估算数学函数的计算方法。它需要一个良好的随机数源。为了减少随机抽样统计方法带来的误差,必须重复进行很多次实验,随机抽取样本数量越多,计算结果也就会越精确。所以直到现代20世纪40年代以后计算机技术的出现和飞速发展,才使得用计算机模拟概率过程,实现多次模拟试验并统计计算结果,得出问题的无限近似解成为真正可能。
在历史上,也正是第二次世界大战中美国研制原子弹的”曼哈顿计划“,提出了开发和应用具备大存储量和高运算速度的大型计算机的要求,这也成为当时推动计算机技术发展的重要动力。在原子弹工程研究的初期,冯·诺依曼和乌拉姆教授两人把他们所从事的秘密工作—对裂变物质的中子随机扩散进行直接模拟—以摩纳哥国的世界闻名赌城蒙特卡罗(Monte Carlo)作为秘密代号来称呼。用赌城名比喻随机模拟,风趣又贴切,很快得到了广泛接受,此后,人们便把这种计算机随机模拟方法称为蒙特卡罗方法。
更多关于蒙特卡罗分析的数学和应用背景,建议阅读蒙特卡罗方法及其应用一文。
SaberRD之蒙特卡罗分析(一)的更多相关文章
- SaberRD之瞬态分析
瞬态分析(Transient Analysis)也叫做暂态分析,一般用于分析含有储能器件的电路在换路后发生的过渡状态,比如分析RLC电路在接通.断开.改接以及参数发生改变和电源突变时,电路的电压电流从 ...
- SaberRD之交流分析
交流分析(AC Analysis)也叫做小信号(Small-Signal)分析,也即分析电路的小信号频率响应,更严谨的定义是:分析工作在直流偏置电压下的非线性电路对于一定频率范围内的输入小信号的系统响 ...
- Multisim的电路分析方法
Multisim的电路分析方法:主要有直流工作点分析,交流分析,瞬态分析,傅里叶分析,噪声分析,失真分析,直流扫描分析, 灵敏度分析,参数扫描分析,温度扫描分析,零一极点分析,传递函数分析,最坏情况分 ...
- PSpiceAA-高级分析例程
一.高级分析应用例程 1.1.例程电路原理图(同向放大电路) 器件模型使用PSpice-ELEM库中的模型. 1..1.1.仿真测试波形图 1.2.灵敏度分析 1.2.1菜单选择:PSpice-> ...
- PMP--综合考试知识点,持续更新中。。。
1]盈亏平衡点=固定成本/(销售价格-可变成本). 2]项目管理(Project Management): 就是把各种知识.技能.手段和技术应用于项目活动之中,以达到项目的要求. 3]有效的管理要求项 ...
- [转]SPICE仿真软件基础(整理)
现在常用的SPICE仿真软件为方便用户使用都提供了较好的用户界面,在用仿真库中的元器件连成原理图后就可以进行仿真(当然要设置必要的仿真参数),但实际上只是用原理图自动产生了SPICE的格式语句,还是要 ...
- 从P6 EPPM 8 R3 到P6 EPPM 16 R1 有哪些改变?
Product 特征 First Release for Feature P6 EPPM 通过编辑活动标识替换关系.当你需要修改一个关系,你不需要删除现有的关系,并作出一个新的,你可以简单地编辑活动的 ...
- 从PMP培训归来,跟大家聊聊做项目的套路
管理也是一些套路的传承,很多人说不去学专门的管理,照样把工作做得很好.是的,不是散打乱打就不能赢,只是会吃点亏而已.如果你有了套路在心中,那么必定会让自己车到山前开路,让事情更好办. 所以,我去学了几 ...
- PMP模拟考试-2
1. Increasing resources on the critical path activities may not always shorten the length of the pro ...
随机推荐
- locate/slocate命令
locate命令和slocate命令都用来查找文件或目录. locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/l ...
- Mybatis oracle多表联合查询分页数据重复的问题
Mybatis oracle多表联合查询分页数据重复的问题 多表联合查询分页获取数据时出现一个诡异的现象:数据总条数正确,但有些记录多了,有些记录却又少了甚至没了.针对这个问题找了好久,最后发现是由于 ...
- uWSGI参考资料(1.0版本的配置选项列表)
Reference: http://blog.csdn.net/kevin6216/article/details/15378617 uWSGI参考资料(1.0版本的配置选项列表) 下面的内容包含了大 ...
- partial类修饰符
partial是一个类修饰符,用于把类定义拆分为几个部分,便于代码管理,如class ClassA{void A(){;}void B(){;}}与partial class ClassA{void ...
- Python3基础 使用for循环 删除一个列表中的重复项
镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...
- magento中文语言包的使用
magento中文语言包的使用,我们在百度上随便就能找到一大堆. 由于本人今天是第一次使用magento,找到目录magento/app/locale 并且用语言包中的locale文件夹替换掉mag ...
- html 转义
function escapeHTML(n) { var t = document.createElement("div"), i = document.createTextNod ...
- PHP使用array_intersect()函数求数组交集
在PHP中求数组的交集,我们可以与PHP给我们提供的现成函数:array_intersect(),其用法格式为: array array_intersect(array array1,array ar ...
- iOS 错误 之 Potential leak of an object stored into 'cs'
存储到 “cs”的对象存在潜在的泄露
- 勘误《iOS网络高级编程:iPhone和iPad的企业应用开发》
VII页 , 倒数第二行, “其他” 应为 “其它” X页, 源代码有错误,说是有19章,实际一共13章 XI页,勘误表的链接也是错误的 .是该书的<Beginning ASP.NET 4.5 ...