再学概率论

编程入门 行业动态 更新时间:2024-10-11 11:20:10

再学<a href=https://www.elefans.com/category/jswz/34/1765171.html style=概率论"/>

再学概率论

对于喜欢看片的人来说,拉斯维加斯是再熟悉不过了,这座以赌城闻名的城市几乎出现在很多的赌类电影中,而蒙特卡罗也是一个赌城。这里之所以和算法相关联,主要在于概率论最早的使用领地就是赌场之中,而蒙特卡罗算法和拉斯维加斯算法就是其中两种算法的核心原理。

  • 蒙特卡罗

为了更加形象的说明两个算法的原理,我们先举一个例子,以防迷失在过多的公式之中。
蒙特卡罗:假如你是一个赌徒,你经常去玩转轮盘游戏,轮盘有0-9是个数字,但是由于使用机械轮盘,很显然,这里的0-9数字并不是均匀的,因而,随着时间的流逝,你开始发现轮盘的结果经常停留在2.8.5这三个点,而0.7.4基本上很少出现。因此,之后的你不在随机选择下注,而时大量下注2.8.5。最后,由于你的这个发现,你开始大量的赢钱,最后你被发现了,进而被赶出了赌场。
这里的赌徒正是使用了蒙特卡洛算法,这种算法原理类似于大数定理,它通过不断地随机行为,从而发现系统的内在规律。就像是计算π值一样,通过不断地随机化正方形的值,计算落在圆中的数目,就能近似求助π的精确值,只要次数足够多,就能无限接近。

蒙特卡罗卡罗在不同的场景中有不同的使用,它主要的作用就是使用计算机来对事物状态随机进行模拟,从而找到事物的分布情况。特别是在概率论中,对于很多问题,我们需要直到其中的概率分布,比如一天交通流量情况、河里鱼群的分布等,由于这里的数据可能很大,我们不可能实际调查,但是由于计算机的存在,如果我们知道了用户位置信息或者车辆信息等等辅助信息,我们就可以通过计算机随机模拟,从而找到其中的分布状态,大大节省人力(举个例子,实际情况可能并非如此)

  • 拉斯维加斯

拉斯维加斯算法也是一个随机算法,与蒙特卡罗不同的是,它并不是尽量接近于真实值,而是每次都返回true或者false,一个比较好的例子,就是在100把钥匙中找钥匙,在没有找到钥匙之前,每次的结果都是false。

使用场景,随机快速排序算法:
快速排序有一种优化算法,即如果数字一开始就是倒置的,由于初始参照点的选取在第一个,反而加大了运算复杂度,因而,后来提出了一种随机快速排序算法,即参照点从中间选取,这样,就不会出现增大的情况,但是这种也只能适用于特殊情况。

快速排序算法:它随机选取一个pivot,然后将元素分成三组:所有小于pivot的元素、所有等于pivot的元素以及所有大于pivot的元素。


随机快速排序方法往往消耗大量资源,但保证了确切的答案。因此,在具有少量潜在答案的情景中,倾向于推荐拉斯维加斯方法。

总结:

  • 蒙特卡罗算法:采样越多,越接近最优解;(强调每一个iteration都在进步,提高的过程)
  • 拉斯维加斯算法:采样越多,越有可能找到最优解,但不保证找到;(强调直接想要最优解)

参考:

.html

更多推荐

再学概率论

本文发布于:2024-03-14 02:04:55,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1735385.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:概率论

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!