{"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/model-based-reinforcement-learning-for-atari","title":"Model-Based Reinforcement Learning for Atari","arxiv_id":"1903.00374","date":"2019-03-01","proceeding":null,"authors":["Lukasz Kaiser","Mohammad Babaeizadeh","Piotr Milos","Blazej Osinski","Roy H. Campbell","Konrad Czechowski","Dumitru Erhan","Chelsea Finn","Piotr Kozakowski","Sergey Levine","Afroz Mohiuddin","Ryan Sepassi","George Tucker","Henryk Michalewski"],"abstract":"Model-free reinforcement learning (RL) can be used to learn effective policies for complex tasks, such as Atari games, even from image observations. However, this typically requires very large amounts of interaction -- substantially more, in fact, than a human would need to learn the same games. How can people learn so quickly? Part of the answer may be that people can learn how the game works and predict which actions will lead to desirable outcomes. In this paper, we explore how video prediction models can similarly enable agents to solve Atari games with fewer interactions than model-free methods. We describe Simulated Policy Learning (SimPLe), a complete model-based deep RL algorithm based on video prediction models and present a comparison of several model architectures, including a novel architecture that yields the best results in our setting. Our experiments evaluate SimPLe on a range of Atari games in low data regime of 100k interactions between the agent and the environment, which corresponds to two hours of real-time play. In most games SimPLe outperforms state-of-the-art model-free algorithms, in some games by over an order of magnitude.","url_abs":"https://arxiv.org/abs/1903.00374v5","url_pdf":"https://arxiv.org/pdf/1903.00374v5.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":"model-based-reinforcement-learning-for-atari","repo_url":"https://github.com/tensorflow/tensor2tensor","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"model-based-reinforcement-learning-for-atari","repo_url":"https://github.com/thomas-schillaci/SimPLe","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"atari-games","task_name":"Atari Games"},{"task_slug":"atari-games-100k","task_name":"Atari Games 100k"},{"task_slug":"model-based-reinforcement-learning","task_name":"Model-based Reinforcement Learning"},{"task_slug":"reinforcement-learning","task_name":"Reinforcement Learning"},{"task_slug":"reinforcement-learning-1","task_name":"Reinforcement Learning (RL)"},{"task_slug":"video-prediction","task_name":"Video Prediction"},{"task_slug":"model","task_name":"model"},{"task_slug":"reinforcement-learning-2","task_name":"reinforcement-learning"}],"methods":[],"datasets_introduced":[{"slug":"atari-100k","name":"Atari 100k","full_name":""}],"methods_introduced":[],"results":[{"leaderboard":"/sota/atari-games-on-atari-games","task":"Atari Games","dataset":"Atari games","model":"SimPLe","rank_in_archive_order":12,"of":12,"metrics":{"Mean Human Normalized Score":"25.3%"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1903.00374","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1903.00374"}},"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/google/dopamine","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tensorflow/tensor2tensor","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/thomas-schillaci/SimPLe","reach":null}],"summary":{"ran":9,"ran_draft_wrong":5,"ran_fixture":1,"unverified":6},"by_repo_kind":{"official":{"samples":4,"ran":1,"repositories":1},"listed":{"samples":17,"ran":14,"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":17,"samples":[{"code_sha256_prefix":"46f5f7efa2488ce5","entry":"ActionInjector","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"46f5f7efa2488ce5"}},{"code_sha256_prefix":"eb5b747f01be0865","entry":"BitsPredictor","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"eb5b747f01be0865"}},{"code_sha256_prefix":"3f3786cc58d216a6","entry":"Container","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"3f3786cc58d216a6"}},{"code_sha256_prefix":"46579683ae077d93","entry":"MeanAttention","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"46579683ae077d93"}},{"code_sha256_prefix":"daf905c29d5ce6db","entry":"MiddleNetwork","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"daf905c29d5ce6db"}},{"code_sha256_prefix":"466db63e34381d96","entry":"ParameterSealer","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"466db63e34381d96"}},{"code_sha256_prefix":"44bf0671a31eeade","entry":"Restarter","repo":"tensorflow/tensor2tensor","repo_kind":"official","path":"tensor2tensor/rl/trainer_model_based.py","file_url":"https://github.com/tensorflow/tensor2tensor/blob/HEAD/tensor2tensor/rl/trainer_model_based.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"44bf0671a31eeade"}},{"code_sha256_prefix":"b32c79f2cdecb3f4","entry":"RewardEstimator","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"b32c79f2cdecb3f4"}},{"code_sha256_prefix":"f443555aff8be5de","entry":"ValueEstimator","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"f443555aff8be5de"}},{"code_sha256_prefix":"de8fa36badf28fa1","entry":"bit_to_int","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"de8fa36badf28fa1"}},{"code_sha256_prefix":"ba50aefcc31495b3","entry":"get_timing_signal_nd","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"ba50aefcc31495b3"}},{"code_sha256_prefix":"6e9a001a9d751bff","entry":"int_to_bit","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.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":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"6e9a001a9d751bff"}},{"code_sha256_prefix":"3ed887b5cb35096c","entry":"mix","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.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":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"3ed887b5cb35096c"}},{"code_sha256_prefix":"e2e902f8ee14d5c6","entry":"one_hot_encode","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"e2e902f8ee14d5c6"}},{"code_sha256_prefix":"e71f7c4a3dcf9c53","entry":"sample_with_temperature","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"e71f7c4a3dcf9c53"}},{"code_sha256_prefix":"93ead6112daae1d2","entry":"NextFramePredictor","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"93ead6112daae1d2"}},{"code_sha256_prefix":"7be2f31a986731f4","entry":"StochasticModel","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"7be2f31a986731f4"}},{"code_sha256_prefix":"c321a59458ae8d05","entry":"standardize_frame","repo":"thomas-schillaci/SimPLe","repo_kind":"listed","path":"simple/next_frame_predictor.py","file_url":"https://github.com/thomas-schillaci/SimPLe/blob/HEAD/simple/next_frame_predictor.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"c321a59458ae8d05"}},{"code_sha256_prefix":"a43b6bf6738c00ab","entry":"train_supervised","repo":"tensorflow/tensor2tensor","repo_kind":"official","path":"tensor2tensor/rl/trainer_model_based.py","file_url":"https://github.com/tensorflow/tensor2tensor/blob/HEAD/tensor2tensor/rl/trainer_model_based.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a43b6bf6738c00ab"}},{"code_sha256_prefix":"0697e8a4c6c8e81e","entry":"train_world_model","repo":"tensorflow/tensor2tensor","repo_kind":"official","path":"tensor2tensor/rl/trainer_model_based.py","file_url":"https://github.com/tensorflow/tensor2tensor/blob/HEAD/tensor2tensor/rl/trainer_model_based.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"0697e8a4c6c8e81e"}},{"code_sha256_prefix":"7f4e91b128910dac","entry":"world_model_step_increment","repo":"tensorflow/tensor2tensor","repo_kind":"official","path":"tensor2tensor/rl/trainer_model_based.py","file_url":"https://github.com/tensorflow/tensor2tensor/blob/HEAD/tensor2tensor/rl/trainer_model_based.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"7f4e91b128910dac"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}