北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 4758|回复: 10

摘自云风博客,关于随机性的错觉

[复制链接]
发表于 2009-12-18 13:39:43 | 显示全部楼层 |阅读模式
这是一个例子,说明了一方面的问题。

=========================================================

我们前段开始内测了一个卡牌游戏 (注:需要内测帐号的朋友请自己去官方论坛 申请,不要找我 :) )
在测试时,同事在50 张的卡组里放了 25 张生物卡。并认为,在游戏中每次摸新的卡,是生物卡的概率是 50% 。可是在实际游戏中,几乎每局都会发生连续 5 次都摸不到生物卡的情况。
一开始,我们认为系统的伪随机函数生成的伪随机数列不够随机。后来换了一个随机数函数,情况并没有得到改善。
今天我计算了一下,如果是掷硬币实验,连续 30 次中,至少出现 5 次连续正面的概率达到了 36.82% 。当次数增加到 44次后,概率超过了一半,达到了 50.32% 。而我们的卡牌游戏,几乎每局都会有 30 多次摸牌机会,出现连续 5次摸不到生物卡的概率其实够大了。经常出现这种情况,还真是怪不了伪随机数列的生成算法,或是洗牌函数。
写到这里,还有人不信邪。我掏出了我的 20 面骰 。在桌上做起实验。
我们规定,投出 1-10 算小,11-20 算大。一直投下去,直到出现 5 次连续的大、而后游戏结束。最后统计一共投了多少次。在没有进行游戏之前,有人估计可能每玩一局可能会投接近 100 次;可实际结果另他失望(更接近计算结果)。
我们一共做了三组实验,分别在 22 次,24 次,31 次结束了。
如果有朋友想试试,可以用硬币或麻将用的六面骰实验。
=========================================================

如果加上心理因素,对随机性的错觉更大。比如认为高exp后,门忠任务失败的惩罚更多,奖励更少。

而实际代码显示,高exp的奖励更多,不过多的很少,而惩罚则完全和exp无关。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-12-18 13:50:05 | 显示全部楼层
RNG RNG
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-12-18 14:02:09 | 显示全部楼层
怎么算?
刚才试了一下,公式好像用数学归纳法可以推出来,不过实在懒得算了
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2009-12-18 14:09:54 | 显示全部楼层
原帖由 safeguard 于 2009-12-18 02:02 PM 发表
怎么算?
刚才试了一下,公式好像用数学归纳法可以推出来,不过实在懒得算了


可以玩玩韦小宝那的'输死你'
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-12-18 14:11:57 | 显示全部楼层
原帖由 jason 于 2009-12-18 01:39 PM 发表
这是一个例子,说明了一方面的问题。

=========================================================

我们前段开始内测了一个卡牌游戏 (注:需要内测帐号的朋友请自己去官方论坛 申请,不要找我 :) )
在测试时 ...


这恰恰说明,需要事实说话啊。公式和概率还有代码不能代表实测的结果啊
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2009-12-18 14:15:46 | 显示全部楼层
原帖由 ajump 于 2009-12-18 02:11 PM 发表


这恰恰说明,需要事实说话啊。公式和概率还有代码不能代表实测的结果啊


大路你的逻辑太强大了。。。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-12-18 14:17:26 | 显示全部楼层
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-12-18 18:21:58 | 显示全部楼层
代码和数据错误。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-12-18 18:23:05 | 显示全部楼层
程序代码的结果 和我们亲自动手扔骰子的结果
能完全拟真么?
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-12-18 18:30:27 | 显示全部楼层
刚刚用lua测试了下random函数
for i = 1,100 do
    a = math.random(1,6)
        print(a)
end
测试平台是lua for windows,在里面的scite上运行的
执行了几次,几次结果完全一样!!!
不过在mush上倒是结果不一样。
有点纳闷
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-11-19 03:39 AM , Processed in 0.010658 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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