* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Efficient Routing Protocol via Ant Colony Optimization
Computer network wikipedia , lookup
Backpressure routing wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Airborne Networking wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
2014 IEEE International Conference on Internet of Things (iThings 2014), Green Computing and Communications (GreenCom 2014), and Cyber-Physical-Social Computing (CPSCom 2014) Efficient Routing Protocol via Ant Colony Optimization (ACO) and Breadth First Search (BFS) Reza Khoshkangini, Syroos Zaboli International School of Information Management (ISIM) University of Mysore, India Email: {reza.khosh, syroos}@isim.net.in one must consider various factors such as memory, security, accuracy, speed and effective distance ranges, as well as their priority with respect to their quality of service (QoS) requirement in a specific application. For instance, security and data transmission speed are often high priorities in a military application [2],[3]. On the other hand, the designed routing algorithm must be capable of increasing the quality of data transmission, as well as handling certain communication problems [4]. Nowadays, the previously designed protocols for WSNs have lost their usability due to presence of new technologies which lead to higher information transmission and bigger networks. Therefore, there is a demand for the current platforms to sustain their proper functionality by applying the right protocols and efficient algorithms. Marco Dorigo introduced the first ACO algorithm [5] in order to solve combinational optimization problems such as the Traveling Salesman Problem (TSP). Moreover, its other variations as solutions to finding the shortest path on the graph [6], and then enhancing the network lifetime and load balancing in WSNs. In this paper we use this an artificial intelligence algorithm to enhance the network performance in WSNs, taking into account the characteristics of ACO such as Positive Feedback [7] and Greedy Heuristic [8], to find the best path to the base station and data packet transmission. The structure of the network is as shown in Figure 1. Abstract—Wireless Sensor Networks (WSNs) consist of many sensor nodes, which are usually distributed across areas difficult to be accessed in order to collect and send the data to the main sink location. Despite the fact that a number of protocols have been proposed for routing and energy management, WSNs still face problems in selecting the best path with efficient energy consumption and successful delivery of the packets. In particular, these problems occur when WSNs are subjected to critical situations such as node or link failure, and it is even more critical in sensitive applications such as nuclear and healthcare. In this paper, we propose the Ant Colony Optimization (ACO) combined with Breadth First Search (BFS) to search and find the best and shortest path in order to improve data transmission with the least amount of energy consumption, as well as reduce the probability of data loss. Using our proposal, a balance between number of packets, time and energy consumption can be determined which leads to increase the network performance. Therefore, the main goal of the paper is to decrease energy consumption which leads to increase of the network’s lifetime and enhancement of the number of successfully transmitted data with respect to other multiple ants-based routing protocols. Moreover, the number of ants are optimized within the network to avoid network congestion. Keywords-Sensor Network; Ant Colony Optimization (ACO); BFS; Routing; Cluster-Head; I. I NTRODUCTION It is important to have efficient data transmission in WSNs; considering the fact that a small change or loss in data could lead to major problems in some applications. For example, delay or poor quality of transmission in dam building, military, nuclear or healthcare applications, could manipulate a set of valuable information related to critical decision making, leading to serious damage. WSNs have a number of limitations such as increase in the rate of energy consumption as the WSN begins its communication state, which results in reduction in network lifetime [1]. Low bandwidth and communication failure are the other limitations which occur in WSNs affecting the performance directly. Hence from a network design perspective; Mauro Conti is supported by a Marie Curie Fellowship for the project PRISM-CODE: Privacy and Security for Mobile Cooperative Devices funded by the European Commission (grant PCIG11-GA-2012-321980) and by the PRIN project TENACE: Protecting National Critical Infrastructures From Cyber Threats (grant 20103P34XC) funded by the Italian MIUR. 978-1-4799-5967-9/14 $31.00 © 2014 IEEE DOI 10.1109/iThings.2014.69 Mauro Conti Department of Mathematics University of Padua, Italy Email: [email protected] Figure 1: ACO multi-path routing 375 374 where the initial solution is generated by the ACO as the population for the genetic algorithm and next, the best solution is searched by further iterations of genetic algorithms using crossover and mutation. Although this approach is effective in the long term in the case of multiple-path searches, ACO sometimes faces the problem of generating the best population for GA (starvation), moreover, GA needs a large number of fitness function evaluations based on the number of nodes. Hence, due to the GA’s drawback the algorithm may take a long time to find the best path. In addition, there is no guarantee that GA will find the best solution. The black lines indicate the connection between the nodes and their cluster head which the nodes (cluster members) use, to send gathered data to their cluster head. Dotted lines show the connection between cluster heads and intermediate cluster heads, as well as cluster heads and sink where they send their ants to carry the data toward the sink. τ is the pheromone value of links between cluster heads and sink which is explained in Equation 2. By applying the graph search algorithm of Breadth First Search, the selection accuracy of hops in transferring data is enhanced with minimum transmission time and the least energy consumption, moreover avoiding the probability of starvation in the WSN. Starvation in wireless sensor networks mostly occurs due to the presence of expired nodes and the failure of live sensor nodes in finding the right path to transfer data to the base station [9]. The rest of the paper is organized as follows. Section II surveys the pertinent literature. Section III describes the proposed method; while Section IV discusses the simulation results. Finally, Section V concludes the paper. Ruud Schoonderwoerd et al. [14] proposed an adaptive routing algorithm for telecommunication network using ACO algorithm by introducing two specific kinds of agents called ants. The first kind is the load management ant that takes the responsibility of the lowest level of control; these ants are launched from a particular node to search for the most appropriate route from the source node to other nodes using the ACO algorithm. The second kind are the parent agents which are applied to the next level of control; these parent agents move randomly in the networks based on the heuristics and information gathered in the network, Hence they have the ability to handle and fix the specific locations which are experiencing congestion. This method is only effective in case of optimal routing and organized public transportation schemes in telecommunication networks. II. R ELATED W ORK There has been quite a significant amount of work done on different methods of routing using ACO, which turns out to be one of the most suitable methods for multi-path routing and a dynamic network for data transmission. For example, Ad-Hoc networks, WSNs and telecommunications networks [10]. Jing Yang et al. [11] introduced a Multi-path Routing Protocol (MRP) which consists of three main steps as follows. First dynamically generating a cluster format, second to search multiple paths to the base station using ACO and finally dynamic selection of a single path for data transmission. MRP makes use of three types of ants; the search ant (SANT) which is used to capture the information of paths and nodes on it’s way, the backward ant (BANT) which has the responsibility of updating the pheromone values and resending the collected information (such as path length, energy consumption and residual energy) back to the source node, and finally the abnormal ant (ABANT) which is used to prevent stagnation of the protocol. In spite of the fact that MRP improves data transmission reliability and network lifetime in WSN, the algorithm speed is quite low; moreover, it requires an amount of overhead in dynamic areas to find the best path [12]. Every cluster head sends a SANT in order to get information of its neighborhood using Equation 1. Pij = β τijα (t) × ηij β Στijα (t) × ηij Nuria Gomez et al. proposed a local routing method [17] using ant colony algorithm, which keeps track of the information sent to the destination node instead of storing the whole information on the network. In this method each node stores information about its neighbourhood nodes such as the pheromone value, the MAC/ID of the source and destination nodes which are used to transmit data packets from the source to the destination node in their routing table. Despite this method being suitable for memory limitation applications, it has the drawback of high energy consumption. Many ACO algorithms use ant memory to save a list of visited node, whereas in other ACO approaches which are suitable for static nodes (Selcuk’s method) [1], the data carried by the ant can be limited, hence energy is preserved. Here, the node’s memory is used in order to save information related to other neighbouring nodes visited by an ant as well as the pheromone values, which gives a node the choice to accept or deny an incoming ant by looking up the tabu list. Once an ant reaches the sink, an acknowledgement message is sent back to the node through the same path. Although the method is very useful to search for the best links in a large number of nodes, it has prematurity and memory problems, this is due to the fact that a large number of ants in the network may lead to much higher traffic than the other methods. (1) Yang Sun and Jingwen Tian [13] introduced another multi-directional path algorithm by integrating the genetic algorithm (GA) into the ant colony optimization algorithm, 375 376 Where dij is the distance between nodes i and j, which is shown in Equation 3. The shorter the distance, the higher the probability, hence the frontward ant can select the closest cluster-heads to the base station in its path. III. P ROPOSED M ETHOD Link failure is a common occurrence in WSNs, which results in problems such as repetitive back and forth transmission of data between source and sink of a failed link due to a dead node. Causing the failure of a message in reaching its destination, thus leading to reduction in bandwidth range and wastage of energy. In this paper we propose a method using the ACO algorithm along with BFS which is a tree-based search used to enhance the accuracy of the best path selection. Here the ACO consists on three type of ants, namely the frontward ant, the Bfrontward ant and the backward ant [14], [15]. ηij = The frontward ant has the responsibility of finding the best and shortest path by looking up the information on neighboring nodes from the routing table. This ant considers two distance factors; first is the distance between the current node to its neighbourhood nodes and the second is the distance of all the nodes (except the current node) from the sink, which is placed at the center of area. It is important for an ant to know each and every length between the nodes and the sink which is shown in Table I [11]. ηij = LCN x:20, y:45 x:15, y:53 PHV 0.5 0.6 DTS 25 30 Δτij = (1 − p) × τij + Δτij TBLST y z (τij )α × (ηij )β × (Ej )γ Σ(τij )α × (ηij )β × (Ej )γ 1 dij (6) Once the frontward ant carrying a data packet reaches the destination, the base station extracts and processes the received data packet. The sink adds the following headers; the source node data header (Mac address and coordinate), the destination data header (header of sender), and the stack value of the latest received data packet. A backward ant can take the same path back, as well as the algorithm remarkably adapting to the network changes (this is illustrated in simulation section in Figure 7). In case of a link failure during transmission, it has the ability to search for an alternative closest intermediate cluster-head using Equation 3 according to the dead node. The proposed method uses the node memory instead of ant memory for the advantage of reduction in the ant’s packet load and decrease the packet size which is directly related to the amount of energy consumption [1]. Hence a tabu list made up of a stack is used to keep a track of the node IDs from which an ant comes from. (2) Where Pij is the selection probability of a cluster head and τij is the pheromone value of a link between node i and node j which can initially be assigned to 0 or 1. ηij , Ej are the distance heuristic and energy level of node j respectively. α, β, γ are the three controlling elements of the pheromone value [1]. ηij = (5) B. Backward Ant DTN 25 31 ID, MID and LCN are the identification numbers, the Mac addresses of each sensor node and the coordinates of each cluster-head respectively. LCN is used to calculate the distance between a cluster-head and the sink as well as the distances between nodes. The pheromone value (PHV) of each link increases every time as the frontward ant passes through that link. DTS is the distance between the cluster head and the sink. The tabu list (TBLST) contains the IDs of nodes that a frontward ant arrives from. DTN is the distance of a node to its neighbor. A frontward ant chooses and moves towards the sink from one cluster head to another, based on the Equation 2. Pij = 1 1 + dij djs Equation 5 which is derived from Equation 3 and 4, shows the influence of the distance between nodes i and j as well as the distance between node j to the sink on selection of the next closest cluster head. Equation 6 is used to update the pheromone value at the cluster heads links [5]. Table I: Routing Table MID — — (4) Here djs is the distance between cluster-head j and the sink which is illustrated in Figure 2. This helps the ant to detect the next closest node to the base station. Since the sensors are scattered across the area and the base station is located at the centre, the movement of an ant starting at any node in the area must be towards the centre taking the closest cluster heads towards the sink into consideration. A. Frontward Ant ID x y 1 djs C. Energy Consumption Model The LEACH model [16] is used for energy consumption and it is implemented using Equation 7. The amount of energy consumption depends on the distance between the sender and receiver, as well as the size of the packets. In the propose method, we use two types of energy consumption models; first is free space (d2 reducing power) and second is multi-path fading (d4 reducing power). (3) 376 377 Es = lEelect + lef p d2 lEelect + lemp d4 d ≤ Zom d > Zom Equation 9 shows the distance heuristic calculation in order to determine the selection probability of the next cluster-head. 1 (8) ηij = dmj (7) Where ef p and emp are the energy consumption of amplifying radio and Zom is the threshold value for the distance. ηij = D. Implementation of BFS Technique 1 1 1 + + dij djs dmj (9) Where dmj is the minimum distance after node-j to the sink which is determined by the BFS algorithm, and it is included along with the other two distance values. Using the Bfrontward ant, the current node-i, gets enhanced with the ability to predict the cost of selecting the next node as a path, for example, node-j or node-k in order to send data for the next level of transportation. Therefore, the process of node selection to transport the data towards the sink is carried out with minimum cost of energy, resulting in a longer network lifetime. In spite of the fact that implementation of BFS in ACO leads to additional node memory and time consumption which are the weaknesses of the method, it increases the search accuracy in finding the shortest path. Hence achieving the balance between depth levels, number of moving ants within the network, energy consumption and time is firmly essential to enhance the network performance. The time and memory complexity which is commensurate to the number of nodes at the depth level expressed Equation 10 [19]. In nature, it is hard for an ant positioned at the wrong location to find and collect food; this happens when some of the nodes expire sometime after the transmission begins as we apply ACO to WSN in the nodes. This could be due to failure of a sensor node, which results in starvation, reduction in performance and the transfer rate of packets to the sink and vise versa (this is described in simulation section IV). As a solution we implement BFS in the ACO algorithm which overcomes the problem of getting trapped during exploration unlike the previous multi-path routing protocols that did not focus on this particular problem [1]. Breadth-First Search (BFS) [18] is a graph search algorithm used to explore the neighboring nodes, starting from the end branches towards the main branches level by level. It can continue this process throughout the connected neighbors until it finds the solution or a specific node based on its requirement. E. Bfrontward Ant BFS applied to the propose method for an ant (Bfrontward) to find its shortest path as shown in Figure 2, such that, an ant situated at node-i looks for the shortest path to the sink considering the first set of neighboring nodes. This can be described as a tree (the whole network) where the aim of an ant is to find the shortest distance from a leaf on a branch (source node) to the trunk (sink). For example, node-j is chosen using step 1 (frontward) and its distance to the sink is achieved using (frontward) step 2. Next, the node closest to the sink among all the other neighboring nodes (except the visited nodes in order to avoid loop trap) is chosen using (Bfrontward) step 3, Equation 8. O((V ) + (E)) (10) Where E is the cardinality of set of edges (number of edge between each node) and V is the number of nodes. In order to reduce the node memory consumption and search time, we limit the ant to only one depth level in the process of determination of distance from that node to sink as mentioned in Equation 8 and Figure 2. Moreover, energy consumption, network lifetime and timing stamp are directly related to the number of ants moving within the network. That is, the number of cluster heads that are to send the ants carrying data toward the sink, have to be optimized. Before the ants are sent to the sink by the cluster heads or intermediate cluster heads, the cluster heads should have been selected using a protocol such as LEACH [16] or Fuzzy Logic [20], [21], etc. where the optimized number of selected cluster heads send the ants as they receive data from their cluster members, per unit of time. In this paper, At first we use 30, 20, 15 and 10 percent of all nodes as cluster heads to send the ants in order to find the balance between energy consumption, packets sent, time stamping and the number of ants in move within the network. Then the method compared with two other antbased multi-path protocols. Figure 2: Process of finding the minimum distance 377 378 IV. S IMULATION 6 3 Number of packets send to Sink The simulation is done using MATLAB where the proposed method is first evaluated with respect to the number of ants, and one level depth via BFS within the network. Next, the proposed method compared with two other antbased methods of literature [1]. The simulation describes the relationship between, energy consumption, packets sent, time stamping and the number of ants in move within the network. In this part of simulation we use 30, 20, 15 and 10 percent of all nodes as cluster heads to send the ants in terms of finding a balance between, energy consumption, packets sent, time stamping and the number of ants in move within the network with minimum cost. Table II shows the parameters used for this simulation. x 10 30% Ant 20% Ant 15% Ant 10% Ant 2.5 2 1.5 1 0.5 0 0 100 200 500 600 700 800 Figure 4: Packets sent Value 30j 10-15-20-30 Center Static 4000bit Ef s ,Emp 150×150 50×0.000000001j 800 0.5 percent of the total number of nodes, dramatically has the highest number of data packets sent. Subsequently, it is absolutely clear in Figure 5 that the 30 percent (number of ants) runs out of energy in 150th iteration as it has the highest energy consumption with respect to the rest, with the result of network failure. Having said that, more number of ants initially send more packets toward the sink, they consume more energy and take much time. Furthermore, the network goes down faster than the others. On the other hand, the network with 15 and 20 percent ants has a better performance in terms of sending packets, time stamp and energy consumption during the transaction for long time. Figure 3 describes the total round trip time to send and receive data packets from nodes to sink and vice versa. The X-axis shows the number of round and the Y-axis shows the total round trip time (unit of time) taken by the different number of ants, where, 30 and 10 percent ant are the worst and the best time respectively to send and receive the packets 35 Energy Consumption 30 10 30% Ant 20% Ant 15% Ant 10% Ant 9 8 7 6 Time 400 Number of Round Table II: Parameters Parameter Total Energy for all Ants Number of Cluster Head Location of Sink Location of Cluster Head Packet Size Transmit Amplifier Type Coordinate Area ETX, ERX Round Pheromone Value 300 5 30% Ant 20% Ant 15% Ant 10% Ant 25 20 15 10 5 4 0 3 0 100 200 300 400 500 600 700 800 Number of Round 2 Figure 5: Energy consumption 1 0 0 100 200 300 400 500 600 700 800 The next part of the simulation is done with respect to two important factors in WSNs; First, the energy preservation and second the number of packets sent per round during the network lifetime. Table III shows the parameters used for simulation. The nodes are randomly distributed across the area of size 150 × 150 , and their positions have been maintained for all Number of Round Figure 3: Time stamp Figure 4, indicates the impact of number of ants carrying the data packets on the performance level of the system, where having the number of ants as many as 15 to 20 378 379 30 Table III: Parameters Value 1.5j 20 Center Randomly Distibutes 4000bit Ef s , Emp 150×150 50×0.000000001j 800 0.5 20 15 10 5 0 Number of Packets Sent to Sink 200 300 400 500 600 700 800 ant, is used along with a tree Breadth First Search (BFS) making the ants capable to search and find the best and shortest path to the destination, in order to carry and transfer the data packets to the base station and vice versa. This method resulted in the least amount of energy consumption and loss of data packets. As the future work, we will apply ant colony algorithm to enhance the security of the location of the base station from external attackers in WSN. 6 ANT ANT−BFS ANT−Selcuk R EFERENCES 3.5 [1] S. Okdem and D. Karaboga, ”Routing in wireless Sensor Network Using an Ant Colony Optimization (ACO) Router Chip”, Sensors, pp. 909-921, 2009. 3 2.5 2 [2] S. Roy, M. Conti, S. Setia and S. Jajodia, ”Secure Data Aggregation in Wireless Sensor Networks: Filtering out the Attacker’s Impact”, Information Forensics and Security, IEEE Transactions on, No. 99, Vol. PP, 20 February 2014. 1.5 1 0.5 0 100 Figure 7: Energy saving x 10 4 0 Number of Round three methods with a node initial energy value of 1.5j and default pheromone value of 0.5. The packet size is fixed to 4000 bit for every transaction. Figure 6 shows that the proposed method results in much more energy preservation with respect to the other two methods by the end of the simulation; Where although all three methods start with the same amount of energy level 30, by the 800th iteration the ANT-BFS method preserves significantly higher amount of energy. 4.5 ANT ANT−BFS ANT−Selcuk 25 Energy Reminde Parameter Initial Energy Number of Cluster Head Location of Sink Location of Cluster Head Packet Size Transmit Amplifier Type Coordinate Area ETX, ERX Round Pheromone Value 0 100 200 300 400 500 600 700 [3] M. Conti, R. D. Pietro and L. V. Mancini, ”Secure cooperative channel establishment in wireless sensor networks”, Pervasive Computing and Communications Workshops, Fourth Annual IEEE International Conference on, pp.5, 331, 13-17 March 2006. 800 Number of Round Figure 6: Packets sent [4] K. Kamal and N. Gupta, ”Application Based Study on Wireless Sensor Network”, International Journal of Computer Applications, Vol. 21, pp. 1, 2011. The proposed method consumes much less energy; as a result the number of packets sent to the sink are larger, which leads to a longer network lifetime. Figure 7 having the number of sent packets on y-axis and number of rounds on x-axis describes the results of simulation comparison where the ANT-BFS method is leading in terms of higher number of successfully transmitted data packets with respect to other two methods. [5] M. Dorigo and L. M. Gambardella, ”Ant Colony System: A Cooperative Learning Approach to the Traveling Salesman Problem”, IEEE Transaction Evol Computer, pp. 53-66, 1997. [6] M. Dorigo, ”Ant colony optimization”, Creative Commons Attribution NonCommercial ShareAlike 3.0 Unported License, Vol. 1461, Belgium 2007. V. C ONCLUSIONS One of the major challenges in WSNs is to determine the best path to transmit data from nodes to the base station which directly affects the amount of energy consumption and network lifetime. In this paper, the ACO algorithm with three types of ants, namely Frontward, Bfrontward and Backward [7] M. Dorigo, M.Birattari, C. Blum, M. Clerc and Sttzle, ”Ant Colony Optimization and Swarm Intelligence”, 4th International Workshop, ANTS, Vol. 3172, Belgium, September 2008. 379 380 [8] A. Chaudhuri, ”A Dynamic Algorithm for the Longest Common Subsequence Problem using Ant Colony Optimization Technique”, Proceedings of 2nd International Conference on Mathematics, Cairo, Egypt, 2007. [15] K. S. Ali and K. Sindhanaiselvan, ”Ant Colony Optimization Based Routing in Wireless Sensor Network”, Int.J.Advanced Networkingand Applications, pp. 1685-1689, 2013. [16] W. Heinzelman, A. Chandrakasan and H. Balakrishnan, ”Energy-efficient communication protocol for wireless micro sensor networks”, Proc. of the 33rd Annual Hawaii International Conference on System Sciences (HICSS), pp. 30053014, January 2000. [9] C. Izu, ”A Throughput Fairness Injection Protocol for Mesh and Torus networks”, IEEE High Performance Computing (HiPC), pp. 294-303, December 2009. [10] Z. Jingjing, H. Yongxi and C. Yufei, ”Wireless sensor network multi-path routing protocols”, Journal of Computer Engineering and Design, No. 22, Vol. 28, pp. 5417-5420, 2008. [17] N. Gomez, L. Fernando and A. Arteta, ”Simulation Tools in Wireless Sensor Networks: Ant Colony Optimization of a Local Routing Algorithm”, International journal of computers and communications, No. 3, Vol. 6, 2012. [11] J. Yang, M. Xu, W. Zhao and B. Xu, ”Ant Colony Optimization and Swarm Intelligence”, Sensors (Basel), pp. 45214540, May 2010. [18] M. Kurant, A. Markopoulou and P. Thiran, ”On the bias of BFS”, International Teletraffic Congress (ITC), pp. 1-9, April 2010. [12] H. Goudarzi, A. H. Salavati and M. R. Pakravan, ”An antbased rate allocation algorithm for media streaming in peer to peer networks: Extension to multiple sessions and dynamic networks”, J. Netw. Comput. Appl, Vol. 34, 2011. [19] S. Russel and P. Norvig, ”Artificial Intelligence: A Modern Approach”, Prentice Hall, December 2002. [13] H. Goudarzi, A. H. Salavati and M. R. Pakravan, ”WSN Path Optimization Based on Fusion of Improved Ant Colony Algorithm and Genetic Algorithm”, Journal of Computational Information System, No. 6, pp. 1591-1599, 2010. [20] R. Khoshkangini, S. Zaboli and S. Sampalli, ”Energy Efficient Clustering using Fuzzy Logic”, Internatianl Journal of Computer Science and Mobile Computing (IJCSM), No. 13, Vol. 2, pp. 8-14, December 2013. [14] R. Schoonderwoerd, O. Holland and J. Bruten and L. Rothkrantz, ”WSN Path Optimization Based on Fusion of Improved Ant Colony Algorithm and Genetic Algorithm”, Adaptive Behaviour, Vol. 5, pp. 169-207, 1996. [21] E. Saeedian and M. Jalali, ”CFGA:Clustering Wireless Sensor Network Using Fuzzy Logic And genetic Algorithm”, Intrernational conference on sensor networks, pp. 1-4, September 2011. 380 381