NeurIPS 2026
A pendulum observed through Cartesian positions or video has a simple mechanical description in terms of angles, but those coordinates are not supplied with the observations. Structured Phase Space GAN (SPS-GAN) learns a distribution of motions together with a compact latent description of their dynamics. It combines conditional generation, port-Hamiltonian latent dynamics, and cyclic-coordinate regularization to generate trajectories or videos and reveal the active coordinates underlying the observed motion.
SPS-GAN starts with more latent coordinate–momentum pairs than the system needs, then regularizes their contribution to the dynamics. Given system information \(\xi\), such as identity or physical parameters, a phase-space map transforms a random motion code \(\epsilon_m\) into an initial state \(z_0=(q_0,p_0)=f(\epsilon_m,\xi)\). A port-Hamiltonian network evolves this state, and a decoder maps the resulting trajectory to Cartesian positions or video frames. Adversarial training makes the generated sequences match the observed distribution.
The mechanical principle. A coordinate \(q_i\) is cyclic when the Hamiltonian does not depend on it. In a conservative system this makes its conjugate momentum constant: \(\dot p_i=-\partial H_\theta/\partial q_i=0\). For dissipative or forced systems, momentum can change for other reasons. SPS-GAN separates these contributions through
\[\dot q=\nabla_p H_\theta,\qquad \dot p=-\nabla_q H_\theta-D_\phi\nabla_p H_\theta+F_\psi.\]
Here \(H_\theta(z,\xi)\) is the learned Hamiltonian, \(D_\phi(\xi)\succeq0\) models dissipation, and \(F_\psi(u,\xi)\) models the effect of input \(u\). Removing these non-conservative contributions isolates the Hamiltonian dependence on each coordinate:
\[r_i=\dot p_i+[D_\phi\nabla_p H_\theta-F_\psi]_i =-\frac{\partial H_\theta}{\partial q_i},\qquad L_{\mathrm{cyclic}}=\lambda_{\mathrm{cyclic}}\sum_i|r_i|.\]
This penalty encourages sparse dependence on the learned coordinates while the adversarial objective requires the model to reproduce the motion. Separate penalties on \(D_\phi\) and \(F_\psi\) discourage unnecessary dissipation and forcing. For conservative systems, both terms are set to zero.
We evaluate two linked questions: whether the learned coordinates expose the system's structure, and whether trajectories decoded from that representation follow the observed dynamics. The results below correspond to arXiv v3.
The main experiments start with 10 coordinate–momentum pairs. After training, we apply principal component analysis (PCA) to the learned coordinate trajectories \(q_{0:T}\) from 4,096 sampled rollouts. The smallest number of components explaining more than 95% of the variance matches the expected active dimension in all 11 evaluated settings (Table 4).
Dimension alone does not explain what a coordinate means. In the opening figure, varying one active PCA direction while holding the others and the momenta fixed reveals radial separation, orbital angle, or pendulum angle. The same procedure applied to a model trained on real single-pendulum video changes the generated pendulum angle:
On the two-body experiment, removing the cyclic-coordinate loss increases the recovered active dimension from 1 to 3 and raises trajectory MSE from \(3.07\times10^{-3}\) to \(4.40\times10^{-2}\). Removing the phase-space map or replacing the structured dynamics also worsens both measurements:
| SPS-GAN | Without cyclic loss | Without phase-space map | Dynamics replaced by SympNet | Dynamics replaced by GRU | |
|---|---|---|---|---|---|
| Trajectory MSE ↓ | \(\boldsymbol{3.07\times10^{-3}}\) | \(4.40\times10^{-2}\) | \(4.93\times10^{-2}\) | \(4.43\times10^{-3}\) | \(1.60\times10^{-1}\) |
| Active dimension (target: 1) | 1 | 3 | 7 | 2 | 3 |
SPS-GAN samples a motion rather than predicting from a prescribed initial condition. For evaluation, we initialize the simulator and predictive baselines from the first generated state and compare their rollouts. Under this protocol, SPS-GAN trained per system has the lowest MSE on four of five conservative systems. A single conditional model trained jointly on all five, cSPS-GAN, remains competitive with models trained on individual systems.
| Mass-spring | Single pend. | Double pend. | Two-body | Three-body | |
|---|---|---|---|---|---|
| SPS-GAN | \(6.16\times10^{-4}\) | \(\boldsymbol{4.29\times10^{-4}}\) | \(\boldsymbol{3.25\times10^{-2}}\) | \(\boldsymbol{3.07\times10^{-3}}\) | \(\boldsymbol{1.26\times10^{-3}}\) |
| cSPS-GAN (joint) | \(9.88\times10^{-4}\) | \(5.11\times10^{-4}\) | \(3.33\times10^{-2}\) | \(4.46\times10^{-3}\) | \(2.61\times10^{-3}\) |
| HNN | \(3.53\times10^{-4}\) | \(6.27\times10^{-4}\) | \(1.25\times10^{-1}\) | \(3.61\times10^{-3}\) | \(2.81\times10^{-3}\) |
| LatentODE | \(\boldsymbol{1.13\times10^{-4}}\) | \(9.27\times10^{-4}\) | \(4.66\times10^{-2}\) | \(1.98\times10^{-2}\) | \(1.37\times10^{-3}\) |
The mass-spring system is the exception: LatentODE achieves lower error. With dissipation and forcing enabled, SPS-GAN also has the lowest MSE in the damped-pendulum and forced-Duffing comparisons (Table 2).
On rendered videos, SPS-GAN has the lowest Fréchet Video Distance (FVD) among the compared models on all five systems. To check physical consistency separately, we extract particle centroids from generated frames and measure energy variation along the resulting trajectories:
| Mass-spring | Single pend. | Double pend. | Two-body | Three-body | |
|---|---|---|---|---|---|
| SPS-GAN | 25.63 | 40.57 | 24.12 | 87.12 | 89.08 |
| HGAN | 45.68 | 91.64 | 73.21 | 105.85 | 1981.10 |
| HGN | 385.08 | 688.12 | 331.94 | 830.91 | 451.40 |
| Energy variation from extracted trajectories (ΔE) | |||||
| SPS-GAN | 2.33% | 2.89% | 6.83% | 5.96% | 3.47% |
| Simulator videos | 1.64% | 2.62% | 6.32% | 6.11% | 3.57% |
The energy measurements are close to those obtained from simulator videos using the same extraction procedure, which provides a physical check alongside FVD.
For real pendulum videos, SPS-GAN captures the motion, while HGN collapses to a static frame and HGAN fails to reproduce the dynamics. The single-pendulum energy measurement is 2.9% for generated videos and 2.7% for the real recordings.
Joint conditional generation also supports variation in physical and visual parameters. Across the three variation settings below, cSPS-GAN has FVDs of 135.25–182.15, below the reported HGN scores even for individual fixed-parameter systems.
SPS-GAN assumes dynamics that admit a port-Hamiltonian representation. The coordinate sweeps and PCA results provide empirical evidence of interpretable, compact representations in the evaluated systems; they do not establish unique recovery of canonical coordinates for arbitrary dynamics. The trajectory comparisons test consistency from sampled initial states, and the multi-body dimension counts refer to reduced motion families: radial two-body dynamics and an equilateral three-body configuration.