{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/partially-observed-trajectory-inference-using","title":"Partially Observed Trajectory Inference using Optimal Transport and a Dynamics Prior","arxiv_id":"2406.07475","date":"2024-06-11","proceeding":null,"authors":["Anming Gu","Edward Chien","Kristjan Greenewald"],"abstract":"Trajectory inference seeks to recover the temporal dynamics of a population from snapshots of its (uncoupled) temporal marginals, i.e. where observed particles are not tracked over time. Lavenant et al. arXiv:2102.09204 addressed this challenging problem under a stochastic differential equation (SDE) model with a gradient-driven drift in the observed space, introducing a minimum entropy estimator relative to the Wiener measure. Chizat et al. arXiv:2205.07146 then provided a practical grid-free mean-field Langevin (MFL) algorithm using Schr\\\"odinger bridges. Motivated by the overwhelming success of observable state space models in the traditional paired trajectory inference problem (e.g. target tracking), we extend the above framework to a class of latent SDEs in the form of observable state space models. In this setting, we use partial observations to infer trajectories in the latent space under a specified dynamics model (e.g. the constant velocity/acceleration models from target tracking). We introduce PO-MFL to solve this latent trajectory inference problem and provide theoretical guarantees by extending the results of arXiv:2102.09204 to the partially observed setting. We leverage the MFL framework of arXiv:2205.07146, yielding an algorithm based on entropic OT between dynamics-adjusted adjacent time marginals. Experiments validate the robustness of our method and the exponential convergence of the MFL dynamics, and demonstrate significant outperformance over the latent-free method of arXiv:2205.07146 in key scenarios.","url_abs":"https://arxiv.org/abs/2406.07475v1","url_pdf":"https://arxiv.org/pdf/2406.07475v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"partially-observed-trajectory-inference-using","repo_url":"https://github.com/AnmingGu/partially-observed-traj-inference","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"state-space-models","task_name":"State Space Models"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2406.07475","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2406.07475"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/AnmingGu/partially-observed-traj-inference","reach":null}],"summary":{"ran":3,"ran_draft_wrong":3,"ran_honours":3,"ran_fixture":1,"unverified":2},"by_repo_kind":{"official":{"samples":12,"ran":10,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"0247e14f424d4f21","entry":"ConstrainLoss","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0247e14f424d4f21"}},{"code_sha256_prefix":"7c829308e62f8ff4","entry":"FitLoss","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7c829308e62f8ff4"}},{"code_sha256_prefix":"758720d8ba3137f9","entry":"H","repo":"anminggu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/anminggu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"758720d8ba3137f9"}},{"code_sha256_prefix":"e64e5799c6f5ba40","entry":"H_logdomain","repo":"anminggu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/anminggu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e64e5799c6f5ba40"}},{"code_sha256_prefix":"ab9d6403b7651b26","entry":"H_logdomain","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ab9d6403b7651b26"}},{"code_sha256_prefix":"6fb57a4965a8add9","entry":"SinkhornLoss","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6fb57a4965a8add9"}},{"code_sha256_prefix":"bdf3301d00f12483","entry":"proxdiv_balanced","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bdf3301d00f12483"}},{"code_sha256_prefix":"507016d797319fab","entry":"proxdiv_unbalanced","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"507016d797319fab"}},{"code_sha256_prefix":"6cc2d823ffdf2166","entry":"round_coupling","repo":"anminggu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/anminggu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6cc2d823ffdf2166"}},{"code_sha256_prefix":"8db2cbf5a8028bcc","entry":"round_coupling","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8db2cbf5a8028bcc"}},{"code_sha256_prefix":"36fd2d25d764de6c","entry":"PathsLoss","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"36fd2d25d764de6c"}},{"code_sha256_prefix":"51e66e3cde8768f7","entry":"TrajLoss","repo":"AnmingGu/partially-observed-traj-inference","repo_kind":"official","path":"models.py","file_url":"https://github.com/AnmingGu/partially-observed-traj-inference/blob/HEAD/models.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"51e66e3cde8768f7"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}