如何通过Python实现蒙特卡罗模拟算法

您所在的位置:网站首页 python蒙特卡洛模拟代码 如何通过Python实现蒙特卡罗模拟算法

如何通过Python实现蒙特卡罗模拟算法

2024-07-16 10:42:17| 来源: 网络整理| 查看: 265

本文主要介绍蒙特卡罗模拟算法,以及如何通过Python来模拟问题。

文章目录 什么是蒙特卡罗(Monte Carlo)方法?案例1: π \pi π的计算如何使用蒙特卡罗方法计算圆周率 π \pi π ?Python模拟计算 案例2: 定积分的计算问题描述Python模拟计算 案例3: 排队上厕所问题问题描述Python模拟 小结

什么是蒙特卡罗(Monte Carlo)方法?

蒙特卡罗(Monte Carlo)方法,又称随机抽样或统计试验方法,是通过使用随机数(或更常见的伪随机数)来解决很多计算问题的方法,将所求解的问题同一定的概率模型相联系,用计算机实现统计模拟或抽样,以获得问题的近似解。

蒙特卡罗解题归结为三个主要步骤:

构造或描述概率过程;实现从已知概率分布抽样;建立各种估计量。

接下来我们介绍3个简单的案例,看一下如何在实际问题中应用这3个步骤进行求解。

案例1: π \pi π的计算 如何使用蒙特卡罗方法计算圆周率 π \pi π ?

正方形内部有一个相切的圆,假设圆形的半径为 r r r,那么正方形的边长则为 2 r 2r 2r,因此,圆形和正方形的面积之比为:

π r 2 4 r 2 = π 4 \frac{\pi r^2}{4r^2} = \frac{\pi}{4} 4r2πr2​=4π​

现在,在正方形内部,随机产生一系列的点,计算他们与中心点的距离,从而判断是否落在圆的内部,从而:

落 在 圆 内 部 点 数 总 点 数 = π 4 \frac{落在圆内部点数}{总点数} = \frac{\pi}{4} 总点数落在圆内部点数​=4π​

即可估算出圆周率 π \pi π的大小。

Python模拟计算

Step1 构造或描述概率过程

import numpy as np import pandas as pd import matplotlib.pyplot as plt from matplotlib.patches import Circle r = 1 # 半径 a, b = (0.0, 0.0) # 圆心 # 正方形边界 xmin, xmax = a-1, a+1 ymin, ymax = b-1, b+1

Step2 实现从已知概率分布抽样

由于每个点落入不同位置的概率是一致的,所以我们使用均匀分布进行抽样。

# 随机抽取n个点 n = 10000 # 在正方形范围内,随机抽取n个点 x = np.random.uniform(xmin, xmax, n) y = np.random.uniform(ymin, ymax, n)

Step3 建立各种估计量

# 计算每个点到圆心的距离 d = np.sqrt((x - a) ** 2 + (y - b) ** 2) # 圆内点的个数 res = sum(np.where(d


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭