Title: Genetic Algorithm for Multicast in WDM Networks
1Genetic Algorithm for Multicast in WDM Networks
2Outline
- Introduction
- Problem formulation
- Genetic Algorithm
- Further Research Problem
3Introduction
- There are two types of architectures of WDM
optical networks single-hop systems and
multi-hop systems 2. - Single-hop system
- a communication channel should use the same
wavelength throughout the route of the channel - Multi-hop system
- a channel can consist of multiple light-paths and
wavelength conversion is allowed at the joint
nodes of two light-paths in the channel. - In this paper, we consider single-hop systems,
since all-optical wavelength conversion is still
an immature and expensive technology. (no
wavelength conversion)
4Introduction
- Multicast is a point to multipoint communication,
by which a source node sends messages to multiple
destination nodes. - A light-tree, as a point to multipoint extension
of a light-path, is a tree in the physical
topology and occupies the same wavelength in all
fiber links in the tree.
5Introduction
- Each node of the tree is a multicast-Incapable
optical switch (MI node) . - End-to-end delay is an important
quality-of-service (QoS) parameter in data
communications. - QoS multicast requires that the delay of messages
from the source to any destination be within a
bound.
6Introduction
- The problem is formalized as follows
- given a multicast request in a WDM network
system, compute a set of routing trees
(light-trees) and assign wavelengths to them. - The objective is to minimize the number of
distinct wavelengths to be used under the
following constraints on each routing tree - the delay from the source to any destination
along the tree does not exceed a given bound - the total cost of the tree is suboptimal.
- or minimize cost awavelength
7System Models
- WDM network
- Connected and undirected graph G(V, E, c, d)
- V vertex-set, Vn
- E edge-set, Em
- Each edge e in E is associated with two weight
functions - c(e) communication cost
- d(e) the delay of e ( include switch and
propagation delays)
8System Models
- Cost of path P(u,v)
- Delay of path P(u,v)
- A multicast request in the system are given,
denoted by - multicast request r (s, D, ?)
- source s
- destination D
- delay bound ?
- the data transmission delay from s to any node in
D should be within bound ?
9System Models
- This paper assumes an input optical signal can
only be forward to an output signal at a switch. - Tk (s, Dk, ?k) be the routing tree for request r
(s, D, ?) in wavelength k, where kltK, T?
k1,2,...,KTk - D? k1,2,...,K Dk ? max?k,k1,2,...,K, T
is the light-forest. - The light signal is forwarded to the output port
leading to its child, which then transmit the
signal to its child until all nodes in the Dk
receive it.
10QoS requirement
- The QoS requirement of routing tree Ti (s, Di,
?) is that the delay from s to any nodes in Di
should not exceed ?. - Let PTi(s, u) denotes the path in Ti (si, Di,
?i) from si to u in Di - Thus,
- Assume
- where PG(s, u) is the shortest path s to u in G.
11Objective
- The cost of the tree
- where yj 1 if wavelength j is used yj0,
otherwise - Special case
- One objective of the multicast routing is to
construct a routing tree (or forest) which has
the minimal cost. The problem is regarded as the
minimum Steiner tree problem, which was proved to
be NP-hard. - Another objective is to minimize the number of
wavelengths used in the system. - In a single-hop WDM system, two channels must use
different wavelengths if their routes share a
common link, which is the wavelength conflict
rule.
12(No Transcript)
13Genetic Algorithm for RWA
- Important components of GA
- Chromosome encoding
- Fitness function
- Penalty function
- Crossover operation
- Mutation operation
- First, we assume rk1, for all k in K.
14Example of GA
connection request are (1,2), (1,4), (1,5),
(2,3), (2,4), (2,5), (3,4), (3,1), (4,2), (4,3),
(5,2), (5,4).
15Chromosome Encoding
- Wavelength gene yw binary
16Chromosome Encoding
- Connection gene ci, i1,...,M
- M number of connections. M12
17Example of connection gene
18Relation between two genes
19Objective Function
- Objective function
- The assignment represented by the connection may
not constraint-satisfy, thus, a penalty function
should be included in objective function.
20Penalty Function
- Assume both connections c1(1,2) and c2(1,4) are
assigned to wavelength 1 with clockwise
direction, then conflict occurred. - Penalty should be defined.
- How to detect the conflict in a connection gene?
- A conflict-detection algorithm should be
developed. - O(M2) pairs of connections should be examined.
- The conflict between two connections can be
detected in constant time O(1).
21Conflict-detection Algorithm
- Connections
- c1(1,4) ,
- c2(2,4) ,
- c1(1,2) ,
- c1(5,2)
- Construct four bipartite graph AA, AB, BA, BB,
- Node connection
- Edge conflict occurred
- A clockwise direction
- B counter-clockwise direction
22Graph AA
c4
c3
c1
c2
- c1(1,4) , c2(2,4) , c3(1,2) , c4(5,2)
23Graph AB
c4
c2
c3
c1
c1
c4
c2
c3
- c1(1,4) , c2(2,4) , c3(1,2) , c4(5,2)
24Graph BA
c4
c2
c3
c1
c1
c4
c2
c3
- c1(1,4) , c2(2,4) , c3(1,2) , c4(5,2)
25Graph BB
- c1(1,4) , c2(2,4) , c3(1,2) , c4(5,2)
26Lemma
- Lemma 1 AA and BB is symmetric
- Lemma 2 AB BAT
- Lemma 3 the time complexity of constructing
graphs AA, AB, BA, BB are O(M2) - Lemma 4 If AA, AB, BA, BB are available, the
conflict of two connection can be known in O(1)
time.
27Penalty function
- For a pair of connections (ci, cj) in connection
gene, if conflict then associated a penalty a. - Conflict means two connections use same
wavelength and routing collision. -
28Conflict
29Objective Function
30Fitness Function
Algorithm
- Minimized
- Transform to maximization form
- where Cmax denotes the maximum value observer so
far of the cost function in the population.
Fitness Cmax-Cost
31Genetic crossover operator
Algorithm
- single point crossover an integer value i is
generated in the range (1,M)
32Genetic crossover operator
Algorithm
- multiple points crossover k integer value i1,
i2, ...,ik is generated in the range (1,M)
33Genetic operator
Algorithm
- global reverse routing operator each ci is
multiplied (-1)
34Genetic operator
Algorithm
- partial reverse routing operator randomly select
k (1?k ?M, integer) connections each ci is
multiplied (-1) (e.g. k3)
35Genetic operator
- wavelength change operator randomly select two
connections and the assigned wavelengths are
exchanged.
36Mutation operator GA
Algorithm
- Random single connection mutation randomly a
connection ci, mutate to a random selected
wavelength and direction
37Mutation of GA
- Random multiple connection mutation randomly k
connections ci, c2,..., ck mutate to random
selected wavelengths and directions
38Mutation of GA
- Conflict-free mutation For all pairs of
connections (ci, cj), find a set CF of pairs of
connections, which are conflict-free in AA. AB,
BA, BB. - Rules
- If (ci, cj) in AA is conflict-free then (i, j) is
added into CF. - If (ci, cj) in AB is conflict-free then (i, -j)
is added into CF. - If (ci, cj) in AA is conflict-free then (-i, j)
is added into CF. - If (ci, cj) in AA is conflict-free then (-i, -j)
is added into CF.
39Example of CF
CFAA(2,3), (2,4), (3,2), (4,2)
CFAB(2,-1), (2,-3), (3,-1), (3,-4)
40Example of CF
CFBA(-1,2), (-1,2), (-3,2), (-4,3)
CFBB(-1,-3), (-3,-1), (-3,-4), (-4,-3)
41Mutation of GA
- Assign each pair in CF an positive number
increasing from 1 to CF. - Randomly select a number, get the pair (i,j) of
connections from CF corresponding to the number. - Rules
- If igt 0 and jgt0 then mutate (ci to cj and cj
to cj) or (cj to ci and ci to ci ) - If igt 0 and jlt0 then mutate (ci to -ci and ci
to ci) or (ci to ci and cj to -ci ) - If ilt 0 and jgt0 then mutate (cj to ci and ci
to -ci) or (ci to -cj and cj to cj ) - If ilt 0 and jlt0 then mutate (cj to -ci and ci
to -ci) or (ci to -cj and cj to -cj )
42Example of Conflict-free Mutation
- CFCFAA?CFAB ? CFBA ? CFBB
- (2,3), (2,4), (3,2), (4,2), (2,-1), (2,-3),
(3,-1), (3,-4), (-1,2), (-1,2), (-3,2), (-4,3),
(-1,-3), (-3,-1), (-3,-4), (-4,-3) - e.g. (-3,2) (-1, -3)
(3,-4)
43Extended GA to handle rk gt1
44Modification of Graph AA
c4
c3
c1
c2
- c1(1,4) , c2(2,4) , c3(1,2) , c4(5,2)
45No modification in Graph AB and BA
c4
c2
c3
c1
c1
c4
c2
c3
- c1(1,4) , c2(2,4) , c3(1,2) , c4(5,2)
46Modification of Graph BB
- c1(1,4) , c2(2,4) , c3(1,2) , c4(5,2)
47Objective Function
where the index of connection gene in transformed
to 1,2,...,M
48Experiments
49Further Research
- Use Simulated Annealing Algorithm to solve this
problem. - Use GA and SA to solve another static version of
optimization problem in WDM environment.
50(No Transcript)
51(No Transcript)
52(No Transcript)
53(No Transcript)
54(No Transcript)
55(No Transcript)
56(No Transcript)
57(No Transcript)
58(No Transcript)
59(No Transcript)
60(No Transcript)
61 62Routing table of s ? 1 Routing table of s ? 1 Routing table of s ? 1
Path No. Path lists cost
1 s?7 ?1 10
2 s ? 7? 14 ? 1 11
3 s ? 9? 1 13
4 s ? 8 ? 9? 1 22
... ...
R
63p1 p2 p3 p4 pi PD
64(No Transcript)
65p1 p2 ... pi ... pD w1 w2 ... wi wD