Systems and Computers in Japan, Vol. 37, No. 7, 2006 Translated from Denshi Joho Tsushin Gakkai Ronbunshi, Vol. J85-D-I, No. 1, January 2002, pp. 21–30
A Genetic Algorithm for the Optimization of Cable Routing
1
1
2
1
1
Xuan Ma, Kazuhiro Iida, Mengchun Xie, Junji Nishino, Tomohiro Odaka, and Hisakazu Ogura
1
1
Graduate School of Engineering, University of Fukui, Fukui City, 910-8507 Japan 2
Wakayama National College of Technology, Gobo City, 644-0023 Japan
SUMMARY
1.
In this paper the authors propose a structural method for a genetic algorithm (GA) for the optimization problem of cable routing in which cables have to be laid optimally. When there are no limits on the layout routes, the optimal routes for the individual cables can be found using the Dijkstra method in a finite discrete graph. However, However, when there are limits on the capacity in the layout routes, optimization cannot be performed using the Dijkstra method. The proposed GA is a two-level hierarchical GA that uses chromosome coding involving two levels. The routes for each cable and the combinations of cable routes are defined respectively, and layout route selection is optimized overall through genetic operations involving these levels. Block crossover and block mutation are used as genetic operations in the first level. In addition, a method to take advantage of lethal genes, which do not satisfy the constraints and are generated in the second level is used. Computer simulations confirm that the two-level hierarchical GA with these genetic operations functions effectively effectively for the optimization problem of cable routing. © 2006 Wiley Periodicals, Inc. Syst Comp Jpn, 37(7): 61–71, 2006; Published online in Wiley InterScience (www.interscience.wiley.com). DOI 10.1002/scj.10250
Introduction
The problem of optimizing cable route selection is a problem of optimizing overall the different number and types of cable paths that can be created between various devices and equipment in a building. For one cable, this is equivalent to the problem of finding an optimal path between two nodes in a finite discrete discrete graph, and solutions can be found in algebraic time using the Dijkstra algorithm [1]. However, in general there are limits to the amount of cable that can be accommodated when laying lines (wiring tray). The problem of selecting optimal wiring paths under such constraints for several several cables is NP-hard [2, 3], and solving the problem of selecting optimal cable routes on a practical scale is at present difficult. In this paper the authors propose an effective effective method using a genetic algorithm (GA) [4] for solving the problem of optimizing cable routing. When there are no constraints on the accommodations for the cable tray, the shortest path for each cable in the problem of optimizing cable routing can be found using the Dijkstra algorithm. When the constraints are present for the cable tray, routing is performed by eliminating any tray that does not satisfy the constraint conditions applying the Dijkstra algorithm sequentially. sequentially. Therefore, the superiority of the results ultimately obtained is highly dependent on the sequence in which the cables are laid. In general, people determine this sequence using experience and intuition, and create a final proposed layout through repeated trial and error. error. A GA can perform searches stochastically stochastically in parallel by representing candidate solutions to the problem as chromosomes [4], and so is efficient efficient for finding an exact solu-
Key words: optimization of cable routing; path search; combinatorial optimization; block crossover; hierarchical GA.
© 2006 Wiley Periodicals, Inc. 61
tion or an approximate solution for problems that require this form of trial and error. In power generation facilities and other massive installations, several thousand to tens of thousands of power cables and communications cables of various ratings are used between different types of equipment and devices. The trays used to lay out cable are planned during the design phase for the building and then set up. The route for each cable is created using arrays of trays with cables laid out. If a tray is considered an edge and the intersection (bifurcation) of a tray and a device or piece of equipment is considered a node, then the overall routes consisting of the trays and the equipment or devices can be taken to be a discrete graph. This will be referred to as a tray graph below. The cable routes can also be represented as arrays of nodes in the tray graph. Each cable has a rated thickness based on its classification, and each tray has a layout capacity that matches the ratings. As a result, the cable routes have limitations. Depending on the class of the cable, it may be placed in a tray of a particular type. The overall cost for the cables used, that is, their overall length, can be minimized in this kind of cable routing based on the given tray setup and capacity limitations. For an exact solution in the optimal cable routing problem, the shortest route for each cable or the next shorter route can be considered. In the two-level hierarchical GA proposed in this paper, a chromosome is represented using a two-level structure so as to integrate representations of all route selections using each cable’s route and route combinations. Then the GA is applied to each level. These GAs are referred to as the first-level GA and second-level GA. In the first-level GA, several good routes (shortest or approximately shortest routes) are found for each cable, and then in the second-level GA, the optimum combination of the good routes for each cable is found. In the first level GA, in which good routes for each cable are found, block crossover and block mutation methods are used in order to improve the efficiency of the route search. Next, the routes are combined optimally using the second-level GA. Chromosomes that do not satisfy the constraints for the tray are referred to as lethal genes, and such lethal genes may be formed in the second-level GA. Lethal genes are eliminated from the next generation in general. However, some good genes (building blocks) may exist in the lethal genes. The authors also evaluated a method to take advantage of the building blocks that these lethal genes have. In this paper the effectiveness of the proposed GA is confirmed through computer simulations. In Section 2, the authors briefly explain the tray graph use to address the optimizing problem of cable routing. Section 3 explains the two-level hierarchical GA used for the problem of optimizing cable router, genetic operations proposed for the first time here, a method for block crossover and block mutation, and a method to take advantage
of lethal genes. In Section 4 the experimental results of computer simulations using the proposed GA are given. Section 5 presents a discussion of the experiments.
2.
The Cable Routing Optimization Problem
The cable routing optimization problem is as follows. There exists a network of cable trays that link equipment and facilities already set up. Cables are laid out in the tray network with facilities and equipment as points of origin and destination. Each tray has allowed capacity for cables, and no more cables than that capacity can be laid in a tray. Given these constraint conditions, a route from the point of origin to the destination for each cable is selected, and a routing plan that minimizes the total routing length for all cables is found. This represents the optimization problem. Here, for the sake of simplicity, the types of cable and tray ratings are unified, and the constraints are deemed to be conditions related to the number of routes. A tray network is represented using a tray graph as discrete graph, with the junctions (branching) and end points of the trays and the connecting points of equipment and devices as nodes, and the trays as edges. Figure 1 gives a model of the tray graph used in the computer simulations in this research. In this figure, a circle represents a node, and the number in the circle represents the number of the node. The number on an edge represents the length of the tray. Here, for the sake of simplicity, the cost of a cable layout is deemed to be the length of the tray along the layout route.
Fig. 1. Example of the tray graph model.
62
The cable routing optimization problem in question here can be readily formalized. Let G = (V , E ) be a particular undirected discrete graph. V represents a set of nodes, and E represents a set of undirected edges. A positive cost is assigned to each edge. The cost C is the mapping from E to a positive real number such that C : E D ℜ+. n routes are set up in G. The k -th route T k is the route from the starting node ak to the ending node bk . The route is represented in the order of the edges comprising the route (or in node sequence). The proposed routes for all cables, that is, the set of n routes in G, is given by P = {(ak , bk , T k )|k = 1, . . . , n}. The cost C (T k ) for the route T k is the sum of the costs for the edges comprising the route:
operations for genes at each level are defined. The GA for the cable route optimization problem using the authors’ method is referred to as a two-level hierarchical GA. In the first-level GA, the route representation in the representation of the chromosomes uses a list of the label (number) for the node in order. However, this list representation requires genetic manipulation of the chromosomes. The authors used a method for block crossover and block mutation proposed in the next section. In the secondlevel GA, lethal genes, the chromosomes that do not satisfy the constraints, are sometimes generated. The number of lethal genes generated depends closely on the tray capacity B. If the number of lethal genes generated is too high, then the efficiency of the GA drops, and, moreover, evolution performance deteriorates. However, even if there are lethal genes in a particular generation, the genes inherit genetic information (building blocks) for the traits that are superior over several generations. In order to make the most of such genetic information, the authors used lethal genes without discarding them in their GA.
(1)
Let the set S be the constraint conditions for G, the cable routing optimization problem becomes a matter of determining P for F where the total cost of P is minimized under the conditions S: (2)
3.2. The constraints S are
3.2.1. Representing chromosomes (3)
The layout path P for all of the n cables is coded genetically by dividing it into the following two hierarchical levels. There are normally several candidate routes for route T k of the k -th cable, from the starting node ak to the ending node bk . A codon pool M k of route candidates is created by selecting M candidates for the k -th cable route in P. The elements (candidate routes) in M k represent the route from ak to bk as a series of nodes. Each element in M k is given a route number of 1 ~ M . Q elements in M k with good evaluation values are selected in sequence, and then comprise the candidate list Lk . Lk is a first-level chromosome. Next, the layout route P for all of the n cables is represented issuing the chromosome g for the length n, thus creating a second-level chromosome. The k -gene locus for g represents the route T k for the k -th cable. The value gk for the k -gene locus of g represents the route number in the candidate list Lk , and the gk route in Lk is T k . The route T k shall be referred to as the codon for the k -gene locus. Lk is the k -th codon candidate list. Therefore, the chromosome g corresponding to the second-level chromosome, that is, the layout path P with n routes, takes the numerical string of 1 ~ Q for n. A particular chromosome g represents a different layout route with n routes when the elements in the candidate list Lk are varied. In the authors’ method, the chromosome representation for the problem of cable route optimization involves two levels. Below, the first-level chromosome h consisting of the set of the candidate route (candidate
where the capacity for e with respect to the edge e ∈ E is Be, and the number of routes passing through the edge e in the proposed routing P is b(e). Each cable is represented as a route between two nodes, a starting node and an ending node, in the tray graph. A single route is represented as a series of edges or a series of nodes. Note that here, for the sake of simplicity, the capacity of an edge is B for all trays. (4)
3. Using the Genetic Algorithm for the Cable Routing Optimization Problem 3.1.
GA for selecting optimized cable routes
Hierarchical GA for the cable routing optimization problem
The authors used a strategy consisting of two levels for the cable routing optimization problem. Finding several optimal solutions (shortest or almost shortest routes) for each cable involves the first-level GA, and then finding an optimal combination of the routes for all the cables requires the second-level GA. A two-level coding method is used for the coding of the chromosomes. The genes in the first level represent the cable routes, and the genes in the second level represent the cable combinations. In the GA here, genetic
63
codon) list Lk for the cables is referred to as the codon chromosome. For instance, Fig. 2 shows an example of a representation of a chromosome where the number of cables is n = 5 and the number of elements in Lk is Q = 5. This example was created based on the graph model in Fig. 1. In this representation, the gene locus for the upper chromosomes corresponds to the cable number, and the value for the gene locus represents the number of candidate codons (routes) in the k -gene locus in the lower codon chromosome. The length of the individual chromosomes is five, the same as the number of cables. The value of the first gene locus in the individual chromosome in the figure is two, and as a result the first cable has the route 13-12-3-2-1, which is represented by the second candidate codon. In the same fashion, the fact that the value of the second gene locus is four means that it has the route 17-36-35-16-15-43-2, which the second cable represents with the fourth codon. The candidate codon, which represents the route for the cables in the codon chromosome, is represented using a node label (number) series. For instance, Fig. 3 shows an example of a candidate codon for a route with node 17 as the starting point and node 2 as the ending point in the graph in Fig. 1. The candidate codon for the k -gene locus is evaluated using the route length C (T k ) for the route T k it represents. The evaluation of the individual chromosome g is the F (P) [Eq. (2)] for the sum of length of the route represented by each candidate codon. Unless otherwise stated, the candidate codon representing the value of the k -gene locus in the individual chromosome g and the corresponding route are both represented with T k . The evaluation value for the chromosome is better when it is smaller. 3.2.2.
Fig. 3.
Example of a codon.
genetic operations in the list Lk of candidate codons in first-level codon chromosomes. These genetic operations are applied to all of Lk (k = 1 ~ n). (1) Block crossover The fitness value v(T i) of the candidate codon T i, i = 1, . . . , M , in the candidate codon pool M k corresponding to Lk is determined as follows: (5) Note, however, that C Tav is an average value of the evaluation values for the candidate codons in M k in that generation. Mating, in which the parent pair used for crossover is selected from M k , is performed using a roulette method using the fitness value. Here, the mating method allows repeated selection. In this mating m1 parent pairs are selected. Block crossover is fundamentally a single-point crossover. It is performed as follows. The explanation is given with reference to Fig. 4.
First-level genetic operations
For the coding method described above, the authors define the following block crossover and block mutation as
Fig. 2. Example of a representation of a chromosome.
Fig. 4.
64
Block crossover.
at random from the node series in the selected codon. Next, a route linking the two selected nodes is created, and the node series for it is designated as the mutation codon. The node series between the two nodes in the original candidate codon is replaced with the mutation codon.
a. Block formation The parent pair for crossover selected from M k for mating is designated P1 and P2. First, a block length is selected at random for the parent pair, and block 1 (block11 and block21) are identified, as shown in the figure. Next, when the node adjacent to the final node 15 in block 1 (block11) in P1 is searched using the next node in block 1 (block21) in P2, 4 results. Consequently, from the found node position to the last node is deemed block 2 (block22) in P2. In the same fashion, when the node adjacent to the final node 5 in block 1 (block21) in P2 is searched using the next node in block 1 (block11) in P1, 4 results. Consequently, from the found node position to the final node is deemed block 2 (block12) in P1. Crossover is then performed using the codon chromosomes obtained in block 2 as the parent pair. When block 2 is not obtained, a parent pair is created using a different codon chromosome. When nothing is found after searching the entire pool, a parent pair is selected by altering the block length. Selection is repeated using the codon chromosome pool until m1 parent pairs are obtained.
(3) Selection The next generation M k is created by adding H k obtained in (1) and (2) and selecting M individuals randomly from M k . However, when more than one of the same candidate codon exists, only one is allowed. The method for the alternation of generations follows the continuous generation model. Of the elements in M k , Q are selected from among those with better evaluation values, and the candidate list Lk is created. 3.2.3. Second-level genetic operations Next, genetic operations are performed on the individual chromosomes representing the combinations of second-level chromosomes, that is, routes. Let G represent the set of individual chromosomes consisting of N elements. G is then the group (pool) of individual chromosomes.
b. Block crossover
(1) Crossover and mutation
The child codon S1 is created by connecting block 1 in P1 and block 2 in P2. In the same fashion, the child codon S2 is created by connecting block 1 in P2 and block 2 in P1.
The fitness v(Pi) of the candidate chromosomes Pi, where i = 1, . . . , N in G can be determined using the following equation in the same form as Eq. (6) based on the evaluation value C (Pi) for Pi:
c. Eliminating duplicate gene loci The existence of duplicate nodes in a codon after crossover means that there is a closed loop in the route represented by the codon. As a result, one of the duplicate nodes and the node in between must be eliminated from the codon. The child codon pool H k is created using all of the child codons obtained from the above procedure as candidate codons in the next generation M k .
(6) Note that C Pav is the average value in the pool of the candidate chromosomes in G for that generation. For crossover in the individual chromosomes, first the parent pairs for crossover are selected using the roulette method taking advantage of the fitness of the individual chromosomes defined in Eq. (6). In this mating, m2 parent pairs are selected. A two-point crossover is performed on the selected parent pairs. The individual chromosomes of all of the resulting children comprise the pool G1. Next, point mutation is used with a mutation probability of Pm2 for the individual chromosomes in G1. In this point mutation, the gene loci for the individual chromosomes are chosen at random, and the value for the gene loci are replaced by selecting an allele (candidate codon number 1 ~ Q in Lk ) at random. The individual chromosomes with mutations in this fashion are added to G1.
(2) Block mutations Next, block mutations will be explained while making reference to Fig. 5. First, one codon is selected from the child codon pool H k using the mutation rate Pm1, and two nodes are selected
(2) Lethal gene processing
Fig. 5.
Lethal genes are processed for rebirth in order to take advantage of the individual chromosomes that do not satisfy the constraint conditions, that is, the good portion of the lethal genes. After the gene pool G1 for the individual
Block mutation.
65
(4) H k is added to M k and evaluated. Then, by random selection, the candidate codon pool M k for the generation t + 1 consisting of M elements is created. Next, the uppermost Q elements are selected from M k , and they comprise the candidate list Lk . The above processes in (1) through (4) are repeated for k = 1 ~ n, and the next-generation codon chromosome set { M k } is created.
chromosomes in the next generation of candidates, the object of selection in the second-level genetic operations, is created, the lethal gene pool is created by collecting only the lethal genes included in G1. Crossover and mutation are repeated in the lethal gene pool. As a result, individual genes that are not lethal are returned to the pool G1 as individual chromosomes in the next generation of candidates. In order to promote rebirth, the mutation probability Pmh is set high, and is set for multipoint mutation.
[Step 3] Evolution of the set of individual chromosomes G
(3) Selection
(1) m2 parent pairs are selected from G using the roulette selection method. (2) Two-point crossover is performed on each parent pair, and the resulting child chromosomes are placed into the next-generation candidate pool G1. (3) Point mutation is performed on the individual chromosomes selected from G1 at probability Pm2, and then the resulting individual chromosomes are placed into G1. (4) The individual chromosomes in G1 are evaluated. The individual chromosomes that do not satisfy the constraints are designated as lethal genes. (5) The lethal genes in G1 are transferred to the lethal gene pool, and then rebirth processing is performed on the lethal genes. The reborn individual chromosomes are evaluated and added to G1. (6) G1 is added to G. Using the rank selection method, N individual chromosomes are selected from G, and the t + 1 generation of individual chromosome set G is created. Steps 2 and 3 are repeated until the final generation is reached. The value of a gene locus in an individual chromosome represents the route number for a cable. As a result, the same route number can represent a different route. Consequently, the individual chromosomes are evaluated as pairs of codon chromosomes in a generation.
The resulting G1 is added to G, and N individual chromosomes are selected using the rank selection method from among the individual chromosomes in the nonlethal genes in the pool G of individual chromosomes, and the next generation G is created. When more than one of the same candidate codon exists, only one is allowed. The method for the alternation of generations follows the continuous generation model. 3.3. The hierarchical GA algorithm The hierarchical GA algorithm created in this paper is summarized below. [Step 1] Initialization (1) The final generation for evolution is set with the candidate list number Q for the codons in the first-level GA, the group size M for the codons, the mating pair number m1, the mutation rate Pm1, the second-level GA group size N , the mating pair number m2, the mutation rate Pm2, and the number n of cables. (2) M candidate codons representing the routes for the k -th cable are created, and the initial codon pool M k is created. The uppermost Q elements are selected from M k and designated Lk . This is repeated for all of the cables, and the set { M k } of codon chromosomes is created. (3) N individual chromosomes consisting of length n and gene locus values of 1 ~ Q are created, and comprise the initial set pool G. (4) The number of generations is set so that t = 0.
4.
Simulations
In this section the authors describe the results of performing experiments using computer simulations to evaluate the performance and effectiveness of the proposed GA method for the problem of cable route optimization. First, the authors explain setting up the problem of cable route optimization. The purpose of this experiment is to verify the effects in a small-scale problem in order to evaluate the two-level hierarchical GA proposed for the problem of cable route optimization. As can be seen in Table 1, the authors created three types of graphs with shapes similar to what is found in Fig. 1. | V | in Table 1 represents the number of nodes, and | E | represents the number of edges. The length ei of an edge is generated at random
[Step 2] Evolution of the codon chromosome set { M k} (1) m1 parent pairs are selected from M k using the roulette selection method. (2) Block crossover is performed on each parent pair, and the resulting child codons are put into the candidate codon pool H k for the next generation. (3) Block mutation is performed on the candidate codons selected from H k at probability Pm1, and the resulting candidate codons are placed in H k .
66
Table 1.
Graph and data
lower limit for the evaluation value in the problem of cable route optimization. When there are constraints conditions, the n cables are laid in sequence using the optimal routes found using the Dijkstra method. At this point, the tray for which the number of cables laid represents the upper limit of the constraint condition are excluded, and the Dijkstra method is applied. In this fashion, the total length of the resulting layout routes depends on the sequence in which the cables are laid. The complete sequence for n cables is searched for while pruning using the branch and bound (BB) method, and the resulting shortest total length represents the optimal cable route. Here, this approach is called the BB-Dijk method. The search time in the BB-Dijk method rises dramatically as n increases. To represent the problem of finding an optimal solution, in this experiment the number of cables was set to 10, and 3 as the constraint conditions were used for all the trays. For the selected 10 cables, the shortest routes were found using the Dijkstra method when there were no constraint conditions with respect to the tray nodes in Fig. 1. The total length of the cables was 3292. With respect to the routes, Table 2 lists the trays which th e various cables pass through given a capacity of at least three cables. In the BB-Dijk method, the total length was just 3500. The two-level GA was run through 10 separate trials on this problem. Figure 6 shows the generational changes for an average of 10 evaluation values for the elite individuals in each generation. During the 10 trials, the best evaluation value for the elite individuals was 3500, obtained seven times. The worst evaluation value among the elite individuals was 3527, and the average value for the 10 trials was 3503.3. Computation time under the BB-Dijk method was about 1 hour to search all of the cable layout sequences. In the GA, the calculations for the 10 trials took under 4 minutes (the computer used was a Pentium III 800 MHz with 512 MB of memory). However, because the computational burden rises by n! under the BB-Dijk method where n is the number of cables, the computational time increases exponentially. In the GA, the trial time depends on the set size and the number of generations used, and is fundamentally a polynomial time algorithm. Therefore, for a larger n, the GA method may only produce a near-optimal solution, but its computational time is vastly better. Next, the authors describe an experiment involving 60 cables. The problem here involves a total cable length of 16,112 found using the Dijkstra method when there are no constraint conditions.
within a numerical range given in Table 1. Three sets of data are created for each tray graph. Next, the method for generation of the initial set and the parameters for the GA are explained. In accordance with the coding method described in Section 3.2.1, first the set of n codon chromosomes { M k |k = 1, 2, . . . , n} corresponding to the route candidate list Lk is generated at random in accordance with the tray graph. Next, the individual chromosome set corresponding to the n layout routes P is generated at random. When the restriction are not satisfied, this is repeated until all chromosomes in the initial set satisfy them. The mutation rate and the set size, both GA parameters, are usually set experimentally. In this research, the authors determined them by performing preparatory experiments. In first-level genetic operations, trials were run several times over a range of 0.01 ~ 0.1 in increments of 0.01 for the mutation probability. As a result, the authors determined that 0.05 was a good average evaluation rate for the elite in each generation. Consequently, 0.05 was used. In the second-level genetic operations, because the individual chromosomes are multivariate oppositional genes, a slightly higher mutation rate was used. In the same fashion, trials were run over a range of 0.05 ~ 0.2, and as a result of a similar determination, 0.1 was chosen. The set size has a substantial influence on the results [5]. Preparatory experiments using a set size of 30, 50, 100, and 200 yielded results similar to when the set size was above 50. As a result, in this experiment the set size M for the codon chromosomes and the set size N for the individual chromosomes were both set to 50. The final generation was set to 200. The continuous generation method was used for the alteration of generations. 4.1. Effects of the two-level GA based on preparatory experiments An optimal solution for the problem of cable route optimization can be found using the following method. When there are no constraints, the sum of the minimum lengths for each cable represents an optimal solution, and so this yields a lower limit for an exact solution. This lower limit can be readily obtained when the minimum length for each cable is found using the Dijkstra method. The sum of the minimum lengths for all the cables at this point is the
Table 2.
67
Number of cables through a tray
Fig. 6.
found for the three tray graphs given in Table 1 using a GA consisting of block crossover and block mutation. Table 4 lists the best, worst, and average values for the evaluations obtained as a result of 10 trials for each tray. The best values all match those found under the Dijikstra method. Moreover, several routes that were almost the shortest were fou nd using the same approach for the cables. The example given in Table 5 represents the top five routes found for routes between node 31 and node 43 with the edge length shown in Fig. 1. These routes match the exact solutions. The Dijkstra method is an algorithm for finding the shortest route, but it cannot find the next shortest route or other shorter routes as is. GA is better at finding near-optimal solutions. By taking advantage of comparatively simple block crossover and block mutation, several solutions that are almost the shortest can very likely be found. In the experiments in the next sections, the authors created three separate problems for the three tray graphs given in Table 1. The experiments were run with 40, 60, or 90 cables. Below, the results of an experiment in a tray graph with 49 nodes and 84 edges, and involving 60 cables, are given. Similar results were found for the other cases.
Comparison of solutions.
The best numbers found using the Rand-Dijk method and the Rand-BB-Dijk method are compared. The Rand-Dijk method involves finding the cable routes using the Dijkstra method by selecting at random cable layout sequences for all of the cables. In this experiment, within the time of 10 trials of the GA, the 10,000 trials of Rand-Dijk are performed to find the best value. The Rand-BB-Dijk method involves finding solutions for some cables using the RandDijk method, and then finding solutions for the remaining cables using the BB-Dijk method. In the experiment the best values were found by running 20 trials in which the Rand-Dijk method was used for 50 cables, and the BB-Dijk method was used for the remaining 10 cables. The BB-Dijk method requires a considerable amount of time for trials, and when the number of cables for the BB-Dijk method is reduced, the best solution is often a local solution. Note that in the 20 trials, more than 10 hours was needed. Table 3 summarizes the results of the experiment. The time for 10,000 trials under the Rand-Dijk method was roughly the same, 4 minutes, as the time for 10 trials in the two-level GA method. It is clear that the two-level GA method yields better layout routes in 10 trials up to 200 generations. The execution time is also superior under the two-level hierarchical GA.
4.3. Effects of the number of list candidates on GA performance The number Q of list candidates in the proposed GA significantly impacts the GA search performance. The authors analyzed the effects of Q where the constraints included an allowed number of cables in each tray of B = 18. The two-level GA was run through 10 trials for a cable number of 10, 20, and 30. Lethal genes were not used in
Table 4.
4.2. Effects of block genetic operations The authors evaluated the effects of block crossover and block mutation. Several routes between nodes were
Table 3. Resolution of best, worst, and average of the elite
68
Resolution of best, worst, and average
Table 5.
Table 6.
Example of the shortest routes
Comparison of using lethal genes
advantage of lethal genes increases the total processing time by roughly 3% (8 seconds) when lethal genes are used under experimental conditions that are otherwise the same, but the solutions are far better. This means that the lethal genes include superior qualities as building blocks, and by bringing them back the building blocks can contribute to the evolutionary process.
this experiment. Figure 7 shows the generational changes in the average evaluation number for the elites in each generation. As can be seen in Fig. 7, it is clear that as the value of Q increases, the convergence of the evaluation value for the elites is delayed. When the value of Q rises, the search time for a solution increases, and when the value of Q is too low, the number of route combinations is too small, thus increasing the possibility of a local solution emerging. Figure 7 makes clear that the possible selections when Q = 5 are too limited. In the experimental below Q = 10 was used.
5. Conclusion In this paper the authors proposed the creation of a hierarchical GA for the problem of cable route optimization. The problem of cable route optimization is a problem consisting of two levels: searching for routes and combining routes. Because of constraint conditions in which there is a limit to the cable capacity of a tray, the problem of cable route optimization is different from a simple problem of searching for optimum routes, and instead becomes one of selecting optimum combinations from several candidate routes within the constraint conditions. In other words, this is a problem that is similar to the multiple-choice knapsack problem [5–7]. As a result, the authors proposed a hierarchical GA which focuses on chromosome coding with a hierarchical structure for the problem of cable route optimization. In this paper the authors used two levels of chromosome coding in combination with a hierarchical structure for the problem of cable route optimization. In the GA, the key point is having the GA operate efficiently: how to code the problem in question as chromosomes and how to define the corresponding genetic operations. In the past, genetic operations corresponding to various coding methods [8, 9] have been proposed. However, when the problem is complex, it is often difficult to represent using only a singlelevel (one-dimensional series) chromosome. The chromosomes with a compound structure proposed in this paper are therefore necessary. Depending on the format of the problem to be solved, the problem’s structural space and the GA’s search space may have different structures. As a result, solutions that cannot be implemented may appear or lethal genes may result, depending on the coding and the crossover and mutation methods used. Because the route representation and gene formats are different in conventional route searching GAs, caution is required with respect to the relationship between the problem’s structural space and the GA’s search space. In the proposed methods for
4.4. Effects of the method using lethal genes The authors evaluated the active use of lethal genes generated by genetic operations when the constraint conditions were severe. If the superior building blocks borne by the lethal genes generated can be used effectively, then improvements in the efficiency of the GA can be gained. The evaluation experiment was performed for a problem with a cable number of n = 60 and constraint conditions of B = 18, and with a candidate codon list in which Q = 10. Ten trials were run with a GA that makes active use of lethal genes and one that does not, and the results were compared. Table 6 lists the best and worst evaluation values for the elites obtained in the 10 trails, the average evaluation value for the 10 elites, and the time required for the 10 trials. As can be clearly seen in Table 6, the method that takes
Fig. 7. Generational changes in the average evaluation value for the elite with respect to different candidate list numbers.
69
block crossover and block mutation, the strings representing the routes are used as is as candidate codons. Consequently, the search space for the first-level GA is the same as the solution space for the problem of finding routes (candidate codons) for each cable. Thus, the appearance of candidate codons that do not represent continuous routes is avoided. Several GAs have been proposed [8, 9, 12, 13] for route searches without constraints, and the GA proposed in this paper can be used for such networks. In this paper, for the sake of simplicity the authors assumed that the constraint defining the capacity of a tray is the same for all trays. However, no problem results if the constraints vary with each tray. When the constraints are severe, lethal genes that do not satisfy the constraints are readily produced. In some cases, an exact solution (a solution that satisfies the constraints) may not exist. In such cases as well, the twolevel GA in the authors’ method can be used under the same framework by extending their method through fuzzy logic for the constraints and reflecting in the evaluation values the extent to which the constraints are satisfied, and a near-optimal solution that respects the constraints to some extent can be found. In this paper the authors proposed a two-level GA with two-level chromosome coding for the problem of cable route optimization. This is a GA that hierarchically combines a route search GA and a route combination GA. Experiments involving computer simulation confirmed that the method of block crossover and block mutation is effective for route searches, and that the proposed GA functions effectively for the problem of cable route optimization.
2. Sedgwick R (editor), Noshita K, Hoshi M, Sato T, Taguchi A (translator). Algorithms, Vol. 3. Kindai Kagakusha Publishing; 1992. 3. Iwasaki T, Ota K, Nakagawa Y, Miyashita F, Naruhisa Y. Approximation method for nonlinear integer programming problems. Trans IEICE 1997;J80A:1439–1443. 4. Holland JH. Adaptation in natural and artificial systems. University of Michigan Press; 1975. 5. Ma X, Xie M, Nishino J, Odaka T, Ogura H. Application of generation schemata to multiple value coding system in MCKP. Trans IEICE 2000;J83-D-I: 1214–1218. 6. Sinha P, Zoltners AA. The multiple-choice knapsack problem. Oper Res 1979;27:503–614. 7. Armatrong RD, Kung DS, Sinha P, Zoltners AA. A computational study of a multiple-choice knapsack algorithm. ACM Trans Math Software 1983;9:184– 198. 8. Leung Y, Li G, Xu ZB. A genetic algorithm for the multiple destination routing problems. IEEE Trans Evol Comput 1998;2:150–161. 9. Esbensen H. Computing near-optimal solutions to the Steiner problem in a graph using a genetic algorithm. Networks 1995;26:173–185. 10. Schultz AC. Adapting the evaluation space to improve global learning. Proc 4th International Conference on Genetic Algorithms, p 158–164, 1991. 11. Kitano H. Genetic algorithms. Sangyo Tosho Publishing; 1993. 12. Yamamura Y, Ono T, Kobayashi S. Character-preserving genetic algorithms for traveling salesman problem. J Japan Soc Artif Intell 1992;7:117–127. 13. Inagaki J, Haseyama M, Kitajima H. A method of determining various solutions for routing application with a genetic algorithm. Trans IEICE 1999;J82-DI:1102–1111.
REFERENCES 1. Eio AV, Hopcroft JE (editors), Ono Y (translator). Data structure and algorithms. Baifukan Publishing; 1996.
70
AUTHORS (from left to right)
Xuan Ma graduated from the Department of Precision Instrument at Xi’an University of Technology (China) in 1983. He enrolled in the Graduate School in 1989, completed his master’s course in 1992, and became a lecturer there. He went to Japan in 1997 and completed his doctoral course at the University of Fukui in 2002. He returned to China and is now an associate professor in the Faculty of Automation and Information Engineering, Xi’an University of Technology. He holds a D.Eng. degree, and is pursuing research related to information processing. Kazuhiro Iida graduated from the Department of Informatics at Fukui University in 1999 and completed the master’s and doctoral courses at the University of Fukui in 2001 and 2005. He is now an instructor at the IB Techno College and teaches computer science and practical information techniques. Mengchun Xie received her M.S. degree in mechanical engineering from Xi’an University of Technology (China) in 1988 and D.Eng. degree from Fukui University in 1997. She is now an associate professor in the Department of Electrical and Computer Engineering, Wakayama National College of Technology. Her research focuses on knowledge representation, knowledge processing and modeling in the fields of artificial intelligence, computer simulation, and multiagent systems. She is a member of the Information Processing Society of Japan and the China Mechanical Design Society. Junji Nishino received his B.S. degree in control engineering and M.S. degree in systems science from Tokyo Institute of Technology in 1990 and 1992. He has been an assistant professor in the Department of Systems Engineering, University of Electro-Communications, since 2001. He received a research encouragement award from the Japanese Society for Artificial Intelligence in 2001. His research interests include intelligent/information systems, linguistic fuzzy system theory, and fuzzy intelligent controls. He is a member of the Japan Society for Fuzzy Theory and Intelligent Informatics, the Information Processing Society of Japan, the Japanese Academy of Facial Studies, and the Japan Society of Kansei Engineering. Tomohiro Odaka (member) received his D.Eng. degree from Waseda University in 1990. He is now a professor in the Graduate Program of Nuclear Power and Energy Safety Engineering, Graduate School of Engineering, Fukui University. He is a member of IEEE CS, ACM, IPSJ, IEICE, and JSMBE. His research activities focus on user modeling, network security, biomedical signal processing, intelligent human interface, and computer-aided instruction. Hisakazu Ogura (member) completed his doctoral course at Kyoto University in 1977. After serving as an assistant professor and associate professor at Kochi Medical School, he moved to the Department of Information Science at Fukui University, and is now a professor in the Department of Human and Artificial Intelligent Systems. He is engaged in research in fields such as GA, NNW, fuzzy language, language representation, medical image analysis, and medical information processing, with a focus on the representation, acquisition, and processing of knowledge. He holds a D.Sc. degree, and is a member of IEICE, IPSJ, JSAI, the Japan SOFT, IEEE, and ACM.
71