{"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/objective-robustness-in-deep-reinforcement","title":"Goal Misgeneralization in Deep Reinforcement Learning","arxiv_id":"2105.14111","date":"2021-05-28","proceeding":null,"authors":["Lauro Langosco","Jack Koch","Lee Sharkey","Jacob Pfau","Laurent Orseau","David Krueger"],"abstract":"We study goal misgeneralization, a type of out-of-distribution generalization failure in reinforcement learning (RL). Goal misgeneralization failures occur when an RL agent retains its capabilities out-of-distribution yet pursues the wrong goal. For instance, an agent might continue to competently avoid obstacles, but navigate to the wrong place. In contrast, previous works have typically focused on capability generalization failures, where an agent fails to do anything sensible at test time. We formalize this distinction between capability and goal generalization, provide the first empirical demonstrations of goal misgeneralization, and present a partial characterization of its causes.","url_abs":"https://arxiv.org/abs/2105.14111v7","url_pdf":"https://arxiv.org/pdf/2105.14111v7.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":"objective-robustness-in-deep-reinforcement","repo_url":"https://github.com/JacobPfau/procgenAISC","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"objective-robustness-in-deep-reinforcement","repo_url":"https://github.com/jbkjr/train-procgen-pytorch","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"objective-robustness-in-deep-reinforcement","repo_url":"https://github.com/KarolisRam/colour-shape-goal-misgeneralization","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"objective-robustness-in-deep-reinforcement","repo_url":"https://github.com/UlisseMini/procgen-tools","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"deep-reinforcement-learning","task_name":"Deep Reinforcement Learning"},{"task_slug":"navigate","task_name":"Navigate"},{"task_slug":"out-of-distribution-generalization","task_name":"Out-of-Distribution Generalization"},{"task_slug":"reinforcement-learning","task_name":"Reinforcement Learning"},{"task_slug":"reinforcement-learning-1","task_name":"Reinforcement Learning (RL)"},{"task_slug":"reinforcement-learning-2","task_name":"reinforcement-learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2105.14111","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2105.14111"}},"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/jbkjr/train-procgen-pytorch","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/UlisseMini/procgen-tools","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/KarolisRam/colour-shape-goal-misgeneralization","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/JacobPfau/procgenAISC","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1,"ran_honours":1,"unverified":11},"by_repo_kind":{"official":{"samples":2,"ran":1,"repositories":1},"listed":{"samples":11,"ran":1,"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":1,"samples":[{"code_sha256_prefix":"1067e655bdab66ee","entry":"run","repo":"JacobPfau/procgenAISC","repo_kind":"official","path":"procgen/build.py","file_url":"https://github.com/JacobPfau/procgenAISC/blob/HEAD/procgen/build.py","link_basis":"plan_row","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":"1067e655bdab66ee"}},{"code_sha256_prefix":"3ebb420a5d10cc64","entry":"update_mean_var_count_from_moments","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/procgen_wrappers.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/procgen_wrappers.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3ebb420a5d10cc64"}},{"code_sha256_prefix":"3a68bb67e2b41213","entry":"expand_label","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/visualization.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/visualization.py","link_basis":"harvester_set","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":"3a68bb67e2b41213"}},{"code_sha256_prefix":"49fc5a0c5b3337f9","entry":"format_label","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/visualization.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/visualization.py","link_basis":"harvester_set","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":"49fc5a0c5b3337f9"}},{"code_sha256_prefix":"a521d8930f03ef18","entry":"forward_func_policy","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/patch_utils.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/patch_utils.py","link_basis":"harvester_set","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":"a521d8930f03ef18"}},{"code_sha256_prefix":"febe99d83608894f","entry":"get_grid","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/maze.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/maze.py","link_basis":"harvester_set","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":"febe99d83608894f"}},{"code_sha256_prefix":"8f8384c14ae04dc0","entry":"get_mouse_pos_sv","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/maze.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/maze.py","link_basis":"harvester_set","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":"8f8384c14ae04dc0"}},{"code_sha256_prefix":"b60e3bcc13e8e7c0","entry":"get_predict","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/rollout_utils.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/rollout_utils.py","link_basis":"harvester_set","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":"b60e3bcc13e8e7c0"}},{"code_sha256_prefix":"fa2053a8568916ec","entry":"get_var","repo":"JacobPfau/procgenAISC","repo_kind":"official","path":"procgen-build/procgen_build/build_package.py","file_url":"https://github.com/JacobPfau/procgenAISC/blob/HEAD/procgen-build/procgen_build/build_package.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":false,"mcp_get_code":{"code_sha256":"fa2053a8568916ec"}},{"code_sha256_prefix":"aefe496050f5a799","entry":"human_readable_action","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/models.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/models.py","link_basis":"harvester_set","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":"aefe496050f5a799"}},{"code_sha256_prefix":"3257056e5d5a53de","entry":"lru_cache","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/maze.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/maze.py","link_basis":"harvester_set","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":"3257056e5d5a53de"}},{"code_sha256_prefix":"91b1e1870bc40fd3","entry":"orthogonal_init","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/models.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/models.py","link_basis":"harvester_set","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":"91b1e1870bc40fd3"}},{"code_sha256_prefix":"c71774582015fd4b","entry":"xavier_uniform_init","repo":"UlisseMini/procgen-tools","repo_kind":"listed","path":"procgen_tools/models.py","file_url":"https://github.com/UlisseMini/procgen-tools/blob/HEAD/procgen_tools/models.py","link_basis":"harvester_set","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":"c71774582015fd4b"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}