欢迎光临散文网 会员登陆 & 注册

COC跑团游戏中的概率等衍生问题探究

2022-01-17 15:55 作者:qbq0818  | 我要投稿

    跑团被称为当代年轻人的概率论导师(我瞎说的),现就其中几个问题进行探讨。笔者比较熟悉coc规则所以可能有较重coc倾向,但是大多都可以套用。另外由于笔者实力有限,有部分问题难以完全解决或包含错误,欢迎有兴趣的读者评论or私聊讨论纠正,谢谢。

     (本文中1dn或dn表示扔一个n面的骰子)

     (不愿意细看复杂数学推导的读者可以直接找黑体字给出的结论)

    1.d100骰子的等效。

    某种意义上这是句废话,但是凑个字数:一个理想的100面骰子和2个理想的10面骰子等效,后者等概率地遍历前者所有等概率情况。

    2.关于可能的骰子面数(似乎有点难,和概率以及跑团关系不大,可以跳过------别退出啊喂,后面有好东西呢!)

    骰子即跑团游戏中的一个离散随机数生成器,一般常用的骰子有6颗:4,6,8,20面和2个10面骰(代替100面骰)。但是我们注意到在理智检定中会出现1d2,1d3或者其他面数,因此我们讨论一下,对于理想的多面骰子,应当有多少种可能的面数。

    对于一个骰子,我们一般认为要求它在一次抛掷中各个面朝上的概率相等。但是这事实上不好讨论,就比如有的100面骰子,它们做成100面外形但难以直接验证每个面向上的理论概率相等,容易被怀疑“灌铅”;再者从制造的角度出发由于有介值定理的存在,构造一个任意4或更多面的奇形怪状的多面体骰子似乎都不太困难,微调各个面的参数就可以达到目的,这使得这个问题失去讨论价值。因此我们再对骰子进行一个限制:对于给定的一个骰子以及它的A,B两个面,我们可以经过一系列的平移,旋转,对称操作使得这个骰子操作前后完全重合,同时原来的A面与现在的B面重合。也就是说:除了数字标记不同之外,骰子的任意两个面没有区别。这对于一般的骰子显然成立,同时也保证了对于一个新骰子,我们可以一眼看出这个骰子各个面是不是等概率地朝上。

    那么正式进入讨论:1dn也就是n面骰子对于什么样的n是可行的呢?

    1)n=1:显而易见的,这是平凡情况。

    2)n=2:虽然一个多面体至少有4个面,但是生活很好地解决了这个问题--我们可以抛硬币。

    3)n=3:如上所述,三个面的多面体不存在。

    4)n=4:取正四面体即可。

    5)n>4,n是偶数:设n=2k,取两个全等的底面为正k边形的棱锥,把它们的底面粘在一起,就是一个符合要求的骰子。

    6)n>4,n是奇数:这是这个问题中最困难的部分。我们证明这样的骰子不存在。

    设n=2k+1。由欧拉公式:v(顶点数)+f(面数,也就是n)-e(棱数)=2,取f=2k+1,由于所有面等效,设每个面有w条边,则e=fw/2,f是奇数从而w是偶数。

    如果w>=6,那么e=fw/2>=3f,f<=e/3;  e>=3v/2(这是由于每一个顶点至少有3条边交汇),v<=2e/3;  相加就有e+2=v+f<=e,矛盾!所以w=4。

    于是f=2k+1,e=4k+2,v=2k+3。这里我们继续挖掘条件中的信息:每两个面都是等效的,那么每个面的四个顶点构成的集合也是彼此等效的,这意味着如果我们把所有顶点标上这个顶点连接的边数,那么每个面的4个顶点标数集合也是一致的。一个标上i的顶点会产生i个角(面上的平面角)被标上i,而总共有8k+4个标数,那么设标i的顶点有ri个,我们有:

    3r3+4r4+......+i*ri+......=8k+4

    r3+r4+......=2k+3

    i*ri是2k+1的倍数(这是因为一共i*ri个i,它们均匀的分布在2k+1个面上)。

    到这里条件就已经很强了,因为i*ri只要不是0就至少是2k+1,但是所有i*ri加起来也只有4个2k+1,意味着不是0的ri至多有4个。我们再来讨论ri的分布。如果r3是0,那么从4r4开始这些i*ri和至少是4*(2k+3),超过了8k+4,显然不行,所以r3不少于1,3r3至少是2k+1。

    我们再设u1到u4表示不是0的那些ri对应的i值(ui可以重复!比如如果3r3=2*(2k+1)那么u1和u2都是3因为标号3的r上分配了2个2k+1),于是我们有

     (2k+1)*(1/u1+1/u2+1/u3+1/u4)=2k+3,其中ui是不小于3的正整数

    这个方程就是一个典型的大小比较的不定方程了,讨论一下:如果ui有4个或者3个3,带进去算出k不是正整数;如果ui有两个3,就有1/u3+1/u4=1/3+2/(2k+1),于是比较大小得u3,u4里面至少有一个4或5,代入有2整除30k+15或者2k+25整除9,都是矛盾;如果ui只有一个3,继续比较大小得到必定还有2个4,代入得2k+9整除3矛盾。

   综上所述,奇数面骰子不存在!


3.伤害加值的半值等效

     一些弓箭类特殊武器的伤害加值是半db,对于这一点其实有一些可以操作的空间(此操作可以满足那些有强迫症的人不想让骰子被分成半个的欲望

    幸运的是所有db的骰子面数都是偶数,这使得改进存在机会,因为整数骰子最大得点和最小得点具有完美的对称性,所以只有对称的骰点分布列可能可以用有限个整数骰子表示出来。

    简单来说,设db=1d2k,那么我们有半db=[(1d2k)/2],中括号表示下取整。这样的分布列就是1/2k概率取到0或k,1/k取到1,2,……,k-1。注意到对于2k个可能情况的概型,我们可以尝试把它改写成1d2和1dk的线性组合,也就是半1d2k=1d2+1dk-2。它在1dk的基础上进行了一次平移叠加,这产生了2k个结果,也就是有一组1dk会减去1而另一组不减,这仅仅使得最大和最小投点的概率减半而余下的点数概率不变,恰好符合要求。容易验证这两种骰子方式是等价的。

4.理智检定的成功失败数值对比

    coc中的理智检定由两组骰子组成,一般记为sc1da1+1da2+……1dam+a0/1db1+1db2+……1dbn+b0,比如1d10/1d100。一般情况下规则书指出sc体系的一个重要特征就是理智越少越容易失去理智,也就是sc斜杠右侧的骰子往往点数大于左侧。但这不是一个很好的描述,我们难以直接从这个描述区分两个理智扣除哪一个应该放在斜杠右侧。我们需要考虑这个区分的实质:对于所有可能的骰子组合,存在一个序关系使得当两个不同的骰子组合出现时,前面一个应该作为成功的扣除因为它在排序中比另一个要更好。那么,这个序关系应该怎样建立呢?

    一个简单的发现是期望(或者叫平均)投点,比如1d100平均值50.5,它应该在平均5.5的1d10之后。这个判断对于绝大多数骰子都是足够使用的,但是这不是一个完整的排序!因为有可能有两组骰子期望相等,比如说1d2+1d4和2d3。这两组骰子如何比较呢?

    我们再来考虑sc系统的其他要素:临时疯狂和永久疯狂。永久疯狂要求我们尽全力阻止理智损失殆尽,而临时疯狂要求我们尽量不要出现大于等于5的投点。对于一个正常的调查员,拥有25以上理智的人,前者往往是无关紧要的因为除非一个模组跑到最后看到克苏鲁什么的以外永久疯狂极为少见;同时理智稍高的人也还可以通过策略避免不定性疯狂,我们暂且不纳入考虑。事实上这三种疯狂对于同一次检定来讲目标都是要求单次理智损失不超过某个固定值,我们不妨假设这个固定值就是5因为它常见,其他的固定值也可以类比分析。

    那么继续看投点1d2+1d4和2d3,简单计算可以得到前者临时疯狂概率等于3/8,后者等于3/9,因此这个理智检定应当是sc2d3/1d2+1d4。也就是说对于期望相同的骰子,应当比较它们的临时疯狂概率来确定理智扣除。

    然而这还不是一个合理地全序,因为存在一对骰子期望值和临时疯狂概率都相等。这不是偶然,因为我们有结论:对于一组整数个骰子,所有期望值在4.5的骰子,它们大于等于5的概率都必定是50%。这是因为骰子出点是对称的,平均值就等于最大投点和最小投点的平均,出现a的概率一定等于出现2*期望-a的概率(注意!这个套路只能应用于几个骰子的加和,不可以乘以其他常数,这么要求的原因我们可以在第5个问题中看到)。那么如果平均值是4.5,出4和5概率相等,出3和6相等,以此类推,我们知道出小于5和大于等于5的概率是相等的,都是50%。另外要注意的是这里计算期望必须包括小于0的理智扣除,尽管kp可能不会让你把理智加回来,比如1d6-2的平均是1.5,而不是5/3(把扔出的1-2视为-1而不是0),否则骰子的对称性就会被破坏,4.5的结论也无从谈起了。

    也就是说,我们会轻松地构造出一个毒瘤sc:sc1d2+1d5/1d3+1d4,这个sc两侧骰子平均值与临时疯狂概率都相等,唯一的差别在于是不是赌狗:前一个有更大的概率出很高或者很低的点数,而后者相比而言比较稳定。

    如果要从源头上解决这个问题,必须把所有骰子进行一个全序的排列,也就是把骰子排成完整的顺序,而我们可以把一组骰子表示为一个有限长度的(事实上不是0的长度不会超过200因为就算有理智固化扣200点也早就撕卡了)整数序列,比如1d2+2d3+1d4+1d6+3可以表示为【3,1,2,1,0,1】,最前面的3表示+3,后面的每个数,在第t位就表示t面的骰子有几个。对于这样的整数序列,构建全序的方法不计其数见仁见智,就不再赘述了。

5.骰子相关概率问题中的离散性质导致的直觉判断误差

【本问题由群友 @优姬 提供】   

    原问题如下:问:1d100和3d6*5的出目中哪一个大于50的概率更大?

    我们知道1d100大于50的概率就是50%,这是显然的;也就是我们去对比3d6*5较大的一半投点应当是多少:注意到骰子具有对称性,3d6*5出目后50%应为大于平均值52.5的点数,52.5又不会出现,所以3d6*5大于52.5的概率是50%。直觉上讲我们可以回答后者大于50概率更大,似乎比50%大一点点,但是并非如此!因为骰子是离散的,在3d6*5中得到的数值只能是5的倍数,大于52.5意味着最小是55,但是不满足要求的最大值是50,也就是说大于50和大于52.5完全等效!因此,1d100和3d6*5的出目大于50的概率相等

    这也就是说我们不能用1d6*2代替2d6,类似的在上一个问题中4.5的结果是有特殊性的,不能完全推广,这可能会造成直觉上的误差和错误判断。

6.奖励骰与惩罚骰的等效加值减值,以及该机制对于真正的100面骰子的误差

    规则书中讲一般惩罚骰等效于-20的减值而奖励骰等效于+20的加值,但是这显然十分不精确,我们进行一些计算来验证它。我们注意到投点成功是要求两个10面骰有一些符合要求的选择,而对应的失败则是取到另一些选择,也就是说失败就是不成功(废话),惩罚骰就是要两次都成功,而奖励骰则是两次不都失败,这是比较对称的,因此我们现在只考虑惩罚骰的情况,暂且不管奖励骰;笔者会在这一节后面不加证明地给出奖励骰的结果以供参考。

    假设一个技能的成功率是10a+b%,记为c,其中a,b是0到9但不全是0。一般最常见的惩罚骰就是惩罚一个,对于多个的情况结论非常不美观,也只给部分结论和另一个推广结果的证明。(丑的没法看的式子就不拿出来恶心人了

    惩罚骰,也就是骰两次十位和一次个位,两个组合都成功那么成功,否则就视为失败。如果我们用的是100面的骰子,那么一般就扔两次,都成功就算成功。但是这两个结果不一定一样!后者的成功概率显然是从c变成了c^2,但是前者并非如此,因为事实上前者作为古典概型就只有1000种情况,不可能精确到小数点后4位。那么这两种概率相差多少呢?

    100面:P(100成功)=c^2=(0.1a+0.01b)^2=0.01a^2+0.002ab+0.0001b^2

    2个十面:P(10^2成功)=0.1b*0.01(a+1)^2+0.1*0.01a^2+0.1*(9-b)*0.01a^2  (注:这里三个项分别代表个位骰出1到b,0,b+1到9时的成功概率)

    求差:P(10^2成功)-P(100成功)=0.001b-0.0001b^2

    也就是说这两种方式的概率相差万分之(个位*(10-个位)),即使在个位是5的时候误差最大也只有万分之25的概率差,拟合地比较好。在千分之3的误差范围内我们可以用概率直接平方来代替惩罚骰的成功概率。

    与此同时我们还注意到对于单个惩罚骰而言,对于任意的成功率,使用2个10面骰都是要略微优于使用百面骰的。这里经过类似的简单计算我们还可以得到,对于单个奖励骰而言,使用百面骰比使用2个十面骰要更优,并且误差是相等的,都是万分之个位乘以10减个位。

    对于惩罚2个骰子的情况,使用10面和百面的差距也是类似的,但是不一样的一点是这时误差会和十位有关系。事实上,误差等于0.0001b*(3a+1+0.1b)*(1-0.1b),并且仍然满足惩罚骰10面优于100面的结果。惩罚2的误差最大在成功率95%时取到,大约是千分之7(千分之7.125)。

    于是我们猜测,无论惩罚几个骰子,成功率多大,使用100面都比2个10面要差,相应的如果使用奖励骰,那么使用100面则会更好。我们简单地证明一下惩罚骰的情况,奖励骰当然也对就不再写出了。

    当惩罚n个骰子时,使用100面的成功概率就是p1=(0.1a+0.01b)^(n+1)

    使用10面骰子的成功概率是p2=0.1b*(0.1a+0.1)^(n+1)+0.1(10-b)*(0.1a)^(n+1)

    为了方便观察,设k=0.1b,x=0.1a,e=0.1,并用n代替n+1,于是有:

    p2-p1=k((x+e)^n-x^n)-((x+ke)^n-x^n),我们去证明它大于等于0。

    给定函数f(x)=x^n,函数曲线上的三个点A(x,x^n),B(x+ke,(x+ke)^n),C(x+e,(x+e)^n),那么p2-p1大于等于0就等价于AC斜率大于AB斜率,而这根据f(x)的下凸性是显然的,至此我们就证明了上文的结论。

    那么我们暂时忽略千分之几的误差来考察,就可以看出:当技能成功率在25或75左右时奖励骰等效的加值与+20接近,越靠近50,奖励骰的加值就越大,反之越小。

    7.天命3或天命5总和最大值的期望值

    coc中车卡决定数据的常用方法是天命,也就是用一组骰子来决定要用的调查员属性,8个属性(不讨论幸运,事实上加上幸运也是类似的),5个3d6*5和3个2d6*5+30,总共21d6*5+90,我们连续扔三次或五次这一组骰子并取出数值最大的一个,求取出的数值的期望。

    首先容易算出的是只扔一次天命的期望值,是457.5,很接近常见的460购点或480购点;但是如果要天命3或天命5,非常抱歉由于笔者实力有限没有得到数学上的准确结果,只能用程序测试大量的样本来给出一个近似,结果得到:天命3平均值494.7,天命5平均值504.3。(各测试了50000组数据求得的结果)

    以上是笔者目前所想到的跑团游戏中衍生的数学问题,如有错漏,多解或其他衍生问题希望读者可以不吝赐教,欢迎私聊或评论讨论,谢谢。

2022.9.30二编:问题7已经在精确到5位小数的条件下解决,详见专栏:


COC跑团游戏中的概率等衍生问题探究的评论 (共 条)

分享到微博请遵守国家法律