Skip to main content
QUICK REVIEW

[論文レビュー] Dynamic Steiner Tree in Planar Graphs.

Jakub Łącki, Jakub Oćwieja|arXiv (Cornell University)|Aug 15, 2013
Complexity and Algorithms in Graphs参考文献 30被引用数 3
ひとこと要約

本稿では、平面グラフにおける動的Steiner木のための最初のサブ線形時間アルゴリズムを提示する。これは、増分的・減分的・完全動的更新をサポートする新しい頂点からラベルへの距離オラクルを用いる。増分的設定ではO(log n)回のオラクル呼び出し、減分的設定ではO(1)回、完全動的設定ではO(log D)回のオラクル呼び出しを達成し、近似的に最適な更新時間を持つ。これにより、増分的設定では多対数時間、減分的および完全動的設定ではO(√n log n log D)の時間で実行可能である。

ABSTRACT

In this paper we study the Steiner tree problem over a dynamic set of terminals. We consider the model where we are given an n-vertex graph G = (V,E,w) with nonnegative edge weights w : E → R. Our goal is to maintain a tree T which is a good approximation of the minimum Steiner tree in G when the terminal set S ⊆ V changes over time. The changes applied to the terminal set are either terminal additions (incremental scenario), terminal removals (decremental scenario), or both (fully dynamic scenario). The Steiner tree problem is one of the core problems in combinatorial optimization. It has been studied in many different settings, starting from classical approximation algorithms, through online and stochastic models, ending with game theoretic approaches. However, almost nothing is known about the Steiner tree problem in a dynamic setting. The reason for this seems to be the lack of strong enough tools in both online approximation algorithms and dynamic algorithms. In this paper we develop appropriate methods that contribute to these both areas. The first ingredient is not restricted to planar graphs and contributes to the area of online algorithms. We prove that the maintained tree T after each update does not change too much and that it can be recomputed using a vertex-to-label distance oracle. A vertex-to-label oracle allows one to label the vertices and ask for the distance between a given vertex and the set of vertices marked with a particular label. A dynamic vertex-to-label oracle additionally supports merge and split operations on the label sets. We show that in incremental scenario O(log n) calls to the oracle per update operation suffice, in decremental O(1) calls are sufficient, whereas in fully dynamic scenario O(logD) calls are enough. Here, D denotes the stretch of the metric induced by G. The second ingredient, which contributes to the area of dynamic algorithms, is a construction of a fast (1+ )-approximate vertex-to-label distance oracles for planar graphs. In the case when labels’ sets can only grow (incremental scenario) we give an O( −1 log n logD) time data-structure. When the full set of operations is supported (i.e., merge and split on labels’ sets) we give O( −1 √ n log n logD) time data-structure. As an interesting side result, we present an exact incremental variant of the oracle working in O( √ n log n) amortized time and a fully-dynamic variant working in O(n log n) worst case time. The above oracles imply the first known sublinear time algorithm for dynamic Steiner tree problem in planar graphs. In particular we develop a polylogarithmic time incremental algorithm, an O( √ n log n logD) time decremental algorithm and an O( √ n log n logD) time fully-dynamic algorithm. ∗Institute of Informatics, University of Warsaw, Poland, j.lacki@mimuw.edu.pl. Jakub Łącki is a recipient of the Google Europe Fellowship in Graph Algorithms, and this research is supported in part by this Google Fellowship. †Institute of Informatics, University of Warsaw, Poland, netkuba@gmail.com. Partially supported by ERC grant PAAl no. 259515. ‡Institute of Informatics, University of Warsaw, Poland, malcin@mimuw.edu.pl. Partially supported by ERC grant PAAl no. 259515 and the Foundation for Polish Science. §Institute of Informatics, University of Warsaw, Poland, sank@mimuw.edu.pl. Partially supported by ERC grant PAAl no. 259515 and the Foundation for Polish Science. ¶Institute of Informatics, University of Warsaw, Poland, anka@mimuw.edu.pl. Partially supported by ERC grant PAAl no. 259515. ar X iv :1 30 8. 33 36 v2 [ cs .D S] 1 6 A ug 2 01 3

研究の動機と目的

  • 特に平面グラフにおいて、動的アルゴリズムの不足を解消すること。
  • 端末の更新(追加・削除)に対して近似Steiner木を効率的に維持するデータ構造の開発。
  • マージ・スプリット操作をサポートする新しい頂点からラベルへの距離オラクルを導入し、オンラインおよび動的アルゴリズムのギャップを埋めること。
  • 平面グラフにおける動的Steiner木のサブ線形更新時間の達成、長年の未解決問題を解決すること。
  • 異なる更新パターンに対応する近似および正確なオラクルの両方を提供すること。

提案手法

  • 頂点とラベル付き頂点集合の間の距離クエリをサポートする頂点からラベルへの距離オラクルを導入する。
  • ラベル集合のマージおよびスプリット操作をサポートする動的頂点からラベルへのオラクルを設計する。
  • オラクルを用いて近似比が有界な動的Steiner木を維持する。
  • 平面グラフに対して(1+ε)-近似オラクルを構築し、増分的更新ではO(ε⁻¹ log n log D)、完全動的更新ではO(ε⁻¹ √n log n log D)の時間で実行する。
  • 増分的更新用の正確なオラクルをO(√n log n)の amortized 時間で構築し、完全動的更新用の正確なオラクルをO(n log n)のworst-case 時間で達成する。
  • 平面性を活用してオラクルのパフォーマンスを最適化し、動的Steiner木のサブ線形更新時間を実現する。

実験結果

リサーチクエスチョン

  • RQ1動的端末更新の下で、平面グラフにおける近似Steiner木をサブ線形更新時間で維持できるか?
  • RQ2近似品質を保持しつつ、Steiner木に対する効率的な動的更新を可能にするデータ構造は何か?
  • RQ3マージ・スプリット操作をサポートするように、頂点からラベルへの距離オラクルをどのように拡張できるか?
  • RQ4増分的・減分的・完全動的設定における、平面グラフにおけるSteiner木の最適な時間計算量は何か?
  • RQ5動的Steiner木のための正確なオラクルを、近似的に最適な更新時間で構築できるか?

主な発見

  • 本稿は、平面グラフにおける動的Steiner木のための最初に知られるサブ線形時間アルゴリズムを提示する。
  • 増分的更新では、更新ごとにO(log n)回のオラクル呼び出しを用いて多対数時間の更新時間で実行可能である。
  • 減分的更新では、更新ごとにO(1)回のオラクル呼び出しを用いてO(√n log n log D)の時間で実行可能である。
  • 完全動的更新では、更新ごとにO(log D)回のオラクル呼び出しを用いてO(√n log n log D)の時間で実行可能である。
  • O(√n log n)のamortized更新時間で構築された正確な増分的オラクルが得られた。
  • O(n log n)のworst-case更新時間で達成された完全動的正確なオラクルである。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。