{"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/wasserstein-gradient-flows-of-mmd-functionals","title":"Wasserstein Gradient Flows of MMD Functionals with Distance Kernel and Cauchy Problems on Quantile Functions","arxiv_id":"2408.07498","date":"2024-08-14","proceeding":null,"authors":["Richard Duong","Viktor Stein","Robert Beinert","Johannes Hertrich","Gabriele Steidl"],"abstract":"We give a comprehensive description of Wasserstein gradient flows of maximum mean discrepancy (MMD) functionals $\\mathcal F_\\nu := \\text{MMD}_K^2(\\cdot, \\nu)$ towards given target measures $\\nu$ on the real line, where we focus on the negative distance kernel $K(x,y) := -|x-y|$. In one dimension, the Wasserstein-2 space can be isometrically embedded into the cone $\\mathcal C(0,1) \\subset L_2(0,1)$ of quantile functions leading to a characterization of Wasserstein gradient flows via the solution of an associated Cauchy problem on $L_2(0,1)$. Based on the construction of an appropriate counterpart of $\\mathcal F_\\nu$ on $L_2(0,1)$ and its subdifferential, we provide a solution of the Cauchy problem. For discrete target measures $\\nu$, this results in a piecewise linear solution formula. We prove invariance and smoothing properties of the flow on subsets of $\\mathcal C(0,1)$. For certain $\\mathcal F_\\nu$-flows this implies that initial point measures instantly become absolutely continuous, and stay so over time. Finally, we illustrate the behavior of the flow by various numerical examples using an implicit Euler scheme, which is easily computable by a bisection algorithm. For continuous targets $\\nu$, also the explicit Euler scheme can be employed, although with limited convergence guarantees.","url_abs":"https://arxiv.org/abs/2408.07498v2","url_pdf":"https://arxiv.org/pdf/2408.07498v2.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":"wasserstein-gradient-flows-of-mmd-functionals","repo_url":"https://github.com/ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[],"methods":[{"method_slug":"focus","method_name":"Focus"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2408.07498","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2408.07498"}},"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/ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line","reach":null}],"summary":{"ran_violates":1,"ran_draft_wrong":3,"ran_honours":1},"by_repo_kind":{"official":{"samples":5,"ran":5,"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":5,"samples":[{"code_sha256_prefix":"2c6b531676da988c","entry":"approx_density","repo":"ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line","repo_kind":"official","path":"implit_with_Dirac_at_Zero_target.py","file_url":"https://github.com/ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line/blob/HEAD/implit_with_Dirac_at_Zero_target.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"2c6b531676da988c"}},{"code_sha256_prefix":"6b19d865ee4f1ad4","entry":"bisection","repo":"ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line","repo_kind":"official","path":"Euler_schemes.py","file_url":"https://github.com/ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line/blob/HEAD/Euler_schemes.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"6b19d865ee4f1ad4"}},{"code_sha256_prefix":"d8798c632737c3cd","entry":"explicit_Euler","repo":"ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line","repo_kind":"official","path":"Euler_schemes.py","file_url":"https://github.com/ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line/blob/HEAD/Euler_schemes.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"d8798c632737c3cd"}},{"code_sha256_prefix":"a1e6894199448722","entry":"implicit_Euler","repo":"ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line","repo_kind":"official","path":"Euler_schemes.py","file_url":"https://github.com/ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line/blob/HEAD/Euler_schemes.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"a1e6894199448722"}},{"code_sha256_prefix":"35729dc94b6873e8","entry":"soft_shrinkage","repo":"ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line","repo_kind":"official","path":"implit_with_Dirac_at_Zero_target.py","file_url":"https://github.com/ViktorAJStein/MMD_Wasserstein_gradient_flow_on_the_line/blob/HEAD/implit_with_Dirac_at_Zero_target.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"35729dc94b6873e8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}