Minimizing Convex Functions with Rational Minimizers (2007.01445v5)
Abstract: Given a separation oracle $\mathsf{SO}$ for a convex function $f$ defined on $\mathbb{R}n$ that has an integral minimizer inside a box with radius $R$, we show how to find an exact minimizer of $f$ using at most (a) $O(n (n \log \log (n)/\log (n) + \log(R)))$ calls to $\mathsf{SO}$ and $\mathsf{poly}(n, \log(R))$ arithmetic operations, or (b) $O(n \log(nR))$ calls to $\mathsf{SO}$ and $\exp(O(n)) \cdot \mathsf{poly}(\log(R))$ arithmetic operations. When the set of minimizers of $f$ has integral extreme points, our algorithm outputs an integral minimizer of $f$. This improves upon the previously best oracle complexity of $O(n2 (n + \log(R)))$ for polynomial time algorithms and $O(n2\log(nR))$ for exponential time algorithms obtained by [Gr\"otschel, Lov\'asz and Schrijver, Prog. Comb. Opt. 1984, Springer 1988] over thirty years ago. Our improvement on Gr\"otschel, Lov\'asz and Schrijver's result generalizes to the setting where the set of minimizers of $f$ is a rational polyhedron with bounded vertex complexity. For the Submodular Function Minimization problem, our result immediately implies a strongly polynomial algorithm that makes at most $O(n3 \log \log (n)/\log (n))$ calls to an evaluation oracle, and an exponential time algorithm that makes at most $O(n2 \log(n))$ calls to an evaluation oracle. These improve upon the previously best $O(n3 \log2(n))$ oracle complexity for strongly polynomial algorithms given in [Lee, Sidford and Wong, FOCS 2015] and [Dadush, V\'egh and Zambelli, SODA 2018], and an exponential time algorithm with oracle complexity $O(n3 \log(n))$ given in the former work. Our result is achieved via a reduction to the Shortest Vector Problem in lattices. We analyze its oracle complexity using a potential function that simultaneously captures the size of the search set and the density of the lattice.