Hamiltonian Pocket learns pendulum dynamics from state/derivative observations.
The structured model predicts one scalar Hamiltonian and obtains time derivatives
through the symplectic gradient. A parameter-matched MLP directly predicts the two
derivatives. Both train on the same samples and use the same RK4 solver at test time.
The benchmark measures local derivative error, long-horizon state error, and drift
in the true physical energy. It tests whether encoding conservative mechanics in the
model helps trajectories remain physically plausible.
Verified results
Both models trained for 3,000 steps on 20,000 states. Long-horizon evaluation used
128 new initial conditions, 400 RK4 steps, and dt=0.05.
Metric
Hamiltonian network
Black-box vector field
Parameters
4,417
4,482
Held-out derivative MSE
4.84e-6
1.13e-5
Full-trajectory MSE
49.00
119.89
Final-state MSE
201.84
439.03
Final absolute true-energy drift
2.95
343.11
The Hamiltonian inductive bias reduced final energy drift by about 116 times. It
did not eliminate drift in the true physical energy: the learned scalar Hamiltonian
is an approximation, and small derivative errors accumulate over 20 simulated
seconds.
Reproduce
uv run python projects/hamiltonian-pocket/train.py