{"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/bayesian-optimisation-over-multiple","title":"Bayesian Optimisation over Multiple Continuous and Categorical Inputs","arxiv_id":"1906.08878","date":"2019-06-20","proceeding":"ICML 2020 1","authors":["Binxin Ru","Ahsan S. Alvi","Vu Nguyen","Michael A. Osborne","Stephen J. Roberts"],"abstract":"Efficient optimisation of black-box problems that comprise both continuous and categorical inputs is important, yet poses significant challenges. We propose a new approach, Continuous and Categorical Bayesian Optimisation (CoCaBO), which combines the strengths of multi-armed bandits and Bayesian optimisation to select values for both categorical and continuous inputs. We model this mixed-type space using a Gaussian Process kernel, designed to allow sharing of information across multiple categorical variables, each with multiple possible values; this allows CoCaBO to leverage all available data efficiently. We extend our method to the batch setting and propose an efficient selection procedure that dynamically balances exploration and exploitation whilst encouraging batch diversity. We demonstrate empirically that our method outperforms existing approaches on both synthetic and real-world optimisation tasks with continuous and categorical inputs.","url_abs":"https://arxiv.org/abs/1906.08878v2","url_pdf":"https://arxiv.org/pdf/1906.08878v2.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":"bayesian-optimisation-over-multiple","repo_url":"https://github.com/rubinxin/CoCaBO_code","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"bayesian-optimisation-over-multiple","repo_url":"https://github.com/rubinxin/CoCaBO","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"bayesian-optimisation","task_name":"Bayesian Optimisation"},{"task_slug":"diversity","task_name":"Diversity"},{"task_slug":"multi-armed-bandits","task_name":"Multi-Armed Bandits"}],"methods":[{"method_slug":"gaussian-process","method_name":"Gaussian Process"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1906.08878","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1906.08878"}},"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/rubinxin/CoCaBO_code","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/rubinxin/CoCaBO","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":7},"by_repo_kind":{"official":{"samples":7,"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":"c76c28eb3d0f2d48","entry":"distr","repo":"rubinxin/CoCaBO_code","repo_kind":"official","path":"utils/probability.py","file_url":"https://github.com/rubinxin/CoCaBO_code/blob/HEAD/utils/probability.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":"c76c28eb3d0f2d48"}},{"code_sha256_prefix":"c075d558bd7d9550","entry":"draw","repo":"rubinxin/CoCaBO_code","repo_kind":"official","path":"utils/probability.py","file_url":"https://github.com/rubinxin/CoCaBO_code/blob/HEAD/utils/probability.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":"c075d558bd7d9550"}},{"code_sha256_prefix":"1d129b821885a91c","entry":"mean","repo":"rubinxin/CoCaBO_code","repo_kind":"official","path":"utils/probability.py","file_url":"https://github.com/rubinxin/CoCaBO_code/blob/HEAD/utils/probability.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":"1d129b821885a91c"}},{"code_sha256_prefix":"c0427f31a6fc0305","entry":"mybeale","repo":"rubinxin/CoCaBO_code","repo_kind":"official","path":"testFunctions/syntheticFunctions.py","file_url":"https://github.com/rubinxin/CoCaBO_code/blob/HEAD/testFunctions/syntheticFunctions.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":"c0427f31a6fc0305"}},{"code_sha256_prefix":"07792181b1fe3423","entry":"myrosenbrock","repo":"rubinxin/CoCaBO_code","repo_kind":"official","path":"testFunctions/syntheticFunctions.py","file_url":"https://github.com/rubinxin/CoCaBO_code/blob/HEAD/testFunctions/syntheticFunctions.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":"07792181b1fe3423"}},{"code_sha256_prefix":"4bac999ada55df33","entry":"mysixhumpcamp","repo":"rubinxin/CoCaBO_code","repo_kind":"official","path":"testFunctions/syntheticFunctions.py","file_url":"https://github.com/rubinxin/CoCaBO_code/blob/HEAD/testFunctions/syntheticFunctions.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":"4bac999ada55df33"}},{"code_sha256_prefix":"4e9dd37cf62617d0","entry":"with_proba","repo":"rubinxin/CoCaBO_code","repo_kind":"official","path":"utils/with_proba.py","file_url":"https://github.com/rubinxin/CoCaBO_code/blob/HEAD/utils/with_proba.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":"4e9dd37cf62617d0"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}