Genetic Algorithm Based Interconnection Network Topology
Optimization Analysis
1
WANG Peng,
2Wang XueFei,
3Wu YaMing
1,3College of Information Engineering, Suihua University, Suihua Heilongjiang, 152061
[email protected]
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.
Keywords
: Genetic Algorithm, Interconnection Network, Topology1. Introduction
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
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
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: 1 1 1 Max ( )=n n ij ij i j n f x w x
(1) Subject to: 1 1 1 1 n n ij i j n x n
(2) 1 1 | | 1, \{1},| | 2 n n ij i S j S j x S S V S
(3)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 decodingIn 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 2. Decoding ( Prufer number → tree ). 3.2.2 Initial Population
The initial population is generated in 3 phases.
(1) Find two minimal spanning trees T1 and T2 of G on the basis of cost to Reliability ratio and (1-R). (2) Generate all paths pi, i=1, 2, from s to t of G.
(3) Merge each pi with T1 and T2 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=w1w2wl, l is
the length of individual coding; generating two new individuals A’ and B’ from parent A and B according the following rules: if wi=0, the ith gene of A’ comes from A, and the ith gene of B’ comes
from B; if wi=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.
Figure 3. Example of uniform crossover.
3.2.5 Mutation operator
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.
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.
Table 1. Details of datasets
dataset Real network Artificial network
#node 10307 45713
#edge 42602 145039
4.1. Results
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.
20
40
60
80
100
time
(minute
)
Genetic algorithm
Mountain climbing
Simulated annealing
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:
| solution |
= 100%
solution
approximate solution optimal diff optimal (4)
10
20
30
difference (100%)
Genetic algorithm
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.
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 Fault-tolerant 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.
[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.