-
应用随机过程概率模型导论 第11版
2018-05-02 17:54:18应用随机过程概率模型导论 第11版 应用随机过程概率模型导论 第11版 应用随机过程概率模型导论 第11版 -
概率之结构化概率模型
2019-07-26 11:21:36结构化概率模型(structured probabilistic model)也称为图模型(graphical model),是指使用图论中的“图”的概念来描述概率分布的分解。有两种主要的图模型:有向图和无向图。 两种图模型都使用图,其中图的每个节点...结构化概率模型(structured probabilistic model)也称为图模型(graphical model),是指使用图论中的“图”的概念来描述概率分布的分解。有两种主要的图模型:有向图和无向图。
两种图模型都使用图
,其中图的每个节点都对应着一个随机变量,连接两个随机变量的边意味着概率分布可以表示成这两个随机变量之间的直接作用。
有向(directed)模型使用带有有向边的图,它们用条件概率分布来表示分解。特别地,有向模型对于分布中的每一个随机变量
都包含着一个影响因子,这个组成
条件概率的影响因子被称为
的父节点,记为
。
无向(undirected)模型使用带有无向边的图,它们将分解表示成一组函数:不像有向模型那样,这些函数通常不是任何类型的概率分布。
中任何满足两两之间有边连接的顶点的集合被称为团。无向模型中的每个团
都伴随着一个因子
。这些因子仅仅是函数并不是概率分布。每个因子的输出都必须是非负的,但是并没有像概率分布中那样要求因子的和或者积分为1。定义一个归一化常数Z(Z被定义为
函数乘积的所有状态的求和或积分)。
-
游戏抽卡概率模型
2020-11-22 13:36:29游戏抽卡概率模型 目前的中国游戏市场,最热门的莫过于免费抽卡手游。游戏厂商为了盈利,设计出有不同规则的卡池,让玩家抽卡获取稀有的人物和武器。这一机制吸引了很多玩家,首先因为手游是免费的,入手门槛较低,...目前的中国游戏市场,最热门的莫过于免费抽卡手游。游戏厂商为了盈利,设计出有不同规则的卡池,让玩家抽卡获取稀有的人物和武器。这一机制吸引了很多玩家,首先因为手游是免费的,入手门槛较低,其次很多人喜欢抽卡获取角色和武器的成就感。为了更吸引玩家,游戏策划就得设计出能够让大部分玩家,无论是欧皇还是非酋满意的抽卡机制。本文将简要分析目前游戏厂商可能使用的抽卡机制(仅属于个人猜想加一些网上的资料)。
抽卡机制的大致分类
- 最简单的抽卡模型就是每次抽卡的概率都是固定的,也就是说每次抽卡的概率都是,我们可以称之为纯随机。那么玩家第次抽中的随机变量分布就是一个几何分布。这种抽卡模型很明显对于非酋非常不友好,理论上可能存在抽了很多很多次仍然没有抽中的人存在。所以纯随机模型在抽卡游戏中是不会使用的。
- 对应于纯随机的,我们可以称之为伪随机(注意这里的伪随机和计算机随机数概念中的伪随机不是一个东西)。伪随机就是说每次抽卡的概率都是是会进行改变的。下面就重点介绍几种可能的伪随机模型
伪随机模型
-
十连保底
十连保底应该是我们在游戏中最常见到的概率模型。如果连抽十次,前九次都没有抽中的话,那么第十次就必定会抽中。这种概率模型会导致很多玩家都是依靠十连保底,并且概率质量函数图像会在第十次突然上升,显得不均匀。
例如,如果我们设定抽到A卡的概率为0.1,那么我们得出的该概率质量函数和累积分布函数的图像就是下图。可以算出数学期望为6.5,并且大约60%的玩家在前9次抽到,而所谓的非酋也就是触发保底的玩家占到了40%。
如果我们用程序模拟10000次在这种概率模型下的抽卡,我们可以得出下面的分布。从图中可以看出,大部分玩家抽100次会得到16-20个想要得到的。
这种十连保底的模型一般用于四星角色或者武器。四星虽然没有五星稀有,但是也是需要一定的保障以确保玩家甚至连四星都抽不到。
-
概率增加模型
那么对于更加稀有的五星角色和武器来说,十连保底肯定就显得太过容易了。这个时候策划一般希望玩家差不多抽几十发可以抽中一个,所以就需要比如100抽保底这样的机制。但是如果这个时候继续采用以上的前面的概率都不变,那么很容易想到这样子的话大部分玩家都会是100发保底…所以就需要调整该概率。
首先,我们设定一个初始概率,然后如果没有抽中,那么下一次抽卡概率就给他一个增量,如果抽中,那么就回归初始概率。所以,第X次抽中的概率就是,概率质量函数
我们设定,然后画出图像之后发现,这个图像居然很像是一个正态分布的图像,所以顺便把正态分布的图像画了出来对比,虽然也不知道为什么这两张图这么像。
在这个概率模型下,由于100次的时候,所以实现了一个100抽保底的效果。但是策划希望的是100抽保底,并且大部分人应该是在五六十抽的时候抽到的,而在这个模型中,超过90%的人在前二十抽就抽到了,这显然不符合预期。所以在这个模型的基础上,我们需要进行相应的调整,让模型的最高点向右偏移。我们由此可以使用一下模型:前50次抽卡概率固定,后50次抽卡使用上面的模型,每次抽卡概率增加。这样我们得出的该概率质量函数就是
和上面一样,如果需要满足100抽保底的话,让。其概率质量函数和累积分布函数图像如下:
这张图我认为说可以用作五星的概率模型了。70发之前大部分人都能够抽到,并且集中在40发到70发,占了43.69%。这也可以视作游戏玩家口中的“低保”。我们使用上面的模型模拟10000次100连抽,得到的结果如下:
这个结果个人认为就非常像真实游戏中的结果了,大部分人都只能够抽到1-2发,并且很多人都是依靠低保的(这很真实)
最后还写了一个模拟原神中抽卡的程序,并没有使用概率增加,仅仅只是用保底的跳跃性的概率变化来实现保底的功能,以后可能在优化一下。这是一次100抽的结果
四星角色三次触发十连保底,五星角色一次在43抽抽中,一次在47次抽中,一共抽到了2个五星,9个四星。感觉这个概率貌似比真实中更高一些,以后再优化优化…参考资料
源代码
-
游戏抽奖概率模型
2019-04-02 23:34:35本文主要想罗列出游戏中常见的一些抽奖概率模型,并对其做简要的分析和讨论。 游戏的设计经常会有一些含有随机性质的抽奖设计。比如说卡牌抽奖、购买随机物品等等。它们都可以分为下面这两大类: 1、纯随机概率...本文主要想罗列出游戏中常见的一些抽奖概率模型,并对其做简要的分析和讨论。
游戏的设计经常会有一些含有随机性质的抽奖设计。比如说卡牌抽奖、购买随机物品等等。它们都可以分为下面这两大类:
1、纯随机概率计算:
纯随机是指:随机结果不受外界影响并且随机的值一直没有变化。比如说大多数购买随机物品的情况。随机物品商店里面获得各种商品的几率都是一样的,不会因为你多次购买不中哪一件商品就会将那间商品的获得概率变大。
2、伪随机概率计算:
伪随机是指:玩家的相关操作或其操作结果会对之后的随机结果造成影响。比如说10 连抽保底的概率模型。
关于纯随机的例子就不多举了,下面说一下我遇到的一些比较典型的伪随机概率模型。
1、10 连抽保底概率模型。
这个模型看《10 连抽保底的概率模型》这篇文章
2、全服根据抽奖人数固定比例数量奖品概率模型1。
假设某件物品A是100个人才能有1个人拥有,并且这个比例必须要得到保证。使用的方法:后端记录总抽奖人数,玩家一抽奖就马上计算出服务器此时总的抽奖次数,如果算上他这次的抽奖,抽奖次数恰好可以被101整除,那么他就是抽中。对于大并发的解决方案就是——中奖、领奖流程与抢数流程分离。用户线程抢数(AtomicInteger),自己判断是否中奖。
3、抽奖不中概率逐渐加大模型。
和模型1(10 连抽保底的概率模型)不一样,这不单单是一个保底的方案。比如说有一类稀有物品:A类物品、普通类型物品:B类物品。保证每抽5次必须是有且仅有1次中A类物品,第1、2、3、4、5次抽中A类概率分别为10%、30%、50%、70%、100%,并且5次之内只要中了A类物品,这五次内后面的几次再中A类物品概率为0。每五次进行一个新的轮回。
4、保证稀有物品最后抽到模型。
如上图所示,玩家只能进行8次抽奖。奖品分为 普通类:普通符文礼盒、金装类:金装符文礼盒、稀有类:圣龙/奥丁英雄。为提高玩家的付费率,策划设计了一种伪随机抽奖方式:
- 稀有类两种奖品会安排到最后才会被抽取(其中必定有一个是最后一次抽到,另外一个则可能是第6次或第7次)。
- 金装符文礼包在前四次抽到的几率权重为普通符文礼盒的十分一。
- 8次抽奖所得组成必须是——4个普通符文礼盒、2个金装符文礼盒、2个稀有类英雄。
下表表示:抽奖次数与所得奖品的权重关系(如果玩家该类奖品已达上限,则权重将改为0)
相关概率模型实现:
对于纯随机概率模型,有很多实现的方案。这里介绍一下MutexRandomUtil,其利用了TreeMap的floorEntry这个方法实现纯随机概率抽取(代码见文末)
对于伪随机概率模型1,3,4这种抽过即无法再中第二次的情况,借鉴MutexRandomUtil,我的实现是将所有将会抽到的物品及其抽取概率值都封装到一个类中。每次从该类随机抽取物品,抽到的物品都进行移除,这样既可以保证概率的延续性,也能保证抽中奖品不重复。(代码见文末)
public class MutexRandomUtil<T> { private TreeMap<Double, T> map = new TreeMap<Double, T>(); private double endRate = 0; public MutexRandomUtil() { } public void registerData(double rate, T t) { if (rate <= 0) { return; } map.put(endRate, t); endRate += rate; } public T random() { double r = RandomUtil.avgRandom(0, endRate); Map.Entry<Double, T> e = map.floorEntry(r); return e != null ? e.getValue() : null; } } public class MutexRemoveRandom<T> { private TreeMap<Double, Entry<T>> map = new TreeMap<Double, Entry<T>>(); private double endRate = 0; private static Random r = new Random(); public void registerData(double rate, T t) { if (rate <= 0) return; map.put(endRate, new Entry<T>(t, rate)); endRate += rate; } public T randomAndRemove() { double r = avgRandom(0, endRate); Double key = map.floorKey(r); if (key != null) { T t = map.get(key).t; reorganizeMap(key); return t; } else { return null; } } private void reorganizeMap(Double key) { TreeMap<Double, Entry<T>> tempMap = new TreeMap<>(); map.remove(key); double tempEndRate = 0; for (Map.Entry<Double, Entry<T>> entry : map.entrySet()) { tempMap.put(tempEndRate, entry.getValue()); tempEndRate += entry.getValue().rate; } this.endRate = tempEndRate; this.map = tempMap; } public static double avgRandom(double min, double max) { if (min > max) { double temp = max; max = min; min = temp; } double rNum = r.nextDouble() * (max - min); return rNum + min; } private static class Entry<T> { final T t; final double rate; Entry(T t, double rate) { this.t = t; this.rate = rate; } } }
-
概率模型和统计模型区别
2020-05-18 11:20:32概率模型: 由(Ω,F,P)(\Omega,F,P)(Ω,F,P)组成,其中Ω\OmegaΩ为随机变量X的采样空间、FFF为分布律,PPP为FFF上的概率测度。 f(x)=P(X≤x)=P(ω∈Ω,X(ω)≤x)=∫−∞xF(x)dxf(x)=P(X \le x)=P(\omega \in ...概率模型: 由组成,其中为随机变量X的采样空间、为分布律,为上的概率测度。
其中为累计分布函数(Cumulative Distribution Function, CDF)。通常分布律F是确定的,如高斯分布(正态分布)。
统计模型: 是概率模型的集合(为多个分布律F集合)。参数组成。如多个高斯分布参数。统计模型一般需要训练数据来对分布律进行估计,从而产生分布律集合。参考:
Differences between a statistical model and a probability model? [stackchange论坛]
统计模型和概率模型的区别是什么呢? [知乎] -
机器学习常见概率模型
2019-08-12 07:27:27机器学习常见概率模型概率模型Bernoulli 分布Multinoulli 分布高斯分布指数分布和Laplace 分布分布的混合 概率模型 Bernoulli 分布 Bernoulli 分布(Bernoulli distribution)是单个二值随机变量的分布。它由单个... -
【机器学习】判别模型vs生成模型、概率模型vs非概率模型
2020-07-26 17:31:05判别模型和生成模型的区别,主要在于概率分布。对于一堆样本数据,第i个样本的特征为Xi(特征维度可以是j),对应的分类标记为Yi,则: 判别模型:学习到条件概率分布P(Y|X),即在特征X出现的情况下标记Y出现的概率... -
统计概率模型-最大熵马尔科夫模型
2018-09-13 21:45:54统计概率模型 1、高斯判别分析 2、朴素贝叶斯 3、隐马尔可夫模型 4、最大熵马尔科夫模型 5,条件随机场 6,马尔科夫决策过程 四、最大熵马尔科夫模型 有最大熵模型和隐马尔可夫模型的基础... -
机器学习——概率模型
2019-06-23 15:23:23概述——用一类图来表达变量相关关系的概率模型(概率模型将学习任务归结于计算变量的概率分布) P(A|B)=P(A,B)/P(B)——根据联合概率 P(A,B)推断 P(A|B)的过程 具体说:假定所关心的变量集合为 Y,可观测变量集合... -
常见概率模型在市场中的应用
2020-04-15 14:09:11通常概率模型会把常规金融模型中的某些参数看作是一个未知的概率分布,这个未知的分布通常会预先给定一个基本假设,即先验概率,然后再根据具体的观测数据去推断或者逐步修正这些假设。一种比较常见的概率模型就是... -
环形公路堵车概率模型
2019-03-30 23:42:50公路堵车概率模型 Nagel-Schreckenberg交通流模型 路面上有N辆车,以不同的速度向前行驶, 模拟堵车问题。 有以下假设: 假设某辆车的当前速度是v。 若前方可见范围内没车,则它在下一秒的车速 提高到v+1,直到达到... -
学习笔记:结构化概率模型
2018-09-17 12:26:15什么是结构化概率模型 "结构化概率模型"(structured probabilistic model),是一类用图形模式表达基于概率相关关系的模型的总称,也称“图模型”(graphical model)英文简称,PGM 概率图模型具有... -
信息检索概率模型
2014-03-19 13:25:42基本的概率模型(简单概率模型): 将文档分为两个部分:第一个是和查询语句相关的,第二个和查询非相关的 与查询语句相关的P(D|R) document related 与查询语句不相关的P(D|NR) document unrelated 代码... -
贝叶斯概率模型
2020-07-18 13:18:02一、贝叶斯模型 思想 贝叶斯理论的思想,简单点讲就是要在已知条件的前提下,先设定一个假设,然后通过先验实验来更新这个概率。 工作流程 优点 1. 基于古典数学理论,分类效率稳定 2. 对缺失数据不敏感 3. 准确... -
基于概率模型的聚类
2017-02-28 17:21:34基于概率模型的聚类 我们之所以在数据集上进行聚类分析,是因为我们假定数据集中的对象属于不同的固有类别。即聚类分析的目的就是发现隐藏的类别。 从统计学上讲,我们可以假定隐藏的类别是数据空间的一个分布,可以... -
深度学习中的结构化概率模型
2019-05-24 10:31:32深度学习中的结构化概率模型 结构化概率模型也称为图模型。 一,非结构化建模的挑战 概率模型可以完成很多任务,例如: 估计密度函数 去噪 缺失值的填补 采样 对上千甚至上百万的随机变量的分布建模,无论从计算上... -
第3章-线性概率模型(1)-logistics/probit模型
2015-11-19 21:55:29二值因变量模型 在统计学中,有一种离散变量为二值变量(又称虚拟变量、哑变量)...探讨Logistic模型之前,我们先从线性概率模型(Linear Probability Model,LPM)谈起,然后逐步介绍Logistics模型以及其他非线性模型. -
统计概率模型-高斯判别分析
2018-09-13 21:11:53统计概率模型 1、高斯判别分析 2、朴素贝叶斯 3、隐马尔可夫模型 4、最大熵马尔科夫模型 5,条件随机场 6,马尔科夫决策过程 一、高斯判别分析 一、生成模型 机器学习模型有一种分类... -
概率模型与条件随机场
2016-04-16 21:17:231、概率模型 机器学习中的很多模型可以根据概率分布形式分为生成模型和判别模型,其中生成模型以输入输出的联合分布P(X,Y)为基础建模,如朴素贝叶斯、隐马尔可夫模型;判别模型以条件概率分布P(Y|X)为基础建模,如... -
故障树分析 - 事件概率模型
2019-07-14 03:36:00电子器件的物理失效的概率模型一般符合指数分布,比如电阻的短路、开路。指数分布又细分为恒定失效率指数分布和周期性检测的潜在故障。 如果故障不能被用户感知到,也不能被检测机制及时地检测到,那么它就是一个... -
应用随机过程 概率模型导论 ROSS 中文第9版
2013-11-18 12:28:19《应用随机过程:概率模型导论》 ROSS 中文第9版,90M,620页高清完整版 -
应用随机过程概率模型导论 9版答案
2011-12-30 16:46:21应用随机过程概率模型导论 Sheldon Ross 9版答案 -
贝叶斯推断 1. 基本概率模型和贝叶斯定理
2017-08-20 19:55:02基本概率模型这里简单介绍三个概念,古典概型,频率学派,贝叶斯学派。 古典概型 这个模型下,随机实验所有可能的结果是有限的,并且每个基本结果发生的概率是相同的 比如:投掷一枚均匀硬币,结果只有两种(假设... -
比赛竞猜投注类问题概率模型
2019-10-31 17:26:152.1 变量及概率模型 2.2 个人收益量推导 2.3 投注收益的数学期望 三、策略及期望收益 3.1 总期望收益 3.2 理性投注人群 3.3 非理性投注人群 3.4 等额投注收益 一、问题描述 每年lol或者王者荣耀比赛之中,... -
数学建模——第八章概率模型
2019-06-07 17:56:48一、Matlab相关的概率命令: ...二、概率公式:全概率模型、贝叶斯公式 分布:1、正态分布——如果决定实验结果X是大量随机因素的总和,假设各个因素之间近似独立,并且每个... -
统计概率模型-马尔科夫决策过程
2018-09-14 19:44:36统计概率模型 1、高斯判别分析 2、朴素贝叶斯 3、隐马尔可夫模型 4、最大熵马尔科夫模型 5,条件随机场 6,马尔科夫决策过程 六、马尔科夫决策过程 机器学习算法(有监督,无监督,弱监督... -
高尔顿钉板概率模型的实现
2015-09-21 16:19:26出于兴趣,在VC编译环境下,通过C++语言,模拟实现了高尔顿钉板的概率模型。本程序中定义了两个类,Ball和Holder类,Ball 是定义的小球类,Holder是定义的钉板类。Holder类主要负责画图显现模板框架,以及当 -
PRISM概率模型检测器初使用--骰子模型
2016-03-12 21:43:46PRISM— probabilistic model checker 概率模型检测器 骰子模型 The dieexample http://www.prismmodelchecker.org/tutorial/die.php 与马尔科夫链有关 PRISM code: dtmc module die -
CRF和MRF概率模型的关系
2016-12-06 21:15:40CRF和MRF概率模型的关系最近再次阅读了文献Discriminative fields for modeling spatial dependencies in natural images,对CRF模型和MRF模型有了进一步的理解。总体来说这两者都是属于概率图模型范畴,MRF的理论是... -
离散概率模型的Python实现
2016-12-07 21:23:29离散概率模型的Python实现。下面是源代码。 # -*- coding: UTF-8 -*- import random import numpy as np # random.sample(lst, N) def randstr(s, N=1): # generate a string randomly from s (string) ...
-
亿度云盘~Java小白入门实战
-
【2021】UI自动化测试框架(Selenium3)
-
[Es] Rejecting mapping update to [xxx] as the final mapping would have more than 1 type [xxx xxx]
-
Scrapy安装教程
-
光学频率合成器的自动化控制研究
-
n the Tic-tac-toe game, a “goodness“ function of a position is defined as f(P)=Wcomputer−Whuman
-
商业的本质——杰克·韦尔奇著
-
Linux中的网络配置
-
visual c++ vc自绘窗体的非客户区(不含标题栏和边框) 换肤
-
基于ZGS的大规模多智能体系统的分布式优化算法
-
使窗体变成VISTA风格(窗体边框和标题栏是毛玻璃透明的)的换肤软件(三方库).zip
-
skew数(char、String和int之间的转换)
-
超详细的linux基础指令集 你不来康康?
-
Microsoft_ActiveSync_win7.zip
-
visual c++ vc加载显示.PNG图片.zip
-
FX3U主站S7200smart从站MODBUS通讯.xlsx
-
python办公自动化技巧
-
SubstancePainter插件开发-基础入门
-
Appium自动化测试套餐
-
img.pyPython使用PIL生成随机中文验证码