excel怎么用monte carlo

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel怎么用monte carlo相关的知识,希望对你有一定的参考价值。

蒙特卡罗方法(MC)
蒙特卡罗(Monte Carlo)方法:
蒙特卡罗(Monte
Carlo)方法,又称随机抽样或统计试验方法,属于计算数学的一个分支,它是在本世纪四十年代中期为了适应当时原子能事业的发展而发展起来的。传统的经验方法由于不能逼近真实的物理过程,很难得到满意的结果,而蒙特卡罗方法由于能够真实地模拟实际物理过程,故解决问题与实际非常符合,可以得到很圆满的结果。这也是我们采用该方法的原因。
蒙特卡罗方法的基本原理及思想如下:
当所要求解的问题是某种事件出现的概率,或者是某个随机变量的期望值时,它们可以通过某种“试验”的方法,得到这种事件出现的频率,或者这个随机变数的平均值,并用它们作为问题的解。这就是蒙特卡罗方法的基本思想。蒙特卡罗方法通过抓住事物运动的几何数量和几何特征,利用数学方法来加以模拟,即进行一种数字模拟实验。它是以一个概率模型为基础,按照这个模型所描绘的过程,通过模拟实验的结果,作为问题的近似解。可以把蒙特卡罗解题归结为三个主要步骤:构造或描述概率过程;实现从已知概率分布抽样;建立各种估计量。
蒙特卡罗解题三个主要步骤:
构造或描述概率过程:
对于本身就具有随机性质的问题,如粒子输运问题,主要是正确描述和模拟这个概率过程,对于本来不是随机性质的确定性问题,比如计算定积分,就必须事先构造一个人为的概率过程,它的某些参量正好是所要求问题的解。即要将不具有随机性质的问题转化为随机性质的问题。
实现从已知概率分布抽样:
构造了概率模型以后,由于各种概率模型都可以看作是由各种各样的概率分布构成的,因此产生已知概率分布的随机变量(或随机向量),就成为实现蒙特卡罗方法模拟实验的基本手段,这也是蒙特卡罗方法被称为随机抽样的原因。最简单、最基本、最重要的一个概率分布是(0,1)上的均匀分布(或称矩形分布)。随机数就是具有这种均匀分布的随机变量。随机数序列就是具有这种分布的总体的一个简单子样,也就是一个具有这种分布的相互独立的随机变数序列。产生随机数的问题,就是从这个分布的抽样问题。在计算机上,可以用物理方法产生随机数,但价格昂贵,不能重复,使用不便。另一种方法是用数学递推公式产生。这样产生的序列,与真正的随机数序列不同,所以称为伪随机数,或伪随机数序列。不过,经过多种统计检验表明,它与真正的随机数,或随机数序列具有相近的性质,因此可把它作为真正的随机数来使用。由已知分布随机抽样有各种方法,与从(0,1)上均匀分布抽样不同,这些方法都是借助于随机序列来实现的,也就是说,都是以产生随机数为前提的。由此可见,随机数是我们实现蒙特卡罗模拟的基本工具。
建立各种估计量:
一般说来,构造了概率模型并能从中抽样后,即实现模拟实验后,我们就要确定一个随机变量,作为所要求的问题的解,我们称它为无偏估计。建立各种估计量,相当于对模拟实验的结果进行考察和登记,从中得到问题的解。

 

1、定义: 蒙特卡洛(Monte Carlo)模拟是一种通过设定随机过程,反复生成时间序列,计算参数估计量和统计量,进而研究其分布特征的方法。

 

2、基于计算机的蒙特卡洛模拟实现步骤:
(1)对每一项活动,输入最小、最大和最可能估计数据(注意这里不是三点估算),并根据提出的问题构造或选择一个简单、适用的概率分布模型,使问题的解对应于该模型中随机变量的某些特征(如概率、均值和方差等),这些特征都可以通过模拟出的概率分布图得到。
(2)根据模型中各个随机变量的分布,利用给定的某种规则,在计算机上快速实施充分大量的随机抽样。
(3)对随机抽样的数据进行必要的数学计算,统计分析模拟试验结果,给出问题的概率解以及解的精度估计,即最小值、最大值以及数学期望值和单位标准偏差。
(4)按照所建立的模型进行仿真试验、计算,求出问题的随机解。
(5)根据求出的统计学处理数据,让计算机自动生成概率分布图,通常为正态分布图。
(6)根据概率分布图读出所需信息,如某项目成本200万情况下的完工概率,或确保70%完工概率时需要的成本等。

 

3、基于EXCEL与Crystal Ball的蒙特卡洛成本模拟过程实例:

参考技术A 如果有license,可以发布组件
以Excel为例:开始-所有程序-Isight2.0-Library Browser(
选择菜单:File-Publish 查找安装目录下的Lib\componments\excel.jar
Publish ,Ok!本回答被提问者和网友采纳

蒙特卡罗方法(Monte Carlo method)

 蒙特卡罗方法(Monte Carlo method
 
  蒙特卡罗方法概述
 
  蒙特卡罗方法又称统计模拟法、随机抽样技术,是一种随机模拟方法,以概率和统计理论方法为基础的一种计算方法,是使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。将所求解的问题同一定的概率模型相联系,用电子计算机实现统计模拟或抽样,以获得问题的近似解。为象征性地表明这一方法的概率统计特征,故借用赌城蒙特卡罗命名。
 
  蒙特卡罗方法的提出
 
  蒙特卡罗方法于20世纪40年代美国在第二次世界大战中研制原子弹的曼哈顿计划计划的成员SM.乌拉姆和J.冯·诺伊曼首先提出。数学家冯·诺伊曼用驰名世界的赌城摩纳哥的Monte Carlo—来命名这种方法,为它蒙上了一层神秘色彩。在这之前,蒙特卡罗方法就已经存在。1777年,法国Buffon提出用投针实验的方法求圆周率。这被认为是蒙特卡罗方法的起源。
 
  蒙特卡罗方法的基本思想
 
  Monte Carlo方法的基本思想很早以前就被人们所发现和利用。早在17世纪,人们就知道用事件发生的频率来决定事件的概率19世纪人们用投针试验的方法来决定圆周率π。本世纪40年代电子计算机的出现,特别是近年来高速电子计算机的出现,使得用数学方法在计算机上大量、快速地模拟这样的试验成为可能。
 
  考虑平面上的一个边长为1的正方形及其内部的一个形状不规则的图形,如何求出这个图形的面积呢?Monte Carlo方法是这样一种随机化的方法:向该正方形随机地投掷N个点,有M个点落于图形内,则该图形的面积近似为M/N。可用民意测验来作一个不严格的比喻。民意测验的人不是征询每一个登记选民的意见,而是通过对选民进行小规模的抽样调查来确定可能的优胜者。其基本思想是一样的。
 
  科技计算中的问题比这要复杂得多。比如金融衍生产品(期权、期货、掉期等)的定价及交易风险估算,问题的维数(即变量的个数)可能高达数百甚至数千。对这类问题,难度随维数的增加呈指数增长,这就是所谓的维数的灾难Curse of Dimensionality),传统的数值方法难以对付(即使使用速度最快的计算机)。Monte Carlo方法能很好地用来对付维数的灾难,因为该方法的计算复杂性不再依赖于维数。以前那些本来是无法计算的问题现在也能够计算量。为提高方法的效率,科学家们提出了许多所谓的方差缩减技巧。
 
  另一类形式与Monte Carlo方法相似,但理论基础不同的方法—“拟蒙特卡罗方法QuasiMonte Carlo方法)近年来也获得迅速发展。我国数学家华罗庚、王元提出的方法即是其中的一例。这种方法的基本思想是用确定性的超均匀分布序列(数学上称为Low Discrepancy Sequences)代替Monte Carlo方法中的随机数序列。对某些问题该方法的实际速度一般可比Monte Carlo方法提出高数百倍,并可计算精确度。
 
  蒙特卡罗方法的基本原理
 
  由概率定义知,某事件的概率可以用大量试验中该事件发生的频率来估算,当样本容量足够大时,可以认为该事件的发生频率即为其概率。因此,可以先对影响其可靠度的随机变量进行大量的随机抽样,然后把这些抽样值一组一组地代入功能函数式,确定结构是否失效,最后从中求得结构的失效概率。蒙特卡罗法正是基于此思路进行分析的。
 
  设有统计独立的随机变量Xii123k),其对应的概率密度函数分别为fx1fx2fxk,功能函数式为Zgx1x2xk)。
 
  首先根据各随机变量的相应分布,产生N组随机数x1x2xk值,计算功能函数值 Zigx1x2xk)(i12N),若其中有L组随机数对应的功能函数值Zi≤0,则当N→∞时,根据伯努利大数定理及正态随机变量的特性有:结构失效概率,可靠指标。
 
  从蒙特卡罗方法的思路可看出,该方法回避了结构可靠度分析中的数学困难,不管状态函数是否非线性、随机变量是否非正态,只要模拟的次数足够多,就可得到一个比较精确的失效概率和可靠度指标。特别在岩土体分析中,变异系数往往较大,与JC法计算的可靠指标相比,结果更为精确,并且由于思路简单易于编制程序。
 
  蒙特卡罗方法在数学中的应用
 
  通常蒙特·卡罗方法通过构造符合一定规则的随机数来解决数学上的各种问题。对于那些由于计算过于复杂而难以得到解析解或者根本没有解析解的问题,蒙特·卡罗方法是一种有效的求出数值解的方法。一般蒙特·卡罗方法在数学中最常见的应用就是蒙特·卡罗积分。
 
  蒙特卡罗方法的应用领域
 
  蒙特卡罗方法在金融工程学宏观经济学,生物医学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)等领域应用广泛。
 
  蒙特卡罗方法的工作过程
 
  在解决实际问题的时候应用蒙特·卡罗方法主要有两部分工作:
 
  1用蒙特·卡罗方法模拟某一过程时,需要产生各种概率分布随机变量
 
  2统计方法把模型的数字特征估计出来,从而得到实际问题的数值解。
 
  蒙特卡罗方法分子模拟计算的步骤
 
  使用蒙特·卡罗方法进行分子模拟计算是按照以下步骤进行的:
 
  1使用随机数发生器产生一个随机的分子构型。
 
  2对此分子构型的其中粒子坐标做无规则的改变,产生一个新的分子构型。
 
  3计算新的分子构型的能量。
 
  4比较新的分子构型于改变前的分子构型的能量变化,判断是否接受该构型。
 
  ·若新的分子构型能量低于原分子构型的能量,则接受新的构型,使用这个构型重复再做下一次迭代。
 
  ·若新的分子构型能量高于原分子构型的能量,则計算玻尔兹曼因子,并产生一个随机数。
 
  若这个随机数大于所计算出的玻尔兹曼因子,则放弃这个构型,重新计算。
 
  若这个随机数小于所计算出的玻尔兹曼因子,则接受这个构型,使用这个构型重复再做下一次迭代。
 
  5如此进行迭代计算,直至最后搜索出低于所给能量条件的分子构型结束。
 
  蒙特卡罗模型的发展运用
 
  从理论上来说,蒙特卡罗方法需要大量的实验。实验次数越多,所得到的结果才越精确。以上Buffon的投针实验为例、历史上的记录如下表1
 
技术分享图片  
 
  从表中数据可以看到,一直到公元20世纪初期,尽管实验次数数以千计,利用蒙特卡罗方法所得到的圆周率值,还是达不到公元5世纪祖冲之的推算精度。这可能是传统蒙特卡罗方法长期得不到推广的主要原因。
 
  计算机技术的发展,使得蒙特卡罗方法在最近10年得到快速的普及。现代的蒙特卡罗方法,已经不必亲自动手做实验,而是借助计算机的高速运转能力,使得原本费时费力的实验过程,变成了快速和轻而易举的事情。它不但用于解决许多复杂的科学方面的问题,也被项目管理人员经常使用。
 
  借助计算机技术,蒙特卡罗方法实现了两大优点:
 
  一是简单,省却了繁复的数学报导和演算过程,使得一般人也能够理解和掌握;
 
  二是快速。简单和快速,是蒙特卡罗方法在现代项目管理中获得应用的技术基础。
 
  蒙特卡罗方法有很强的适应性,问题的几何形状的复杂性对它的影响不大。该方法的收敛性是指概率意义下的收敛,因此问题维数的增加不会影响它的收敛速度,而且存贮单元也很省,这些是用该方法处理大型复杂问题时的优势。因此,随着电子计算机的发展和科学技术问题的日趋复杂,蒙特卡罗方法的应用也越来越广泛。它不仅较好地解决了多重积分计算、微分方程求解、积分方程求解、特征值计算和非线性方程组求解等高难度和复杂的数学计算问题,而且在统计物理、核物理、真空技术、系统科学、信息科学、公用事业、地质、医学,可靠性及计算机科学等广泛的领域都得到成功的应用。
 
  项目管理中蒙特卡罗模拟方法的一般步骤
 
  项目管理中蒙特卡罗模拟方法的一般步骤是:
 
  1、对每一项活动,输入最小、最大和最可能估计数据,并为其选择一种合适的先验分布模型;
 
  2、计算机根据上述输入,利用给定的某种规则,快速实施充分大量的随机抽样;
 
  3、对随机抽样的数据进行必要的数学计算,求出结果;
 
  4、对求出的结果进行统计学处理,求出最小值、最大值以及数学期望值和单位标准偏差;
 
  5、根据求出的统计学处理数据,让计算机自动生成概率分布曲线和累积概率曲线(通常是基于正态分布的概率累积S曲线);
 
  6、依据累积概率曲线进行项目风险分析。
 
  非权重蒙特卡罗积分
 
  非权重蒙特卡罗积分,也称确定性抽样,是对被积函数变量区间进行随机均匀抽样,然后对被抽样点的函数值求平均,从而可以得到函数积分的近似值。此种方法的正确性是基于概率论中心极限定理。当抽样点数为m时,使用此种方法所得近似解的统计误差恒为 1除于根号M,不随积分维数的改变而改变。因此当积分维度较高时,蒙特卡罗方法相对于其他数值解法更优。
 
  蒙特卡罗方法案例分析
 
  案例一:蒙特卡罗模型在投资项目决策中的开发应用[1]
 
  一、问题的提出
 
  随着社会主义市场经济体制的逐步完善、经济水平的逐步提高,我国社会经济活动日趋复杂,越来越多变,其影响越来越广泛,越来越深远,不确定性逐渐成为企业决策时所面临的主要难题。因此,如何在不确定条件下做出投资决策,就成为目前理论和实践工作者们广泛关注的一个核心课题。
 
  传统的投资评价理论——以净现值法(NPV为代表的投资决策分析方法,其根本缺陷在于它们是事先对未来的现金流量做出估计,并假设其为不变或静态的状况,无法衡量不确定因素的影响,不能体现递延决策以应对所带来的管理弹性。所以,在不确定环境下的投资,用净现值法评估项目不能体现柔性投资安排决策所体现的价值,无助于项目在决策中回避风险。在多变的市场环境中,不确定性与竞争者的反应使实际收入与预期收入有所出入,所以净现值法(NPV适用于常规项目,未来不确定性比较小的项目。
 
  为此理论界对未来投资环境不确定性大的项目提出了实物期权法,但在实践中应用的还是比较少。实物期权法的应用对企业决策者的综合素质要求比较高,对企业资源能力要求也比较高。但是实物期权法改变了我国管理者对战略投资的思维方式。
 
  基于以上的分析,我们得出这样的结论:传统的投资决策方法对风险项目和不确定性项目的评价有较多不完善之处,有必要对其改进;实物期权法理论上解决了传统决策方法对不确定性项目评价的不足,但其应用尚处于体系不成熟阶段,在实践中应用并不广泛。至此,引入蒙特卡罗模型的理论和其分析方法,此方法特别适用于参数波动性大,且服从某一概率分布的项目,例如地质勘察、气田开发等项目。
 
  蒙特卡罗模型是利用计算机进行数值计算的一类特殊风格的方法,它是把某一现实或抽象系统的某种特征或部分状态,用模拟模型的系统来代替或模仿,使所求问题的解正好是模拟模型的参数或特征量,再通过统计实验,求出模型参数或特征量的估计值,得出所求问题的近似解。目前评价不确定和风险项目多用敏感性分析和概率分析,但计算上较为复杂,尤其各因素变化可能出现概率的确定比较困难。蒙特卡罗模型解决了这方面的问题,各种因素出现的概率全部由软件自动给出,通过多次模拟,得出项目是否应该投资。该方法应用面广,适应性强。
 
  惠斯通(Weston对美国1 000 家大公司所作的统计表明:在公司管理决策中,采用随机模拟方法的频率占29 % 以上,远大于其他数学方法的使用频率。特别,该方法算法简单,但计算量大,在模拟实际问题时,要求所建模型必须反复验证,这就离不开计算机技术的帮助,自然可利用任何一门高级语言来实现这种方法。通过一案例具体实现了基于Excel Monte Carlo 模拟系统,由于Microsof tExcel 电子表格软件强大的数据分析功能和友好的界面设计能力,使系统实现起来颇感轻松自如。
 
  二、理论和方法
 
  蒙特卡洛模拟早在四十年前就用于求解核物理方面的问题。当管理问题更为复杂时,传统的数学方法就难以进行了。模拟是将一个真实事物模型化,然后对该模型做各种实验,模拟也是一个通过实验和纠正误差来寻求最佳选择的数值性求解的过程。模拟作为一种有效的数值处理方法,计算量大。以前只是停留在理论探讨上,手工是无法完成的。在管理领域由于规律复杂随机因素多,很多问题难以用线性数学公式分析和解决,用模拟则有效得多。在新式的计算机普及后,模拟技术来求解管理问题已成为可能。
 
  计算机模拟技术和其它方法相比有以下优点:
 
  1成本低、风险小,在产品未投产,实际生产未形成就可以对市场进行分析模拟,极大地减少费用和风险。
 
  2环境条件要求低,工作人员不需要高深的数学能力,完全依靠计算机进行,在硬件和软件日益降价的情况下,可以成为现实。
 
  3可信度高,常用的统计推理方法需要大量历史数据(如平均数法、最小二乘法对无历史资料的场合就无能为力(如新产品)而且精度低。
 
  模拟的最大特点是借助一个随机数来模仿真实的现实,随机数的产生则由计算机来产生。称为伪随机数。即:
 
  Rn  F  1  r  2 ……r  k
 
  在以对象为中心的软件中, EXCEL 有一个RANE()函数实现伪随机数功能。RANE)实际上是一个会自动产生伪随机数的子程序。用产生的伪随机数模拟市场购买行为,得出产品销售量,在生产成本相对固定时进而推测出产品的利润。此方法不用编制复杂的程序,思路假设为,作为系统内部是可以控制的,即企业内部生产成本可以人为控制,但系统外部因素是不可控制的(消费心理导致的消费行为)则生产与销售就会产生矛盾。生产量小于销售量,造成开工不足资源浪费;生产量大于销售量,造成产品积压,资金占用,同样形成资源的浪费。最好生产量等于销售量,则资源浪费最小,自然经济效益就最高,实际就是利润最大化。如果能科学地测算出在什么情况下利润最大,则这时的产量就是最佳产量,成本也就最低。这就是市场作为导向,以销定产的公认市场经济的准则。实际工作中,很多产品的消费是具有随机性的,主要是一些需求弹性大、价格弹性大、价格低、与日常生活有关的中、小商品,如副食品、日用消费品、玩具、轻工业产品。对企业而言利润较高的产品。
 
  从以上分析可以看出,蒙特卡洛模拟可以动态实现对产品利润的预测,从而对产品产量科学控制,实现资源优化,是一种较好的决策支持方法。
 
  三、蒙特卡罗模型在Excel 表中的应用
 
  某气田投资项目期投资、寿命期、残值以及各年的收入、支出,以及应付税金的税率、项目的资本成本等都是独立的随机变量,他们的概率密度函数如表1所示。
 
  各变量对应概率密度函数表
 
 
A
B
C
D
2
 
概率
对应的随机数
可能值
3
投资Yo
02
0
450
4
05
0
6
5
03
70
550
6
寿命N
05
0
6
7
03
50
7
8
02
80
8
9
残值F
025
0
40
10
05
25
50
11
025
75
60
12
税率Te
02
再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

以上是关于excel怎么用monte carlo的主要内容,如果未能解决你的问题,请参考以下文章

蒙特卡罗算法(Monte Carlo method)

蒙特卡罗方法(Monte Carlo method)

怎么用excel BOXPLOT

用excel怎么统计绘图

excel yiled函数怎么用

excel中的统计函数STANDARDIZE怎么用