Lune

FOCS2023Top-tier venue

Traversing combinatorial 0/1-polytopes via optimization

Arturo Merino, Torsten Mütze

2023Year
2Citations
2Top-tier citations

Abstract

In this paper, we present a new framework that exploits combinatorial optimization for efficiently generating a large variety of combinatorial objects based on graphs, matroids, posets and polytopes. Our method relies on a simple and versatile algorithm for computing a Hamilton path on the skeleton of any 0/1-polytope conv⁡(X)\operatorname{conv}(X), where X⊆{0,1}nX \subseteq\{0,1\}^{n}. The algorithm uses as a black box any algorithm that solves a variant of the classical linear optimization problem min⁡{w⋅x∣x∈X}\min \{w \cdot x \mid x \in X\}, and the resulting delay, i.e., the running time per visited vertex on the Hamilton path, is only by a factor of log⁡n\log n larger than the running time of the optimization algorithm. When X encodes a particular class of combinatorial objects, then traversing the skeleton of the polytope conv⁡(X)\operatorname{conv}(X) along a Hamilton path corresponds to listing the combinatorial objects by local change operations, i.e., we obtain Gray code listings. As concrete results of our general framework, we obtain efficient algorithms for generating all (c-optimal) bases and independent sets in a matroid; (c-optimal) spanning trees, forests, matchings, maximum matchings, and c-optimal matchings in a general graph; vertex covers, minimum vertex covers, c-optimal vertex covers, stable sets, maximum stable sets and c-optimal stable sets in a bipartite graph; as well as antichains, maximum antichains, c-optimal antichains, and c-optimal ideals of a poset. Specifically, the delay and space required by these algorithms are polynomial in the size of the matroid ground set, graph, or poset, respectively. Furthermore, all of these listings correspond to Hamilton paths on the corresponding combinatorial polytopes, namely the base polytope, matching polytope, vertex cover polytope, stable set polytope, chain polytope and order polytope, respectively. As another corollary from our framework, we obtain an O(tLPlog⁡n)\mathcal{O}\left(t_{\text{LP}} \log n\right) delay algorithm for the vertex enumeration problem on 0/1-polytopes {x∈Rn∣Ax≤b}\left\{x \in \mathbb{R}^{n} \mid A x \leq b\right\}, where A∈Rm×nA \in \mathbb{R}^{m \times n} and b∈Rmb \in \mathbb{R}^{m}, and tLPt_{\text{LP}} is the time needed to solve the linear program min⁡{w⋅x∣Ax≤b}\min \{w \cdot x \mid A x \leq b\}. This improves upon the 25-year old O(tLPn)\mathcal{O}\left(t_{\text{LP}} n\right) delay algorithm due to Bussieck and Lübbecke.

Ask about this paper

Your agent reads all of it.

Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.

Questions to start from

Your agent calls

Luneget_paper_fulltext

Ask in Lune

Free to start. No credit card required.

lune papers fulltext f6453899-b80e-4e62-ac13-52107b8dcb20

Cited by top-tier papers2

Ask how each one uses it

Builds on1

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines