{"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-2605-21311","title":"DeCoR: Design and Control Co-Optimization for Urban Streets Using Reinforcement Learning","arxiv_id":"2605.21311","date":"2026-05-20","proceeding":null,"authors":["Bibek Poudel","Lei Zhu","Kevin Heaslip","Sai Swaminathan","Weizi Li"],"abstract":"Modern vision systems can detect, track, and forecast urban actors at scale, yet translating perception outputs to urban design remains limited. We introduce DeCoR, a two-stage reinforcement learning framework that leverages flow observations to co-optimize crosswalk layout and network-level signal control. The design stage encodes the pedestrian network as a graph and learns a generative policy that parameterizes a Gaussian mixture model over crosswalk location and width, from which new crosswalks are sampled. For each layout, a shared control policy learns adaptive signal timings to minimize joint pedestrian and vehicle delay. On a 750 m real-world urban corridor with demand sensed from video and Wi-Fi logs, DeCoR learns a layout that reduces pedestrian arrival time to their nearest crosswalk by 23% while using fewer crosswalks than existing configurations. On the control side, DeCoR reduces pedestrian and vehicle wait time by 79% and 65%, respectively, relative to fixed-time signalization. Further, the control policy generalizes to demands outside of training and is robust to layout changes without retraining.","url_abs":"https://arxiv.org/abs/2605.21311","url_pdf":"https://arxiv.org/pdf/2605.21311","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=2605.21311","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2605.21311"}},"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/poudel-bibek/DeCoR","reach":null}],"summary":{"ran":11,"unverified":6},"by_repo_kind":{"found_in_text":{"samples":17,"ran":11,"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":"c6d78e13dbc2beec","entry":"classify_and_return_args","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"config.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/config.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c6d78e13dbc2beec"}},{"code_sha256_prefix":"b42728badf61b2c7","entry":"collate_fn","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"ppo/ppo_utils.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/ppo/ppo_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b42728badf61b2c7"}},{"code_sha256_prefix":"33464de5e2fc2035","entry":"compute_assignments","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/pedestrian_flow_plot.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/pedestrian_flow_plot.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"33464de5e2fc2035"}},{"code_sha256_prefix":"58645dd4ff0dbf49","entry":"convert_demand_to_scale_factor","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"58645dd4ff0dbf49"}},{"code_sha256_prefix":"07a448774c79bcbc","entry":"count_consecutive_ones_filtered","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/training_plots.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/training_plots.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"07a448774c79bcbc"}},{"code_sha256_prefix":"e7e9998c500f2488","entry":"gaussian_mixture_density","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/create_gmm_animation.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/create_gmm_animation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e7e9998c500f2488"}},{"code_sha256_prefix":"b9d22908aba5856c","entry":"get_averages","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b9d22908aba5856c"}},{"code_sha256_prefix":"d90a784ee56240f3","entry":"layer_init","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"ppo/models.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/ppo/models.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d90a784ee56240f3"}},{"code_sha256_prefix":"6596334c7cb4d1d1","entry":"load_pickle_with_cpu_fallback","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/create_gmm_animation.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/create_gmm_animation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6596334c7cb4d1d1"}},{"code_sha256_prefix":"a8fe218a1db0a77a","entry":"load_policy","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a8fe218a1db0a77a"}},{"code_sha256_prefix":"b7b3ad737a129d9b","entry":"smoothstep","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/create_gmm_animation.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/create_gmm_animation.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b7b3ad737a129d9b"}},{"code_sha256_prefix":"de46d2d2d409c331","entry":"extract_designs","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/pedestrian_flow_plot.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/pedestrian_flow_plot.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":"de46d2d2d409c331"}},{"code_sha256_prefix":"63c711dfb93b8999","entry":"gmm_entropy_legendre","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"ppo/ppo_utils.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/ppo/ppo_utils.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":"63c711dfb93b8999"}},{"code_sha256_prefix":"92d839b7350cb5cf","entry":"gmm_entropy_monte_carlo","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"ppo/ppo_utils.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/ppo/ppo_utils.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":"92d839b7350cb5cf"}},{"code_sha256_prefix":"03d92f4c630b4dbf","entry":"plot_avg_consecutive_ones","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/training_plots.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/training_plots.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":"03d92f4c630b4dbf"}},{"code_sha256_prefix":"c8a10547332a9657","entry":"plot_consolidated_insights","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/training_plots.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/training_plots.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":"c8a10547332a9657"}},{"code_sha256_prefix":"cf23f881d4d7c009","entry":"plot_demand","repo":"poudel-bibek/DeCoR","repo_kind":"found_in_text","path":"plots/result_plots.py","file_url":"https://github.com/poudel-bibek/DeCoR/blob/HEAD/plots/result_plots.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":"cf23f881d4d7c009"}}]},"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}