找回密码
 立即注册
搜索
查看: 1412|回复: 17

[生活] 0到1之间取随机数开根号,跟取两个随机数再取大是同样效果.

[复制链接]
     
发表于 2024-9-20 11:22 | 显示全部楼层 |阅读模式
本帖最后由 oyss 于 2024-9-20 11:37 编辑

https://www.youtube.com/watch?v=ga9Qk38FaHM&t=642s


前几天从别人那看来的,
问chatgpt也是这个结果.

Density function of the square root of a random number uniformly distributed from 0 to 1

Density function of the max number of two random number uniformly distributed from 0 to 1

我微积分都忘干净了.
无法分辨chatgpt说的对不对.


不过光看这个视频的解释也不是不能明白.就这一张图就够.











本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

     
发表于 2024-9-20 11:25 | 显示全部楼层
啥叫“同样效果”
回复

使用道具 举报

     
发表于 2024-9-20 11:32 | 显示全部楼层
怎么定义同样效果?
回复

使用道具 举报

     
发表于 2024-9-20 11:33 来自手机 | 显示全部楼层
同样的概率密度函数吧

评分

参与人数 2战斗力 +2 收起 理由
FeteFrumoase + 1
nexus1 + 1

查看全部评分

回复

使用道具 举报

     
发表于 2024-9-20 11:36 | 显示全部楼层
wuuuuuud 发表于 2024-9-20 11:33
同样的概率密度函数吧

应该求一下概率密度就知道

实在不行蒙特卡罗遍历
回复

使用道具 举报

发表于 2024-9-20 11:38 | 显示全部楼层
从截图中来看命题应该是:对于0<R<1,在0到1中任取两个随机数取大后小于R的概率,和在0到1取随机数开方后小于R的概率,两个概率相等

评分

参与人数 1战斗力 +1 收起 理由
菜鸟的菜 + 1 虽然不懂概率,但觉得你说的对!.

查看全部评分

回复

使用道具 举报

     
发表于 2024-9-20 11:40 | 显示全部楼层
本帖最后由 cfeng123 于 2024-9-20 11:42 编辑

import random
import math

result = 0

for _ in range(100000):
    case1 = math.sqrt(random.random())
    case2 = max(random.random(), random.random())
    resultcase = abs(case2 - case1)
    result = result + resultcase

print(result)

结果是
26697.46038417496 单看个例,差异还是非常大的 ,平均每个个例的差异都在0.267左右

如果

import random
import math

result = 0

for _ in range(100000):
    case1 = math.sqrt(random.random())
    case2 = max(random.random(), random.random())
    resultcase = case2 - case1
    result = result + resultcase

print(result)

看分布
42.00332817784781

期望上只有万分之4的差异

如果是大量随机,的确可以通用,如果是少量随机,两者差异很大
回复

使用道具 举报

发表于 2024-9-20 11:46 | 显示全部楼层
本帖最后由 NaCN 于 2024-9-20 11:52 编辑
NaCN 发表于 2024-9-20 11:38
从截图中来看命题应该是:对于0

对于第一个概率,截图中落于绿色范围的点符合,概率等于R^2;对于第二个概率,取随机数y小于R的概率是R,令y等于根号x,也就是根号x小于R的概率是R,于是x小于R^2的概率是R^2
感觉第一个概率应该取小才对
回复

使用道具 举报

     
发表于 2024-9-20 11:46 来自手机 | 显示全部楼层
本帖最后由 马猴肥宅 于 2024-9-20 11:48 编辑

那取两个随机数再取小的效果也一样吗?只学过高数c,分析不能


看了楼上明白了
回复

使用道具 举报

     
发表于 2024-9-20 11:47 来自手机 | 显示全部楼层
cfeng123 发表于 2024-9-20 11:40
import random
import math

天才,看来random.random()和random.random()少量差距也很大咯
回复

使用道具 举报

     
发表于 2024-9-20 11:51 来自手机 | 显示全部楼层
cfeng123 发表于 2024-9-20 11:40
import random
import math

两个独立随机变量做差看区别是吧
回复

使用道具 举报

     
发表于 2024-9-20 11:51 | 显示全部楼层
cfeng123 发表于 2024-9-20 11:40
import random
import math

这不行吧,还是建议算概率密度
回复

使用道具 举报

发表于 2024-9-20 11:52 来自手机 | 显示全部楼层
Proof:Checked by C++.

开个玩笑,其实也很容易理解。概率论推倒一下就知道累积分布函数都是x平方,应该没算错吧。
回复

使用道具 举报

     
发表于 2024-9-20 11:52 | 显示全部楼层
马猴肥宅 发表于 2024-9-20 11:46
那取两个随机数再取小的效果也一样吗?只学过高数c,分析不能

肯定不行,大于0小于1的数开方肯定变大

如果想随机数取小,不能开方得乘方,几次方就不好说了

评分

参与人数 1战斗力 +1 收起 理由
马猴肥宅 + 1

查看全部评分

回复

使用道具 举报

     
发表于 2024-9-20 11:52 | 显示全部楼层
Pr[max(x,y)<z]=Pr[x<z and y<z]=Pr[x<z]Pr[y<z]=Pr[x<z]^2

评分

参与人数 3战斗力 +3 收起 理由
天接云涛连晓雾 + 1 好评加鹅
nexus1 + 1
yeo + 1 好证明

查看全部评分

回复

使用道具 举报

     
发表于 2024-9-20 11:55 | 显示全部楼层
马猴肥宅 发表于 2024-9-20 11:46
那取两个随机数再取小的效果也一样吗?只学过高数c,分析不能

如果是min(x,y)>R,那就是sqrt(x)<1-R
如果是min(x,y)<R,那就是x<R(2-R)

评分

参与人数 1战斗力 +1 收起 理由
马猴肥宅 + 1

查看全部评分

回复

使用道具 举报

     
发表于 2024-9-20 11:58 | 显示全部楼层
本帖最后由 cfeng123 于 2024-9-20 12:04 编辑

拉了一下分布表,发现两个数据在概率分布上的确是趋同的

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

     
发表于 2024-9-20 12:07 | 显示全部楼层
插个眼,这种平易近人的题目的程序模拟怎么能用python呢,应该用人人都有的powershell,有空搓一个

论坛助手,iPhone
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2024-9-21 11:18 , Processed in 0.167003 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表