两台计时器不仅起点可能不同,走时速度也可能略有差异。用一组对应时间拟合直线,可以分别估计偏移和比例,而只减去固定差值无法解释随时间增长的偏差。
本例把参考时间写成a乘本地时间加b,通过最小化所有对应点的纵向残差平方和求a和b。比例a等于离均差乘积和除以本地时间离均差平方和,偏移b等于参考均值减a乘本地均值。所有样本权重相同。
七组对应观测,分数表示精确读数;拟合不使用生成样本时的隐藏比例或偏移。
本地时间 | 参考时间 95 | 20587/200 137 | 142551/1000 161 | 167653/1000 216 | 27521/125 253 | 256919/1000 258 | 32723/125 282 | 35517/125 结果:{'status': '可拟合', 'a': '50547589/51918000', 'b': '2110919/207672', 'residuals': ['115429/415344', '-414293/415344', '306535/415344', '-61307/207672', '59869/138448', '11147/25959', '-30377/51918'], 'squared_loss': '2008385/830688', 'predictions': [[0, '2110919/207672'], [150, '81098681/519180'], [300, '313840129/1038360'], [450, '58185362/129795']]}表中编号只标记本例对象,不表示排名或另一组数据中的身份。先确认输入单位与边界约定,再逐步核对中间值。零、空结果和不存在是不同状态,不能因为显示相近就互相替代;分数用精确形式保留,便于重新演算。
拟合后的残差总和应为零,本地时间乘残差的总和也应为零。若所有本地时间都相同,无法从这些样本判断比例,应报告信息不足;不能把分母零简单替换成一个很小的数继续算。
先画出或逐行查看残差,观察是否仍有明显规律。比例接近一并不表示偏移可以忽略,偏移接近零也不表示速度完全相同。将拟合结果用于游戏回放对齐时,应明确参考时钟,并保留原始时间以便重新校准。
这些样本被当作已经配对的观测,不是在测量网络单向延迟。若两侧观测都有显著误差,或延迟随时间系统性变化,这个简单模型可能产生偏差;表内预测也不保证很远未来仍然准确。
这份记录用于理解明确规则下的游戏机制。改变输入后,结果也应随之重新计算;若操作规则不同,应先把新规则写清再比较。可以从一两个步骤手算开始,找出第一处差异,而不是只对照最后一个数值。全部中间记录都属于当前案例,不能直接当成其他场景的固定答案。