{"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/learning-to-solve-routing-problems-via","title":"Learning to Solve Routing Problems via Distributionally Robust Optimization","arxiv_id":"2202.07241","date":"2022-02-15","proceeding":null,"authors":["Yuan Jiang","Yaoxin Wu","Zhiguang Cao","Jie Zhang"],"abstract":"Recent deep models for solving routing problems always assume a single distribution of nodes for training, which severely impairs their cross-distribution generalization ability. In this paper, we exploit group distributionally robust optimization (group DRO) to tackle this issue, where we jointly optimize the weights for different groups of distributions and the parameters for the deep model in an interleaved manner during training. We also design a module based on convolutional neural network, which allows the deep model to learn more informative latent pattern among the nodes. We evaluate the proposed approach on two types of well-known deep models including GCN and POMO. The experimental results on the randomly synthesized instances and the ones from two benchmark dataset (i.e., TSPLib and CVRPLib) demonstrate that our approach could significantly improve the cross-distribution generalization performance over the original models.","url_abs":"https://arxiv.org/abs/2202.07241v1","url_pdf":"https://arxiv.org/pdf/2202.07241v1.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":"learning-to-solve-routing-problems-via","repo_url":"https://github.com/jiang-yuan/Learning-routing-DRO","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"gone","observed_at":"2026-09-17","how":"tree_404+repo_404"}}],"tasks":[],"methods":[{"method_slug":"gcn","method_name":"GCN"},{"method_slug":"pomo","method_name":"POMO"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2202.07241","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2202.07241"}},"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/jiang-yuan/Learning-routing-DRO","reach":{"status":"gone","observed_at":"2026-09-17","how":"tree_404+repo_404"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/yd-kwon/POMO","reach":null},{"provenance":"deterministic:regex_extraction","url":"https://github.com/chaitjo/graph-convnet-tsp","reach":null}],"summary":{"ran_draft_wrong":2,"unverified":1},"by_repo_kind":{"found_in_text":{"samples":3,"ran":2,"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":3,"samples":[{"code_sha256_prefix":"0ccee30ad1e75edd","entry":"multi_head_attention","repo":"yd-kwon/POMO","repo_kind":"found_in_text","path":"OLD_ipynb_ver/POMO_CVRP/source/MODEL__Actor/grouped_actors.py","file_url":"https://github.com/yd-kwon/POMO/blob/HEAD/OLD_ipynb_ver/POMO_CVRP/source/MODEL__Actor/grouped_actors.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0ccee30ad1e75edd"}},{"code_sha256_prefix":"996db674de3ed7a6","entry":"reshape_by_heads","repo":"yd-kwon/POMO","repo_kind":"found_in_text","path":"OLD_ipynb_ver/POMO_CVRP/source/MODEL__Actor/grouped_actors.py","file_url":"https://github.com/yd-kwon/POMO/blob/HEAD/OLD_ipynb_ver/POMO_CVRP/source/MODEL__Actor/grouped_actors.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"996db674de3ed7a6"}},{"code_sha256_prefix":"c5dc3dc139ffa2b1","entry":"Next_Node_Probability_Calculator_for_group","repo":"yd-kwon/POMO","repo_kind":"found_in_text","path":"OLD_ipynb_ver/POMO_CVRP/source/MODEL__Actor/grouped_actors.py","file_url":"https://github.com/yd-kwon/POMO/blob/HEAD/OLD_ipynb_ver/POMO_CVRP/source/MODEL__Actor/grouped_actors.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c5dc3dc139ffa2b1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}