Papers for

game physics engineers

Papers whose findings have a practical use for this group, as judged from the abstract. Open a paper to read what it means in practice.

Adaptive graphs improve particle simulation near complex areas

Adaptive Interaction Graphs for Particle Simulation

Abstract: Learned particle simulators based on graph neural networks achieve strong one-step accuracy, but errors compound over long horizons. An underexplored variable is the interaction graph: existing methods fix its topology via k-nearest neighbors or a static radius rule, regardless of local model confidence. We propose making this graph adaptive: a per-particle variance head, trained jointly with the acceleration head under a heteroscedastic Gaussian NLL loss, drives a trajectory in which high-uncertainty particles receive an expanded neighborhood. This is done at little extra inference cost by using the previous step's uncertainty estimate. A key discovery is that the variance head learns a meaningful notion of uncertainty: high-variance particles concentrate near complex regions, such as splash zones or free surfaces. When this signal drives graph topology, the resulting AdaptGNS simulator achieves a strict Pareto improvement on WaterDrop and a modest gain on Sand. Given the model's stronger performance on WaterDrop, we hypothesize that adaptive graphs are most useful when complexity is concentrated in space. Our code can be found at https://github.com/aidenzhou8/AdaptGNS.

Fri 25 SeptMachine LearningComputational Engineering, Finance, and Science
The gist
Simulating particles like water or sand on computers involves predicting how they move and interact over time. The authors found that using a fixed way to decide which particles influence each other can cause errors to build up. They developed a method where the connections between particles adapt based on uncertainty, paying more attention to tricky areas with lots of movement, like splashes. This approach helps improve simulation accuracy, especially in complex regions.
Open → 2609.30822v1