The swap edges of a multiple source routing tree * 樹德資工 † 台大資工 Bang Ye Wu* Chih-Yuan Hsiao † Kun-Mao Chao †

Slides:



Advertisements
Similar presentations
Colorings of graphs and Ramsey’s theorem
Advertisements

A Better Algorithm for Finding Planar Subgraph Gruia Călinescu Cristina G. Fernandes Ulrich Finkler Howard Karloff.
Approximating the two-source minimum routing cost spanning trees Bang Ye Wu Shu-Te University.
第七章 抽樣與抽樣分配 蒐集統計資料最常見的方式是抽查。這 牽涉到兩個問題: 抽出的樣本是否具有代表性?是否能反應出母體的特徵?
: A-Sequence 星級 : ★★☆☆☆ 題組: Online-judge.uva.es PROBLEM SET Volume CIX 題號: Problem D : A-Sequence 解題者:薛祖淵 解題日期: 2006 年 2 月 21 日 題意:一開始先輸入一個.
:Word Morphing ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10508:word morphing 解題者:楊家豪 解題日期: 2006 年 5 月 21 日 題意: 第一行給你兩個正整數, 第一個代表下面會出現幾個字串,
: ACM CONTEST AND BLACKOUT ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10600: ACM CONTEST AND BLACKOUT 解題者:洪光燦 解題日期: 2006 年 6 月 12 日 題意:每個學校都需要電力,但是只有一台發電.
Instructor: Ching-Chi Lin 林清池 助理教授
Review of Chapter 3 - 已學過的 rules( 回顧 )- 朝陽科技大學 資訊管理系 李麗華 教授.
Graph V(G 1 )={0, 1, 2, 3, 4, 5, 6, 7, 8, 9} E(G 1 )={(0, 2), (0, 3), (1, 4), (2, 3), (2, 5), (2, 6), (3, 6), (3, 7), (4, 7), (5, 6), (5,
: Matrix Decompressing ★★★★☆ 題組: Contest Volumes with Online Judge 題號: 11082: Matrix Decompressing 解題者:蔡權昱、劉洙愷 解題日期: 2008 年 4 月 18 日 題意:假設有一矩陣 R*C,
第 4 章 迴歸的同步推論與其他主題.
JAVA 程式設計與資料結構 第十四章 Linked List. Introduction Linked List 的結構就是將物件排成一列, 有點像是 Array ,但是我們卻無法直接經 由 index 得到其中的物件 在 Linked List 中,每一個點我們稱之為 node ,第一個 node.
8.1 何謂高度平衡二元搜尋樹 8.2 高度平衡二元搜尋樹的加入 8.3 高度平衡二元搜尋樹的刪除
: The Playboy Chimp ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10611: The Playboy Chimp 解題者:蔡昇宇 解題日期: 2010 年 2 月 28 日 題意:給一已排序的數列 S( 升冪.
Graph Theory Graph theory is the study of the properties of graph structures. It provides us with a language with which to talk about graphs.
Monte Carlo Simulation Part.2 Metropolis Algorithm Dept. Phys. Tunghai Univ. Numerical Methods C. T. Shih.
1 第四章 多變數函數的微分學 § 4.1 偏導數定義 定義 極限值 ■. 2 定理 極限值的基本定理 (1) 極限值的唯一性 : 若 存在,則 其值必為唯一。 (2) 若 且 ( 與 為常數 ) , 則 且 為常數且.
Introduction to Java Programming Lecture 17 Abstract Classes & Interfaces.
:Problem D: Bit-wise Sequence ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10232: Problem D: Bit-wise Sequence 解題者:李濟宇 解題日期: 2006 年 4 月 16.
: The largest Clique ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11324: The largest Clique 解題者:李重儀 解題日期: 2008 年 11 月 24 日 題意: 簡單來說,給你一個 directed.
Matlab Assignment Due Assignment 兩個 matlab 程式 : Eigenface : Eigenvector 和 eigenvalue 的應用. Fractal : Affine transform( rotation, translation,
: Tight words ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: : Tight Words 解題者:鐘緯駿、林一帆 解題日期: 2006 年 03 月 14 日 題意: 給定數字 k 與 n (0 ≦ k.
: Multisets and Sequences ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11023: Multisets and Sequences 解題者:葉貫中 解題日期: 2007 年 4 月 24 日 題意:在這個題目中,我們要定義.
: Placing Lampposts ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10859: Placing Lampposts 解題者:陳志瑜 解題日期: 2011 年 5 月 10 日 題意:美化為 Dhaka City.
:Nuts for nuts..Nuts for nuts.. ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 10944:Nuts for nuts.. 解題者:楊家豪 解題日期: 2006 年 2 月 題意: 給定兩個正整數 x,y.
資料結構實習-一 參數傳遞.
Deletion in MIN-MAX Heaps Delete min element Delete max element.
: Efficient Solutions ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11020: Efficient Solutions 解題者:陳宜佐 解題日期: 2007 年 4 月 24 日 題意:給定 M 個 case.
經濟問題 CHAPTER 3 C H A P T E R C H E C K L I S T 學習本章後,您將能: 利用生產可能邊界來描述經濟問題 計算機會成本 定義效率與描述資源的效率使用 解釋生產可能邊界擴張的原因 解釋人們如何受惠於專業化與交易.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2008.
1 An algorithm for finding a shortest vector in a two- dimensional modular lattice An algorithm for finding a shortest vector in a two- dimensional modular.
: A-Sequence ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10930: A-Sequence 解題者:陳盈村 解題日期: 2008 年 5 月 30 日 題意: A-Sequence 需符合以下的條件, 1 ≤ a.
: Lucky Number ★★★★☆ 題組: Proble Set Archive with Online Judge 題號: 10909: Lucky Number 解題者:李育賢 解題日期: 2008 年 4 月 25 日 題意:給一個奇數數列 1,3,5,7,9,11,13,15…
JAVA 程式設計與資料結構 第二十章 Searching. Sequential Searching Sequential Searching 是最簡單的一種搜尋法,此演 算法可應用在 Array 或是 Linked List 此等資料結構。 Sequential Searching 的 worst-case.
演算法 8-1 最大數及最小數找法 8-2 排序 8-3 二元搜尋法.
-Antidifferentiation- Chapter 6 朝陽科技大學 資訊管理系 李麗華 教授.
逆向選擇和市場失調. 定義  資料不對稱 在交易其中,其中一方較對方有多些資料。  逆向選擇 出現在這個情況下,就是當買賣雙方隨意在 市場上交易,與比較主動交易者作交易為佳 。
845: Gas Station Numbers ★★★ 題組: Problem Set Archive with Online Judge 題號: 845: Gas Station Numbers. 解題者:張維珊 解題日期: 2006 年 2 月 題意: 將輸入的數字,經過重新排列組合或旋轉數字,得到比原先的數字大,
Chapter 10 m-way 搜尋樹與B-Tree
A Search Procedure for Hamilton Paths and Circuits Frank Rubin JACM, Vol. 21, No. 4, pp , Oct
1 523: Minimum Transport Cost ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 523: Minimum Transport Cost 解題者:林祺光 解題日期: 2006 年 6 月 12 日 題意:計算兩個城市之間最小的運輸成本,運輸.
Cluster Analysis 目的 – 將資料分成幾個相異性最大的群組 基本問題 – 如何衡量事務之間的相似性 – 如何將相似的資料歸入同一群組 – 如何解釋群組的特性.
中序轉後序 藉由由左向右掃瞄中序運算式產生後序運算式,遇到 運算元就直接輸出,遇到運算符號則先存入堆疊,將 優先權較高者輸出。 範例: a + b * c TokenStack [0] [1] [2] topoutput aa ++0a b+0ab *+ *1ab c+ *1abc eosabc*+
: Problem E Antimatter Ray Clearcutting ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11008: Problem E Antimatter Ray Clearcutting 解題者:林王智瑞.
兩黨與多黨政黨體系 Lijphart (1984) Party Systems: Two-Party and Multiparty Patterns.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2010.
: SAM I AM ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11419: SAM I AM 解題者:李重儀 解題日期: 2008 年 9 月 11 日 題意: 簡單的說,就是一個長方形的廟裡面有敵人,然 後可以橫的方向開砲或縱向開砲,每次開砲可以.
:Count the Trees ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10007:Count the Trees 解題者:楊家豪 解題日期: 2006 年 3 月 題意: 給 n 個點, 每一個點有自己的 Label,
: GCD (I) ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11424: GCD(I) 解題者:李育賢 解題日期: 2008 年 9 月 19 日 題意: 最多 20,000 組測資,題目會給一個數字 N(1
: Finding Paths in Grid ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11486: Finding Paths in Grid 解題者:李重儀 解題日期: 2008 年 10 月 14 日 題意:給一個 7 個 column.
著作權所有 © 旗標出版股份有限公司 第 14 章 製作信封、標籤. 本章提要 製作單一信封 製作單一郵寄標籤.
1 Knapsack Cryptosystems 2 ◎ Merkle-Hellman Knapsack Cryptosystem 觀察: (1) 0/1 knapsack problem (i.e. sum of subset) 例:已知 C = 14, A = (1, 10, 5, 22, 3)
幼兒行為觀察與記錄 第八章 事件取樣法.
CH 14-可靠度工程之數學基礎 探討重點 失效時間之機率分配 指數模式之可靠度工程.
: How many 0's? ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11038: How many 0’s? 解題者:楊鵬宇 解題日期: 2007 年 5 月 15 日 題意:寫下題目給的 m 與 n(m
Graph Theory Chapter 7 Eulerian Graphs 大葉大學 (Da-Yeh Univ.) 資訊工程系 (Dept. CSIE) 黃鈴玲 (Lingling Huang)
Graph Theory Chapter 6 Matchings and Factorizations 大葉大學 (Da-Yeh Univ.) 資訊工程系 (Dept. CSIE) 黃鈴玲 (Lingling Huang)
Chapter 3 Trees and Forests 大葉大學 資訊工程系 黃鈴玲
Data Structures -Final exam- 2015/6/22 授課教授:李錫智. Question 1. Let a hash table have 13 entries. Suppose we have 10 integer keys: 68, 100, 58, 80, 72, 101,
Graph Theory Chapter 10 Coloring Graphs 大葉大學 (Da-Yeh Univ.) 資訊工程系 (Dept. CSIE) 黃鈴玲 (Lingling Huang)
Graphs 1 Neil Ghani University of Strathclyde. Where are we …. We studied lists: * Searching and sorting a list Then we studied trees: * Efficient search.
Chapter 10 Independence, Dominance, and Matchings
Chapter 13 Graph Algorithms
Shortest-Paths Trees Kun-Mao Chao (趙坤茂)
Trees Kun-Mao Chao (趙坤茂)
Presentation transcript:

The swap edges of a multiple source routing tree * 樹德資工 † 台大資工 Bang Ye Wu* Chih-Yuan Hsiao † Kun-Mao Chao †

Swap edge For an edge of a spanning tree T of a undirected graph G –Swap edge: a non-tree minimizing the routing cost of the new tree. –Routing cost: total distance from sources to vertices

Problem Definition Given a undirected graph G=(V, E, w) with a positive edge weight function w and a spanning tree T of G, we want to find the swap edge for every tree edge e ∈ T

Previous result Swap edges for a single-source shortest- paths tree: Time complexity O(n 2 ) Constructing k-sources minimum routing cost spanning tree: –NP hard even for any constant k>1 –PTAS for k=2 and k=n –2-approx. for arbitrary k

Swap edge problem Polynomial time solvable (for any objective function) –Direct method: Compute the costs for all possible edges and choose the best O(kn) for computing the routing cost of a tree O(m) possible edges O(n) tree edges Total: O(kmn 2 )  O(mn 3 ) –How to find the swap edges more efficiently?

Our results The Two-sources case –O(mlogn+n 2 ) The Multiple-sources case –O(mn)

Two-sources case

Two cases 1.The removed edges are not in the path(s 1,s 2 ) : modify the one-source algorithm slightly! 2.The removed edges are in the path(s 1,s 2 ) : need some tricks here!

Edges not in the path We create an auxiliary graph with a super node s Then apply the single-source case algorithm!

Our goal is to compute, for each i, min δ(f,i) =D(s 2,Y i )+D(s 1,Y i ) among all f cross the cut r 1 r p r q V 0 V 1 V p V k V q r i r i+1 Y i Y i f x y e i s 1 =r 0 s 2 =r k Edges in Path(s1,s2)

r 1 r p r q V 0 V 1 V p V k V q r i r i+1 Y i Y i f x y e i s 1 =r 0 s 2 =r k E x : 左端點為 x 的 edges For each x, compute F x (i)=min f δ(f,i), (f in E x ) Then, the swap cost of e i is the min of F x (i) among all x.

If y 1 and y 2 are in the same set V q, f ’ 1 and f ’ 2 never intersect in [p,q]. only one edge in a set V q need considered r 1 r p r q V 0 V 1 V p V k V q r i r i+1 Y i Y i f x y e i s 1 =r 0 s 2 =r k

f ’ 1, f ’ 2 and f ’ 3 are in the same set V q

r q V k V q r i+1 Y i f2f2 e i s 2 =r k f1f1 r j j V 若 f1 的右端點 > f2 的右端點 當 i 增加時, 對 f1 必然更有利 我們證明 : f2(i)-f1(i) 是隨著 i 而 monotonically increasing

f ’ 1 and f ’ 2 are from different sets f2 一但在某一點穿越 f1, 就不會在回頭

Merge Process 將 E x 中的 edge 依照右端點 sorting, 由右 向左逐步將 f 合併 ( 取 min) Let F i-1 是前 i-1 個合併之 function, we design an algorithm merging F i-1 and f i F i-1 是由若干個 interval 組成, 每一個 interval 我們知道其最小的 f 為何

Merging process Claim: f i intersects F i-1 at most once, and if so, f i appears at the first interval of F i F i-1 fifi FiFi

Store the intervals of F i-1 in a link list L Scan L from the head to find the intersection interval. Time: O(α i ) Use binary search to find the intersection point in the interval. Time: O(log n) Remove the intervals before the intersection interval, and break the first interval. Time: O(α i ) F i-1 fifi FiFi

The time complexity for scanning and removing the intervals L i : # of intervals of F i α i : # of scanned intervals when merging f i L i = L i-1 - α i +1, L 1 =1 and L h >0. Σα i <=2(h-1)=O(|F x |)

Time complexity Preprocessing: O(n 2 ) For a fixed x eliminating useless edges: O(|E x |) sorting: O(|F x |log|F x |) merge process: O(|F x |logn) Total : O(mlogn+n 2 )

Multiple-sources case

f Routing load l(f) = s1*n2+s2*n1 Routing cost of a tree=Σl(f)*w(f) Can be computed in O(n) time T2T2 T1T1 Routing load

Multiple sources Naive method: n tree edges and m non-tree edges  O(mn 2 ) time Our method: –Find the swap edges individually –For each tree edge e, after a preprocessing stage, the cost of T-e+f can be computed in O(1) time for any non-tree edge f.

Observation There are only two possible values for the routing load of an edge, depending on which side the new edge is connected to.

Compute the two possible routing loads of every edge For each vertex v, compute a value g(v): 如果 new edge 接在 v 點時, 該 subtree 的 routing cost Can be done by traversing the tree twice  O(n)

Future work More efficient algorithms, especially for k>2 Swap edges for different objective