{"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/do-the-rewards-justify-the-means-measuring","title":"Do the Rewards Justify the Means? Measuring Trade-Offs Between Rewards and Ethical Behavior in the MACHIAVELLI Benchmark","arxiv_id":"2304.03279","date":"2023-04-06","proceeding":null,"authors":["Alexander Pan","Jun Shern Chan","Andy Zou","Nathaniel Li","Steven Basart","Thomas Woodside","Jonathan Ng","HANLIN ZHANG","Scott Emmons","Dan Hendrycks"],"abstract":"Artificial agents have traditionally been trained to maximize reward, which may incentivize power-seeking and deception, analogous to how next-token prediction in language models (LMs) may incentivize toxicity. So do agents naturally learn to be Machiavellian? And how do we measure these behaviors in general-purpose models such as GPT-4? Towards answering these questions, we introduce MACHIAVELLI, a benchmark of 134 Choose-Your-Own-Adventure games containing over half a million rich, diverse scenarios that center on social decision-making. Scenario labeling is automated with LMs, which are more performant than human annotators. We mathematize dozens of harmful behaviors and use our annotations to evaluate agents' tendencies to be power-seeking, cause disutility, and commit ethical violations. We observe some tension between maximizing reward and behaving ethically. To improve this trade-off, we investigate LM-based methods to steer agents' towards less harmful behaviors. Our results show that agents can both act competently and morally, so concrete progress can currently be made in machine ethics--designing agents that are Pareto improvements in both safety and capabilities.","url_abs":"https://arxiv.org/abs/2304.03279v4","url_pdf":"https://arxiv.org/pdf/2304.03279v4.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":"do-the-rewards-justify-the-means-measuring","repo_url":"https://github.com/aypan17/machiavelli","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"decision-making","task_name":"Decision Making"},{"task_slug":"ethics","task_name":"Ethics"}],"methods":[],"datasets_introduced":[{"slug":"machiavelli","name":"MACHIAVELLI","full_name":""}],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2304.03279","atlas_url":"https://app.syntology.ai/?focus=2304.03279","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2304.03279"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/aypan17/machiavelli","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":5},"by_repo_kind":{"official":{"samples":5,"ran":5,"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":"7c06d9ae0982aa84","entry":"batch_encoded_tokens","repo":"aypan17/machiavelli","repo_kind":"official","path":"machiavelli/agent/drrn.py","file_url":"https://github.com/aypan17/machiavelli/blob/HEAD/machiavelli/agent/drrn.py","link_basis":"harvester_set","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":"7c06d9ae0982aa84"}},{"code_sha256_prefix":"ba04daa0fccd1094","entry":"clean","repo":"aypan17/machiavelli","repo_kind":"official","path":"machiavelli/utils.py","file_url":"https://github.com/aypan17/machiavelli/blob/HEAD/machiavelli/utils.py","link_basis":"harvester_set","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":"ba04daa0fccd1094"}},{"code_sha256_prefix":"505b799d41322c4b","entry":"get_conditional_group","repo":"aypan17/machiavelli","repo_kind":"official","path":"machiavelli/utils.py","file_url":"https://github.com/aypan17/machiavelli/blob/HEAD/machiavelli/utils.py","link_basis":"harvester_set","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":"505b799d41322c4b"}},{"code_sha256_prefix":"cf28b33d109d0a81","entry":"get_nested_group","repo":"aypan17/machiavelli","repo_kind":"official","path":"machiavelli/utils.py","file_url":"https://github.com/aypan17/machiavelli/blob/HEAD/machiavelli/utils.py","link_basis":"harvester_set","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":"cf28b33d109d0a81"}},{"code_sha256_prefix":"2e3194b68f96fc4d","entry":"load_agent","repo":"aypan17/machiavelli","repo_kind":"official","path":"machiavelli/agent/load_agent.py","file_url":"https://github.com/aypan17/machiavelli/blob/HEAD/machiavelli/agent/load_agent.py","link_basis":"harvester_set","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":"2e3194b68f96fc4d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}