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

Slides:



Advertisements
Similar presentations
Great Theoretical Ideas in Computer Science
Advertisements

COMP 482: Design and Analysis of Algorithms
ECE 667 Synthesis and Verification of Digital Circuits
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.
Greed is good. (Some of the time)
1 Maximum flow sender receiver Capacity constraint Lecture 6: Jan 25.
CP3397 Network Design and Security Lecture 4 WAN design - Principles and practice.
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.
EMIS 8373: Integer Programming Valid Inequalities updated 4April 2011.
Combinatorial Algorithms
Chapter 3 The Greedy Method 3.
Branch and Bound Searching Strategies
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.
Maximum Flows Lecture 4: Jan 19. Network transmission Given a directed graph G A source node s A sink node t Goal: To send as much information from s.
[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 Branch and Bound Searching Strategies 2 Branch-and-bound strategy 2 mechanisms: A mechanism to generate branches A mechanism to generate a bound so.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 10 Instructor: Paul Beame.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Breadth-first search (BFS) 8-puzzle problem The breadth-first search uses a queue to hold all expanded nodes.
Network Flow Models Chapter 7.
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.
NetworkModel-1 Network Optimization Models. NetworkModel-2 Network Terminology A network consists of a set of nodes and arcs. The arcs may have some flow.
Flow Models and Optimal Routing. How can we evaluate the performance of a routing algorithm –quantify how well they do –use arrival rates at nodes and.
Escaping local optimas Accept nonimproving neighbors – Tabu search and simulated annealing Iterating with different initial solutions – Multistart local.
© 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.
Lecture 12-2: Introduction to Computer Algorithms beyond Search & Sort.
Introduction to Operations Research
CS 3343: Analysis of Algorithms Lecture 21: Introduction to Graphs.
CS774. Markov Random Field : Theory and Application Lecture 13 Kyomin Jung KAIST Oct
COSC 2007 Data Structures II Chapter 14 Graphs III.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
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.
Greedy Algorithms and Matroids Andreas Klappenecker.
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 
Fundamental Data Structures and Algorithms (Spring ’05) Recitation Notes: Graphs Slides prepared by Uri Dekel, Based on recitation.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
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.
1 Network Models Transportation Problem (TP) Distributing any commodity from any group of supply centers, called sources, to any group of receiving.
Minimum Spanning Trees CS 146 Prof. Sin-Min Lee Regina Wang.
Graphs A ‘Graph’ is a diagram that shows how things are connected together. It makes no attempt to draw actual paths or routes and scale is generally inconsequential.
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
Graphs. Graphs Similar to the graphs you’ve known since the 5 th grade: line graphs, bar graphs, etc., but more general. Those mathematical graphs are.
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
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.
Vasilis Syrgkanis Cornell University
EMIS 8373: Integer Programming Column Generation updated 12 April 2005.
1 TCOM 5143 Lecture 10 Centralized Networks: Time Delay and Cost Tradeoffs.
Multi-Objective Optimization for Topology Control in Hybrid FSO/RF Networks Jaime Llorca December 8, 2004.
Branch and Bound Searching Strategies
1 CPSC 320: Intermediate Algorithm Design and Analysis July 14, 2014.
Graphs. Graph Definitions A graph G is denoted by G = (V, E) where  V is the set of vertices or nodes of the graph  E is the set of edges or arcs connecting.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 11.
CSE 589 Applied Algorithms Spring 1999 Prim’s Algorithm for MST Load Balance Spanning Tree Hamiltonian Path.
::Network Optimization:: Minimum Spanning Trees and Clustering Taufik Djatna, Dr.Eng. 1.
Greedy Technique.
The minimum cost flow problem
Design and Analysis of Algorithm
CS 3343: Analysis of Algorithms
Topological Sort (topological order)
1.3 Modeling with exponentially many constr.
Graph Algorithm.
Modeling and Simulation NETW 707
Greedy Algorithms TOPICS Greedy Strategy Activity Selection
1.3 Modeling with exponentially many constr.
Homework #6: Local Access Design
CSE 550 Computer Network Design
Maximum Flow Neil Tang 4/8/2008
The Greedy Approach Young CS 530 Adv. Algo. Greedy.
CSCI 465 Data Communications and Networks Lecture 16
Presentation transcript:

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

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

CSE-550-T062 Lecture Notes - 53 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-T062 Lecture Notes - 54 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

Multipoint Line Topology

CSE-550-T062 Lecture Notes - 56 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-T062 Lecture Notes - 57 Constrained/Capacitated MST (CMST) CMST Problem: Given: A central node N 0 A set of other nodes (N 1, N 2, …, N n ) A set of weights (W 1, W 2, …, W n ) for each node The capacity of each link W max A cost matrix C ij = Cost(i,j) Find a set of trees T 1, T 2, …, T k such that: Each N i belongs to exactly one T j, and Each T j contains N 0 is minimized

CSE-550-T062 Lecture Notes - 58 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-T062 Lecture Notes - 59 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 f max =5, f 1 =0, f 2 =2, f 3 =3, f 4 =2, f 5 =1

CSE-550-T062 Lecture Notes Prim’s Algorithm for CMST

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

Terminal Assignment

CSE-550-T062 Lecture Notes 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 C ij : cost of connecting terminal i to concentrator j W j : capacity of concentrator j Assume that terminal i requires W i units of a concentrator capacity Assume that the cost of all concentrators is the same x ij = 1; if terminal i is assigned to concentrator j x ij = 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-T062 Lecture Notes Assignment Problem Given a cost matrix: 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 C1C1 C2C2 T1T1 T2T2 T3T3

CSE-550-T062 Lecture Notes 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-T062 Lecture Notes 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-T062 Lecture Notes Building a Compressed Auxiliary Graph U: set of unassociated terminals T(Y): set of terminals associated with Y

CSE-550-T062 Lecture Notes Building a Compressed Auxiliary Graph

CSE-550-T062 Lecture Notes Example Cost Matrix: W = 2 (capacity of each concentrator) Solution: (a, H) (b, I), (c, H), (d, G), (e, I), (f, G) Cost = 15 GHI a638 b294 c314 d259 e163 f279

Concentrator Location

CSE-550-T062 Lecture Notes 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 C ij : cost of connecting terminal i to concentrator j d j : cost of placing a concentrator at location j (i.e., cost of opening a location j) K j : maximum capacity (of terminals) that can be handled at possible location j Assume that terminal i requires W i units of a concentrator capacity x ij = 1; if terminal i is assigned to concentrator j; 0, otherwise y j = 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-T062 Lecture Notes 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-T062 Lecture Notes Add Algorithm Initialization: M: set of locations Select an initial location m Assume all terminals are connected to m Set L 0 = {m} Set k = 0 (iteration count) c' i = c im, i= 1, 2, …, N Compute: 1. For, dowhere 2. Determine a new m such that: If there is no such m, go to step Update:and for Set and k:= k+1, and go to Step No more improvement possible; stop.

CSE-550-T062 Lecture Notes Example Cost Matrix: K j = 3, j = 1, 2, 3, 4 (capacity of each concentrator) d 1 = 0, d 2 = d 3 = d 4 = 2 Solution: S2 (1, 2, 3), S1 (4), S4 (5, 6) Cost = 9 S1S2S3S

CSE-550-T062 Lecture Notes 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