{"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/towards-omni-generalizable-neural-methods-for","title":"Towards Omni-generalizable Neural Methods for Vehicle Routing Problems","arxiv_id":"2305.19587","date":"2023-05-31","proceeding":null,"authors":["Jianan Zhou","Yaoxin Wu","Wen Song","Zhiguang Cao","Jie Zhang"],"abstract":"Learning heuristics for vehicle routing problems (VRPs) has gained much attention due to the less reliance on hand-crafted rules. However, existing methods are typically trained and tested on the same task with a fixed size and distribution (of nodes), and hence suffer from limited generalization performance. This paper studies a challenging yet realistic setting, which considers generalization across both size and distribution in VRPs. We propose a generic meta-learning framework, which enables effective training of an initialized model with the capability of fast adaptation to new tasks during inference. We further develop a simple yet efficient approximation method to reduce the training overhead. Extensive experiments on both synthetic and benchmark instances of the traveling salesman problem (TSP) and capacitated vehicle routing problem (CVRP) demonstrate the effectiveness of our method. The code is available at: https://github.com/RoyalSkye/Omni-VRP.","url_abs":"https://arxiv.org/abs/2305.19587v2","url_pdf":"https://arxiv.org/pdf/2305.19587v2.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":"towards-omni-generalizable-neural-methods-for","repo_url":"https://github.com/royalskye/omni-vrp","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"combinatorial-optimization","task_name":"Combinatorial Optimization"},{"task_slug":"meta-learning","task_name":"Meta-Learning"},{"task_slug":"traveling-salesman-problem","task_name":"Traveling Salesman Problem"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2305.19587","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2305.19587"}},"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":"deterministic:regex_extraction","url":"https://github.com/RoyalSkye/Omni-VRP","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/royalskye/omni-vrp","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":5,"ran_fixture":2,"ran_draft_wrong":2,"ran_honours":3,"unverified":10},"by_repo_kind":{"official":{"samples":22,"ran":12,"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":"27459636e9d1f27b","entry":"EncoderLayer","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"27459636e9d1f27b"}},{"code_sha256_prefix":"1906754f665b381b","entry":"FeedForward","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"1906754f665b381b"}},{"code_sha256_prefix":"deed3a52d6df807a","entry":"Reset_State","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"deed3a52d6df807a"}},{"code_sha256_prefix":"57c0114e6f1f1079","entry":"Step_State","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"57c0114e6f1f1079"}},{"code_sha256_prefix":"ae7acd105c3e55ab","entry":"augment_xy_data_by_8_fold","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"ae7acd105c3e55ab"}},{"code_sha256_prefix":"01df1926cf07ac89","entry":"check_extension","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"01df1926cf07ac89"}},{"code_sha256_prefix":"ee885e080743b365","entry":"generate_task_set","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ee885e080743b365"}},{"code_sha256_prefix":"75f79d4f7fbc6f14","entry":"generate_tsp_dist","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"75f79d4f7fbc6f14"}},{"code_sha256_prefix":"04edb896dec75a82","entry":"load_dataset","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"04edb896dec75a82"}},{"code_sha256_prefix":"6dc103e776ff9eed","entry":"multi_head_attention","repo":"RoyalSkye/Omni-VRP","repo_kind":"official","path":"POMO/CVRP/CVRPModel.py","file_url":"https://github.com/RoyalSkye/Omni-VRP/blob/HEAD/POMO/CVRP/CVRPModel.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6dc103e776ff9eed"}},{"code_sha256_prefix":"459fe521069329c6","entry":"reshape_by_heads","repo":"RoyalSkye/Omni-VRP","repo_kind":"official","path":"POMO/CVRP/CVRPModel.py","file_url":"https://github.com/RoyalSkye/Omni-VRP/blob/HEAD/POMO/CVRP/CVRPModel.py","link_basis":"harvester_set","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":"459fe521069329c6"}},{"code_sha256_prefix":"4a0fdf421df64174","entry":"run_all_in_pool","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"4a0fdf421df64174"}},{"code_sha256_prefix":"f3649a7457360ebc","entry":"Add_And_Normalization_Module","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"f3649a7457360ebc"}},{"code_sha256_prefix":"eaff33fa84aabf33","entry":"CVRPTrainer","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"eaff33fa84aabf33"}},{"code_sha256_prefix":"4bd04c65381e358c","entry":"CVRP_Decoder","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"4bd04c65381e358c"}},{"code_sha256_prefix":"bc46074bd008d171","entry":"CVRP_Encoder","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"bc46074bd008d171"}},{"code_sha256_prefix":"a36b58e1d6f73f99","entry":"augment_xy_data_by_8_fold","repo":"RoyalSkye/Omni-VRP","repo_kind":"official","path":"EAS/source/utilities.py","file_url":"https://github.com/RoyalSkye/Omni-VRP/blob/HEAD/EAS/source/utilities.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":"a36b58e1d6f73f99"}},{"code_sha256_prefix":"7fbb43e1922d836c","entry":"generate_gaussian_mixture_tsp","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"7fbb43e1922d836c"}},{"code_sha256_prefix":"1e4f1088fddcd277","entry":"get_random_problems","repo":"royalskye/omni-vrp","repo_kind":"official","path":"POMO/CVRP/CVRPTrainer_meta.py","file_url":"https://github.com/royalskye/omni-vrp/blob/HEAD/POMO/CVRP/CVRPTrainer_meta.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":"1e4f1088fddcd277"}},{"code_sha256_prefix":"f2e0d7557ce1218c","entry":"get_random_problems","repo":"RoyalSkye/Omni-VRP","repo_kind":"official","path":"POMO/ProblemDef.py","file_url":"https://github.com/RoyalSkye/Omni-VRP/blob/HEAD/POMO/ProblemDef.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":"f2e0d7557ce1218c"}},{"code_sha256_prefix":"6100c5076837bdee","entry":"run_eas_emb","repo":"RoyalSkye/Omni-VRP","repo_kind":"official","path":"EAS/source/eas_emb.py","file_url":"https://github.com/RoyalSkye/Omni-VRP/blob/HEAD/EAS/source/eas_emb.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":"6100c5076837bdee"}},{"code_sha256_prefix":"f0530713ee5b83cb","entry":"run_eas_tab","repo":"RoyalSkye/Omni-VRP","repo_kind":"official","path":"EAS/source/eas_tab.py","file_url":"https://github.com/RoyalSkye/Omni-VRP/blob/HEAD/EAS/source/eas_tab.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":"f0530713ee5b83cb"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}