当前位置: 首页 > news >正文

蒙特卡洛随机模拟

蒙特卡洛随机模拟

简介

蒙特卡洛模拟是在计算机上模拟项目实施了成千上万次,每次输入都随机选择输入值。由于每个输入很多时候本身就是一个估计区间,因此计算机模型会随机选取每个输入的该区间内的任意值,通过大量成千上万甚至百万次的模拟次数,最终得出一个累计概率分布图,这个就是蒙特卡洛模拟。

模拟举例

我们以定量风险分析项目总成本为例来简要介绍一下蒙特卡洛模拟。你做为项目经理,项目主要有三大阶段需要花费成本,分别是计划,编码,测试。假设这三块内容预估费用的概率是正态分布(单位:万RMB)。分别对三要素得到如下最乐观,最可能和最悲观的成本数值。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yRhWrJsw-1677461323969)(C:\Users\why\AppData\Roaming\Typora\typora-user-images\image-20230116195552464.png)]

现在我们需要用蒙特卡洛模拟来以这三个要素的成本分布为输入,来模拟得到整个项目的成本概率分布图。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LQxish6J-1677461323970)(C:\Users\why\AppData\Roaming\Typora\typora-user-images\image-20230116195624223.png)]

我们要用蒙特卡洛模拟来定量分析整个项目的成本风险。于是我们用电脑来模拟项目的实施。

第一步:随机抽取三要素(计划、编码、测试)的成本值作为输入;

(对于第一步中,产生每个要素的随机成本值,Excel里面有个函数可以生成呈正态分布的随机数,就是NORMINV。)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nOSab5an-1677461323971)(C:\Users\why\AppData\Roaming\Typora\typora-user-images\image-20230116195801827.png)]

第二步:然后把三个要素的值求和Σ得到整个项目的成本值,这样就完成了一次模拟;

第三步:对第一二步进行重复套娃,然后就这样一次一次的模拟,需要模拟成千上万次最终得到成千上万个整个项目成本的数值(我们这个例子中套娃500次);

第三步中对三要素重复500次生成随机值,就得到了500组三要素的随机值,并将它们的数值相加得到500组随机总成本。如下图:

img

第四步:再对这些海量成本值进行统计分析,得出最终的项目总成本概率分布。

在这里插入图片描述

通过对上面表格的数据可以计算出每个随机总成本出现的概率(和累计概率)。将分组数据为X轴,出现概率和累积概率的值为Y轴,可以得到总成本的概率分布图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0nWPiSfR-1677461323975)(C:\Users\why\AppData\Roaming\Typora\typora-user-images\image-20230116195942101.png)]

柱状图是整个项目估计刚好花多少成本完工的概率数据,比如图中花28万对应的概率大约是14%,表示整个项目刚好花28万完工的概率是14%。

图中的曲线是每个柱状图(每一次总成本)概率的累计值得到的曲线,是总成本的累计概率分布图。比如还是以28万这个点为例,X轴28万,曲线在Y轴上对应的是70%的概率,这就代表着总成本在28万的话,有70%的概率能够完成项目。

这个曲线就是模特卡洛模拟所得到的交付物,最终我们可以根据这个模拟曲线,来判断花多少成本,能够完成项目的概率是多大,这样就将风险量化了。

相关文章:

蒙特卡洛随机模拟

蒙特卡洛随机模拟 简介 蒙特卡洛模拟是在计算机上模拟项目实施了成千上万次,每次输入都随机选择输入值。由于每个输入很多时候本身就是一个估计区间,因此计算机模型会随机选取每个输入的该区间内的任意值,通过大量成千上万甚至百万次的模拟…...

Android从屏幕刷新到View的绘制(三)之Handler异步消息与同步屏障

0. 相关分享 Android从屏幕刷新到View的绘制(一)之 Window、WindowManager和WindowManagerService之间的关系 Android从屏幕刷新到View的绘制(二)之Choreographer、Vsync与屏幕刷新 1. 相关类 Handler Handler中维护着它所在的…...

最新版axios@1.3.x取消请求-AbortController-初体验-番茄出品

最新版axios1.3.x取消请求-AbortController-初体验-番茄出品 start 前文提到,axios 中的取消请求,包含两种方式: AbortController;CancelToken; 上篇文章讲解了 CancelToken,今天这篇文章来了解一下 Abor…...

Git的简述

Git 文章目录GitGit概述版本控制工具集中式管理控制工具分步式管理控制工具控制机制Git和代码托管中心安装Git软件Git常用命令Git概述 Git是一个免费的、开源的分步式版本控制系统,可以快速的处理从小型到大型的各种项目 Git 易于学习,占地面积小&…...

webpack实战,手写loader和plugin

序言 对于 webpack 来说, loader 和 plugin 可以算是需求程度最为广泛的配置项了。但是呢,单单止步于配置可能还不够。如果我们自己有时候想要 diy 一个需求,但是 webpack 又没有相关的 loader 和 plugin 。那这个时候我们可能就得开始造点轮…...

STM32CubeMX按键模块化 点灯

本文代码使用 HAL 库。 文章目录前言一、按键原理图二、CubeMX 创建工程三、代码讲解:1. GPIO的输入HAL库函数:2. 消抖:3. 详细代码四,实验现象:总结前言 我们继续讲解 stm32 f103,这篇文章将详细 为大家讲…...

C#专栏目录(长期更新)

文章目录C# 基础C#进阶C#应用WPF基础WPF 3D小游戏C# 基础 1996年,微软用年薪三百万美刀的价格从Borland挖来了大神海尔斯伯格,开始了J开发,用以对抗Java。但SUN公司认为此举违反了Java开发平台的中立性,对微软提出诉讼。C#正是在…...

BurpSuite配置抓取HTTPS数据包

简介 我们在渗透测试的过程中,经常会遇到HTTPS的网站,Burp默认是没有办法抓取HTTPS的包的,想要让Burp抓取Https的包也很好办,只需要浏览器安装相关的证书即可,接下来将配置过程做一个记录。 前置条件: 1.J…...

图片转base64格式返回给前端,前端如何展示?

图片以base64形式在页面上展示出来在这里要说到Data URI scheme,它可以直接将一些小的数据直接嵌入到网页中,不需要再引入。支持格式如下data:, 文本数据data:text/plain, 文本数据data:text/html, HTML代码data:text/html;base64, base64编码的HTML代码…...

C++入门知识【超详解】

目录1.认识Chello worldC关键字2.命名空间3.std标准库4.输入输出5.缺省参数6.函数重载7.引用7.1引用的概念7.2引用的场景1.作参数2.作返回值7.3引用的注意点7.4指针和引用的区别8.auto关键字9.基于范围的for循环10.内联函数10.1概念10.2特征11. C98中的指针空值1.认识C hello …...

零基础、非计算机系学Python该如何上手?

首先我觉得要放平心态,不用过多去纠结是不是专业出身这回事。 想学那就认真去学,我们最终目标是掌握Python这门技能。 非计算机专业同时零基础,想自学Python该如何上手?分享我自学Python的几点建议吧。 1、重视基础 Python是一…...

关于 vue3 模板引用

文章目录前言1.访问模板引用2.v-for中的模板引用3.组件上的ref前言 如果我们需要直接访问组件中的底层DOM元素,可使用vue提供特殊的ref属性来访问 1.访问模板引用 在视图元素中采用ref属性来设置需要访问的DOM元素 a. 该ref属性可采用字符值的执行设置 b. 该ref属…...

Redis | 安装Redis和启动Redis服务

目录 一、Redis简介 1.1 简介 二、Redis安装 2.1 Windows安装Redis 2.2 Linux安装Redis 三、Redis服务启动和停止 3.1 Windows启动Redis服务 3.2 Linux启动Redis服务 四、Redis设置密码远程连接 4.1 为Redis登陆设置密码 4.2 设置Redis允许远程连接 五、Redis常…...

博客要考虑的最佳WordPress主题

有太多的选择会瘫痪你做决定的能力。有太多的WordPress主题,但仅仅只需要一个并且它是要合适的。我们建立了数十个 WordPress 博客并安装了数百个主题。根据我们所有的经验,我们发现Newspaper是大多数用户的最佳WordPress博客主题。这个自适应、强大的主…...

C 学习笔记 —— 函数指针

函数指针 上面的第二个char (* f) (int);写法就是函数指针的声明; 首先,什么是函数指针?假设有一个指向 int类型变量的指针,该指针储存着这个int类型变量储存在内存位置的地址。 同样,函数也有地址,因为函…...

FastDDS-3. DDS层

3. DDS层 eProsima Fast DDS公开了两个不同的API,以在不同级别与通信服务交互。主要API是数据分发服务(DDS)数据中心发布订阅(DCPS)平台独立模型(PIM)API,简称DDS DCPS PIM&#xf…...

9.2 IGMPv2

实验目的 (1) 熟悉IGMPv2的应用场景 (2) 掌握IGMPv2的配置方法 实验拓扑 实验拓扑如图9-17所示: 图9-17:IGMPv2 实验步骤 配置IP地址(请参考上一个实验)运行IGP&#xff…...

巨头混战,抢着“兜底”自动驾驶安全

诚然,中国汽车行业的发展绝对不会拘泥于电动化,必定会在电动化的基础上,迎接下半场的快速智能化。 2021年6月,长城汽车线控底盘全球首次发布。 彼时,长城汽车技术副总裁宋东先宣布,整合了线控转向、线控制…...

RightCapital 第一轮面试题

现在我们就马上开始吧! 答案在文末 JavaScript 是一门单线程的静态类型语言(单选题) 正确 错误 在 JavaScript 中下面哪种类型的值是不可变的(immutable)(单选题) Object Symbol Array Date …...

Python曲线肘部点检测-膝部点自动检测

文章目录一. 术语解释二. 拐点检测肘部法则是经常使用的法则。很多时候,可以凭人工经验去找最优拐点,但有时需要自动寻找拐点。最近解决了一下这个问题,希望对各位有用。一. 术语解释 **肘形曲线(elbow curve)**类似人胳膊状的曲线&#xff…...

FPG财盛国际:数字化能力升级的全面观察

FPG财盛国际:数字化能力升级的全面观察在评估金融服务平台时,监管合规、技术能力、客户服务等维度构成了重要的观察方向。FPG财盛国际作为业内较为活跃的服务机构,其在这些方面的实践具有一定的参考价值。本文将围绕评测视角,对其…...

激光器核心光路解析:单模与多模光纤的选型、耦合与系统设计实战

1. 光纤基础:从全反射到模式传输 第一次接触光纤时,我被那根比头发还细的玻璃丝能传光的现象震撼到了。后来才知道,这背后的核心原理是全内反射——当光从高折射率介质(纤芯)射向低折射率介质(包层&#xf…...

别再写死数据了!用QML的ListModel和ListElement动态构建你的UI列表(附WorkerScript多线程实战)

动态数据驱动的QML界面开发实战:从ListModel到多线程优化 在当今快速变化的应用场景中,静态UI已经无法满足用户对实时性和交互性的需求。作为一名QML开发者,你是否遇到过这样的困境:当后台数据频繁更新时,界面出现卡顿…...

开关电源选型保姆级指南:从LRS-200-24到NDR-480-24,手把手教你算功率、看效率、避高温降额

开关电源选型实战手册:从基础参数到工业场景避坑指南 工业电源选型的三大认知误区 第一次为自动化产线选配开关电源时,我犯了个典型错误——直接按照设备铭牌功率总和选择了LRS-200-24型号。结果设备联调当天,传送带电机频繁重启,…...

Bun 六天完成从 Zig 到 Rust 重写,AI 重写软件大趋势下速度与质量难题待解

Zig 版 Bun 被判“死刑”2026 年 5 月 11 日,Bun 创始人 Jarred Sumner 在 X 上发推文称,“Bun v1.3.14 将于明日发布。如果我们合并 Rust 重写版本,这将是 Zig 的最后一个版本”,宣告了 Zig 版 Bun 的终结。四年前,Bu…...

别再踩坑了!Ubuntu 20.04下用Docker一键编译OLLVM 4.0(附完整Dockerfile)

基于Docker的OLLVM 4.0高效编译指南:Ubuntu 20.04最佳实践 在移动安全与逆向工程领域,OLLVM作为代码混淆的黄金标准工具链,其环境搭建一直是开发者面临的痛点。传统源码编译方式需要处理复杂的依赖关系、版本冲突和系统污染风险,而…...

Dev-GPT部署指南:简单三步将你的微服务推向Jina云平台

Dev-GPT部署指南:简单三步将你的微服务推向Jina云平台 【免费下载链接】dev-gpt Your Virtual Development Team 项目地址: https://gitcode.com/gh_mirrors/de/dev-gpt Dev-GPT是一款强大的虚拟开发团队工具,能够帮助开发者快速构建和部署微服务…...

为什么GanttProject是你最应该尝试的免费项目管理神器

为什么GanttProject是你最应该尝试的免费项目管理神器 【免费下载链接】ganttproject Official GanttProject repository. 项目地址: https://gitcode.com/gh_mirrors/ga/ganttproject 在当今快节奏的项目管理环境中,你是否还在为高昂的软件费用和复杂的工具…...

【信息科学与工程学】计算机科学与自动化——第一百五十一篇 云计算操作系统函数说明02

威胁情报与狩猎模块(361-370) 编号 模块/组件类型 模块中的函数名称和函数的参数列表和函数的实现方式 函数的详细功能和计算机科学的所有性能【含参数列表】和功能说明 关联的其他函数【含上下文关系】 和对应模块【含上下文关系】 关联的软件/硬件核心知识点【需要涵…...

建议科技部与教育部聘请耿同学做学术打假工作

目前,学术界和社会公众正在热议的有一个核心话题:学术打假。“耿同学”(B站科普博主“耿同学讲故事”)近期在学术打假领域的表现确实堪称“降维打击”。作为一名退学博士,他仅凭个人力量和一些开源AI工具,在…...