【声明】本博文的大部分内容摘录于网络,本人按照自己的思维习惯和文字风格进行了重新整理以便于理解和记忆。

鉴于篇幅,我打算先对蒙特卡罗分析的基本思想和历史渊源做一下简单的梳理,然后在下一篇博文中介绍SaberRD软件中的蒙特卡罗分析。

蒙特卡罗(Monte Carlo) 方法, 又称随机抽样法,统计试验法或随机模拟法。是一种用计算机模拟随机现象,通过仿真试验,得到实验数据,再进行分析推断,得到某些现象的规律或某些问题的解的方法。

蒙特卡罗方法的基本思想是,为了求解某一问题,首先建立一个与求解有关的概率模型或随机过程,使它的参数等于所求问题的解,然后通过对模型或过程的观察或抽样试验来计算所求参数的统计特征,最后给出所求解的近似值。

概率统计是蒙特卡罗方法的理论基础,其手段是随机抽样或随机变量抽样。对于那些难以进行的或条件不满足的试验而言,这是一种极好的替代方法。蒙特卡罗方法能够比较逼真地描述事物的特点及物理实验过程,解决一些数值方法难以解决的问题,很少受几何条件限制,收敛速度与问题的维数无关。

Monte Carlo方法的基本思想很早以前就被人们所发现和利用。早在17世纪,人们就知道用事件发生的“频率”来决定事件的“概率“。19世纪,法国科学家蒲丰(Buffon)提出了用投针试验计算圆周率π值的问题。阮一峰的博客:蒙特卡罗方法入门介绍了另一种计算圆周率π值的方法,也让我们更容易地理解蒙特2卡罗分析是如何通过建立概率模型独辟蹊径实现乾坤大挪移,求解出复杂问题的近似解。

蒙特卡罗分析,本质上是一种使用随机抽样统计来估算数学函数的计算方法。它需要一个良好的随机数源。为了减少随机抽样统计方法带来的误差,必须重复进行很多次实验,随机抽取样本数量越多,计算结果也就会越精确。所以直到现代20世纪40年代以后计算机技术的出现和飞速发展,才使得用计算机模拟概率过程,实现多次模拟试验并统计计算结果,得出问题的无限近似解成为真正可能。

在历史上,也正是第二次世界大战中美国研制原子弹的”曼哈顿计划“,提出了开发和应用具备大存储量和高运算速度的大型计算机的要求,这也成为当时推动计算机技术发展的重要动力。在原子弹工程研究的初期,冯·诺依曼和乌拉姆教授两人把他们所从事的秘密工作—对裂变物质的中子随机扩散进行直接模拟—以摩纳哥国的世界闻名赌城蒙特卡罗(Monte Carlo)作为秘密代号来称呼。用赌城名比喻随机模拟,风趣又贴切,很快得到了广泛接受,此后,人们便把这种计算机随机模拟方法称为蒙特卡罗方法。

更多关于蒙特卡罗分析的数学和应用背景,建议阅读蒙特卡罗方法及其应用一文。

SaberRD之蒙特卡罗分析(一)的更多相关文章

  1. SaberRD之瞬态分析

    瞬态分析(Transient Analysis)也叫做暂态分析,一般用于分析含有储能器件的电路在换路后发生的过渡状态,比如分析RLC电路在接通.断开.改接以及参数发生改变和电源突变时,电路的电压电流从 ...

  2. SaberRD之交流分析

    交流分析(AC Analysis)也叫做小信号(Small-Signal)分析,也即分析电路的小信号频率响应,更严谨的定义是:分析工作在直流偏置电压下的非线性电路对于一定频率范围内的输入小信号的系统响 ...

  3. Multisim的电路分析方法

    Multisim的电路分析方法:主要有直流工作点分析,交流分析,瞬态分析,傅里叶分析,噪声分析,失真分析,直流扫描分析, 灵敏度分析,参数扫描分析,温度扫描分析,零一极点分析,传递函数分析,最坏情况分 ...

  4. PSpiceAA-高级分析例程

    一.高级分析应用例程 1.1.例程电路原理图(同向放大电路) 器件模型使用PSpice-ELEM库中的模型. 1..1.1.仿真测试波形图 1.2.灵敏度分析 1.2.1菜单选择:PSpice-> ...

  5. PMP--综合考试知识点,持续更新中。。。

    1]盈亏平衡点=固定成本/(销售价格-可变成本). 2]项目管理(Project Management): 就是把各种知识.技能.手段和技术应用于项目活动之中,以达到项目的要求. 3]有效的管理要求项 ...

  6. [转]SPICE仿真软件基础(整理)

    现在常用的SPICE仿真软件为方便用户使用都提供了较好的用户界面,在用仿真库中的元器件连成原理图后就可以进行仿真(当然要设置必要的仿真参数),但实际上只是用原理图自动产生了SPICE的格式语句,还是要 ...

  7. 从P6 EPPM 8 R3 到P6 EPPM 16 R1 有哪些改变?

    Product 特征 First Release for Feature P6 EPPM 通过编辑活动标识替换关系.当你需要修改一个关系,你不需要删除现有的关系,并作出一个新的,你可以简单地编辑活动的 ...

  8. 从PMP培训归来,跟大家聊聊做项目的套路

    管理也是一些套路的传承,很多人说不去学专门的管理,照样把工作做得很好.是的,不是散打乱打就不能赢,只是会吃点亏而已.如果你有了套路在心中,那么必定会让自己车到山前开路,让事情更好办. 所以,我去学了几 ...

  9. PMP模拟考试-2

    1. Increasing resources on the critical path activities may not always shorten the length of the pro ...

随机推荐

  1. 非root用户Memcached repcached安装

    安装memcached前先要确定系统是否安装了gcc: 1.解压安装包: tar -zxf memcached-1.2.8-repcached-2.2.tar.gz 2.编译: 系统应安装了libev ...

  2. [Usaco2008 Dec]Secret Message 秘密信息

    2794: [Usaco2008 Dec]Secret Message 秘密信息 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 7  Solved: 3 ...

  3. R语言中的if-else语句写法

    结构  1 :  if()  xx  else    yy    一行: 结构  2:   if()  {xx} else  {yy} 或者   if(){ xx }else    #此处不能两行写 ...

  4. Object.create() 实现

    if (typeof Object.create !== 'function') { Object.create = function (o) { function F() {} F.prototyp ...

  5. DevExpress控件学习总结(转)

    DevExpress控件学习总结   1.Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹 ...

  6. Selenium2(java)selenium常用API 四

    WebElement相关方法 1.点击操作 WebElement button = driver.findElement(By.id("login")); button.click ...

  7. Memo 的当前行、当前列与当前字符

    procedure TForm1.Memo1Click(Sender: TObject); begin   Text := Format('当前列:%d, 当前行:%d', [Memo1.CaretP ...

  8. 在ASP.NET MVC中使用 Bootstrap table插件

    Bootstrap table: http://bootstrap-table.wenzhixin.net.cn/zh-cn/getting-started/ 1. 控制器代码: using Syst ...

  9. 第一篇:CUDA 6.0 安装及配置( WIN7 64位 / 英伟达G卡 / VS2010 )

    前言 本文讲解如何在VS 2010开发平台中搭建CUDA开发环境. 当前配置: 系统:WIN7 64位 开发平台:VS 2010 显卡:英伟达G卡 CUDA版本:6.0 若配置不同,请谨慎参考本文. ...

  10. 内功心法 -- java.util.ArrayList<E> (6)

    写在前面的话:读书破万卷,编码如有神--------------------------------------------------------------------下文主要对java.util ...