Skip to content

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/mbeta = 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,由 betabeta_2 反推 l, mu, F。Notebook 中用 PyTorch 小模型表示这些参数,并最小化预测加速度与观测加速度的 MSE。参数确定后,用 ODE 积分预测后续 theta,再求下一次过零/目标时间。

可选/多种解法

线性最小二乘:因为公式对 alpha,beta 近似线性,速度最快。

可学习参数模型:用 torch 优化少量参数,写法直观。

黑盒时间序列模型:可行但不推荐,数据少且不如物理模型可解释。

特殊技巧

外力前后必须分开拟合,否则参数会折中失真。数值微分容易放大噪声,可先平滑角度或用已给加速度列。过零时间可在积分轨迹中线性插值,而不是只取最近采样点。

调参优化

这题的“调参”主要是数值拟合稳定性,而不是模型规模。优先调外力前后分段边界、角度/速度平滑窗口、微分步长、拟合时是否丢弃边界噪声点,以及 ODE 积分步长;这些参数会直接影响 alpha,beta 和过零时间。若用 PyTorch 优化少量物理参数,可调学习率、迭代次数和正值参数化方式,建议同时和线性最小二乘结果互相校验。最终预测时间对积分误差敏感,验证时应比较不同步长下结果是否稳定。

注意事项

题面独立描述缺失,具体提交要求以 notebook Submission 部分为准。物理参数应保持正值,可用 softplus 或对数参数化。单位和时间步要一致。

推广意义

这题展示了竞赛中物理模型常常胜过黑盒模型。类似思路可用于机械系统辨识、传感器校准、轨迹预测和科学机器学习。