Appearance
APOAI 2025 Mock Pendulum
- 来源:
noai-mis/roai-solved/international-contests/apoai/2025-mock/04-pendulum.ipynb - 类型:Control / Simulation
- 原始资料:solution notebook
- 题面完整性:题面缺失;notebook 中有物理公式和解法
- 解法资料完整性:有解法 notebook
题面大意
根据单摆观测数据估计物理参数,并预测后续事件/状态。Notebook 给出的理论基础是角加速度公式:
d2theta/dt2 = - alpha * dtheta/dt - beta * sin(theta)
其中 alpha = mu/m,beta = g/l;在某个外力施加时间 t_F put 后,beta 变为 g/l + F/(m l)。已知 m=1, g=9.8,模型需要估计摆长 l、空气阻力 mu、外力大小 F,并用 ODE 预测。
数据特点
数据是时间序列物理轨迹,包含角度、角速度/角加速度等可计算量。物理方程强约束明显,样本不需要大模型,只要拟合少数参数。外力前后动力学不同,应分段建模。
考点
核心考点是物理先验驱动建模。相比黑盒回归,直接利用微分方程估计参数更稳、更可解释。任务还考察数值微分、ODE 积分和事件时间预测。
涉及知识点
- 单摆阻尼运动。
- 参数估计与最小二乘/MSE。
- ODE 求解。
- 分段动力学。
- Physics-informed neural network 思想。
解法思路
从观测轨迹计算 theta, omega, acc。外力前用 acc = -alpha*omega - beta*sin(theta) 拟合 alpha,beta;外力后拟合新的 beta_2,由 beta 和 beta_2 反推 l, mu, F。Notebook 中用 PyTorch 小模型表示这些参数,并最小化预测加速度与观测加速度的 MSE。参数确定后,用 ODE 积分预测后续 theta,再求下一次过零/目标时间。
可选/多种解法
线性最小二乘:因为公式对 alpha,beta 近似线性,速度最快。
可学习参数模型:用 torch 优化少量参数,写法直观。
黑盒时间序列模型:可行但不推荐,数据少且不如物理模型可解释。
特殊技巧
外力前后必须分开拟合,否则参数会折中失真。数值微分容易放大噪声,可先平滑角度或用已给加速度列。过零时间可在积分轨迹中线性插值,而不是只取最近采样点。
调参优化
这题的“调参”主要是数值拟合稳定性,而不是模型规模。优先调外力前后分段边界、角度/速度平滑窗口、微分步长、拟合时是否丢弃边界噪声点,以及 ODE 积分步长;这些参数会直接影响 alpha,beta 和过零时间。若用 PyTorch 优化少量物理参数,可调学习率、迭代次数和正值参数化方式,建议同时和线性最小二乘结果互相校验。最终预测时间对积分误差敏感,验证时应比较不同步长下结果是否稳定。
注意事项
题面独立描述缺失,具体提交要求以 notebook Submission 部分为准。物理参数应保持正值,可用 softplus 或对数参数化。单位和时间步要一致。
推广意义
这题展示了竞赛中物理模型常常胜过黑盒模型。类似思路可用于机械系统辨识、传感器校准、轨迹预测和科学机器学习。