Terminal Assignment

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
2
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
High speed lines
Concentrator
Concentrator
Low speed lines
Terminal
CSE-550-T112
Terminal
Terminal
Lecture Notes - 4
Terminal
3
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
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
6
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

N i T j
Wi  Wmax
 Cost (l )
is minimized
Trees l links
CSE-550-T112
Lecture Notes - 4
7
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
8
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
9
Prim’s Algorithm for CMST
CSE-550-T112
Lecture Notes - 4
10
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
11
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:

C
T
c x
Minimize: Z 
j 1 i 1

Subject to:
C
x
j 1
ij
1
T
w x
i 1
i ij
 wj
ij ij
i = 1, 2, …, T (Each terminal associated with one Concentrator)
j = 1, 2, …, C (Capacity of concentrators is not exceeded)
xij  {0,1}
CSE-550-T112
Lecture Notes - 4
13
Assignment Problem
 Given a cost matrix:
 One column per concentrator
 One row per terminal
C1
C2
T1
T2
T3
 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
CSE-550-T112
Lecture Notes - 4
14
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
15
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,


CSE-550-T112
Repeat

Build a compressed auxiliary graph

Find an optimal augmentation
Until all terminals are assigned
Lecture Notes - 4
16
Building a Compressed Auxiliary Graph
 U: set of unassociated terminals
 T(Y): set of terminals associated with Y
CSE-550-T112
Lecture Notes - 4
17
Building a Compressed Auxiliary Graph
CSE-550-T112
Lecture Notes - 4
18
Example
 Cost Matrix:
G
H
I
a
6
3
8
b
2
9
4
c
3
1
4
d
2
5
9
e
1
6
3
f
2
7
9
 W = 2 (capacity of each concentrator)
 Solution: (a, H) (b, I), (c, H), (d, G), (e, I), (f, G)
 Cost = 15
CSE-550-T112
Lecture Notes - 4
19
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:
C
T
C
Z   cij xij   d j y j
j 1 i 1
C
x
j 1
T
ij
1
w x
i 1
i ij
j 1
i = 1, 2, …, T (Each terminal associated with one Concentrator)
 K j y j j = 1, 2, …, C (Capacity of concentrators is not exceeded)
xij , y j  {0,1}
CSE-550-T112
Lecture Notes - 4
21
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
22
Add Algorithm

Initialization:







1.
2.
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
N
Compute: Z 0   ci
i 1
For
, do Z  Z   (c  c)  d where I  i c
Z kj 1   Z k
Determine a new m such that: Z mk 1  jmin
M \L
If there is no such m, go to step 4.
Update: Lk 1  Lk {m} and ci  cim for i  I m
Set Z k 1  Z mk 1 and k:= k+1, and go to Step 1.
No more improvement possible; stop.
j  M \ Lk
k 1
j
k
i I j
ij
i
j
j
ij

 ci  0
k
3.
4.
CSE-550-T112
Lecture Notes - 4
23
Example
 Cost Matrix:




S1
S2 S3 S4
1
2
1
2
4
2
1
0
1
2
3
4
1
2
2
4
1
2
1
2
5
2
3
2
0
6
4
4
3
2
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
CSE-550-T112
Lecture Notes - 4
24
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
25