{"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-and-planning-in-complex-action","title":"Learning and Planning in Complex Action Spaces","arxiv_id":"2104.06303","date":"2021-04-13","proceeding":null,"authors":["Thomas Hubert","Julian Schrittwieser","Ioannis Antonoglou","Mohammadamin Barekatain","Simon Schmitt","David Silver"],"abstract":"Many important real-world problems have action spaces that are high-dimensional, continuous or both, making full enumeration of all possible actions infeasible. Instead, only small subsets of actions can be sampled for the purpose of policy evaluation and improvement. In this paper, we propose a general framework to reason in a principled way about policy evaluation and improvement over such sampled action subsets. This sample-based policy iteration framework can in principle be applied to any reinforcement learning algorithm based upon policy iteration. Concretely, we propose Sampled MuZero, an extension of the MuZero algorithm that is able to learn in domains with arbitrarily complex action spaces by planning over sampled actions. We demonstrate this approach on the classical board game of Go and on two continuous control benchmark domains: DeepMind Control Suite and Real-World RL Suite.","url_abs":"https://arxiv.org/abs/2104.06303v1","url_pdf":"https://arxiv.org/pdf/2104.06303v1.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-and-planning-in-complex-action","repo_url":"https://github.com/opendilab/LightZero","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"continuous-control","task_name":"Continuous Control"},{"task_slug":"game-of-go","task_name":"Game of Go"},{"task_slug":"continuous-control","task_name":"continuous-control"}],"methods":[{"method_slug":"average-pooling","method_name":"Average Pooling"},{"method_slug":"batch-normalization","method_name":"Batch Normalization"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"monte-carlo-tree-search","method_name":"Monte-Carlo Tree Search"},{"method_slug":"muzero","method_name":"MuZero"},{"method_slug":"prioritized-experience-replay","method_name":"Prioritized Experience Replay"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-block","method_name":"Residual Block"},{"method_slug":"residual-connection","method_name":"Residual Connection"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/continuous-control-on-acrobot-swingup","task":"Continuous Control","dataset":"acrobot.swingup","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"417.52"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-ball-in-cup-catch-2","task":"Continuous Control","dataset":"ball_in_cup.catch","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"977.38"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-cartpole-balance","task":"Continuous Control","dataset":"cartpole.balance","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"984.86"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-cartpole-balance-sparse","task":"Continuous Control","dataset":"cartpole.balance_sparse","model":"SMuZero","rank_in_archive_order":1,"of":2,"metrics":{"Return":"998.14"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-cartpole-swingup-2","task":"Continuous Control","dataset":"cartpole.swingup","model":"SMuZero","rank_in_archive_order":1,"of":2,"metrics":{"Return":"868.87"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-cartpole-swingup-sparse","task":"Continuous Control","dataset":"cartpole.swingup_sparse","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"846.91"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-cheetah-run-2","task":"Continuous Control","dataset":"cheetah.run","model":"SMuZero","rank_in_archive_order":1,"of":2,"metrics":{"Return":"914.39"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-finger-spin-2","task":"Continuous Control","dataset":"finger.spin","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"986.38"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-finger-turn-easy","task":"Continuous Control","dataset":"finger.turn_easy","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"972.53"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-finger-turn-hard","task":"Continuous Control","dataset":"finger.turn_hard","model":"SMuZero","rank_in_archive_order":1,"of":2,"metrics":{"Return":"963.07"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-hopper-hop","task":"Continuous Control","dataset":"hopper.hop","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"528.24"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-hopper-stand","task":"Continuous Control","dataset":"hopper.stand","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"926.5"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-pendulum-swingup","task":"Continuous Control","dataset":"pendulum.swingup","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"837.76"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-quadruped-run","task":"Continuous Control","dataset":"quadruped.run","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"923.54"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-quadruped-walk","task":"Continuous Control","dataset":"quadruped.walk","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"933.77"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-reacher-easy-2","task":"Continuous Control","dataset":"reacher.easy","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"982.26"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-reacher-hard","task":"Continuous Control","dataset":"reacher.hard","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"971.53"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-walker-run","task":"Continuous Control","dataset":"walker.run","model":"SMuZero","rank_in_archive_order":1,"of":1,"metrics":{"Return":"931.06"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-walker-stand","task":"Continuous Control","dataset":"walker.stand","model":"SMuZero","rank_in_archive_order":1,"of":2,"metrics":{"Return":"987.79"},"uses_additional_data":false},{"leaderboard":"/sota/continuous-control-on-walker-walk-2","task":"Continuous Control","dataset":"walker.walk","model":"SMuZero","rank_in_archive_order":1,"of":2,"metrics":{"Return":"975.46"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2104.06303","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}