Academia.eduAcademia.edu

Routing and wavelength assignment over WDM optical networks

2007, Proceedings of the 4th international IFIP/ACM Latin American conference on Networking - LANC '07

The increasing demand of bandwidth has found an answer in Optical Networks (ON). To take advantage of the different resources that ONs offer, several parameters need to be optimized to obtain good performance. Therefore, this work studies the Routing and Wavelength Assignment (RWA) problem in a multiobjective context. MultiObjective Ant Colony Optimization (MOACO) algorithms are implemented to simultaneously optimize the hop count and number of wavelength conversion for a set of unicast demands, considering wavelength conflicts. This way, a set of optimal solutions, known as Pareto Set, is calculated in one run of the proposed algorithm, without a priori restrictions. The proposed MOACO algorithms were compared to classical RWA heuristics using several performance metrics. Although, there is not a clear superiority, simulation results indicate that considering most of the performance metrics, MOACO algorithms obtain promising results when compared to the classical heuristics.

Routing and Wavelength Assignment over WDM Optical Networks. A Comparison between MOACOs and Classical approaches. Adolfo Arteta Benjamín Barán Diego Pinto Science and Technology School Catholic University of Asunción Phone: (595 21) 334-650 National University of Asunción Catholic University of Asunción Phone: (595 21) 585-588 Polytechnical School National University of Asunción Phone: (595 21) 585-588 P.O. Box. 1638 , Asunción; Paraguay P.O. Box. CC 2111, San Lorenzo; Paraguay P.O. Box. CC 2111, San Lorenzo; Paraguay aarteta@uca.edu.py bbaran@pol.una.py dpinto@pol.una.py ABSTRACT The increasing demand of bandwidth has found an answer in Optical Networks (ON). To take advantage of the different resources that ONs offer, several parameters need to be optimized to obtain good performance. Therefore, this work studies the Routing and Wavelength Assignment (RWA) problem in a multiobjective context. MultiObjective Ant Colony Optimization (MOACO) algorithms are implemented to simultaneously optimize the hop count and number of wavelength conversion for a set of unicast demands, considering wavelength conflicts. This way, a set of optimal solutions, known as Pareto Set, is calculated in one run of the proposed algorithm, without a priori restrictions. The proposed MOACO algorithms were compared to classical RWA heuristics using several performance metrics. Although, there is not a clear superiority, simulation results indicate that considering most of the performance metrics, MOACO algorithms obtain promising results when compared to the classical heuristics. Categories and Subject Descriptors C.2 [Computer-Communication Networks]: Optical Networks Network Protocols - Routing protocols. General Terms Algorithms and Experimentation. Keywords Networks, Optical Networks, Ant MultiObjective Optimization Problem. Colony Optimization, Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. LANC’07, October 10–11, 2007, San José, Costa Rica. Copyright 2007 ACM 1-58113-000-0/00/0004…$5.00. 1. INTRODUCTION Wavelength Division Multiplexing (WDM) technology applied to optical networks has largely solved the problem of exploiting the enormous potential of optical fibers bandwidth, mostly sub-used in nowadays networks. WDM divides the optical fiber bandwidth in different wavelengths λ, used by electronic devices that can transmit and receive data without presenting electronic bottlenecks [1]. One problem of great interest associated to optical communications is the selection of routes and wavelength to interconnect a set of source-destination pairs or lightpaths. This problem is known as Routing and Wavelength Assignment (RWA) or Virtual Topology Design [3]. RWA can be static (Static-RWA) or dynamic (Dynamic-RWA), depending on the connection requests. Since most of the Wide-Area Networks (WAN) are oriented to pre-contracted traffic services, this work deals entirely with the resolution of the Static-RWA where changes in the reservation of bandwidth happens occasionally, and they are not necessarily assisted in real time. From now on, the Static-RWA is simply referred as RWA, unless the opposite is indicated. RWA belongs to the class of NP-complete problems [4], for which a wide range of heuristics exists [3, 5]. With the advent of networks with mostly optical components, complex problems arise [2]. The RWA problem becomes critical under the optical continuity constraint. Also, for multicast routing, the optical routing tree generates power losses in the bifurcation nodes due to the divisions of wavelengths, which are partially compensated by the optical amplifiers in the Multicast – Capable OXC (optical crossconnect) or MC-OXC [2]. Basically, to solve a RWA problem, balanced optical trees that optimize different resources should be found. In this context, the lightpath concept is generalized to light-tree, considering the entire optical network as transparent to the users [2]. Among the different applications of the RWA problem, it is worth mentioning: optical multicast, enhanced virtual connectivity, traffic grooming, improved optical network performance, among others [2]. One of the first work dealing with the RWA problem, tried to optimize the number of transmitters / receptors and the average end-to-end delay, using a heuristic known as Simulated Annealing (SA) [5]. Saha and Sengupta proposed a solution to the Virtual Static Topology Design using a simple Genetic Algorithm (GA), optimizing the weighted sum of the generated traffic and the hop count, among other objectives, considering wavelength continuity constrains [3]. Another work of Banerjee et al. presented a GA for the simultaneous optimization of the total wavelength count and the average delay, considering the wavelength continuity constraint and wavelength conflicts [6]. On the other hand, ACO algorithms are inspired by the behavior of ant colonies searching for food. ACO has been established as a valid alternative in the resolution of hard combinatorial optimization problems [8]. Thus, Varela and Sinclair proposed a single-objective Ant Colony Optimization (ACO) approach for the routing problem, while the wavelength assignment was treated using a greedy method. This ACO approach minimizes the required number of different wavelengths (Network Wavelength Requirement or NWR) to allocate all unicast requests on a given optical network [7]. Insfrán et al. recently treated the RWA problem with two MultiObjective ACO (MOACO) algorithms, MOACS and M3AS, optimizing the hop count and the number of wavelength conversions [9]. However, a lot of work may be still needed in this area given the great variety of highly competitive MOACO algorithms that may be considered for this kind of hard problems [18, 19, 20, 24, 25 and 27]. In the present work, several MOACO algorithms were implemented for the RWA problem, in a multiobjective context. The MOACO algorithms were compared with classical routing and wavelength heuristics like Shortest Path (SP), K-Shortest Path (K-SP) [10] and First-Fit (FF), Random (RR), Least Used (LU) and Most Used (MU) algorithms [11]. Several metrics are used to compare the performance of all implemented algorithms. The remainder of this work is organized as follows. A general definition of a Multiobjective Optimization Problem is presented in section 2. The problem formulation and the objective functions are given in section 3. The ACO approach is summarized in section 4. MOACO algorithms are explained in section 5, while section 6 presents the above-mentioned Classical Heuristics. The experimental environment and results are given in section 7 and 8 respectively. Finally, conclusions and future works are left for section 9. 2. MULTIOBJECTIVE OPTIMIZATION A general Multiobjective Optimization Problem (MOP) [12] includes a set of n decision variables, k objective functions, and m restrictions. Objective functions and restrictions are functions of decision variables. This can be expressed as: Optimize Subject to where and y = f(x) = ( f1(x), f2(x), …, fk(x) ). e(x) = ( e1(x), e2(x), …, em(x) ) ≥ 0, x = (x1, x2, …, xn) ∈ X is the decision vector, y = (y1,y2,…,yk) ∈ Y is the objective vector. (1) X denotes the decision space while the objective space is denoted by Y. Depending on the kind of the problem, “optimize” could mean minimize or maximize. The set of restrictions e(x)≥0 determines the set of feasible solutions Xf ⊆ X and its corresponding set of objective vectors Yf ⊆ Y. A multiobjective problem consists in finding the decision vector x that optimizes f(x). In general, there is no unique “best” solution but a set of solutions, none of which can be considered better than the others when all k objectives are considered at the same time. This derives from the fact that there can be conflicting objectives, i.e, trade-off between different objectives. If a solution u∈Xf is better than another solution v∈Xf in at least one of the k objectives and not worth in any other objective, it is said that u dominates v denoted as u ≻ v. If neither u dominates u nor u dominates v, u and v are non-comparable, what is denoted as u ~ v. At the same time, a decision vector x is non-dominated with respect to a set Q if and only if, no q⊆ Q dominates x. If x is nondominated with respect to the whole set Xf, it is called an optimal Pareto solution; therefore, the Pareto optimal set Xtrue may be formally defined as: Xtrue = {x ∈ Xf | ¬∃y f x, where y ∈ Xf } (4) The corresponding set of objective vectors Ytrue= f(Xtrue) constitutes the Optimal Pareto Front. 3. PROBLEM FORMULATION In this work, an optical network is modeled as a direct graph G=(V, E, C), where V is the set of nodes, E is the set of links between nodes and C is the set of available wavelengths for each optical link in C. Let be: (i,j) ∈ E: optical link from node i to node j; i, j ∈ V; maximum number of different wavelengths at link cij ∈ C: (i,j); unicast request u with a source node s and a u= (s,d): destination node d, where s, d ∈ V; set of unicast requests, where U={u | u is an unicast U: request}; wavelength λ assigned to the unicast request u at λ uij : link (i,j); lightpath or set of links between a source node su and destination node du; with the corresponding lu: wavelength assignment in each link (i,j); solution of the RWA problem considering the set of LU : U requests; Notice that LU = { lu | lu is the set of links with their corresponding wavelength assignment}. In particular, LU is the decision variable x presented in the previous section. Using the above definitions, the RWA problem may be stated as a MOP searching the best solution LU that simultaneously minimize the following objective functions: 1- 2- Hop count: ⎛ ⎞ y1 = ∑ ⎜⎜ ∑ φij ⎟⎟ u∈U ⎝ ( i , j )∈lu ⎠ where: ⎧⎪1 φij = ⎨ ⎪⎩0 if (i, j) ∈ lu (5) otherwise Number of wavelength conversion: ⎞ ⎛ y 2 = ∑ ⎜ ∑ ϕ ij ⎟ u∈U ⎝ i∈V ⎠ where: ⎧1 if i ∈V switches λ otherwise ⎩0 φij = ⎨ (6) Wavelength conflict constraint: two different unicast transmissions must be allocated with different wavelengths when they are transmitted through the same optical link (i,j). An example will help to clarify the problem formulation and the objectives considered in this work. Example 1. Given the optical network topology of Figure 1 [13], suppose the next set of unicast request is given U = {(H,G) (A,C) (B,F) (D,E)}. This optical network has two wavelengths for each optical link, i.e., (cij =2). Figure 1 presents two possible solutions for this problem. In figure 1.a) lightpaths between request H - G, A - C, B - F do not presented wavelength conversions, while the lightpath between D - E presents wavelengths conversions at nodes 10 and 9. In figure 1.b-) the lightpaths between request H - G, A - C, B – F and D - E do not present any wavelength conversion. Note that, the two alternative are trade-off solutions; i.e., ya ~ yb (ya and yb are noncomparable). 4. ANT COLONY OPTIMIZATION Ant Colony Optimization (ACO) is a metaheuristic inspired by the foraging behavior of ant colonies [14]. In the last few years, ACO has received increased attention by the scientific community as can be seen by the growing number of publications and the different fields of application [13]. Even though, there are several ACO variants, what can be considered a standard approach is next presented [16]. Standard Approach. ACO makes use of simple agents called ants and a pheromone matrix τ = {τij} for iteratively construct candidate solutions. Typically, the initial values are τij=τ0 ∀(i,j)∈E, where τ0 > 0. Furthermore, ACO algorithm takes advantage of problem dependent heuristic information using a parameter ηij called visibility. The relative influence between the heuristic information and the pheromone levels is controlled using parameters α andβ. While an ant is visiting node i, Ni represents the set of neighborhood nodes that are not yet visited from node i. The probability of choosing a node j while at node i, is defined by the following equation: ⎧ τ ij .ηα ij β ⎪ τ ig .ηig = ⎨ ∀∑ g ∈N i ⎪0 ⎩ α pij β if j ∈ N i (7) otherwise In particular, for the considered RWA problem this paper uses two visibilities. The first visibility reflects the desirability to choose a link with the same wavelength as the previous link, available. Therefore, the conversion visibility ηijc used in this work, is defined as: ⎧1 ⎩∆ η =⎨ c ij if the optical link (i, j) does not change wavelength. if a change of wavelength at node i is needed where ∆ << 1 (in this work, ∆ = 0,01 is used). (8) Figure 1: Two possible solutions. a-) the calculated objective vector is ya = (15, 2); b-) the objective vector is yb = (17, 0). The second visibility is the hop-count visibility ηijd , i.e., it tries to minimize the hop count from a feasible neighbor i to a destination node j. This visibility has been calculated using the well-known Dijkstra Shortest Path algorithm [4]. This way, equation (7) is extended to: r ⎧ 1− r β τ ijα [(ηijc ) (ηijd ) ] ⎪ ⎪ ⎪ pij = ⎨ ∑ τ α .[(η c ) r (η d )1− r ]β ig ig ig ⎪ ⎪ ∀g∈Ni ⎪0 otherwise ⎩ if j ∈ Ni (9) where r and (1- r) are relative influence of the two proposed visibilities. It is also possible to implement other approaches that use more than one pheromone matrix [19, 20 and 24]. Note that, the hop-count visibility matrix η ijd is a parameter of the problem. Pheromones evaporation is applied for all links (i,j) according to τij=(1-ρ).τij, where parameter ρ∈(0;1] determines the evaporation rate. Considering an elitist strategy, the best solutions found so far LUbest updates τ according to τij=τij + ∆τ, where typically best best ) if (i,j)∈ LU and ∆τ(i,j)=0 if (i,j)∉ LU . ∆τ(i,j)=1/f( LU ACO is especially appealing when constructing solutions are needed, therefore, it seems interesting to study its application to the RWA Problem. Note that the standard approach optimizes a single objective. In the next sections, this work presents a MultiObjective Ant Colony Optimization (MOACO) approach. 5. MULTIOBJECTIVE ANT COLONY OPTIMIZATION Alternative implementations of MultiObjective Ant Colony Optimization (MOACO) algorithms derive from traditional ACO. These implementations are based mainly on the number of colonies, the way to manage the pheromone information, and the heuristic functions [17]. The combinations of these characteristics are used to build MOACO algorithms. The first alternative is to have multiple colonies, where the group of all the ants is divided in disjoint sets of smaller sizes, and each group conform a colony. Each colony specializes in a region of the Pareto Front (for example, a particular objective), and it uses its own pheromone information. In a cooperative approach, solutions can be exchanged between colonies in such a way that an ant from one colony can update the pheromone matrix of other colonies, trying to achieve a synergetic effect. For pheromone information and visibilities, two alternatives exist. The first one uses one pheromone matrix with the information related to all the objectives. The second alternative uses multiple pheromone matrices, where each matrix contains the pheromone information with respect to only one objective of the problem. The transition rule can be based on a single objective, or it can be based on the aggregation of the different pheromone matrices, assigning a weight to each objective. The visibility has similar alternatives, i.e. for the same problem, several visibilities can be defined and combined, as shown in (9). It is worth mentioning that in a mono-objective context, each ant that finds a new solution that is better than the best-found solution, so far, updates the pheromone matrix τ. Analogously, in a multiobjective context, the ants that build a good solution must also update Yknown the set of best non-dominated solutions found by a running algorithm; if and only if the new solution is nondominated with respect to the whole Yknown found so far; at the same time, dominated solutions of the Pareto Set under construction must be eliminated. Algorithm 1 presents the general MOACO approach. The different MOACO algorithms implemented are summarized next. Multiple Objective Ant Q Algorithm (MOAQ): is an algorithm proposed by Moriano and Morales[18]. It maintains an ant colony for each objective. This way, in a problem with k objectives, it will use k colonies in charge of optimizing each specific objective. The transition rule is based on the values of the pheromones matrix and the visibility. The idea is to use specialized colonies in particular objectives and to share knowledge presented in the solutions and pheromones trails. Algorithm 1: The MOACO 1: Input: α, β, U, ρ, τ0, m, G(V, E, C); 2: Output: Ytrue; 3: τ = Inicialize_Pheromones(τ0); 4: while not termination_conditions 5: t = t + 1 /* generations 6: for ant=1 to m /* m is the number of ants 7: LU = Ant_RWA(α, β, U, G(V, E, C), τ); 8: Evaluate _Solution(LU); 9: Ytrue = Update_Yknown(LU); 10: end for 11: τ = UpdatePheromones(Ytrue); 12: end while 13: print Ytrue; Bicriterion Ant (BIANT): this algorithm was designed by Iredi et al. [19]. It uses two different pheromone matrices, one for each objective. This way, it is expected that the different ants carry out searches in different regions of the Pareto Front. The pheromone update and evaporation are carried out for each matrix. Only the ants that found non-dominated solutions can update the pheromone matrices. These non-dominated solutions are maintained in a set. Pareto Ant Colony Optimization (PACO): This algorithm was proposed by Doerner et al.[20], and it is based on the use of several b pheromone matrices, one for each objective. At each iteration, an ant computes a series of weights that in [20] were selected randomly, to be used with a transition rule. The best two ants for each objective update the corresponding pheromone matrices, carrying out an elitist update. Every time that an ant advances to another solution, a local pheromone update is performed for the k pheromone matrices. It uses a pseudo-random proportional rule to select the next node (see Algorithm 2). Multi-Objective Ant Colony System (MOACS): proposed by Barán and Schaerer in [21]. It was implemented considering two objectives; it uses a pheromone matrix and two different visibilities, one for each objective of the problem, together with the pseudo-random rule presented in Algorithm 2 to favor exploitation. Every time an ant moves from state i to state j, it performs a local pheromone update. When a non-dominated solution is found, the Pareto set is updated and the algorithm resets the pheromone matrix, considering that the information was learned by means of sub-optimal dominated solutions [21]. This way, exploration is encouraged. If a recently found solution is non-dominated with respect to Yknown, a pheromone update is performed. Algorithm 2: The Pseudo-Random proportional Rule, for selecting a node j of Ni. 1: Input: q0, i, Ni; 2: Output: j ∈ Ni; 3: Select randomly q; /* q, q0 ∈ (0,1] 4: if q > q0 then 5: Choose node j with larger pij; /* using equation (9) 6: else 7: Randomly choose j using probability pij ; 8: end if 9: return j; Multiobjective Max-Min Ant System (M3AS): this algorithm was proposed by Pinto and Barán [22], and it extends the MaxMin Ant System [23] to solve multiobjective problems. It uses a global pheromone matrix, which maintains pheromone information considering all objectives. The non-dominated solutions update the pheromone matrix where bounds are imposed on the pheromone levels. COMPETants (COMP): Proposed by Doerner et al. [24], it was used in bi-objectives problems, with two pheromone matrices and two visibilities. The number of ants for each colony is not fixed, and it is established dynamically during the execution of the algorithm. When all ants have built their solutions, the colony with the best solutions receives more ants for the next iteration. This way, the ants are adapted dynamically according to the performance of each colony. It also maintains spy-ants on each colony. Multiobjective Omicron ACO (MOA): This algorithm was proposed by Gardel el al. [25] and it is based on the Omicron ACO (OA) proposed by Gómez and Barán [26]. The algorithm was implemented considering two objectives; with one pheromone matrix and two visibilities, one for each objective of the problem. A Pareto set of non-dominated solutions updates the pheromone levels. A constant quantity of pheromone is added at all edges belonging the solutions of the Pareto set. The transition rule is based on the parameter O (Omicron) that gives the name to this ACO algorithm. This way, the pheromone level stays with in an inferior and superior bound. Multiobjective Ant System (MAS): was proposes by Paciello et al. [27]. It is a simple extension of the Ant System (AS) [28] to manage multiple objectives. It maintains one pheromone matrix with a visibility for each objective to be optimized; the ants are distributed in regions of the search space. It uses the pseudorandom proportional rule (Algorithm 2). The pheromone update is carried out before each iteration ends and it is done by the ants which found non-dominated solutions. This algorithm has a mechanism of convergence control to improve exploration that consists in restarting the pheromone matrix to the initial values (forgetting what was learned) if during K' iterations nondominated solutions are not found, where K' is defined a priori. All presented MOACO algorithms are independent generalpurpose methods of optimization. To particularize them to the RWA, each artificial ant should build the set of lightpaths that constitute a solution LU. In this context, an artificial ant for the RWA is generically called Ant-RWA. Each Ant-RWA builds a solution traveling the so-called Wavelength Graph (WG) [29, 30, and 31]. The WG is obtained by a mapping of the original graph G(V, E, C), transforming the RWA problem into a simple routing problem by considering cij parallel links between nodes i and j. Algorithm 3 depicts the job of Ant-RWA. Basically, an Ant-RWA builds, in WG, a path for each unicast request u, to satisfy the demand U, if it is possible. Once the problem is regularly solved in WG, the lightpaths of the ' are found and finally, the LU' solution is mapped solution LU over the original graph G to have the desired solution in the original topology. The algorithm Ant-RWA can be used by any of the proposed MOACOs to built solutions. The differences among them are mainly given by the way of selecting a connection using different pheromone matrices and visibilities. For the MOACS, PACO and MAS a pseudo-random rule is used, while the other algorithms choose node j with probability pij given by (9). Another difference is the on-line evaporation that is carried out by MOACS, PACO, MOA, and MAS. This evaporation is implemented with the purpose of improving search with the newest solutions, while slowly forgetting old solutions. Algorithm 3: The Ant-RWA 1: Input: α, β, ρ, U, G(V, E, C); 2: Output: LU; ' = ∅; 3: Dr = ∅; LU 4: WG ← G; /* mapping of G according to [29,30 and 31] 5: for each Unicast Request u ∈ U do 6: R =∅; 7: R = R ∪ s; 8: do 9: Select node i of R and build set Ni ; 10: if (Ni = ∅) then 11: R = R – i; /* erase node without feasible neighbor 12: else 13: Assign probability pij to each node of Ni ; 14: Select node j of Ni ;/* by Algorithm 2 or Equation (9) ' ' 15: l u = l u ∪ (i, j); R = R ∪ j; 16: OnLineEvaporation (ρ); /*for MOACS, PACO, MOA, MAS*/ 17: end if 18: while(R ≠ ∅ or du is found) /*du is the destination node of u 19: if (R=∅) then 20: Request u not satisfy, return Error; 21: else 22: Prune Tree T; /* eliminate not used links ' ' ' LU = LU ∪ l u ; 23: 24: end if 25: end do ' , WG, G); 26: LU =Mapping( LU 27: return LU; 6. CLASSICAL HEURISTICS Classical Heuristics (CH) approaches [10, 11] make tractable the RWA problem, portioning the problem into two sub-problems: routing on one hand and wavelength assignment on the other hand; each sub-problem can be solved separately using a different heuristic. The traditional routing problem is solved by well-known techniques based on shortest path algorithms as: • • Shortest Path (SP) Dijkstra: this algorithm finds the shortest route from a given source to a destination in a graph. The route is a path whose cost is the least from a given source to the destination [10]. K-Shortest Path (K-SP): K-shortest path algorithms find more than one route for each source and destination pair. K alternative paths provide flexibility in route selection. For the wavelength assignment problem, a number of heuristics have been proposed in the literature [11]; the ones used in this work are: • • • • Random (RR): the random wavelength assignment algorithm chooses one of the free available wavelengths on all links randomly, with uniform distributions, to establish a connection. This way eight possible combinations of CHs are implemented in this work, as shown in Table 3, to experimentally compare them to the proposed MOACO algorithms. Table 3: Set of algorithms for the Classical Heuristics. Routing Algorithms SP K-SP* RR Wavelength Assignation Algorithms FF MU LU KSPFF KSPLU KSPMU KSPRR SPFF SPLU SPMU SPRR * In this work were selected K=3. 7. EXPERIMENTAL ENVIRONMENT Simulations were carried out using the NTT network topology illustrated in Figure 2 [32]. First-Fit (FF): this algorithm assumes that the wavelengths are arbitrarily ordered. The first-fit algorithm checks the status of the wavelengths sequentially and chooses the first available wavelength to establish a connection. Most-Used (MU): the free wavelengths that are used on the greatest number of links in the network are chosen first to establish a connection. Least-Used (LU): the free wavelength that is used on the least number of links in the network is chosen to establish a connection. These algorithms were implemented to compare them with the MOACO algorithms (see Algorithm 4). Basically, the CHs are applied for each unicast request u, until the demand U is satisfied, when possible. First, it calculates the route for a request applying the SP or the KSP algorithms; then, for the path obtained, it selects the wavelengths for each optical link, applying one of the wavelength assignment heuristics explained above; in order to build a complete lightpath. Algorithm 4: The Classical Heuristics 1: Input: G(V,E,C),U, K; /* K: Number of shortest path 2: Output: Ytrue; 4: do while stop criterion is not verified 5: InitializeParameters(); 6: Randomize order of set U; 7: for each Unicast Request u ∈ U do 8: Path=CalculateShortestPath(u, K); 9: AssignWavelength(Path);/*FF, RR, LU or MU 10: Update_Pareto_Set(); 11: end for 12: end do 13: print Ytrue; Figure 2: Japan NTT network with 55 nodes and 144 links used for the simulations. Each optical link (i,j) has cij wavelengths. The algorithms have been implemented on a 1910 MHz AMD Athlon computer with 256 MB of RAM with a gcc compiler. For these experiments, the results of the proposed MOACOs have been compared to the eight CH combinations shown in Table 3. With the objective of evaluating the proposed methods, many simulations were performed with many different unicast groups U, assuming several wavelengths quantities cij supported by the optical network. In that context, the used parameters were: 40 ants, β/α=4 relative importance, evaporation percent ρ = 0.10, a pseudo-random probability of q0 = 0.95 and for the K-Shortest Path a value of K=3 was used. The stopping criterion was 100 iterations for all algorithms. For each unicast group U, a set of approximate solutions to the Pareto Front was calculated using the following procedure: 1. Each MOACO and CH algorithm was run 10 times. 2. For each algorithm, 10 sets of non-dominated solutions: Y1, Y2…Y10, were calculated, one for each run. 3. Dominated solutions were deleted, and an approximation set of the Pareto Front, called “Yknown”, is created. 4. Then, each of the 10 runs was compared with Yknown to calculate an average of the Pareto Metrics. Also, the number of blocked unicast request (NB) was calculated in average for the 10 runs. 5. In this work, four metrics of evaluation were used to measure the performance of the algorithms. The metrics known as M1, M2, and M3 were taken from Zitzler et al. [33], referring to quality, distribution and extension of the Pareto Front respectively. A fourth metric M4, denominated Error, was taken from Veldhuizen [12], and it refers to the percent of generated solutions, which do not belong to the Pareto Front. In all cases, the Euclidian distance between two points in the objective space, denoted of d(p,q), was chosen considering Yknown and the Pareto Front generated by the algorithms Y’. This four metric used in what follows, are defined next: M 1(Y ' ) = 1 | Y '| ∑ min[d ( p, q) q ∈ Yknown] p∈Y ' The metric M1 first calculates the average distances of each point in the generated front to the nearest point in the known Pareto Front. Then, M1 calculates the average distance of the generated front Y’ to the known Pareto Front Yknown. In general, an algorithm whose calculated front obtains the smallest value in this M1 metric is the best one (in quality of the solution). Metric M2 uses a set Wp = {q ∈ Y ' | d ( p, q) > σ } , given a fixed value σ , and it is calculated as: 1 | Y ' | −1 ∑| Wp | p∈Y ' The metric M3 considers the extension of the Pareto Front Y’ and it is defined as: ∑ max(d ( p , q ) | p, q ∈Y ' ) b i =1 i i (12) where b is the number of objectives. The larger is M3 the better an algorithm may be considered considering that it gives an idea of the total extension of a Pareto front. The Error Metric M4 is calculated as: i =1 i (13) | Y '| where ei takes the value 0 if the i-th solution of Y’ belongs to Yknown, and 1 otherwise. Clearly this last metric calculates the percent of solutions of the generated front that do not belong to Yknown. A large value of this Error M4 indicates a larger quantity of sub-optimal solutions. Each metric was normalized with respect to its maximum value, depending on the particular problem. This way, presented results represent percentages. Metrics M1 and M4 were slightly modified to calculate the rankings R of the implemented algorithms; thus, M1*=1-M1 and M4*=1-M4, where the best value is now 1 and the worst 0. 8. EXPERIMENTAL RESULTS This section shows a comparison between the solutions found with the implemented MOACO and CH algorithms with respect to Yknown. To begin, Table 4 shows four sets of unicast request that were used for the experiments. Table 4: Unicast Group used for the tests Test Group |U| Group 1 10 Group 2 20 Group 3 30 Group 4 40 (11) This metric is used to calculate the average number of solutions in the generated Pareto front, which are separated by a distance of σ . Therefore, the larger is M2 metric, the better. In this work, the value used for σ has been established at ten percent (10%) of the distance between the point with better evaluation in the first objective and the point with better evaluation in the second objective. M 3(Y ' ) = M 4(Y ' ) = (10) where | . | represents cardinality. M 2(Y ' ) = ∑e |Y '| 8.1 U (18,49) (15,1) (11,42) (8,33) (32,10) (37,13) (19,17) (28,31 ) (40,24) (11,41) (47,30)(47,48)(23,17) (21,4) (28,42) (54,11) (9,49) (51,12) (11,47) (17,8) (20,50) (3,25) (11,48) (46,30) (18,53) (17,36) (48,9) (18,1) (28,49) (3,29) (47,30)(47,48)(23,17) (21,4) (28,42) (54,11) (9,49) (51,12) (11,47) (17,8) (20,50) (3,25) (11,48) (46,30) (18,53) (17,36) (48,9) (18,1) (28,49) (3,29) (30,28)(45,31) (8,44) (15,31) (49,1) (39,30) (50,38)(39,21)(43,37)(19,23) (13,43) (14,25) (53,0) (53,31) (26,33) (30,44)(19,30) (50,44) (25,0) (7,26) (3,12)(45,19) (35,36) (49,34) (8,47) (20,37) (10,9) (53,40) (23,8) (3,21) (1,52)(16,19) (12,17) (6,46) (30,17) (30,29) (29,2) (23,1) (48,29) (34,43) Results for Unicast Group 1 Table 5 presents experimental results obtained for the unicast group 1 (see Table 4). For this first test presented in Table 5, a calculated Pareto Front with | Yknown |=1 was obtained, and the optimal solution value had a hop count of 57 with no wavelength conversion. Analyzing M1* in Table 5, it is clear that M3AS obtained the best result when compared to other MOACOs while 3SPLU, 3SPRR, SPLU and SPRR get the same optimal result of M3AS. For the metric M2, the table shows that MOAQ is the only algorithm that reaches the best value. Considering metric M3, MOAQ again obtained the best value. Finally, for the metric M4*, M3AS and MOA obtained the best results for MOACOs; while 3SPLU, 3SPRR, SPLU and SPRR obtained the same result for the CHs. W avelength Conversion - y 2 120 Table 5: Unicast Group 1 – Experimental Results Performances Metrics Algorithms NB M1* M2 M3 M4* R10† 0 0,99 0,10 0,05 0,90 0,51 BIANT 0 0,85 0,80 0,54 0,30 0,62 COMP 0 0,86 1,00 1,00 0,30 0,79 MOAQ 0 0,98 0,20 0,11 0,80 0,52 MOACS 0 1,00 0,00 0,00 1,00 0,50 M3AS 0 0,98 0,20 0,10 0,70 0,49 MAS 0 0,99 0,10 0,05 0,90 0,51 PACO 0 1,00 0,00 0,00 1,00 0,50 MOA 0 0,00 0,00 0,00 0,00 0,00 3SPFF 0 1,00 0,00 0,00 1,00 0,50 3SPLU 0 0,03 0,00 0,00 0,00 0,01 3SPMU 0 1,00 0,00 0,00 1,00 0,50 3SPRR 0 0,00 0,00 0,00 0,00 0,00 SPFF 0 1,00 0,00 0,00 1,00 0,50 SPLU 0 0,03 0,00 0,00 0,00 0,01 SPMU 0 1,00 0,00 0,00 1,00 0,50 SPRR † Average ranking R10 = (M1* + M2 + M3 + M4*) / 4 for each algorithm. In summary, Table 5 shows that MOAQ obtained the best average performance considering the ranking of all implemented algorithms (see a ranking average value in the last column of Table 5). Another important point in Table 5 is that the worst ranking value for a MOACO is similar to the best value of CHs; what indicates a potential advantage when using MOACOs compared to traditional heuristics. 8.2 Yknown MAS MOA 3SPLU 100 80 60 40 20 0 132 135 137 140 142 145 147 150 152 155 157 Hop Count - y 1 Figure 3: MAS, MOA, 3SPLU Pareto Front and Yknown. Table 6 shows that considering M1*, BIANT, M3AS and MOA obtained the best result; and the worst MOACO is almost twice as good as the best CH. For the metric M2, Table 6 shows that MAS is the only algorithm with the optimal value while CHs have in general a bad performance. For metric M3, MOAQ obtained the best value, and again the CHs obtained the worst performance metric. Finally, for metric M4*, 3SPLU obtained the best result for the CHs, outperforming even MOACO algorithms. Notice that the SPFF, SPLU, SPMU and SPRR have not been included in the analysis because, they had two requests blocked. Summarizing the above results, Table 6 shows that MOA and MAS obtained the best performance considering the ranking column of all implemented algorithms. Figure 3 shows the Pareto Front of the best MOACOs and CHs algorithms compared to Yknown. It can be seen that MOACOs have a good performance in quality, distribution and extension while CHs is better considering error M4. Results for Unicast Group 2 Table 6 presents experimental results obtained for the unicast group 2 (see table 4). Table 6: Unicast Group 2 – Experimental Results Algorithms BIANT COMP MOAQ MOACS M3AS MAS PACO MOA 3SPFF 3SPLU 3SPMU 3SPRR SPFF SPLU SPMU SPRR NB 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 Performances Metrics M1* M2 M3 M4* 0,82 0,95 0,71 0,02 0,74 0,98 0,76 0,00 0,69 0,90 1,00 0,00 0,78 0,81 0,80 0,00 0,82 0,86 0,77 0,00 0,79 1,00 0,86 0,00 0,77 0,80 0,77 0,00 0,82 0,94 0,88 0,00 0,00 0,03 0,06 0,00 0,35 0,08 0,07 0,65 0,08 0,11 0,09 0,00 0,36 0,14 0,10 0,10 8.3 Results for Unicast Group 3 Table 7 presents experimental results obtained for the unicast group 3 (see Table 4). Table 7: Unicast Group 3 – Experimental Results R20 0,62 0,62 0,65 0,60 0,61 0,66 0,59 0,66 0,02 0,29 0,07 0,17 Algorithms BIANT COMP MOAQ MOACS M3AS MAS PACO MOA 3SPFF 3SPLU 3SPMU 3SPRR SPFF SPLU SPMU SPRR NB 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 Performances Metrics M1* M2 M3 M4* 0,76 0,98 0,62 0,00 0,70 0,87 1,00 0,00 0,57 0,73 0,89 0,00 0,76 0,91 0,85 0,00 0,75 0,80 0,60 0,00 0,60 0,81 0,84 0,02 0,77 0,95 0,82 0,00 0,79 1,00 0,84 0,00 0,00 0,10 0,15 0,00 0,43 0,07 0,17 0,20 0,05 0,13 0,15 0,00 0,39 0,12 0,20 0,00 R30 0,59 0,64 0,55 0,63 0,54 0,57 0,63 0,66 0,06 0,22 0,08 0,18 Yknown MOA 3SPLU 40 20 0 142 144,5 147 149,5 152 154,5 Wavelength Conversion - y2 Wavelength Conversion - y2 60 157 200 180 160 140 120 100 80 60 40 20 0 Yknown BIANT 3SPLU 221 223,5 226 Hop Count - y 1 228,5 231 233,5 236 Hop Count - y 1 Figure 4: MOA, 3SPLU Pareto Front and Yknown. Figure 5: BIANT, 3SPLU Pareto Front and Yknown. Analyzing the Table 7 we note that considering M1*, MOA obtained the best result for MOACOs, while for CHs, 3SPLU and 3SPRR obtained good results. For the metric M2 the table shows that MOA outperforms all other algorithms with CHs performing the worst. For metric M3, COMP obtained the best value while CHs obtained the worst performance. Finally, for metric M4* 3SPLU obtained the best result. Analyzing Table 8, it is notable that considering M1*, 3SPSLU obtained the best result for CHs and BIANT is the best MOACO algorithm. For metric M2 the table shows that BIANT is the only algorithm with the optimal value. Note that the worst result for MOACOs is almost twice as good as the best value obtained for the classical heuristics. For metric M3, BIANT again obtained the best value. Note that like with metric M1, here the worst result for MOACOs is almost twice as good as the best value obtained for the CHs. Finally, for metric M4*, 3SPLU obtained the best result for the CHs, while MOACO algorithms have a bad performance compared to CHs. Notice that the classical heuristics SPFF, SPLU, SPMU, SPRR have not been included in the analysis, because they had two requests blocked. In summary, Table 7 shows that MOA obtained the best performance considering the ranking column of all algorithms. Figure 4 shows the Pareto Front of the best MOACOs and CHs algorithms compared to Yknown. It can be seen that MOACOs have a very good performance in quality, distribution and extension while CHs may be considered better in error M4. 8.4 Results for Unicast Group 4 Table 8 presents experimental results obtained for the unicast group 4 (see Table 4). Table 8: Unicast Group 4 – Experimental Results Algorithms BIANT COMP MOAQ MOACS M3AS MAS PACO MOA 3SPFF 3SPLU 3SPMU 3SPRR SPFF SPLU SPMU SPRR NB 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 4 Performances Metrics M1* M2 M3 M4* 0,64 1,00 1,00 0,00 0,46 0,82 0,91 0,00 0,37 0,70 0,92 0,00 0,61 0,93 0,89 0,00 0,52 0,88 0,88 0,00 0,60 0,93 0,97 0,00 0,55 0,82 0,84 0,00 0,60 0,87 0,88 0,00 0,30 0,41 0,30 0,00 0,86 0,38 0,26 0,13 0,00 0,32 0,24 0,00 0,81 0,31 0,24 0,08 R40 0,66 0,55 0,50 0,61 0,57 0,62 0,55 0,59 0,25 0,41 0,14 0,36 Notice that SPFF, SPLU, SPMU and SPRR have not been included in the analysis, because they had four requests blocked. In short, Table 8 shows that BIANT obtained a best performance considering the ranking column of all algorithms. Figure 5 shows the Pareto Front of the best MOACOs and CHs algorithms compared to Yknown, where it can be seen that the MOACOs have a very good performance in distribution, extension while CHs are good in quality and error of the Pareto front. 8.5 General Average Table 9 presents general averages of the comparison metrics already defined, considering all performed experiments. Table 9: General Averages of comparison metrics Algorithms BIANT COMP MOAQ MOACS M3AS MAS PACO MOA 3SPFF 3SPLU 3SPMU 3SPRR SPFF SPLU SPMU SPRR NB 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 2,00 2,00 2,00 2,00 Performances Metrics M1* M2 M3 M4* 0,80 0,76 0,60 0,23 0,69 0,87 0,80 0,08 0,62 0,83 0,95 0,08 0,78 0,71 0,66 0,20 0,77 0,64 0,56 0,25 0,74 0,74 0,69 0,18 0,77 0,67 0,62 0,23 0,80 0,70 0,65 0,25 0,07 0,13 0,13 0,00 0,66 0,13 0,12 0,49 0,04 0,14 0,12 0,00 0,64 0,14 0,13 0,30 0,00 0,00 0,00 0,00 0,25 0,00 0,00 0,25 0,01 0,00 0,00 0,00 0,25 0,00 0,00 0,25 RT 0,60 0,61 0,62 0,59 0,55 0,59 0,57 0,60 0,08 0,35 0,07 0,30 0,00 0,13 0,00 0,13 In metrics M1*, M2 and M3 MOACOs presented in average have a better performance than the CHs. However, considering the error metric M4* the CHs presented a slightly better performance in average, where the 3SPLU gets the best average performance in this metric. It is interesting to note that all MOACOs outperform in average all classical heuristics, indicating an encouraging potential for future studies. Finally it should be mentioned that considering all implemented algorithms, on average, MOAQ is the best one according to the presented experimental results. 9. CONCLUSIONS This paper implemented several MOACOs algorithms to solve the Routing and Wavelength Assignment problem, optimizing simultaneously two objective functions, (1) the hop count and, (2) the number of wavelengths conversion. These algorithms calculate a whole set of optimal Pareto solutions in one run. This last feature is especially important since the decision maker can choose from the most adequate solution set for each particular case, without a priori restrictions that could eliminate good compromise solutions. To validate the proposed MOACO approaches, existing classical heuristics were also implemented for comparison reasons. After an extensive simulation testing partially presented in this work, rankings considering four different performance metrics were calculated to develop a global vision of the relative strength of each approach considering a good number experimental results presented above. Considering the rankings for each metric and several figures for each calculated Pareto set, partial conclusions have been presented. Finally, the conclusion that MOACOs outperformed in general classical heuristics was observed. In fact, experimental results were presented where MOACOs presented very good solutions in terms of quality, distribution and extension, metric M1*, M2, M3* respectively but in terms of error M4*, in general, the CHs obtain a better performance, i.e., CHs may be good in finding a small number of good solutions, but are not able to find a good approximation of the whole Pareto front when compared to the MOACO algorithms. Considering the above explanation, it is clear that MOACOs and CHs may be considered as complementary approaches, where MOACOs have a high exploration capacity, while the CHs have a high concentration in a small search space area. As future work, the authors plan to test a combination of these algorithms in a new approach using the main strengths of each approach in what is known as Team Algorithm. Also, they intend to extend testing over larger network topologies, considering new objective function and using other multiobjective metrics. 10. REFERENCES [1] A. Hamad and A. Kamal. “A survey of Multicasting Protocols for Broadcast-and-Select Single-Hop Networks”. IEEE Network, 2002. [2] G. Rouskas. “Optical Layer Multicast: Rationale, Building Blocks, and Challenges”. IEEE Network, vol. 17, no. 1, pp. 60-65, 2003. [3] M. Saha and I. Sengupta. “A genetic algorithm based approach for static virtual topology design in optical networks”. IEEE Idicom 2005 Conference, Chennai, India, 11-13 December, 2005. [4] I. Chlamtac, A. Ganz and G. Karni. “Lightpath Communications: An Approach to High Bandwidth Optical WANs”. IEEE Transactions on Communications. Vol. 40, No. 7, pp. 1171-1182, July 1992. [5] B. Mukherjee, D. Banerjee, S. Ramamurthy y A. Mukherjee. “Some Principles for Designing a Wide-Area WDM Optical Network”. IEEE/ACM Transactions on Networking, Vol. 4, No. 5, October 1996. [6] N. Banerjee, V. Metha and S. Pandey. “A Genetic Algorithm Approach for Solving the Routing and Wavelength Assignment Problem in WDM Network”. In 3rd IEEE/IEE International Conference on Networking, ICN 2004, Paris, pp: 70-78, February-March 2004. [7] G. Varela and M. Sinclair. “Ant Colony Optimization for Virtual-Wavelength-Path Routing and Wavelength Allocation”. Proc. Congress on Evolutionary Computation (CEC'99), Washington DC, USA, pp. 1809-1816, July 1999. [8] Dorigo, M., Maniezzo, V., Colorni, A. “The Ant System: Optimization by a colony of cooperating agents”. IEEE Transactions on Systems, Man, and Cybernetics–Part B, Vol. 26, No.1, pp. 1-13, 1996. [9] C. Insfrán., D. Pinto, B. Barán. “Diseño de Topologías Virtuales en Redes Ópticas. Un enfoque basado en Colonia de Hormigas”. XXXII Latin-American Conference on Informatics 2006 – CLEI2006. Santiago de Chile - Chile, August 2006. [10] Choi J. S., Golmie N, Lapeyrere F., Mouveaux F. and Su D., “A Functional Classification of Routing and Wavelength Assignment Schemes in DWDM networks: Static Case”. Journal of Optical Communication and Networks, January 2000. [11] Zang H; JUE J.; Mukherjee B. 2000. “A Review of Routing and Wavelength Assignment Approaches for WavelengthRouted Optical WDM Networks”. Optical Network Magazine, vol. 1, no. 1,pp. 47-60, January 2000. [12] D. A. Van Veldhuizen. “Classifications, Analyses and New Innovations” Ph.D. thesis. Air Force Institute of Technology, 1999. [13] B. Mukherjee, “WDM Optical Networks: Progress and Challenges,” (Invited Paper), IEEE Journal on Selected Areas in Communications, vol. 18, no. 10, pp. 1810-1824, Oct. 2000. [14] M. Dorigo and G. Di Caro. “The Ant Colony Optimization meta-heuristic”. In New Ideas in Optimization. McGraw Hill, London, UK, 1999. [15] T. Stützle and H. Hoos. “Max-Min Ant System”. Future Generation Computer System 16(8): pp. 889-914, June 2000 [16] M. Guntsch and M. Middendorf. “A Population Based Approach for ACO”. In Stefano Cagnoni, Jens Gottlieb, Emma Hart, Martin Middendorf, and Günther Raidl, Applications of Evolutionary Computing, Proceedings of EvoWorkshops2002: EvoCOP, EvoLASP, EvoSTim, Springer-Verlag, vol. 2279, pp. 71-80, Kinsale, Ireland, 2002. [17] Lopez-Ibañez, M., Paquete, L., Stützle, T.,”On the design of ACO for the Biobjective Quadratic Assignment Problem”, In: Dorigo, et al. (Eds.): Proc. of the Fourth International Workshop on Ant Colony Optimization (ANTS 2004), Lecture Notes in Computer Science, Springer Verlag. [18] Mariano, C., Morales, E., “A Multiple Objective Ant-Q Algorithm for the Design of Water Distribution Irrigation Networks”, Technical Report HC-9904, Instituto Mexicano de Tecnología del Agua, Mexico, June 1999. [19] Iredi, S., Merkle, D., Middendorf, M., “Bi-Criterion Optimization with MultiColony Ant Algorithms”, Proc. First International Conference on Evolutionary Multi-criterion Optimization (EMO’01), Lecture Notes in Computer Science 1993, 359-372. [20] Doerner, K., Gutjahr, W., Hartl, R., Strauss, C., “Pareto Ant Colony Optimization: A Metaheuristic Approach to Multiobjective Portfolio Selection”, Proceedings of the 4th. Metaheuristics International Conference. Porto, 243-248, 2002. [21] Barán, B., Schaerer, M., “A multiobjective Ant Colony System for Vehicle Routing Problems with Time Windows” Proc. Twenty first IASTED International Conference on Applied Informatics, Insbruck, Austria, pp. 97-102, 2003,. [22] Pinto, D., Barán, B., “Solving Multiobjective Multicast Routing Problem with a new Ant Colony Optimization approach”. LANC’05, Cali, Colombia. [23] Stützle, T., Hoos, H., “Max-Min Ant System, Future Generation Computer Systems”, 16:8, 889-914, 2000. [24] Doerner, K., Hartl, R., Reimann, M., (2003), “Are COMPETants more competent for problem solving? – the case of a multiple objective transportation problem”, Central European Journal of Operations Research, 11:2, 115-141. [25] Gardel, P., Barán, B., Estigarribia, H., Fernández, U., “Aplicación del Ómicron ACO al problema de compensación de potencia reactiva en un contexto multiobjetivo”, Congreso Argentino de Ciencias de la Computación - CACIC’2005. Concordia – Argentina. [26] Gómez, O., Barán, B., “Omicron ACO”, Proceedings of CLEI’2004. Latin-American Conference on Informatics (CLEI). Arequipa. Perú. [27] Paciello J., Martínez H., Lezcano C. and Barán B., ”Algoritmos de Optimización multi-objetivos basados en colonias de hormigas”. Proceedings of CLEI’06. LatinAmerican Conference on Informatics (CLEI). Santiago, Chile. 2006. [28] Dorigo, M., Maniezzo, V., Colorni, A., (1996), “The Ant System: Optimization by a colony of cooperating agents”, IEEE Transactions on Systems, Man, and Cybernetics - Part B, 26, 1, 29-41. [29] H. Zang, R. Huang, and J. Pan, “Methodologies on designing a hybrid shared-mesh protected WDM network with sparse wavelength conversion and regeneration Proc. of APOC 2002, Shanghai, China, pp. 188–196, 14–18 Oct. 2002. [30] T. Li and B. Wang, “Cost effective shared path protection for WDM optical mesh networks with partial wavelength conversion,” Photonic Network Communications, vol. 8, no. 3, pp. 251–266, Nov. 2004. [31] S. Xu, L. Li, and S. Wang, “Dynamic routing and assignment of wavelength algorithms in multifiber wavelength division multiplexing networks,” IEEE Journal on Selected Areas in Communications, vol. 18, no. 10, pp. 2130–2137, Oct. 2000. [32] J. Crichigno and B. Barán. “Multiobjective Multicast Routing Algorithm for Traffic Engineering”. IEEE International Conference on Computer and Communications ICCCN’2004, Chicago, US, 2004. [33] Zitzler, E., Deb, K., Thiele, L., “Comparison of multiobjective evolutionary algorithms. Empirical result, evolutionary computation”. 8, 2, pp 173-195, 2000.