CSE 550 Computer Network Design

Slides:



Advertisements
Similar presentations
ECE 667 Synthesis and Verification of Digital Circuits
Advertisements

O(N 1.5 ) divide-and-conquer technique for Minimum Spanning Tree problem Step 1: Divide the graph into  N sub-graph by clustering. Step 2: Solve each.
Multicast in Wireless Mesh Network Xuan (William) Zhang Xun Shi.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Satisfiability problem Tree representation of 8 assignments. If there are n variables x 1, x 2, …,x n, then.
Chapter 3 The Greedy Method 3.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
Graphs & Graph Algorithms 2 Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
PROFITABLE CONNECTION ASSIGNMENT IN ALL OPTICAL WDM NETWORKS VISHAL ANAND LANDER (Lab. for Advanced Network Design, Evaluation and Research) In collaboration.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 10 Instructor: Paul Beame.
TCOM 540/11 TCOM 540 Session 6. TCOM 540/12 Agenda Review Session 4 and 5 assignments Multicenter local access design.
CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)
Graphs & Graph Algorithms 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Minimum Spanning Trees. Subgraph A graph G is a subgraph of graph H if –The vertices of G are a subset of the vertices of H, and –The edges of G are a.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
COSC 2007 Data Structures II Chapter 14 Graphs III.
Slide 1 Chapter 9 Mesh Network Design - II. Slide 2 Mesh Network Design The design of backbone networks is governed by 3 goals: nDirect path between source.
EMIS 8374 Optimal Trees updated 25 April slide 1 Minimum Spanning Tree (MST) Input –A (simple) graph G = (V,E) –Edge cost c ij for each edge e 
Minimal Spanning Tree Problems in What is a minimal spanning tree An MST is a tree (set of edges) that connects all nodes in a graph, using.
Minimum Spanning Trees CS 146 Prof. Sin-Min Lee Regina Wang.
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
Routing Topology Algorithms Mustafa Ozdal 1. Introduction How to connect nets with multiple terminals? Net topologies needed before point-to-point routing.
Algorithm Design Methods 황승원 Fall 2011 CSE, POSTECH.
1 TCOM 5143 Lecture 10 Centralized Networks: Time Delay and Cost Tradeoffs.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 14, 2014.
St. Edward’s University
Greedy Technique.
Dijkstra’s shortest path Algorithm
Algorithm Design Methods
The minimum cost flow problem
ElasticTree Michael Fruchtman.
Design and Analysis of Algorithm
Great Theoretical Ideas in Computer Science
CS 3343: Analysis of Algorithms
Topological Sort (topological order)
1.3 Modeling with exponentially many constr.
Graph Algorithm.
Unit 3 (Part-I): Greedy Algorithms
Minimum Spanning Tree.
EMIS 8373: Integer Programming
Minimum Spanning Tree.
Graphs & Graph Algorithms 2
Modeling and Simulation NETW 707
Analysis of Algorithms
Robustness of wireless ad hoc network topologies
Multi-Objective Optimization for Topology Control in Hybrid FSO/RF Networks Jaime Llorca December 8, 2004.
Robustness of wireless ad hoc network topologies
Access Network Design A Backbone network connects major sites.
CSE373: Data Structures & Algorithms Lecture 19: Spanning Trees
Graph Searching.
Algorithms for Budget-Constrained Survivable Topology Design
Greedy Algorithms TOPICS Greedy Strategy Activity Selection
3. Brute Force Selection sort Brute-Force string matching
1.3 Modeling with exponentially many constr.
Spanning Tree Algorithms
Branch and Bound Searching Strategies
Minimum Spanning Tree.
3. Brute Force Selection sort Brute-Force string matching
Chapter 6 Network Flow Models.
CSE 373: Data Structures and Algorithms
Homework #6: Local Access Design
Algorithm Design Methods
Maximum Flow Neil Tang 4/8/2008
The Greedy Approach Young CS 530 Adv. Algo. Greedy.
Parallel Graph Algorithms
Spanning Trees Lecture 20 CS2110 – Spring 2015.
Approximation Algorithms
Algorithm Design Methods
CSCI 465 Data Communications and Networks Lecture 16
3. Brute Force Selection sort Brute-Force string matching
Presentation transcript:

CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2012 (Term 112)

Outline Topology Design for Centralized Networks Multipoint Line Topology Terminal Assignment Concentrator Location CSE-550-T112 Lecture Notes - 4

Centralized Network Design Centralized network: is where all communication is to and from a single central site The “central site” is capable of making routing decisions → Tree topology provides only one path through the center (For reliability, lines between other sites can be included) Center Concentrator Terminal High speed lines Low speed lines CSE-550-T112 Lecture Notes - 4

Centralized Network Design Problems Multipoint line topology: selection of links connecting terminals to concentrators or directly to the center Terminal assignment: association of terminals with specific concentrators Concentrator location: deciding where to place concentrators, and whether or not to use them at all CSE-550-T112 Lecture Notes - 4

Multipoint Line Topology

The Greedy Algorithm At each stage, select the shortest edge possible (myopic or near-sighted): Start with empty solution s While elements exist Find e, the best element not yet considered If adding e to s is feasible, add it; if not, discard it May not find a feasible solution when one exists Efficient and simple to implement → widely used Basis of other more complex and effective algorithms A Minimum Spanning Tree (MST) is a tree of minimum total cost In the case of MST, the greedy algorithm guarantees both optimality and reasonable computational complexity CSE-550-T112 Lecture Notes - 4

Constrained/Capacitated MST (CMST) CMST Problem: Given: A central node N0 A set of other nodes (N1, N2, …, Nn) A set of weights (W1, W2, …, Wn) for each node The capacity of each link Wmax A cost matrix Cij = Cost(i,j) Find a set of trees T1, T2, …, Tk such that: Each Ni belongs to exactly one Tj, and Each Tj contains N0 is minimized CSE-550-T112 Lecture Notes - 4

CMST Objective: Find a tree of minimum cost and which satisfies a number of constraints such as: Flow over a link Number of ports The CMST problem is NP-hard (i.e., cannot be solved in polynomial time) → Resort to heuristics (approximate algorithms) These heuristics will attempt to find a good feasible solution, not necessarily the best, that: Minimizes the cost Satisfies all the constraints Well-known heuristics: Kruskal Prim Esau-Williams CSE-550-T112 Lecture Notes - 4

Kruskal’s Algorithm for CMST Example: Given a network with five nodes, labelled 1 to 5, and characterized by the following cost matrix Node 1 is the central backbone node fmax=5, f1=0, f2=2, f3=3, f4=2, f5=1 CSE-550-T112 Lecture Notes - 4

Prim’s Algorithm for CMST CSE-550-T112 Lecture Notes - 4

Esau-Williams Algorithm for CMST Node 1 is the central node. tij: is the tradeoff of connecting i to j or i directly to the root If (tij < 0) → better to connect i to j If (tij ≥ 0) → better to connect i directly to the root Algorithm: CSE-550-T112 Lecture Notes - 4

Terminal Assignment

Problem Statement Terminal Assignment: Association of terminals with specific concentrators Given: T terminals (stations) i = 1, 2, …, T C concentrators (hubs/switches) j = 1, 2, …, C Cij: cost of connecting terminal i to concentrator j Wj: capacity of concentrator j Assume that terminal i requires Wi units of a concentrator capacity Assume that the cost of all concentrators is the same xij = 1; if terminal i is assigned to concentrator j xij = 0; otherwise Objective: Minimize: Subject to: i = 1, 2, …, T (Each terminal associated with one Concentrator) j = 1, 2, …, C (Capacity of concentrators is not exceeded) CSE-550-T112 Lecture Notes - 4

Assignment Problem Given a cost matrix: Assume that: One column per concentrator One row per terminal Assume that: Weight of each terminal is 1 (i.e., each terminal consumes exactly one unit of concentrator capacity) A concentrator has a capacity of W terminals (e.g., number of ports) A feasible solution exists iff T ≤ W * C C1 C2 T1 T2 T3 CSE-550-T112 Lecture Notes - 4

Augmenting Path Algorithm It is based on the following observations: Ideally, every terminal is assigned to the nearest concentrator Terminals on concentrators that are full are moved only to make room for another terminal that would cause a higher overall cost if assigned to another concentrator An optimal partial solution with k+1 terminals can be found by finding the least expensive way of adding the (k+1)th terminal to the k terminal solution CSE-550-T112 Lecture Notes - 4

Augmenting Path Algorithm Initially, try to associate each terminal to its nearest concentrator If successful in assigning all terminals without violating capacity constraints, then stop (i.e., an optimal solution is found) Else, Repeat Build a compressed auxiliary graph Find an optimal augmentation Until all terminals are assigned CSE-550-T112 Lecture Notes - 4

Building a Compressed Auxiliary Graph U: set of unassociated terminals T(Y): set of terminals associated with Y CSE-550-T112 Lecture Notes - 4

Building a Compressed Auxiliary Graph CSE-550-T112 Lecture Notes - 4

Example Cost Matrix: W = 2 (capacity of each concentrator) Solution: (a, H) (b, I), (c, H), (d, G), (e, I), (f, G) Cost = 15 G H I a 6 3 8 b 2 9 4 c 1 d 5 e f 7 CSE-550-T112 Lecture Notes - 4

Concentrator Location

Problem Statement Concentrator location: deciding where to place concentrators, and whether or not to use them at all Given: T terminals (stations) i = 1, 2, …, T C concentrators (hubs/switches) j = 1, 2, …, C Cij: cost of connecting terminal i to concentrator j dj: cost of placing a concentrator at location j (i.e., cost of opening a location j) Kj: maximum capacity (of terminals) that can be handled at possible location j Assume that terminal i requires Wi units of a concentrator capacity xij = 1; if terminal i is assigned to concentrator j; 0, otherwise yj = 1; if a concentrator is decided to be located at site j; 0, otherwise Objective: Minimize: Subject to: i = 1, 2, …, T (Each terminal associated with one Concentrator) j = 1, 2, …, C (Capacity of concentrators is not exceeded) CSE-550-T112 Lecture Notes - 4

Add Algorithm Greedy Algorithm Start with all terminals connected directly to the center Evaluate the savings obtainable by adding a concentrator at each site Greedily select the concentrator which saves the most money CSE-550-T112 Lecture Notes - 4

Add Algorithm Initialization: For , do where M: set of locations Select an initial location m Assume all terminals are connected to m Set L0 = {m} Set k = 0 (iteration count) c'i = cim, i= 1, 2, …, N Compute: For , do where Determine a new m such that: If there is no such m, go to step 4. Update: and for Set and k:= k+1, and go to Step 1. No more improvement possible; stop. CSE-550-T112 Lecture Notes - 4

Example Cost Matrix: Kj = 3, j = 1, 2, 3, 4 (capacity of each concentrator) d1 = 0, d2 = d3 = d4 = 2 Solution: S2 (1, 2, 3), S1 (4), S4 (5, 6) Cost = 9 S1 S2 S3 S4 1 2 4 3 5 6 CSE-550-T112 Lecture Notes - 4

References A. Kershenbaum, “Telecommunications Network Design Algorithms”, McGraw-Hill,1993 M. Pióro and D. Medhi, “Routing, Flow, and Capacity Design in Communication and Computer Networks”, Morgan Kaufmann Publishers, Inc., 2004 CSE-550-T112 Lecture Notes - 4