Table of Contents
Fetching ...

OpenBox: A Python Toolkit for Generalized Black-box Optimization

Huaijun Jiang, Yu Shen, Yang Li, Beicheng Xu, Sixian Du, Wentao Zhang, Ce Zhang, Bin Cui

TL;DR

The paper addresses the paucity of tools for generalized black-box optimization by presenting OpenBox, an open-source toolkit that supports diverse input types, multiple objectives and constraints, and both sequential and parallel optimization. It integrates a broad set of optimization algorithms, automatic algorithm selection based on task characteristics, and a user-friendly ask-and-tell interface with rich visualizations. Benchmark results on CONSTR and LightGBM tuning demonstrate faster convergence, stability, and superior ranking compared with existing systems. The toolkit aims to facilitate practical BBO applications across ML, experimental design, and database knob tuning and is readily accessible via PyPI and GitHub.

Abstract

Black-box optimization (BBO) has a broad range of applications, including automatic machine learning, experimental design, and database knob tuning. However, users still face challenges when applying BBO methods to their problems at hand with existing software packages in terms of applicability, performance, and efficiency. This paper presents OpenBox, an open-source BBO toolkit with improved usability. It implements user-friendly interfaces and visualization for users to define and manage their tasks. The modular design behind OpenBox facilitates its flexible deployment in existing systems. Experimental results demonstrate the effectiveness and efficiency of OpenBox over existing systems. The source code of OpenBox is available at https://github.com/PKU-DAIR/open-box.

OpenBox: A Python Toolkit for Generalized Black-box Optimization

TL;DR

The paper addresses the paucity of tools for generalized black-box optimization by presenting OpenBox, an open-source toolkit that supports diverse input types, multiple objectives and constraints, and both sequential and parallel optimization. It integrates a broad set of optimization algorithms, automatic algorithm selection based on task characteristics, and a user-friendly ask-and-tell interface with rich visualizations. Benchmark results on CONSTR and LightGBM tuning demonstrate faster convergence, stability, and superior ranking compared with existing systems. The toolkit aims to facilitate practical BBO applications across ML, experimental design, and database knob tuning and is readily accessible via PyPI and GitHub.

Abstract

Black-box optimization (BBO) has a broad range of applications, including automatic machine learning, experimental design, and database knob tuning. However, users still face challenges when applying BBO methods to their problems at hand with existing software packages in terms of applicability, performance, and efficiency. This paper presents OpenBox, an open-source BBO toolkit with improved usability. It implements user-friendly interfaces and visualization for users to define and manage their tasks. The modular design behind OpenBox facilitates its flexible deployment in existing systems. Experimental results demonstrate the effectiveness and efficiency of OpenBox over existing systems. The source code of OpenBox is available at https://github.com/PKU-DAIR/open-box.
Paper Structure (5 sections, 3 figures)

This paper contains 5 sections, 3 figures.

Figures (3)

  • Figure 1: Simplified overview of supported scenarios and built-in algorithms in OpenBox.
  • Figure 2: System overview of OpenBox, including the system architecture (upper left), an example of the ask-and-tell interface using Advisor (right), and an example of visualization interfaces (bottom left).
  • Figure 3: Performance comparison on constrained multi-objective benchmark CONSTR (left) and LightGBM tuning task (right).