SOLVING ROUTING AND WAVELENGTH ASSIGNMENT PROBLEM WITH MAXIMUM EDGE-DISJOINT PATHS

The routing and wavelength assignment (RWA) problem in wave-length-division multiplexing optical networks is critically important for increasing the efficiency of wavelength-routed all-optical networks. Given the physical network structure and a set of connection requests, the problem aims to establishing routes for the requests and assigning a wavelength to each of them, subject to the wavelength continuous and wavelength clash constraints. The objective is to minimize he number of required wavelengths to satisfy all requests. The RWA problem was proven to be NP-hard and has been investigated for decades. In this paper, an algorithm based on the maximum edge-disjoint paths is proposed to tackle the RWA problem. Its performance is verified by experiments on some realistic network topologies. Compared with the state-of-the-art bin-packing based methods and the particle swarm optimization algorithm, the proposed method can find the best solution among all testing instances in reasonable computing time.


1.
Introduction. In optical networks, information is transmitted through optical fibers operating at a speed in the order of terabits per second. Wavelength-division multiplexing (WDM) is a technology which multiplexes a number of optical carrier signals onto a single optical fiber by using different wavelengths of laser light, thus further provides users more efficient use of the huge bandwidths. Modern systems can handle up to 370 signals and can thus expand a basic 273 Gbps system over a single fiber to a bit rate over 101Tbps. In such networks, sending data from one node to another requires an establishment of connection, which can be realized by determining a path in the network between the two nodes and allocating a wavelength on all of the edges traversed by the path. The all-optical path is commonly called a lightpath and the pair of nodes asking a lightpath for information transmission is a connection request. Given an undirected network G = (V, E) and a set of connection requests T = {(s i , t i ) ∈ V × V |i = 1, ..., I and s i = t i }, the routing and wavelength assignment (RWA) problem attempts to route each request and to assign wavelengths to these routes subject to two constraints: (i) in the absence of wavelength converters, a lightpath must use the same wavelength on all fiber links which it traverses, this is known as the wavelength continuity constraint; (ii) lightpaths that share a common physical link cannot use the same wavelength, which is known as the wavelength clash constraint. A feasible solution of the RWA problem is composed of a set of lightpaths π = {π i |i = 1, ..., I} in G, each corresponding to one request (s i , t i ) ∈ T ; and a set of wavelengths ω = {ω i |i = 1, ..., I} for these paths. Path π i and π j , i = j, cannot use the same wavelength if they share a common edge. The objective is to minimize the number of utilized wavelengths to satisfy all requests in T .

2.
Related works on RWA. The RWA problem was proven to be NP-complete [3] in 1992. The first heuristic method was proposed in [3]. Since then, different heuristic methods have been developed. Reference [24] covers different approaches and variants developed in the 1990s for RWA. A functional classification of RWA heuristics can be found in [4]. In the literature, the approaches for solving the RWA problem can be divided into two main categories. The first one decomposes the problem into two subproblems, the routing subproblem and wavelength assignment problem [8,1,14,18,23] to be solved separately. The other one solves the two subproblems simultaneously [21,6,15,22]. The study in [1] employed a multicommodity flow formulation combined with randomized rounding to calculate the route for each request. Then the wavelength assignment subproblem is solved based on the graph-coloring techniques. In which the graph, called the conflict graph? is built with one node corresponding to each request (and its route) and an edge exists between two nodes if their associated routes share one edge. The work presented in [14] also used the two-phase decomposition strategy to solve the RWA problem. First, one or more candidate routes are determined for each request by the kth-shortest path algorithm. Then the wavelength assignment problem is tackled by solving an instance of the partitioning coloring problem (PCP) defined over a partitioned conflict graph. The authors proved that the decision version of PCP is NP-complete, and proposed six heuristic methods for solving PCP. In [18], the same decomposition scheme was employed, but new algorithms for each phase were proposed. In the routing phase, candidate routes are precomputed by an edge-disjoint-paths based approach. That is, several edge disjoint paths are precomputed as path candidates for each request. Next, a Tabu-search for solving PCP was proposed to solve the wavelength assignment problem. The initial feasible solution of PCP is provided by one of the six methods provided in [14], then a Tabu-search attempts to improve the solution by removing one color. The computational results indicated that the proposed Tabu search outperforms the best heuristic for PCP. Generally speaking, the routing problem may be solved by using a shortest-path algorithm, an EDPbased algorithm, or a combinatorial optimization algorithm [4]. The first two types are sequential algorithms, while the last one tales a combinatorial approach. Consequently, the wavelength assignment problem can be handled by a sequential or combinatorial approach. The sequential approach sorts routes according to different schemes. For example, routes can be sorted in descending order of their lengths.
Then a wavelength is assigned to the sorted routes. For the combinatorial approach, a number of heuristic methods based on well-known graph coloring methods have been proposed. Although dividing RWA into two subproblems allows the use of existing algorithms, good solutions for each subproblem do not guarantee a good solution to the RWA problem. Hence some algorithms treat the RWA problem as an integral problem. The first such heuristic method called Greedy-EDP-RWA was developed in [15]. It employs the solution technique in [12] to solve the maximum edge-disjoint paths problem. Compared with the one in [1], Greedy-EDP-RWA was reported to run much faster to reach an equally good solution. The state-of-art heuristic for RWA was proposed in [21]. The author adapted the idea from binpacking heuristics to the RWA problem by considering each connection request as an item and copies of the original graph as bins. The weight of an item is set to be the number of links in routing a request. To say that a bin does not have enough capacity for two items is equivalent to saying that two requests cannot be routed on the same copy of the original graph with edge-disjoint paths. Four bin-packing based heuristics were proposed in [21]: (i) first fit heuristic (FF-RWA), (ii) best fit heuristic (BF-RWA), (iii) first fit decreasing heuristic (FFD-RWA) and (iv) best fit decreasing heuristic (BFD-RWA). Computational results showed that FFD-RWA and BFD-RWA both outperform Greed-EDP-RWA [15]. Detailed descriptions of the bin-packing based algorithms will be provided later. In [17], BFD-RWA is embedded into a biased random-key genetic algorithm. A chromosome is a vector of real numbers in the interval [0, 1]. Each gene is associated with a connection request. The requests are sorted in a non-decreasing order in terms of the sum of their lengths and genes before BFD is applied. Computational results indicate that better solutions can be found than those obtained by a multistart variant of BFD in less time on average. In recent years, other soft computing techniques such as the particle swarm optimization (PSO) [8], artificial bee colony (ABC) [11] and memetic algorithm [6] were applied to solve the RWA problem. For the PSO and ABC algorithms, several route candidates are precomputed for each request using the kth-shortest paths algorithm. A particle or a population of bees represents a set of I route IDs. Each ID represents a route which connects the corresponding connection request. During the search process, the route IDs are recombined according to different evolutionary scheme. Then a bin-packing based method is used to solve the wavelength assignment problem. Different local search approaches were proposed in [16] and [6]. Both works construct the initial solution by BFD-RWA [21]. In [16], a variable neighborhood descent (VND) and an iterated local search (ILS) were developed. The experimental results showed that VND-ILS is able to improve the solution quality significantly. In [6], a memetic algorithm which includes the ILS, mutation, and recombination operators was proposed. In addition, a multilevel algorithm was applied to address large size instances. The results showed that this method can be considered as the most sophisticated heuristic algorithm known in the literature.
2.1. Bin-packing based methods for RWA. The bin packing problem is a classical combinatorial optimization problem that has been widely studied in the literature. Given is a list of I items of various sizes, and identical bins with a limited capacity. The problem is to pack these items into the minimum number of bins, without violating the capacity constraints. Four classical algorithms for the bin packing problem are the First Fit (FF), Best Fit (BF), First Fit Decreasing (FFD) and Best Fit Decreasing (BFD) algorithms. The FF algorithm packs each item into the bin with the lowest index. On the other hand, the BF algorithm packs each item into the bin which leaves the least room left over after packing the item. The FFD and BFD algorithm first place larger items into bins and then fill up remaining space with smaller items. To apply bin-packing methods to solve the RWA problem, we must define bins, items, and their corresponding size in terms of optical networks. Skorin-Kapov of [21] considered using lightpath requests to represent items and using duplicates of graph G to represent bins. Each copy of G, i.e., G j ,j=1,2,..., corresponds to one wavelength. Let the size of each lightpath π i be represented by the length of its shortest path SP i in graph G j . To solve the RWA problem, we wish to pack as many items (lightpaths) into a minimum number of bins (copies of G), and hence the number of used wavelengths is minimized. The FF algorithm runs as follows. Fisrt, only one copy of G, bin G 1 , is created. Higher indexed bins are created as needed. Lightpath requests are selected and routed on the lowest indexed copy of G if the length of the shortest path on such graph is less than the threshold H, which is set to be max dia (G) , |E| as suggested in [15]. If a lightpath is routed in bin G j , the lightpath is assigned wavelength j and the edges along such path are removed from G j . A new bin is created if no existing bin can accommodate the request. On the other hand, the FFD (and BFD) sorts the requests in a nonincreasing order in terms of the lengths of their shortest paths in G. In a sense, the connection requests with the longer shortest paths are usually harder to route. Thus a better solution might be obtained if these requests are considered first and then fill up the remaining space by the requests with the shorter shortest routes. The pseudocode of FF and FFD algorithms are shown in Figure 1.
The BF bin packing algorithm routes requests in the bin which they fit best ? The best bin is considered to be the one in which the request can be routed on the shortest path. In other words, assume there are B existing bins, bin 2.2. Particle swarm optimization for RWA. A PSO technique for solving RWA was proposed in [8]. In order to apply PSO for solving the RWA problem, the general PSO equations are modified so that PSO can be mapped for RWA. The velocity of movement is either influenced according to the global best or local best position, but not both at the same time. The equations are as follow: where i = 1, ..., N , and N is the population size. The parameter a is either 0 or 1; C 1 and C 2 are social learning parameters (here we let C 1 = C 2 ), P gb and P lb represent the global best position and local best position, respectively. In the PSO for RWA, the position and velocity of a particle is represented as vectors of route ids. Before the PSO starts, a k-shortest paths algorithm is used to produce several path candidates for each of the connection requests. Each path is identified by a given unique route-id. The particle and its velocity are represented as 1-by-I vectors of route ids. Each particle is attached with an edge usage table which shows the edge usage in terms of routes traversing over an edge in the network. This table helps determine which edges of the network will be overloaded if the routes of the current particle are chosen. In the PSO for RWA, velocity is also a vector of route-ids that will be replaced in the current particle according to the global or local best particle. The minus operator is redefined as follows: P gb − x k i denotes the different routes between the gbest and the current particle. Similarly, P lb − x k i represents the routes that are different in the lbest and the current particle. Two social learning parameters C 1 and C 2 determine the number of routes that will be replaced. The parameter a is used to determine whether the new velocity is affected by the global best or local best particle, but not both in a single iteration for a particle. The add operator in equation (1) is redefined: the application of velocity v k+1 i to the particle x k i means the routes in v k+1 i will replace the corresponding routes in x k i . The particle will move to the next position x k+1 i which represents a new candidate solution to the problem. Equation (3) is used to quantify the quality of the solution where AP L is the average path length and N W L is the number of wavelengths required to satisfy all requests. The value of N W L is obtained by calculating the number of edge disjoint path sets among the predetermined paths. The pseudocode of PSO algorithm for RWA is given in Figure 3. In addition, some strategies are proposed to improve searching ability: First, while applying velocity to a current particle, the routes that traverse the most congested edges of the network should be selected. Second, instead of replacing the route by the route of gbest (lbest), replace it with an alternative route from gbest (lbest). We refer readers to [8] for the detailed descriptions about the strategies. Solving RWA using edge-disjoint paths. As mentioned before, since a set of EDPs can be assigned the same wavelength, maximizing the number of EDPs may lead to fewer wavelengths required to satisfy all requests. Thereby a good method for solving the maximum edge-disjoint paths problem is useful for tackling the RWA. In [9], we have developed a GA-based method to solve the MEDP problem. Compared with the multi-start greedy algorithm and ant colony optimization method presented in [2], the proposed method performs better in most instances in terms of solution quality and time. The subroutine is called GA MEDP, which has two inputs (G,T ) and two outputs (R,S), where R denotes the set of accepted requests and S is the edge-disjoint paths set. An intuitive idea of solving the RWA problem can be developed as follows. Solve the MEDP problem with given (G,T ) by GA MEDP and assign a wavelength to the accepted requests. After removing these requests from T , solve another MEDP in G with the rest of T and assign another wavelength to these accepted requests. The procedure is repeated until T is empty. The pseudocode of this basic algorithm is given in Figure 4. The idea of the basic algorithm is used to solve the RWA problem in [15]. It's straightforward and easy to implement. However, taking all requests in T into consideration at each step causes low efficiency, especially when |T | is large. In our proposed method, instead of dealing with the whole request set, T is divided into several batches which are solved sequentially by GA MEDP. The batch size denoted by B is a user-defined value. Similar to the preprocessing on the order of T in bin-packing algorithm (FFD and BFD), the shortest path of each request in G is precomputed, then T is sorted in a non-increasing order of the shortest path distances. Although these paths are unlikely to be the final routes, they still provide good information of the minimum units of resources (edges) they occupy in G. Thus a better solution could be secured if the requests with longer shortest path distance are considered first and then the remaining space is filled up with the request with shorter shortest path length. After T being sorted, the first B requests in T ,denoted by T , are selected as a batch. The current wavelength is denoted by the variable wl initialized to be 1. Then GA MEDP is executed to find the maximum number of edge disjoint paths among T in G. The current wavelength wl is assigned to the accepted requests and each of the obtained edge-disjoint paths is assigned to the corresponding lightpaths. The residual graph, where all edges used by the paths are removed, is stored in the variable G wl . The rejected requests at this stage remain in T and will be included in the next batch. Before starting GA MEDP with the next batch, the algorithm scans all the remaining requests in T in a backward manner. Starting from the last request, which has the shortest distance of shortest path in G, the algorithm tries to find a shortest path to route the request in G wl . If such path exists, the request is assigned wavelength wl and removed from T . After the backward-scanning process is done, wl is increased by 1. Another batch of requests is selected and GA MEDP is executed again. The algorithm halts when T becomes empty. We call the proposed method the GA MEDP RWA algorithm (GMR). Its pseudocode is shown in Figure 5. 4. Benchmark instances. In order to evaluate the performance of the proposed method for solving RWA, numerical testing is conducted in comparison with the state-of-art bin-packing method [21] and the PSO method reported in [8]. An instance of RWA consists of an undirected network G and a set of connection requests T . For the network topology, we use 15 benchmark networks provided in [13,6,11] which assume the patterns and sizes of some real-life telecommunication networks. The topology of NSFNET and EON are the most studied realistic networks in the literature. Network CHNNET and ARPANET are provided by [13], USAnet is given by [11], and other instances are taken from [6]. The main quantitative characteristics of these networks are shown in Table 1. Regarding the connection requests, for each network, different numbers of connection requests are randomly generated according to a given probability p, i.e., the probability that there is a request between a pair of nodes. Four instances are generated for each network with p equals to 0.2, 0.4, 0.6 and 0.8, respectively. For the networks of smaller size, namely, CHNNET, NSFNET, NewYork, ARPANET, EON, France and Norway, one more instance with p=1 is generated. That means every pair of different nodes of the network requests a connection between them. There are 67 testing instances in total. The last two numbers of the instances name indicate the value p that is used to generate the instance. For example, instance CHNNET 02 is generated on network CHNNET with p=0.2 and CHNNET 1 is generated with p=1.    Table 2 and Table 3. The first column gives the name of the testing instance. The first three columns under GMR show the maximum, average, and minimum objective values acquired among 30 runs. The fourth column is the mean computation time. The best objective value among the five is underlined and in boldface. The first three columns under GMR show the maximum, average, and minimum objective values acquired among 30 runs. The fourth column is the mean computation time. For the FF, FFD, BF and BFD methods, let # wl denote the objective value and t, t F F D , t BF and t BF D represent the the computation time of the four methods, respectively. Since four bin-packing based methods are deterministic, only one-time execution is required for each method on each instance. Finally, for each testing instance, the best objective value is underlined and the worst one is in gray background.
Among the five solution methods, one is said to achieve the best objective value on an instance if its acquired value is less than or equal to those obtained by other methods. The numbers of times that each method achieved the best objective values among the 67 instances are summarized in Figure 6. Observe that, on all testing instances, the proposed GMR method can achieve the best objective value at least once among 30 runs. In particular, GMR can find solutions that almost dominate all other methods at all instances on graph NSF, Norway and Germany50. Regarding the GMRs individual result (of 30 runs), it reaches the best value in all 30 runs on some small testing instances, e.g., CHNNET 02, NSF 02, NewYork 02, France 02, janos-us-ca 02, etc. With the growth of the instance size, GMR is still comparable to BPB methods even if it does not always find the same solution in each run. Although on four instances, namely, NewYork 06, ARPANET 02, ARPANET 04 and giul 02, the worst result (max value) is inferior to the value acquired by other methods, it happens rarely since the average value on these instances is much closer to the minimum value. To have further understanding of the individual runs on larger instances, the histograms of performance frequencies on three testing networks zib54, ta2 and Germany50, are provided in Figure 7-9 respectively. Observe that, on all instances, the difference between the upper and lower boundaries is quite small compared to that between the four BPB methods. For example, on ta 08, GMRs solutions have objective values between 128 and 131 but the results of BPB are between 128 and 135; on zib54 08, GMR is between 117 and 122 but BPB is between 117 and 130, etc. Secondly, for each of the 12 instances shown in Figure 7-9, the distribution is centralized. The mode, median and mean of the distribution is quite close. Above observations confirm the effectiveness of the proposed method.   Bin-packing based methods have clearly advantages with respect to computation time, especially on those relatively small instances. For example, the average computational time of GMR on network CHNNET and NSF can be ten to twenty times that of bin-packing based methods. However, the difference of computation time becomes smaller as the problem size grows. We take the instances on the four networks: Norway, giul, Germany50, and ta2, whose sizes are in an ascending order, to demonstrate how the computation time changes with the problem size. Define the relative differences to be t − t bin /t, where t is the average computation time of GMR and t bin is the computation time of one of the four bin-packing based methods (bin can be FF, FFD, BF or BFD, etc). The relative differences for all the instances on the four networks are shown in Figure 10-13, respectively.
In Figure 10, observe that the relative differences go down as the number of connection requests increases. The trend also exists in Figure 11, 12 and 13 and most of other instances. In addition, the relative difference becomes smaller as the network size grows. In Figure 7, the proposed method spent less time on Germany50 08 than BFD did. In Figure 8, the same situation happened on ta2 06 and ta2 08. Since the four networks of Norway, giul, Germany50 and ta2 are in an ascending order of the network size, Figure 10-13 clearly show the phenomenon that the relative differences drop as the network size grows.     Table 4 and Table 5. The best minimum objective value is underlined. Observe that PSO achieved the best values on 2 relatively small instances, while GMR achieved the best objective values on all instances. On bigger instances, the performances of PSO are not comparable at all to that of GMR. The obtained objective values of PSO are even twice more than that obtained by GMR. Regarding computation time, since a weak termination condition is set to let PSO explore more possible solutions, PSO always spent more computation time.
The difference in the path construction methods of PSO, GMR and bin-packing based methods is crucial for distinct performances. GA MEDP takes different network conditions and request topologies into consideration and reroute some requests adaptively during the evolutionary process. For bin-packing based methods, the shortest paths are established iteratively to fit into the residual graphs to minimize the number of network resources (edges) to route each request. On the contrary, in PSO, recombining route ids from predetermined path candidates is lacking of ability to accommodate different situations. The deficiency becomes more significant on the instances of bigger network or with more requests. 6. Conclusions and future work. This paper has presented an algorithm for solving the RWA problem. The algorithm combines the ideas of the bin-packing method and edge-disjoint paths together. It considers only a number of requests at a time and solves the corresponding MEDP problem. The remaining requests are then scanned in a backward manner such that the one with shorter shortest paths tries to fit into the existing wavelengths first. Then a new batch of requests is selected and the MEDP problems is solved again. In such manner, the algorithm solves RWA back and forth until a solution is constructed. The performance of the proposed GMR method has been verified by several experiments on realistic network topologies. The experimental results have shown that, compared with the bin-packing based methods and PSO, GMR can find the best solution in all testing instances. Although it takes longer computational time than the bin-packing methods for small instances (e.g., ten to twenty times that of bin-packing based methods on network CHNNET and NSF), the relative difference of computational time goes down as the problem size grows. In this paper, the proposed algorithm is capable of solving small and medium size instances in reasonable time. However, for very large instances (for example, |T | >1,000,000) , finding a solution is extremely time-consuming. A divide-and-conquer approach called the multilevel algorithm may be worth studying to enhance the proposed method for solving large-size problems. Finding different ways to identify good permutations of the request set and developing local search methods are also needed to further improve the algorithm.