4.4 Path Optimization Algorithm
4.4.2 Network Modelling
The second step of MeTHODICAL corresponds to the modeling of the network and services. MeTHODICAL models the network as a graph.
The MeTHODICAL network graph is depicted in Figure 4.6, where the source node (S) has multiple applications/services (App1, App2, ...) that can use different available paths (P1,1, P1,2, Pn,j, ...) attached to the respective interfaces (IF1, IF2, ...)
allowing the connection to the destination node (D). This model is inline with a mod- ern multihoming practice and represents a significant departure from the one-to-one address-interface mapping which up to now has been prevalent in the literature. The MeTHODICAL network model also highlights the different path usage models. For instance, App3 can use paths from distinct interfaces to implement the concurrent model. Moreover, each path has specific multihoming and traffic performance charac-
P1,1 App1 P1,2 IF1 P1,3 P2,1 (S) App2 P2,2 IF2 (D) P2,3 P2,4 App3 P3,1 IF3 .. . ... Appn Pn,j IFn (0,0) (0,0) (0,0) (MH,T P ) (MH,T P ) (MH,T P )
Figure 4.6: MeTHODICAL network model.
teristics, which are derived from the interfaces to which they are linked.
4.4.3 Path Optimization Algorithm
The values of multihoming and traffic performance criteria combine B-benefits and K-costs into Bn,Bbenefits and Kn,K costs matrices. This step is performed according
to the network model, and includes all the available paths. The output of this algo- rithm is the path ranking score si,t, which is based on the distances to ideal values.
Commonly, distance is interpreted as the length of space between two points. In this regard, distinct forms of determining distance [Deza and Deza, 2009] exist. The Euclidean distance, used by TOPSIS, defines a line segment between two points. The Manhattan distance or city-block, used by DiA, defines the distance that would be travelled to get from one point to another if a grid-like path is followed. Nonetheless, both distance methods only apply to gaussian data (i.e. follow a normal distribution) and do not consider the path selection problem. Indeed, the traditional interpretation of distance as the length of space is not adequate for problems with multiple criteria, as they introduce high error rates [Lahby et al., 2012]. The Mahalanobis distance over- comes these limitations and uses the covariance to correlate data, which can be gaus- sian or non-gaussian. Nonetheless, the use of covariance introduces overhead due to its computational complexity, and has only a statistical meaning when high-volume
4.4 Path Optimization Algorithm
A(X)
0 Mean(X) Ideal - I(x)
Figure 4.7: Range of Relevant Benefits
0Ideal - I(x) A(X) Mean(X)
Figure 4.8: Range of Relevant Costs
of data is available.
In the MeTHODICAL path optimization algorithm, distance is abstracted from a space perspective and is considered in a relevant range, as per Definition 4.1. Such rel- evant ranges establish bounds based on the type of criteria, as illustrated in Figure 4.7 and Figure 4.8 for benefits and costs, respectively. The function A(X) determines the range where performance of a path criterion (e.g. path capacity) is known to be above average or close to ideal values. For benefits the ideal values correspond to the max- imum value of benefits max(Xi), while for costs they correspond to the minimum
value of costs min(Xi). For such, A(X) relies on the arithmetic mean and variance
functions. A(X) depends on the type of criteria; for B-benefits in the Bn,B matrix
it is formulated according to Equation 4.15, and for K costs in the Kn,K matrix it is
determined as per Equation 4.16.
A( bBj) = m( bBj) + v( bBj); m(), v() are mean and variance (4.15)
A( bKj) = m( bKj) − v( bKj); m(), v() are mean and variance (4.16)
The proposed distance, determined according to Equation 4.17 for a criterion i, introduces correlation by using simple functions, such as minimum, maximum, arith- metic mean and variance functions. Ideal values are determined by the I(X) function and Φ value relies on input data, herein Φ = 0.01.
∆(cMi) = B X j=1 [I(cMj) − cMi,j]2 [I(cMj) − A(cMj)] + Φ (4.17)
The MeTHODICAL distance is lower for values close to ideal and within rele- vant ranges, and is higher for values far away from ideal and outside relevant ranges. Moreover, the proposed distance has the following advantages:
Correlation Correlates path criterion values using functions based on arith-
metic mean, variance, minimum and maximum functions, that do not impose any restriction regarding the volume of data, as happens with covariance in the Mahalanobis distance [Lahby et al., 2012].
Gnostic Considers the type of criteria, and for each type determines the respec- tive relevant ranges.
Algorithm 4.2 details the different phases of the path optimization algorithm. As a MADM technique, common principles with DiA [Tran and Boukhatem, 2008] and NMMD [Lahby et al., 2012] can be found.
Algorithm 4.2- MeTHODICAL path optimization
Require: PBj bj= 1#Benefits weights vector
Require: PKj kj= 1#Costs weights vector
Require: Pmi
PB
j Bi,j ≥ 0 #Benefits matrix
Require: Pmi
PK
j Ki,j≥ 0 #Costs matrix
Require: si,(t−1)= 0#Initialize Score vector for (t)ime − 1
1: Nij= Mi,j−min(Mn,m)
M ax(Mn,m)−min(Mn,m), i = 1, · · · , n#Normalization 2: bGi,j= nj× Nijwith i = 1, 2, · · · , n and j = 1, 2, · · · , m 3: I( bBj) = max{ bBi,j|i = 1, 2, · · · , n} #Ideal Benefits solution 4: I( bKj) = min{ bKi,j|i = 1, 2, · · · , n} #Ideal Costs solution 5: ∆( bBi) = B P j=1 [I( bBj)− bBi,j]2 [I( bBj)−A( bBj)]+0.01 A( bBj) = m( bBj) + v( bBj) 6: ∆( bKi) = K P j=1 [I( bKj)− bKi,j]2 [I( bKj)−A( bKj)]+0.01 A( bKj) = m( bKj) − v( bKj) 7: si= q α × ∆( bBi) + (1 − α) × ∆( bKi), i = 1, 2, · · · , n 8: si,t= si+ v si, si,(t−z), i = 1, · · · , n #Set current score 9: ri= order si,t #Vector in crescent order
The MeTHODICAL path optimization algorithm has the following phases:
Phase 1- Matrix normalization with benefits type B and costs type K using the
Min-Max method, of Equation 4.18 for a matrix M with n paths and m criteria.
Nij = Mi,j− min(Mn,m) M ax(Mn,m) − min(Mn,m) , with i = 1, 2, · · · , n j = 1, 2, · · · , m (4.18)
The Min-Max method is able to keep criteria differences. For instance, after normaliza- tion it is possible to know which was the criterion with the maximum original value, which does not happen with the vector normalization [Chakraborty and Yeh, 2009]. This phase relies on the max()-maximum and min()-minimum functions to calculate the normalized matrices B and K for benefits and costs, respectively.
Phase 2 - Weighting of normalized benefits and costs matrices by multiplying
4.4 Path Optimization Algorithm
i = 1, 2, · · · , n, b = 1, 2, · · · , B and c = 1, 2, · · · , K. This step provides the weighted normalized bBbenefits and bKcosts matrices.
Phase 3- Determine the ideal benefits solution, by retrieving the vector with the
maximized values of benefits criteria, I( bBj) = max{ bBi,j|i = 1, 2, · · · , n} for n paths
and m criteria. Ideal solutions, in this case, correspond to those that provide more profit.
Phase 4- Determine the ideal costs solution, by retrieving the vector with the min-
imized values of costs criteria, I( bKj) = min{ bKi,j|i = 1, 2, · · · , n} for n paths and m
criteria. Ideal solutions, in this case, are those that have a minimum overhead.
Phase 5 - The MeTHODICAL distance, Equation 4.17, is used to determine the
distance of each path to the ideal solution. ∆( bBi)-distance of benefit criteria bBi,j to
ideal benefits solution I( bBj) is determined according to Equation 4.17, for B-benefits.
Phase 6 - Determine ∆( bKi)-distance of cost criteria bKi,j to ideal costs solution
I( bKj) according to Equation 4.17, for K-costs of each path.
Phase 7 - Assign scores to each path (si) through the combination of distances
to the ideal solutions, as per Equation 4.19 for n-paths. α enables the differentiation between the distance of benefits and the distance of costs. For instance, with α the ranking can mainly be based on benefits or costs, and α ∈ ]0, 1]. α = 0.5, is the recommended value for balancing benefits and costs in the final ranking.
si =
q
α × ∆( bBi) + (1 − α) × ∆( bKi) (4.19)
Optimal paths have lower score values, as distance is closer to ideal values ∆(X) = 0.
Phase 8 - Set score for current time (t) for each path. Variance function v(x) is
employed to allow scoring stability, considering previous z and current scores si,(t−z)
and si,t, respectively. If v si,(t−z), si,(t) is equal to zero, such path is stable, otherwise
the path can have difference in its conditions (e.g. bursts in packet loss or delay).
Phase 9- Ranking is obtained by ordering the score vector for current time si,tin a
crescent order ri = order(si,t). The optimal solution is the one with the lowest score,
as it is closer to the ideal solution.
The complexity of MeTHODICAL path optimization algorithm is O m · n, as it performs operations in m · n matrices composed by m paths passive of selection and the n criteria (benefits plus costs).