深度强化学习_蒙特卡洛算法 王树森课程笔记

💡 随机算法,通过随机样本估算真实值。

一、 Calculate π \pi π

用蒙特卡洛近似估算出 π \pi π的值

在这里插入图片描述

  • 随机生成平面坐标系中的点 ( x , y ) ,   x ∈ [ − 1 , 1 ] ,   y ∈ [ − 1 , 1 ] (x,y),\space x\in[-1,1],\space y\in[-1,1] (x,y), x[1,1], y[1,1] x ,   y x,\space y x, y [ − 1 , 1 ] [-1,1] [1,1]之间的均匀分布,所有的点都有相同的概率密度;
  • 正方形内切圆半径为1,随机样本落在圆内的概率=圆的面积/正方形的面积: P = π 4 P=\frac{\pi}{4} P=4π
  • 从正方形区域均匀随机抽样 n {\color{d44d37}n} n个点,在圆内的点的数量期望为 P n = π n 4 P{\color{d44d37}n}=\frac{\pi{\color{d44d37}n}}{4} Pn=4πn;
    • 已知坐标 ( x , y ) (x,y) (x,y)判断是否在圆内:若 x 2 + y 2 ≤ 1 x^2+y^2\le1 x2+y21则在圆内。
  • 均匀随机抽样后有 m {\color{d44d37}m} m个点在圆内,若 n {\color{d44d37}n} n非常大,则真实观测值 m ≈ π n 4 {\color{d44d37}m}\approx\frac{\pi{\color{d44d37}n}}{4} m4πn
  • 即得到 π ≈ 4 m n \pi\approx\frac{4{\color{d44d37}m}}{{\color{d44d37}n}} πn4m
  • 大数定律保证蒙特卡洛的正确性: 4 m n → π ,  as  n → ∞ \frac{4{\color{d44d37}m}}{{\color{d44d37}n}}\rightarrow\pi,\space \text{as}\space {\color{d44d37}n}\rightarrow\infty n4mπ, as n

结论】:从如图正方形中均匀抽样 n {\color{d44d37}n} n个点,观测到 m {\color{d44d37}m} m个点落在内切圆中,可近似得到 π ≈ 4 m n \pi\approx\frac{4{\color{d44d37}m}}{{\color{d44d37}n}} πn4m

二、 Buffon’s Needle Problem

近似估算 π \pi π

  • 在纸上画几条距离为 d {\color{337ea9}d} d的平行线;
  • 准备一些长度为 l {\color{337ea9}l} l的针;
  • 随机将针抛到纸上,针可能与平行线相交也可能不相交;
  • 假设针的位置和角度都是均匀随机的,通过微积分算出相交的概率 P = 2 l π d P=\frac{2{\color{337ea9}l}}{\pi{\color{337ea9}d}} P=πd2l
  • 随机往纸上扔 n {\color{d44d37}n} n根针,与平行线相交的针的数量期望为 P n = 2 l n π d P{\color{d44d37}n}=\frac{2{\color{337ea9}l}{\color{d44d37}n}}{\pi{\color{337ea9}d}} Pn=πd2ln
  • 真实观测到有 m {\color{d44d37}m} m根针与平行线相交,若 n {\color{d44d37}n} n非常大,则真实观测值 m ≈ 2 l n π d {\color{d44d37}m}\approx\frac{2{\color{337ea9}l}{\color{d44d37}n}}{\pi{\color{337ea9}d}} mπd2ln
  • 即得到 π ≈ 2 l n m d \pi\approx\frac{2{\color{337ea9}l}{\color{d44d37}n}}{{\color{d44d37}m}{\color{337ea9}d}} πmd2ln

三、估算阴影面积

在这里插入图片描述

  • 对如图正方形区域内做均匀随机抽样得到多个点,判断点是否在阴影部分需满足两个条件;
    • 在圆内: ( x − 1 ) 2 + ( y − 1 ) 2 ≤ 1 (x-1)^2+(y-1)^2\le1 (x1)2+(y1)21
    • 不在扇形内: x 2 + y 2 ≥ 4 x^2+y^2\ge4 x2+y24
  • 假设阴影部分面积为 A A A,随机抽样的点落在阴影部分的概率为 P = A 4 P=\frac{A}{4} P=4A
  • 均匀随机抽样 n {\color{d44d37}n} n个点,点落在阴影部分的期望为 P n = A n 4 P{\color{d44d37}n}=\frac{A{\color{d44d37}n}}{4} Pn=4An
  • 真实观测到有 m {\color{d44d37}m} m个点落在阴影部分,若 n {\color{d44d37}n} n非常大,则真实观测值 m ≈ A n 4 {\color{d44d37}m}\approx\frac{A{\color{d44d37}n}}{4} m4An
  • 即得到 A ≈ 4 m n A\approx\frac{4{\color{d44d37}m}}{{\color{d44d37}n}} An4m

四、 近似积分

1. 用蒙特卡洛求一元函数定积分

Task:求 I = ∫ b a f ( x ) d x I=\int^a_bf(x)dx I=baf(x)dx

  • 首先做随机均匀抽样:从 [ a , b ] [a,b] [a,b]中抽取 n n n个样本 x 1 , … , x n x_1,\dots,x_n x1,,xn
  • 计算 Q n = ( b − a ) ⋅ 1 n ∑ i = 1 n f ( x i ) Q_n=(b-a)\cdot\frac{1}{n}\sum^n_{i=1}f(x_i) Qn=(ba)n1i=1nf(xi)
  • Q n Q_n Qn即为积分 I = ∫ b a f ( x ) d x I=\int^a_bf(x)dx I=baf(x)dx的近似值;
  • 大数定律保证蒙特卡洛的正确性: Q n → I ,  as  n → ∞ Q_n\rightarrow I,\space \text{as}\space n\rightarrow\infty QnI, as n

2. 用蒙特卡洛求多元函数积分

Task:给出多元函数 f ( x ) f(\bold x) f(x),其中向量 x ∈ R d \bold x\in\Bbb R^d xRd,求函数在集合 Ω \Omega Ω Ω ⊂ R d \Omega \subset \Bbb R^d ΩRd)上的定积分: I = ∫ Ω f ( x ) d x I=\int _\Omega f(\bold x)d\bold x I=Ωf(x)dx

  • 随机抽样:从集合 Ω \Omega Ω中均匀抽取 n n n个样本,记作 x 1 , … , x n \bold x_1,\dots,\bold x_n x1,,xn
  • 计算集合 Ω \Omega Ω的体积: V = ∫ Ω d x V=\int_\Omega d\bold x V=Ωdx
    • 求体积 V V V也需要定积分,有可能与原问题同样困难,因此需要让集合 Ω \Omega Ω是简单的形状(长方体、球体等),用公式直接计算出体积,避免积分运算。
  • 计算 Q n = V ⋅ 1 n ∑ i = 1 n f ( x i ) Q_n=V\cdot\frac{1}{n}\sum^n_{i=1}f(\bold x_i) Qn=Vn1i=1nf(xi)
  • Q n Q_n Qn即为积分 I = ∫ Ω f ( x ) d x I=\int _\Omega f(\bold x)d\bold x I=Ωf(x)dx的近似估计。

五、 近似期望

  • 定义 X {\color{d44d37}X} X d d d维随机变量;
  • 定义 p ( x ) {\color{orange}p(\bold x)} p(x)为概率密度函数;
    • 性质: ∫ R d p ( x ) d x = 1 \int_{\Bbb R^d}{\color{orange}p(\bold x)}d\bold x=1 Rdp(x)dx=1(连续分布)。
  • 函数 f ( x ) f(\bold x) f(x)的期望: E X ∼ p [ f ( X ) ] = ∫ R d f ( x ) ⋅ p ( x ) d x \Bbb E_{{\color{d44d37}X}\sim{\color{orange}p}}[f({\color{d44d37}X})]=\int_{\Bbb R^d}f(x)\cdot{\color{orange}p(\bold x)}d\bold x EXp[f(X)]=Rdf(x)p(x)dx
  • 首先随机抽样:(注意此处不是均匀抽样)根据概率密度函数 p ( x ) {\color{orange}p(\bold x)} p(x)随机抽取 n n n个样本,记作 x 1 , … , x n \bold x_1,\dots,\bold x_n x1,,xn
  • 计算 Q n = 1 n ∑ i = 1 n f ( x i ) Q_n=\frac{1}{n}\sum^n_{i=1}f(\bold x_i) Qn=n1i=1nf(xi)
  • Q n Q_n Qn即为对期望 E X ∼ p [ f ( X ) ] \Bbb E_{{\color{d44d37}X}\sim{\color{orange}p}}[f({\color{d44d37}X})] EXp[f(X)]的估计。(样本数量 n n n越大,蒙特卡洛估计越准确)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值