{"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/random-expert-distillation-imitation-learning","title":"Random Expert Distillation: Imitation Learning via Expert Policy Support Estimation","arxiv_id":"1905.06750","date":"2019-05-16","proceeding":null,"authors":["Ruohan Wang","Carlo Ciliberto","Pierluigi Amadori","Yiannis Demiris"],"abstract":"We consider the problem of imitation learning from a finite set of expert trajectories, without access to reinforcement signals. The classical approach of extracting the expert's reward function via inverse reinforcement learning, followed by reinforcement learning is indirect and may be computationally expensive. Recent generative adversarial methods based on matching the policy distribution between the expert and the agent could be unstable during training. We propose a new framework for imitation learning by estimating the support of the expert policy to compute a fixed reward function, which allows us to re-frame imitation learning within the standard reinforcement learning setting. We demonstrate the efficacy of our reward function on both discrete and continuous domains, achieving comparable or better performance than the state of the art under different reinforcement learning algorithms.","url_abs":"https://arxiv.org/abs/1905.06750v2","url_pdf":"https://arxiv.org/pdf/1905.06750v2.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":"random-expert-distillation-imitation-learning","repo_url":"https://github.com/RuohanW/RED","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"random-expert-distillation-imitation-learning","repo_url":"https://github.com/Kaixhin/imitation-learning","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"imitation-learning","task_name":"Imitation Learning"},{"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=1905.06750","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1905.06750"}},"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/imitation-learning","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/RuohanW/RED","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":1,"unverified":9},"by_repo_kind":{"official":{"samples":10,"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":10,"samples":[{"code_sha256_prefix":"a44574392d168384","entry":"register","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/common/models.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/common/models.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"a44574392d168384"}},{"code_sha256_prefix":"a3b4038f4e9b9479","entry":"cat_entropy","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/a2c/utils.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/a2c/utils.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":"a3b4038f4e9b9479"}},{"code_sha256_prefix":"7082b4bbc0d9384f","entry":"cat_entropy_softmax","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/a2c/utils.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/a2c/utils.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":"7082b4bbc0d9384f"}},{"code_sha256_prefix":"817d5caf0e3d3706","entry":"make_output_format","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/logger.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/logger.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":false,"mcp_get_code":{"code_sha256":"817d5caf0e3d3706"}},{"code_sha256_prefix":"037ccb99c52a2dc1","entry":"profile","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/logger.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/logger.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":"037ccb99c52a2dc1"}},{"code_sha256_prefix":"88ef5a17fc986d9a","entry":"read_json","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/logger.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/logger.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":false,"mcp_get_code":{"code_sha256":"88ef5a17fc986d9a"}},{"code_sha256_prefix":"895ca4b776fb6d6d","entry":"rolling_window","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/results_plotter.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/results_plotter.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":false,"mcp_get_code":{"code_sha256":"895ca4b776fb6d6d"}},{"code_sha256_prefix":"178099b1f8fb2b9d","entry":"sample","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/a2c/utils.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/a2c/utils.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":"178099b1f8fb2b9d"}},{"code_sha256_prefix":"4ab4ad5ff9820e39","entry":"ts2xy","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/results_plotter.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/results_plotter.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":false,"mcp_get_code":{"code_sha256":"4ab4ad5ff9820e39"}},{"code_sha256_prefix":"43741b9339bd80da","entry":"window_func","repo":"RuohanW/RED","repo_kind":"official","path":"baselines/results_plotter.py","file_url":"https://github.com/RuohanW/RED/blob/HEAD/baselines/results_plotter.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":false,"mcp_get_code":{"code_sha256":"43741b9339bd80da"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}