今天研究带纠错的位置流编码 结果不错
在使用3位编码 但是主机只发不动 前进一步 后退一步的情况下
我排除了格雷码 反正就0-7 8个数组的组合 量不大 直接用计算机计算所有的编码组合 硬算出一个误差最小的组合01236745
01236745 00-46-22-11 -- 2 2 1 11-57-33-00 -- 2 2 1 22-64-00-33 -- 2 2 1 33-75-11-22 -- 2 2 1 46-00-64-57 -- 2 2 1 57-11-75-46 -- 2 2 1 64-22-46-75 -- 2 2 1 75-33-57-64 -- 2 2 1
这个编码确定不是格雷码 甚至与原来的裸码相差不大 但是能做到 当有一位传错时 数字最多相差2 (这里是循环的 比如6到0 是两步)
对比之下的裸编码 数字可能相差到4
00-44-22-11 -- 4 2 1 11-55-33-00 -- 4 2 1 22-66-00-33 -- 4 2 1 33-77-11-22 -- 4 2 1 44-00-66-55 -- 4 2 1 55-11-77-44 -- 4 2 1 66-22-44-77 -- 4 2 1 77-33-55-66 -- 4 2 1
相差只有2 就保证了可以纠正偶尔的错误
比如前面成功传送位置 3 下一步传送 4 由于误码 最终变成了 6或者2
如果下次传输成功了 传输了5 那么过程可能是 365 或者 325 显然路径都是唯一的 6-5 2-5 都符合最短路径原则 临时的错误没有被积累
如果下次传输传回3 或者保持4 显然判断更轻松
当然如果主机不限于前进 后退一步 和不动 比如前进2步 那么误码可能没法被纠正 但是也应该损失更小
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |