Algorithms for the transportation problem in geometric settings
For A, B ⊂ ℝd, |A| + |B| = n, let a ∈ A have a demand da ∈ ℤ+ and b ∈ B have a supply sb ∈ ℤ+, Σa∈A d a = Σb∈B sb = U and let d(·,·) be a distance function. Suppose the diameter of A ∪ B is Δ under d(·,·), and ε > 0 is a parameter. We present an algorithm that in O((n√U log2 n + U log U)Φ(n)log(ΔU/ε)) time computes a solution to the transportation problem on A, B which is within an additive error ε from the optimal solution. Here Φ(n) is the query and update time of a dynamic weighted nearest neighbor data structure under distance function d(·,·). Note that the (1/ε) appears only in the log term. As among various consequences we obtain, • For A, B ⊂ ℝd and for the case where d(·,·) is a metric, an ε-approximation algorithm for the transportation problem in O((n√U log2 n + U log U)Φ(n)log(ΔU/ε)) time. • For A, B ⊂ [Δ] d and the L1 and L∞, distance, exact algorithm for computing an optimal bipartite matching of A, B that runs in O(n3/2 logd+O(1) n log Δ) time. • For A, B ⊂ [Δ]2 and RMS distance, exact algorithm for computing an optimal bipartite matching of A, B that runs in O(n3/2+δ log Δ) time, for an arbitrarily small constant δ > 0. For point sets, A, B ⊂ [Δ]d, for the Lp norm and for O < α,β < 1, we present a randomized dynamic data structure that maintains a partial solution to the transportation problem under insertions and deletions of points in which at least (1 - α) U of the demands are satisfied and whose cost is within (1 + β) of that of the optimal (complete) solution to the transportation problem with high probability. The insertion, deletion and update times are O(poly(log(nΔ)/αβ)), provided U = nO(1). Copyright © SIAM.
Sharathkumar, R; Agarwal, PK
Proceedings of the Annual Acm Siam Symposium on Discrete Algorithms
Start / End Page
Digital Object Identifier (DOI)