三十八、 尺子修好了 —— 而她这次守住了

★★★★★★★ 2.3k 字 · 源文件 进度.md 第 1961 行起 · goal ruler optim ground memory

⚠️ 本节末尾那句"她这次守住了"是【1–2 个种子】的读法。 补齐多种子后它被改写了 —— 请看第三十九节(收口),并以那一节为准。 ★ 本节保留,因为它记录了"第一个种子看起来守住"这个现场。

#★ 先说结论

★★★★★ 上一个目标说"她学得会,但留不住"。 这一个目标把尺子修好之后,两条臂【都守住了】 —— 包括原来会崩到 0% 的那条(β→0.0,完全没有老师示范)。

#★★★ 修了什么(两个缺陷)

#缺陷修法
1★★ "到达"的容差正好等于一步的位移(4px vs 4px)→ 判定由半个像素决定★ 新增 --arrive-px,这次用 12px(3 倍)
2★★ "撤掉进度条"根本不是撤掉(进度条累计 0.75,关掉后补 1.0)★ --arrive-bonus 0.1(是进度条的 13%)→ 干预真的生效

#★★★★★ 修好之后的读数(每个检查点都重新加载、在同一批题上重考)

臂配置最会的时候训练结束时比值
F2_A有老师(β→0.4),进度条全程开40.6%31.2% / 1.69 格1.30 守住
★★ F2_B★ 没有老师(β→0.0),进度条全程开★ 44.8% / 1.90 格(就是末点)44.8%★★ 1.00 守住
★ 瞎猜(随机摇杆)—5.6%——

★★★★★ -> F2_B 是【完全没有老师示范】的那条线,它只靠奖励学习, 而且一路涨到末点(0% → 15.6% → 40.6% → 44.8%),没有崩。

★★★ 对照:上一个目标里同配置的 B 是"最好 35.9% → 末点 0.0%"(崩了)。

#★★★★ 但"哪一处修复救了它"分不开 —— 这是我必须认的

这次同时改了两件事:arrive_px(尺子)与 arrive_bonus(奖励幅度 = 训练条件)。

★★★ -> 所以"是谁救了 B"分不开。这违反了我自己"一次只改一个变量"的铁律。

★★ 可复用的做法:把"修测量"与"改条件"分成两个目标做; 如果不得不同时做,就把这个混淆写在结论的【第一行】。

#★★★★★ 一个我自己发现的设计缺口(已补第五臂)

四臂的进度条都是"第 600 步才关",所以每一臂都先享受了 600 步的密集信号。

臂进度条在学习期可用?老师
A / B✅ 全程有 / 无
C / D★ ✅ warmup 期有 / 无
★★ F2_E(新)★★ ❌ 从第 1 步就关★★ 无

★★★ -> "撤掉密集信号之后她还能不能学会"这个问题,四臂里一条也没测到。 而我此前把那个实验叫做"支架撤除实验"。

★★ F2_E 就是补这个缺口的那一条(已武装、正在排队)。

#★★ 她学到的永远是【两条】指令

指令F2_AF2_B上一轮 C(最强臂)
左100%100%0%
下25%79%100%
上0%0%100%
右0%0%75%

★★★ -> "哪两条"在不同跑次间会换,但"只有两条"看起来是一致的。 ★★ 这更像是【覆盖不足/多任务干扰】,而不是【记不住】。

#★★ 顺带更正了上一轮的一条错误结论

我此前写"一个完美的朝目标策略 200 回合到位 0 次"(还写进了 PROJECT.md)。 ★ 实测:修正后的策略在每个容差下都是 100.0%。 ★ 那个 0 次是【我的控制器有缺陷】(它把"命令摇杆 0"当成"停下",而方块会停在离目标 21px 处)。

#★ 三个我这一轮自己犯的错(都留了现场)

#错教训
1★★ 拿"中途点"下结论(F2_A 还没跑完就说"形状不变")★ 提前宣布成功比提前宣布失败更危险,因为没人会去复核好消息
2★★ 检测器匹配了自己(用 *F2_* 查命令行,而它自己的命令行里就含 F2_*)★ 自我匹配:测量工具出现在它自己的测量里
3★ 把中文注释写进 .ps1(而这条规矩项目付过四次代价)★ 已写脚本自动剥离

★ 一句话:

★★★ 尺子修好了,她这次守住了;但"是尺子还是奖励幅度"分不开, 而"没有进度条能不能学会"这个问题要等第五臂。


← 返回《进度.md》目录