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 jmin
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
© Copyright 2026 Paperzz