按住鼠标朝它挥下去 · 它按影像扩张速率决定何时起飞:拍头多大、挥多快、斜不斜,都算在里面
两只苍蝇用的是同一套物理与判定,差别只在「它怎么躲」:左边按预先算好的路线,右边按我们写的规则。
…
…
连接组的(= 实验数据说了算)
…
我们写的(= 我们写的规则说了算)
…
…
…
四档挥速。自检基线=脚本自动挥的拍,不是人打的(用来当参照;由 tools/probe_browser.js 在本页同一份代码上跑出,随页面一起打包);
本次会话=你刚打的。两列并排,谁也不顶替谁。
最后一列是本件新增的 A vs B:同一基线上两臂命中率的差与 Fisher 精确检验(双侧)p 值
(由 tools/tier_compare.py 算,内联进页面的那份带着源基线文件的 sha256,对不上构建即拒)。
| 挥速档 | 区间 (u/s) | A 基线 n/中/率 | A 本次 n/中/率 | B 基线 n/中/率 | B 本次 n/中/率 | 基线 A vs B(Fisher p) |
|---|---|---|---|---|---|---|
| 合计 | — | — | — | — | — | — |
…
每条 = 一次挥拍:什么时候挥的、挥多快、量化误差多大、苍蝇当时在干什么、记录说会怎样 vs 实际怎样。最新在最上面。
| # | 苍蝇 | t (s) | 挥速 u/s | 档 | d0 u | 量化误差 | 触发条件 | 表延迟(A)/ 规则延迟(B) ms | 记录自报 | 真实结局 | 苍蝇动作 |
|---|
(还没有记录)
evidence/two-state-after.json 的 strokes 与 judge_probe)。tools/make_placeholder_record.py:本版左边苍蝇「起跳之后怎么飞」的回放仍来自它(判据不是——判据在表里)。本轮之前有两条互相抢同一个槽位的指令(「把拍头尺寸/挥速/角度变成回路的真实输入」与
「把引擎记录接进 A 臂」)。裁决是:运行时判据 = 回路编译出的对照表
(flytakeoff/v1:θ̇ 阈值与 gf_delay 是回路仿真锚点的统计量,而且支持自由输入——拍头多大、挥多快、斜不斜,
当场算进 θ̇);引擎产出的原始记录 = 来源物证,留在 engine/results/flyarm_v1/ 侧,
不打进这个包(接进来包体会到 315.6 KB,撞破 300 KB 闸:记录 66% 的体积是 trace.samples)。
所以本页 A 臂「什么时候起跳」永远是表说了算,记录只影响起跳之后的回放。
哪天要把回放也换成引擎记录,仍然是一条命令
python3 tools/connect_record.py --src <引擎记录>(校验不过就拒收),
届时台面角标、顶部标注与 §02 的链条会自动切到接通口径——判据那一半不会变。
接口与接线条件写在 records/README.md。
…
| 拍头 R(接触) | 角度 φ | 径向速度 u/s | 判据 | 越阈时刻 ms | θ̇/θ̈ | 离地延迟 ms | 起飞 ms | 到拍 ms | 余量 ms | 结局 |
|---|
…
…
| 挥速档 | 脚本速度 u/s | 越阈距离 x* u | 越阈处 θ̈ rad/s² | 脉冲律 Δ ms | 总延迟 gf_delay+Δ ms |
|---|
…