{"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/adversarial-attacks-on-gaussian-process","title":"Adversarial Attacks on Gaussian Process Bandits","arxiv_id":"2110.08449","date":"2021-10-16","proceeding":null,"authors":["Eric Han","Jonathan Scarlett"],"abstract":"Gaussian processes (GP) are a widely-adopted tool used to sequentially optimize black-box functions, where evaluations are costly and potentially noisy. Recent works on GP bandits have proposed to move beyond random noise and devise algorithms robust to adversarial attacks. This paper studies this problem from the attacker's perspective, proposing various adversarial attack methods with differing assumptions on the attacker's strength and prior information. Our goal is to understand adversarial attacks on GP bandits from theoretical and practical perspectives. We focus primarily on targeted attacks on the popular GP-UCB algorithm and a related elimination-based algorithm, based on adversarially perturbing the function $f$ to produce another function $\\tilde{f}$ whose optima are in some target region $\\mathcal{R}_{\\rm target}$. Based on our theoretical analysis, we devise both white-box attacks (known $f$) and black-box attacks (unknown $f$), with the former including a Subtraction attack and Clipping attack, and the latter including an Aggressive subtraction attack. We demonstrate that adversarial attacks on GP bandits can succeed in forcing the algorithm towards $\\mathcal{R}_{\\rm target}$ even with a low attack budget, and we test our attacks' effectiveness on a diverse range of objective functions.","url_abs":"https://arxiv.org/abs/2110.08449v3","url_pdf":"https://arxiv.org/pdf/2110.08449v3.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":"adversarial-attacks-on-gaussian-process","repo_url":"https://github.com/eric-vader/attack-bo","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"adversarial-attack","task_name":"Adversarial Attack"},{"task_slug":"gaussian-processes","task_name":"Gaussian Processes"}],"methods":[{"method_slug":"test","method_name":"Test"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2110.08449","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2110.08449"}},"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/eric-vader/attack-bo","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":6},"by_repo_kind":{"official":{"samples":6,"ran":0,"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":"24a33a6a2a77b573","entry":"make_thing","repo":"eric-vader/attack-bo","repo_kind":"official","path":"attack_bo/robot_pushing/push_world.py","file_url":"https://github.com/eric-vader/attack-bo/blob/HEAD/attack_bo/robot_pushing/push_world.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":"24a33a6a2a77b573"}},{"code_sha256_prefix":"e0a1687c1fe753ed","entry":"robot_push_3d","repo":"eric-vader/attack-bo","repo_kind":"official","path":"attack_bo/robot_pushing/generate_simudata3.py","file_url":"https://github.com/eric-vader/attack-bo/blob/HEAD/attack_bo/robot_pushing/generate_simudata3.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":"e0a1687c1fe753ed"}},{"code_sha256_prefix":"60cc37d9729f7a74","entry":"robot_push_4d","repo":"eric-vader/attack-bo","repo_kind":"official","path":"attack_bo/robot_pushing/generate_simudata4.py","file_url":"https://github.com/eric-vader/attack-bo/blob/HEAD/attack_bo/robot_pushing/generate_simudata4.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":"60cc37d9729f7a74"}},{"code_sha256_prefix":"1ca648944822dc19","entry":"simu_push","repo":"eric-vader/attack-bo","repo_kind":"official","path":"attack_bo/robot_pushing/push_world.py","file_url":"https://github.com/eric-vader/attack-bo/blob/HEAD/attack_bo/robot_pushing/push_world.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":"1ca648944822dc19"}},{"code_sha256_prefix":"79b71e0e84906053","entry":"simu_push2","repo":"eric-vader/attack-bo","repo_kind":"official","path":"attack_bo/robot_pushing/push_world.py","file_url":"https://github.com/eric-vader/attack-bo/blob/HEAD/attack_bo/robot_pushing/push_world.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":"79b71e0e84906053"}},{"code_sha256_prefix":"d56231e6344169be","entry":"singleton","repo":"eric-vader/attack-bo","repo_kind":"official","path":"attack_bo/config.py","file_url":"https://github.com/eric-vader/attack-bo/blob/HEAD/attack_bo/config.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":"d56231e6344169be"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}