1. Introduction
The engineering research field of the internet of things has drawn a great deal of attention from academia, industry and the government due to its potential benefits to society, economy and the environment [1]. As a whole, internet of things refer to the next generation of engineered systems that require tight integration of computing, communication, and control technologies to achieve stability, performance, reliability, robustness, and efficiency in dealing with physical systems of many application domains [2]. In most cases, cyber-physical systems are deployed under a harsh environment. Unpredictable events such as environmental impairment, communication link broken, and battery depletion may cause the sensor devices to fail, thus it is easy for wireless nodes and links to experience frequent failures [3]. Node or link failures have a significant impact on the performance and reliability of the cyber-physical systems [4]. Therefore fault tolerance becomes a critical issue for the successful communication of cyber-physical systems. How to ensure fault tolerance routing becomes a very important issue in the cyber-physical systems [5]. It is expected that the network topology broken by software or hardware failure of sensor nodes could be automatically reconstructed and self-healed by the fault-tolerance technology so as to be recovered from path failure and ensured the performance of the communication tasks [6]. Besides energy efficiency is also an important issue in the cyber-physical systems since nodes are powered by batteries that may not be possible to be replaced or recharged during a mission. How to provide energy efficient fault tolerance routing in the cyber-physical systems is very challenging [7].
The fault tolerance routing algorithm is originated either from redundant messages in the network or redundant routes in the network topology [8]. Algorithms based on multiple instances of each packet include flooding, gossip, stochastic communication and N-random walk [9]. They generally provide shortest route and good tolerance against faults [10]. However, they do this with a low resiliency for congestion.
One of the common fault-tolerance solutions is to establish disjoint multipath with proactive routing mechanism [11]. Disjoint multipath constructs a number of alternative paths which are links disjoint with the primary path and other alternative paths. Thus, a failure in any or all links on the primary path does not affect the alternative paths. Proactive routing, called disjoint multipath, in which several paths from source node to sink node are calculated, maintained in advance, and stored in a routing table, however the great energy consumption and the requirement to predict the global topology information are the disadvantages [12]. Reactive routing, where all paths are created on demand [13], and hybrid routing, which is a mix of the above two groups [14]. However the routes are not always optimal.
In the mean time the standard PSOA (SPSOA) is a new EA based method to search an optimal solution in the high-dimensional problem space, where each particle is a potential solution to the problem under analysis [15]. It provides an idea to find solutions to complex problems using group advantage without global model and centralized control and can be suitable to apply in a dynamical modeling environment. It has been applied to some optimization problems, such as control problems and protocol design [16]. However the effect is not very ideal.
Some applications about Internet of things are as follows: 1) The node localization based on particle swarm optimization algorithm for Internet of things. 2) Coverage optimization control based on particle swarm optimization algorithm for Internet of things. 3) Improved Particle Swarm Optimization Algorithm for Android Medical Care IOT using Modified Parameters[17].
The objective of this paper is to solve the fault-tolerance routing problem for the Internet of Things. For this purpose, we propose an improved efficient and intelligent fault-tolerance algorithm (IEIFTA), to provide fast recovery from path failure in the Internet of Things. In this way, the Internet of Things can tolerate the failure of paths with reconstructed topology, traditional retransmissions can be decreased, and reliability can be provided with lower energy consumption.
The rest of this paper is organized as follows. Section 2 summarizes and reviews the related works. Energy and network model is presented in Section 3. Section 4 details an improved efficient and intelligent fault-tolerance algorithm (IEIFTA). Simulation results are discussed in Section 5 and Section 6 concludes the paper.
2. Related Work
Recently a number of work has been done on the hybrid routing scheme, which combines multipath scheme and reactive routing scheme. In this scheme, multiple paths are calculated and maintained in advance, and then, alternative paths are created on demand. EARQ (energy-aware routing for real-time and reliable communication) is a hybrid routing scheme, which enabled even distribution of energy expenditure to sensor nodes [18]. It was proposed by Heo and Hong. And it selected a path which expended less energy than others among paths that delivered a packet in time. It also provided reliable communication and fast recovery from path failure, because it only sent a redundant packet via an alternative path if the reliability of a path was less than a predefined value. Pandana and Liu sought to propose an algorithm which designed the connectivity weight of each node and established a most reliable path in order to keep the other nodes’ connectivity [19].
Moreover, the hybrid routing schemes for the wireless sensor networks are as follows: CPEQ (cluster-based periodic, event-driven, and query-based protocol) groups sensor nodes to efficiently relay data to the sink by uniformly distributing energy dissipation among the nodes [20]. It can provide fast broken path reconfiguration and high reliability in the delivery of event packets and speed up new subscriptions by using the reverse path. Cardei and Yang proposed GATCk and DATCk in the wireless sensor networks, with the objective of minimizing the total energy consumption while providing k independent paths from each node to macronodes [21]. Such a topology provides the infrastructure for fault-tolerance data-gathering applications robust to the failure of sensors. Boukerche etal. used a protocol of ICE (intercluster communication-based energy-aware and fault-tolerance protocol) by alternating the nodes responsible for intercluster communication inside one cluster [22]. If one of multiple paths has faulty nodes, the other ones will be used for the event notification’s propagation. However the fast routing recovery mechanism for path failure has rarely been considered. Furthermore, these heuristic deterministic methods would always get the likely optimal result, but they are easy to fall into the local optimum. Therefore we adopt a swarm intelligence algorithm, the IEIFTA, to improve the performance of solving these problems.
In addition, some more recent publications of trustworthiness analysis of CPS can be found. A new model of atypical cluster is proposed to effectively represent the complex atypical events and efficiently retrieve them from massive data [23]. A method called LiSM (Line-in-the-Sand Miner) is proposed to discover trajectories from untrustworthy sensor data[24]. LiSM constructs a watching network from sensor data and computes the locations of intruder appearances based on the link information of the network. A method called Tru-Alarm which finds out trustworthy alarms and increases the feasibility of CPS[25]. Tru-Alarm estimates the locations of objects causing alarms,constructs an object-alarm graph and carries out trustworthiness inferences based on linked information in the graph.
3. Energy and Network Model Overview
3.1 Energy model
Assume that the network has the following characters: (a) the nodes will not move after deployment. (b) Every node knows its own position and that of the sink node. (c) The location can be obtained by GPS or localization protocols for estimating the location of a node. (d) The adjacent nodes would acquire the state information of the their 1-hop neighbors and the links between them through periodically broadcast. (e) The wireless transmission energy of macronode can be adjusted based on the distance between the receiver and itself.
In wireless transmission, attenuation of sending power decreases with the increasing transmission distance. Equation (1) is the amount of energy consumed for receiving l bits of data which is caused by circuit loss. Equation (2) is the amount of energy consumed for transmitting l bits of data to d distance.
where Ecircuit is the energy consumption per bit in the transmitter and receiver circuit. d0 is a constant which relies on the application environment. εma is the multiple attenuation model’s amplifier energy consumption. εfs is the free space model’s amplifier energy consumption.
3.2 Network model
In this paper, we assume that sensor nodes are deployed randomly in the square field to monitor the phenomenon. We know that in LEACH algorithm, each node randomly decides to become a cluster head (CH). Once a node decides to become a cluster head, it aggregates the data received from various nodes inside the cluster and sends it to the base station. However, the random cluster head selection can not guarantee the number and the distribution of cluster head in each round. It may select a node which is far away from base station and has low residual energy to become the cluster head, which will cause the uneven energy loss of nodes in the network and form monitoring blind spot, even will influence the whole performance of the system. In order to improve this kind of situation, we will use a three level hierarchy structure model, which divides the nodes into four categories: ordinary cluster head node (CH), base station cluster head (BSC), base station (BS), and common sensor node (CS). Following Fig. 1 shows the network model.
Fig. 1.Three level hierarchy structure model
4. Fault-tolerance Problem Using IEIFTA
The IEIFTA is used to provide a fast recovery mechanism from path failure due to energy depletion or physical damage with an alternative path. It chooses a path with the optimal fitness from the optional sensor nodes. Its flow chart is shown in Fig. 2.
Fig. 2.The flow chart of the IEIFTA
(1) Initialization
The principle of the IEIFTA is to search in different D-dimensional target spaces using λ independent particle swarms. To initialize the algorithm, we set the population size of particle n, the division factor λ, and each particle swarm includes particles. Then, the D-dimensional vector is divided into λ swarms. We define a matrix by [D×2n] to represent the initial particle swarm, in which the former n columns are the velocity of particle, and the latter n columns are the position of particle.
(2) Calculate the fitness
The sub-tree of the network is modeled as a directed, connected graph G(V,E), where V is the set of sub-tree nodes and E is the set of sub-tree edges representing connection between these nodes, where source node ns∈V and macronode nr∈{V-{ns}}. pi(s,r) is a valid path between ns and nr. n∈pi(s,r) represents a node is in pi(s,r), and e∈pi(s,r) represents direct edge between any two adjacent nodes are in pi(s,r). Then the fitness function of is calculated as follows:
Where f1 is the distance of the edges of path versus the distance of all the edges in the sub-tree, f2 is the ratio of the energy consumed by the edges of path and the energy consumed by all the edges in the sub-tree, f3 is the delay of the edges and nodes of path versus the delay of all the nodes in the sub-tree. ξ1, ξ2, ξ3 are the weight of distance constraints, effective energy and delay in the fitness function, and ξ1 + ξ2 + ξ3=1. The higher fitness value indicates the more suitable path. In this paper, we set ξ1=0.2, ξ2=0.3, ξ3=0.5
(3) Immunization
Each particle is considered as an antibody in this step. The clone number and the fitness of particle are proportional. The clonal number Nc is usually calculated as follows:
where γ is the clone factor and is proportional to particle’s fitness value. N is the number of particles. Mutation rule can be set up according to experience. The particle mutation rule for the function optimization problem is
where ci is the clonal individual, xi is the original antibody, β is the mutation factor, and U is uniformly distributed in [0,1].
For the particles replacement rule, we need to calculate the antigen stimulus degree of the original particles and select clonal mutation particles. The Euclidean distance between any antigen γt and particle Ct is
Therefore, the stimulus degree of antibody particle is
After that, each particle is compared with stimulus threshold; the higher one will maintain in the sub-swarm, but the lower one will be replaced. Then, go to immunization.
(4) Termination Condition
Giteration represents the iterated generations for searching process. The termination condition is that Giteration decreases to zero or its fitness is the global optimal fitness. If the solution is satisfied with the termination condition, the optimal path pi will be the desired optimal solution, and this procedure ends; otherwise, updates the velocity and position of each sub-swarm and particle. Then, the kth path is established.
(5) Update
In this step, the position and velocity of the particle is updated as follows:
where c1 and c2 are learning factors, and usually we make where c1=c2=1.5; ω is the inertia weight and used to control the tradeoff between the local and the global exploration ability of the swarm. Random numbers U1 and U2 are uniformly distributed in [0,1].
The updating equation of particles’ optimal position vector in each sub-swarm is as follows:
where 1≤i≤k. b(g) is a complete vector function consisting of all sub-swarms’ optimal position vector, xqSi represents position vector of the qth particle in the ith swarm, PqSi is the optimal history position vector of the qth particle in the ith swarm, and PgSi represents optimal experience position vector of the ith swarm.
The updating equation of optimal position of each sub-swarm is
Equation (13) indicates that the optimal position of the qth sub-swarm will select the personal optimal position with the optimal fitness of particle in the swarm.
Equation (14) and (15) indicate that inertia weight ω plays an important role to the convergence of the result among the adjustable parameters. The smaller weight is better for the convergence, and the larger one can help the particle escape from the local best solution, thus the inertia weight can achieve balance between the global search and the local search. To overcome the limitations of other strategies, the linear differential decreasing strategy is used [26]. Here, we select ωstart=0.9, ωend=0.4.
Example: Let us consider the example network topology which is shown in Fig. 3. Let us assume the following values: Giteration=100, ξ1=0.2, ξ2=0.3, ξ3=0.5
Fig. 3.An example network topology
The destination and the source nodes are respectively represented as D and S. The available paths are as follows:
P1: S→C→B→D
P2: S→E→B→D
P3: S→F→G→B→D
P4: S→F→G→D
P5: S→F→D
P6: S→A→D
At the beginning, 150 particles are sent for traversing the network. The node F is bad for some reasons. Then the available paths are P1, P2 and P6.
First Iteration: Calculate the fitness of the paths P1, P2 and P6 using Equation (3), (4), (5) and (6). We have the fitness of the paths as follows.
fitness(P1)=0.08, fitness(P2)=0.05, and fitness(P6)=0.09.
The ants update the paths using Equation (11).
After 100 iterated generations, we observe that the path P6 is the optimal path. Hence, the data is routed through it.
5. Simulation Results and Analysis
5.1 Comparison of Optimum Value Simulation Environment and parameters
In order to evaluate the performance of the IEIFTA, we design a corresponding simulation scenario on Matlab. The simulation experiment is constructed on Windows XP with Intel Pentium 4C processor (2.8GHz) and 2GB RAM.
The sensor nodes are randomly deployed on area A (500m×500m), and the macronodes are located at known coordinates. 600 rounds are taken and six packets are delivered in each round. The size of the network is the same for different algorithms and the fitness function is then measured. The parameters used for the IEIFTA are function dimension D=25, iterated generations Giterated=1200, division factor λ=6, clone factor γ=3, mutation factor β=0.4.
5.2 Number of alive nodes
The simulation ends after 1200 rounds. We compare the simulation results among EARQ, SPSOA and IEIFTA. We compare the number of alive nodes per round for these three algorithms. As shown in Fig. 4, the number of nodes died in the IEIFTA is less than that of EARQ and SPSOA over the same number of rounds. The reason is that all the nodes only need to transmit data to its root of the sub-tree in the networks, which shortens the transmission distance between sensor nodes to the sink, and prolongs the lifetime. The fast routing recovery mechanism of the IEIFTA also makes its number of alive nodes 5% ~15% more than that of EARQ and SPSOA in the same rounds.
Fig.4.Number of alive nodes
5.3 Energy depletion ratio
As shown in Fig. 5, energy depletion ratio of the IEIFTA is 5%~30% smaller than that of EARQ and SPSOA. The reason it that the IEIFTA can select the nodes with better QoS parameters (such as more available energy and less distance of path) to establish alternative path and construct a more reliable transmission environment to reduce the retransmission caused by unstable paths, therefore, prolong the network lifetime as compared to EARQ and SPSOA.
Fig.5.Energy depletion ratio
5.4 Average delay of packet delivery
Fig. 6 shows the average delay of packet delivery (average delay of each packet delivered from source node to the sink). We can observe that the IEIFTA outperforms EARQ and SPSOA in terms of average delay for the same networks. The IEIFTA has demonstrated a lower delay when network size grows. The reason is that the proposed IEIFTA has the multipath property and the shortest alternative path selection for fault tolerance.
Fig.6.Packet delivery
5.5 Average successful packet delivery ratio
Fig. 7 shows that the IEIFTA can deliver more packets to the sink than the EARQ and the SPSOA. In most cases, the IEIFTA can send 5% ~15% more packets to the sink. A bigger value of packet delivery ratio indicates a lower packet dropout probability [27] and a better network capability of delivering useful information. The reason is that the IEIFTA provides a fast recovery from path failure with an optimal alternative path, which improves the success rate of data transmission.
Fig.7.Average packet delivery ratio
6. Conclusion
We propose the IEIFTA-based fault-tolerance algorithm for the Internet of Things, which focuses on a solution to the problem of energy depletion and packet delivery of nodes, by trying to recover the routing for the path failure and achieve energy conservation by avoiding unnecessary retransmission. The conserved energy can be used to increase the quantity of information received by the sink. The experimental results indicate the promising ability of the IEIFTA, and better solutions of fault tolerance and prolonging the network lifetime can be obtained by the IEIFTA than the EARQ and the SPSOA. The results have illustrated the advantage of IEIFTA and backup disjoint multipath, which can reduce the risk of data delivery loss and energy consumption on the path exploring. It also aims at shortening delay of packet delivery, evening energy dissipation among the nodes by constructing the optimal alternative paths in the cyber-physical systems. The strength of the IEIFTA is its simplicity and effectiveness for fast routing recovery compared to other approaches and makes the IEIFTA a potential solution to meet the requirements of critical conditions on monitoring applications.
References
- Tang Lu-An, Yu Xiao, Kim Sangkyum, "Trustworthiness analysis of sensor data in cyber-physical systems," JOURNAL OF COMPUTER AND SYSTEM SCIENCES, vol.79, no.3, pp. 383-401, 2011.
- Celanovic Nikola L., Celanovic Ivan L., Ivanovic Zoran R, "Cyber Physical Systems: A New Approach to Power Electronics Simulation, Control and Testing," ADVANCES IN ELECTRICAL AND COMPUTER ENGINEERING, vol.12, no.3, pp. 33-38, 2012.
- Kostas Psannis, "Efficient Redundant Frames Encoding Algorithm for Streaming Video over Error Prone Wireless Channels," IEICE ELEX Journal, vol.6, no.21, pp. 1497-1502, 2009. https://doi.org/10.1587/elex.6.1497
- Chillarege Ram, Voas Jeffrey, "Reliability of Embedded and Cyber-Physical Systems Introduction," IEEE SECURITY & PRIVACY, vol.8, no.5, pp. 12-13, 2010.
- Wu Guowei, Lu Dongze, Xia Feng, "A FAULT-TOLERANCE EMERGENCY-AWARE ACCESS CONTROL SCHEME FOR CYBER-PHYSICAL SYSTEMS," INFORMATION TECHNOLOGY AND CONTROL, vol.40, no.1, pp. 29-40, 2011.
- Fink Jonathan, Ribeiro Alejandro, Kumar Vijay, "Robust Control for Mobility and Wireless Communication in Cyber-Physical Systems With Application to Robot Teams," PROCEEDINGS OF THE IEEE, vol.100, no.1, pp. 164-178, 2012. https://doi.org/10.1109/JPROC.2011.2161427
- Tang Yuqi, Huang Xin, Zhang Liangpei, "Fault-Tolerant Building Change Detection From Urban High-Resolution Remote Sensing Imagery," IEEE GEOSCIENCE AND REMOTE SENSING LETTERS, vol.10, no.5, pp. 1060-1064, 2013. https://doi.org/10.1109/LGRS.2012.2228626
- Li Husheng, Lai Lifeng, Poor H. Vincent, "Multicast Routing for Decentralized Control of Cyber Physical Systems with an Application in Smart Grid," IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, vol.30, no.6, pp. 1097-1107, 2012. https://doi.org/10.1109/JSAC.2012.120708
- Gupta Vijay, "On the Effect of Stochastic Delay on Estimation," IEEE TRANSACTIONS ON AUTOMATIC CONTROL, vol.56, no.9, pp. 2145-2150, 2011. https://doi.org/10.1109/TAC.2011.2139570
- Martin Drozda, Iain Bate, Jon Timmis, "Bio-inspired Error Detection for Complex Systems," In Proc. of Proceedings of the 17th IEEE Pacific Rim International Symposium on Dependable Computing, Pasadena, CA, USA, 2011. pp. 154-163.
- Guo Zhihao, Sheikh Shaya, Al-Najjar Camelia, "Mobile ad hoc network proactive routing with delay prediction using neural network," WIRELESS NETWORKS, vol.16, no.6, pp. 1601-1620, 2010. https://doi.org/10.1007/s11276-009-0217-7
- Abbas Ash Mohammad, "Analysis of Multiple Attempt Multipath Routing for mobile ad hoc networks," INTERNATIONAL JOURNAL OF AD HOC AND UBIQUITOUS COMPUTING, vol.5, no.3, pp. 163-177, 2010. https://doi.org/10.1504/IJAHUC.2010.032229
- Attia Radwa, Rizk Rawya, Mariee Mahmoud, "An Ant Inspired QoS Routing Algorithm for MANETs," CONTROL ENGINEERING AND APPLIED INFORMATICS, vol.10, no.2, pp. 111-134, 2010.
- Shiliang Luo, Xu Lu, Lianglun Cheng, "TSOIA: an efficient node selection algorithm facing the uncertain process for Internet of Things," JOURNAL OF NETWORK AND COMPUTER APPLICATIONS, vol.36, no.2, pp. 738-743, 2013. https://doi.org/10.1016/j.jnca.2012.12.015
- Seok Seung-Joon, You Bongsoo, Youm Sungkwan, "A heuristic multi-path routing scheme for online traffic in MPLS networks," COMPUTER SYSTEMS SCIENCE AND ENGINEERING, vol.25, no.1, pp. 29-36, 2010.
- Darki Fahimeh, Oghabian Mohammad Ali, Ahmadian Alireza, "Fractional anisotropy-weighted front evolution algorithm for white matter tractography based on diffusion tensor imaging data," INTERNATIONAL JOURNAL OF IMAGING SYSTEMS AND TECHNOLOGY, vol.21, no.4, pp. 307-314, 2011. https://doi.org/10.1002/ima.20296
- Wen-Tsai Sung, Yen-Chun Chiang, "Improved Particle Swarm Optimization Algorithm for Android Medical Care IOT using Modified Parameters," Journal of Medical Systems, vol.36, no.6, pp. 3755-3763, 2012. https://doi.org/10.1007/s10916-012-9848-9
- Yan Zhongjiang, Chang Yilin, Jiang Hai, "Fault-tolerance in wireless ad hoc networks: bi-connectivity through movement of removable nodes," WIRELESS COMMUNICATIONS & MOBILE COMPUTING, vol.13, no.12, pp. 1095-1110, 2013. https://doi.org/10.1002/wcm.1164
- Jiang Wei, Zhan Jinyu, Chang Zhengwei, "Energy-Efficient and Reliable Wireless Message Scheduling for Mission-Critical Cyber Physical Systems," CONTROL ENGINEERING AND APPLIED INFORMATICS, vol.13, no.3, pp. 95-100, 2011.
- Bouabdallah Nizar, Rivero-Angeles Mario E., Sericola Bruno, "Continuous Monitoring Using Event-Driven Reporting for Cluster-Based Wireless Sensor Networks," IEEE TRANSACTIONS ON VEHICULAR TECHNOLOGY, vol.58, no.7, pp. 3460-3479, 2009. https://doi.org/10.1109/TVT.2009.2015330
- Wright Sandra, Wilson Simone, Miller William G., "Differences in Methylation at GATC Sites in Genomic DNA of Campylobacter coli from Turkeys and Swine," APPLIED AND ENVIRONMENTAL MICROBIOLOGY, vol.76, no.21, pp. 7314-7317, 2010. https://doi.org/10.1128/AEM.00934-10
- Xu Xianghua, Gao Xueyong, Wan Jian, "Trust Index Based Fault Tolerant Multiple Event Localization Algorithm for WSNs," SENSORS, vol.11, no.7, pp. 6555-6574, 2011. https://doi.org/10.3390/s110706555
- Lu-An Tang, Xiao Yu, Sangkyum Kim, Jiawei Han, Wen-Chih Peng, Yizhou Sun, Hector Gonzalez, Sebastian Seith, "Multidimensional Analysis of Atypical Events in Cyber-Physical Data," In Proc. of IEEE International Conference on Data Engineering (ICDE), pp. 1025-1036, 2012.
- Lu-An Tang, Xiao Yu, Quanquan Gu, Jiawei Han, Alice Leung, Thomas La Porta, "Mining Lines in the Sand: On Trajectory Discovery From Untrustworthy Data in Cyber-Physical System," In Proc. of 2013 ACM SIGKDD Int. Conference on Knowledge Discovery and Data Mining (KDD), 2013.
- Lu-An Tang, Xiao Yu, Sangkyum Kim, Jiawei Han, Chih-Chieh Hung, Wen-Chih Peng, "Tru-Alarm: Trustworthiness Analysis of Sensor Networks in Cyber-Physical Systems," In Proc. of International Conference on Data Mining (ICDM), pp. 1079-1084, 2010.
- Liu Yanfang, Qi Naiming, Tang Zhiwei, "Linear Quadratic Differential Game Strategies with Two-pursuit Versus Single-evader," CHINESE JOURNAL OF AERONAUTICS, vol.25, no.6, pp. 896-905, 2012. https://doi.org/10.1016/S1000-9361(11)60460-3
- Moayedi Maryam, Foo Yung Kuan, Soh Yeng Chai, "Filtering for networked control systems with single/multiple measurement packets subject to multiple-step measurement delays and multiple packet dropouts," INTERNATIONAL JOURNAL OF SYSTEMS SCIENCE, vol.42, no.3, pp. 335-348, 2011. https://doi.org/10.1080/00207720903513335