English

Automating the Search for Small Hard Examples to Approximation Algorithms

Data Structures and Algorithms 2025-04-29 v2

Abstract

Given an approximation algorithm AA, we want to find the input with the worst approximation ratio, i.e., the input for which AA's output's objective value is the worst possible compared to the optimal solution's objective value. Such hard examples shed light on the approximation algorithm's weaknesses, and could help us design better approximation algorithms. When the inputs are discrete (e.g., unweighted graphs), one can find hard examples for small input sizes using brute-force enumeration. However, it's not obvious how to do this when the input space is continuous, as in makespan minimization or bin packing. We develop a technique for finding small hard examples for a large class of approximation algorithms. Our algorithm works by constructing a decision tree representation of the approximation algorithm and then running a linear program for each leaf node of the decision tree. We implement our technique in Python, and demonstrate it on the longest-processing-time (LPT) heuristic for makespan minimization.

Keywords

Cite

@article{arxiv.2504.04738,
  title  = {Automating the Search for Small Hard Examples to Approximation Algorithms},
  author = {Eklavya Sharma},
  journal= {arXiv preprint arXiv:2504.04738},
  year   = {2025}
}

Comments

v2: fixed some math typos and improved layout

R2 v1 2026-06-28T22:48:56.171Z