Chapter 8 Heuristics for MRWAP-DC-WWC-SR
8.2 ISM for MRWAP-DC
8.1.2 Finding Assigned Light-Tree Procedure (FALP)
In this procedure, the optimal light-tree with minimum communication cost for using the selected wavelength is expected to be found. Nevertheless, finding the optimal light-tree is NP-hard such that proposing an efficient heuristic to find a near optimal light-tree in polynomial time is more important than to find the optimal light-tree. The FALP divided into three Steps, generating a weak candidate, refining the weak candidate, and eliminating infeasible nodes will be described as follows.
x
(1) Generating a Weak Candidate
All MDLPs between the source and all destinations need to be checked the condition that their transmission delay must be smaller than or equal to the delay bound. For only one light-path with minimum transmission delay between two nodes, the graph constructed by merging these MDLPs must be a tree. The delay constraint is not involving in constructing the tree, so the tree is called a weak candidate. Dissimilar to the definition in Chapter 7.1 that a candidate
is a multicast tree satisfying the delay constraint and the destination constraint, the weak candidate satisfies the delay constraint only such that it maybe is neither a light-tree nor an optimal multicast tree. Therefore, the major objective in the Step is to find a feasible solution.
)
(2) Refining the Weak Candidate
The refining process is also an iterative process which refines the light-path between two nodes to reduce multicast cost. The iterative process consists of three sub-steps, choosing a node-pair (u, v) to be refined, rerouting u to v, and checking the new weak candidate to have less multicast cost. The second sub-step is described first and the others are described as follows.
For the weak candidate Tˆ shown in Figure 8-1, suppose that u is rerouted to v and x is d the nearest common predecessor node. The second sub-step consists of applying the Prim’s algorithm [59] to clean up the cycles contained in the graph which is formed by concatenating Pc(v, u) to Tˆ shown in Figure 8-2, and deleting all leaf nodes which do not belong to the d destination set. The former is implemented by Primc(Tˆd∪Pc(v,u)), where Primc is an operation of finding Minimum Spanning Tree (MSpT) with communication cost from Tˆd∪ Pc(v,u).
Nevertheless, the order and the number of node-pairs which need to be rerouted are hard to be recognized. The cost-difference (CD) of a node-pair (u, v), CD(Tˆ , u, v), is proposed in d the first sub-step to predict the expectation of the multicast cost promotion on rerouting u to v.
The node-pair (u, v) having highest cost-difference value indicates that u is rerouted to v may reduce multicast cost more efficient than others. To predict the cost-difference value of node-pair accurately, CD(Tˆ , u, v) will be well defined as follows. d
Suppose that Tˆ is obtained after the second sub-process. It can be observed that the n number of outbound edges of v in Tˆ can be increased by 1 to be n outTˆd(v)+1. For the case
)
ˆ (v
outTd <θ(v), )outTˆn(v cannot be greater than θ(v) such that the wavelength consumption of Tˆ is changeless. Therefore, the anticipation of multicast cost promotion for rerouting u to n v is the difference between the communication cost of the eliminated path PTˆd(x,u) and the
communication cost of the concatenated pathPc( uv, ); that is, α(c(PTˆd(x,u))−c(Pc(v,u))). Otherwise, the promotion needs to subtract the cost of one extra wavelength (equal to β) and the communication cost of the partial light-path connecting s and v (i.e., c(PTˆd(s,v)) for using first sub-step, the node-pair (u, δ(u)) with maximum cost-difference is chosen first.
Nevertheless, it may not be guaranteed that the transmission delay of Tˆ is under the delay n bound nor that the multicast cost of Tˆ is reduced. Therefore, the final sub-step checks two n
conditions d(Tˆ ) ≤ Δ and f(n Tˆ ) < f(n Tˆ ) to confirm that d Tˆ is a better weak candidate than n Tˆ . The Step will be terminated when no better weak candidate can be found again. d
(3) Eliminating Infeasible Nodes
We know that a weak candidate may contain some infeasible nodes such that it is not a light-tree. In the step, some outbound edges in infeasible nodes will be eliminated from the weak candidate to form a light-tree. Because the solution model is a greedy approach, how to eliminate edges is important and complex. To reach the objective of the problem, the reservation weight function, r-weight, is defined to give a reservation weight for each node.
The greedy method, reserving the edges which connect the nodes with high reservation weight may benefit to reduce the multicast cost or the blocking rate of routing requests, will be adopted in the step. By implementing the r-weight according to different heuristics, different light-trees can be attained due to eliminating different edges. Suppose v be an infeasible node (i.e., outTˆn(v) > θ(v)) in Tˆ . It is necessary to eliminate n outTˆn(v) − θ(v) outbound edges whose reservation weights are smaller than others from outTˆn(v)outbound edges of v such that v becomes a feasible node. There are two different heuristics, Maximum Depth Reserving First (MaxDepth) and Maximum Destinations Reserving First (MaxDest), proposed for the r-weight. Routing the request to one destination by using the light-path with maximum depth require more links than other light-paths implies that the request routed to the destination is blocked in high probability for needing more w-feasible edges. Therefore, the MaxDepth heuristic applies the observation that these edges connecting these sub-trees with maximal depth are reserved first. Nevertheless, in the MaxDest heuristic, it assumes that the sub-tree covering more destinations may indicate routing the request with fewer wavelengths.
To summarize the discussion above, the skeleton of the FALP will be described as follows.
FALP(G, r = (s, D, ∆)) {
Step 1. generating a weak candidate 1.1. Tˆ =∅ d
1.2. for all di in D
1.3. if (d(Pd(s, di))≤ ∆) // Pd(s, di) is the MDLP from s to di in G(V, Eλ) Tˆd d
U
D d ii
d s P
∈
= ( , )
1.4. end for-loop
1.5. if Tˆ =∅ // If d Tˆ is null, wavelength λ cannot be used to reroute the d request
1.6. return ∅
Step 2. refining the weak candidate to reduce multicast cost 2.1. for each u∈Tˆ d
2.2. keep (u, δ( u)) in the array K by sorting CD (Tˆ , u, d δ( u)) in decreasing order
2.3. end for-loop
2.4. for each node-pair (u, v) in K
2.5 Tˆ = Primn c(Tˆd∪Pc(u,v)) // Primc is a operation of finding Minimum // Spanning Tree (MSpT) with minimum communication cost
2.6. delete all leaf nodes in Tˆ which does not belong to D n
2.7. if (d(Tˆ )≤ ∆) n // checking the transmission delay of Tˆ n 2.8. if (f(Tˆ ) < f(n Tˆ )) d
2.9. Tˆ =d Tˆ n 2.10. go to 2.1
2.11. end-for loop
Step 3. eliminating infeasible nodes
3.1. check all node x in Tˆ from leaves bottom up n 3.2. while (x is not leaf node)
if (outˆn(x)
T > θ(x)) // x is a infeasible node
3.3. eliminate outTˆn(x)- θ(x) edges which with minimum r-weight(x) 3.4. return Tˆ // will be a light-tree n
}
8.3. Experiments
The approach used in the experiments to evaluate the performance of the two proposed heuristics has been introduced in Section 4.3 or is referred to Waxman [78]. We assume that ∆ equals to 1.2 time of the maximum in the following experiments (i.e., χ = 1.2 discussed in Chapter 5.3). Eight types of networks introduced in Chapter 5.3 were tested: 30, 40, 50, 60, 70, 80, 90, 100 switches (n = 30, 40, 50, 60, 70, 80, 90, and 100), for each of which 60 different requests were randomly generated. Each 60 requests are categorized into 3 groups corresponding to 2 destinations (q = 2), 3 destinations (q = 3), and 4 destinations (q = 4).
The experiments consisting of four parts: comparisons for different values of k in NKSPH, comparisons among ILP, NKSPH, and ISM, comparisons between MaxDepth and MaxDest, and comparisons between MaxE and MinR.