数学理论—— 蒙特卡洛近似
生活随笔
收集整理的這篇文章主要介紹了
数学理论—— 蒙特卡洛近似
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
數(shù)學(xué)理論—— 蒙特卡洛近似
- 1. 圓周率估算
- 1.1 理論
- 1.2 代碼實(shí)現(xiàn)
- 2. 近似積分
- 2.1 一元積分(univariate)
- 2.2 多元積分(multivariate)
- 3 期望估計(jì)(Estimate of Expection)
1. 圓周率估算
1.1 理論
- 邊長(zhǎng)為2的正方形的橫坐標(biāo)范圍為[-1,1],縱坐標(biāo)為[-1,1]。
- 數(shù)據(jù)點(diǎn)(x,y)的橫坐標(biāo)從[-1,1]中均勻抽樣得到,縱坐標(biāo)從[-1,1]中均勻抽樣得到,則數(shù)據(jù)點(diǎn)落在圓內(nèi)的概率為:p=A2A1=π4p=\frac{A_2}{A_1}=\frac{\pi}{4}p=A1?A2??=4π?
- 計(jì)算誤差為:o(1n)o(\frac{1}{\sqrt{n}})o(n?1?)
則計(jì)算圓周率的流程為:
1.2 代碼實(shí)現(xiàn)
import random n = 10000000 m = 0 for i in range(n):x = random.uniform(-1,1)y = random.uniform(-1,1)if x**2 + y**2 <= 1:m += 1 print(4*m/n) 3.14156562. 近似積分
2.1 一元積分(univariate)
- 計(jì)算如下積分:I=∫abf(x)dxI=\int_a^b{f(x)}d_xI=∫ab?f(x)dx?
代碼為:
結(jié)果為:
0.66660735030232252.2 多元積分(multivariate)
求取積分:I=∫Ωf(X)dXI=\int_{\Omega}f(X)d_XI=∫Ω?f(X)dX?
求取下式積分:f(x,y)={1,x2+y2≤10,otherwiseΩ=[?1,1]?[?1,1]I=∫Ωf(x,y)dxdyf(x,y)=\left\{ \begin{aligned} 1&, x^2+y^2≤1 \\ 0&,otherwise \end{aligned} \right.\\ \Omega=[-1,1]\cdot[-1,1]\\I=\int_{\Omega}f(x,y)d_xd_yf(x,y)={10?,x2+y2≤1,otherwise?Ω=[?1,1]?[?1,1]I=∫Ω?f(x,y)dx?dy?
代碼為:
3 期望估計(jì)(Estimate of Expection)
- X為d維隨機(jī)變量
- P(X)為X的概率密度函數(shù):P(X)←probabilitydensityfunctionP(X)\gets probability\quad density\quad functionP(X)←probabilitydensityfunction
- ∫RP(X)dX=1\int_RP(X)d_X=1∫R?P(X)dX?=1
計(jì)算f(X)的期望:
代碼為:
n = 10000000 sum_num = 0 for i in range(n):x = random.normalvariate(2,1)sum_num += x print(sum_num/n) 2.000336379227587本文部分內(nèi)容為參考此視頻。
by CyrusMay 2022 04 04
生命是華麗錯(cuò)覺
時(shí)間是賊偷走一切
————五月天(如煙)————
總結(jié)
以上是生活随笔為你收集整理的数学理论—— 蒙特卡洛近似的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数据挖掘 —— 半监督学习(标签传播算法
- 下一篇: 数据挖掘 —— 模型评估