1. 游戏介绍

0x1:游戏规则

该游戏名叫红包接龙,规则如下:

年会会场内所有人都通过钉钉群的方式参与该游戏,会场人数一般为200~300人(大部分能时候是超过红包最大拆分份数):

1. 由老板发出第一个种子红包,金额 b = 500,红包分成100份,每份金额是随机的,红包发到钉钉群后,大家可以由两种选择:抢 or 不抢;
2. 如果选择不抢,则本轮无损失也没有收益。
3. 如果选择了抢,还需要拼手速,因为大部分时候选择抢的同学个数依然大于红包最大拆分份数;
4. 所有红包拆分份数都被抢完之后,由本轮抢的最大金额的同学发下轮的红包,每轮的红包金额需要在之前的基础上增加200;
5. 游戏循环进行,直到达到5000元上限结束;

0x2:游戏策略分析

1. 伯努利实验抽象建模

先抛开影响是否能抢到的网速问题,每次抢红包只有两种结果:

p=0.99:不是抢到最大的那份红包;
p=0.01:抢到最大的那份红包;

按照伯努利实验的三准则,这个游戏可以抽象为伯努利实验。因此我们可以二项分布或者泊松分布来对是否抢到那份最大红包进行数学建模。

但是问题没有这么简单,玩家还需要思考一个最重要的问题,这个游戏有”前景“吗?我们知道,赌博是一个”没有前景“的游戏,这是从数学期望的角度分析得到的。

2. 基于数学期望分析游戏的损失风险

从收益的角度来看,单次红包游戏的收益期望为:

(抢到非最大那份红包的概率 * 收益 - 抢到最大那份红包的概率 * 损失 )* 本轮的红包金额 = (99 / 100 * 1 / 100 - 1 / 100)* (500 + 200n)= 1 / 10000 * (500 + 200n)

因为红包是被分成100份的,因此收益要 * 1/100;同时,随着轮数的增大,越到后面,n越多,本轮的红包金额就越多。

从上述公式可以看到,从期望角度来看,玩的越多,损失的就越多。

但是!!有一点要注意,就是函数的导数趋势是很低的,我们将公式在图像中表示:

换句话说,这个公式主要受到 1/10000 的影响,后面的乘积因子受到了压制。再换一个通俗的说法就是,玩1次和玩100次,最终的损失期望在绝对数值上不会差很多(0.07 ~ 2.05),尽管翻了100倍。

所以,从期望的角度看,多玩几轮损失也还好,当然不能无限扩大n次数,毕竟从期望上看,玩的越多,亏的就越多,当满足大数定理的时候,亏就成为必然的了。

3. 基于几何分布的角度分析游戏的损失风险

从上个小节分析数学期望的过程中,我们其实发现这个游戏隐藏了一个很大的策略前提,在这场游戏中,只要抽中一次最大的红包份,基本上整场游戏就是亏本了,即一次失败,就前功尽弃。

所以,我们要分析的是,玩的游戏轮数和首次出现负结果的概率的关系。显然,几何分布是最适合对这个场景进行数学建模的工具。

几何分布(Geometric distribution)是离散型概率分布。它定义为:在n次伯努利试验中,试验k次才得到第一次成功的机率。详细地说,是:前k-1次皆失败,第k次成功的概率。 

这里我们定义n为参与游戏的次数,成功概率定义为抽中最大红包的概率。

p = 1/100:出现负结果,即抽中最大红包;
k=随机变量,表示参与游戏的次数;

P(X = k)= ,k=1,2,3...N.

这个函数是一个单调递减的函数,最大值是当k=1时,P(x=1)= 0.01,随着x的增加,概率逐渐减小。

通俗地说就是,随着你玩的次数k增多,”玩了k次才碰到前功尽弃的最大红包的概率是逐渐下降的“,玩的次数越多,危险也就越大,玩的次数越少,危险越小,最小的危险就是只玩1次,风险为1%。

4. 基于泊松分布的角度分析游戏的收益风险

前两小节分析了游戏的风险,接下来来分析下游戏的收益前景。

我们将问题转化为泊松分布的框架内进行思考和计算:

1. n:游戏的次数;
2. p=99/100:盈利的概率;
3. λ = np = 0.99n:泊松分布参数;

从上图可以看到,n越大,λ也就越大,整体泊松分布的均值中心就越大,收益的整体期望也就越大。

所以从这个角度来说,单纯看抢到红包的收益,肯定是玩的次数越多,收益越多。

0x3:从极值角度得到一个理论最优策略

如果我们将收益函数和损失函数整合起来,得到一个最终的成果函数,对其求极值,会发现最优点是k=1的时候,因为越往后玩,损失的整体风险是不断提高的。

也就说,只玩一次就收手!!

这可以看成是一个理论最优值,可惜这不符合我们的”赌徒心理“,而且在实际生活中,我们也没必要这么保守,毕竟红包也没几个钱,就算真的抽中了要发,损失也还好,这种情况下,人们常常倾向于冒一定的风险,去获得更高的收益。但问题是具体要玩多少次呢?

0x4:画出泊松分布累计概率分布图

画出泊松分布的概率分布图:

# -*- coding:utf-8 -*-from scipy.stats import poisson
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as npN = 20
p = 0.99
# mu = N * p
data = poisson.rvs(mu=p*N, loc=0, size=N)
print "Mean: %f" % np.mean(data)
print "SD: %f" % np.std(data, ddof=1)plt.figure()
plt.hist(data, bins=1, normed=True, histtype='stepfilled')
plt.xlim(0, N * 1)
plt.xlabel("Rounds")
plt.title("Rea Packge Game")
plt.show()

从图中可以看出,13次左右的时候(其实也就是靠近期望均值中心的次数),我们已经能够获得”大部分“的收益了,再往后的收益成本比就会越来越低。而且,次数越多,风险也在不断提高。

因此,选择参与13次游戏,是一个比较明智的选择。

同时,我们也可以计算一下此时的损失风险:

1. P(参与了13次,一次都没有抽中最大红包)= 0.99^13 = 0.877521022999:概率还是相比比较高的;
2. E(损失)=  1 / 10000 * (500 + 200 * 13)= 0.31;

2. 红包游戏该怎么玩呢?

经过上面的分析,读者朋友可能要蒙了,这个游戏看起来是一个风险与收益并存的游戏,那我们到底应该采取什么样的策略呢?是尽量多的参与抢,还是尽量少的参与抢呢?

首先一点笔者要强调,世界上的所有事情都这样的,没有非黑即白的分界线,我们所要做的是,在黑白之间的灰色地带,找到一个最佳的平衡点,在尽可能少的损失情况下,得到尽可能多的收益。另一方面,每个人对风险的承受能力都是不同的,有的人可以接受高风险高回报,有的人是低风险低回报。

贝叶斯推断要做的就是将所有未知因素柔和起来,得出一个风险与收益的综合概率分布函数,接下来就是推断的环节,至于如何进行决策,就看使用者自己的策略和选择了。

0x1:最终的策略

这里笔者给出几点建设性建议:

1. 首先,根据大老板给出的种子金额以及封顶金额进行一个估算,得到 N 的最大值,例如本文的20;
2. 然后,计算【0,N】之间的95%正态区间的负区间,也就是左区间的整数MIN值,例如本文的13;
3. 将13作为我们整晚游戏的参与上限,同时建立止损机制,如果在13轮内都没有抽中最大红包,则继续,但是最多只参与13次,如果在这之前不小心抽总了一次最大红包,立即停止,及时止损;

笔者需要强调的是,上述的策略是一种偏向保守的策略,即:在尽可能多获得收益情况下,尽可能少损失

在实际的生活中,我们可以继续提高风险,来获得更高的收益,这取决于你对风险的承受能力,其实贝叶斯推断的核心思想也就在这里,损失的函数的计算不只是纯数学上的计算,对风险的承受能力也应该被考虑在损失函数的计算之中。

关于这个思想的讨论,读者朋友可以参阅我另一篇博文。

that's it!!

转载于:https://www.cnblogs.com/LittleHann/p/10427132.html

关于年会抢红包游戏的一个思考相关推荐

  1. PvP实时抢红包游戏设计与实现

    写在前面 之前一篇文章讨论关于PvP真人竞赛的需求,这次一起来探讨PvP抢红包游戏场景. 众所周知,最为熟悉的抢红包就属微信红包了.微信的抢红包是一个非常深入人心的功能,抢红包的抢字体现在红包个数是有 ...

  2. Nim游戏的一个扩展——51nod 1661 黑板上的游戏+LA 5059 Playing With Stones

    前几天做过一道题目,是Nim游戏的一个扩展,也不能说扩展吧,只是说另一种常见的状态. 问题引入: 给定n堆石子,每堆石子有vi(1<=vi<=1e5) 个,每次可以取一堆中的一些石子,使得 ...

  3. 如何让游戏讲一个好故事?

    作者简介:赵昕,腾讯互动娱乐天美工作室群游戏策划,世界观方向.古典文献学硕士,专业搬砖,业余写手.好看的灵魂,有趣的皮囊.爱好瞎琢磨,乐于多分享. 本文转载自公众号: 腾讯游戏学院 丨导语:游戏世界观 ...

  4. 经典c语言程序创意,49个经典年会小游戏(绝对有创意)C

    33.爆竹声响,瞎子吞蛋 道具:气球15.蒙眼布3.小方凳3.小盘3.鸡蛋 参加人员:分成若干组 游戏规则:各队抽出二名队员,比赛开始一队员用最快速度吹爆5个气球,吹完后另一队员蒙住双眼寻找鸡蛋,找到 ...

  5. 【吐槽脑洞】关于逛B站时偶然体验的弹幕互动游戏魏蜀吴三国争霸游戏的一些思考

    [吐槽&开脑洞]关于逛B站时偶然体验的弹幕互动游戏魏蜀吴三国争霸游戏的一些思考 预警:本贴没有什么技术含量,也没有什么严谨的资料调查,仅仅是自己的一次游戏体验引起的一些思考和个人观点,以及作为 ...

  6. 《游戏设计艺术(第2版)》——学习笔记(7)第7章 游戏始于一个创意

    <游戏设计艺术(第2版)>学习笔记(7) 第7章 游戏始于一个创意 灵感 陈述问题 如何睡眠 你的无声伙伴 潜意识建议1:给予关注 潜意识建议2:记录你的创意 潜意识建议3:(明智的)满足 ...

  7. 抢椅子游戏java_年会互动游戏《抢凳子教案》

    导读:抢凳子游戏介绍:抢凳子游戏(抢椅子游戏)是一款很经典的年会互动游戏.联欢会互动游戏.亲子互动游戏.晚会互动游戏.晨会互动游戏,简单.刺激.好玩,瞬间带动活动气氛,... 抢凳子游戏介绍: 抢凳子 ...

  8. 你的时间是如何被谋杀的?---由一款塔防游戏引发的思考

    你的时间是如何被谋杀的? ---由一款塔防游戏引发的思考 文/LL 之前一段时间花了很长时间来玩了一个 Mac OS平台下的塔防游戏<iBomber Defense Pacific>,为此 ...

  9. 游戏设计的艺术:一本透镜的书——第六章 游戏以一个创意开始

    这是一本游戏设计方面的好书 转自天之虹的博客:http://blog.sina.com.cn/jackiechueng 感谢天之虹的无私奉献 Word版可到本人的资源中下载 第六章 游戏以一个创意开始 ...

最新文章

  1. xxx cannot be resolved to a type 问题的几种常见原因
  2. ue编辑器拖拽上传图片_Typora + PicGo打造超好用的Markdown编辑器
  3. JS高级部分(个人认为)
  4. OpenCV学习笔记(十七):查找并绘制轮廓:findContours(),drawContours(),approxPolyDP()
  5. 深入理解 ASP.NET 动态控件 (Part 5 - 编译实验)
  6. 【cl】本地安装maven的jar包报错Artifact is already in the local repository
  7. SOA渐行渐近-怎样给IT系统一个新视角?
  8. 程序算法面试 题目汇总 算法题 推理题 规律题
  9. imageai的安装和简单使用
  10. 程序员量子力学-海森堡式BUG
  11. [推荐]15款非常好用的新浪,腾讯短链接生成器,一次生成永不失效,巨好用!
  12. 微信文件夹储存在什么位置?如何修改保存路径
  13. 计算机老师三年发展规划,信息技术专业教师个人发展三年规划汇总(全).doc
  14. nas网络存储服务器系统,nas网络存储是啥_NAS网络存储功能
  15. 【vsftpd】配置
  16. 智能门禁系统教程--人脸识别方案
  17. 简单易懂的Socket TCP网络通讯知识-消息协议和数据包
  18. 学习web前端开发需要掌握哪些技能?
  19. adc0804c语言程序,ADC0804芯片在模数转换电路中的应用研究
  20. Mongodb 全文搜索

热门文章

  1. 提高篇 第五部分 动态规划 第6章 斜率优化动态规划
  2. 1.5编程基础之循环控制 37 雇佣兵
  3. no module named numpy_nn.functional和nn.Module
  4. SSH连接Linux CentOS7-Putty篇
  5. Qt文档阅读笔记-Q_GADGET官方解析及实例
  6. Java笔记-CXF增加拦截器与自定义拦截器
  7. Java工作笔记-使用Maven创建多模块项目
  8. Qt文档阅读笔记-QSslConfiguration官方解析与实例
  9. Qt工作笔记-右键删除视图中的Item【坐标映射】
  10. 大三软件工程小项目-小技术集合-tcp服务器搭建及客户端