{"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/control-frequency-adaptation-via-action","title":"Control Frequency Adaptation via Action Persistence in Batch Reinforcement Learning","arxiv_id":"2002.06836","date":"2020-02-17","proceeding":"ICML 2020 1","authors":["Alberto Maria Metelli","Flavio Mazzolini","Lorenzo Bisi","Luca Sabbioni","Marcello Restelli"],"abstract":"The choice of the control frequency of a system has a relevant impact on the ability of reinforcement learning algorithms to learn a highly performing policy. In this paper, we introduce the notion of action persistence that consists in the repetition of an action for a fixed number of decision steps, having the effect of modifying the control frequency. We start analyzing how action persistence affects the performance of the optimal policy, and then we present a novel algorithm, Persistent Fitted Q-Iteration (PFQI), that extends FQI, with the goal of learning the optimal value function at a given persistence. After having provided a theoretical study of PFQI and a heuristic approach to identify the optimal persistence, we present an experimental campaign on benchmark domains to show the advantages of action persistence and proving the effectiveness of our persistence selection method.","url_abs":"https://arxiv.org/abs/2002.06836v2","url_pdf":"https://arxiv.org/pdf/2002.06836v2.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":"control-frequency-adaptation-via-action","repo_url":"https://github.com/albertometelli/pfqi","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"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":{"syntology_url":"https://syntology.ai/paper/2002.06836","atlas_url":"https://app.syntology.ai/?focus=2002.06836","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2002.06836"}},"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/albertometelli/pfqi","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1,"unverified":3},"by_repo_kind":{"official":{"samples":4,"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":0,"samples":[{"code_sha256_prefix":"83c342e0686d5882","entry":"save_json_callback","repo":"albertometelli/pfqi","repo_kind":"official","path":"trlib/algorithms/callbacks.py","file_url":"https://github.com/albertometelli/pfqi/blob/HEAD/trlib/algorithms/callbacks.py","link_basis":"first_harvest_node","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":"83c342e0686d5882"}},{"code_sha256_prefix":"dea6e2e4ceb554b6","entry":"bound","repo":"albertometelli/pfqi","repo_kind":"official","path":"trlib/environments/acrobot_multitask.py","file_url":"https://github.com/albertometelli/pfqi/blob/HEAD/trlib/environments/acrobot_multitask.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":"dea6e2e4ceb554b6"}},{"code_sha256_prefix":"f484ea31b437dd66","entry":"rk4","repo":"albertometelli/pfqi","repo_kind":"official","path":"trlib/environments/acrobot_multitask.py","file_url":"https://github.com/albertometelli/pfqi/blob/HEAD/trlib/environments/acrobot_multitask.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":"f484ea31b437dd66"}},{"code_sha256_prefix":"655d31ff95e8128e","entry":"wrap","repo":"albertometelli/pfqi","repo_kind":"official","path":"trlib/environments/acrobot_multitask.py","file_url":"https://github.com/albertometelli/pfqi/blob/HEAD/trlib/environments/acrobot_multitask.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":"655d31ff95e8128e"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}