Omnisolver: an extensible interface to Ising spin glass solvers
Konrad Jałowiecki, Łukasz Pawela
TL;DR
Omnisolver addresses fragmentation in Ising spin-glass and QUBO solver APIs by providing a unified, extensible Python framework built on dimod with automatic CLI/IO and a plugin system. It enables easy integration of diverse solvers, including D-Wave and GPU-accelerated or brute-force methods, via YAML-described plugins and runtime discovery. The authors demonstrate the approach with a dummy plugin and real solvers like parallel tempering and brute-force, plus illustrative experiments and a GPU performance benchmark. The tool aims to accelerate research and practical optimization workflows by reducing integration overhead and enabling rapid experimentation across solvers.
Abstract
We introduce a new framework for implementing Binary Quadratic Model (BQM) solvers called Omnisolver. The framework provides an out-of-the-box dynamically built command-line interface as well as an input/output system, thus heavily reducing the effort required for implementing new algorithms for solving BQMs. The proposed software should be of benefit for researchers focusing on quantum annealers or discrete optimization algorithms as well as groups utilizing discrete optimization as a part of their daily work. We demonstrate the ease of use of the proposed software by presenting a step-by-step, concise implementation of an example plugin.
