年会抽奖知多少?

逼近年底,很多公司在举办年会,而抽奖则是一项很重要的事情,往往也是激起员工兴趣、气氛进入高潮的环节。

我们回想一下,电视上一些综艺节目的抽奖流程是怎么样的?一个箱子,要么已经放在台上,要么由一位高挑的美女抱上台,箱子里放着纸条或乒乓球,伴随主持人一声呐喊:获得一等奖的是谁?话音未落,观众开始躁动,场面一度失控,主持人在箱子里捣鼓半天,终于把手高高举起,一等奖诞生,获奖者上台领奖。

听说,可以提前把中奖人的纸条或乒乓球粘在特定的地方,手伸进去就可以精准中奖。别问我是怎么知道的,这是某个著名主持人的经验谈。

再看一下来自网友的吐槽:

“我们公司就是传统企业,抽奖就是搞个箱子,里面投放小卡片,中奖的就是厂长的小姨子、大舅哥。。”

"我司年会1200人,三个大奖之一还真就被写抽奖程序的前端程序员自己抽中了,挺尴尬的。。”

看来暗箱操作已引起一大批人怨声载道,影响用户体验。公正、透明的抽奖方式需要摆上台面。那接下来讲几种可能的方案。

逢“几”中奖

逢“几”中奖,即通过预估抽奖人数和奖品数来判断,“几” = (抽奖人数/奖品数) * N。这是一种最简单的抽奖算法,适合抽奖人数众多,而且彼此无联系的情况。如今大为流行的微博转发抽奖就常常采用这种算法,即根据转发次数来决定奖品归属,透明而且具有激励性,让粉丝更有转发的热情。

当然这个“几”也不单是转发次数,还可能是时间,逢某个时间点就可以抽中,不过这种方案可能产生无人中奖和很多人中奖的情况,时间点的安排很关键!这个时间点一旦公布出去,那就是秒杀。

逢“几”中奖有很多弊端,但是非常简单,很容易实现,被很多抽奖活动所采用,有些会公布抽奖规则,激励抽奖,有些则不会公布,其实后台运行的可能也是这个算法,简单高效又不失公平。在信息不透明的情况下,鬼知道你是第几个抽中的,哈哈。

概率抽奖

所谓概率抽奖是最容易想到的抽奖算法了,这个概率可以是一成不变的,也可以是一直在变化调整的。难就难在要采用多大的概率,哪种情况下采用哪种概率。

这个也没有通用的方案,不同的应用场景,所用的概率算法不同。有这么一种算法,根据奖品的过期时间来计算它当前时间的中奖率,当时间逐渐接近奖品过期时间时,中奖概率会发生变化,比如采用线性衰减和平方衰减。

依赖不可控的物理随机数

设计一个真正公平的抽奖程序,很大程度上就需要考虑如何作弊和反作弊,最重要的是如何让人信服。如果仅仅考虑使用多个随机函数结合来增强随机性,这样的结果是无法令人信服的。你说你生成的数字是随机数,可你怎么证明呢?毕竟即使是同样的随机数生成算法,每次生成的随机数也必然不一样,结果无法复现。

只要能够使得随机数生成算法公开并且生成随机数可复现,就能解决抽奖算法的信任问题。我们可以提前公布随机数生成算法,并规定随机数生成种子为未来的多个不可预知、无法改变的数据。

以 1000 个人参与抽奖抢 200 个奖品为例。

2019 年 1 月 24 日公布随机数生成算法:

四个 Seed 分别是 1 月 26 日道琼斯工业指数、纳斯达克指数、阿里巴巴股价、腾讯股价,并且对其四舍五入取整数。

最终中奖号码 = Random % 1000

1 月 24 日每人从 0~999 中选择一个整数,提交在网站,网站记录每一个人选择的数字以及提交时间,并且将这个数据实时公开。允许多人选择同一个数字,如果有多人选择同一个数字,则按先来后到的顺序对这几个人进行优先级排序。1 月 24 日选好数字之后便不能更改。到了 1 月 26 日,直接根据当天生成的四个 Seed,计算最终中奖号码,按照误差大小对所有人进行排序即可。

随机数生成算法和随机数生成种子的选择方式都是提前公开的,随机数生成结果是可以复现的,以一己之力影响随机数生成种子的大小几乎是不可能的(消耗的成本远远大于收益),而且还可以通过增加随机数生成算法的复杂度和随机种子的个数来进一步提高算法的健壮性。

这就是现今非常流行的一种抽奖算法,绝对公平、透明、没有暗箱(除非偷偷给你换了抽奖号码)!但是这种方法唯一的缺陷是无法实时抽奖,只能事后抽奖,也就是只能拿个抽奖号码等着幸运女神的眷顾。

其实用户不关心奖品被抽中的概率,只要在活动期间陆续有奖品被抽走即可,只要能控制好每个奖品的发放时间点和发放顺序,大奖不会太快被抽走,直到活动最后阶段都保证有奖,活动热度也能得到保证。

(完)
2018最新微信墙微信上墙婚庆会议大屏幕3D签到抽奖摇一摇微信上墙源码。这是我在淘宝上面花了200大洋买的,php版本5.4以上,亲测可用,上墙,抽奖,摇一摇。都可以使用。绝对没有问题。之前在网上花了2天时间也找了一些类似的,有免费下载的,也有包括在csdn上面用5个资源分下载类似的,发现都不能用,至少我在本地或有服务器上都没有调试成功,看了一下他们的代码,发现代码用的是公众号帐号和密码,来模拟微信登陆来获取用户信息。微信已经在2016年就已经停止模似登陆了,登陆微信公众号,必须要扫描后,管理员确认后才可登陆。所以,那些代码都不能用。有些有csdn上传的这些代码基本上不能用(可能2015年前可以用,但是现在不能用),感觉太不负责任了,都是骗积分的。当时因为公司年会要弄个微信上墙及现在抽奖活动,找这个代码也很辛苦,相信大家也一样辛苦,所以,把代码放出来,供大家下载学习使用。这个代码,我是在淘宝上买的,本身内置了第三方的微信公众号授权,所以,如果你的公众号没有微信认证也可以用,直接扫码就可以发送微信上墙弹幕,不会出现第三方公众号信息。如果你的微信公众号认证了,就用自己的,后台可以配置,填写你的公众号appid和appsecret即可。好了,不多说了,大家下 载使用,如果不能用,我退积分。不清楚的,大家可以在评论区留言。
2019最新微信墙微信上墙婚庆会议大屏幕3D签到抽奖摇一摇微信上墙源码。这是我在淘宝上面花了200大洋买的,php版本5.4以上,亲测可用,上墙,抽奖,摇一摇。都可以使用。绝对没有问题。之前在网上花了2天时间也找了一些类似的,有免费下载的,也有包括在csdn上面用5个资源分下载类似的,发现都不能用,至少我在本地或有服务器上都没有调试成功,看了一下他们的代码,发现代码用的是公众号帐号和密码,来模拟微信登陆来获取用户信息。微信已经在2016年就已经停止模似登陆了,登陆微信公众号,必须要扫描后,管理员确认后才可登陆。所以,那些代码都不能用。有些有csdn上传的这些代码基本上不能用(可能2015年前可以用,但是现在不能用),感觉太不负责任了,都是骗积分的。当时因为公司年会要弄个微信上墙及现在抽奖活动,找这个代码也很辛苦,相信大家也一样辛苦,所以,把代码放出来,供大家下载学习使用。这个代码,我是在淘宝上买的,本身内置了第三方的微信公众号授权,所以,如果你的公众号没有微信认证也可以用,直接扫码就可以发送微信上墙弹幕,不会出现第三方公众号信息。如果你的微信公众号认证了,就用自己的,后台可以配置,填写你的公众号appid和appsecret即可。好了,不多说了,大家下
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值