Skip to content

[Rule] MinimumMultiwayCut to QUBO #186

@hmyuuu

Description

@hmyuuu

Source: MinimumMultiwayCut
Target: QUBO
Motivation: Enables solving minimum multiway cut on quantum annealers (D-Wave) and QUBO-based solvers via a direct Ising Hamiltonian with $kn$ binary variables.
Reference: Heidari, Dinneen & Delmas (2022), CDMTCS-565; Abbassi et al. (2026), arXiv:2601.00720

Reduction Algorithm

Notation:

  • Source instance: graph $G=(V,E)$, $n=|V|$, edge weights $C({u,v})$, terminals $T={t_1,\ldots,t_k}$
  • Target instance: QUBO matrix $Q \in \mathbb{R}^{kn \times kn}$
  • $\alpha$ = penalty coefficient, $\alpha > \sum_{{u,v}\in E} C({u,v})$

Variable mapping:

Introduce $kn$ binary variables $x_{u,t}$ for each $u \in V$ and $t \in T$, where $x_{u,t} = 1$ means vertex $u$ is assigned to the component of terminal $t$. Variable index: $x_{u,t} \to u \cdot k + \mathrm{pos}(t)$.

Objective transformation (Heidari et al., eq. 2):

$$H_A = \alpha \left( \sum_{u \in V} \left(1 - \sum_{t \in T} x_{u,t}\right)^2 + \sum_{t \in T} \sum_{t' \neq t} x_{t,t'} \right)$$

$$H_B = \sum_{{u,v} \in E}\ \sum_{t \in T}\ \sum_{t' \neq t} C({u,v}), x_{u,t}, x_{v,t'}$$

$H_A$ enforces each vertex belongs to exactly one component (squared term) and each terminal $t$ is not misassigned to $t' \neq t$ (linear term), together forcing $x_{t,t}=1$. $H_B$ is the cut cost: for a feasible assignment each cut edge contributes $C({u,v})$ exactly once. Expanding $H = H_A + H_B$ in the binary variables yields the QUBO matrix $Q$.

Solution extraction: $E_m = {{u,v} \in E \mid x^_{u,t} = x^_{v,t'} = 1 \text{ for some } t \neq t'}$.

Size Overhead

Target metric (code name) Polynomial (using symbols above)
num_vars $kn$

Validation Method

  • Solve small instances ($n \leq 6$, $k=3$) with BruteForce on both sides; verify $H(\mathbf{x}^*) = $ minimum cut cost with $H_A = 0$.
  • Cross-check with the ILP reduction (issue [Rule] MinimumMultiwayCut to ILP #185) on the same instances.

Example

Source: $n=5$, $V={0,1,2,3,4}$, $T={0,2,4}$ ($k=3$), edges ${0,1}$:2, ${1,2}$:3, ${2,3}$:1, ${3,4}$:2, ${0,4}$:4, ${1,3}$:5. Set $\alpha=20$.

Variable index: $x_{u,t} \to u \cdot 3 + \mathrm{pos}(t)$ with $\mathrm{pos}(0)=0, \mathrm{pos}(2)=1, \mathrm{pos}(4)=2$. Total: $kn=15$ variables.

Optimal: $x_{0,0}=x_{1,2}=x_{2,2}=x_{3,2}=x_{4,4}=1$ (all others 0), giving components $\{0\}$, $\{1,2,3\}$, $\{4\}$.

  • $H_A=0$ (valid partition, terminals correctly fixed)
  • $H_B = C({0,1}) + C({0,4}) + C({3,4}) = 2+4+2 = \mathbf{8}$
  • Ground-state energy $= 8 =$ minimum cut cost

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions