Genetic Algorithm Based Interconnection Network Topology Optimization Analysis 1 WANG Peng, 2 Wang XueFei, 3 Wu YaMing 1,3 College of Information Engineering, Suihua University, Suihua Heilongjiang, 152061 WangPeng2012@126.com 2, School of Electrical Engineering, Suihua University, Suihua Heilongjiang, 152061 Abstract As the size of distributed systems becomes larger and larger, route planning is an important issue in such systems. However, an optimal topology of such systems could make route planning more efficient, and improve the performance of these systems a lot. In this paper, we aim to optimize the topology of interconnection networks in these distributed systems to make route planning more efficient. We formalize this optimization problem into an integer programming problem, and proposed a genetic algorithm based topology optimization algorithm. Experiments on real and artificial datasets show that our proposed algorithm is not only more efficient than traditional artificial intelligence algorithms, but also has the smallest difference with respect to the optimal solution. 1. Introduction Keywords: Genetic Algorithm, Interconnection Network, Topology One of the most important components of a computer system is its interconnection network, as it defines the physical layout of such systems. An interconnection network may consist of nodes which represent computers, switches, terminals, or printers, and edges which denote communication links. These links can be conventional telephone lines, optical fiber cables or microwave channels. In such systems, each node communicates with others across the links. As the number of the nodes in such systems becomes bigger and bigger, which make communication in such systems a heavy problem, route planning is a hot research in computer networks. Therefore, the suitability of such a network for various scientific and engineering applications can be assessed by careful analysis of its performance in terms of its route planning. So, there is always a challenge to design a highly reliable system, which is quite economical. An important stage of the design of such systems is to find the best layout of components to minimize cost while meeting a performance criterion, such as the route planning. In interconnection networks [1], an optimal topology is a structure that both satisfies the route planning and minimizes the cost of the system from the perspective of route planning. In topology optimization, one usually starts with a ground structure. The member set of an optimal structure is a subset of members of the selected ground structure. Hence, topology optimization is the optimal problem of finding a subset from a complex interconnection network. In this paper, we formalize this problem into finding a minimal spanning tree from a graph. A general definition of the topological design problem for a large hierarchical network is found in [2]. Genetic algorithm (GA) is a search strategy based on the rules of genetic evolution [3, 4]. GA has been successfully applied to optimization problems in various fields such as computer science, social science, operations research and so on. The examples of application are summarized in Ref. [5]. Recently, some attempts have been made to apply GA to predict the water quality [6], analyze the blasting effect [7], solve the traditional Traveling Salesman Problem [8], and evaluate the sludge compost quality [9]. In GA, the gradients of the cost function and the constraint functions are not needed to find approximate optimal solutions. Therefore, GA is quite useful for a problem of which the cost function is a discontinuous function of the design variables. Grieson and Pak [10]applied GA to find optimal topologies of frames. In their method, however, stress constraint is not considered. Moreover, Liu et al. [11] apply GA to solve combinatorial optimization problem using improved GA. At present, GA is using extensively in the field of topology optimization. Contrast to traditional methods, there are some advantages using genetic algorithms to solve the problem of network topology optimization: it can get optimal or sub-optimal solutions effectively better than the traditional way in Journal of Convergence Information Technology(JCIT) Volume8, Number9, May 2013 doi:10.4156/jcit.vol8.issue9.45 356
larger search area; the genetic and variation that it simulates make the problem more controllable and uncontrollable and has bigger contraction and operating space. In this paper, we study the problem of topology optimization in interconnection networks. First, we formalize this optimization into an integer programming problem. Then, we design a genetic algorithm to solve this integer programming problem. Finally, we compare our proposed algorithm with traditional mountain climbing algorithm and simulated annealing algorithms. Experiments on real and artificial datasets show that our genetic algorithm based topology optimization algorithm not only has shortest execution time, but also has smallest difference with respect to the optimal solution. The rest of the paper is organized as follows: in section 2, we review related work on topology optimization by the genetic algorithm; in section 3, we formalize the optimization problem into an integer programming problem, and propose a genetic algorithm based topology optimization algorithm; we do some experiments to validate the efficiency of the proposed algorithm in section 4; and conclusion is given in section 5. 2. Related work In this section, we review related work on topology optimization problem using the GA. Based on quality of service of network planning, Xu et al. [12]studied the initial network that satisfies the connectivity and hop count constraints using hybrid genetic algorithm, and analyzed the runtime operation under network failure. In order to deal with the link flow changes caused by the failure, they proposed a heuristic algorithm, and improved the local network topology using the algorithm. When a failure occurs in the network, they ensure the normal operation of the network by adjusting the link to meet the minimum cost of network. As the paper just adjusts the network locally in the case of network failures, does not improve or optimize the network under normal situations, and thus has limited usefulness of the entire network topology optimization. Chen et al. [13] proposed a new topology optimization method, called GAOC, based on a hybrid GA. The GAOC method uses evolutionary mechanism of GA and interpolation method of optimization criterion. The interpolation method initiates the input of GA, and then searching the specific region by the GA. The combination of the interpolation method and the evolutionary mechanism can minimum the weight of the topology better. Their experiments show that the GAOC method is efficient in solving general topology optimization problem, that is obtain higher computation result with lower cost. Based on distributed nodes matrix encoding method, Su et al. [14] analyzed and optimized the topology of truss by adaptive GA. They designed crossover and mutation factor on the matrix chromosomes, and the adaptive policy effectively improved the robustness of genetic algorithm. As they filtered out invalid factors such as kinematics and structural instability before the evaluation, their method saved some computation time. Proved through two example of truss delay, the algorithm had high convergence and robustness. The limitation of that algorithm is that it is designed for truss topology only. Teng and Zhou [15] introduced the Pareto optimum theory, the famous Pareto ranking technology and genetic algorithm based on Pareto ranking theory, and proposed a dual designing rules algorithm, called PCGA. The PCGA algorithm mainly contained two aspects, the average delay and the network cost. At the same time, they used the Prufer number to set the number of chromosomes to ensure the structure of the network topology in the LAN network. Moreover, they revised the traditional crossover method, and accelerated the mutation method. Comparing with classical searching method, this algorithm is correct and efficient, but it is hard to implement, and has nothing to do with the improvement of the quality of service. After analyzing the intrinsic properties of Network coding, Kun et al. [16] studied how to get maximum multicast rate and minimum resources in linear coding. As that problem is NP-complete, they applied the improved genetic algorithm in algebra framework. Combined with the authentication mechanism of random polynomials, their algorithm degraded the network coding in network topology. They added new variable at the beginning of the loop of the genetic algorithm. Hence, in order to avoid the long optimization time of traditional genetic algorithms, they introduced a method of binary variation. The experiments showed that the improved genetic algorithm had fast convergence speed and optimization speed, and thus it can be applied to the optimization of network coding. Glass et al. [17] analyzed and designed the embedded system in a network, and one main challenge is the design of optimal route in such systems. They proposed an improved genetic algorithm that can 357
be applied to multi objective evolutionary algorithms. Their algorithm could make sure the optimization operation of the route network topology. They also did some experiments to validate the efficiency of their algorithm. Jonathan et al. [18] designed an electromagnetic solenoid by the network topology optimization method. They proposed the original network topology optimization tool based on simulated annealing algorithm. Contrast to other network topology optimization tools, this new tool used the genetic algorithm, and it could be used in the application of switched reluctance motor. 3. Genetic algorithm based topology optimization algorithm 3.1. Formulation of Optimization Problem An interconnection network can be viewed as an equivalent graph G (N, E, W) where, N represents the nodes (stations, terminals or computer sites), E is the communication links among them, and W is the weight of its communication link. If the nodes of the network are fixed, then the main design decision in route planning is to maximize the weight of its minimal spanning trees. The integer programming formula is as follows: Objective function: n 1 n Max f ( x)= wij xij (1) Subject to: n 1 n i 1 j n 1 i 1 j n 1 xij n 1 (2) n 1 n xij S 1, S V \{1}, S 2 (3) i S j S j 1 Where formula (1) is the objective function, whose purpose is to find a minimum spanning tree with the maximum weight, formula (2) means that a tree has n-1 edges, and formula (3) represents that there is no circle. 3.2. Genetic algorithm and its implementation 3.2.1 Coding and decoding In the coding and decoding step, we use the Prufer number to transform from a tree to a Prufer, more details about the Prufer number can be seen in [15]. Examples of transformation between tree and Profer number is in figure 1 and 2. Figure 1. Coding ( tree Prufer number ). 358
3.2.2 Initial Population Figure 2. Decoding ( Prufer number tree ). The initial population is generated in 3 phases. (1) Find two minimal spanning trees T 1 and T 2 of G on the basis of cost to Reliability ratio and (1-R). (2) Generate all paths p i, i=1, 2, from s to t of G. (3) Merge each p i with T 1 and T 2 separately till the cost constraint of the network is not satisfied. 3.2.3 Selection operator In this paper, we use a certain selection operation ( ), that is choose the best chromosomes from both the parent and the child. This will make sure that optimal chromosomes can be retained in the new generation. 3.2.4 Crossover operator We use uniform crossover as our crossover operator. The uniform crossover is that each gene of the two individual crossover with the same probability, and thus forming two new individual. The details are: generating a binary masking word randomly with the same length as encoding, W=w 1 w 2 w l, l is the length of individual coding; generating two new individuals A and B from parent A and B according the following rules: if w i =0, the ith gene of A comes from A, and the ith gene of B comes from B; if w i =1, the ith genes of A and B change with each other, and thus we get A and B. The Crossover process can be described in figure 3. 3.2.5 Mutation operator Figure 3. Example of uniform crossover. We apply the random perturbation mutation as our Mutation operator. The random perturbation mutation is that selecting a gene randomly, generating an integer between 1 and n (number of nodes), and replacing the gene with the generated integer. 359
3.2.6 Genetic algorithm Genetic algorithm based topology optimization algorithm Input: a graph G (N, E, W); Output: a tree G (N, E, W ); 1: coding; 2: let t 0; 3: initiate P(t); // Initial Population 4: evaluate P(t); 5: while not termination do 6: crossover P(t); 7: Mutation P(t); 8: let C(t) be the child generated by P(t); 9: evaluate C(t); 10: choose P(t+1) from P(t) and C(t); 11: t t+1; 12: end while 13: decoding 14: return G ; 4. Experiments In this section, we do some simulated experiments to test the efficiency of our algorithm. In order to demonstrate the robustness of our algorithm and to show its performance, we do the experiments on two interconnection datasets, one is generated artificially, and the other one is our real experiment platform. The details of datasets are in table 1. 4.1. Results Table 1. Details of datasets dataset Real network Artificial network #node 10307 45713 #edge 42602 145039 We compare our genetic algorithm based topology optimization algorithm with the mountain climbing and the simulated annealing algorithm to validate its efficiency. First, we compare their execution time when they all find a solution. The result is in figure 4. From the figure we can see that the genetic algorithm has the smallest execution time, whereas the mountain climbing algorithm and the simulated annealing algorithm performance better in different datasets. 360
time (minute) 100 80 60 40 Genetic algorithm Mountain climbing Simulated annealing 20 Figure 4. Comparison of execution time. The optimal problem in formula (1) is NP-complete, and the solutions in all these three algorithms are all approximate solutions. We compare all these three approximate solutions with the optimal solutions, and analyze their differences with the optimal solution. Details are in figure 5. In our metrics, we define the difference as follows: approximate solution optimal solution diff = 100% (4) optimal solution 30 Genetic algorithm difference (100%) 20 10 Mountain climbing Simulated annealing Figure 5. Comparison of execution time. From figure 5 we can see that our genetic algorithm based topology optimization algorithm has the smallest difference compared with the mountain climbing algorithm and the simulated annealing algorithm. In general, our genetic algorithm based topology optimization algorithm not only has shortest execution time, but also has smallest difference with respect to the optimal solution. 361
5. Conclusion The performance of interconnection network is mainly decided by its topology, and better topology will bring better route planning, and thus bring better performance improvement of the distributed systems. First, we formalize this optimization into an integer programming problem. Then, we design a genetic algorithm to solve this integer programming problem. Finally, we compare our proposed algorithm with traditional mountain climbing algorithm and simulated annealing algorithms. Experiments on real and artificial datasets show that our genetic algorithm based topology optimization algorithm not only has shortest execution time, but also has smallest difference with respect to the optimal solution. 6. Acknowledgements The research of integrated scheduling problem Based on double resources constraint. Project Number:12523067. The research and analysis of workshop production integrated scheduling algorithm. Project Number:SJ11004. 7. References [1] R. Rastogi, Nitin and D.S. Chauhan, Fast Interconnections: A Case Tool for Developing Faulttolerant Multi-stage Interconnection Networks, IJACT: International Journal of Advancements in Computing Technology, Vol.2, No.5, pp.13-24, 2010. [2] R. Boorstyn and H. Frank, Large-scale network topological optimization, Communications, IEEE Transactions on, Vol.25, No.1, pp.29-47, 1977. [3] J.H. Holland, Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artificial intelligence, MIT press, 1992. [4] D.E. Goldberg and J.H. Holland, Genetic algorithms and machine learning, Machine Learning, Vol.3, No.2, pp.95-99, 1988. [5] D.E. Goldberg, Genetic algorithms in search, optimization, and machine learning, 1989. [6] C. Hsu, L. Chen, T. Wang and Y. Hsu, Applying Genetic Algorithm Operation Tree for Predicting The Total Phosphorus in A Reservoir, JCIT: Journal of Convergence Information Technology, Vol.8, No.1, pp.103-110, 2013. [7] Z. YANG, C. WANG and L. GUO, Optimization for the Row Heights in Medium-Length Hole Blasting Design by Genetic Algorithms, AISS: Advances in Information Sciences and Service Sciences, Vol.5, No.1, pp.5-15, 2013. [8] Y. Yu and L. Hui, Improved Quantum Crossover Based Genetic Algorithm For Solving Traveling Salesman Problem, IJACT: International Journal of Advancements in Computing Technology, Vol.5, No.1, pp.651-658, 2013. [9] J. Tian, M. Gao and C. Kong, Sludge Compost Quality Evaluation Based on Improved Genetic Algorithm and Radial Basis Function Neural Network, JCIT: Journal of Convergence Information Technology, Vol.8, No.1, pp.802-810, 2013. [10] D.E. Grierson and W.H. Pak, Optimal sizing, geometrical and topological design using a genetic algorithm, Structural And Multidisciplinary Optimization, Vol.6, No.3, pp.151-159, 1993. [11] H. Liu, Q. Wu and X. Yan, Solve Combinatorial Optimization Problem Using Improved Genetic Algorithm, AISS: Advances in Information Sciences and Service Sciences, Vol.5, No.1, pp.1-8, 2013. [12] H. Xu, L. Sun and Z. Xu, Network Plan Based on Quality of Service, Computer Engineering, Vol.3, pp.36, 2007. [13] Z. Chen, L. Gao, H. Qiu and X. Shao, A GAOC method for topology optimization design, Intelligent Computation Technology and Automation, 2009. ICICTA'09. Second International Conference on, pp.293-296, 2009. [14] R. Su, L. Gui and Z. Fan, Topology and sizing optimization of truss structures using adaptive genetic algorithm with node matrix encoding, Natural Computation, 2009. ICNC'09. Fifth International Conference on, pp.485-491, 2009. 362
[15] F. Teng and G. Zhou, The research of an approach to design local area network topology based on genetic algorithm, Computational Intelligence and Design, 2009. ISCID'09. Second International Symposium on, pp.184-189, 2009. [16] H. Kun, Z. Jin and B. Wang, Improved Genetic Algorithm Applied to Optimization of Linear Network Coding, Wireless Communications Networking and Mobile Computing (WiCOM), 2010 6th International Conference on, pp.1-4, 2010. [17] M. Gla ss, M. Lukasiewycz, R. Wanka, C. Haubelt and J. Teich, Multi-objective routing and topology optimization in networked embedded systems, Embedded Computer Systems: Architectures, Modeling, and Simulation, 2008. SAMOS 2008. International Conference on, pp.74-81, 2008. [18] D. Jonathan, D. Bruno and B.A. Hamid, Simulated annealing and genetic algorithms in topology optimization tools: a comparison through the design of a switched reluctance machine, Power Electronics Electrical Drives Automation and Motion (SPEEDAM), 2010 International Symposium on, pp.1247-1252, 2010. 363