{"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/arxiv-2607-03626","title":"Reflected Schrödinger Bridge Matching","arxiv_id":"2607.03626","date":"2026-07-03","proceeding":null,"authors":["Marcus Häggbom","Viktor Nilsson","Pierre Nyquist","Joakim andén"],"abstract":"Recent advances in generative modeling have enabled the efficient computation of Schrödinger bridges (SB) in high-dimensional settings by leveraging partially simulation-free training methods inspired by flow matching. However, these have not covered SBs with reflecting dynamics, a useful model choice with built-in guarantees that generated samples stay in the data domain. Existing alternatives for reflected SBs instead rely on more complex training based on forward--backward SDE theory, requiring expensive higher-order derivatives and sampling entire paths during training. In this article, we introduce a partially simulation-free framework that allows reflected SBs to be trained similarly to flow matching, using a new sampling method and regression target. We demonstrate our results by coupling pairs of well-known high-dimensional image datasets. Using reflected dynamics incurs negligible additional wall-clock time during both training and inference while maintaining or slightly improving generative performance.","url_abs":"https://arxiv.org/abs/2607.03626","url_pdf":"https://arxiv.org/pdf/2607.03626","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2607.03626","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2607.03626"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/viktor765/rsbm","reach":null}],"summary":{"ran":10,"unverified":3},"by_repo_kind":{"found_in_text":{"samples":13,"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":13,"samples":[{"code_sha256_prefix":"198df12523d1f3fc","entry":"file_enum_format","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/evaluation/common.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/evaluation/common.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"198df12523d1f3fc"}},{"code_sha256_prefix":"4ec58da4a3af6965","entry":"get_pretrain_lr","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/rsbm/trainers.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/rsbm/trainers.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"4ec58da4a3af6965"}},{"code_sha256_prefix":"af0b1361d359215d","entry":"get_toy2d_eval_conf","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/evaluation/common.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/evaluation/common.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"af0b1361d359215d"}},{"code_sha256_prefix":"ecba2f0806f227a8","entry":"load_aspect_image","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/image_density_segmentation.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/image_density_segmentation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"ecba2f0806f227a8"}},{"code_sha256_prefix":"f86e1fdda8cf5c73","entry":"make_broadcastable","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/utils.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"f86e1fdda8cf5c73"}},{"code_sha256_prefix":"dcbac8f0b1152e39","entry":"next_filename","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/evaluation/common.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/evaluation/common.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"dcbac8f0b1152e39"}},{"code_sha256_prefix":"d8952f39d0695dec","entry":"postprocessing","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/data_utils.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/data_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"d8952f39d0695dec"}},{"code_sha256_prefix":"ff2e0e1d265b91a2","entry":"resize_aspect","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/data_utils.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/data_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"ff2e0e1d265b91a2"}},{"code_sha256_prefix":"b064bf449010229c","entry":"robust01","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/image_density_segmentation.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/image_density_segmentation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"b064bf449010229c"}},{"code_sha256_prefix":"09c06a4ba5a8ab50","entry":"segment_bridge_image","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/image_density_segmentation.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/image_density_segmentation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"09c06a4ba5a8ab50"}},{"code_sha256_prefix":"eaec6e72f41c236b","entry":"create_dataloaders","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/data_utils.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/data_utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"eaec6e72f41c236b"}},{"code_sha256_prefix":"5fead7a1ddde3e89","entry":"create_generators","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/utils.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"5fead7a1ddde3e89"}},{"code_sha256_prefix":"03083d33c6dd49f6","entry":"create_optimizer","repo":"viktor765/rsbm","repo_kind":"found_in_text","path":"src/rsbm/trainers.py","file_url":"https://github.com/viktor765/rsbm/blob/HEAD/src/rsbm/trainers.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"03083d33c6dd49f6"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.LG","source":"arxiv_2026.jsonl"},"syntology_extracted_results":null}