两台计时器不仅起点可能不同,走时速度也可能略有差异。用一组对应时间拟合直线,可以分别估计偏移和比例,而只减去固定差值无法解释随时间增长的偏差。
本例把参考时间写成a乘本地时间加b,通过最小化所有对应点的纵向残差平方和求a和b。比例a等于离均差乘积和除以本地时间离均差平方和,偏移b等于参考均值减a乘本地均值。所有样本权重相同。
七组对应观测,分数表示精确读数;拟合不使用生成样本时的隐藏比例或偏移。
本地时间 | 参考时间 72 | 21217/250 86 | 49567/500 173 | 187287/1000 180 | 19517/100 183 | 196477/1000 250 | 1065/4 296 | 38953/125 结果:{'status': '可拟合', 'a': '45979327/45333000', 'b': '2153471/181332', 'residuals': ['-271/7884', '5807/181332', '-10039/181332', '32995/45333', '-182771/181332', '48949/60444', '-85591/181332'], 'squared_loss': '293705/120888', 'predictions': [[0, '2153471/181332'], [150, '37176334/226665'], [300, '286643317/906660'], [450, '212290649/453330']]}表中编号只标记本例对象,不表示排名或另一组数据中的身份。先确认输入单位与边界约定,再逐步核对中间值。零、空结果和不存在是不同状态,不能因为显示相近就互相替代;分数用精确形式保留,便于重新演算。
拟合后的残差总和应为零,本地时间乘残差的总和也应为零。若所有本地时间都相同,无法从这些样本判断比例,应报告信息不足;不能把分母零简单替换成一个很小的数继续算。
先画出或逐行查看残差,观察是否仍有明显规律。比例接近一并不表示偏移可以忽略,偏移接近零也不表示速度完全相同。将拟合结果用于游戏回放对齐时,应明确参考时钟,并保留原始时间以便重新校准。
这些样本被当作已经配对的观测,不是在测量网络单向延迟。若两侧观测都有显著误差,或延迟随时间系统性变化,这个简单模型可能产生偏差;表内预测也不保证很远未来仍然准确。
这份记录用于理解明确规则下的游戏机制。改变输入后,结果也应随之重新计算;若操作规则不同,应先把新规则写清再比较。可以从一两个步骤手算开始,找出第一处差异,而不是只对照最后一个数值。全部中间记录都属于当前案例,不能直接当成其他场景的固定答案。