# L0-E · 当输入掩盖了参数的影响

L0 展示了信息充分时，匹配模型可以恢复惯量和阻尼。本配套实验问一个更难的问题：如果输入没有显露参数效应，即使数据很多，参数仍会不会约束得很弱？

固定运行器和报告已经给出这份对比。两次拟合都恢复了无噪声教师系统，宽频输入的局部敏感度条件更好。这是对当前匹配系统的证据，不能保证慢输入一定失败，也不能保证迁移到硬件。

## 样本更多不保证信息更多 {#failure}

想象采集一段很长、速度始终接近某个值的慢运动。拟合损失可能很小，因为模型很好地预测了这个狭窄行为。但惯量通过加速度显现，黏性阻尼通过速度显现；如果加速度几乎不变，多组参数仍可能合理。

先预测：更宽频带并包含换向的输入会改变什么。它可能分开两个效应，也可能超出预期工作范围。信息量与安全范围都是实验设计约束。

## 固定 L0 的边界 {#boundary}

沿用匹配的 L0 系统：

$$
J\ddot q + b\dot q = u.
$$

拟合输入和理想的 $q$、$\dot q$ 观测公开。对比中固定 Student、估计器、边界、目标尺度、初始状态和最终留出多正弦输入，只改变拟合激励。Oracle 参数仍然只用于评估。

必须保持这种隔离。如果同时加入噪声、改变估计器或扩大模型，差异就无法归因于激励。

## 比较慢输入与宽频激励 {#comparison}

使用相同的已声明幅值和时长预算：

| 拟合激励 | 预期信息 | 需要记录 |
|---|---|---|
| 慢速/窄频带输入 | 加速度变化小 | 速度和加速度覆盖 |
| 更宽频带并含换向的扫频 | 更不同的速度/加速度模式 | 频率、状态覆盖和指令范围 |

两次拟合都在看到结果前选定的同一份最终留出多正弦上评分。报告实际状态覆盖，不能假定相同的指令预算就等价于相同信息量。

两次都固定 q(0)=0 rad、速度为 0 rad/s；初始模型 (J,b)=(0.095,0.018)，边界为 J∈[0.01,0.15] kg m²、b∈[0.000001,0.2] N m s/rad。相同的 L0 仿真器和有界最小二乘设置仅接收拟合记录；全部拟合结束后才生成留出观测。频率预设根据拟合侧覆盖和敏感度冻结，没有根据最终分数挑选。

<figure class="clip"><video controls playsinline poster="../../../demos/manim/rendered/l0-excitation.png" preload="metadata"><source src="../../../demos/manim/rendered/l0-excitation.mp4" type="video/mp4"/><track kind="subtitles" label="English" src="../../site/subtitles/l0-excitation.en.vtt" srclang="en"/><track default kind="subtitles" label="中文" src="../../site/subtitles/l0-excitation.zh-CN.vtt" srclang="zh-CN"/></video><figcaption>哪种输入更能分开效应？</figcaption><details><summary>查看视频说明</summary><p>两次使用相同的力矩峰值、时长、模型、尺度和留出运动，只改变拟合激励。</p><p>慢输入的损失谷更长；宽频输入有清楚的加速度换向和更好的局部 Jacobian 条件。</p><p>两次无噪声拟合都恢复并通过留出预测。敏感度较弱提示改进实验，不等于优化失败。</p></details></figure>

## 阅读本次仿真证据 {#evidence}

报告使用 0.01 s 采样、8 s、800 个样本，相同初始状态、边界、初始模型、0.8 N m 采样力矩峰值、固定输出尺度（1 rad、1 rad/s）和同一份留出多正弦。慢扫频为 0.005–0.015 Hz；宽频扫频为 0.15–3 Hz。

![输入、覆盖与尺度化敏感度对比](../../../reports/l0_excitation/slow_narrow_vs_broad.png)

慢记录的位置范围是 0…35.608 rad，宽频记录是 0…7.577 rad；大转角只适用于本例无重力、无限位的理想转子。慢记录的速度范围为 0…11.763 rad/s、加速度 RMS 为 1.609 rad/s²；宽频记录为 −0.953…6.324 rad/s、加速度 RMS 为 8.470 rad/s²。尺度化敏感度最小奇异值分别为 0.494 和 1.218；条件数分别为 11.81 和 1.90。这是局部条件性诊断，不是置信区间。

![本次仿真损失等高线](../../../reports/l0_excitation/excitation_loss_contours.png)

等高线使用相同无量纲坐标和拟合实际使用的残差目标。慢输入有更长的损失谷；宽频输入的区域更紧凑。

![每种输入的九个声明起点](../../../reports/l0_excitation/multistart_estimates.png)

18 个声明起点全部收敛到 J = 0.065、b = 0.055，误差在浮点容差内。同一份留出多正弦的位置 RMSE 对两种拟合都约为 2.4 × 10⁻¹⁴ rad。这是无噪声下的成功恢复，因此诚实结论是：理想观测中，敏感度较弱可以与参数恢复同时出现。

首次运行先执行 `python -m pip install -r requirements.txt`，然后在仓库根目录运行 `python -m synthetic.l0_excitation --output-dir reports/l0_excitation`。[完整报告](../../../reports/l0_excitation/report.zh-CN.md)包含[原始数据](../../../reports/l0_excitation/metrics.json)和[资源记录](../../../reports/l0_excitation/runtime.json)。完整运行实测 8.60 秒、峰值 RSS 143.32 MiB（Linux x86_64、Python 3.13.2、CPU）；预留预算 60 秒、512 MiB，无需 GPU。要把这些视图放在一起看：

- 敏感度弱提示数据限制，不自动说明优化失败；
- 细长损失谷表示多组参数行为相近；
- 留出误差检验这次激励是否支持预测；
- 换输入后结果改变，说明实验发生了变化，不是普遍设计定律。

如果用最终结果选择输入预设或目标函数，这份结果就成为开发数据，需要新的最终评估。

## 想一想 {#exercise}

回看覆盖图中间一行与损失等高线：哪份输入有加速度换向？哪条损失谷更细长？再读多初始点图。能否据此声称慢输入没有恢复惯量？下一次采集要改善参数分离，应改变什么？

<details markdown="1">
<summary>查看参考思路</summary>

右侧宽频输入跨越正负加速度，左侧慢输入只有正加速度；慢输入的损失谷更细长，条件数 11.81 大于 1.90。如果下一次实验需要分离参数，可选择包含换向的宽频输入，同时核对更高加速度是否符合约束。不能声称慢输入失败：18 个起点全部恢复，两种拟合都通过留出预测。慢输入反而有更大的位置和速度范围，所以“宽频”不等于所有状态范围都更大。如果未来选择使用留出结果，应另留新的最终运行。
</details>

如果还不能在两种输入中选择，先检查缩放后的敏感度和状态覆盖，再看留出损失。当下一次输入改变了独立的运动特征时再继续。

## 这个实验不能证明什么 {#limits}

本对比只研究理想观测和匹配双参数模型下的激励。敏感度弱不证明结构上不可辨识，宽频拟合成功也不保证硬件可辨识。噪声与预处理留给 L1-O，多体激励在 L2 回来。

继续阅读 [K2 · 从运动偏差定位动力学项](../k2/index.zh-CN.md) 和 [K3 · 从控制指令追踪到关节力矩](../k3/index.zh-CN.md)。
