Accepted Manuscript Two metaheuristics for routing and spectrum allocation in cloud-ready survivable elastic optical networks Róża Goścień PII:
S2210-6502(17)30045-7
DOI:
10.1016/j.swevo.2018.04.013
Reference:
SWEVO 403
To appear in:
Swarm and Evolutionary Computation BASE DATA
Received Date: 14 January 2017 Revised Date:
14 April 2018
Accepted Date: 27 April 2018
Please cite this article as: Róż. Goścień, Two metaheuristics for routing and spectrum allocation in cloud-ready survivable elastic optical networks, Swarm and Evolutionary Computation BASE DATA (2018), doi: 10.1016/j.swevo.2018.04.013. This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
ACCEPTED MANUSCRIPT
RI PT
Two metaheuristics for routing and spectrum allocation in cloud-ready survivable elastic optical networks R´oz˙ a Go´scie´ n
M AN U
SC
[email protected] Department of Systems and Computer Network, Faculty of Electronics Wroclaw University of Science and Technology Wybrze˙ze Wyspia´ nskiego 27, 50-370 Wroclaw, Poland
Abstract
EP
TE D
Contemporary society relies on fast and reliable transfer of information, leading to ever-increasing size of transmitted data that stimulates the development of new algorithms for network management and optimization. This paper covers problem of allocating three types of network flows (unicast, anycast, multicast) in elastic optical network that implements dedicated path protection. The problem answers some users expectations such as efficient realization of cloud- and content-related services (by means of three flow types) and provision of network survivability. The problem is modelled as an integer linear programming with respect to two optimization criteria related to the spectrum usage. Next, solution algorithms are proposed which include, among others, two metaheuristics based on particle swarm optimization and tabu search. The results of simulations evaluate efficiency of the algorithms and prove that the proposed tabu search approach significantly outperforms other methods.
AC C
Keywords: elastic optical network, anycast traffic, multicast traffic, network survivability, particle swarm optimization, tabu search 1. Introduction
We observe a continuous rise in the number of telecomunication network users every year. Alongside, the users requirements are changing. Nowadays, the users are especially interested in new bandwidth-intensive services, which rely on the communication with special servers that offer some service/content. The servers are mostly located in data centers (DCs). The Preprint submitted to Swarm and Evolutionary Computation
April 13, 2018
ACCEPTED MANUSCRIPT
AC C
EP
TE D
M AN U
SC
RI PT
most important examples of the DC-related services are: content distribution (especially video distribution) and cloud computing. The increasing number of users and their interest in new services entail significant growth of the global network traffic. It is estimated that the global IP traffic will increase nearly 3-fold over the next 5 years [1]. Still increasing users requirements and continuous growth of the network traffic are challenges that the network operators have to face and support by means of their network infrastructures. Since the currently applied solutions are expected not to be efficient enough for future networks, some innovations are inevitable for both traffic engineering tools and network physical infrastructures. Regarding network architectures, a very promising proposal is idea of elastic optical network (EON) which combines advantages of flexible frequency grids and advance transmission techniques to improve network spectral efficiency. In EONs, the available spectrum is divided into frequency segments called slices. A frequency slice is typically of 6.25 or 12.5 GHz width [2]. By grouping a number of adjacent slices frequency channels can be created and used for a data transmission. Regarding traffic engineering tools, the most important is application of different transmission types suited to the characteristics of realized services [3]. The simplest transmission type is unicast. It is used by the majority of simple services (e.g., www, e-mail) but can be applied to realize almost all services. However, it is inefficient tool for contentand DC-related services (e.g., cloud computing, content distribution). Here, the anycast transmission seems to be the best solution [4]. In the anycasting, we can distinguish an anycast client (node interested in some content/service) and a set of DC nodes which can provide the content/service. Since each anycast client can establish a connection with any of the available DCs, the anycasting is also known as a one-to-one of many transmission. Eventually, a lot of content-related services, which aim at providing exactly the same content from a specific node (root node) to a number of nodes (receivers), apply the multicast transmission [3]. Here, the most popular supported services are: software distribution, video distribution/streaming, video on demand, etc. The multicasting is known as a one-to-many transmission. Additionally, since the networks are becoming an indispensable part of the society life, it is crucial to provide their continuous work and mitigate failures repercussions [5]. To this end some survivability mechanisms can be implemented. One of the most popular and efficient mechanisms is dedicated path protection (DPP) [6], which requires allocation of additional resources for each demand to protect it in case of a primary resource failure. 2
ACCEPTED MANUSCRIPT
AC C
EP
TE D
M AN U
SC
RI PT
Alongside efficient proposals for future networks, new challenging optimization problems emerge. One of the most frequent challenges in EONs is routing and spectrum allocation (RSA), which aims to assign for each traffic demand a light-structure that consists of a routing structure (that allows to route demand over a network) and a channel allocated on structure links. For a unicast demand, a routing structure corresponds to a routing path that originates in the demand source node and terminates in the demand destination node. For an anycast demand, first a DC node has to be selected and then two routing paths: from a DC to the demand client node and from the demand client node to the selected DC. For a multicast demand, a routing structure corresponds to a routing tree that originates in the demand root node and contains all its receivers. When the network implements the DPP, each demand needs assignment of two disjoint light-structures [6]. The pure RSA was proved to be NP-complete [7]. The consideration of three types of network flows, as well as, survivability requirements make problem even more complex. Thus, efficient optimization methods are required. Since exact methods, e.g., methods based on integer linear programming (ILP), are able to solve only unrealistically small problem instances, some heuristic and metaheuristic approaches are necessary to solve larger problem cases [3]. Here, metaheuristic methods are especially desired since their efficiency was proved for various optimization problems [8, 9, 10, 11, 12, 13]. This paper answers some challenges entailed by the development of telecommunication networks. It studies simultaneous optimization of three types of demands (unicast, anycast, multicast) in a survivable EON under DPP scheme. What is more, the paper proposes solution algorithms which include, among others, beneficial metaheuristic approaches. The considered metaheuristics are tabu search (TS) [14] and particle swarm optimization (PSO) [9]. The comparison of these two approaches seems to be very interesting, since they differ much in the searching manner, which can influence their efficiency. The TS is an example of the oldest and well-known metaheuristics, which use one searching agent (line). Moreover, we are experienced with its application for network optimization [8, 14]. Concurrently, nowadays we observe increasing popularity of the swarm intelligence and its successful application in optimization approaches [9]. These approaches use a collective of agents displaying group-oriented behaviour [9]. PSO is one of such swarm-inspired algorithms, where each agent is modelled after an individual particle. This paper offers a three-part contribution to the field off EON optimiza3
ACCEPTED MANUSCRIPT
2. Related works
M AN U
SC
RI PT
tion. First, the consideration of an important optimization problem that covers joint optimization of three types of network flows (unicast, anycast, multicast) in an EON under DPP scheme. Second, the proposal of solution methods including metaheuristics based on particle swarm optimization and tabu search. Third, extensive numerical experiments focused on the algorithms comparison. Since two metaheuristic approaches are dedicated for the considered problem, their proposal and efficiency evaluation state as a paper novelty. The rest of paper is organized as follows. Section 2 presents related works while section 3 formulates optimization problem. Next, the proposed solution algorithms are discussed in section 4 while section 5 reports results of the numerical experiments. Eventually, the last section concludes whole paper.
AC C
EP
TE D
The EON technology and related RSA problem have attracted a lot of attention from the research community. The RSA was extensively studied considering unicast [15, 16], anycast [6, 17, 18] and multicast [19, 20, 21, 22] traffic. The joint optimization of three types of flows at the same time was considered only in three papers [6, 23, 24]. Also protection methods in EONs were studied in the literature, including efficient path-based methods [5, 6, 15, 25] considered with respect to two spectrum sharing policies: dedicated path protection [6, 25] and shared backup path protection [15, 25]. However, the majority of related papers takes into an account only unicast traffic. To the best of the author’s knowledge, there are only two papers that study survivable routing of three traffic types at the same time [6, 24]. Similarly like the considered paper, they apply DPP scheme and focus on the spectrum usage as an optimization objective. Eventually, since the RSA problem was proved to be NP-complete in general, various optimization approaches were proposed to solve its different versions. Refs. [6, 24], which study survivable routing of three traffic types in EONs, use exact method, dedicated greedy approach and column generation-based method. However, two first methods do not scale up well to realistic-size problem instances while the results of greedy method are not satisfactory. Concerning metaheuristics for RSA optimization, the majority of proposed methods makes use of evolutionary algorithms and, their subclass, genetic algorithms [8, 21, 26, 27, 28]. Here, a very interesting study was presented in [8, 28] where authors focus on the efficient implementation 4
ACCEPTED MANUSCRIPT
3. ILP modelling
M AN U
SC
RI PT
of a genetic algorithm for RSA of static anycast and unicast demands in an unprotected EON. Then, also simulated annealing (SA) was frequently used for EONs [23, 29, 30, 31, 32], as well as, tabu search [8, 14, 33]. The SA was directly applied for the RSA in papers [29, 31, 32] while [30, 34] focus on branch and bound/column generation approaches that make use of the SA. Concurrently, the TS was applied for various RSA versions (including optimization of unicast [14], anycast [14], multicast [23, 33] flows) with applications only to an unprotected network. It is interesting to mention about swarm intelligence application for EON optimization. The direct routing problem in an unprotected EON with one traffic type was addressed by ant colony optimization [35, 36] and artificial bee colony [37]. Then, [38] applies particle swarm optimization to find coefficients values of the method dedicated to solve the RSA. Please note that [38] does not apply PSO directly for the RSA. Eventually, the authors of [39] propose firefly algorithm for a problem of virtualized regenerators placement in EONs.
AC C
EP
TE D
The paper studies the RSA with three types of demands (unicast, anycast, multicast) in an EON under the DPP scheme (briefly RSA-UAM-DPP). The problem considers network planning/dimensioning phase which aims at determining required spectrum width and routing rules based on the given network physical topology and forecasted sets of traffic demand. From a practical point of view, the problem aims at assigning for each demand resources that are necessary to realize it — two disjoint light-structures. The paper considers a protection against a single link failure, hence, two light-structures selected for a demand have to be link-disjoint. The same channel approach is applied, thus the channels of two selected light-structures have to be located around the same central frequency [6]. Two different optimization criteria are considered. The first one is average spectrum usage [6, 14] (AvgSpec) defined as an average value of the highest allocated slice over all links. The second criterion is maximum spectrum usage [6, 7] (MaxSpec) defined as a number of slices required to realize all demands (i.e., index of the highest allocated slice in the network). Let us consider two example RSA solutions (Figure 1). For each link, we calculate Max metric that indicates index of the highest allocated slice. The value of the AvgSpec is an average value while the value of the MaxSpec is the maximum value of the Max metric (over all links). Note, that both solutions present allocation of the same number of 5
ACCEPTED MANUSCRIPT
(a)
M AN U
SC
RI PT
slices — 16, however, in a different way. As a consequence, the solution in Figure 1a (AvgSpec — 3.0, MaxSpec — 6.0) is more beneficial in terms of the AvgSpec while the solution in Figure 1b (AvgSpec — 3.5, MaxSpec — 4.0) is better with respect to the MaxSpec. Below, the ILP models are provided for the RSA-UAM-DPP with respect to AvgSpec and MaxSpec. Initially, the models were introduced in [6].
(b)
TE D
Figure 1: Two example RSA solutions (red — slice is allocated, grey — slice is free)
AC C
EP
The EON is modelled as a directed graph G = (V, E) where V is a set of network nodes and E is a set of network directed fiber links. On each link the available spectrum resources are divided into frequency slices s ∈ S. Then, frequency channels c ∈ C are calculated with respect to the number of slices |S|. The channels include all possibilities of the number of included slices and location of a central frequency. Moreover, a number of R network nodes host a DC. It is assumed that the content of all DCs is the same and there is no limit of the number of serving clients by a single DC. Thus, an anycast client can reach the content from any of the available DCs. A set of static traffic demands d ∈ D is given. The set contains unicast, anycast and multicast demands. Each unicast demand d ∈ Duni is represented by a source node, destination node and bit-rate (in Gbps). Next, each multicast demand d ∈ Dmulti is represented by a root node, set of receivers and its bit-rate (in Gbps). Eventually, each anycast request, represented by a client node, upstream and downstream bit-rate, is realized by two associated demands — downstream d ∈ Ddn (from a DC to the client node) and upstream d ∈ Dup (from the client node to a DC). Let assume that 6
ACCEPTED MANUSCRIPT
AC C
EP
TE D
M AN U
SC
RI PT
d is an anycast demand (downstream or upstream) and τ (d) is its associated demand (upstream or downstream). Note that two associated demands d and τ (d) denote one anycast client. Upstream demand is utilized to send data to DC while the downstream demand carries data provided by the DC to the client. Thus, traffic on both associated demands is somehow connected to each other. Based on this observation, it is assumed that both associated demands (d and τ (d)) have to be related to the same DC. In the modelling, a candidate pairs of routing structures approach is applied, which is an extension of a link-path flow notation [3]. In particular, a routing structure is a structure that allows to route demand over a network. For unicast and anycast (after DC selection) demands, a routing path (that connects demand end nodes) is used as a structure. In case of a multicast demand, a routing tree (that originates in the root node and contains all receivers) is applied as a structure. Since the DPP is considered, each demand has to be realized by two link-disjoint routing structures. Let p = (b1 , b2 ) be a pair of routing structures wherein b1 is a primary one (used in a normal network state) and b2 is its backup link-disjoint structure (used in case of a primary structure link failure). We work under an assumption that for each demand d ∈ D, a set of its candidate pairs of routing structures p = (b1 , b2 ) ∈ Pd is given. In particular, a set of k different pairs of routing paths is given for each pair of network nodes. Thus, for each unicast demand k different pairs of routing paths are available. Since an anycast demand can be served by any of the DCs, for each anycast demand kR different pairs of paths are given. Similarly, for each multicast demand d ∈ Dmulti a set of t candidate pairs of routing trees is given. Note that parameters k and t control the size of the problem solution space. The pairs of routing structures are generated by the method based on well known Dijkstra and Yen k-SP algorithms with metrics that correspond to links length (in kilometres). To calculate number of slices required to realize a demand on a candidate routing structure, the model presented in [40] is used. It describes required number of slices as a function of demand volume (in Gbps), structure length (in kilometres) and applied modulation format. Note that the length of a routing tree is a distance between root node and the most distant receiver [3]. Six modulation formats are considered: BPSK, QPSK, x -QAM, where x ∈ {8, 16, 32, 64}. To select a modulation format for a particular demand and its routing structure, the distance-adaptive transmission (DAT) rule is applied. The DAT rule applies the most spectrally efficient format which, at the same time, minimizes number of required regenerators [3]. 7
ACCEPTED MANUSCRIPT
AC C
EP
TE D
M AN U
SC
RI PT
Let a light-structure l = (b, c) be a pair of a routing structure b (primary or backup) and a frequency channel c allocated on its links. Next, let q = (l1 , l2 ) be a pair of light-structures that are based on a pair of link-disjoint routing structures p = (b1 , b2 ). Thus, a pair of light-structures allows for a demand allocation in an EON under DPP scheme. In the paper, for each demand d ∈ D a set of candidate pairs of light-structures q = (l1 , l2 ) ∈ Qd is given. The set is calculated with respect to the given set of candidate pairs of routing structures (p = (b1 , b2 ) ∈ Pd ) and given set of frequency channels (c ∈ C). Note that for a particular demand d and its candidate routing structure p the number of required slices is calculated according to abovementioned procedure and only channels c ∈ C of that size are considered. The ILP model of the RSA-UAM-DPP with AvgSpec objective is described by formulas (1), (3)–(6) while the model for the RSA-UAM-DPP with MaxSpec objective is represented by equations (2), (3)–(5), (7). sets and indices e∈E network links s∈S frequency slices d∈D traffic demands d ∈ Ddn anycast downstream demands d ∈ Dup anycast upstream demands d ∈ Duni unicast demands d ∈ Dmulti multicast demands c∈C candidate frequency channels p = (b1 , b2 ) ∈ Pd pairs of routing structures for demand d l = (b, c) light-structure q = (l1 , l2 ) ∈ Qd candidate pairs of light-structures for demand d. If d ∈ Duni , the pairs connect its end nodes. If d ∈ Dup , the pairs connect the client node and a DC. If d ∈ Ddn , the pairs connect a DC and the client node. If d ∈ Dmulti , the pairs connect its root node and receivers. constants R number of available DCs αle = 1, if light-structure l uses link e; 0, otherwise βls = 1, if channel of light-structure l uses slice s; 0, otherwise τ (d) index of the demand associated with anycast demand d. If d ∈ Ddn , then τ (d) ∈ Dup and vice versa o(l) source node of light-path l t(l) destination node of light-path l 8
ACCEPTED MANUSCRIPT
SC
RI PT
variables ydq =1, if demand d uses pair of light-structures q; 0, otherwise (binary) ye index of the highest allocated slice on link e (integer) xes =1, if slice s is occupied on link e; 0, otherwise (binary) xs =1, if slice s is occupied on any network link; 0, otherwise (binary) objective P ye (1) min zavg = e |E| X min zmax = xs (2) s
M AN U
subject to
X
ydq = 1, d ∈ D
(3)
q∈Qd
X
ydq o(l1 ) =
q=(l1 ,l2 )∈Qd
X
X
X
yτ (d)q t(l1 ), d ∈ Ddn
(4)
q=(l1 ,l2 )∈Qτ (d)
ydq (αl1 e βl1 s + αl2 e βl2 s ) ≤ xes , e ∈ E, s ∈ S
d∈D q=(l1 ,l2 )∈Qd
(5) (6)
xes ≤ xs , s ∈ S, e ∈ E
(7)
TE D
sxes ≤ ye , s ∈ S, e ∈ E
AC C
EP
Equations (1) and (2) define objective functions, i.e., average and maximum spectrum usage, respectively. Then, formulas (3)–(7) describe constraints. Equation (3) guarantees that for each demand exactly one pair of light-structures is selected while (4) assures that the same DC is selected for both associated anycast demands (d and τ (d)). Next, (5) defines variable xes which informs if slice s is used on link e. Eventually, (6) defines variables ye that represents index of the highest allocated slice on link e ∈ E while (7) defines variable xs which informs if slice s is used on any network link. 4. Algorithms
To solve the RSA-UAM-DPP three methods are proposed: a greedy heuristic adaptive frequency allocation (AFA) and two metaheuristics — particle swarm optimization and tabu search. The AFA was initially proposed in [6] while two metaheuristics are paper novelty. The PSO-based method 9
ACCEPTED MANUSCRIPT
SC
RI PT
is a completely new approach dedicated to the considered problem. Concurrently, the TS is based on the our previous methods proposed in [14, 33] with additional mechanisms to support three types of flows at the same time and provide network survivability. The methods determine a solution which stores demands allocation order and indexes of the selected pairs of routing structures for all demands, as well as, DCs for anycast demands. Based on solution data, demands are allocated one by one (according to the determined demands allocation order) using selected pairs of routing structures (and DCs) with respect to the first-fit spectrum assignment policy.
M AN U
4.1. Adaptive frequency allocation The AFA tries to find a beneficial solution based on a dedicated set of collision metrics and continuous analysis of the current network resources availability. The method idea is presented in Algorithm 1. Algorithm 1 Adaptive frequency allocation (AFA) for RSA-UAM-DPP
TE D
AC C
10: 11: 12: 13: 14: 15: 16: 17: 18:
Calculate metrics nd , col e(e), col p(p), col d(d) i←0 while i < 3 do if i = 0 then B ← {d ∈ Dmulti } . Multicast demands else if i = 1 then B ← {d ∈ Duni } . Unicast demands else B ← {d ∈ Ddn , Dup } . Anycast demands while B 6= ∅ do m ← max{nd : d ∈ B} Bm ← {d : d ∈ B, nd = m} B = B \ Bm while Bm 6= ∅ do d∗ ← F indD(Bm ) q ∗ ← F indP (d∗ ) Allocate demand d∗ to pair of paths q ∗ Bm ← Bm \ d∗ i←i+1
EP
1: 2: 3: 4: 5: 6: 7: 8: 9:
19:
10
ACCEPTED MANUSCRIPT
M AN U
SC
RI PT
First, AFA calculates a basic metric nd for each demand d ∈ D. For unicast and anycast demands, its value corresponds to the minimum number of slices required to realize this demand. In particular, for each candidate pair of routing structures, AFA sums number of slices required to realize the demand on this pair. The final metric value is the minimum sum (over all candidate pairs). For an anycast demand pairs of structures related to all DCs are considered. For a multicast demand, four metric definitions are considered: (1) demand volume (in Gbps), (2) demand volume multiplied by the number of receivers, (3) demand volume multiplied by the number of slices (sum of slices necessary for primary and backup tree) required to realize the demand on the first available pair of routing trees, (4) demand volume multiplied by the number of receivers and multiplied by the number of slices required to realize demand on the first available pair of routing P trees. P Next, a set of collision metrics is calculated: for each link col e(e) d∈D q=(l1 ,l2 )∈Qd (αl1 e + αl2 e )nd , P for each pair of routing structures col p(p = (b1 , b2 )) = e∈b1 W e∈b2 col e(e) P
col p(p)
AC C
EP
TE D
d and for each demand col d(d) = p∈P|P . d| Afterwards, AFA starts to allocate demands wherein the process is run in three loops. Each loop handles a different demand type according to the following order: multicast, unicast, anycast. The order was selected based on our preliminary experiments, as well as, on two observations. First, it is beneficial to allocate multicast demands first due to their high spectrumconsumption. A routing tree includes (on average) more links than a routing path, therefore, it allocates spectrum resources on more network links. Second, it is beneficial to allocate anycast demands after unicast demands, since they bring more routing paths and, as a consequence, more allocation possibilities even under high spectrum utilization. Since a basic demand metric has four definitions for multicast demands, the multicast allocation process is repeated four times (for each metric definition) and the definition that provides the lowest value of the objective is used for further calculations. For each traffic type, the allocation process is as follows. First, demands with the same value of the metric nd are grouped together into sets Bm = {d : nd = m}. Then, sets Bm are considered one by one in decreasing value of m. For each considered set Bm its demands are allocated iteratively. To find a demand d ∈ Bm that currently allocated provides the lowest value of the objective function, AFA uses function FindD(Bm ). The function simulates allocation of all demands in Bm and returns index of the demand d∗ which currently provides the best value of the objective function. If more than
11
ACCEPTED MANUSCRIPT
RI PT
one demand achieves the same (the smallest) value of the objective, the demand with smallest value of metric col d(d) is selected. Next, the function FindP (d∗ ) is run in order to find a candidate pair of routing structures p∗ ∈ Pd∗ that currently applied for demand d∗ provides the lowest value of the objective function. If more than one pair provides the smallest value, the pair with the lowest value of metric col p(p) is chosen. Then, selected demand d∗ is allocated on pair of routing structures p∗ and removed from the set Bm .
M AN U
SC
4.2. Particle swarm optimization The PSO is nature-inspired method based on the swarm behaviour such as bird flock or fish school. The method is known as an efficient metaheuristic approach that can be adapted to solve different optimization problems [9].
AC C
EP
TE D
4.2.1. PSO notion The proposed PSO basic notions are: change operation, velocity and particle. The change operation is a definition of a single solution modification and its application to a problem solution produces another solution. It can be defined as: demand position change, data center change or routing structures change. To explain different change operations, let us consider the example with |D| = 9 demands (Figure 2). It is assumed that d =1 and d =2 are associated anycast demands while the rest of demands is of unicast/multicast type. Four candidate pairs of routing structures are given for each demand (p=1, p=2, p=3, p=4) and two DCs are available (r =1, r =2). The demand position change forces that a particular demand is located on a specific position in the demands allocation order. Note that the operation entails also replacement of the demand that was located on the considered position so far. The selected DCs and pairs of routing structures remain the same. Figure 2a presents an example of a demand position change. Initially, the demand d =8 is placed on the seventh position in the allocation order. However, the change operation places it on the third position in the new solution. Thus, demand d =9 has to be replaced. In the example, it is placed on the first free position, (the position released by the demand d =8). Next, the routing structures change modifies an index of the selected pair of routing structures for a particular demand (Figure 2b). Note that in case of an anycast demand this operation changes only the local pair of paths between a client node and a specific DC (the selected DC remains the same). Thus, this operation affects only one of two associated demands. Eventually, for an anycast demand the data center change operation can be applied (Figure 2c). 12
ACCEPTED MANUSCRIPT
M AN U
SC
RI PT
It alters the selected DC for a particular anycast demand and its associated demand. This operation does not modify index of the selected pair of paths. Note that two change operations can be contradictory and cannot be applied simultaneously in the same iteration. For instance, two change operations that place the same demand d on two different positions in the demands allocation order are contradictory. Similarly, two routing structures changes that apply different pairs of routing structures are also contradictory, as well as, two data center changes related to different DCs. Next, a velocity is a set of different changes that allow to transform a particular solution into another one. Note that a velocity can contain contradictory changes. Finally, a particle is a structure that consists of its own data and methods to process it. In more detail, a particle consists of:
• local current solution: a solution that is modified in each iteration by applying a new velocity; • local best solution: a solution characterized by the lowest objective value among all solutions already considered for this particle;
TE D
• current velocity: a set of change operations (i.e., velocity) applied in the previous iteration; • coefficients wv , wg , wl : the set of coefficients which control the velocity generation process in each method iteration.
AC C
EP
4.2.2. General idea The PSO process is presented in Algorithm 2. Initially, PSO runs AFA (section 4.1) and saves its solution as the global best solution, i.e., the best solution among all considered solutions and potential final solution. Then, PSO creates and initializes a number of particles. The number of particles is a PSO input parameter. A particle initialization process initializes all its data components. First, a random solution is saved as a particle current and local best solution. Next, the current velocity is cleared. Finally, the particle coefficients are initialized with the values which are algorithm input parameters (wv , wg , wl ). In the paper, it is assumed that all particles have coefficient of the same values. When the particles are created, PSO processes them and by these means—searches through the solution space in order to find a better solution than the global best solution. The number of iterations is a PSO stopping criterion. In each iteration, the particles are processed one 13
SC
RI PT
ACCEPTED MANUSCRIPT
TE D
M AN U
(a) Demand position change
AC C
EP
(b) Routing structures change
(c) Data center change Figure 2: PSO change operation
14
ACCEPTED MANUSCRIPT
RI PT
by one. For each particle, PSO first calculates a velocity which is stored as the particle current velocity. Next, the velocity is applied to the particle current solution. As a result, a candidate solution is obtained and then evaluated. If it is better than the local best solution, it is stored as a new local best solution. If it is better than the global best solution, it is saved as a new global best solution. After evaluation, the candidate solution is stored as a new current solution and the algorithm moves to the next particle.
12: 13: 14: 15:
EP
16:
M AN U
10: 11:
Calculate the global best solution Create and initialize particles i, j ← 0 while i < number of iterations do while j < number of particles do Calculate new velocity for particle j Move solution for particle j —obtain candidate solution (canSol) if canSol is better than global best solution then Save canSol as the global best solution if canSol is better than particle j local best solution then Save canSol as the local best solution for particle j Save canSol as a new current solution for particle j j ←j+1 j←0 i←i+1 Return: The global best solution as a PSO final solution
TE D
1: 2: 3: 4: 5: 6: 7: 8: 9:
SC
Algorithm 2 Particle swarm optimization (PSO) for RSA-UAM-DPP
AC C
4.2.3. Velocity calculation In the PSO methodology, each solution is characterized by its position in the solution space which can be modified by a velocity (i.e., the solution can move with a specific velocity). In each iteration, PSO calculates a particle velocity as a function of the velocity applied in the previous iteration, global best solution, particle local best solution and particle current solution. The equation (8) defines formally the velocity calculation process in i -th iteration. velocity(i) = wv velocity(i − 1) + wg r1 (Solglobalbest (i) − Solcurrent (i − 1)) + wl r2 (Sollocalbest (i − 1) − Solcurrent (i − 1)) (8) 15
ACCEPTED MANUSCRIPT
SC
RI PT
Where: velocity(i) is a velocity in i-th iteration; velocity(i − 1) is a velocity in (i-1 )-th iteration (stored as a current velocity); r1 , r2 are random values, wherein 0 ≤ r1 , r2 , ≤ 1; wv , wg , wl are particle coefficients; Solglobalbest (i) is a global best solution in i -th iteration; Sollocalbest (i − 1) particle local best solution after (i-1 )-th iteration; Solcurrent (i − 1) particle current solution after (i-1 )-th iteration.
AC C
EP
TE D
M AN U
The elements of the sum represented by equation (8) are sets of changes. The set velocity(i − 1) is a current particle velocity. The set (Solglobalbest (i) − Solcurrent (i − 1)) is a difference between current global best solution and the particle current solution. The difference is a set of all changes which have to be applied to transform particle current solution into the global best solution. The last set (Sollocalbest (i − 1) − Solcurrent (i − 1)) also represents solutions difference but between particle local best and current solutions. Thus, it includes changes necessary to obtain local best solution from current solution. In the proposed PSO, a velocity is a weighted sum of the three discussed sets. It is assumed that a velocity size (maximum number of included changes) is limited and it is a ratio of all non-contradictory change operations that can be generated in each iteration (i.e., ratio of 2(|D| + |Ddn |)). The coefficient that multiplied by 2(|D| + |Ddn |) gives the size of a velocity is called maxCh and is a PSO input parameter. Note that 0
4.2.4. Solution movement The solution movement process is as follows. First, all change operation conflicts (i.e., existence of contradictory changes in a velocity) are solved. The PSO method analyses included changes one by one according to the order in which they are saved in the velocity. If the considered change is contradictory 16
ACCEPTED MANUSCRIPT
SC
RI PT
to any of the changes considered so far, it is deleted from the velocity. The updated velocity (with no change conflicts) is used in further steps. Next, a new demands allocation order is calculated based on the current allocation order (of the particle current solution) and all demand changes included in the new velocity. The algorithm considers allocation positions one by one and for each position it determines the demand that is to be allocated on this position in a new solution. For each position, the PSO algorithm can face one of three possible situations: • The considered position is related to one of demand position changes;
M AN U
The demand change is applied. The demand that was placed on this position in the current allocation order is moved to the end of lost list (LL). The LL (implemented as a FIFO queue) is a list of demands which are waiting for their position in the new allocation order since their previous position was already assigned to another demand. • The considered position is not related to any demand position change and the demand placed on this position in the current allocation order has been already considered (placed on other position);
TE D
The first demand from LL is assigned to be allocated on the considered position in the new allocation order and it is removed from LL. • The considered position is not related to any demand position change and the demand from this position in the current allocation order has not been considered yet;
EP
The demand placed on this position in the current allocation order is also placed on the same position in the new allocation order.
AC C
Let us consider an example of determining a new allocation order for |D| = 5 demands and two demand position changes (Figure 3). In the current allocation order, demands are allocated according to their indexes, then a new allocation order is obtained in |D| = 5 steps. In the step 1 (Figure 3a), PSO considers the position number 1. The first demand position change is applied. Demand d =3 is assigned to be allocated on this position in the new allocation order while demand d =1 (that was allocated here in the current allocation order) is added to the LL. The applied demand change is removed. In the step 2 (Figure 3b), PSO applies the second demand position change. Demand d =5 is assigned to be allocated on this position in the new allocation 17
ACCEPTED MANUSCRIPT
AC C
EP
TE D
M AN U
SC
RI PT
order while demand d =2 is added to the end of LL. The applied demand change is removed. In the step 3 (Figure 3c), PSO finds that demand d =3 (that was related to this position in the current allocation order) was already considered and no demand position change is related to the current position. Thus, the first demand from LL (demand d =1) is assigned to be allocated on this position in the new allocation order and removed from the LL. Next, in step 4 (Figure 3d), PSO considers position related to the demands from the current allocation order which have not been considered yet. Moreover, there are no demand position changes related to this position. Thus, related demand is assigned to be allocated in the new allocation on the same position as in the current allocation order. Finally, in the step 5 (Figure 3e), PSO allocates the last demand from LL and terminates with the new allocation order. When a new allocation order is found, the demands are allocated according to this order and with respect to the rest of changes and allocation rules saved in the current solution. For each demand PSO finds out if there are related changes (data center change and/or structures change). If the operations exist, their rules are used. Otherwise, the index of DC and selected pair of structures is read from the current solution.
18
M AN U
SC
(a) Step 1
RI PT
ACCEPTED MANUSCRIPT
TE D
(b) Step 2
AC C
EP
(c) Step 3
(d) Step 4
(e) Step 5
Figure 3: Determination of new PSO allocation order – example
19
ACCEPTED MANUSCRIPT
TE D
M AN U
SC
RI PT
4.3. Tabu search algorithm The proposed TS algorithm is an extension of the methods proposed in [14, 33] with special modifications to serve three types of demands at the same time, as well as, to satisfy the DPP policy. The TS basic notion is a move operation which is a definition of a single solution modification. By applying a move to a solution (called as current solution) a new candidate solution is obtained. In the considered TS, a move can be defined as: data center swap, routing structures swap or demands order swap. Note that the TS move is similar to the PSO change operation. The definition of the TS data center swap is analogue to the PSO data center change (Figure 2c) while the definition of the TS routing structures swap is analogue to the PSO routing structures change (Figure 2b). However, the modifications related to the demands positions run in a different way. The TS demands swap operation swaps two demands in the demands allocation order (4). The positions of the rest of demands, as well as, the selected pairs of routing structures and DCs remain the same.
EP
Figure 4: TS move operation: demands order swap
AC C
4.3.1. General idea The TS process is described by Algorithm 3. First, an initial solution is obtained by AFA (section 4.1) and stored as a current solution and as the best solution (among all already considered solutions). Next, TS iteratively searches through the solution space for a better solution by applying a nontabu move to the current solution. As a result, in each iteration a candidate solution is obtained and then evaluated. If it is better than the best solution, it is stored as the best solution and as a current solution, i.e., an improvement is reached. If it is better only than the current solution—it is saved as a new current solution but an improvement is not obtained. Finally, if the candidate 20
ACCEPTED MANUSCRIPT
Algorithm 3 Tabu search (TS) for RSA-UAM-DPP
TE D
11:
SC
2: 3: 4: 5: 6: 7: 8: 9: 10:
Calculate initial solution. Save it as a current solution and as the best solution while stopping criterion is not met do Generate a non-tabu move operation Obtain a candidate solution by applying move to the current solution if candidate solution is better than the current solution then Save candidate solution as a new current solution if candidate solution is better than the best solution then Save candidate solution as the best solution if no improvement limit is reached then Apply a diversification process Return: The best solution as a TS final solution
M AN U
1:
RI PT
solution is worse even than the current solution, there is no improvement and all saved solutions remain the same. After an evaluation, the TS goes to the next iteration unless the stopping criterion (maximum number of iteration) is met. Additionally, the TS search is supported by a move prioritization process, lists of forbidden moves and a diversification process.
AC C
EP
4.3.2. Move generation process In each iteration, the move generation process is supported by a move prioritization process which assigns a priority value (high, middle, low) for each non-tabu move operation. The higher the move priority is, the more likely it is to apply this operation. By default all moves have low priority. Based on the analysis of the current solution, moves that are likely to improve it are assigned with a higher priority. Next, the TS tries to select randomly a high priority move operation. If there is no candidate operation, the algorithm considers operations with middle priority. If this group is also empty, the move operation is chosen randomly from low priority operations. The process of assigning high and middle priorities is as follows. Let dmin denotes number of demands served by the least used (crowded) DC and dmax indicates number of demands served by the most used DC. For a current that solution Sol, the TS calculates a value of criterion Cdc (Sol) = dmindmin +dmax estimates disproportions in the DC usage (in terms of number of serving demands). Next, if value of Cdc (Sol) is lower than the predefined threshold 21
ACCEPTED MANUSCRIPT
M AN U
SC
RI PT
φdc , then moves that swap anycast demands from the most used DC to the least used one are assigned with the high priority. If Cdc (Sol) ≥ φdc but Cdc (Sol) ≤ 2φdc , the potentially beneficial moves are assigned with middle priority. When Cdc (Sol) > 2φdc no priority change is applied. Moreover, for each predefined pair of routing paths p ∈ P , the TS calculates a metric Cpath (p = (b1 , b2 )) = maxe∈b1 ∨e∈b2 xe . It refers to the index of the highest used slice on links belonging to the involved paths. Then, all pairs of paths are ordered in decreasing value of Cpath (p). Moves that change φpath |P | first ordered pairs of paths into another pairs (with lower value of criterion Cpath (p)) are assigned with high priority. The moves that swap the next φpath |P | pairs of paths from the ordered set are assigned with middle priority. The similar procedure is also run for pairs of routing trees, however, this process is controlled by a φtree coefficient and criterion Ctree (p).
AC C
EP
TE D
4.3.3. Lists of forbidden moves Lists of forbidden (tabu) moves store moves which cannot be applied in the current iteration since they can lead to the already considered solutions. In the proposed TS, there are two lists of forbidden moves: tabu list (TL) and used move (UM) list. The tabu list is a set of moves which were used in previous iterations and led to an improvement. It is implemented as a FIFO queue with the size limited by a percentage ratio of the sum |D|+(k+t)R (where |D| is a number of demands, k is a number of candidate pairs of paths between pair of network nodes, t is a number of candidate pairs of trees for a multicast demand and R is a number of DCs). The percentage coefficient which multiplied by |D| + (k + t)R gives a maximum number of moves in the TL is called TL size and is an algorithm parameter. For instance, if |D| = 10, k =t=5, R=2 and T Lsize = 20%, then the TL list stores at most 6 moves. Eventually, the UM list stores moves applied since the last improvement. Thus, this list stores moves that did not lead to an improvement. The UM size is not limited. The list is cleared in two cases. Firstly, when an improvement is reached. Secondly, when the number of iterations without improvement exceeds predefined threshold and a diversification process is run. 4.3.4. Diversification process The aim of the diversification process is to move TS search to another part of the solution space. To this end, in the proposed TS a worsening of the
22
ACCEPTED MANUSCRIPT
5. Numerical experiments
M AN U
SC
RI PT
current solution is used. As a result, in the next iterations (after diversification process) some weaker solution can be accepted as a new current solution and, by these means, change the part of the evaluated solution space. During the TS run, the algorithm counts subsequent iterations without solution improvement. If an improvement is reached, the counter is reset. When the counter value exceeds a predefined threshold, a diversification process is run. The threshold value is defined similarly like a TL size, i.e., as a percentage ratio of the sum |D| + (k + t)R. The percentage coefficient which multiplied by |D| + (k + t)R gives a maximum number of iterations without improvement is called no-impr and is a TS input parameter. A diversification process is implemented as a worsening of a current solution. In particular, it multiplies by a coefficient ψ>1 value of the objective function related to the current solution. The value of ψ is an algorithm input parameter. Note that after a diversification process is applied, the counter of iterations without improvement is reset and the UM list is cleared.
TE D
This section presents results of the simulations focused on the tuning of the proposed metaheuristic approaches and comparison of the algorithms.
AC C
EP
5.1. Simulation setup Three different network topologies are used wherein each one is based on a real national or continental network (see Figure 5, Table 1) [41]. Two topologies are relatively small (15, 16 nodes), one is relatively large (28 nodes). The small topologies are: NSF15 and Euro16 while the large topology is Euro28. Some network nodes host a DC and provide anycast requests. For small topologies, the nodes with relatively high nodal degree are chosen to host DCs. Three different numbers of DCs are used (R=2,3,4) and for each number two different DC locations are used. Hence, six DC configurations are given. For larger topology the number of DCs is R = 3, 5, 7, 9, 11 and for each number one DC location is chosen based on real data 1 . Hence, five different DC configurations are used. Scenarios with unicast, anycast and multicast traffic are considered. To describe the amount of a particular traffic type in each scenario, the notation 1
www.datacentermap.com
23
TE D
M AN U
(a) NSF15
SC
RI PT
ACCEPTED MANUSCRIPT
(b) Euro16
(c) Euro28
EP
Figure 5: Considered network topologies
AC C
of the traffic pattern uu/aa/mm is applied. It brings information about percentage ratio of each traffic type (uu—unicast, aa—anycast, mm—multicast) in the overall traffic volume in a scenario. The scenarios with uu, aa, mm = 0%, 33.(3)%, 66.(6)%, 100% are considered. Note that uu + aa + mm = 100%, hence, ten different versions of scenarios are considered taking into account traffic pattern. The volume of a unicast request is equal to its bitrate. Next, the volume of an anycast request is a sum of its downstream and upstream bit-rate while the volume of a multicast request is calculated as its bit-rate multiplied by the number of receivers. The demand bit-rates are selected randomly from the range 10–400 Gbps. The end nodes of demands (i.e., sources and destinations of unicast demands, client nodes of anycast de-
24
ACCEPTED MANUSCRIPT
Table 1: Characteristics of the considered network topologies
NSF15 Euro16 Euro28
number of nodes 15 16 28
number of links 46 48 82
average link length [km] 1022 486 625
modelled network
RI PT
topology
USA national network European core network European core network
AC C
EP
TE D
M AN U
SC
mands, roots and receivers of multicast demands) are also selected randomly. Two groups of testing scenarios are considered: small and large. They differ in the size of related problem instances (in terms of the total volume of included demands and number of candidate pairs of routing structures). The small scenarios are unrealistically small, however, it is possible to obtain for them optimal results within 1 hour of calculations (on average). The large scenarios are much larger since they approximate realistic traffic volume. However, it is impossible to find for them optimal solutions in a reasonable time. The small group of scenarios is defined for NSF15 and Euro16. The total traffic volume in each scenarios is: 2.4 Tbps for NSF15 AvgSpec, 3.0 Tbps for NSF15 MaxSpec, 3.0 Tbps for Euro16 AvgSpec and 3.3 Tbps for Euro16 MaxSpec. Ten versions of traffic pattern are considered and for each version two different sets of demands are generated. Moreover, six DC configurations are used. Thus, the overall number of small scenarios (for each topology and each objective) is 120. Each small scenario is considered for 2 available pairs of routing paths for each pair of nodes (parameter k ) and 10 pairs of routing trees for each multicast demand (parameter t), i.e., (k =2, t=10). Concurrently, the large group of scenarios is defined for Euro28. The total traffic volume in each scenario is assessed based on Cisco forecast (25 Tbps) [1]. Five different values of R are considered and for each one exactly one DC location is analysed. Moreover, ten versions of traffic pattern are considered and for each version five different sets of demands are generated. Moreover, five DC configurations are used. Thus, the overall number of large scenarios is 250. Each large scenario can be considered with the following number of candidate structures: (k =2, t=10), (k =10, t=200) and (k =30, t=1000). All methods used in the experiments were implemented in C++. Experiments were run on an Intel Core i7 1.6 GHz, 20 GB RAM machine.
25
ACCEPTED MANUSCRIPT
TE D
M AN U
SC
RI PT
5.2. Elastic optical network assumptions The paper considers an EON which uses BV-Ts implementing the PDMOFDM technology with multiple modulation formats selected adaptively among BPSK, QPSK, and x -QAM, where x ∈ {8, 16, 32, 64}. Here, the spectral efficiency is equal to 1, 2, . . . , 6b/s/Hz, respectively, for these modulation formats and PDM stands for polarization division multiplexing which allows us to double the spectral efficiency. The BV-T can combine a number of contiguous subcarriers modulated with the same format and allocated to serve a given bit-rate. A subcarrier occupies 12.5 GHz [42]. EON operates within a flexible ITU-T grid of 6.25 GHz granularity [2]. Three types of BV-Ts are used, each characterized by different capacity limit, 40, 100 and 400 Gbps. The transmission model presented in [40] is applied. The model estimates the transmission reach of an optical signal in a function of the selected modulation level and transported bit-rate. To select modulation for a demand, the DAT rule is applied. In more details, for a particular demand and its routing structure the most spectrally efficient modulation is applied which minimizes number of required regenerators at the same time. In all scenarios, the transmission reach is extended by means of regenerators which are used only if necessary. The regenerators are always located in network nodes and it is assumed that they do not perform the conversion of spectrum and modulation format. A 12.5 GHz guard band is introduced between neighbouring connections [42].
AC C
EP
5.3. Tuning of the algorithms The PSO and TS were tuned to determine values of their input parameters which provide good-quality results in a reasonable time. The determined values are used in further experiments. Each method was tuned separately for each small topology (NSF15, Euro16) and each objective (AvgSpec, MaxSpec). To this end, for each topology and objective a group of six testing scenarios was used (a subset of all defined scenarios (see section 5.1) for which AFA performed the worst (the highest gaps to optimal results)). The comparison criterion used in the tuning is gap to optimal result defined as a difference between method result and the optimal result, divided by the optimal result. The optimal results were yielded by IBM CPLEX 12.5 with implemented ILP models. Note that the tuning was performed for k =2, t=10. Since Euro16 is a part of Euro28 (i.e., all nodes and links of Euro16 are also included in Euro28), the configurations selected for Euro16 are also applied for Euro28. 26
ACCEPTED MANUSCRIPT
Table 2: PSO tuning parameters
RI PT
5.3.1. PSO tuning The PSO parameters are: number of particles, number of iterations, maxCh, wv , wg , wl . Based on the preliminary experiments, potentially beneficial values of the parameters were selected for the tuning analysis (Table 2).
analysed values
wv , wg , wl maxCh particles iterations
0.05, 0.20, 0.35, 0.50 0.3, 0.6, 0.9 10, 40, 70, 100 100–1000 with step of 100
M AN U
SC
PSO parameter
AC C
EP
TE D
The PSO tuning consists of two steps. First, PSO was run ten times for a group of six scenarios considering all possible combinations of values of the following parameters (with respect to ranges from Table 2): number of particles, maxCh, wv , wg , wl . Here, the number of iterations was 1000. Overall, 768 different combinations of parameters values were considered. For each topology and each objective, the combination that provided the lowest average gap to optimal result was selected for further experiments (Table 3). The analysis of the results obtained in the first PSO tuning step shows that the number of particles is the parameter which influences the most PSO performance. Figure 6 presents how number of particles influences average gap to optimal result and processing time for NSF15 and MaxSpec. The presented results are averaged over 6 scenarios, 10 algorithm repetitions and 192 parameters combinations with considered number of particles. According to the results, the PSO performs better for higher number of particles. However, the number of particles significantly influences processing time. The second step of the PSO tuning was focused on the stopping criterion— number of iterations. The PSO was run ten times for a group of all 120 small scenarios. The values of PSO parameters were set according to the results of previous experiments while the number of iterations was set to 100, 200, ... , 1000. For each applied number of iterations, the average gap to optimal result and processing time were saved (averaged over 120 testing scenarios and ten algorithm repetitions). According to the results, for each topology and objective function, PSO significantly improves solutions until a specific number of iterations is reached. The next calculations do not bring any improvement 27
M AN U
SC
RI PT
ACCEPTED MANUSCRIPT
Figure 6: PSO gap to optimal result and processing time as a function of number of particles for NSF15 and MaxSpec
AC C
EP
TE D
or bring only a tiny improvement, however, they increase significantly processing time. Thus, these threshold values are set as PSO stopping criteria as a trade-off between PSO performance and processing time. Figure 7 presents how PSO performance and processing time change as a function of number of iterations for NSF15 and AvgSpec. Here, the threshold value is 700.
Figure 7: PSO gap to optimal result and processing time as a function of number of iterations for NSF15 and AvgSpec
The overall PSO tuning results for both objective functions and all network topologies are presented in Table. 3. 28
ACCEPTED MANUSCRIPT
Table 3: Recommended PSO configuration
Euro16, AvgSpec 0.20 0.35 0.50 0.3 100 500
Euro28 MaxSpec 0.35 0.05 0.35 0.3 100 800
RI PT
wv wg wl maxCh particles iterations
NSF15 MaxSpec 0.35 0.05 0.35 0.3 100 200
SC
AvgSpec 0.05 0.05 0.35 0.9 70 700
M AN U
5.3.2. TS tuning The TS parameters are: number of iterations, no − impr, T Lsize, ψ, φdc , φpath and φtree . Based on the preliminary experiments and authors experience with TS-based algorithms [14, 33], potentially beneficial values of the parameters were selected to be considered in the tuning (Table 4). Table 4: TS tuning parameters
analysed values 0.1, 0.3, 0.6 0.50, 1.00, 2.00 0.50, 1.00, 2.00 0.00, 0.05, 0.10 1000–15000 with step of 100
TE D
TS parameter ψ no − impr T Lsize φdc , φpath , φtree iterations
AC C
EP
The TS tuning consists of two steps. First, TS was run five times for six testing scenarios considering all possible combinations of the values of parameters (with respect to ranges from Table 4): ψ, no−impr, T Lsize, φdc , φpath and φtree . The number of iterations was 10000. Overall, 729 different combinations of parameters values were considered. For each topology and each objective function, the combination that provided the lowest average gap to optimal result was selected for further experiments (Table 5). The second step of the TS tuning was focused on the stopping criterion— number of iterations. Here, the TS was run ten times for a group of all 120 small scenarios. The values of TS parameters were set according to the results of previous experiments (see Table 5) while the number of iterations was 1000, 2000, ..., 15000. Note, that each TS iteration is much less complex than a PSO iteration, since only one solution is evaluated. Thus, the number 29
ACCEPTED MANUSCRIPT
TE D
M AN U
SC
RI PT
of considered iterations for TS is higher than that for PSO. For each applied number of iterations, the average gap to optimal result and processing time were saved (averaged over 120 scenarios and ten algorithm repetitions). Figure 8 presents average TS gap to optimal result as a function of number of iterations for Euro16 and MaxSpec. According to the figure, the most significant improvement is reached until 10000 iterations. Since the process of 10000 iterations is performed in a reasonable time (less than 20 seconds for a particular scenario) this value is set as the TS stopping criterion.
Figure 8: TS gap to optimal result and processing time as a function of number of processed iterations for Euro16 and MaxSpec
EP
The overall TS tuning results for both objective functions and all network topologies are presented in Table. 5.
AC C
Table 5: Recommended TS configuration
ψ no − impr T Lsize φdc φpath φtree iterations
NSF15 AvgSpec MaxSpec 0.6 0.3 0.5 1.0 0.5 2.0 0.05 0.00 0.05 0.00 0.00 0.00
30
Euro16, AvgSpec 0.1 2.0 1.0 0.05 0.05 0.00 10000
Euro28 MaxSpec 0.6 0.5 2.0 0.05 0.05 0.05
ACCEPTED MANUSCRIPT
AC C
EP
TE D
M AN U
SC
RI PT
5.4. Comparison of the algorithms The proposed methods (AFA, PSO, TS) were compared using two groups of scenarios: small and large. For small scenarios the optimal results are available (yielded by IBM CPLEX 12.5 with implemented ILP models). For larger scenarios the optimal results are not available since the related problem instances are too complex and CPLEX solver is not able to find optimal solutions in reasonable time (up to 1 hour on average). Moreover, in the experiments four reference methods are used. The methods were proposed in the literature for similar problems and, for the purpose of comparison, adapted to the RSA-UAM-DPP. The reference methods are three greedy algorithms and one metaheuristic. The greedy algorithms are: first fit (FF) [43], most subcarriers first (MSF) [7] and longest path first (LPF) [7]. The FF allocates demands one by one (according to the order in which they are saved) to the first available resources. The MSF sorts demands in decreasing value of their spectrum requirements and then allocates them to the resources that currently provide the smallest values of the objective. Finally, the LPF works similarly to the MSF, however, it sorts demands in decreasing length of their candidate routing structures. Concurrently, the reference metaheuristic is based on the simulated annealing (SA) proposed in [44, 45]. The main SA idea is to find a beneficial allocation order and then allocate demands using resources that currently provide the lowest spectrum usage. First, all algorithms were run for a group of small scenarios. The calculations of PSO, TS and SA were repeated 30 times for each scenario. All presented values are averaged over 120 scenarios. Table 6 presents average gap to optimal result and obtained values of the objective function for all methods. For PSO, TS and SA two values are presented. The value indicated as ”avg” is a result averaged over all scenarios and all algorithm repetitions. The value indicated as ”min” is a minimum objective value obtained for each scenario and averaged over 120 scenarios. In the table, for each configuration, the result of the algorithm that performed the best (expect for the ILP) is bold. The results show that the metaheuristic approaches (i.e., PSO, TS, SA) performed the best among all tested methods and obtained solutions close to optimal ones. For NSF15 and AvgSpec the PSO performed the best while for the rest of cases the TS yielded the best solutions. Next, Table 7 compares methods processing time. Note that in case of PSO, TS and SA the related values follow from the applied number of iterations. According to the results, all heuristic and metaheuristic methods run much faster than the exact method (implemented ILP model). The 31
ACCEPTED MANUSCRIPT
AC C
EP
TE D
M AN U
SC
RI PT
heuristic algorithms run the fastest and need less than 0.2 s to solve a problem instance. The metaheuristic approaches run a little longer wherein the SA solves problem instances the fastest (with average processing time less than 1 second), next the TS (with processing time up to several seconds), and eventually PSO (processing time about several minutes). Based on the results presented in Table 6, it can be hypothesize that the TS is the best method among all tested approaches. To verify this hypothesis, the results statistical analysis was performed. Table 8 presents average ranking of the algorithms after Friedman test [46]. The lowest obtained rank is bold. Next, Table 9 presents pairs of algorithms for which the differences between their obtained results are not statistically important. The pairs were determined based on the Shaffer test with α = 0.05 level of significance [46] and ranking after Friedman test. The results prove high efficiency of the metaheuristic approaches (PSO, TS, SA). According to the table, for NSF15 and AvgSpec the smallest rank was observed for PSO, then for TS, and finally for SA. However, the differences between algorithms results are not statistically important, therefore, we can conclude that for this case the metaheuristic performed similarly. For the rest of cases, the TS rank was the smallest, then SA and finally PSO. Additionally, for these cases the differences between TS results and results of any other method were statistically important while the differences between SA and PSO results were not. Therefore, for the majority of studied cases (NSF15 MaxSpec, Euro16 AvgSpec, Euro16 MaxSpec) the TS was the best method while SA and PSO were second best methods with similar efficiency.
32
ACCEPTED MANUSCRIPT
SC
EP
TE D
FF MSF LPF AFA TS min TS avg PSO min PSO avg SA min SA avg ILP
NSF15 Euro16 AvgSpec MaxSpec AvgSpec MaxSpec average gap to optimal result 63.3% 80.4% 106.8% 86.6% 39.5% 30.5% 101.5% 34.7% 29.4% 41.7% 60.2% 47.1% 31.2% 18.4% 34.7% 19.9% 3.0% 2.8% 3.7% 5.9% 6.0% 4.0% 6.3% 9.0% 2.2% 4.2% 4.9% 7.9% 5.8% 8.7% 10.1% 11.4% 5.1% 3.3% 10.4% 6.4% 5.7% 5.3% 12.2% 9.3% average objective value 25.9 93.3 28.7 77.8 22.9 68.2 28.6 57.3 21.3 73.4 22.3 62.1 21.8 62.4 20.4 51.9 16.7 54.4 15.3 46.2 17.2 54.9 15.8 47.0 16.6 55.0 15.5 46.9 17.2 57.2 16.4 48.3 17.0 54.7 16.4 46.4 17.1 55.5 16.7 47.5 16.6 53.8 15.1 44.7
M AN U
FF MSF LPF AFA TS min TS avg PSO min PSO avg SA min SA avg
RI PT
Table 6: Performance of the algorithms for small scenarios: average gap to optimal result and average objective value
AC C
Table 7: Performance of the algorithms for small scenarios: average processing time [s]
FF, MSF, LPF, AFA TS PSO SA ILP
NSF15 Euro16 AvgSpec MaxSpec AvgSpec MaxSpec < 0.2s 6.7 6.1 7.5 8.3 63.0 34.0 69.9 147.1 0.3 0.5 0.3 0.4 1880.2 5378.5 2469.1 3592.0
33
RI PT
ACCEPTED MANUSCRIPT
Table 8: Performance of the algorithms for small scenarios: ranking after Friedman test
M AN U
SC
Euro16 AvgSpec MaxSpec 6.03 6.45 6.32 5.00 4.85 5.65 4.44 4.17 1.63 1.60 2.37 2.66 2.36 2.47
TE D
FF MSF LPF AFA TS PSO SA
NSF15 AvgSpec MaxSpec 6.48 6.91 5.54 5.01 4.79 5.43 5.00 4.28 2.09 1.53 1.97 2.80 2.12 2.04
AC C
EP
Table 9: Pairs of algorithms for which the differences between obtained results are not statistically important based on the Shaffer post-hoc test with α = 0.05 level of confidence: small scenarios
AvgSpec
MaxSpec
NSF15 MSF-AFA, LPF-AFA, PSO-SA, TS-PSO, TS-SA LPF-AFA, FF-MSF, PSO-SA
34
Euro16 LPF-AFA, FF-MSF, PSO-SA MSF-LPF, PSO-SA
ACCEPTED MANUSCRIPT
AC C
EP
TE D
M AN U
SC
RI PT
Afterwards, the methods were run for a group of large scenarios. The calculations of PSO, TS and SA were repeated 10 times for each scenario. All presented values were averaged over 250 scenarios. The results of PSO, TS and SA were additionally averaged over 10 repetitions. First, Table 10 presents comparison in terms of the average gap to best found result and average objective value. The gap to best found result is defined as a difference between algorithm result and best found result (among all tested methods), divided by the best found result. In the table, for each objective the result of the algorithm that performed the best is bold. According to the results, TS performed the best for all cases while PSO was the second best method. For the majority of cases (except for AvgSpec, k = 2, t = 10), the SA performed the worst among metaheuristic approaches. Therefore, the method does not tackle well with large solution space. Next, Table 11 analyses methods processing time. Once again all heuristic algorithms run the fastest. Among metaheuristic approaches, the TS and SA run the fastest, however, the SA processing time increases much faster with the problem solution space (parameters k and t). Eventually, the results statistical analysis was performed also for large scenarios. Table 12 presents average ranking of the algorithms while Table 13 reports pairs of algorithms for which the differences between their obtained results are not statistically important. For all cases the TS rank was the lowest and very close to 1. Moreover, the differences between the TS results and results of any other method are statistically important. Thus, the results show that TS is the best method for large scenarios. The second proposed metaheuristic (i.e., PSO) was the second best method only for AvgSpec k = 10, t = 200 and k = 30, t = 1000. For the rest of the cases, it performed similarly to SA or AFA.
35
ACCEPTED MANUSCRIPT
RI PT
Table 10: Performance of the methods for large scenarios and Euro28: average gap to best found result and average objective value
AvgSpec MaxSpec k = 10, k = 30, k = 2, k = 10, k = 30, t = 200 t = 1000 t = 10 t = 200 t = 1000 average gap to best found result 118.2% 137.1% 144.4% 92.5% 114.5% 124.2% 42.5% 51.8% 60.2% 22.4% 32.0% 39.4% 28.1% 38.7% 47.6% 27.7% 36.3% 43.2% 20.3% 16.9% 15.3% 8.2% 5.5% 4.8% 3.3% 3.8% 4.0% 2.8% 2.2% 1.8% 16.7% 14.3% 12.9% 7.3% 5.1% 4.6% 14.4% 22.0% 27.6% 9.9% 16.2% 21.6% average objective value 502.7 502.7 502.7 591.4 591.4 591.4 362.4 349.6 355.8 410.0 390.3 391.7 325.1 318.2 324.1 422.6 400.9 398.1 314.5 274.8 260.8 369.5 316.7 298.5 272.0 245.8 237.2 350.0 306.9 289.8 305.8 269.4 256.0 366.6 315.8 298.0 297.6 285.6 288.3 372.2 346.3 343.9
M AN U
EP
FF MSF LPF AFA TS PSO SA
TE D
FF MSF LPF AFA TS PSO SA
SC
k = 2, t = 10
Table 11: Performance of the algorithms for large scenarios and Euro28: average processing time [s]
AC C
AvgSpec k = 2, k = 10, k = 30, t = 10 t = 200 t = 1000 AFA 0.5 2.5 8.1 TS 55.0 85.7 142.2 PSO 472.1 571.2 640.7 SA 12.3 91.3 350.0 * the processing time of FF, MSF and LPF
36
MaxSpec k = 2, k = 10, k = 30, t = 10 t = 200 t = 1000 0.5 2.5 8.1 47.3 121.6 309.7 817.6 937.2 1041.2 12.0 92.7 376.1 is shorter than 1.2 s for all cases
RI PT
ACCEPTED MANUSCRIPT
Table 12: Performance of the algorithms for large scenarios and Euro28: average ranking after Friedman test
SC
M AN U
k = 2, t = 10 6.97 5.28 5.58 3.18 1.14 2.56 3.28
MaxSpec k = 10, k = 30, t = 200 t = 1000 7.00 7.00 5.32 4.40 5.68 5.59 2.54 2.53 1.12 1.08 2.36 2.41 3.96 4.00
EP
TE D
FF MSF LPF AFA TS PSO SA
k = 2, t = 10 6.96 5.90 4.45 3.82 1.00 3.17 2.70
AvgSpec k = 10, k = 30, t = 200 t = 1000 7.00 6.96 5.91 5.92 5.00 5.07 2.86 2.77 1.00 1.00 2.43 2.36 3.79 3.92
AC C
Table 13: Pairs of algorithms for which the differences between obtained results are not statistically important based on the Shaffer post-hoc test with α = 0.05 level of confidence: large scenarios and Euro28
AvgSpec MaxSpec
k = 2, t = 10 MSF-LPF, AFA-SA
k = 10, t = 200 MSF-LPF, AFA-PSO
37
k = 30, t = 1000 MSF-LPF, AFA-PSO
ACCEPTED MANUSCRIPT
6. Conclusions
7. Acknowledgement
M AN U
SC
RI PT
In this paper, we have investigated problem of allocating three types of network flows (unicast, anycast, multicast) in an EON under the DPP. We have formulated the problem by means of ILP model with respect to two different optimization criteria: average and maximum spectrum usage. Then, we have proposed dedicated solution algorithms: heuristic algorithm AFA and two metaheuristic approaches based on particle swarm optimization and tabu search. Further, we have conducted extensive numerical experiments in order to tune proposed metaheuristic approaches, as well as, to evaluate their efficiency. Based on the results, the proposed TS algorithm was found to be the best method which finds good-quality solutions in a reasonable time. The proposed PSO approach lacks efficient scalability and does not perform very good for larger problem instances. The plans for future works include further development of the PSO to improve its scalability, as well as, consideration of different protection methods in EONs (e.g., shared protection).
EP
References
TE D
This work was supported by statutory funds of the Department of Systems and Computer Networks, Wroclaw University of Science and Technology. The calculations have been carried using infrastructure built in the project No. POIG.02.03.00-00-028/08 ”PLATON—Science Services Platform”.
[1] Cisco, Cisco visual network index: Forecast and methodology, 2015– 2020 (June 2016).
AC C
[2] ITU-T, ITU-T recommendation G.694.1. spectral grids for WDM applications: DWDM frequency grid (Jun. 2002). [3] K. Walkowiak, Modeling and optimization of cloud-ready and contentoriented networks, Springer, 2016. [4] K. Walkowiak, Anycasting in connection-oriented computer networks: models, algorithms and results, International Journal of Applied Mathematics and Computer Science 20 (1) (2010) 207–220. 38
ACCEPTED MANUSCRIPT
RI PT
[5] G. Shen, H. Guo, S. K. Bose, Survivable elastic optical networks: survey and perspectives, Photonic Network Communications 31 (1) (2016) 71– 87.
SC
[6] R. Go´scie´ n, K. Walkowiak, A column generation technique for routing and spectrum allocation in cloudready survivable elastic optical networks, International Journal of Applied Mathematics and Computer Science 27 (3) (2017) 591–603.
M AN U
[7] K. Christodoulopoulos, I. Tomkos, E. Varvarigos, Elastic bandwidth allocation in flexible OFDM-based optical networks, IEEE/OSA Journal of Lightwave Technology 29 (9) (2011) 1354–1366. [8] M. Przewo´zniczek, R. Go´scie´ n, K. Walkowiak, M. Klinkowski, Towards solving practical problems of large solution space using a novel pattern searching hybrid evolutionary algorithm–an elastic optical network optimization case study, Expert Systems with Applications 42 (21) (2015) 7781–7796. [9] X. Yang, Nature-inspired optimization algorithms, Elsevier, 2014.
TE D
[10] F. J. Rodriguez, M. Lozano, C. Garcia-Martinez, J. D. GonzalezBarrera, An artificial bee colony algorithm for the maximally diverse grouping problem, Information Sciences 230 (2013) 183–196.
EP
[11] B. Krawczyk, One-class classifier ensemble pruning and weighting with firefly algorithm, Neurocomputing 150 (2015) 490–500.
AC C
[12] V. Sesum-Cavic, E. Kuhn, D. Kanev, Bio-inspired search algorithms for unstructured p2p overla networks, Swarm and Evolutionary Computation 29 (2016) 73–93. [13] B. Krawczyk, M. Galar, L. Jelen, F. Herrera, Evolutionary undersampling boosting for imbalanced classification of breast cancer malignancy, Applied Soft Compututing 38 (2016) 714–726. [14] R. Go´scie´ n, K. Walkowiak, M. Klinkowski, Tabu search algorithm for routing, modulation and spectrum allocation in elastic optical network with anycast and unicast traffic, Computer Networks 79 (2015) 148–165.
39
ACCEPTED MANUSCRIPT
RI PT
[15] C. Wang, G. Shen, S. K. Bose, Distance-adaptive dynamic routing and spectrum allocation in elastic optical networks with shared backup path protection, Journal of Lightwave Technology 33 (14) (2015) 2955–2964.
[16] X. Chen, S. Zhu, L. Jiang, Z. Zhu, On spectrum efficient failureindependent path protection p-cycle design in elastic optical networks, Journal of Lightwave Technology 33 (17) (2015) 3719–3729.
SC
[17] P. Lu, L. Zhang, Z. Liu, J. Yao, Z. Zhu, Highly efficient data migration and backup for big data applications in elastic optical inter-data-center networks, IEEE Network 29 (5) (2015) 36–42.
M AN U
[18] L. Zhang, Z. Zhu, Dynamic anycast in inter-datacenter networks over elastic optical infrastructure, in: International Conference on Computing, Networking and Communications (ICNC), 2014. [19] L. Gifre, F. Paolucci, O. G. de Dios, L. Velasco, L. M. Contreras, F. Cugini, P. Castoldi, V. Lopez, Experimental assessment of abno-driven multicast connectivity in flexgrid networks, Journal of Lightwave Technology 33 (8) (2015) 1549–1556.
TE D
[20] M. Ruiz, L. Velasco, Serving multicast requests on single-layer and multilayer flexgrid networks, Journal of Optical Communications and Networking 7 (3) (2015) 146–155.
EP
[21] L. Gong, X. Zhou, X. Liu, Z. Wenwen, L. Wei, Z. Zuquig, Efficient resource allocation for all-optical multicasting over spectrum-sliced elastic optical networks, Journal of Optical Communications and Networking 5 (80) (2013) 836–847.
AC C
[22] L. Yang, L. Gong, F. Zhou, B. Cousin, M. Molnar, Z. Zhu, Leveraging light forest with rateless network coding to design efficient all-optical multicast schemes for elastic optical networks, Journal of Lightwave Technology 33 (18) (2015) 3945–3955. [23] M. Aibin, R. Go´scie´ n, K. Walkowiak, Multicasting versus anycasting: how to efficiently deliver content in elastic optical networks, in: Proc. of International Conference on Transparent Optical Networks (ICTON), 2016.
40
ACCEPTED MANUSCRIPT
RI PT
[24] R. Go´scie´ n, On the initialization in column generation for cloud-ready and survivable EONs, in: Proc. of Resilient Networks Design and Modeling (RNDM), 2017.
[25] G. Shen, Y. Wei, S. K. Bose, Optimal design for shared backup path protected elastic optical networks under single-link failure, Journal of Optical Communications and Networking 6 (7) (2014) 649–659.
M AN U
SC
[26] G. Long, Z. Xiang, L. Wei, Z. Zuqing, A two-population based evolutionary approach for optimizing routing, modulation and spectrum assignment (RMSA) in O-OFDM networks, IEEE Communications Letters 16 (3) (2012) 1520–1523. [27] I. Cerutti, F. Martinelli, N. Sambo, F. Cugini, P. Castoldi, Trading regeneration and spectrum utilization in code-rate adaptive flexi-grid networks, Journal of Lightwave Technology 32 (23) (2014) 4496–4503.
[28] M. Przewo´zniczek, Dynamic subpopulation number control for solving routing and spectrum allocation problems in elastic optical networks, in: Proc. of European Network Intelligence Conference (ENIC) 2016, 2016.
TE D
[29] A. N. Patel, P. N. Ji, J. P. Jue, W. Ting, A naturally-inspired algorithm for routing, wavelength assignment, and spectrum allocation in flexible grid wdm networks, in: Proc. of IEEE Global Communications Conference (IEEE Globecom), 2012.
EP
[30] M. Klinkowski, K. Walkowiak, Optimization of anycast and multicast traffic in distance-adaptive elastic optical networks, in: Proc. of Asia Communications and Photonics (ACP), 2015.
AC C
[31] X. Gao, Z. Ye, W. Zhong, C. Qiao, X. Cao, H. Zhao, H. Yu, V. Anand, Multicast sevice-oriented virtual network mapping over elastic optical networks, in: Proc. of IEEE International Conference on Communications (IEEE ICC), 2015. [32] B. Wang, P. Ho, Energy-efficient routing and bandwidth allocation in ofdm-based optical networks, Journal of Optical Communications and Networking 8 (2) (2016) 71–84.
41
ACCEPTED MANUSCRIPT
RI PT
[33] R. Go´scie´ n, Tabu search algorithm for routing and spectrum allocation of multicast demands in elastic optical networks, in: Proc. of International Conference on Intelligent Data Engineering and Automated Learning (IDEAL), 2015.
SC
˙ [34] M. Klinkowski, M. Zotkiewicz, K. Walkowiak, M. Pi´oro, M. Ruiz, L. Velasco, Solving large instances of the RSA problem in flexgrid elastic optical networks, Journal of Optical Communication and Networking 8 (5) (2016) 320–330.
M AN U
[35] Y. Wang, J. Zhang, Y. Zhao, J. Wang, W. Gu, Aco-based routing and spectrum allocation in flexible bandwidth networks, Photonic Network Communications 25 (3) (2013) 135–143. [36] C. A. Kyriakopoulos, G. I. Papadimitriou, P. Nicopolitidis, E. Varvarigos, Energy-efficient lightpath establishment in backbone optical networks based on ant colony optimization, Journal of Lightwave Technology 34 (23) (2016) 5534–5541.
TE D
[37] G. Z. Markovic, Routing and spectrum allocation in elastic optical networks using bee colony optimization, Photonic Network Communications (2017) 1–19.
EP
[38] A. Xavier, R. Silva, D. Chaves, C. Bastos-Filho, R. A. Jr, J. MartinsFilho, The nrpsr-elastic routing algorithm for flexible grid optical networks, in: Proc. of International Microwave and Optoelectronics Conference (IMOC), 2013.
AC C
[39] K. Yamazaki, H. Matsushita, M. Jinno, Virtualized-elastic-regenerator placement by firefly algorithm for translucent elastic optical network, in: Proc. of IEEE Evolutionary Computation (CEC) 2016, 2016. [40] C. Politi, V. Anagnostopoulos, C. Matrakidis, A. Stavdas, A. Lord, V. Lopez, J. P. Fernandez-Palacios, Dynamic operation of flexi-grid ofdm-based networks, in: Proc. of Optical Fiber Conference (OFC), 2012. [41] S. Orlowski, M. Pi´oro, A. Tomaszewski, R. Wessaly, Sndlib 1.0— survivable network design library, in: Proc. of International Network Optimization Conference (INOC), 2007. 42
ACCEPTED MANUSCRIPT
RI PT
[42] E. Palkopoulou, M. Angelou, D. Klonidis, K. Christodoulopoulos, A. Klekamp, F. Buchali, E. Varvarigos, I. Tomkos, Quantifying spectrum, cost, and energy efficiency in fixed-grid and flex-grid networks, Journal of Optical Communications and Networking 4 (11) (2012) B42– B51.
SC
[43] M.Jinno, B. Kozicki, H. Takara, A. Watanabe, Y. Sone, T. Tanaka, A. Hirano, Distance-adaptive spectrum resource allocation in spectrumsliced elastic optical path network, IEEE Communications Magazine 48 (8) (2010) 138–145.
M AN U
[44] M. Klinkowski, K. Walkowiak, A simulated annealing heuristic for a branch and price-based routing and spectrum allocation algorithm in elastic optical networks, in: Proc. of International Conference on Intelligent Data Engineering and Automated Learning (IDEAL), 2015. [45] M. Aibin, K. Walkowiak, Simulated annealing algorithm for optimization of elastic optical networks with unicast and anycast traffic, in: Proc. of International Conference on Transparent Optical Networks (ICTON), 2014.
AC C
EP
TE D
[46] J. Derrac, S. Garc´ıa, D. Molina, F. Herrera, A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms, Swarm and Evolutionary Computation 1 (1) (2011) 3–18.
43