Graduate School of Information, Production and Systems, Waseda University 6. Basic Network Design.

165
Graduate School of Information, Production and Systems, Waseda University 6. Basic Network Design

Transcript of Graduate School of Information, Production and Systems, Waseda University 6. Basic Network Design.

  • 6. Basic Network Design

  • 6. Basic Network DesignGenetic Algorithms (GAs) are one of the most powerful and broadly applicable stochastic search and optimization techniques based on principles from evolution theory (Holland, 1976):Michalewicz, Z. : Genetic Algorithm + Data Structure = Evolution Programs, 2nd ed., Springer-Verlag, New York, 1994Gen, M. & R. Cheng: Genetic Algorithms & Engineering Design, John Wiley & Sons, New York, 1997.Recent advances in evolutionary computation have made it possible to solve such practical network optimization problems: Ali, M. & F. Kamoun Neural Networks for Shortest Path Computation and Routing in Computer Networks, IEEE Trans. on Neural Networks, vol.4, pp.941-954, 1993.Perfetti, R. : Optimization Neural Network for Solving Flow Problems, IEEE Trans. on Neural Network, Vol.6, No.5, pp.1287-1291, 1995. Gen, M. & K. Ida: Neural Networks and Optimization with Mathematica, Kyoritsu Shuppan, 1998 in Japanese.Ahn, C. W., R. Ramakrishna, C. Kang & I. Choi: Shortest Path Routing Algorithm using Hopfield Neural Network, Electronic Letter, Vol.37, No.19, pp.1176-1178, 2001.

  • 6. Basic Network DesignIn the past few years, the genetic algorithms community has turned much of its attention toward the optimization of network design problems: Munakata, T. & D. J. Hashier: A genetic algorithm applied to the maximum flow problem, Proc. of the 5th Inter. Conf. on Genetic Algorithms, San Francisco, pp.488-493, 1993.Gen, M. & R. Cheng: Genetic Algorithms and Engineering Design, John Wiley & Sons, New York, 1997.Munetomo, M., Y. Takai & Y. Sato: A migration Scheme for the Genetic Adaptive routing Algorithm, Proc. of IEEE Int. Conf. Systems, Man, and Cybernetics, pp.2774-2779, 1998.Inagaki, J., M. Haseyama & H. Kitajima: A Genetic Algorithm for Determining Multiple Routes and Its Applications, Proc. of IEEE Int. Symp. Circuits and Systems, pp.137-140, 1999.Gen, M. & R. Cheng: Genetic Algorithms and Engineering Optimization, John Wiley & Sons, New York, 2000. Gen, M., R. Cheng & S.S. Oren: "Network design techniques using adapted genetic algorithms", Advances in Engineering Software, Vol.32, pp.731-744, 2001.Ahn, C.W. & R. Ramakrishna: A Genetic Algorithm for Shortest Path Routing Problem and the Sizing of Populations, IEEE Trans. on Evol. Comput., Vol.6, No.6, pp.566-579, 2002.Zhou, G. & M. Gen: A Genetic Algorithm Approach on Tree-like Telecommunication Network Design Problem, J. of Operational Research Society, Vol. 54, No. 3, pp.248-254, 2003.

  • vBNS Backbone Network Maphttp://www.mci.com/index.jspvBNS: very high speed Backbone Network Services

  • vBNS Logical Network Maphttp://www.mci.com/index.jsp

  • 6. Basic Network DesignShortest Path Problem (SPP)

    Maximum Flow (MXF) Problem

    Minimum Cost Flow (MCF) Problem

    Bicriteria Network Design Problem (BNP)

    Multi-criteria Network Design Problem

  • 6. Basic Network DesignShortest Path Problem (SPP)1.1 Basic Concept of Shortest Path Problem1.2 Application of Shortest Path Problem1.3 Methods for solving SPP1.4 Genetic Approach for solving SPP1.4.1 Reviewing Encoding Methods 1.4.2 Priority-based Genetic Algorithm1.4.3 Genetic Operators1.5 Numerical Examples

    2. Maximum Flow (MXF) Problem3. Minimum Cost Flow (MCF) Problem

    4. Bicriteria Network Design Problem (BNP)

    5. Multi-criteria Network Design Problem

  • 1. Shortest Path Problem (SPP)

    SPP is perhaps the simplest of all network design problems. For this problem, the object is to find a path of minimum cost (or length) from a specified source node s to another specified sink node t, assuming that each arc (i, j)A has an associated cost (or length) cij. Data table of example networkijcij1.1 Basic Concept of Shortest Path Problem

    ijcij12361327241832133512362347114832541667126938782089158102491013

  • 1. Shortest Path Problem (SPP)1.1 Basic Concept of Shortest Path ProblemDirected graph G=(V, A)where V is a set of nodes, A is a set of links.cij is a cost associated with each arc(i, j)Source node: node 1Destination node: node nIndicator variable:

    Data table of example networkijcij

    ijcij12361327241832133512362347114832541667126938782089158102491013

  • 1. Shortest Path Problem (SPP)1.1 Basic Concept of Shortest Path Problem

    SPP can be formulated as follows:

  • 1. Shortest Path Problem (SPP) 1.2 Application of Shortest Path Problem

    This basic model can be applied in many applications such as:

    Evans, J. R. and E. Minieka: Optimization Algorithms for Networks and Graphs. New York: Marcel-Dkker, 1992.

    Transportation PlanningHow to determine the route road that have prohibitive weight restriction so that the driver can reach the destination within the shortest possible time.

    Salesperson RoutingSuppose that a sales person want to go to Los Angeles from Boston and stop over in several city to get some commission. How can she determine the route?

    Investment PlanningHow to determine the invest strategy to get an optimal investment plan.

    Message routing in communication systemsThe Routing algorithm computes the shortest (least cost) path between the router and all the networks of the internetwork. It is one of the most important issues that has a significant impact on the networks performance.

  • 1. Shortest Path Problem (SPP)1.2 Application of Shortest Path Problem

    With the growth of the Internet, Internet Service Providers (ISPs) try to meet the increasing traffic demand with new technology and improved utilization of existing resources. Routing of data packets can affect network utilization.Packets are sent along network paths from source to destination following a protocol. Open Shortest Path First (OSPF) is the most commonly used protocol. Ericsson, M., M.G.C. Resende & P.M. Pardalos: A Genetic Algorithm for the Weight Setting Problem in OSPF Routing, J. of Combinatorial Optimization, No.6, pp.299333, 2002.OSPF is designed for exchanging routing information within a large or very large internetwork.The biggest advantage of OSPF is that it is efficient. OSPF requires very little network overhead even in very large internetworks. The biggest disadvantage of OSPF is its complexity.OSPF requires proper planning and is more difficult to configure and administer.

  • 1. Shortest Path Problem (SPP)1.2 Application of Shortest Path Problem

    OSPF uses a Shortest Path Routing (SPR) algorithm to compute routes in the routing table. The SPR algorithm computes the shortest (least cost) path between the router and all the networks of the internetwork. As the size of the link state database increases:Memory requirements and route computation times increase.Genetic Algorithm (GA) approaches to the SPR problem in OSPF.Ahn, C.W. & R. Ramakrishna: A Genetic Algorithm for Shortest Path Routing Problem and the Sizing of Populations, IEEE Trans. on Evol. Comput., Vol.6, No.6, pp.566-579, 2002.Lin, L., M. Gen & R. Cheng: Priority-based Genetic Algorithm for Shortest Path Routing Problem in OSPF, Proc. of 3rd Inter. Conf. on Information and Management Sciences, Dunhuang, China, June 5-10, 2004. The objective of this research considers the quality of solution (path optimality) within the shortest route computation times.

  • 1. Shortest Path Problem (SPP)1.3 Methods for Solving SPPDijkstra Shortest Path AlgorithmDijkstra, E. W.: "A Note on Two Problems in Connection with Graphs", Numerische Math., No.1, pp.269-271, 1959.Dijkstra's algorithm can be implemented efficiently by storing the graph in the form of adjacency lists and using a heap as priority queue to implement the Extract-Min function.Computes shortest paths in a graph with non-negative edge weights.Bellman-Ford AlgorithmBellman-Ford algorithm computes single-source shortest paths in a weighted graph (where some of the edge weights may be negative). Bellman-Ford is usually used only when there are negative edge weights.Floyd-Warshall AlgorithmFloyd-Warshall algorithm is an algorithm to solve the all pairs shortest path problem in a weighted, directed graph by multiplying an adjacency-matrix representation of the graph multiple times.

  • 1. Shortest Path Problem (SPP)1.4 Genetic Approach for Solving SPPHow to encode a path in a network is critical for designing a GA.Special difficulties:a path contains variable number of nodes.a random sequence of edges usually does not correspond to a path.Path 1124810Objective function valuez=110

    Path 21247810Objective function valuez=109

    Path 313547810Objective function valuez=110

  • 1. Shortest Path Problem (SPP)1.4.1 Reviewing Encoding Methods

    How to encode a solution of the problem into a chromosome is a key issue for GAs. For the nonstring coding approach, three critical issues emerged concerning with the encoding and decoding between chromosomes and solutions:The feasibility of a chromosomeFeasibility refers to the phenomenon of whether a solution decoded from a chromosome lies in the feasible region of a given problem. The legality of a chromosomeLegality refers to the phenomenon of whether a chromosome represents a solution to a given problem. The illegality of chromosomes originates from the nature of encoding techniques. Repairing techniques are usually adopted to convert an illegal chromosome to a legal one. The uniqueness of mappingThe mapping from chromosomes to solutions (decoding) may belong to one of the following three cases: (a) 1-to-1 mapping; (b) n-to-1 mapping; (c) 1-to-n mapping. The 1-to-1 mapping is the best one among three casesAnd 1-to-n mapping is the most undesired one.

  • 1.4.1 Reviewing Encoding Methods a. Priority-based Chromosome (Cheng & Gen, 1997)Cheng & Gen proposed a priority-based encoding method for solving resource-constrained project scheduling problem (rcPSP) first. And also adopted this method for solving SPP in 1997. Cheng, R. & M. Gen: Resource Constrained Project Scheduling Problem using Genetic Algorithm, Inter. J. of Intelligent Auto. and Soft Comput., Vol.3, pp.273-286, 1997.Gen, M., R. Cheng & D. Wang: Genetic Algorithms for Solving Shortest Path Problems, Proc. of IEEE Int. Conf. on Evol. Comput., Indianapolis, Indiana, pp.401-406, 1997.They adopted an indirect approach: The path is generated by sequential node appending procedure with beginning from the specified node 1 and terminating at the specified node n. At each step, there are usually several nodes available for consideration. They gave each node a priority with a random mechanism and add the one with the highest priority into path. As we know, a gene in a chromosome is characterized by two factors:locus, i.e., the position of gene located within the structure of chromosome, allele, i.e., the value which the gene takes. In the priority-based encoding method, the position of a gene is used to represent node ID and its value is used to represent the priority of the node for constructing a path among candidates. A path can be uniquely determined from this encoding.

  • 1.4.1 Reviewing Encoding Methodsa. Priority-based Chromosome (Cheng & Gen, 1997)

    Example: An example of generated chromosome and its decoded path as follows:

    Advantage: Any permutation of the encoding corresponds to a path (legality).Most existing genetic operators can be easily applied to the encoding. Any path has a corresponding encoding (completeness); any point in solution space is accessible for genetic search. Disadvantage: At some case, n-to-1 mapping may occur for the encoding. 14367st25111437path :

    node ID :1234567priority :2164537

  • 1.4.1 Reviewing Encoding Methodsb. Variable-length Chromosome (Munemoto et al., 1998)

    Munemoto et. al. (1998) proposed a variable-length encoding method for network routing problems in a wired or wireless environment. Ahn et. al. (2002) also used the encoding method for solving the shortest path routing (SPR) problem. Munetomo, M., Y. Takai & Y. Sato: A migration Scheme for the Genetic Adaptive routing Algorithm, Proc. of IEEE Int. Conf. Systems, Man, and Cybernetics, pp.2774-2779, 1998.Ahn, C.W. & R. Ramakrishna: A Genetic Algorithm for Shortest Path Routing Problem and the Sizing of Populations, IEEE Trans. on Evol. Comput., Vol.6, No.6, pp.566-579, 2002.

    The proposed encoding method consists of sequences of positive integers that represent the IDs of nodes through which a path passes. Each locus of the chromosome represents an order of a node (indicated by the gene of the locus) in a path. The length of the chromosome is variable, but is should not exceed the maximum length n, where n is the total number of nodes in the network, since it never needs more than n number of nodes to form a path. The gene of the first locus encodes the source node, and the gene of second locus is randomly or heuristically selected from the nodes connected with the source node.

  • 1.4.1 Reviewing Encoding Methodsb. Variable-length Chromosome (Munemoto et al., 1998)

    Example: An example of generated chromosome and its decoded path as follows:

    Advantage: The mapping from any chromosome to solution (decoding) belongs to 1-to-1 mapping (uniqueness).Theoretically, convergence performance is better than the priority-based encoding method. Disadvantage: In general, the genetic operators may generate infeasible chromosomes (illegality) that violate the constraints, generating loops in the paths. Repairing techniques are usually adopted to convert an illegal chromosome to a legal one. 14367st25111437path :

    locus :1234node ID :1347

  • 1.4.1 Reviewing Encoding Methodsc. Fixed-length Chromosome (Inagaki et al., 1999)

    Inagaki et al. (1999) proposed a fixed-length encoding method determining multiple routes in routing applications. Inagaki, J., M. Haseyama & H. Kitajima: A Genetic Algorithm for Determining Multiple Routes and Its Applications, Proc. of IEEE Int. Symp. Circuits and Systems, pp.137-140, 1999.The proposed method are sequences of integers and each gene represents the node ID through which it passes. To encode a route from node 1 to node n, put i in the jth locus of the chromosome. This process is reiterated from the specified node 1 and terminating at the specified node n. If the route does not pass through a node x, select one node randomly from the set of nodes which are connected with node x, and put it in the xth locus.

  • 1.4.1 Reviewing Encoding Methodsc. Fixed-length Chromosome (Inagaki et al., 1999)

    Example: An example of generated chromosome and its decoded path as follows:

    Advantage: Any path has a corresponding encoding (completeness).Any point in solution space is accessible for genetic search. Any permutation of the encoding corresponds to a path (legality) using the special genetic operators. Disadvantage: At some case, n-to-1 mapping may occur for the encoding. Furthermore the probability of occurrence of n-to-1 mapping is higher than the priority-based encoding method. In the special genetic operator phase, some offspring may generate new chromosomes that resemble the initial chromosomes in fitness, thereby retarding the process of evolution. 14367st25111437path :

    locus :1234567node ID :3147246

  • 1.4.1 Reviewing Encoding MethodsCompared with the Performance of Different Encoding Methods:Variable-length encoding method Convergence performance is best than others. However, the genetic operators may generate infeasible chromosomes (illegality).Repairing techniques have to be adopted to convert an illegal chromosome to a legal one. For the computation times, variable-length encoding method may be slow in several large network design problems. Fixed-length encoding methodn-to-1 mapping may occur for the encoding.The special genetic operators have to been adopted; thereby some offspring may generate new chromosomes that resemble the initial chromosomes in fitness.

  • 1.4.2 Priority-based Genetic Algorithmprocedure 1: Priority-based Encodinginput: number of nodes noutput: chromosome vkbegin for j=1 to n// step 0vk(j) j; for i=1 to // step 1repeat jrandom[1, n]; lrandom[1, n];until lj swap (vk(j), vk(l)); output the chromosome vk;// step 2end Priority-based Encoding Method

  • 1.4.2 Priority-based Genetic Algorithmprocedure 2: One Path Growthinput: number of nodes n, chromosome vk , the set of nodes Si with all nodes adjacent to node i.output: path Pkbegin initial source node i1, Pk ;// step 0 while Si do// step 1 select l from Si with the highest priority; if vk(l)0 then vk(l)=0; Pk Pk{xil}; il; else Si Si \{l} end output the complete path Pk ;// step 2end Decoding Method

  • 1.4.2 Priority-based Genetic AlgorithmIllustration of Priority-based GAData table of example networkPath:1367810

    Objective function value z=106Chromosome:11

    ijcij12361327241832133512362347114832541667126938782089158102491013

  • 1.4.3 Genetic Operators --- CrossoverIt operates on two parents (chromosomes) at a time and generates offspring by combining both chromosomes features. In network design problem, crossover plays the role of exchanging each partial route of two chosen parents in such a manner that the offspring produced by the crossover represents. In this study, the nature of the priority-based encoding is a kind of permutation representation. Generally, this representation will yield illegal offspring by one-point crossover or other simple crossover operators. During the past decade, several crossover operators have been proposed for permutation representation, such as:Partial-mapped crossover (PMX)Goldberg, D. & R. Lingle, Alleles: loci and the traveling salesman problem, Proc. of the 1st Inter. Conf. on GA, pp.154-159, 1985.Order crossover (OX):Davis, L. : Applying adaptive algorithms to domains, Proc. of the Inter. Joint Conf. on Artificial Intelligence, pp.1162-164, 1985.Position-based crossover (PX)Davis, L. : Applying adaptive algorithms to domains, Proc. of the Inter. Joint Conf. on Artificial Intelligence, pp.1162-164, 1985.Cycle crossover (CX)Oliver, I. & J. Holland: A study of permutation crossover operators on the traveling salesman problem, Euro. J. of OR, vol.26, pp.187-210, 1986.Heuristic crossover, and so on.

  • 1.4.3 Genetic Operators --- CrossoverPartial-Mapped Crossover (PMX)PMX was proposed by Goldberg and Lingle. Goldberg, D. & R. Lingle, Alleles: loci and the traveling salesman problem, Proc. of the 1st Inter. Conf. on GA, pp.154-159, 1985.PMX can be viewed as an extension of two-point crossover for binary string to permutation representation. It uses a special repairing procedure to resolve the illegitimacy caused by the simple two-point crossover. step 1 : select the substring at randomstep 2 : exchange substrings betweenstep 3 : determine mapping relationshipstep 4 : legalize offspring with mapping relationshipsubstring selected

    parent 1:17234658

    parent 2:46357182

    parent 1:17357658

    parent 2:46234182

    234

    357

    offspring 1:14357628

    offspring 2:76234185

  • 1.4.3 Genetic Operators --- CrossoverOrder Crossover (OX) OX was proposed by Davis.Davis, L. : Applying adaptive algorithms to domains, Proc. of the Inter. Joint Conf. on Artificial Intelligence, pp.1162-164, 1985.It can be viewed as a kind of variation of PMX with a different repairing procedure. substring selectedFig. 6.1 Illustration of the OX operator.

    parent 1:17234658

    parent 2:46357182

    offspring:65234718

  • 1.4.3 Genetic Operators --- CrossoverPosition-based Crossover (PX)PX was proposed by Syswerda.Davis, L. : Applying adaptive algorithms to domains, Proc. of the Inter. Joint Conf. on Artificial Intelligence, pp.1162-164, 1985.It is essentially a kind of uniform crossover for permutation representation together with a repairing procedure. It also can be viewed as a kind of variation of OX in which the nodes are selected inconsecutively.Fig. 6.2 Illustration of the PX operator.

    parent 1:17234658

    parent 2:46357182

    offspring:37514628

  • 1.4.3 Genetic Operators --- CrossoverHowever, in all of above approaches:the mechanism of the crossover is not the same as that of the conventional one-point crossover. Some offspring may generate new chromosomes that are not possible to succeed the character of the parents.thereby retarding the process of evolution.

    We proposed a new crossover operator, Weight Mapping Crossover (WMX).WMX can be viewed as an extension of one-point crossover for permutation representation. As one-point crossover:Two chromosomes (parents) would be to choose a random cut-point.Generate the offspring by using segment of own parent to the left of the one-cut pointThen remapping the right segment that base on the weight of other parent of right segment .

  • 1.4.3 Genetic Operators --- CrossoverWeight Mapping Crossover (WMX)

  • 1.4.3 Genetic Operators --- CrossoverWeight Mapping Crossover (WMX)As shown Fig., first we choose a random cut-point p.calculate l that is the length of right segments of chromosomes, where n is number of nodes in the network. Then get mapping relationship by sorting the weight of the right segments s1[] and s2[]. As one-point crossover, generate the offspring v1, v2 by exchange substrings between parents v1, v2; legalize offspring with mapping relationship. 6354712parent 1 :4156273parent 2 :cut-point4156356535415146273offspring 2 :5364712offspring 1 :step 1: select a cut-pointstep 2: mapping the weight of the right segmentstep 3: generate offspring with mapping relationship1437parent 1 :1427parent 2 :offspring 1 :1427offspring 2 :514375

  • 1.4.3 Genetic Operators --- MutationIt is relatively easy to produce some mutation operators for permutation representation. During the past decade, several mutation operators have been proposed for permutation representation, such as:InversionInsertionDisplacementSwap mutation.Insertion MutationSelects a gene at random and inserts it in a random position as follows:

  • 1.4.3 Genetic Operators --- ImmigrationThe trade-off between exploration and exploitation in serial GAs for function optimization is a fundamental issue. If a GA is biased towards exploitation:highly fit members are repeatedly selected for recombination. Although this quickly promotes better members, the population can prematurely converge to a local optimum of the function. If a GA is biased towards exploration:Large numbers of schemata are sampled which tends to inhibit premature convergence. Unfortunately, excessive exploration results in a large number of function evaluations, and defaults to random search in the worst case.

  • 1.4.3 Genetic Operators --- ImmigrationTo search effectively and efficiently, a GA must maintain a balance between these two opposing forces. Michael, C.M., C.V. Stewart & R.B. Kelly: Reducing the Search Time of A Steady State Genetic Algorithm using the Immigration Operator, Proc. of IEEE Int. Conf. on Tools for AI San Jose, CA, pp.500-501, 1991.Michael et. al. (1991) proposed an immigration operator which, for certain types of functions, allows increased exploration while maintaining nearly the same level of exploitation for the given population size. Immigration operator step 1: The algorithm is modified to include immigration, with each generation generated.step 2: Evaluate random members (, called the immigration rate).step 3: Replace the worst members of the population with the random members. This study experimentally examines the immigration operator, and present the effectiveness of this approach for solving network design problems in next section.

  • 1.4.3 Genetic Operators --- SelectionSelection operators: two basic types of selection scheme used commonly in current practice.Proportionate selection: picks out chromosomes based on their fitness values relative to the fitness of the other chromosomes in the population. Roulette wheel selectionStochastic remainder selectionStochastic universal selectionOrdinal-based selection: upon their rank within the population. The chromosomes are ranked according to their fitness values.Tournament selection selectionTruncation selectionLinear ranking selectionIn this study, the roulette wheel selection, a type of Proportionate selection, is adopted.

  • 1.4.4 Overall ProcedureGA Procedure for Shortest Path Problemprocedure: Priority-based GA for Shortest Path Probleminput: network data (V, A, C), GA parametersoutput: best shortest pathbegint 0;initialize P(t) by priority-based encoding;fitness eval(P);while (not termination condition) docrossover P(t) to yield C(t) by weight mapping crossover;mutation P(t) to yield C(t) by insertion mutation; immigration operation to yield C(t) fitness eval(C); select P(t+1) from P(t) and C(t) by roulette wheel selection;t t + 1;endoutput best shortest path;end

  • 1.5 Numerical ExamplesTest Problems:For examining the effect of different encoding methods, we applied Ahn et als method and priority-based encoding method to the 6 test problems:Ahn, C.W. & R. Ramakrishna: A Genetic Algorithm for Shortest Path Routing Problem and the Sizing of Populations. IEEE Trans. Evol. Comput., Vol.6, No.6, pp.566-579, 2002.OR-Notes. [Online]. Available: http://mscmga.ms.ic.ac.uk/jeb/or/orweb.htmlUsing the following parameter specifications. Population size: popSize =20Crossover probability:pC =0.70Mutation probability:pM =0.50Immigration rate:=3Maximum generation:maxGen =1000Terminating condition: 100 generations with same fitness.Each solution is compared with Dijkstras algorithm that provides a reference point (optimal solution). Each algorithm was applied to each test problem 20 times (i.e., 20 runs) using different initial populations.All the simulations were performed with Java on Pentium 4 processor (1.5-GHz clock).

  • 1.5 Numerical ExamplesThe first numerical example, presented by Ahn et als was adopted. The problem comprises 20 nodes and 49 arcs. It is given as follows:(Ahn, C.W. & R. Ramakrishna: A Genetic Algorithm for Shortest Path Routing Problem and the Sizing of Populations, IEEE Trans. on Evol. Comput., Vol.6, No.6, pp.566-579, 2002.)Fig.6.3 Example of the first numerical example

  • 1.5 Numerical ExamplesConvergence property of each algorithm for a Fixed Network With 20 Nodes(Ahn, C.W. & R. Ramakrishna: A Genetic Algorithm for Shortest Path Routing Problem and the Sizing of Populations, IEEE Trans. on Evol. Comput., Vol.6, No.6, pp.566-579, 2002.)Dijkstras AlgorithmMunemotos AlgorithmInagakis AlgorithmAhns Algorithm2.52.01.51.00.50246810GenerationsObjective Function Values

  • 1.5 Numerical ExamplesConvergence property of Ahn et al.s algorithm and proposed algorithm for a Fixed Network With 20 NodesFig. 6.4 Convergence property of Ahn et al.s algorithm and proposed algorithm. et al.

  • 1.5 Numerical ExamplesComparison with results(Ahn, C.W. & R. Ramakrishna: A Genetic Algorithm for Shortest Path Routing Problem and the Sizing of Populations, IEEE Trans. on Evol. Comput., Vol.6, No.6, pp.566-579, 2002.)Inagakis AlgorithmMunemotos AlgorithmAhns Algorithm1520253035404550120010008006004002000The Number of NodesObjective Function Value

  • 1.5 Numerical ExamplesDiscussion of the Results:

    The quality of solution with different genetic operators is investigated in Table 1.The path optimality is defined in all test problems, by Alg.6 (WMX+Insertion+ Immigration) that the GA finds the global optimum (i.e., the shortest path). The path optimality is defined in #1, #2 test problems, by Alg.5 (WMX+Swap+ Immigration), The near optimal result is defined in other test problems.By Alg.1 ~ Alg.4, the path optimality is not defined. Since the number of possible alternatives become to very large in test problems, the population be prematurely converged to a local optimum of the function.

    Table 6.1 Performance comparisons with different genetic operators

    Test Problems(# of nodes/ # of arcs)Optimal SolutionsBest SolutionsAlg. 1Alg. 2Alg. 3Alg. 4Alg. 5Alg. 620/49142.00148.35148.53147.70143.93142.00142.0080/120389.00423.53425.33418.82396.52389.00389.0080/632291.00320.06311.04320.15297.21291.62291.00160/2544284.00429.55454.98480.19382.48284.69284.00320/1845394.00754.94786.08906.18629.81395.01394.00320/10208288.00794.26732.72819.85552.71331.09288.00 Alg. 1: FMX+Swap; Alg. 2: OX+Swap; Alg. 3: PX+Swap; Alg. 4: WMX+Swap; Alg. 5: WMX+Swap+Immigration(3); Alg. 6: WMX+Insertion+Immigration(3).

  • 1.5 Numerical ExamplesComparison results of Ahns algorithm and Proposed algorithmTable 6.2 Performance comparisons with Ahns algorithm and Proposed algorithm.

    Test Problems(# of nodes/ # of arcs)Optimal SolutionsBest SolutionsCPU Times (ms)Generation Num. of Obtained best resultAhns Alg.Prop. Alg.Ahns Alg.Prop. Alg.Ahns Alg.Prop. Alg.20/49142.00142.00142.0040.6023.372980/120389.00389.00389.00118.5096.804480/632291.00291.00291.00109.50118.501910160/2544284.00286.20284.00336.20490.503126320/1845394.00403.40394.00779.801062.504411320/10208288.00288.90288.001028.301498.503826

  • 1.5 Numerical ExamplesDifferent Parameter Settings:

    Table 6.3 Performance comparisons with different parameter settings

    Parameter Settings( popSize / pC : pM )Test Problems(# of nodes/ # of arcs)Optimal SolutionsBest SolutionsCPU Times ( ms )Generation Num. of Obtained best resultAhns Alg.Prop. Alg.Ahns Alg.Prop. Alg.Ahns Alg.Prop. Alg.10 / 0.3 : 0.120/49142.00156.20142.0010.428.37382780/120389.00389.00389.0032.8031.105180/632291.00313.20291.0029.4034.404316160/2544284.00320.90284.2067.10106.304837320/1845394.00478.70394.00120.30250.206818320/10208288.00444.00288.30126.40400.20255920 / 0.3 : 0.120/49142.00145.23142.0022.3613.34272480/120389.00389.00389.0056.3051.504180/632291.00303.10291.0050.1056.301810160/2544284.00298.70284.20122.10181.204435320/1845394.00465.70394.00213.90496.703217320/10208288.00373.10288.60311.00631.10613520 / 0.7 : 0.520/49142.00142.00142.0040.6023.376980/120389.00389.00389.00118.5096.801180/632291.00291.00291.00109.50118.501910160/2544284.00286.20284.00336.20490.503126320/1845394.00403.40394.00779.801062.504411320/10208288.00288.90288.001028.301498.503826

  • 1.5 Numerical ExamplesDifferent Parameter Settings with Ahns algorithm and Proposed algorithm

    Parameter Settings( popSize / pC : pM )Probability of obtaining the optimal solutionsAhns Alg.Proposed Alg. 10 / 0.3 : 0.116.67% 66.67% 20 / 0.3 : 0.116.67% 66.67% 30 / 0.3 : 0.133.33% 83.33% 50 / 0.3 : 0.150.00%100.00%100 / 0.3 : 0.133.33%100.00% 10 / 0.7 : 0.533.33% 83.33% 20 / 0.7 : 0.550.00%100.00% 30 / 0.7 : 0.550.00%100.00% 50 / 0.7 : 0.583.33%100.00%100 / 0.7 : 0.583.33%100.00%

  • 1.5 Numerical ExamplesSimulation (# of nodes: 100, # of arcs: 859)

  • 6. Basic Network DesignShortest Path Problem (SPP)

    Maximum Flow (MXF) Problem2.1 Basic Concept of Maximum Flow Problem2.2 Application of Maximum Flow Problem2.3 Methods for solving MXF Problem2.4 Genetic Approach for solving MXF Problem 2.4.1 Genetic Representation 2.4.2 Genetic Operators2.5 Numerical Examples

    Minimum Cost Flow (MCF) Problem

    Bicriteria Network Design Problem (BNP)

    Multi-criteria Network Design Problem

  • 2. Maximum Flow (MXF) Problem

    [Online]. Available: http://www-b2.is.tokushima-u.ac.jp/ ~ikeda/suuri/maxflow/Maxflow.shtml.en MXF is in a sense a complementary model to SPP. MXF seeks a feasible solution that sends the maximum amount of flow from a specified source node s to another specified sink node t. If we interpret uij as the maximum flow rate of arc (i, j), MXF identifies the maximum steady-state flow that the network can send from node s to node t per unit time. Data table of example network2.1 Basic Concept of Maximum Flow Problem

    ijuij 1 260 1 360 1 460 2 330 2 540 2 630 3 430 3 650 3 730 4 740 5 860 6 520 6 830 6 940 61030 7 620 71040 8 930 81160 91030 91150101150

  • 2. Maximum Flow (MXF) Problem2.1 Basic Concept of Maximum Flow ProblemDirected graph G=(V, A)where V is a set of nodes, A is a set of links.uij is a capacity associated with each link(i, j)Source node: node 1Destination node: node nijuijData table of example network

    ijuij 1 260 1 360 1 460 2 330 2 540 2 630 3 430 3 650 3 730 4 740 5 860 6 520 6 830 6 940 61030 7 620 71040 8 930 81160 91030 91150101150

  • 2. Maximum Flow (MXF) Problem2.1 Basic Concept of Maximum Flow Problem

    MXF problem can be formulated as follows:

  • 2. Maximum Flow (MXF) Problem2.2 Application of Maximum Flow Problem

    This basic MXF model can be applied in many applications such as:

    Ahuj, R. K., T. L. Magnanti & J. B. Orlin: Network Flows. Prentice-Hall, Upper Saddle River, NJ, 1993.

    Scheduling on Uniform Parallel MachinesThe feasible scheduling problem, described in the preceding paragraph, is a fundamental problem in this situation and can be used as a subroutine for more general scheduling problems, such as the maximum lateness problem, the (weighted) minimum completion time problem, and the (weighted) maximum utilization problem.

    Distributed Computing on a Two-Processor ComputerDistributed computing on a two-processor computer concerns assigning different modules (subroutines) of a program to two processors in a way that minimizes the collective costs of interprocessor communication and computation..

    Tanker Scheduling ProblemA steamship company has contracted to deliver perishable goods between several different origin-destination pairs. Since the cargo is perishable, the customers have specified precise dates (i.e., delivery dates) when the shipments must reach their destinations..

  • 2. Maximum Flow (MXF) Problem2.3 Methods for solving MXF ProblemFord-Fulkerson AlgorithmIt works by finding a flow augmenting path in the graph. By adding the flow augmenting path to the flow already established in the graph, the maximum flow will be reached when no more flow augmenting paths can be found in the graph.Maximum Flow Algorithm An incremental algorithm for max-flow problem that tries to find the max-flow in the network as an edge is deleted or inserted in the network, is presented.It has also been shown that other cases of a unit change can be considered as a special case of insertion and deletion of an edge in the network.

  • 2. Maximum Flow (MXF) Problem2.4 Genetic Approach for solving MXF ProblemMunakata, T. and D. J. Hashier: A genetic algorithm applied to the maximum flow problem, Proc. of 5th Int. Conf. on Genetic Algorithms, pp. 488-493, 1993.The maximum flow problem appears to be more challenging in applying GAs than many other common graph problems (e.g., shortest path, minimum spanning tree) Its unique characteristic: A flow at each edge can be anywhere between zero and its flow capacity, i.e., it has more "freedom" to choose. In many other problems, selecting an edge may mean to simply add a fixed distance.In the maximum flow problem, two conditions must be satisfied: The flow at each edge must be between zero and its flow capacity.At each vertex, the incoming flow and outgoing flow must balance.

  • 2.4 Genetic Approach for solving MXF Problem2.4.1 Genetic Representationprocedure 1: Priority-based Encodinginput: number of nodes noutput: chromosome vkbegin for j=1 to n// step 0vk(j) j; for i=1 to // step 1repeat jrandom[1, n]; lrandom[1, n];until lj swap (vk(j), vk(l)); output the chromosome vk; // step 2end

  • 2.4 Genetic Approach for solving MXF ProblemThe decoding procedure is a two-stage process.First stage: the path is generated by one-path growth procedure It is given in procedure 2With beginning from the specified node 1 and terminating at the specified node n. At each step, add the one with the highest priority into path.

  • 2.4 Genetic Approach for solving MXF ProblemThe decoding procedure is a two-stage process.Second stage: overall paths are generated by overall paths growth procedure For a given path, we can calculate its flow fk By removing the used capacity from uij of each arc, we have a new network with the new flow capacity ij. With the one-path growth procedure (procedure 2), we can obtain the second path. By repeating this procedure we can obtain the maximum flow for the given chromosome till no new network can be defined in this way. It is given in procedure 3.

  • 2.4 Genetic Approach for solving MXF Problemprocedure 3: Overall-path Growthinput: network data (V, A, U), chromosome vk , the set of nodes Si with all nodes adjacent to node ioutput: number of paths Lk , the flow fik of each path, iLk

    step 0: number of paths l0step 1: if S1=, go to step 7; otherwise, l l +1, continue.step 2: the implementation of path Plk growth is based on procedure 2. Select the sink node a of path plk.step 3: if the sink node a=n, continue; otherwise, perform the set of nodes Si update as follows, return to step 1.

    step 4: calculate the flow flk of the path Plk.

    step 5: perform the flow capacity uij of each arc update. Make a new flow capacity ij as follows:

    step 6: if the flow capacity ij=0, perform the set of nodes Si update which the node j adjacent to node i.step 7: output number of paths Lk l -1, the flow fik of each path, iLk .

  • 2.4 Genetic Approach for solving MXF ProblemIllustration of Priority-based GAData table of example networkChromosome:ff

    node ID :1234567891011priority :2164119810537

    ijuij 1 260 1 360 1 460 2 330 2 540 2 630 3 430 3 650 3 730 4 740 5 860 6 520 6 830 6 940 61030 7 620 71040 8 930 81160 91030 91150101150

  • 2.4 Genetic Approach for solving MXF ProblemIllustration of Priority-based GAChromosome:k : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1fk : maximum possible flow

    node ID :1234567891011priority :2164119810537

    kiSilPkS1fk10112, 3, 431, 324, 6, 761, 3, 635, 8, 9, 1051, 3, 6, 54881, 3, 6, 5, 859, 11111, 3, 6, 5, 8, 112, 3, 42020112, 3, 431, 324, 6, 761, 3, 638, 9, 1081, 3, 6, 849, 11111, 3, 6, 8, 112, 3, 450

  • 2.4 Genetic Approach for solving MXF ProblemIllustration of Priority-based GAChromosome:k : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1fk : maximum possible flow

    kiSilPkS1fk30112, 3, 431, 324, 771, 3, 736, 1061, 3, 7, 649, 1091, 3, 7, 6, 9510, 11111, 3, 7, 6, 9, 112, 46040112, 441, 42771, 4, 736, 1061, 4, 7, 649, 1091, 4, 7, 6, 9510, 11111, 4, 7, 6, 9, 112,470

    node ID :1234567891011priority :2164119810537

  • 2.4 Genetic Approach for solving MXF ProblemIllustration of Priority-based GAChromosome:k : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1fk : maximum possible flow

    kiSilPkS1fk50112, 441, 42 771, 4, 7310101, 4, 7, 10411111, 4, 7, 10, 1121006011221, 223, 5, 651, 2, 53881, 2, 5, 849, 11111, 2, 5, 8, 112110

    node ID :1234567891011priority :2164119810537

  • 2.4 Genetic Approach for solving MXF ProblemIllustration of Priority-based GAChromosome:k : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1fk : maximum possible flow

    kiSilPkS1fk7011221, 223, 5, 651, 2, 53881, 2, 5, 84991, 2, 5, 8, 9510, 11111, 2, 5, 8, 9, 1121408011221, 223, 661, 2, 639, 1091, 2, 6, 9410101, 2, 6, 9, 10511111, 2, 6, 9, 10, 11160

    node ID :1234567891011priority :2164119810537

  • 2.4 Genetic Approach for solving MXF ProblemIllustration of Priority-based GAObjective function value z=160Chromosome:Data table of example network60/601234567891011st60/6040/6020/2020/2030/3020/3060/6050/5050/5040/4020/3050/5010/3040/4060/6030/3040/4030/40160160

    ijuij 1 260 1 360 1 460 2 330 2 540 2 630 3 430 3 650 3 730 4 740 5 860 6 520 6 830 6 940 61030 7 620 71040 8 930 81160 91030 91150101150

    node ID :1234567891011priority :2164119810537

  • 2.4 Genetic Approach for solving MXF Problem2.4.2 Genetic Operators

    step 1 : select the substring at randomstep 2 : exchange substrings betweenstep 3 : determine mapping relationshipsubstring selectedHere the position-based crossover operator proposed by PMX (Partial Mapped Crossover) (Gen-Cheng97, pp.119-125) was adopted.

    It uses a special repairing procedure to resolve the illegitimacy caused by the simple two-point crossover as follows: step 4 : legalize offspring with mapping relationship

    parent 1:17234658

    parent 2:46357182

    parent 1:17357658

    parent 2:46234182

    234

    357

    offspring 1:14357628

    offspring 2:76234185

  • 2.4 Genetic Approach for solving MXF Problem2.4.2 Genetic Operators

    Mutation: The swap mutation operator was used here, in which two positions are selected at random and their contents are swapped as follows:

    Selection: The roulette wheel approach, a type of fitness-proportional selection, was adopted.

  • 2.4 Genetic Approach for solving MXF ProblemGA Procedure for Maximum Flow Problemprocedure: Priority-based GA for Maximum Flow Probleminput: network data (V, A, U), GA parametersoutput: best maximum flowbegint 0;initialize P(t) by priority-based encoding;fitness eval(P);while (not termination condition) docrossover P(t) to yield C(t) by partial mapped crossover;mutation P(t) to yield C(t) by swap mutation;fitness eval(C); select P(t+1) from P(t) and C(t) by roulette wheel selection;t t + 1;endoutput best maximum flow;end

  • 2.5 Numerical ExamplesTest Problems:The numerical examples, presented by T. Munakata & D.J. Hashier, was adopted.

    Munakata, T. and D. J. Hashier: A genetic algorithm applied to the maximum flow problem, Proc. of 5th Int. Conf. on Genetic Algorithms, pp. 488-493, 1993.

    Using the following parameter specifications.

    Population size: popSize =10Crossover probability:pC =0.50Mutation probability:pM =0.50Maximum generation:maxGen =1000Terminating condition: 100 generations with same fitness.

    All the simulations were performed with Java on Pentium 4 processor (1.5-GHz clock).

  • 2.5 Numerical ExamplesTest Problem 1:The first numerical example, presented by Munakata & Hashier, was adopted. The problem comprises 25 nodes and 49 arcs. It is given as follows:

  • 2.5 Numerical Examples1234567891011121314151617181920212223242590 18/20 13/20 20/20 19/20 20/20 9/20 20/20 20/20 10/20 2/20 20/20 9/20 10/10 10/10 10/10 5/10 10/10 10/10 10/10 5/10 8/8 8/8 4/8 4/8 6/85/25 25/25 5/25 25/25 15/2014/15 15/15 15/15 7/15 15/15 9/1515/15 4/6 5/5 4 /4 2/5 4/430/30 30/30 30/3090ijxij / uij

    Objective function value: z=90 (optimal solution) Generation Num. of Obtained best result: 34 Best Chromosome:

  • 2.5 Numerical Examples Process of Genetic Computing

  • 2.5 Numerical ExamplesTest Problem 2:The first numerical example, presented by Munakata & Hashier, was adopted. The problem comprises 25 nodes and 56 arcs. It is given as follows: ijuij

  • 2.5 Numerical Examplesijuij

    Objective function value: z=91 (optimal solution) Generation Num. of Obtained best result: 67 Best Chromosome:

    123456789101112131415161718192021222324259191 18/2020/20 20/20 20/20 13/20 10/10 8/8 10/10 6/6 4/8 5/5 7/9 8/8 7/7 10/10 3/7 7/12 6/15 18/18 9/12 15/20 7/22 3/6 8/11 2/2 4/5 6/10 4/8 6/10 1/10 6/6 4/5 9/10 7/8 9/9 5/7 8/158/8 8/8 6/6 5/915/15 20/20 22/30 20/2014/15

  • 2.5 Numerical Examples Process of Genetic Computingflow

  • 2.5 Numerical ExamplesSimulation (# of nodes: 80, # of arcs: 826)

  • 6. Basic Network DesignShortest Path Problem (SPP)

    Maximum Flow (MXF) Problem

    Minimum Cost Flow (MCF) Problem 3.1 Basic Concept of MCF Problem3.2 Application of MCF Problem3.3 Methods for solving MCF Problem3.4 Genetic Approach for solving MCF Problem 3.4.1 Genetic Representation 3.4.2 Genetic Operators3.5 Numerical Examples

    4. Bicriteria Network Design Problem (BNP)

    5. Multicriteria Network Design Problem

  • 3. Minimum Cost Flow (MCF) Problem

    MCF model is the most fundamental of all network design problems. The problem is to determine the minimum cost plan for sending flow through the network to satisfy supply and demand requirements. The problem is defined by a given set of arcs and a given set of nodes, where each are has a known capacity uij and unit cost cij and each node has a fixed external flow. SPP model is a special case of MCF when the flow q =1.Data table of example network3.1 Basic Concept of MCF Problem

    ijcijuij 1 21860 1 31960 1 41760 2 31330 2 51640 2 61430 3 41530 3 61650 3 71730 4 71940 5 81960 6 51520 6 81630 6 91540 6101830 7 61520 7101340 8 91730 8111860 9101430 911195010111750

  • 3. Minimum Cost Flow (MCF) Problem3.1 Basic Concept of MCF ProblemDirected graph G=(V, A)where V is a set of nodes, A is a set of links.uij is a capacity associated with each link(i, j)cij is unit cost associated with each link(i, j)Source node: node 1Destination node: node n

    Data table of example network

    ijcijuij 1 21860 1 31960 1 41760 2 31330 2 51640 2 61430 3 41530 3 61650 3 71730 4 71940 5 81960 6 51520 6 81630 6 91540 6101830 7 61520 7101340 8 91730 8111860 9101430 911195010111750

  • 3. Minimum Cost Flow (MCF) Problem3.1 Basic Concept of MCF Problem

    MCF problem can be formulated as follows:q: total flow value

  • 3. Minimum Cost Flow (MCF) Problem3.2 Application of Minimum Cost Flow (MCF) Problem

    This basic MCF model can be applied in many applications such as:

    Ahuj, R. K., T. L. Magnanti & J. B. Orlin: Network Flows, Prentice-Hall, Upper Saddle River, NJ, 1993.

    Transportation ProblemThere are a set of nodes called sources, and a set of nodes called destinations. All arcs go from a source to a destination. There is a per-unit cost on each arc. Each source has a supply of material, and each destination has a demand.It can be solved by applying Min-cost Flow Algorithm

    Distribution ProblemThe distribution of a product from manufacturing plants to warehouses, or from warehouses to retailersThe flow of raw material and intermediate goods through the various machining stations in a production line

    The routing of automobiles through an urban street network

    The routing of calls through the telephone system.

  • 3. Minimum Cost Flow (MCF) Problem3.3 Methods for solving MCF ProblemAhuj, R. K., T. L. Magnanti & J. B. Orlin: Network Flows, Prentice-Hall, Upper Saddle River, NJ, 1993.Successive Shortest Path AlgorithmThe successive shortest path algorithm maintains optimality of the solution at every step and strives to attain feasibility.Primal-dual Algorithm The primal-dual algorithm for the minimum cost flow problem is similar to the successive shortest path algorithm in the sense that it also maintains a pseudoflow that satisfies the reduced cost optimality conditions and gradually converts it into a flow by augmenting flows along shortest paths.Out-of-Kilter AlgorithmThe out-of-kilter algorithm, which satisfies only the mass balance constraints, so intermediate solutions might violate both the optimality conditions and the flow bound restrictions.

  • 3.4 Genetic Approach for solving MCF Problem3.4.1 Genetic Representationprocedure 1: priority-based encodinginput: number of nodes noutput: chromosome vkbegin for j=1 to n// step 0vk(j) j; for i=1 to // step 1repeat jrandom[1, n]; lrandom[1, n];until lj swap (vk(j), vk(l)); output the chromosome vk; // step 2end

  • 3.4 Genetic Approach for solving MCF ProblemThe decoding procedure is a two-stage process.First stage: the path is generated by One-path growth procedure It is given in procedure 2With beginning from the specified node 1 and terminating at the specified node n. At each step, add the one with the highest priority into path.

    procedure 2: One-path Growthinput: number of nodes n, chromosome vk , the set of nodes Si with all nodes adjacent to node i.output: path Pkstep 0: the source node i1, Pk step 1: if Si=, goto step 3; otherwise, continue.step 2: select l from Si with the highest priority, and go back to step 1. if vk(l)0 then vk(l)=0; Pk Pk{xil}; il; else vk(l)=0step 3: output the complete path Pk .

  • 3.4 Genetic Approach for solving MCF ProblemThe decoding procedure is a two-stage process.Second stage: overall paths are generated by overall paths growth procedure For a given path, we can calculate its flow fk and the cost ck. By removing the used capacity from uij of each arc, we have a new network with the new flow capacity ij. With the one-path growth procedure (procedure 2), we can obtain the second path. By repeating this procedure we can obtain the maximum flow for the given chromosome till the flow fk is larger than total flow value q.It is given in procedure 3.

  • 3.4 Genetic Approach for solving MCF Problemprocedure 3: Overall-path Growthinput: network data (V, A, C, U), chromosome vk , the set of nodes Si with all nodes adjacent to node ioutput: number of paths Lk , the flow fik and the cost cik of each path, iLk

    step 0: number of paths l0step 1: if flow fk >q, go to step 7; otherwise, l l +1, continue.step 2: the implementation of path Plk growth is based on procedure 2. Select the sink node a of path plk.step 3: if the sink node a=n, continue; otherwise, perform the set of nodes Si update as follows, return to step 1.

  • 3.4 Genetic Approach for solving MCF Problemstep 4: calculate the flow flk and the cost clk of the path Plk.

    step 5: perform the flow capacity uij of each arc update. Make a new flow capacity ij as follows:

    step 6: if the flow capacity ij=0, perform the set of nodes Si update which the node j adjacent to node i.

    step 7: output number of paths Lk l -1, the flow fik and the cost cik of each path, iLk .

  • 3.4 Genetic Approach for solving MCF ProblemIllustration of Priority-based GAData table of example networkChromosome:

    ijcijuij 1 21860 1 31960 1 41760 2 31330 2 51640 2 61430 3 41530 3 61650 3 71730 4 71940 5 81960 6 51520 6 81630 6 91540 6101830 7 61520 7101340 8 91730 8111860 9101430 911195010111750

    node ID :1234567891011priority :2164119810537

  • 3.4 Genetic Approach for solving MCF ProblemIllustration of Priority-based GAk : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1flk : the total flow clk : minimum possible cost q = 60Chromosome:

    kiSilPkS1flkclk10112, 3, 431, 324, 6, 761, 3, 635, 8, 9, 1051, 3, 6, 54881, 3, 6, 5, 859, 11111, 3, 6, 5, 8, 112, 3, 4208720112, 3, 431, 324, 6, 761, 3, 638, 9, 1081, 3, 6, 849, 11111, 3, 6, 8, 112, 3, 43069

    node ID :1234567891011priority :2164119810537

  • 3.4 Genetic Approach for solving MCF ProblemIllustration of Priority-based GAk : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1flk : the total flow clk : minimum possible cost q = 60Chromosome:

    kiSilPkS1flkclk30112, 3, 431, 324, 771, 3, 736, 1061, 3, 7, 649, 1091, 3, 7, 6, 9510, 11111, 3, 7, 6, 9, 112, 41085

    node ID :1234567891011priority :2164119810537

  • 3.4 Genetic Approach for solving MCF ProblemIllustration of Priority-based GAObjective function value z=20*87+30*69+10*85 =4660Chromosome:Data table of example network1234567891011st19, 60/6015, 20/2015, 10/2018, 50/6019, 10/5016, 50/5017, 10/3019, 20/6016, 30/3015, 10/406060

    ijcijuij 1 21860 1 31960 1 41760 2 31330 2 51640 2 61430 3 41530 3 61650 3 71730 4 71940 5 81960 6 51520 6 81630 6 91540 6101830 7 61520 7101340 8 91730 8111860 9101430 911195010111750

    node ID :1234567891011priority :2164119810537

  • 3.4 Genetic Approach for solving MCF Problem3.4.2 Genetic Operators

    step 1 : select the substring at randomstep 2 : exchange substrings betweenstep 3 : determine mapping relationshipsubstring selectedHere the position-based crossover operator proposed by PMX (Partial Mapped Crossover) (Gen-Cheng97, pp.119-125) was adopted.

    It uses a special repairing procedure to resolve the illegitimacy caused by the simple two-point crossover as follows: step 4 : legalize offspring with mapping relationship

    parent 1:17234658

    parent 2:46357182

    parent 1:17357658

    parent 2:46234182

    234

    357

    offspring 1:14357628

    offspring 2:76234185

  • 3.4 Genetic Approach for solving MCF Problem3.4.2 Genetic Operators

    Mutation: The swap mutation operator was used here, in which two positions are selected at random and their contents are swapped as follows:

    Selection: The roulette wheel approach, a type of fitness-proportional selection, was adopted.

  • 3.4 Genetic Approach for solving MCF ProblemGA Procedure for solving MCF Problemprocedure: Priority-based GA for Solving MCF Probleminput: network data (V, A, C, U), GA parametersoutput: best minimum costbegint 0;initialize P(t) by priority-based encoding;fitness eval(P);while (not termination condition) docrossover P(t) to yield C(t) by partial mapped crossover;mutation P(t) to yield C(t) by swap mutation;fitness eval(C); select P(t+1) from P(t) and C(t) by roulette wheel selection;t t + 1;endoutput best minimum cost;end

  • 3.5 Numerical ExamplesTest Problems:The numerical examples, presented by Munakata & Hashier, was adopted.

    Munakata, T. and D. J. Hashier: A genetic algorithm applied to the maximum flow problem, Proc. of 5th Int. Conf. on Genetic Algorithms, pp. 488-493, 1993.

    Using the following parameter specifications.

    Population size: popSize =10Crossover probability:pC =0.50Mutation probability:pM =0.50Maximum generation:maxGen =1000Terminating condition: 100 generations with same fitness.

    All the simulations were performed with Java on Pentium 4 processor (1.5-GHz clock).

  • 3.5 Numerical ExamplesTest Problem 1:The first numerical example, presented by Munakata & Hashier, was adopted. The problem comprises 25 nodes and 49 arcs. It is given as follows: ijcij , uij

  • 3.5 Numerical Examples Total flow value q = 70 Objective function value: z= 6969 Generation Num. of Obtained best result:863 Best Chromosome:

    12345678910111213141516171819202122232425q=7010, 18/2013, 14/2032, 20/20135, 14/20631, 4/206, 10/207, 20/207, 18/2014, 7/204, 15/2010, 10/1035, 10/103, 10/107, 4/103, 10/1010, 10/1013, 8/815, 8/83, 8/811, 10/258, 20/2514, 20/2510, 15/159, 15/1511, 15/1512, 7/159, 3/1514, 15/1510, 5/615, 5/533, 4/44, 2/513, 4/410, 30/302, 20/303, 20/30q=70

  • 3.5 Numerical Examples Process of Genetic Computingcost

  • 3.5 Numerical ExamplesTest Problem 2:The first numerical example, presented by Munakata & Hashier, was adopted. The problem comprises 25 nodes and 56 arcs. It is given as follows: ijcij , uij

  • 3.5 Numerical ExamplesTotal flow value q = 72 Objective function value: z=5986 Generation Num. of Obtained best result:132 Best Chromosome:

    123456789101112131415161718192021222324252, 18/2010, 14/2033, 20/20126, 20/203, 10/1014, 8/813, 6/632, 8/87, 3/512, 9/933, 8/84, 7/712, 10/1030, 3/77, 8/186, 6/128, 15/203, 5/511,2 /226, 6/629, 10/1130, 6/1034,9/102, 3/935, 6/614, 2/58, 6/1026, 8/912, 6/731, 3/158,4/ 430, 8/811, 4/62,10/1510, 20/206, 16/307, 20/209, 6/15q=72q=72

  • 3.5 Numerical Examples Process of Genetic Computing

  • 3.5 Numerical ExamplesSimulation (# of nodes: 80, # of arcs: 857)

  • 6. Basic Network DesignShortest Path Problem (SPP)

    Maximum Flow (MXF) Problem

    Minimum Cost Flow (MCF) Problem

    Bicriteria Network Design Problem (BNP) 4.1 Introduction of BNP 4.2 BNP Formulation 4.3 Genetic Approach for solving BNP 4.3.1 Genetic Representation 4.3.2 Decoding Method 4.3.3 Fitness Assignment 4.3.4 Genetic Operators 4.4 Numerical Examples

    5. Multi-criteria Network Design Problem

  • 4. Bicriteria Network Design Problem (BNP)In real-life applications, network design is often the case that the network to be built is required to optimize multicriteria simultaneously.

    Marathe, M. V., R. Ravi, R. Sundaram, S. S. Ravi, D. J. Rosenkrantz, and H. B. Hunt: Bicriteria network design problems, J. Algorithms, vol. 28, no. 1, pp. 142-171, Jul. 1998.Lo, C. and W. Chang: A multiobjective hybrid genetic algorithm for the capacitated multipoint network design problem, IEEE Trans. Syst., Man, Cybern. B, vol. 30, no. 3, pp. 461-470, Jun. 2000.Kim, J. R. and M. Gen: A genetic algorithm for bicriteria communication network topology design, Eng. Val. Cost Analysis, vol. 3, pp. 351-363, 2000.Raghavan, S., M. O. Ball, and V. S. Trichur: Bicriteria product design optimization, Institute for Systems Research, Tech. Rep. TR 2001-8, 2001. [Online]. Available: http://techreports.isr.umd.edu/ARCHIVE/Kumar, R., P. P. Parida, and M. Gupta: Topological design of communication networks using multiobjective genetic optimization, Proc. Cong. Evol. Comput., May. 2002, vol. 1, pp. 425-430.Yuan, D.: A bicriteria optimization approach for robust OSPF routing, Proc. IPOM, 2003, pp. 91-98.Medaglia, A. L. and S. Fang: A genetic-based framework for solving (multi-criteria) weighted matching problems, Eur. J. Oper. Res., vol. 149, pp.77-101, Jan. 2003.Yang, H., M. Maier, M. Reisslein, and W. M. Carlyle: A genetic algorithm-based methodology for optimizing multiservice convergence in a metro WDM network, J. Lightwave Technol., vol. 21, no. 5, pp. 1114-1133, May. 2003.Zhou, G., H. Min, and M. Gen: A genetic algorithm approach to the bi-criteria allocation of customers to warehouses, Int. J. Production Economics, vol. 86, pp. 35-45, Oct. 2003.

  • 4.1 Introduction of BNPThe problems may arise when designing:

    In a communication network, find a set of links which consider the low cost (or delay) and the high throughput (or reliability) for increasing the network performance.Marathe, M. V., R. Ravi, R. Sundaram, S. S. Ravi, D. J. Rosenkrantz, and H. B. Hunt: Bicriteria network design problems, J. Algorithms, vol. 28, no. 1, pp. 142-171, Jul. 1998.Yuan, D.: A bicriteria optimization approach for robust OSPF routing, Proc. IPOM, 2003, pp. 91-98.Yang, H., M. Maier, M. Reisslein, and W. M. Carlyle: A genetic algorithm-based methodology for optimizing multiservice convergence in a metro WDM network, J. Lightwave Technol., vol. 21, no. 5, pp. 1114-1133, May. 2003. In a manufacturing system, the two criteria under consideration are minimizing cost and maximizing manufacturing.Raghavan, S., M. O. Ball, and V. S. Trichur: Bicriteria product design optimization, Institute for Systems Research, Tech. Rep. TR 2001-8, 2001. [Online]. Available: http://techreports.isr.umd.edu/ARCHIVE/ In a logistic system, the main drive to improve logistics productivity is the enhancement of customer services and asset utilization through a significant reduction in order cycle time (lead time) and logistics costs. Zhou, G. , H. Min, and M. Gen: A genetic algorithm approach to the bi-criteria allocation of customers to warehouses, Int. J. Production Economics, vol. 86, pp. 35-45, Oct. 2003.

  • 4.1 Introduction of BNPThe Bicriteria Network Design Problem (BNP) is known as NP-hard (Garey and Johnson, 1979), it is not simply an extension from single objective to two objectives. Garey, M. and D. Johnson: Computers and Intractability: A Guide to the Theory of NP-Completeness, W.H. Freeman, New York, 1979. In generally, we can not get the optimal solution of the problem because these objectives usually conflict with each other in practice. The real solutions to the problem are a set of Pareto optimal solutions (Chankong and Haimes, 1983). Chankong, V. and Y.Y. Haimes: Multiobjective Decision Making Theory and Methodology. North-Holland, New York, 1983. For solving the BNP, the set of efficient paths may be very large and possibly exponential in size.Thus the computational effort required to solve it can increase exponentially with the problem size in the worst case.While the tractability of the problem is of importance when solving large scale problems, the issue concerning with the size of the efficient set is important to a decision maker. Having to evaluate a large efficient set in order to select the best one poses a considerable cognitive burden on decision makers. Therefore, in such cases, obtaining the entire Pareto optimal set is of little interest to decision makers.

  • 4.1 Introduction of BNPRecently, GAs have received considerable attention regarding their potential as a novel approach to multiobjective optimization problems, known as evolutionary or genetic multiobjective optimization.Deb, K. : Multiobjective Optimization Using Evolutionary Algorithms, Wiley, Chichester, UK, 2001. The basic feature of GAs is the multiple directional and global search by maintaining a population of potential solutions from generation to generation.The population-to-population approach is hopeful to explore Pareto optimal or nondominated solutions.GAs do not have much mathematical requirements about the problems and can handle any kind of objective functions and constraints. Due to their evolutionary nature, GAs can search for solutions without regard to the specific inner workings of the problem.Therefore, GAs is possibly well suited to the multiobjective optimization problems.

  • 4.1 Introduction of BNPThe bicriteria shortest path problem is one of BNPs, which of finding a diameter-constrained shortest path from a specified source node s to another specified sink node t.This problem, termed the multi-objective shortest path problem (MOSP) in the literature is NP-complete. Warburton (1987) presented the first fully polynomial approximation scheme (FPAS) for it.Warburto, A.: Approximation of Pareto optima in multiple-objective, shortest path problems, Operations Research, vol. 35, no. 1, pp. 70-79, 1987. Hassin (1992) provided a strongly polynomial FPAS for the problem which improved the running time of Warburton. Hassin, R.: Approximation schemes for the restricted shortest path problem, Math. Of Operations Research, vol. 17, no. 1, pp. 36-42, Feb. 1992.

  • 4.1 Introduction of BNPThe general classes of BNPs with minimum two objectives (under different cost functions) are defined and extended to the more multi-criteria network design problems. Ravi et al. (1994) presented an approximation algorithm for finding good broadcast networks. Ravi, R.: "Rapid rumor ramification: approximating the minimum broadcast time, Proc. 35th Annual IEEE Foundations of Comput. Sci., pp. 202-213, 1994. Ganley et al. (1995) consider a more general problem with more than two objective functions. Ganley, J. L., M. J. Golin, and J. S. Salowe: The multi-weighted spanning tree problem, Proc. 1st COCOON, pp. 141-150, Springer-Verlag, LNCS, 1995. Marathe et al. (1998) consider three different criteria of network and presented the first polynomial-time approximation algorithms for a large class of BNP.Marathe, M. V., R. Ravi, R. Sundaram, S. S. Ravi, D. J. Rosenkrantz, and H. B. Hunt: Bicriteria network design problems, J. Algorithms, vol. 28, no. 1, pp. 142-171, 1998.

  • 4.1 Introduction of BNPIn this study, we dominated BNP with more complexity cases as two criteria problem that maximum flow and minimum cost considered. Priority-based encoding method (Cheng and Gen, 1994) has been improved. Cheng, R. and M. Gen: Evolution program for resource constrained project scheduling problem, Proc. of Int. Conf. Evol. Comput., pp.736-741, 1994.For maximizing flow, different form other genetic representation methods, such as path oriented encoding method, priority-based encoding method can represent various efficient paths by each chromosome. Considering the characteristic of priority-based encoding method, we proposed a new crossover operator called as Weight Mapping Crossover (WMX)Insertion mutation operator and Immigration operator (Michael et al., 1991) was adopted.Michael, C.M., C.V. Stewart and R. B. Kelly: Reducing the search time of a steady state genetic algorithm using the immigration operator, Proc. IEEE Int. Conf. Tools for AI, San Jose, CA, pp.500-501, 1991.These methods provide a search capability that results in improved quality of solution and enhanced rate of convergence. For ensure the population diversity in MOGA, Adaptive Weight Approach (AWA) which is one of weighted-sum approach, was adopted. Gen, M. and R. Cheng: Genetic Algorithms and Engineering Optimization, John Wiley & Sons, New York, 2000. Their elements represent that weights are adjusted adaptively based on the current generation to obtain search pressure toward the positive ideal point.

  • 4.2 BNP Formulation4.2 BNP FormulationIn this study, we present a mathematical programming formulation of the bicriteria network design model including MXF model and MCF model. Different from the generic BNP, the problems efficient set of paths may be very large, possibly exponential in size. Thus the computational effort required to solve it can increase exponentially with the problem size in the worst case. In a network with flow capacities and costs on the arcs, BNP is to determine both the maximum possible flow z1 and minimum cost z2 in the same time, from a source to a sink.

  • 4.3.1 Genetic Representation Priority-based encoding methodprocedure 1: Priority-based Encodinginput: number of nodes noutput: chromosome vkbegin for j=1 to n// step 0vk(j) j; for i=1 to // step 1repeat jrandom[1, n]; lrandom[1, n];until lj swap (vk(j), vk(l)); output the chromosome vk; // step 2end

  • 4.3.2 Decoding MethodThe decoding procedure is a two-stage process.First stage: the path is generated by One-path growth procedure It is given in procedure 2With beginning from the specified node 1 and terminating at the specified node n. At each step, add the one with the highest priority into path.

    procedure 2: One-path Growthinput: number of nodes n, chromosome vk , the set of nodes Si with all nodes adjacent to node i.output: path Pkstep 0: the source node i1, Pk step 1: if Si=, goto step 3; otherwise, continue.step 2: select l from Si with the highest priority, and go back to step 1. if vk(l)0 then vk(l)=0; Pk Pk{xil}; il; else vk(l)=0step 3: output the complete path Pk ;

  • 4.3.2 Decoding MethodThe decoding procedure is a two-stage process.Second stage: overall paths are generated by overall paths growth procedure For a given path, we can calculate its flow fk and the cost ck. By removing the used capacity from uij of each arc, we have a new network with the new flow capacity ij. With the one-path growth procedure (procedure 2), we can obtain the second path. By repeating this procedure we can obtain the maximum flow for the given chromosome till no new network can be defined in this way. It is given in procedure 3.

  • 4.3.2 Decoding Methodprocedure 3: Overall-path Growthinput: network data (V, A, C, U), chromosome vk , the set of nodes Si with all nodes adjacent to node ioutput: number of paths Lk , the flow fik and the cost cik of each path, iLk

    step 0: number of paths l0step 1: if S1=, go to step 7; otherwise, l l +1, continue.step 2: the implementation of path Plk growth is based on procedure 2. Select the sink node a of path plk.step 3: if the sink node a=n, continue; otherwise, perform the set of nodes Si update as follows, return to step 1.

  • 4.3.2 Decoding Methodstep 4: calculate the flow flk and the cost clk of the path Plk.

    step 5: perform the flow capacity uij of each arc update. Make a new flow capacity ij as follows:

    step 6: if the flow capacity ij=0, perform the set of nodes Si update which the node j adjacent to node i.

    step 7: output number of paths Lk l -1, the flow fik and the cost cik of each path, iLk .

  • Illustration of Decoding Method k : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1z1k : maximum possible flow z2k : minimum possible cost Chromosome:

    kiSilPkS1z1kz2k10112, 3, 431, 324, 6, 761, 3, 635, 8, 9, 1051, 3, 6, 54881, 3, 6, 5, 859, 11111, 3, 6, 5, 8, 112, 3, 420138020112, 3, 431, 324, 6, 761, 3, 638, 9, 1081, 3, 6, 849, 11111, 3, 6, 8, 112, 3, 4505730

  • Illustration of Decoding Method k : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1z1k : maximum possible flow z2k : minimum possible cost Chromosome:

    kiSilPkS1z1kz2k30112, 3, 431, 324, 771, 3, 736, 1061, 3, 7, 649, 1091, 3, 7, 6, 9510, 11111, 3, 7, 6, 9, 112, 460658040112, 441, 42771, 4, 736, 1061, 4, 7, 649, 1091, 4, 7, 6, 9510, 11111, 4, 7, 6, 9, 112,4707430

  • Illustration of Decoding Method k : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1z1k : maximum possible flow z2k : minimum possible cost Chromosome:

    kiSilPkS1z1kz2k50112, 441, 42 771, 4, 7310101, 4, 7, 10411111, 4, 7, 10, 11210094106011221, 223, 5, 651, 2, 53881, 2, 5, 849, 11111, 2, 5, 8, 11211010120

  • Illustration of Decoding Method k : number of paths i : start node Si : the set of nodesl : sink node Pk : the kth pathS1 : the set of nodes with all nodes adjacent to node 1z1k : maximum possible flow z2k : minimum possible cost Chromosome:

    kiSilPkS1z1kz2k7011221, 223, 5, 651, 2, 53881, 2, 5, 84991, 2, 5, 8, 9510, 11111, 2, 5, 8, 9, 112140127908011221, 223, 661, 2, 639, 1091, 2, 6, 9410101, 2, 6, 9, 10511111, 2, 6, 9, 10, 1116014350

  • Illustration of Decoding MethodIllustration of Priority-based GAData table of example network

    ijcijuij 1 21860 1 31960 1 41760 2 31330 2 51640 2 61430 3 41530 3 61650 3 71730 4 71940 5 81960 6 51520 6 81630 6 91540 6101830 7 61520 7101340 8 91730 8111860 9101430 911195010111750

  • 4.3.3 Fitness AssignmentIn this study, evaluate the fitness of each individual in the GA approach for BNP, we design an adaptive evaluation function based on the AWA as procedure 4.procedure 4: Adaptive Weight Approachinput: chromosome vk , kpopSize, number of paths Lk , the flow fik and the cost cik of each path, iLkoutput: fitness value eval(vk), kpopSizestep 1: define two extreme points: the maximum extreme point z+ and the minimum extreme point z- in criteria space as follows:

    where z1max, zmax, z1min and z2min are the maximal value and minimal value for objective 1 and objective 2 in the current population. They are defined as follows:

  • 4.3.3 Fitness Assignmentstep 2: The adaptive weight for objective 1 and objective 2 are calculated by the following equation:

    step 3: Calculate the fitness value for each individual.

  • 4.3.4 Genetic OperatorsCrossover Operator: Weight Mapping Crossover (WMX)We proposed a new crossover operator: WMX.WMX can be viewed as an extension of one-point crossover for permutation representation. cut-pointstep 1: select a cut-pointstep 2: mapping the weight of the right segmentstep 3: generate offspring with mapping relationship1437parent 1 :1427parent 2 :offspring 1 :1427offspring 2 :514375

    parent 1 :2174536

    parent 2 :3726514

    514

    536

    356

    145

    offspring 2 :3726415

    offspring 1 :2174635

  • 4.3.4 Genetic OperatorsMutation Operator: Insertion MutationSelects a gene at random and inserts it in a random position as follows:

    Selection: the roulette wheel selection, a type of Proportionate selection, is adopted.select a gene at random insert it in a random position 1437parent :offspring :147

    parent :2174536

    offspring :2517436

  • 4.3.4 Genetic OperatorsImmigration Operator:Moed et. al. (1990) proposed an immigration operator which, for certain types of functions:Allows increased explorationMaintaining nearly the same level of exploitation for the given population size.Immigration operator procedure:step 1: The algorithm is modified to include immigration, with each generation generated.step 2: Evaluate random members (, called the immigration rate).step 3: Replace the worst members of the population with the random members.

  • 4.3.5 GA Procedure for BNPGA Procedure for BNPprocedure: Priority-based GA for BNPinput: network data (V, A, C, U), GA parametersoutput: Pareto optimal solution E(t)begint 0;initialize P(t) by priority-based encoding; objectives z1(P), z2(P);create Pareto E(P);fitness eval(P) by adaptive weight approach;while (not termination condition) docrossover P(t) to yield C(t) by weight mapping crossover;mutation P(t) to yield C(t) by insertion mutation; immigration operation to yield C(t) ; objectives z1(C), z2(C); update Pareto E(P, C); fitness eval(P, C) by adaptive weight approach;select P(t+1) from P(t) and C(t) by roulette wheel selection;t t + 1;endoutput Pareto optimal solution E(t);end

  • 4.4 Numerical ExamplesTest Problems:The numerical examples, presented by Munakata & Hashier, was adopted.

    Munakata, T. and D. J. Hashier: A genetic algorithm applied to the maximum flow problem, Proc. of 5th Int. Conf. on Genetic Algorithms, pp. 488-493 , 1993.

    Using the following parameter specifications.

    Population size: popSize =20Crossover probability:pC =0.40Mutation probability:pM =0.60Maximum generation:maxGen =1000Terminating condition: 100 generations with same fitness.

    All the simulations were performed with Java on Pentium 4 processor (1.5-GHz clock).

  • 4.4 Numerical ExamplesTest Problem 1:The first numerical example, presented by Munakata & Hashier, was adopted. The problem comprises 25 nodes and 49 arcs. It is given as follows: ijcij , uij

  • 4.4 Numerical Examples

    Table 6.4 The Pareto optimal solutions of test problem 1 Gen, M., L. Lin & R. Cheng: Bicriteria Network Optimization Problem using Priority-based Genetic Algorithm, IEEJ Trans. on Elect., Info. & Sys., Oct. 2004.

    z1z2z1z2z1z2430030247072770353453327867383828600382926759762106964030467811799129934332748013147151001473674821453118122652407485171152015685648308717941211629595406881925423183366657589193332821786971459020007

  • 4.4 Numerical Examples Fig. 6.5 The Pareto optimal solutions of test problem 1

  • 4.4 Numerical ExamplesTest Problem 2:The first numerical example, presented by Munakata & Hashier, was adopted. The problem comprises 25 nodes and 56 arcs. It is given as follows: ijcij , uij

  • 4.4 Numerical ExamplesGen, M., L. Lin & R. Cheng: Bicriteria Network Optimization Problem using Priority-based Genetic Algorithm, IEEJ Trans. on Elect., Info. & Sys., Oct. 2004. Table 6.5 The Pareto optimal solutions of test problem 2

    z1z2z1z2z1z2z1z2252321633543872736944824834190955399074719210340361937584146757402154953820776146717675321869240248563515378784719101241258165546380922820111143273166570482103952112204730806763238312508251292493302686422851261026140651355171653786131512714575237397267489116752281475

  • 4.4 Numerical Examples Fig. 6.6 The Pareto optimal solutions of test problem 2

  • 4.4 Numerical ExamplesSimulation (# of nodes: 25, # of arcs: 56)

  • 6. Basic Network DesignShortest Path Problem (SPP)

    Maximum Flow (MXF) Problem

    Minimum Cost Flow (MCF) Problem

    Bicriteria Network Design Problem (BNP)

    Multi-criteria Network Design Problem5.1 Introduction of Multi-criteria Network Design Problem5.2 Reviewing Solution Approaches for MNP5.3 Numerical Examples

  • 5. Multi-criteria Network Design Problem (MNP)With the information superhighway fast becoming a reality, the problem of designing networks capable of accommodating multimedia (both audio and video) traffic in a multicast (simultaneous transmission of data to multiple destinations) environment has come to assume paramount importanceChow, C.-H.: On multicast path finding algorithms, Proceedings of IEEE INFOCOM, pp.1274-1283, 1991.Frank, A., L. Wittie, and A. Bernstein: Multicast communication in network computers, IEEE Software, Vol. 2, No. 3, pp. 49-61,1985.Kadaba, B. and J. Jaffe: Routing to multiple destinations in computer networks, IEEE Transactions on Communications, Vol. COM-31, pp. 343-351,1983.Kompella, V.P., J.C. Pasquale and G.C. Polyzos: Multicasting for multimedia applications, Proceedings of IEEE INFOCOM, 1992.Kompella, V.P., J.C. Pasquale and G.C. Polyzos: Multicast routing for multimedia communication, IEEE/ACM Transactions on Networking, pp. 286-292, 1993.

  • 5.1 Introduction of MNPNetwork design problems where even one cost measure must be minimized, are often NP-hard. But, in real-life applications, it is often the case that the network to be built is required to minimize multiple cost measures simultaneously, with different cost functions for each measure.

    For example, in the problem of finding good multicast trees, each edge has associated with it two edge costs: The construction cost: It is typically a measure of the amount of buffer space or channel bandwidth used The delay cost: It is a combination of the propagation, transmission and queuing delays.

  • 5.1 Introduction of MNPMulti-criteria network design problems, with separate cost functions for each optimization criterion, also occur naturally in Information Retrieval and VLSI designs. Bookstein, A. & S.T. Klein: Construction of Optimal Graphs for Bit-Vector Compression, Proc. 13th ACM-SIGIR, vol. 16, pp. 387-400, 1990.Zhu, Q., M. Parsa & W.W.M. Dai: An iterative approach for delay-bounded minimum Steiner tree construction, Technical Report UCSC-CRL-94-39, UC Santa Cruz, 1994.With the advent of deep micron VLSI designs, the feature size has shrunk to sizes of 0.5 microns and less. As a result, the interconnect resistance, being proportional to the square of the scaling factor, has increased significantly. An increase in interconnect resistance has led to an increase in interconnect delays thus making them a dominant factor in the timing analysis of VLSI circuits. Therefore VLSI circuit designers aim at finding minimum cost (spanning or Steiner) trees given delay bound constraints on source-sink connections.

  • 5.1 Introduction of MNPFor example, the problem of finding low-cost and low-transmission-delay multimedia networks can be modeled as the (Diameter, Total cost, Spanning tree)-bicriteria problem: given an undirected graph G = (V,E) with two weight functions ce and de for each edge eE modeling construction and delay costs respectively, and a bound D (on the total delay), find a minimum c-cost spanning tree such that the diameter of the tree under the d-costs is at most D. It is easy to see that the notion of bicriteria optimization problems can be easily extended to the more general multicriteria optimization problems. The applications set the stage for the formal definition of multicriteria network design problems. Marathe et al. explain this concept by giving a formal definition of a bicriteria network design problem. Marathe, M. V., R. Ravi, R. Sundaram, S. S. Ravi, D. J. Rosenkrantz, and H. B. Hunt: Bicriteria network design problems, J. Algorithms, vol. 28, no. 1, pp. 142-171, 1998.Marathe et al. study the complexity and approximability of a number of bicriteria network design problems. The three objectives considered:total costdiameterdegree of the network.

  • 5.2 Reviewing Solution Approaches for MNPa. AWA (Gen et al., 1998)Gen, M. & R. Cheng: Genetic Algorithms and Engineering Optimization, John Wiley & Sons, New York, 2000.b. RWA (Murata et al., 1998)Gen, M. & R. Cheng: Genetic Algorithms and Engineering Optimization, John Wiley & Sons, New York, 2000.c. SPEA (Zitzler et al., 1999)Zitzler, E. & L. Thiele: Multiobjective Evolutionary Algorithms: A Comparative Case Study and the Strength Pareto Approach, IEEE Trans. on Evol. Comput., Vol.3, No.4, pp.257-271, 1999.d. NSGA-(Deb et al., 2000)Deb, K., A. Pratap, S. Agarwal and T. Meyarivan: A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-, IEEE Trans. on Evol. Comput., Vol.6, No.2, 182-197, 2002.

  • 5.2 Reviewing Solution Approaches for MNPa. AWA (Gen & Cheng, 1998)Gen & Cheng (1998) proposed an Adaptive Weight Approach (AWA) which utilizes some useful information from the current population to readjust weights to obtain a search pressure toward a positive ideal point. Gen, M. & R. Cheng: Genetic Algorithms and Engineering Optimization, John Wiley & Sons, New York, 2000.For the examined solutions at each generation, they define two extreme points (maximum: z+, minimum: z-)

    where zkmax and zkmin are the maximal and minimal values for the kth objective as defined by the following equations:

    P: set of solution candidates.

  • 5.2 Reviewing Solution Approaches for MNPa. AWA (Gen & Cheng, 1998)The weighted-sum objective function for a given chromosome x is given by the following equation:

    where wk is adaptive weight for objective k :

    The equation driven above is a hyperplane defined by the following extreme points in current solutions:

  • 5.2 Reviewing Solution Approaches for MNPa. AWA (Gen & Cheng, 1998)

    Adaptive moving line defined by the extreme points (z1max, z2min) and (z1max, z2min) are shown as follows:Fig.6.7 Adaptive weights and adaptive hyperplanesubspacecorresponding to current solutionsadaptivemoving linewhole criteria space Zpositive ideal pointminimal rectangle containing all current solutionsmaximumextreme pointminimumextreme point

  • 5.2 Reviewing Solution Approaches for MNPb. RWA (Murata et al., 1998)Murata, Ishibuchi & Tanaka (1998) proposed a Random-Weight Approach (RWA) to obtaining a variable search direction toward the Pareto frontier.Gen, M. & R. Cheng: Genetic Algorithms and Engineering Optimization, John Wiley & Sons, New York, 2000.Ishibuchi, H., T. Yoshida and T. Murata: Balance Between Genetic Search and Local Search in Memetic Algorithms for Multiobjective Permutation Flowshop Scheduling, IEEE Trans. on Evol. Comput., Vol.7, No.2, pp.204-223, 2003.Fixed-weight approach gives the GAs a tendency to sample the area toward a fixed point in the criterion space. Random-weight approach gives the GAs a tendency to demonstrate a variable search direction, therefore, the ability to sample the area uniformly over the entire frontier.

  • 5.2 Reviewing Solution Approaches for MNPb. RWA (Murata et al., 1998)For a problem to maximize q objective functions, weighted-sum objective is given as the follows:

    Random-weight wk is calculated by the following equation:

    where rj are non-negative random number between [0, 1].Before selecting a pair of parents for crossover operation, a new set of random weights is specified. The selection probability pi for individual i is then defined by the following linear scaling function:

    where zmin is the worst fitness value in the current population.

  • 5.2 Reviewing Solution Approaches for MNPc. SPEA (Zitzler et al., 1999)

    Zitzler & Thiele (1999) proposed a new evolutionary approach to multicriteria optimization, the Strength Pareto Evolutionary Algorithm (SPEA), that combines several features of previous multiobjective EAs in a unique manner.Zitzler, E. & L. Thiele: Multiobjective Evolutionary Algorithms: A Comparative Case Study and the Strength Pareto Approach, IEEE Trans. on Evol. Comput., Vol.3, No.4, pp.257-271, 1999.It is characterized by:Storing nondominated solutions externally in a second, continuously updated population.Evaluating an individuals fitness dependent on the number of external nondominated points that dominate it.Preserving population diversity using the Pareto dominance relationship.Incorporating a clustering procedure in order to reduce the nondominated set without destroying its characteristics.

  • 5.2 Reviewing Solution Approaches for MNPc. SPEA (Zitzler et al., 1999)The fitness assignment procedure is a two-stage process.First, the individuals in the external nondominated set P are ranked.

    where si is proportional to the number of population members jP for which i j. n is the number of individuals in P that are covered by i and N is the size of P.

    Fig. 6.9 Two scenarios for a maximization problem with two objectives.

  • 5.2 Reviewing Solution Approaches for MNPc. SPEA (Zitzler et al., 1999)The fitness assignment procedure is a two-stage process.Afterwards, the individuals in the population P are evaluated.

    where the fitness of an individual jP is calculated by summing the strengths of all external nondominated solutions iP that cover j.

    Fig. 6.10 Two scenarios for a maximization problem with two objectives.11/816/819/813/813/816/811/8

  • 5.2 Reviewing Solution Approaches for MNPd. NSGA-(Deb et al., 2000)Deb, Pratap, Agarwal & Meyarivan (2000) suggest a nondominated sorting-based Multiobjective Evolutionary Algorithm (MOEA), called Nondominated Sorting Genetic Algorithm(NSGA-), which alleviates the three difficulties:Deb, K., A. Pratap, S. Agarwal and T. Meyarivan: A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-, IEEE Trans. on Evol. Comput., Vol.6, No.2, 182-197, 2002.Computational complexityNonelitism approachThe need for specifying a sharing parameterThey presented the proposed NSGA- approach:Fast nondominated sortThey first sorting a population into different nondomination levels.Nondomination rank (Ri);Crowding distance assignmentThe crowding-distance computation requires sorting the population according to each objective function value in ascending order of magnitude.Crowding distance (Di)

  • 5.2 Reviewing Solution Approaches for MNPd. NSGA-(Deb et al., 2000)The new population Pt+1 is now used for selection, crossover, and mutation to create a new population Qt+1.It is important to note that they used a binary tournament selection operator, but the selection criterion is based on the crowded-comparison operator n .Crowded-comparison operator is defined as follows:

    where, Ri is nondomination rank and Di is crowding distance

  • 5.3 Numerical ExamplesTest Problems:For examining the effect of different solution approaches of multiobjective GAs, we applied SPEA, NSGA, RWA and AWA to the 2 test problems. Munakata, T. & D. J. Hashier: A genetic algorithm applied to the maximum flow problem. Proc. of the 5th Inter. Conf. on Genetic Algorithms, San Francisco, pp.488-493, 1993.Using the following parameter specifications. Population size: popSize =20Crossover probability:pC =0.70Mutation probability:pM =0.50Immigration rate:=3Stopping conditions: Evaluation of 5000 solutions.Each algorithm was applied to each test problem 20 times (i.e., 20 runs) using different initial populations.All the simulations were performed with Java on Pentium 4 processor (1.5-GHz clock).

  • 5.3 Numerical ExamplesTest Problems:The first numerical example, presented by Munakata & Hashier, was adopted. The problem comprises 25 nodes and 49 arcs. It is given as follows: ijcij , uij

  • 5.3 Numerical ExamplesTest Problems:The second numerical example, presented by T. Munakata & D.J. Hashier, was adopted. The problem comprises 25 nodes and 56 arcs. It is given as follows: ijcij , uij

  • 5.3 Numerical ExamplesReference solution set S* :The reference solution set S* of each test problem was found using the SPEA, NSGA-2, RWA, and AWA.