GraphTransportation

GraphTransportation studies discrete optimal transport on graphs: computing transport geodesics, Wasserstein barycenters (Fréchet means), and barycentric coordinates for probability measures supported on a fixed graph, following the discrete transport-geometry framework of Erbar, Rumpf, Schmitzer, and Simon.

The original implementation is a Julia package (GraphTransportation.jl); an active project is porting the entropic (Sinkhorn) side of it to Python, aimed at being directly usable in machine-learning pipelines -- e.g. as a differentiable layer or a graph/dataset utility, rather than a 1:1 translation of the Julia API.

The interactive demo on this site lets you explore a barycentric coding model on a small graph directly in the browser.