这里写自定义目录标题

  • Buffon实验介绍
    • 实验步骤
    • 实验结果
    • 证明过程
  • 当Buffon遇上python神器
    • 代码
  • 感谢风哥的数模教学视频,真正的学以致用~弯腰致敬⁄(⁄ ⁄ ⁄ω⁄ ⁄ ⁄)⁄

Buffon实验介绍

法国数学家Buffon提出一个问题:设我们有一个以平行且等距木纹铺成的地板(如图),随意抛一支长度比木纹之间距离小的针,求针和其中一条木纹相交的概率。
经Buffon证明此概率与圆周率pi相关,因此Buffon提出的一种计算圆周率的方法——随机投针法。这就是蒲丰投针问题(又译“布丰投针问题”)。

实验步骤

  1. 取一张白纸,在上面画上许多条间距为a的平行线。
  2. 取一根长度为l(l≤a) 的针,随机地向画有平行直线的纸上掷n 次,观察针与直线相交的次数,记为m。
  3. 计算针与直线相交的概率。

实验结果

法国数学家布丰提出的“投针问题”,记载于布丰1777年出版的著作中:“在平面上画有一组间距为a的平行线,将一根长度为l(l≤a)的针任意掷在这个平面上,求此针与平行线中任一条相交的概率。”
布丰本人证明了,这个概率是:
P=2LπaP = \frac { 2 L } { \pi a }P=πa2L​
(其中π为圆周率)
由于它与π有关,于是人们想到利用投针试验来估计圆周率的值。

证明过程

当Buffon遇上python神器

知道可以通过实验来求出pi,我们就可以用计算机来代替人工手抛啦!
有了numpy生成随机数字,我们就可以解放双手,轻松模拟出上万次实验哇卡卡卡卡卡( ̄▽ ̄)

代码

由于是小白,所以还没习惯写注释,所以可读性有点差,希望各位看官见谅(。ì _ í。)

// # Created with Python AI
import numpy as npdef buffon(a,l,n):xl = np.pi*np.random.random(n)yl = 0.5*a*np.random.random(n)m = 0for x,y in zip(xl,yl):if y < 0.5*l*np.sin(x):m+=1result = 2*l/a*n/mprint(f'pi的估计值是{result}')buffon(2,1,100000)

感谢风哥的数模教学视频,真正的学以致用~弯腰致敬⁄(⁄ ⁄ ⁄ω⁄ ⁄ ⁄)⁄

ps 第一篇博客,希望大家指正~

蒙特卡洛之布丰投针(python实现)相关推荐

  1. 布丰投针试验的仿真和误差估计

    布丰投针试验 一.试验原理 1.试验步骤 2.理论概率及π\piπ的计算与误差 二.Python代码的实现 一.试验原理 1.试验步骤 ​ 1.选一个长度为lll的针.再选取一张白纸,上面划分许多平行 ...

  2. 布丰投针java实现,MATLAB模拟布丰投针实验

    MATLAB模拟布丰投针实验 标签(空格分隔): 算法 Buffon's Needle 桌面上有距离为a的若干平行线,将长度为L的针随机丢在桌面上,则这根针与平行线相交的概率是多少?假定L < ...

  3. MATLAB模拟布丰投针实验

    MATLAB模拟布丰投针实验 标签(空格分隔): 算法 Buffon's Needle 桌面上有距离为a的若干平行线,将长度为L的针随机丢在桌面上,则这根针与平行线相交的概率是多少?假定L < ...

  4. 蒲丰投针实验原理_布丰投针实验 MATLAB仿真 以及报告

    布丰投针实验原理.仿真过程以及 MATLAB仿真代码.完整的布丰投针实验报告. 以下内容无关: -------------------------------------------分割线------ ...

  5. R语言对布丰投针(蒲丰投针)实验进行模拟和动态可视化生成GIF动画

    最近我们被客户要求撰写关于动态可视化的研究报告,包括一些图形和统计输出. 介绍 布丰投针是几何概率领域中最古老的问题之一.它最早是在1777年提出的.它将针头掷到有平行线的纸上,并确定针和其中一条平行 ...

  6. 蒙特卡洛—模拟蒲丰投针

    蒲丰投针实验: 公式推导: 实现代码: # 其实这里根据已知的pi然后计算出概率算出自己的pi import numpy as np import matplotlib.pyplot as plt i ...

  7. 树的结点数+蒲丰投针概率

    1.已知一棵度为k的树中有n1个度为1的结点,n2个度为2的结点,-,nk个度为k的结点,问该树中有多少个叶子结点? 设该树中的叶子数为n0个.该树中的总结点数为n个,则有: n=n0+n1+n2+- ...

  8. 强化学习 蒲丰投针实验 蒙特卡洛算法

    目录 一.蒲丰投针实验 1.1背景故事 1.2原理介绍 二.蒙特卡洛方法 2.1方法介绍 2.2经验轨迹 2.3在线学习与离线学习 2.4数学原理 一.蒲丰投针实验 1.1背景故事 1777年,蒲丰请 ...

  9. 蒲丰投针与蒙特卡洛模拟

    昨天突然看到了蒲丰投针实验,于是想看看到底是怎么推导出来的,baidu上搜索了一下,发现就这篇文章写的比较好,而且也简单的讲解了一下蒙特卡洛方法,在此推荐之! 蒲丰投针与蒙特卡洛模拟.pdf 转载于: ...

  10. 蒲丰投针计算机模拟ppt,蒲丰投针实验模课件.doc

    概率论与数理统计实验 蒲丰投针与蒙特卡罗法 班级 应数12级01班 学号 2012444086 姓名 张旭东 蒲丰投针与蒙特卡罗法 张旭东 2012444086 (重庆科技学院 数学与应用数学 ,重庆 ...

最新文章

  1. Cable:360实现的新虚拟网络架构
  2. scp和rsync的区别和常用参数
  3. UI常见测试用例-51testing
  4. Java数据类型和标识符
  5. C++模板中关键字typename与class的区别
  6. python 代码行数统计工具_Python实现代码行数统计工具
  7. 【语音分离】基于matlab FastICA语音信号采集+混合+分离【含Matlab源码 008期】
  8. 【C++】STL-函数对象(仿函数)
  9. 对企业形象识别系统(CIS)的了解
  10. Android支付宝财富界面,10分钟带你看懂支付宝的交互设计(二)
  11. 使用清华源、百度源等快速pip install xxx 安装Python库
  12. python 安装环境时出现报错:CondaVerificationError: The package for tk located at /home/anaconda3/pkgs/t
  13. 使用Laravel提交POST请求出现The page has expired due to inactivity错误
  14. PyQt5学习笔记——一文详解QObject
  15. unity讲解(入门)
  16. 揭秘!用标准Go语言能写脚本吗?
  17. c语言计算n+nn+nnn+nnnn......---@颜麓
  18. 国家计算机职业技能鉴定4级考试内容大全
  19. 放置图片拼接结果的图像大小设置方法
  20. 堆和栈访问效率哪个更高

热门文章

  1. STM32L0外接32768HZ晶振应该接多大的负载电容才合适
  2. “非著名相声演员”郭德纲【ZZ】
  3. 2010年8月刊:精选热门微博
  4. 【Scheme归纳】1 使用Edwin
  5. Cocos2d-x教程(33)-三维物体AABB碰撞检测算法
  6. Arduino uno读取mpu6050模块角度以及温度值
  7. 控制面板打开后立即自动关闭
  8. java版如何使区块常加载,我的世界如何设置加载区块 | 手游网游页游攻略大全...
  9. 直下式LED背光源和侧入式LED背光源的区别以及哪个好呢
  10. 线性代数【18】点积和对偶性