cf评测团吧 关注:11,767贴子:301,084
  • 18回复贴,共1

精度公式修正与反思

只看楼主收藏回复

背景:早在2022年,也就是评测团沉寂之后,bgmwd233通过前人的研究以及留下的大量数据,领悟了从解包数据到面板数据的换算公式。


IP属地:广西来自Android客户端1楼2024-03-31 21:50回复
    我们看这三个面板数据里的“精准”公式,会发现公式里的常数部分都一样,如100和80,特殊之处在于,静止和移动精准公式把80连同散布面部分用方括号括了起来,注意这里的方括号并不是表示计算顺序,而是表示向下取整,比如1.1向下取整后是1,1.9向下取整后也是1。


    IP属地:广西来自Android客户端2楼2024-03-31 21:51
    回复
      本人看到这三个公式的时候是很疑惑的,为什么点射精准用四舍五入来取整,而静止/移动精准是用向下取整呢?
      另外移动精准的公式也被bgmwd233进行过一次修正,也就是当总发散是7的时候,方括号内部后面要减去1。


      IP属地:广西来自Android客户端3楼2024-03-31 21:52
      回复
        先从这个点射精准公式说起,我在计算仲达的精度时就发现了问题,已知仲达精度0.17,则有100-80*0.17=86.4,四舍五入后是86,这明显与仲达87的点射精准不一样。
        另一方面,在计算黑铁M4的静止精准时,减号右边是80*(0.2+0.1*7.5*0.3)=34,100-34=66,这又和黑铁M4面板里的67的静止精准不符。
        限于篇幅与精力,有关公式误差方面的计算就不一一列举了。


        IP属地:广西来自Android客户端4楼2024-03-31 21:53
        回复
          显然,这些换算公式存在不少的误差,应当进行一定的修正,否则会对后来人的计算造成较大的误差,同时也不符合评测团当年留下的严谨的精神。


          IP属地:广西来自Android客户端5楼2024-03-31 21:53
          回复
            既然要修正,那么首先我们要确定方向。我就此探索和研究后,有如下总结:
            第一,精度和发散的换算公式的形式应该优先从简,而不是太过于复杂;
            第二,从静止/移动精准公式里的[精度+0.1*总发散*状态发散]可看出,精度和发散是同一个量纲,即单位相同,可以直接相加;
            第三,三个精准的换算公式应该具有同一种取整方式,要么都是四舍五入,要么都是向下取整。
            领悟了这三个原则之后,就可以开始研究怎么修正了。


            IP属地:广西来自Android客户端6楼2024-03-31 21:54
            回复
              我们可以先把公式的底层逻辑转化为函数,既然要从简,那么作为最简单的常数和一次函数是较合适的。在这个函数中,有两个参数,分别是面板里的精准,和解包数据里的散布面。我们把精准设为值域y,散布面设为定义域x,根据面板的一些规则,我们可以得知,y是处于0到100之间的整数,x因为涉及某种未知形式的取整,所以算是拥有一定区间的波动值,并且x必须大于等于0。并且根据精度和发散具有相同单位,得到一系列x和y的对应关系。于是我们的任务就是根据一系列的关系求出函数的解析式。
              现在如果去人工计算,那么这是一个非常庞大且复杂的过程,所以我借助了AI软件。令我没想到的是,我换了3个AI软件,但AI软件要么不直接回答,要么给出一个明显有错的结果,要么直接死机。这些软件前后足足运行了30多次,花了差不多5个小时,才得到一个我比较满意的结果。


              IP属地:广西来自Android客户端7楼2024-03-31 21:54
              回复
                最终的结果是,
                面板精准=100-77.61*散布面-0.17,
                我们化简一下,
                面板精准=99.83-77.61*散布面。
                这里的散布面指的是,公式既可以单独计算精度,也可以计算精度和发散整合后的数据,两种计算结果都是四舍五入。
                (注:该公式只能用于步枪系列,其他枪系应该有独立的公式来进行数据转换,bgmwd233的精度公式无法计算冲锋枪和机枪等的数据,手枪的有关计算也存疑)


                IP属地:广西来自Android客户端8楼2024-03-31 21:56
                收起回复
                  代入验证仲达的精度,结果符合面板里的87,其他的面板精准也可以计算出来。然而在我进行更多的计算时,我发现公式在计算黑铁M4和火麒麟等枪械的移动精准时又出现了误差。


                  IP属地:广西来自Android客户端9楼2024-03-31 21:57
                  回复
                    我开始反思到底哪个环节出了问题,最后我在AI的回答里想明白了。“在x和y的关系中可以得到一组用于拟合函数的离散点,用这些点和最小二乘法,可以尝试找到最佳拟合的一次函数参数”,大体意思是,根据列出的x和y的关系,我们在平面直角坐标系里标出这些点,然后画一条直线,尽量使得最多的点落在直线上,最后再求出直线的函数解析式。这种方法的问题在于,始终存在一部分点不会落在直线上,便导致部分数据代入公式时会产生误差。
                    如此看来,除非扒代码找到换算方法,否则很难得到一个准确的换算公式。
                    但目前求出的阶段性的公式,也算是“化三为一”,尽量从简了,并且还高度统一了精度和发散的换算。


                    IP属地:广西来自Android客户端10楼2024-03-31 21:58
                    回复
                      文案内容参考文献
                      [1]bgmwd233 《从评测团表数据到游戏面板数据》 从评测团表数据到游戏面板数据 2022;
                      [2]昵称3-7字°《CF手游[散发]机制及其影响》CF手游[散发]机制及其影响 2024。


                      IP属地:广西来自Android客户端13楼2024-03-31 22:08
                      回复
                        太专业了 辛苦


                        IP属地:湖南来自Android客户端14楼2024-04-04 09:17
                        回复
                          我感觉好像有点问题,我拿SBR荒漠之谜来说,点射精准84,换算精度在0.1875-0.2之间,但是它的静止精准是100,按理说就算没有发散,它的静止精准也应该是84或者85,这个差距有点太大了,不像仲达一样就差1,难道它的发散是负数吗


                          IP属地:湖北来自Android客户端15楼2024-04-05 11:35
                          收起回复


                            IP属地:辽宁来自Android客户端16楼2024-05-02 14:09
                            回复