Table of Contents
Fetching ...

Interdiction of minimum spanning trees and other matroid bases

Noah Weninger, Ricardo Fukasawa

TL;DR

The paper addresses matroid interdiction, a generalization of MST interdiction, by introducing a dynamic-programming upper-bounding framework that reduces the follower's best response to a discrete-derivative problem. This bound integrates into a custom branch-and-bound algorithm that solves matroid interdiction exactly for general matroids, with specialized, efficiently computable bounds for uniform, partition, and graphic matroids. The approach yields state-of-the-art computational performance, solving all literature instances and often outperforming previous MIP-based methods by orders of magnitude, while also handling the minimum-cost blocker variant without repeated binary searches. The work significantly advances practical interdiction algorithms, offering adaptable bounds, preprocessing, and a robust solver capable of tackling large, real-world instances and guiding future extensions to broader matroid classes and related optimization problems.

Abstract

In the minimum spanning tree (MST) interdiction problem, we are given a graph $G=(V,E)$ with edge weights, and want to find some $X\subseteq E$ satisfying a knapsack constraint such that the MST weight in $(V,E\setminus X)$ is maximized. Since MSTs of $G$ are the minimum weight bases in the graphic matroid of $G$, this problem is a special case of matroid interdiction on a matroid $M=(E,\mathcal{I})$, in which the objective is instead to maximize the minimum weight of a basis of $M$ which is disjoint from $X$. By reduction from 0-1 knapsack, matroid interdiction is NP-complete, even for uniform matroids. We develop a new exact algorithm to solve the matroid interdiction problem. One of the key components of our algorithm is a dynamic programming upper bound which only requires that a simpler discrete derivative problem can be calculated/approximated for the given matroid. Our exact algorithm then uses this bound within a custom branch-and-bound algorithm. For different matroids, we show how this discrete derivative can be calculated/approximated. In particular, for partition matroids, this yields a pseudopolynomial time algorithm. For graphic matroids, an approximation can be obtained by solving a sequence of minimum cut problems, which we apply to the MST interdiction problem. The running time of our algorithm is asymptotically faster than the best known MST interdiction algorithm, up to polylog factors. Furthermore, our algorithm achieves state-of-the-art computational performance: we solved all available instances from the literature, and in many cases reduced the best running time from hours to seconds.

Interdiction of minimum spanning trees and other matroid bases

TL;DR

The paper addresses matroid interdiction, a generalization of MST interdiction, by introducing a dynamic-programming upper-bounding framework that reduces the follower's best response to a discrete-derivative problem. This bound integrates into a custom branch-and-bound algorithm that solves matroid interdiction exactly for general matroids, with specialized, efficiently computable bounds for uniform, partition, and graphic matroids. The approach yields state-of-the-art computational performance, solving all literature instances and often outperforming previous MIP-based methods by orders of magnitude, while also handling the minimum-cost blocker variant without repeated binary searches. The work significantly advances practical interdiction algorithms, offering adaptable bounds, preprocessing, and a robust solver capable of tackling large, real-world instances and guiding future extensions to broader matroid classes and related optimization problems.

Abstract

In the minimum spanning tree (MST) interdiction problem, we are given a graph with edge weights, and want to find some satisfying a knapsack constraint such that the MST weight in is maximized. Since MSTs of are the minimum weight bases in the graphic matroid of , this problem is a special case of matroid interdiction on a matroid , in which the objective is instead to maximize the minimum weight of a basis of which is disjoint from . By reduction from 0-1 knapsack, matroid interdiction is NP-complete, even for uniform matroids. We develop a new exact algorithm to solve the matroid interdiction problem. One of the key components of our algorithm is a dynamic programming upper bound which only requires that a simpler discrete derivative problem can be calculated/approximated for the given matroid. Our exact algorithm then uses this bound within a custom branch-and-bound algorithm. For different matroids, we show how this discrete derivative can be calculated/approximated. In particular, for partition matroids, this yields a pseudopolynomial time algorithm. For graphic matroids, an approximation can be obtained by solving a sequence of minimum cut problems, which we apply to the MST interdiction problem. The running time of our algorithm is asymptotically faster than the best known MST interdiction algorithm, up to polylog factors. Furthermore, our algorithm achieves state-of-the-art computational performance: we solved all available instances from the literature, and in many cases reduced the best running time from hours to seconds.
Paper Structure (21 sections, 17 theorems, 53 equations, 2 figures, 4 tables, 5 algorithms)

This paper contains 21 sections, 17 theorems, 53 equations, 2 figures, 4 tables, 5 algorithms.

Key Result

Theorem 2.1

Given an upper-level feasible set $\,\mathcal{U}$, state set $T$, and functions $\delta$, $\phi$, and $\pi$ satisfying $P_{\text{bound}}(\delta,\phi,\pi)$ and $P_{\text{succ}}(\phi,\pi)$, we have that for all $i\in E$ and $\hat{X}\in\mathcal{U}$,

Figures (2)

  • Figure 1: Comb instance with $k$ 'teeth'. The unlabelled edges have $w_e=0$ and $c_e=\infty$; all other edges are labelled with $(w_e,c_e)$. The capacity $C$ is $2k-1$.
  • Figure 2: Worst-case instance for the greedy lower bound. Each edge $e$ is labelled with $(w_e,c_e)$, and $C=2$.

Theorems & Definitions (29)

  • Theorem 2.1
  • proof
  • Theorem 2.2
  • proof
  • Theorem 2.3
  • proof
  • Corollary 2.4
  • Corollary 2.5
  • Theorem 2.6
  • proof
  • ...and 19 more