1 Internet Networking Spring 2002 Tutorial 6 Network Cost of Minimum Spanning Tree.

Slides:



Advertisements
Similar presentations
Multicast in Wireless Mesh Network Xuan (William) Zhang Xun Shi.
Advertisements

IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture10.
NP-Complete Problems Polynomial time vs exponential time
Breadth-First Search Seminar – Networking Algorithms CS and EE Dept. Lulea University of Technology 27 Jan Mohammad Reza Akhavan.
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.
1 Representing Graphs. 2 Adjacency Matrix Suppose we have a graph G with n nodes. The adjacency matrix is the n x n matrix A=[a ij ] with: a ij = 1 if.
Computational Game Theory
1 Spanning Trees Lecture 20 CS2110 – Spring
1 Optimization problems such as MAXSAT, MIN NODE COVER, MAX INDEPENDENT SET, MAX CLIQUE, MIN SET COVER, TSP, KNAPSACK, BINPACKING do not have a polynomial.
1 -1 Chapter 1 Introduction Why Do We Need to Study Algorithms? To learn strategies to design efficient algorithms. To understand the difficulty.
1 Internet Networking Spring 2006 Tutorial 6 Network Cost of Minimum Spanning Tree.
Beyond selfish routing: Network Formation Games. Network Formation Games NFGs model the various ways in which selfish agents might create/use networks.
1 Vertex Cover Problem Given a graph G=(V, E), find V' ⊆ V such that for each edge (u, v) ∈ E at least one of u and v belongs to V’ and |V’| is minimized.
The Theory of NP-Completeness
1 Assignment 4. This one is cancelled since there is a solution on website. I new assignment will be given on Nov. 28. (Due on Friday of Week 14. Drop.
[1][1][1][1] Lecture 2-3: Coping with NP-Hardness of Optimization Problems in Practice May 26 + June 1, Introduction to Algorithmic Wireless.
1 Internet Networking Spring 2004 Tutorial 6 Network Cost of Minimum Spanning Tree.
Efficient algorithms for Steiner Tree Problem Jie Meng.
A 2-Approximation algorithm for finding an optimum 3-Vertex-Connected Spanning Subgraph.
1 NP-Complete Problems Polynomial time vs exponential time –Polynomial O(n k ), where n is the input size (e.g., number of nodes in a graph, the length.
Steiner trees Algorithms and Networks. Steiner Trees2 Today Steiner trees: what and why? NP-completeness Approximation algorithms Preprocessing.
Design and Analysis of Algorithms Minimum Spanning trees
Approximation Algorithms Motivation and Definitions TSP Vertex Cover Scheduling.
Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department.
1 NP-Complete Problems (Fun part) Polynomial time vs exponential time –Polynomial O(n k ), where n is the input size (e.g., number of nodes in a graph,
The Shortest Path Problem
TECH Computer Science Graph Optimization Problems and Greedy Algorithms Greedy Algorithms  // Make the best choice now! Optimization Problems  Minimizing.
Outline Introduction The hardness result The approximation algorithm.
Chapter 9 – Graphs A graph G=(V,E) – vertices and edges
Lecture 12-2: Introduction to Computer Algorithms beyond Search & Sort.
Network Models (2) Tran Van Hoai Faculty of Computer Science & Engineering HCMC University of Technology Tran Van Hoai.
Graph Theory Topics to be covered:
IEEE Globecom 2010 Tan Le Yong Liu Department of Electrical and Computer Engineering Polytechnic Institute of NYU Opportunistic Overlay Multicast in Wireless.
COSC 2007 Data Structures II Chapter 14 Graphs III.
Approximating the Minimum Degree Spanning Tree to within One from the Optimal Degree R 陳建霖 R 宋彥朋 B 楊鈞羽 R 郭慶徵 R
Minimum Routing Cost Spanning Trees Kun-Mao Chao ( 趙坤茂 ) Department of Computer Science and Information Engineering National Taiwan University, Taiwan.
7.1 and 7.2: Spanning Trees. A network is a graph that is connected –The network must be a sub-graph of the original graph (its edges must come from the.
1 Network Coding and its Applications in Communication Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
Approximation Algorithms
On a Network Creation Game PoA Seminar Presenting: Oren Gilon Based on an article by Fabrikant et al 1.
1 Steiner Tree Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij.
The Traveling Salesman Problem Over Seventy Years of Research, and a Million in Cash Presented by Vladimir Coxall.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
WK15. Vertex Cover and Approximation Algorithm By Lin, Jr-Shiun Choi, Jae Sung.
Lecture 23 CSE 331 Oct 24, Reminder 2 points for Piazza participation 3 points for mini-project.
1 The Encoding Complexity of Network Coding Michael Langberg California Institute of Technology Joint work with Jehoshua Bruck and Alex Sprintson.
COSC 5341 High-Performance Computer Networks Presentation for By Linghai Zhang ID:
QOS Routing: The Precomputation Perspective Ariel Orda and Alexander Sprintson Presented by: Jing, Niloufer, Tri.
Lagrangean Relaxation
The full Steiner tree problem Theoretical Computer Science 306 (2003) C. L. Lu, C. Y. Tang, R. C. T. Lee Reporter: Cheng-Chung Li 2004/06/28.
Homework 1 Problem 1: (5 points) Both Dijkstras algorihm and Bellmanford Algorithm generates shortest paths to all destinations. Modify the algorithm to.
1) Find and label the degree of each vertex in the graph.
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
Introduction to NP Instructor: Neelima Gupta 1.
Approximation Algorithms by bounding the OPT Instructor Neelima Gupta
Construction of Optimal Data Aggregation Trees for Wireless Sensor Networks Deying Li, Jiannong Cao, Ming Liu, and Yuan Zheng Computer Communications and.
Instructor Neelima Gupta Table of Contents Introduction to Approximation Algorithms Factor 2 approximation algorithm for TSP Factor.
Spanning Trees Dijkstra (Unit 10) SOL: DM.2 Classwork worksheet Homework (day 70) Worksheet Quiz next block.
CSE 326: Data Structures Lecture #17 Heuristic Graph Search Henry Kautz Winter Quarter 2002.
Operations Research II Course,, September Part 2: Network Flow Operations Research II Dr. Aref Rashad.
Minimum Spanning Tree Chapter 13.6.
Connected Components Minimum Spanning Tree
Robustness of wireless ad hoc network topologies
4-4 Graph Theory Trees.
Robustness of wireless ad hoc network topologies
Introduction Basic formulations Applications
CS 583 Analysis of Algorithms
Lecture 23 CSE 331 Oct 24, 2011.
Constructing a m-connected k-Dominating Set in Unit Disc Graphs
Presentation transcript:

1 Internet Networking Spring 2002 Tutorial 6 Network Cost of Minimum Spanning Tree

2 Motivation Effective implementation of Multicast at the Internet Understanding cost of performing multicast at the network Finding optimal multicast tree (Steiner tree) is NP-hard computational problem We will see the heuristics for finding a multicast tree that is least than 2 times worse than the optimal Steiner tree

3 Motivation (cont.) S C C C C C i1i2 C+ε 1 C+ε 2 Routing by Shortest Path Tree gives a cost of 5C comparing to C+ε Finding optimal tree is a hard problem: Should we select i1 or i2 (or neither)

4 Definitions Steiner tree problem: Let G(V,E) be a weighted graph, a set D  V and the source node s  V\D. |D|=m, m=1 – unicast, m=|V|-1 – broadcast. R is a tree that it is a sub graph of G consist of (at least) S and all vertexes of D (R is a multicast tree). P* is Steiner Tree if it is a tree with a minimal sum of edge weights between all possible R trees Remark: Finding Steiner Tree in the general graph in NP-hard problem

5 Heuristic We build a graph I(G), that it’s nodes will be: the node S and all nodes of D This will be a clique graph (each node has an edge with each other node) Weight of an edge e i,j will be a cost of the shortest path in the graph G between i and j We will find the Minimum Spanning Tree in the graph I(G) and will route according to it –This algorithm can be calculated in the polynomial time

6 Heuristic (cont.) a b c S G(V,E) S c b a I(G) S c b a T

7 Heuristic (remark) It’s possible that different paths in I(G) could contain identical parts in G(V,E) Simple circle of nodes in I(G) is also the minimum cost circle of the nodes in the same order in the graph G G(V,E) S a I(G) S b a b

8 Heuristic – proving upper bound by 2 S a d c b Diagram of the optimal Steiner tree for a given graph P 1 a circle that passes through the nodes s->a->b->c->d->s. It uses each edge of P* twice. Therefore: C(P 1 ) = 2C(P*) P 2 is a simple circle in graph I(G) that pass through all the nodes in the same order as P 1.

9 Heuristic – proving upper bound by 2 C(P 1 )≥C(P 2 ) because that weights of edges in I(G) represents shortest path weights in G –We saw that P* is optimal Steiner tree –We saw that P 1 passes twice in the path of P* and we got that: C(P 1 ) = 2C(P*) –We saw that a circle P 2 passes through nodes of D and s in the same order as P 1 and we got: C(P 1 )≥C(P 2 )

10 Heuristic – proving upper bound by 2 Let drop from P 2 the maximal weight edge. We got a tree. Let sign it P 3. It is clear that C(P 2 )≥C(P 3 ) (we dropped an edge) and because we dropped the edge with the maximal weight, its weight should be less than the average: (m+1) -1 C(P 2 ) (reminding |D|=m) Therefore: m(m+1) -1 C(P 2 ) ≥ C(P 3 ) In the heuristic we search for the minimum spanning tree in I(G), we call it T. It’s clear that C(P 3 ) ≥ C(T), because a T is minimum spanning tree in I(G) and P 3 is a just a one of the trees in I(G).

11 Heuristic – proving upper bound by 2 Therefore we got: 2m(m+1) -1 C(P*)  m(m+1) -1 C(P 2 )  C(P 3 )  C(T) and: 2 > 2m/(m+1)  C(T)/C(P*)

12 Bad case of the heuristic Steiner tree is a star around I and connected to S, with the cost: 5+5ε. A three that selects the heuristic is a direct connection of the nodes to S with the cost of 8. This holds the upper bound. (It can be seen that it is 2m/(m+1). If we put m=4, then we get 8/5). In the general case, the worst result that the heuristic can give is 2m/m+1 worse than the optimal S 1+ε 2 I