GameMale
登陆 / 注册 搜索

USERCENTER

SEARCHSITE

搜索

查看: 1786|回复: 23
收起左侧

[技术交流] 【派遣s1】用R语言计算先锋存活的概率

[复制链接] |关注本帖

GM活动员

组件大师

     楼主| 咸鱼鱼 发表于 2025-4-25 13:20:07 | 显示全部楼层 |阅读模式 <
    本帖最后由 咸鱼鱼 于 2025-5-3 16:44 编辑

    先知:远征期间将有先知每日掷出生死骰子预测先锋的生死,累计结果。
               若掷出数量 生(1)>死(-1),则先锋必将生还凯旋。
               若掷出数量 生(1)<死(-1),则先锋必将英勇牺牲。
               若掷出数量 生(1)= 死(-1),则次日再掷1次定生死。
    起止:先知预测有效期: 4月25日~5月7日


    规则如上,可以简单翻译为
    一个先知每天占卜先锋的生死,有三种情况,生、死、不明,概率相等。持续X日,可以暂时认为7日或者14日(毕竟7天后才选先锋,前面7天一直出死是不是大家就未战先怯了?)

    当生的次数大于死的次数,则先锋生存。当死的次数大于生时,则先锋死亡。如果次数相同,则额外占卜若干次,直到生死次数不等。求先锋生存的概率

    如果占卜仅有概率相等的两种情况(生、死),其他规则不变,求先锋生存的概率

    此外在最开始的设计中,是d-1会出现-1、0、1三种情况的,我们也不知道最终结果是会保留三种情况,还是只保留生死,因此都必须计算

    三种情况的代码
    1. compute_prob_case1 <- function(X) {
    2.   # 生成所有可能的s和d组合
    3.   dat <- expand.grid(s = 0:X, d = 0:X)
    4.   dat <- dat[dat$s + dat$d <= X, ]
    5.   
    6.   # 计算每个组合的概率
    7.   dat$prob <- apply(dat, 1, function(row) {
    8.     s <- row[['s']]
    9.     d <- row[['d']]
    10.     counts <- c(s, d, X - s - d)
    11.     dmultinom(counts, prob = rep(1/3, 3))
    12.   })
    13.   
    14.   P_gt <- sum(dat$prob[dat$s > dat$d])
    15.   P_eq <- sum(dat$prob[dat$s == dat$d])
    16.   
    17.   return(P_gt + 0.5 * P_eq)
    18. }

    19. X <- 7
    20. result_case1 <- compute_prob_case1(X)
    21. print(result_case1)  # 输出:0.5
    复制代码


    两种情况的代码
    1. compute_prob_case2 <- function(X) {
    2.   # 由于对称性,生存概率始终为0.5
    3.   return(0.5)
    4. }

    5. X <- 7
    6. result_case2 <- compute_prob_case2(X)
    7. print(result_case2)  # 输出:0.5
    复制代码

    最终的结论
    问题1分析:在每次占卜中,生、死、不明的概率均为1/3。当生死次数相等时,进入额外占卜阶段,此时每次占卜的生/死概率相等,故生存概率为0.5。由于生与死的初始概率对称,总体生存概率为0.5。

    问题2分析:
    每次占卜生或死的概率各为1/2。当生死次数相等时,额外占卜的生存概率为0.5。同样由于对称性,无论占卜天数X是奇数还是偶数,最终生存概率均为0.5。

    两个问题的生存概率均为0.5,这可以通过对称性和概率的公平性解释,R代码验证了这一点。

    匪夷所思的反直觉事件
    为什么无论怎么样都是0.5呢,我觉得可以简单理解成抛硬币,你抛多少枚硬币,是不是无论每个面都是0.5的概率,那么在1次定胜负的概率是0.5的情况下,两次的情况是不是,正正,正反,反正,正正。还是0.5?。当你抛第三次的时候,在第二次的基础上
    正正和反反,第三次硬币都不会改变第二次的结果。正反,反正则会基于第三次的结果发生改变,依旧是0.5

    那么三种情况下,你就可以理解成不明的时候,是硬币立起来了,无需计算其中。还是只要看正反情况
    所以,无论持续占卜多少天,先锋生存的概率都是0.5

    死去的高数还在追我……

    评分

    参与人数 5血液 +12 追随 +4 堕落 +2 收起 理由
    本地人 + 1 + 1 抛个硬币
    SweetUncle + 5 + 1 + 1 很给力!
    瓦尼 + 1 好快的算
    野生阿努厨 + 3 + 1 + 1
    毛茸茸兽兽 + 3 (´×ω×`)

    查看全部评分

    回复

    使用道具 举报

    Lvl. 10 · I

    GM活动员

    漂洋小船冒险用指南针破损的旧书人鱼之泪雪王的心脏苏格兰圆脸胖鸡[Pro Max]丛林的鸟飞走了不曾寄出的信件幽灵竹筒『随时随地开启!』

      凯诺斯 发表于 2025-4-25 13:26:05 | 显示全部楼层 <
      回复

      使用道具 举报

      GM活动员

      Lvl. 0

      我的天使GM吸血伯爵吃饱金币的Doge苏格兰圆脸胖鸡小小舞台守卫: 坚守眼位永浴爱河肉垫手套御医神兔『搓粉团珠』

        毛茸茸兽兽 发表于 2025-4-25 13:51:25 | 显示全部楼层 <
        一半的存活概率咩(´×ω×`)感觉要遭,而且还没那个复活的勋章的……说不定压根不会被抽到欸~那没事咯,喝茶ing
        回复

        使用道具 举报

        【新春限定】果体 隆里昂‧S‧甘乃迪Futūrum(未来)检定场诺克提斯·路西斯·伽拉姆未来的黎明普隆普特·阿金塔姆卡洛斯·奥利维拉仇恋虚空之海的鲸

          诺鸦cc 发表于 2025-4-25 13:55:19 | 显示全部楼层 <
          回复

          使用道具 举报

          阿努比斯信徒

            野生阿努厨 发表于 2025-4-25 14:02:20 | 显示全部楼层 <
            如果这个概率模型复杂一点就可以计算马尔可夫链了,不过看起来版主不打算折磨大家的大脑
            好像还可以通过转经筒复活来着,要是一死就能复活那应该能提升不少概率
            回复

            使用道具 举报

            魔法不朽·传奇不熄Dante岛田半藏艾吉奥克里斯·埃文斯荒野大镖客:救赎 II最终幻想XVI鎏彩万幢

              Apocatastasis 发表于 2025-4-25 14:15:54 | 显示全部楼层 <
              毕竟最后生死是统计生死数量,而不是全部都要roll生才能活。只要这个概率不涉及条件和状态的改变,那在这个赛博空间里,这个概率是不会随着次数递增受到影响的。【真实世界扔骰子就不一样了【当然,赛博伪随机数什么的就不讨论了
              话说比起apply,这种不复杂的function我更喜欢直接向量计算。感觉这样简单一点
              compute_prob_case1 <- function(X) {
                s_vec <- rep(0:X, each = X + 1)
                d_vec <- rep(0:X, times = X + 1)
                valid_idx <- s_vec + d_vec <= X

                s <- s_vec[valid_idx]
                d <- d_vec[valid_idx]
                r <- X - s - d
                
                probs <- dmultinom(x = cbind(s, d, r), prob = rep(1/3, 3))

                P_gt <- sum(probs[s > d])
                P_eq <- sum(probs[s == d])
                
                return(P_gt + 0.5 * P_eq)
              }
              回复

              使用道具 举报

              20x43 隐形➀未散的宴席猎户座的明珠缘起星空虚空之海的鲸16x43 隐形➁弗雷迪玩偶发条八音盒16x43 隐形➀

                Riverlethe 发表于 2025-4-25 14:18:42 | 显示全部楼层 <
                回复

                使用道具 举报

                弗雷迪玩偶发条八音盒桂花米糕鎏彩万幢女巫之路虚空之海的鲸【新春限定】果体 隆『召唤好运的角笛』永远的克叔業火死鬥

                  娱乐法师火布偶 发表于 2025-4-25 14:35:39 | 显示全部楼层 <
                  回复

                  使用道具 举报

                    万俟 发表于 2025-4-25 16:58:37 | 显示全部楼层 <
                    回复

                    使用道具 举报

                    净化污秽的天照合作小小安全帽驯化黑龙幼崽幽浮起司煲月影狼失败的封印仪式黑暗之魂系列

                      瓦尼 发表于 2025-4-25 19:02:16 | 显示全部楼层 <
                      很有感觉,先知一票一票的投入预知先锋生死的结果池,这个过程想想就很刺激了
                      回复

                      使用道具 举报

                      小小舞台『 弗霖的琴』至尊巴哈姆特業火死鬥男巫之歌泰比里厄斯【夏日限定】夏日的泰凯斯史莱姆牧场自定义男从Homunculus岛田源氏

                        书の妖怪 发表于 2025-4-25 20:16:11 | 显示全部楼层 <
                        感觉主要问题是还不一定被选为先锋,到现在也还没具体公布到底是怎么选先锋的,怀疑我到s100都不会被选中呜呜
                        回复

                        使用道具 举报

                        男巫之歌缘起星空信仰之心不灭狂雷『不败之花』【新春限定】果体 隆红心玉情难自抑崩朽之青铜龙王You Can Pet Blaidd

                          Freeze123 发表于 2025-4-25 20:55:01 | 显示全部楼层 <
                          回复

                          使用道具 举报

                          牧羊人猫头鹰守卫山猫图腾驯化红龙幼崽小菜鸟特殊-家园卫士Ⓛ

                            yesminister 发表于 2025-4-25 22:13:02 | 显示全部楼层 <
                            回复

                            使用道具 举报

                            发条八音盒弗雷迪玩偶夏日柯基GHOST竹取物语炽焰咆哮虎蜂蜂小甜心秘法之书肉乖乖永远的克叔

                              zibatco2 发表于 2025-4-25 23:56:11 | 显示全部楼层 <
                              虽然大数据是一半存活概率~

                              但到底还是得看运气~希望运气偏向好那边一些惹吧
                              回复

                              使用道具 举报

                              虚空之海的鲸『钜鲸』守卫: 坚守眼位御医神兔哀恸魔蝶镜中小鸟孔明灯菀叶狸猫猪庇特小狮欢舞

                                cdcai 发表于 2025-4-26 01:47:12 | 显示全部楼层 <
                                回复

                                使用道具 举报

                                裸体克里斯威猛尼特【新春限定】果体 隆光之少女の魔法书永远的克叔炙热的格拉迪欧拉斯凯登‧阿兰科性感男神GMYou Can Pet Blaidd保加利亚妖王

                                  a0015100151 发表于 2025-4-26 03:33:21 | 显示全部楼层 <
                                  回复

                                  使用道具 举报

                                  缘起星空虚空之海的鲸

                                    you9632587 发表于 2025-4-26 06:54:05 | 显示全部楼层 <
                                    回复

                                    使用道具 举报

                                    鎏彩万幢驯化红龙幼崽牧羊人GM論壇進階勛章特殊-家园卫士Ⓡ安德森‧戴维斯特殊-家园卫士Ⓛ瑞雪兆丰年,生灵万物新森林羊男

                                      hm983763907 发表于 2025-4-27 09:37:24 | 显示全部楼层 <
                                      回复

                                      使用道具 举报

                                      猫咪点唱机吸血魔蝠弗雷迪玩偶传奇虚空之海的鲸呆猫苏醒的格罗姆守卫: 坚守眼位金钱马车月影狼

                                        SweetUncle 发表于 2025-4-28 00:34:15 | 显示全部楼层 <
                                        回复

                                        使用道具 举报

                                        千杯不醉捡到了肥皂弗雷迪玩偶发条八音盒You Can Pet Blaidd

                                          Sam30 发表于 2025-4-29 15:33:48 | 显示全部楼层 <
                                          回复

                                          使用道具 举报

                                          您需要登录后才可以回帖 登录 | 立即注册

                                          本版积分规则

                                          关闭

                                          站长公告上一条 /1 下一条

                                          文字版|手机版|小黑屋|GameMale

                                          GMT+8, 2025-12-8 12:54 , Processed in 0.185723 second(s), 147 queries , Redis On.

                                          Copyright © 2013-2025 GameMale

                                          All Rights Reserved.

                                          快速回复 返回列表