{"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/rainbow-combining-improvements-in-deep","title":"Rainbow: Combining Improvements in Deep Reinforcement Learning","arxiv_id":"1710.02298","date":"2017-10-06","proceeding":null,"authors":["Matteo Hessel","Joseph Modayil","Hado van Hasselt","Tom Schaul","Georg Ostrovski","Will Dabney","Dan Horgan","Bilal Piot","Mohammad Azar","David Silver"],"abstract":"The deep reinforcement learning community has made several independent\nimprovements to the DQN algorithm. However, it is unclear which of these\nextensions are complementary and can be fruitfully combined. This paper\nexamines six extensions to the DQN algorithm and empirically studies their\ncombination. Our experiments show that the combination provides\nstate-of-the-art performance on the Atari 2600 benchmark, both in terms of data\nefficiency and final performance. We also provide results from a detailed\nablation study that shows the contribution of each component to overall\nperformance.","url_abs":"http://arxiv.org/abs/1710.02298v1","url_pdf":"http://arxiv.org/pdf/1710.02298v1.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":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/BY571/DQN-Atari-Agents","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/Curt-Park/rainbow-is-all-you-need","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/JayLohokare/banana-world-navigation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/Kaixhin/Rainbow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/amzoyang/CS-221-Final-Project","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/atavakol/action-hypergraph-networks","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/chainer/chainerrl","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/coreylowman/rl_simply","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/daviddcho/supermario","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/deconlabs/Binanace-trading-simulation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/deconlabs/Binanace_trading_simulation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/deconlabs/TradingZoo-Dynamic-fee-simulation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/dsapandora/s_cera","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"GPL-3.0"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/eddynelson/dqn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/efg59/Rainbow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/facebookresearch/Horizon","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/facebookresearch/ReAgent","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/floringogianu/atari-agents","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/htdt/rainbow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/jacobkooi/hadamax","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"jax","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/jvoynow/DQN-analysis-with-2048","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/lireer/ricochet-robot-solver","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/liuyuezhang/pyrl","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/michaelnny/deep_rl_zoo","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/mindspore-courses/Rainbow-MindSpore","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"mindspore","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/mingyip/Rainbow-Reinforcement-Learning-For-Chess-Games","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/mohith-sakthivel/rainbow_dqn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"GPL-3.0"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/odokumaci/rainbow-unity-obstacle-tower-challenge","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/robintyh1/icml2021-pengqlambda","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/roboticist-by-day/Rainbow_DQN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"GPL-3.0"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/thu-ml/tianshou","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/xusophia/DataSciFinalProj","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/chandar-lab/RLHive","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null},{"paper_slug":"rainbow-combining-improvements-in-deep","repo_url":"https://github.com/opendilab/DI-engine/blob/main/ding/policy/rainbow.py","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"atari-games","task_name":"Atari Games"},{"task_slug":"deep-reinforcement-learning","task_name":"Deep Reinforcement Learning"},{"task_slug":"montezumas-revenge","task_name":"Montezuma's Revenge"},{"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":[{"method_slug":"adam","method_name":"Adam"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"dqn","method_name":"DQN"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"double-q-learning","method_name":"Double Q-learning"},{"method_slug":"dueling-network","method_name":"Dueling Network"},{"method_slug":"n-step-returns","method_name":"N-step Returns"},{"method_slug":"noisy-net","method_name":"Noisy Linear Layer"},{"method_slug":"prioritized-experience-replay","method_name":"Prioritized Experience Replay"},{"method_slug":"q-learning","method_name":"Q-Learning"},{"method_slug":"rainbow-dqn","method_name":"Rainbow DQN"}],"datasets_introduced":[],"methods_introduced":[{"slug":"rainbow-dqn","name":"Rainbow DQN","full_name":"Rainbow DQN"}],"results":[{"leaderboard":"/sota/atari-games-on-atari-2600-ms-pacman","task":"Atari Games","dataset":"Atari 2600 Ms. Pacman","model":"Rainbow","rank_in_archive_order":31,"of":47,"metrics":{"Score":"2570.2"},"uses_additional_data":false},{"leaderboard":"/sota/atari-games-on-atari-2600-space-invaders","task":"Atari Games","dataset":"Atari 2600 Space Invaders","model":"Rainbow","rank_in_archive_order":17,"of":55,"metrics":{"Score":"12629.0"},"uses_additional_data":false},{"leaderboard":"/sota/atari-games-on-atari-games","task":"Atari Games","dataset":"Atari games","model":"Rainbow DQN","rank_in_archive_order":10,"of":12,"metrics":{"Mean Human Normalized Score":"873.97%"},"uses_additional_data":false},{"leaderboard":"/sota/atari-games-on-atari-57","task":"Atari Games","dataset":"Atari-57","model":"Rainbow DQN","rank_in_archive_order":9,"of":11,"metrics":{"Human World Record Breakthrough":"4","Mean Human Normalized Score":"873.97%"},"uses_additional_data":false},{"leaderboard":"/sota/atari-games-on-atari-game","task":"Atari Games","dataset":"atari game","model":"Rainbow","rank_in_archive_order":9,"of":9,"metrics":{"Human World Record Breakthrough":"4"},"uses_additional_data":false},{"leaderboard":"/sota/montezuma-s-revenge-on-atari-2600-montezuma-s","task":"Montezuma's Revenge","dataset":"Atari 2600 Montezuma's Revenge","model":"Rainbow","rank_in_archive_order":3,"of":3,"metrics":{"Average Return (NoOp)":"384"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1710.02298","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1710.02298"}},"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":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Kaixhin/Rainbow","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/facebookresearch/Horizon","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/daviddcho/supermario","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/htdt/rainbow","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/mingyip/Rainbow-Reinforcement-Learning-For-Chess-Games","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/efg59/Rainbow","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/opendilab/DI-engine/blob/main/ding/policy/rainbow.py","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/floringogianu/atari-agents","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/JayLohokare/banana-world-navigation","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/chainer/chainerrl","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/atavakol/action-hypergraph-networks","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/deconlabs/Binanace-trading-simulation","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/mohith-sakthivel/rainbow_dqn","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/BY571/DQN-Atari-Agents","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/liuyuezhang/pyrl","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/robintyh1/icml2021-pengqlambda","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/eddynelson/dqn","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/coreylowman/rl_simply","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/michaelnny/deep_rl_zoo","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/dsapandora/s_cera","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/mindspore-courses/Rainbow-MindSpore","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jvoynow/DQN-analysis-with-2048","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/xusophia/DataSciFinalProj","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/amzoyang/CS-221-Final-Project","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Curt-Park/rainbow-is-all-you-need","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_honours":1,"ran_violates":1,"unverified":4},"by_repo_kind":{"listed":{"samples":5,"ran":1,"repositories":3}},"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":"4c60d8998b722013","entry":"linear_schedule","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_honours","verification_level":2,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"4c60d8998b722013"}},{"code_sha256_prefix":"3f5569362eb33902","entry":"straight_through_round","repo":"jacobkooi/hadamax","repo_kind":"listed","path":"purejaxql/pqn_atari_hadamax.py","file_url":"https://github.com/jacobkooi/hadamax/blob/HEAD/purejaxql/pqn_atari_hadamax.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3f5569362eb33902"}},{"code_sha256_prefix":"46e2342857dcaedf","entry":"fnRSI","repo":"deconlabs/Binanace-trading-simulation","repo_kind":"listed","path":"envs/derivative_utils.py","file_url":"https://github.com/deconlabs/Binanace-trading-simulation/blob/HEAD/envs/derivative_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":"46e2342857dcaedf"}},{"code_sha256_prefix":"bc2c6bd2e337d077","entry":"get_bollinger_diffs","repo":"deconlabs/Binanace-trading-simulation","repo_kind":"listed","path":"envs/derivative_utils.py","file_url":"https://github.com/deconlabs/Binanace-trading-simulation/blob/HEAD/envs/derivative_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":"bc2c6bd2e337d077"}},{"code_sha256_prefix":"787e35131a9851ea","entry":"get_stochastic","repo":"deconlabs/Binanace-trading-simulation","repo_kind":"listed","path":"envs/derivative_utils.py","file_url":"https://github.com/deconlabs/Binanace-trading-simulation/blob/HEAD/envs/derivative_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":"787e35131a9851ea"}},{"code_sha256_prefix":"34182f569fae27fe","entry":"run","repo":"BY571/DQN-Atari-Agents","repo_kind":"listed","path":"run_atari_dqn.py","file_url":"https://github.com/BY571/DQN-Atari-Agents/blob/HEAD/run_atari_dqn.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":"34182f569fae27fe"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}