The power of deferral: maintaining a constant-competitive steiner tree online

In the online Steiner tree problem, a sequence of points is revealed one-by-one: when a point arrives, we only have time to add a single edge connecting this point to the previous ones, and we want to minimize the total length of edges added. Here, a tight bound has been known for two decades: the greedy algorithm maintains a tree whose cost is O(log n) times the Steiner tree cost, and this is best possible. But suppose, in addition to the new edge we add, we have time to change a single edge from the previous set of edges: can we do much better? Can we, e.g., maintain a tree that is constant-competitive? We answer this question in the affirmative. We give a primal-dual algorithm that makes only a single swap per step (in addition to adding the edge connecting the new point to the previous ones), and such that the tree's cost is only a constant times the optimal cost. Our dual-based analysis is quite different from previous primal-only analyses. In particular, we give a correspondence between radii of dual balls and lengths of tree edges; since dual balls are associated with points and hence do not move around (in contrast to edges), we can closely monitor the edge lengths based on the dual radii. Showing that these dual radii cannot change too rapidly is the technical heart of the paper, and allows us to give a hard bound on the number of swaps per arrival, while maintaining a constant-competitive tree at all times. Previous results for this problem gave an algorithm that performed an amortized constant number of swaps: for each n, the number of swaps in the first $n$ steps was O(n). We also give a simpler tight analysis for this amortized case.

[1]  Martin Skutella,et al.  A Robust PTAS for Machine Covering and Packing , 2010, ESA.

[2]  Michael Mitzenmacher,et al.  Using a Queue to De-amortize Cuckoo Hashing in Hardware , 2007 .

[3]  William J. Cook,et al.  Combinatorial optimization , 1997 .

[4]  Ashwinkumar Badanidiyuru,et al.  Buyback Problem - Approximate Matroid Intersection with Cancellation Costs , 2010, ICALP.

[5]  Leah Epstein,et al.  Robust Algorithms for Preemptive Scheduling , 2011, Algorithmica.

[6]  Martin Skutella,et al.  Online Scheduling with Bounded Migration , 2004, ICALP.

[7]  R. Ravi,et al.  When trees collide: an approximation algorithm for the generalized Steiner problem on networks , 1991, STOC '91.

[8]  Noga Alon,et al.  On-line steiner trees in the Euclidean plane , 1992, SCG '92.

[9]  Yossi Azar,et al.  Competitive routing of virtual circuits with unknown duration , 1994, SODA '94.

[10]  Lisa Zhang,et al.  Improved Bounds for On-Line Load Balancing , 1996, Algorithmica.

[11]  Yossi Azar,et al.  On-line generalized Steiner problem , 1996, SODA '96.

[12]  Moni Naor,et al.  De-amortized Cuckoo Hashing: Provable Worst-Case Performance and Experimental Results , 2009, ICALP.

[13]  Jeffery R. Westbrook,et al.  Load Balancing for Response Time , 1995, J. Algorithms.

[14]  Piotr Berman,et al.  On-line algorithms for Steiner tree problems (extended abstract) , 1997, STOC '97.

[15]  R. Ravi,et al.  When Trees Collide: An Approximation Algorithm for the Generalized Steiner Problem on Networks , 1995, SIAM J. Comput..

[16]  Joseph Naor,et al.  The Design of Competitive Online Algorithms via a Primal-Dual Approach , 2009, Found. Trends Theor. Comput. Sci..

[17]  Verschae Tannenbaum,et al.  The Power of Recourse in Online Optimization: Robust Solutions for Scheduling, Matroid and MST Problems , 2012 .

[18]  David P. Williamson,et al.  A general approximation technique for constrained forest problems , 1992, SODA '92.

[19]  Vijay V. Vazirani,et al.  Approximation Algorithms , 2001, Springer Berlin Heidelberg.

[20]  Makoto Imase,et al.  Dynamic Steiner Tree Problem , 1991, SIAM J. Discret. Math..

[21]  Lisa Zhang,et al.  Improved Bounds for On-line Load Balancing , 1996, COCOON.

[22]  David P. Williamson,et al.  The Design of Approximation Algorithms , 2011 .