<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="nlm-ta">Sensors</journal-id>
<journal-title>Sensors</journal-title>
<issn pub-type="epub">1424-8220</issn>
<publisher>
<publisher-name>Molecular Diversity Preservation International (MDPI)</publisher-name></publisher></journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3390/s110706555</article-id>
<article-id pub-id-type="publisher-id">sensors-11-06555</article-id>
<article-categories>
<subj-group>
<subject>Article</subject></subj-group></article-categories>
<title-group>
<article-title>Trust Index Based Fault Tolerant Multiple Event Localization Algorithm for WSNs</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Xu</surname><given-names>Xianghua</given-names></name><xref ref-type="aff" rid="af1-sensors-11-06555"><sup>1</sup></xref><xref ref-type="corresp" rid="c1-sensors-11-06555"><sup>*</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Gao</surname><given-names>Xueyong</given-names></name><xref ref-type="aff" rid="af1-sensors-11-06555"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Wan</surname><given-names>Jian</given-names></name><xref ref-type="aff" rid="af1-sensors-11-06555"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Xiong</surname><given-names>Naixue</given-names></name><xref ref-type="aff" rid="af2-sensors-11-06555"><sup>2</sup></xref></contrib></contrib-group>
<aff id="af1-sensors-11-06555">
<label>1</label> Grid and Services Computing Lab, School of Computer Science and Technology, Hangzhou Dianzi University, Hangzhou 310037, China; E-Mails: <email>huxy20@yahoo.com.cn</email> (X.G.); <email>wanjian@hdu.edu.cn</email> (J.W.)</aff>
<aff id="af2-sensors-11-06555">
<label>2</label> Department of Computer Science, IS&amp;T on Virtual Computing Lab, Georgia State University, Atlanta, GA 30303, USA; E-Mail: <email>xiongnaixue@gmail.com</email></aff>
<author-notes>
<corresp id="c1-sensors-11-06555">
<label>*</label>Author to whom correspondence should be addressed; E-Mail: <email>xhxu@hdu.edu.cn</email>; Tel.: +86-571-86-919-113; Fax: +86-571-86-919-113.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2011</year></pub-date>
<pub-date pub-type="epub">
<day>27</day>
<month>6</month>
<year>2011</year></pub-date>
<volume>11</volume>
<issue>7</issue>
<fpage>6555</fpage>
<lpage>6574</lpage>
<history>
<date date-type="received">
<day>19</day>
<month>4</month>
<year>2011</year></date>
<date date-type="rev-recd">
<day>8</day>
<month>6</month>
<year>2011</year></date>
<date date-type="accepted">
<day>22</day>
<month>6</month>
<year>2011</year></date></history>
<permissions>
<copyright-statement>© 2011 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
<copyright-year>2011</copyright-year>
<license>
<p>This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).</p></license></permissions>
<abstract>
<p>This paper investigates the use of wireless sensor networks for multiple event source localization using binary information from the sensor nodes. The events could continually emit signals whose strength is attenuated inversely proportional to the distance from the source. In this context, faults occur due to various reasons and are manifested when a node reports a wrong decision. In order to reduce the impact of node faults on the accuracy of multiple event localization, we introduce a trust index model to evaluate the fidelity of information which the nodes report and use in the event detection process, and propose the Trust Index based Subtract on Negative Add on Positive (TISNAP) localization algorithm, which reduces the impact of faulty nodes on the event localization by decreasing their trust index, to improve the accuracy of event localization and performance of fault tolerance for multiple event source localization. The algorithm includes three phases: first, the sink identifies the cluster nodes to determine the number of events occurred in the entire region by analyzing the binary data reported by all nodes; then, it constructs the likelihood matrix related to the cluster nodes and estimates the location of all events according to the alarmed status and trust index of the nodes around the cluster nodes. Finally, the sink updates the trust index of all nodes according to the fidelity of their information in the previous reporting cycle. The algorithm improves the accuracy of localization and performance of fault tolerance in multiple event source localization. The experiment results show that when the probability of node fault is close to 50%, the algorithm can still accurately determine the number of the events and have better accuracy of localization compared with other algorithms.</p></abstract>
<kwd-group>
<kwd>trust index</kwd>
<kwd>binary data</kwd>
<kwd>multiple event localization</kwd>
<kwd>fault tolerance</kwd>
<kwd>maximum likelihood estimation</kwd>
<kwd>wireless sensor networks</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>Wireless Sensor Networks (WSNs) consist of many sensor nodes capable of computation and communication which are distributed in a specified area. The sensor nodes can collaborate to deal with many kinds of complicated tasks including monitoring ecological environments, protecting infrastructures, tracking targets and so on [<xref ref-type="bibr" rid="b1-sensors-11-06555">1</xref>–<xref ref-type="bibr" rid="b3-sensors-11-06555">3</xref>]. WSNs which are deployed in a real environment may easily fail due to many reasons, such as software malfunctions, hardware failures, radio interference, battery depletion, malicious damage and so on [<xref ref-type="bibr" rid="b4-sensors-11-06555">4</xref>–<xref ref-type="bibr" rid="b6-sensors-11-06555">6</xref>]. As mentioned in [<xref ref-type="bibr" rid="b5-sensors-11-06555">5</xref>], about 40% to 60% of data measured by sensor nodes can be faulty in a real environment deployment. Therefore, fault-tolerance is a particular important issue in WSN applications.</p>
<p>WSNs are often used to detect the occurrence of an event in a region and determine its location, such as monitoring of pollution sources, detection of fire occurrence and so on. In these applications, all events are continually emitting signals whose strength is attenuated inversely proportional to the distance from the source. The sensor nodes report the strength of the signal to the sink regularly, and then the sink estimates the location of the source according to the information of the alarmed nodes reporting. The event localization algorithms can be divided into centralized approaches and distributed approaches. In a centralized approach, all sensor measurements are sent to the sink, and the location estimation is performed at the sink [<xref ref-type="bibr" rid="b7-sensors-11-06555">7</xref>–<xref ref-type="bibr" rid="b9-sensors-11-06555">9</xref>]. In a distributed approach, nodes exchange sensors observation information with the surrounding neighbors and determine who is the cluster node [<xref ref-type="bibr" rid="b10-sensors-11-06555">10</xref>–<xref ref-type="bibr" rid="b12-sensors-11-06555">12</xref>]. The cluster nodes run a localization algorithm and determine the location of the sources. Centralized approaches can collect more information and accurately determine the location of the events, but they always consume more energy. Distributed approaches, on the other hand, have less computation overhead, but are not accurate enough for determining the location of the events. This paper mainly focuses on the fault-tolerance issue for multiple event detection and localization in wireless sensor networks, and devises a simple, fault-tolerant multiple event localization algorithm with higher estimation accuracy.</p>
<p>Maximum likelihood estimation is an important approach used for event localization [<xref ref-type="bibr" rid="b13-sensors-11-06555">13</xref>–<xref ref-type="bibr" rid="b16-sensors-11-06555">16</xref>]. Michaelides [<xref ref-type="bibr" rid="b17-sensors-11-06555">17</xref>] proposed a distributed multiple event source localization algorithm based on maximum likelihood estimation. In the algorithm, each node exchanges information with the surrounding neighbors and some nodes are elected as cluster nodes. Then, the cluster nodes construct the likelihood matrix by analyzing the information of its neighbor nodes. Finally, the cluster nodes determine the location of all the events through maximum likelihood estimation. However, when constructing the likelihood matrix, faulty nodes may have a great effect on the value of the maximum likelihood matrix elements and result in a great deviation of positioning.</p>
<p>In this paper, we introduce the <italic>trust index</italic> for each sensor node, which used to evaluate the trust degree of a node according to its previous alarm reporting and determine the weight of the node’s reporting data in the event localization process, to reduce the impact of faulty nodes in event localization. We propose the Trust Index based Subtract on Negative Add on Positive (TISNAP) localization algorithm, which reduces the impact of faulty nodes on the event localization by decreasing their trust index, to improve the accuracy of event localization and performance of fault tolerance for multiple event source localization. The algorithm has three main phases: determine the number of events, localization and updating of the trust index: (1) the sink identifies the cluster nodes to determine the number of events occurred in the entire region by analyzing the binary data reported by all nodes. First, the alarmed nodes send binary data to the sink and other nodes remain silent. Next, the sink computes all the likelihood functions <italic>F<sub>n</sub></italic> according to the collected data. Each alarmed node <italic>n</italic> has a corresponding likelihood function <italic>F<sub>n</sub></italic>. If <italic>F<sub>n</sub></italic> &gt; 0, we think that there is an event around the alarmed node <italic>n</italic>. Then the alarmed node whose corresponding likelihood function value is the maximal value in a certain area is selected as a cluster node; (2) the sink constructs the likelihood matrix related to the cluster nodes and estimates the location of all events according to the alarmed status and trust index of the nodes around the cluster nodes; (3) the sink updates the trust index of all nodes according to the behavior in the previous reporting. According to the location of all nodes and their reported data, the sink judges whether or not the data reported by them is true. If it is judged true, the sink increases the trust index of the node. Otherwise, the sink reduces its trust index. The trust index of nodes ranges from 0 to 1. By introducing the trust index model, the algorithm enhances the influence of normal nodes and reduces the influence of faulty nodes, and it has higher localization accuracy and better performance of fault tolerance.</p>
<p>The paper is organized as follows: first, in Section 2, we present the related work in event localization in sensor networks. Next, in Section 3, we introduce the model we have adopted and the underlying assumptions. In Section 4, we provide the details of the TISNAP algorithm for multiple event source localization. In Section 5, we theoretically compare the TISNAP algorithm with the DSNAP algorithm. Section 6 presents the simulation results and comparison of the performance with other algorithm. Finally, in Section 7, we present the conclusions of our research.</p></sec>
<sec>
<label>2.</label>
<title>Related Works</title>
<p>Event localization is an important research issue in WSNs [<xref ref-type="bibr" rid="b13-sensors-11-06555">13</xref>,<xref ref-type="bibr" rid="b14-sensors-11-06555">14</xref>]. The localization techniques can be classified into four main categories: (1) Angle of Arrival (AOA) [<xref ref-type="bibr" rid="b18-sensors-11-06555">18</xref>]; (2) Time of Arrival (TOA) [<xref ref-type="bibr" rid="b19-sensors-11-06555">19</xref>,<xref ref-type="bibr" rid="b20-sensors-11-06555">20</xref>]; (3) Time Difference of Arrival (TDOA) [<xref ref-type="bibr" rid="b21-sensors-11-06555">21</xref>,<xref ref-type="bibr" rid="b22-sensors-11-06555">22</xref>]; (4) Energy-based [<xref ref-type="bibr" rid="b9-sensors-11-06555">9</xref>,<xref ref-type="bibr" rid="b11-sensors-11-06555">11</xref>,<xref ref-type="bibr" rid="b23-sensors-11-06555">23</xref>,<xref ref-type="bibr" rid="b24-sensors-11-06555">24</xref>]. The energy-based approach uses event signal strength of sensor measurements to estimate event location [<xref ref-type="bibr" rid="b13-sensors-11-06555">13</xref>–<xref ref-type="bibr" rid="b17-sensors-11-06555">17</xref>]. It does not need precise synchronization among the sensor nodes. Hence, it is more suitable for event localization in large scale wireless sensor networks.</p>
<p>Ding proposed the Centroid Estimator (CE) algorithm [<xref ref-type="bibr" rid="b9-sensors-11-06555">9</xref>]. It first gets the middle value of the sampling, filtering the incorrect data caused by occasional faults. Then it simply takes the centroid of the positions of all alarmed sensor nodes as the estimated event location. Let (<italic>x<sub>n</sub></italic>, <italic>y<sub>n</sub></italic>), <italic>n</italic> = 1, 2, …, <italic>P</italic> (<italic>p</italic> ≤ <italic>N</italic>) denote the position of all alarmed sensor nodes. Then, the event location estimated by CE is the centroid of these positions:
<disp-formula id="FD1">
<label>(1)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>θ</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mi>E</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mi>s</mml:mi></mml:msub>
<mml:mo stretchy="false">]</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">[</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>P</mml:mi></mml:mfrac>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>P</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi></mml:msub></mml:mrow>
<mml:mo>,</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>P</mml:mi></mml:mfrac>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>P</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>n</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>However, this algorithm is sensitive to the presence of false positives (sensor nodes not in the region of the source but alarmed). These faults can result in large errors, especially if the faulty node is far away from the event location.</p>
<p>Niu [<xref ref-type="bibr" rid="b15-sensors-11-06555">15</xref>] proposed an algorithm called Maximum Likelihood (ML) that uses only binary readings which are communicated to the base station to estimate the event position. The likelihood function is given by:
<disp-formula id="FD2">
<label>(2)</label>
<mml:math display="block">
<mml:mrow>
<mml:mtext>log</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo>|</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>N</mml:mi></mml:munderover>
<mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>M</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:mrow>
<mml:mo>×</mml:mo>
<mml:mtext>log</mml:mtext>
<mml:mo stretchy="false">[</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>σ</mml:mi>
<mml:mi>ω</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">]</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>×</mml:mo>
<mml:mtext>log</mml:mtext>
<mml:mo stretchy="false">[</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>σ</mml:mi>
<mml:mi>ω</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:math></disp-formula>where <italic>I<sub>n,t</sub></italic> is the binary reading. <italic>S<sub>n</sub></italic>(<italic>θ</italic>) is the measured signal by sensor without any noise. ML is sensitive to false negatives (nodes detected the event but not alarmed). These faults can result in large errors, especially for the faulty nodes close to the event that do not become alarmed.</p>
<p>Michealidis proposed Subtract on Negative Add on Positive (SNAP) [<xref ref-type="bibr" rid="b16-sensors-11-06555">16</xref>] for event location only using binary data from the sensor nodes. The main idea is that the base station uses the binary observations to construct a matrix by adding ±1. The size of the matrix is fixed and the sensor is at the center of the area. Specifically speaking, the alarmed sensors add 1 to the region of their coverage, while the silent sensors subtract 1. By summing the contribution of each sensor, the maximum of the matrix points to the estimated event location. The Add on Positive (AP) algorithm is a variant of the SNAP algorithm. It only uses positive contributions from the alarmed sensors to construct the likelihood matrix. It may be used to obtain a low-complexity implementation and can be robust to false negatives, but it has low accuracy.</p>
<p>Sheng [<xref ref-type="bibr" rid="b8-sensors-11-06555">8</xref>] presented a maximum likelihood (ML) acoustic source localization method which use the intensity attenuation function of acoustic signal. Analog measurements from sensors are required to estimate the source location. This incurs high communication and computation overhead. Therefore, it is desirable that only binary or multi-bit data are transmitted from local sensors to the processing node in the context of resource limited WSNs.</p>
<p>In the DSNAP [<xref ref-type="bibr" rid="b17-sensors-11-06555">17</xref>] algorithm and SNAP [<xref ref-type="bibr" rid="b16-sensors-11-06555">16</xref>] algorithm, binary data from local sensors is transmitted to the sink to estimate the location of events. According to the alarmed status, each node sends a data packet including binary data 0 or 1 to the sink. Using the binary data, the sink constructs the likelihood matrix and estimates all the event location. Since binary data is transmitted from local sensors to the processing node, the method needs lower communication energy and less calculation. However, node faults, e.g., false negative, false positive, have a great impact on accuracy of event localization.</p>
<p>Trust and reputation models have been used in the realm of network security [<xref ref-type="bibr" rid="b25-sensors-11-06555">25</xref>–<xref ref-type="bibr" rid="b28-sensors-11-06555">28</xref>] to detect misbehaving nodes and exclude them from the network. The concept of trust is interpreted as a relation among entities that participate in collaborative protocol in the sensor network system. Trust relations are based on evidence created by the previous interactions of entities within a protocol. Srinivasan [<xref ref-type="bibr" rid="b25-sensors-11-06555">25</xref>] proposed a reputation based scheme for excluding malicious beacon node that provide false location information. Probst [<xref ref-type="bibr" rid="b27-sensors-11-06555">27</xref>] presents a distributed approach that establishes reputation-based trust among sensor nodes in order to identify malfunctioning and malicious sensor nodes and minimize their impact on applications. In [<xref ref-type="bibr" rid="b28-sensors-11-06555">28</xref>], trust is used to indicate the fidelity of event nodes reported in the context of sensor data gathering. It proposes a fault tolerant method to diagnose and mask arbitrary node failures in an event-driven wireless sensor network.</p>
<p>In this paper, we use the trust index model to evaluate the fidelity of information that sensors nodes have reported in the context of multiple event source localization. As the sensor network system runs over a period of time, a number of trust index states are built up as the indicator of the fidelity of data nodes reporting. Then, we reduce the weight of the faulty nodes according to the nodes’ trust index in the process of multiple event location estimation to achieve better fault tolerance performance.</p></sec>
<sec>
<label>3.</label>
<title>Model and Assumptions</title>
<sec>
<label>3.1.</label>
<title>Assumptions and Definitions</title>
<p>For the sensor network that estimates the position of multiple events, we make the following assumptions:
<list list-type="order">
<list-item>
<p>A set of sensor nodes, denoted as <italic>N</italic>, are uniformly spread in the rectangular area <italic>A</italic>. The nodes are static, and their positions are known, denoted as (<italic>x<sub>n</sub></italic>, <italic>y<sub>n</sub></italic>), <italic>n</italic> = 1, …, <italic>N</italic>.</p></list-item>
<list-item>
<p>A set of event sources, denoted as <italic>K</italic>, are randomly distributed at the rectangular area <italic>A</italic>. we assume that the distance between any two event sources is far enough away, and they are not interfering with each other.</p></list-item>
<list-item>
<p>The event sources emit continuous signals that propagate evenly in all directions.</p></list-item></list></p>
<p>We assume that the signal strength of the event source <italic>k</italic> (<italic>k</italic> ∈ <italic>K</italic>) is <italic>c<sub>k</sub></italic>. In addition, the signal strength that the sensor node <italic>n</italic> inspected, denoted as <italic>s<sub>n,k</sub></italic>, is inversely proportional to the power <italic>α</italic> (<italic>α</italic> ∈ <italic>R<sup>+</sup></italic>) of distance <italic>r<sub>n,k</sub></italic> from the sensor node <italic>n</italic> to the event source <italic>k</italic>, in which <italic>α</italic> depends on the environment factor. So we have <italic>s<sub>n,k</sub></italic> at <italic>t</italic>-th sampling as follows:
<disp-formula id="FD3">
<label>(3)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mi>α</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:mrow></mml:math></disp-formula>where <italic>r<sub>n,k</sub></italic>(<italic>t</italic>) is the distance of sensor node <italic>n</italic> to source <italic>k</italic> at time <italic>t</italic>, given by:
<disp-formula id="FD4">
<label>(4)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow></mml:math></disp-formula></p>
<p>As a result, the <italic>t</italic>-th sampling measurement of a sensor <italic>n</italic> located at (<italic>x<sub>n</sub></italic>, <italic>y<sub>n</sub></italic>) is given by the sum of the signal strength from all sources at the sensor location:
<disp-formula id="FD5">
<label>(5)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mtext>min</mml:mtext>
<mml:mo>{</mml:mo>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mrow>
<mml:mtext>max</mml:mtext></mml:mrow></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>γ</mml:mi>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>K</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>}</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mi>M</mml:mi></mml:mrow></mml:math></disp-formula>where <italic>V</italic><sub>max</sub> reflects the maximum extent of sensor measurement, <italic>γ</italic> is the factor of the sensor gaining ratio. We assume that the signal noise <italic>ω<sub>n</sub></italic>(<italic>t</italic>) is satisfied with the model of white Gaussian noise, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∼</mml:mo>
<mml:mi>N</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>σ</mml:mi>
<mml:mi>ω</mml:mi>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, <italic>n</italic> = 1, 2, …, <italic>N</italic>, <italic>t</italic> = 1, 2, …, <italic>M.</italic> Model <xref ref-type="disp-formula" rid="FD5">Equation (5)</xref> is commonly used in wireless sensor networks as a signal propagation model [<xref ref-type="bibr" rid="b29-sensors-11-06555">29</xref>,<xref ref-type="bibr" rid="b30-sensors-11-06555">30</xref>].</p>
<p>We assume that the sensor nodes have been preset with a common threshold <italic>T</italic> of signal strength. The definitions of alarm sensor and non-alarm sensor are given as follows:
<list list-type="bullet">
<list-item>
<p><italic>Alarmed Sensor</italic>: a sensor whose signal measurement value satisfies <italic>Z<sub>n,t</sub></italic> ≥ <italic>T</italic>.</p></list-item>
<list-item>
<p><italic>Non-alarmed Sensor</italic>: a sensor whose signal measurement value satisfies <italic>Z<sub>n,t</sub></italic> &lt; <italic>T</italic>.</p></list-item></list></p>
<p>Next, we explain some definitions [<xref ref-type="bibr" rid="b16-sensors-11-06555">16</xref>,<xref ref-type="bibr" rid="b17-sensors-11-06555">17</xref>] which are used in this paper:</p>
<p><bold>Definition 1:</bold> <italic>ROI</italic> (Region of Influence) is the area around an event source; when a sensor node is located inside this area, it will alarm with high probability.</p>
<p>As referred in <xref ref-type="disp-formula" rid="FD3">Equation (3)</xref>, the <italic>ROI</italic> of a single source is a circle centered at the source location with radius 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>I</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>/</mml:mo>
<mml:mi>T</mml:mi></mml:mrow>
<mml:mi>α</mml:mi></mml:mroot></mml:mrow></mml:math></inline-formula> (demonstrated in <xref ref-type="fig" rid="f1-sensors-11-06555">Figure 1</xref>). For multiple sources, the shape and size of the <italic>ROI</italic> depends on the distances between the sources. For any two sources, the <italic>ROI</italic> is connected if and only if their distance <italic>d</italic> ≤ <italic>L</italic> [<xref ref-type="bibr" rid="b17-sensors-11-06555">17</xref>], where:
<disp-formula id="FD6">
<label>(6)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mroot>
<mml:mi>T</mml:mi>
<mml:mi>α</mml:mi></mml:mroot></mml:mrow></mml:mfrac>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mrow>
<mml:mi>α</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:mroot>
<mml:mo>+</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mrow>
<mml:mi>α</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:mroot>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>α</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>α</mml:mi></mml:mfrac></mml:mrow></mml:msup></mml:mrow></mml:math></disp-formula></p>
<p>If the two event sources are identical, <italic>i.e.</italic>, <italic>c</italic><sub>1</sub> = <italic>c</italic><sub>2</sub> = <italic>c</italic>, then:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mroot>
<mml:mn>2</mml:mn>
<mml:mi>α</mml:mi></mml:mroot>
<mml:mroot>
<mml:mrow>
<mml:mfrac>
<mml:mi>c</mml:mi>
<mml:mi>T</mml:mi></mml:mfrac></mml:mrow>
<mml:mi>α</mml:mi></mml:mroot>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mroot>
<mml:mn>2</mml:mn>
<mml:mi>α</mml:mi></mml:mroot>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>I</mml:mi></mml:msub></mml:mrow></mml:math></disp-formula>where 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>I</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>/</mml:mo>
<mml:mi>T</mml:mi></mml:mrow>
<mml:mi>α</mml:mi></mml:mroot></mml:mrow></mml:math></inline-formula> is the radius of the <italic>ROI</italic> of a single event source.</p>
<p>We assume that the distance between any two events is greater than <italic>L</italic>. That is, their <italic>ROI</italic> are not connected.</p>
<p>From the sensor node perspective, we define two more regions for the single source case.</p>
<p><bold>Definition 2:</bold> <italic>ROC</italic> (Region of Coverage) of sensor node <italic>n</italic> is the area around a sensor node, in which if a event source is located inside, then it will be detected with high probability (as illustrated in <xref ref-type="fig" rid="f1-sensors-11-06555">Figure 1</xref>).</p>
<p>For a single event source, it can be obtained by the expression of <xref ref-type="disp-formula" rid="FD3">Equation (3)</xref> that, for a sensor node <italic>n</italic>, <italic>ROC<sub>n</sub></italic> is an circle area centered at the alarmed sensor node <italic>n</italic>, and is equal to the area of <italic>ROI</italic>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>c</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>I</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>/</mml:mo>
<mml:mi>T</mml:mi></mml:mrow>
<mml:mi>α</mml:mi></mml:mroot></mml:mrow></mml:math></inline-formula>. For multiple event sources, the size of <italic>ROC</italic> is determined by the signal strength of all event inspected by the sensor node. Because we assume that the distance between two event sources is large enough, the strength of distant event source is negligible compared with nearby events.</p>
<p><bold>Definition 3:</bold> <italic>RON</italic> (Region Of Neighbor) of sensor node is the area around a sensor node, in which the reporting data of all nodes located inside are collected for construction of likelihood function to achieve the estimation of event source location (as shown in <xref ref-type="fig" rid="f1-sensors-11-06555">Figure 1</xref>).</p>
<p>Since energy efficiency is the major issue in sensor networks and communication is the most expensive operation in terms of energy. We assume <italic>RON<sub>n</sub></italic> = 2<italic>ROC<sub>n</sub></italic>, which is determined in tradeoff between estimation accuracy and complexity.</p></sec>
<sec>
<label>3.2.</label>
<title>Fault Model</title>
<p>We consider two types of node alarm fault in the paper:
<list list-type="bullet">
<list-item>
<p><italic>False positive</italic>: some sensor nodes located outside the <italic>ROI</italic> of the event source are alarmed.</p></list-item>
<list-item>
<p><italic>False negative</italic>: some sensor nodes located inside the <italic>ROI</italic> of the event source are not alarmed.</p></list-item></list></p>
<p>This fault model is reflecting two fault types in event localization using binary data which is proposed in SNAP [<xref ref-type="bibr" rid="b16-sensors-11-06555">16</xref>]. Due to noise, energy depletion, harsh environmental conditions, sensor malfunction, and so on, sensor nodes may often provide erroneous or unpredictable sensor data which leads to false positive alarms or false negative alarms in event localization using binary data. We introduce this fault model in the event localization of multiple sources in this paper.</p></sec>
<sec>
<label>3.3.</label>
<title>Trust Index Model</title>
<p>We are introducing a <italic>trust index</italic> to evaluate the correctness of the observation value of the sensor nodes in the process of event localization, and distinguish the correct nodes, which have high probability of reporting correct data, from faulty nodes. So we treat the data from the correct nodes with higher weight and the data from faulty nodes with lower weight in the maximum likelihood construction for event location estimation, to reduce the influence of faulty nodes on the accuracy of event localization in sensor network.</p>
<p>Each node in the field is assigned a <italic>trust index</italic> (referred to as <italic>TI</italic>, and <italic>TI</italic> ∈ [0, 1]). The trust index of a node is a measurement of the fidelity of event report of that node. The higher the trust index of a node is, the more reliable the node is deemed by the sink. At the initialization of the sensor network system, each node’s trust index is set to 1. The <italic>TI</italic> of node <italic>k</italic> in the <italic>t</italic>-th sampling measurement is defined as:
<disp-formula id="FD8">
<label>(8)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mi>λ</mml:mi>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:msup></mml:mrow></mml:math></disp-formula>where <italic>v<sub>t</sub></italic> is a step variable which is used to control the modification of the trust index value of node <italic>k</italic> in the <italic>t</italic>-th sampling measurement: <italic>TI<sub>k,t</sub></italic>; <italic>λ</italic> is a constant that decides how fast the <italic>TI<sub>k,t</sub></italic> will be changed when <italic>v<sub>t</sub></italic> increases or decreases.</p>
<p><xref ref-type="fig" rid="f2-sensors-11-06555">Figure 2</xref> depicts the variation of <italic>TI</italic> as the constant <italic>λ</italic> changes. The bigger constant <italic>λ</italic> is, the more dramatically <italic>TI</italic> decreases as the step variable <italic>υ</italic> increases. For a faulty node, it’s better to decrease its <italic>TI</italic> quickly so that it will have less influence on location estimation. However, some new modification errors may be introduced in the process of trust index modification, for example, the trust index of a correct node may be decreased due to wrong alarm. In order to reduce the location errors caused by modification errors, <italic>λ</italic> should be set to a proper value. Therefore, we should make a tradeoff between these two aspects. In the paper an empiric value <italic>λ</italic> = 2 is determined.</p>
<p>As mentioned above, each node’s <italic>TI</italic> is initialized to 1, that is, <italic>υ</italic> is initialized to 0. Similar to the above analysis, the changing step on <italic>υ</italic> has to be a proper value. In the paper, we decide a changing step equal to 0.1. In other words, each time a node makes a report deemed faulty by the sink, its <italic>TI</italic> value is increased by a step 0.1. On the contrary, each time a node makes a report deemed to be correct by the sink, its <italic>TI</italic> value is decreased by a step 0.1 if <italic>υ</italic> is larger than 0. The rules for modification of <italic>TI</italic> are given as follows:
<disp-formula id="FD9">
<label>(9)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>0.1</mml:mn></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo>&gt;</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>0.1</mml:mn></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>0.1</mml:mn></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>y</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula></p></sec></sec>
<sec>
<label>4.</label>
<title>TISNAP Algorithm</title>
<p>In this section, we introduce the Trust Index based Subtract on Negative Add on Positive (TISNAP) localization algorithm, which reduces the impact of faulty nodes on the event localization by decreasing their trust index, to improve the accuracy of event localization and performance of fault tolerance for multiple event sources localization. It has three phases:</p>
<sec>
<label>4.1.</label>
<title>Identifying the Number of Events</title>
<p>In multiple events localization, the first step is to identify the number of events in an area, and this is the precondition for estimating the location of the event sources. During the phase, the alarmed nodes send ‘1’ (alarm packet) to the sink, other nodes remain silent. In the sampling period, if the sink did not receive the alarm packet from a node, the sink regards it as a non-alarmed node. After the sink collected all alarm data in a sampling period, it computes the following likelihood function <italic>F<sub>n</sub></italic> for a sensor node <italic>n</italic> using information from the neighboring nodes that is located inside <italic>ROC<sub>n</sub></italic> of node <italic>n</italic>:
<disp-formula id="FD10">
<label>(10)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:munder>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>R</mml:mi>
<mml:mi>O</mml:mi>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>n</mml:mi></mml:msub></mml:mrow></mml:munder>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:mrow></mml:math></disp-formula>where:
<disp-formula id="FD11">
<label>(11)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>×</mml:mo>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>node </mml:mtext>
<mml:mi>m</mml:mi>
<mml:mtext> is alarmed</mml:mtext></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>×</mml:mo>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>otherwise</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>This process is equivalent to the majority voting rule. By introducing the trust index of nodes, the algorithm enhances the influence of normal nodes and reduces the influence of faulty nodes in the likelihood function. Then the sink selects the alarmed nodes, whose corresponding likelihood function values are the maximal value in their surrounding area respectively, as the cluster nodes. Generally, the number of cluster nodes is equal to the number of event sources which we can find in the whole area. The algorithm of selecting cluster nodes is shown in <xref ref-type="table" rid="t2-sensors-11-06555">Algorithm 1</xref>:
<table-wrap id="t2-sensors-11-06555" position="anchor">
<label>Algorithm 1.</label>
<caption>
<p>Finding the cluster nodes.</p></caption>
<table frame="hsides" rules="none">
<tbody>
<tr>
<td align="left" valign="top"><bold>Input:</bold> [X<sub>n</sub>, Y<sub>n</sub>, F<sub>n</sub>]for sensor nodes n = 1,2, …, N which F<sub>n</sub>&gt; 0<break/><bold>Output:</bold>[X<sub>m</sub>, Y<sub>m</sub>] for sensor nodes m = 1,2,…, M which M &lt; N<break/>1:<bold>for all</bold> sensor nodes i = 1,2,…, N<break/>2: <bold>for all</bold> sensor nodes j = 1,2,…, K ∈ ROC<sub>i</sub><break/>3: <bold>if</bold> F<sub>j</sub>&gt; F<sub>i</sub><break/>4: <bold>break</bold>;<break/>5: <bold>else</bold><break/>6: count++;<break/>7: <bold>end for</bold><break/>8: <bold>if</bold> count == K //F<sub>i</sub> is larger than all F<sub>j</sub> which j = 1,2,…, K<break/>9: <bold>output:</bold>[X<sub>i</sub>, Y<sub>i</sub>] // cluster nodes<break/>10: <bold>end for</bold></td></tr></tbody></table></table-wrap></p></sec>
<sec>
<label>4.2.</label>
<title>Event Localization</title>
<p>This phase is mainly used to estimate the location of all event sources. We divide the phase into three steps:</p>
<sec>
<label>4.2.1.</label>
<title>Grid Formation</title>
<p>The area is divided into a grid with <italic>G</italic> × <italic>G</italic> cells and grid resolution <italic>l</italic>, e.g., <xref ref-type="fig" rid="f3-sensors-11-06555">Figure 3</xref> shows a 30 × 30 field with <italic>G</italic> = 15 and a grid resolution <italic>l</italic> = 2. Let <italic>C</italic>(<italic>i</italic>, <italic>j</italic>) for <italic>i</italic>, <italic>j</italic> = 1, …, <italic>G</italic>, denote the centers of these cells in a matrix. The number of cells is a trade-off between estimation accuracy and complexity. Each sensor node is associated with a cell(<italic>i</italic>, <italic>j</italic>) based on its position (depending on the resolution, a cell may contain multiple sensors or no sensor at all). The position index of each node is denoted by (<italic>X<sub>n</sub></italic>, <italic>Y<sub>n</sub></italic>), <italic>n</italic> = 1, …, <italic>N</italic>, where <italic>X<sub>n</sub></italic>, <italic>Y<sub>n</sub></italic> ∈ {1, 2, …, <italic>G</italic>}.</p></sec>
<sec>
<label>4.2.2.</label>
<title>Construction of the Likelihood Matrix</title>
<p>Since the events are highly likely to occur in the <italic>ROC</italic> of the cluster node, for a cluster node <italic>k</italic>, we define a matrix <italic>L<sub>k</sub></italic>. Using the information from all relevant sensor nodes inside the <italic>RON<sub>k</sub></italic> of the cluster node <italic>k</italic>, the sink constructs a corresponding likelihood matrix <italic>L<sub>k</sub></italic>.</p>
<p>The cluster node <italic>k</italic> is associated with <italic>g<sub>k</sub></italic>, a sub-grid with G<sub>k</sub> × G<sub>k</sub> cells, centered around its location (<italic>X<sub>k</sub></italic>, <italic>Y<sub>k</sub></italic>). The size of the sub-grid <italic>G<sub>k</sub></italic> depends on the size of the <italic>RON<sub>k</sub></italic> and the grid resolution <italic>l</italic>:
<disp-formula id="FD12">
<label>(12)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>⌊</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mi>l</mml:mi></mml:mfrac></mml:mrow>
<mml:mo>⌋</mml:mo></mml:mrow>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:math></disp-formula></p>
<p>The sink defines a <italic>G<sub>k</sub></italic> × <italic>G<sub>k</sub></italic> likelihood matrix <italic>L<sub>k</sub></italic> where each element (<italic>i</italic>, <italic>j</italic>) of <italic>L<sub>k</sub></italic> corresponds to a cell (<italic>u</italic>, <italic>v</italic>) of <italic>g<sub>k</sub></italic>. The relation is given by a mapping <italic>M</italic>: <italic>g<sub>k</sub></italic> → <italic>L<sub>k</sub></italic> :
<disp-formula id="FD13">
<label>(13)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>M</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo stretchy="false">]</mml:mo></mml:mrow>
<mml:mi>T</mml:mi></mml:msup>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mo>⌈</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:mfrac></mml:mrow>
<mml:mo>⌉</mml:mo></mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mrow>
<mml:mo>⌈</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:mfrac></mml:mrow>
<mml:mo>⌉</mml:mo></mml:mrow>
<mml:mo stretchy="false">]</mml:mo></mml:mrow>
<mml:mi>T</mml:mi></mml:msup></mml:mrow></mml:math></disp-formula>where <italic>u</italic>, <italic>v</italic> ∈ {1, 2, …, <italic>G</italic>}. For every element of <italic>L<sub>k</sub></italic>, the sink adds the contribution of each sensor that has the corresponding cell in <italic>ROC</italic> of the cluster node <italic>k</italic>. The contributions depend on the sensor’s state: “+” the trust index of the senor on alarmed and “−” the trust index of the sensor on non-alarmed. More specifically, the sink updates every element (<italic>i</italic>, <italic>j</italic>) of <italic>L<sub>k</sub></italic> using:
<disp-formula id="FD14">
<label>(14)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munder>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>R</mml:mi>
<mml:mi>O</mml:mi>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:munder>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mo>{</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>}</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula>where:
<disp-formula id="FD15">
<label>(15)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>×</mml:mo>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mi> </mml:mi>
<mml:mtext>if node </mml:mtext>
<mml:mi>m</mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>alarmed and </mml:mtext>
<mml:msup>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∈</mml:mo>
<mml:mi>R</mml:mi>
<mml:mi>O</mml:mi>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>×</mml:mo>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mi> </mml:mi>
<mml:mtext>if node </mml:mtext>
<mml:mi>m</mml:mi>
<mml:mi> </mml:mi>
<mml:mrow>
<mml:mtext>non</mml:mtext>
<mml:mo>−</mml:mo>
<mml:mtext>alarmed and </mml:mtext></mml:mrow>
<mml:msup>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∈</mml:mo>
<mml:mi>R</mml:mi>
<mml:mi>O</mml:mi>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mn>0</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula>and <italic>ROC<sub>m</sub></italic> is the set of all grid cells that are covered by the <italic>ROC</italic> of sensor node <italic>m.</italic> The algorithm of constructing the likelihood function is shown in <xref ref-type="table" rid="t3-sensors-11-06555">Algorithm 2</xref>:
<table-wrap id="t3-sensors-11-06555" position="anchor">
<label>Algorithm 2.</label>
<caption>
<p>Likelihood Matrix Construction.</p></caption>
<table frame="hsides" rules="none">
<tbody>
<tr>
<td align="left" valign="top"><bold>Input:</bold> [<italic>X<sub>n</sub></italic>, <italic>Y<sub>n</sub></italic>, <italic>b<sub>n</sub></italic>] for sensor nodes <italic>n</italic> = <italic>1</italic>, <italic>2</italic>, …, <italic>N<sub>k</sub></italic> ∈ <italic>RON<sub>k</sub></italic><break/><bold>Output:</bold> Likelihood matrix <italic>L<sub>k</sub></italic><break/>1: <italic>L</italic> ← 0 // initialization<break/>2: <bold>for all</bold> cells <italic>M<sup>−1</sup>(i</italic>, <italic>j)</italic> ∈ <italic>g<sub>k</sub></italic> <bold>do</bold><break/>3: <bold>for all</bold> sensor nodes <italic>n</italic> that have cell <italic>M<sup>−1</sup>(i, j)</italic> ∈ <italic>ROC<sub>n</sub></italic> <bold>do</bold><break/>4: <italic>L<sub>k</sub>(i, j)</italic> ← <italic>L<sub>k</sub>(i, j)</italic> + <italic>b<sub>n</sub></italic>;<break/>5: <bold>end for</bold><break/>6: <bold>end for</bold></td></tr></tbody></table></table-wrap></p></sec>
<sec>
<label>4.2.3.</label>
<title>Maximization</title>
<p>Let (<italic>i*</italic>, <italic>j*</italic>) be the element of <italic>L<sub>k</sub></italic> with the maximum value, <italic>i.e</italic>., <italic>L<sub>k</sub></italic>(<italic>i*</italic>, <italic>j*</italic>) ≥ <italic>L<sub>k</sub></italic>(<italic>i</italic>, <italic>j</italic>), ∀<italic>i</italic>, <italic>j</italic> = 1, …, <italic>G<sub>k</sub></italic>. Then <italic>C</italic>(<italic>i*</italic>, <italic>j*</italic>) is regarded as one of the location of the events. The center of the cell corresponding to the maximum value of each matrix is regarded as the location of the events. In cases where more than one elements of a matrix have the same maximum value, the estimated event position is the centroid of the corresponding cell centers.</p></sec>
<sec>
<label>4.2.4.</label>
<title>Example</title>
<p>We provide a simple example to illustrate the TISNAP algorithm. In the example, the <italic>ROC</italic> of sensor node <italic>n</italic> is the set of cells that fall in a square of 5 × 5 cells around cell (<italic>i</italic>, <italic>j</italic>), where sensor <italic>n</italic> is located, as shown in <xref ref-type="fig" rid="f4-sensors-11-06555">Figure 4</xref>. The <italic>TI</italic> of each node is 1.</p>
<p><xref ref-type="fig" rid="f3-sensors-11-06555">Figure 3</xref> demonstrates the algorithm used by the sink for constructing the likelihood matrix <italic>L<sub>k</sub></italic> corresponding to node <italic>k</italic>. In <xref ref-type="fig" rid="f3-sensors-11-06555">Figure 3</xref>, the red node is the cluster node and there are three alarmed nodes and two non-alarmed nodes in its <italic>RON</italic>. Using the information from all relevant sensor nodes inside the <italic>RON</italic> of the cluster node, the sink constructs the likelihood matrix. The maximum value of the matrix is 3 and the center of the cell corresponding to it is the location of the event we estimated.</p></sec></sec>
<sec>
<label>4.3.</label>
<title>Updating the Trust Index</title>
<p>According to the estimated location of the events, the sink decides whether all the information reported by nodes is true or false after a round of event localization operation. Then, the sink updates the <italic>TI</italic> of all nodes according to <xref ref-type="disp-formula" rid="FD8">Equations (8)</xref> and <xref ref-type="disp-formula" rid="FD9">(9)</xref>. If the node is deemed as normal, the sink will increase its <italic>TI</italic>. Otherwise, the sink will reduce it. To illustrate the case, we provide a simple example. We assume that using the event localization algorithm, the location of the event estimated by the sink is shown in <xref ref-type="fig" rid="f5-sensors-11-06555">Figure 5</xref> in the <italic>t</italic>-th sampling period. Then, based on the estimated location of the event, the sink updates the trust index of all nodes for the preparation of the next round of event localization operation. As <xref ref-type="fig" rid="f5-sensors-11-06555">Figure 5</xref> shows, updating the trust index of the node has the following situations:
<list list-type="bullet">
<list-item>
<p>The node is in the <italic>ROI</italic> of the event, but it is not alarmed. The sink considers it as <italic>false negative</italic> node and reduces its <italic>TI</italic> value. Just as node A in <xref ref-type="fig" rid="f5-sensors-11-06555">Figure 5</xref>, according to <xref ref-type="disp-formula" rid="FD8">Equations (8)</xref> and <xref ref-type="disp-formula" rid="FD9">(9)</xref>, the trust index is given by:
<disp-formula>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>0.1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mi>λ</mml:mi>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:mrow></mml:math></disp-formula>So the <italic>TI</italic> of node A is reduced.</p></list-item>
<list-item>
<p>The node is in the <italic>ROI</italic> of the event, and it is alarmed. The sink considers it <italic>normal</italic> node and increases its trust index. Just as node B in <xref ref-type="fig" rid="f5-sensors-11-06555">Figure 5</xref>, the trust index is given by:
<disp-formula>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>B</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>B</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>0.1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>B</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mi>λ</mml:mi>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>B</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:mrow></mml:math></disp-formula>So the trust index of node B is increased.</p></list-item>
<list-item>
<p>The node is out of the <italic>ROI</italic> of the event, but it is alarmed. The sink considers it <italic>false positive</italic> node and reduces its trust index. Just as node C in <xref ref-type="fig" rid="f5-sensors-11-06555">Figure 5</xref>, the trust index is given by:
<disp-formula>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>0.1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mi>λ</mml:mi>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:mrow></mml:math></disp-formula>So the trust index of node C is reduced.</p></list-item>
<list-item>
<p>The node is out of the <italic>ROI</italic> of the event, and it is not alarmed. The sink considers it normal and increases its trust index. Just as node D in <xref ref-type="fig" rid="f5-sensors-11-06555">Figure 5</xref>, the trust index is given by:
<disp-formula>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>0.1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi> </mml:mi>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mi>λ</mml:mi>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mrow>
<mml:mi>D</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msup></mml:mrow></mml:math></disp-formula>So the trust index of node D is increased.</p></list-item></list></p></sec></sec>
<sec sec-type="methods">
<label>5.</label>
<title>Theoretical Analysis</title>
<p>In this section, we theoretically compare the TISNAP algorithm with the DSNAP one. The DSNAP algorithm is similar to the SNAP algorithm in [<xref ref-type="bibr" rid="b16-sensors-11-06555">16</xref>], and in essence, they are all methods of maximum likelihood estimation which use the information of sensor nodes located in the area of event source’s <italic>ROI</italic>. DSNAP is used for multiple event sources localization, while SNAP is used for single event source localization. According to the description of the literature [<xref ref-type="bibr" rid="b16-sensors-11-06555">16</xref>], we assume that a set of sensor nodes, <italic>K</italic>, located in an event source’s <italic>ROI</italic> area. For node <italic>k</italic>, <italic>k</italic> ∈ <italic>K</italic>, we define the indicator function <italic>I<sub>k</sub></italic> for <italic>k</italic> = 1, …, <italic>K</italic> and <italic>t</italic> = 1, …, <italic>M</italic>:
<disp-formula id="FD16">
<label>(16)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mtext>Z</mml:mtext>
<mml:mrow>
<mml:mrow>
<mml:mtext>k</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>t</mml:mtext></mml:mrow></mml:mrow></mml:msub>
<mml:mo>&lt;</mml:mo>
<mml:mi>T</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mtext>Z</mml:mtext>
<mml:mrow>
<mml:mrow>
<mml:mtext>k</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>t</mml:mtext></mml:mrow></mml:mrow></mml:msub>
<mml:mo>≥</mml:mo>
<mml:mi>T</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>Thus, the sensor data can be represented as <italic>I</italic> = {<italic>I<sub>k,t</sub></italic>: <italic>k</italic> = 1, …, <italic>K</italic>, <italic>t</italic> = 1, …, <italic>M</italic>}. The goal is to estimate the source location <italic>θ</italic> = [<italic>x<sub>k</sub></italic>, <italic>y<sub>k</sub></italic>] using the collected data <italic>I</italic>. The joint likelihood function is given by:
<disp-formula id="FD17">
<label>(17)</label>
<mml:math display="block">
<mml:mrow>
<mml:mtext>lg</mml:mtext>
<mml:mi>p</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>K</mml:mi></mml:munderover>
<mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>M</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>×</mml:mo>
<mml:mtext>lg</mml:mtext>
<mml:mo stretchy="false">[</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>σ</mml:mi>
<mml:mi>ω</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">]</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>×</mml:mo>
<mml:mtext>lg</mml:mtext>
<mml:mo stretchy="false">[</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>σ</mml:mi>
<mml:mi>ω</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula>where 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mi>Q</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>π</mml:mi></mml:mrow></mml:msqrt></mml:mrow></mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mo>∫</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>∞</mml:mo></mml:msubsup>
<mml:mrow>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mi>t</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mrow>
<mml:mn>2</mml:mn></mml:mfrac></mml:mrow></mml:msup></mml:mrow></mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi></mml:mrow></mml:math></inline-formula> and <italic>S<sub>k</sub></italic>(<italic>θ</italic>) is the signal that would have been measured by sensor <italic>k</italic> if the source was at location <italic>θ</italic> and there was no noise (given by <xref ref-type="disp-formula" rid="FD5">Equation (5)</xref>). In [<xref ref-type="bibr" rid="b16-sensors-11-06555">16</xref>], they propose the following arbitrary probability assignment for their indicator function <italic>I<sub>k,t</sub></italic>:
<disp-formula>
<mml:math display="block">
<mml:mrow>
<mml:mtext>Pr</mml:mtext>
<mml:mo>{</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>|</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo>}</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>σ</mml:mi>
<mml:mi>ω</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>0.99</mml:mn>
<mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
<disp-formula>
<mml:math display="block">
<mml:mrow>
<mml:mtext>Pr</mml:mtext>
<mml:mo>{</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>|</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo>}</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>σ</mml:mi>
<mml:mi>ω</mml:mi></mml:msub></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>0.01</mml:mn></mml:mrow></mml:math></disp-formula></p>
<p>Next, consider the modified likelihood function <italic>p′</italic>(<italic>I<sub>k</sub></italic> | <italic>θ</italic>) = 10<sup>2<italic>KM</italic></sup> <italic>p</italic>(<italic>I<sub>k</sub></italic> | <italic>θ</italic>). Taking the logarithm of the modified likelihood function, they get:
<disp-formula id="FD18">
<label>(18)</label>
<mml:math display="block">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mtext>log</mml:mtext>
<mml:mi>p</mml:mi>
<mml:mo>′</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>K</mml:mi></mml:munderover>
<mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>M</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:mrow>
<mml:mo>×</mml:mo>
<mml:mtext>log</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>9.9</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>×</mml:mo>
<mml:mtext>log</mml:mtext>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>0.1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow/></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mo>≈</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>K</mml:mi></mml:munderover>
<mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>M</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:mrow>
<mml:mo>×</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>×</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula></p>
<p>The SNAP estimator is given as the following:
<disp-formula id="FD19">
<label>(19)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>θ</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>S</mml:mi>
<mml:mi>N</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>P</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:munder>
<mml:mrow>
<mml:mtext>max</mml:mtext></mml:mrow>
<mml:mi>θ</mml:mi></mml:munder>
<mml:mtext>log</mml:mtext>
<mml:mi>p</mml:mi>
<mml:mo>′</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>When constructing the likelihood function, the TISNAP algorithm has taken into account the impact of faulty nodes. The sink assigns a trust index to every node, and the impact of faulty nodes is reduced. Therefore the algorithm has better performance of fault tolerance. Based on <xref ref-type="disp-formula" rid="FD18">Equation (18)</xref>, the joint likelihood function we define is given by:
<disp-formula id="FD20">
<label>(20)</label>
<mml:math display="block">
<mml:mrow>
<mml:mtext>log</mml:mtext>
<mml:msup>
<mml:mi>p</mml:mi>
<mml:mo>″</mml:mo></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>|</mml:mo>
<mml:mi>θ</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>K</mml:mi></mml:munderover>
<mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>M</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>×</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>×</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula>where:
<disp-formula id="FD21">
<label>(21)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mi>λ</mml:mi>
<mml:msub>
<mml:mi>ν</mml:mi>
<mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:msup></mml:mrow></mml:math></disp-formula>and <italic>TI<sub>k,t</sub></italic> denotes the trust index of node <italic>k</italic> in the <italic>t</italic>-th sampling period. <italic>v<sub>t</sub></italic> is obtained by <xref ref-type="disp-formula" rid="FD8">Equation (8)</xref>.</p>
<p>Based on the <xref ref-type="disp-formula" rid="FD18">Equation (18)</xref>, <italic>F<sub>k,t</sub></italic> denotes the impact on the likelihood function by node <italic>k</italic> in the <italic>t</italic>-th sampling period. It is given by:
<disp-formula id="FD22">
<label>(22)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>×</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>×</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>If the node is alarmed, <italic>I<sub>k,t</sub></italic> = 1 is obtained by <xref ref-type="disp-formula" rid="FD16">Equation (16)</xref>. Then <italic>F<sub>k,t</sub></italic> = 1. Otherwise, <italic>I<sub>k,t</sub></italic> = 0 and <italic>F<sub>k,t</sub></italic> = −1. However, when the node is faulty, the alarm status of the node is the opposite. A node should have been alarmed under normal conditions, but it is non-alarmed due to a fault, so 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:msup>
<mml:mi>I</mml:mi>
<mml:mo>′</mml:mo></mml:msup>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow></mml:math></inline-formula> is obtained by <xref ref-type="disp-formula" rid="FD16">Equation (16)</xref> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:msup>
<mml:mi>F</mml:mi>
<mml:mo>′</mml:mo></mml:msup>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:math></inline-formula>. Similarly, a node should have been non-alarmed under normal conditions, but it is alarmed due to a fault, so 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:msup>
<mml:mi>I</mml:mi>
<mml:mo>′</mml:mo></mml:msup>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:math></inline-formula> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:msup>
<mml:mi>F</mml:mi>
<mml:mo>′</mml:mo></mml:msup>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:math></inline-formula>. In the DSNAP algorithm, the difference caused by a single faulty node is 2. Therefore, with the increasing of faulty nodes, the likelihood function will be greatly affected.</p>
<p>However, in this paper, the sink assigns a trust index to every node and the impact of faulty nodes is reduced. Based on the <xref ref-type="disp-formula" rid="FD20">Equation (20)</xref>, <italic>FI<sub>k,t</sub></italic> denotes the impact on the likelihood function by node <italic>k</italic> in the <italic>t</italic>-th sampling period. It is given by:
<disp-formula id="FD23">
<label>(23)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>T</mml:mi>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo>×</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>×</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>According to the <xref ref-type="disp-formula" rid="FD9">Equation (9)</xref>, if the node is normal, its trust index is 1, so <italic>FI<sub>k,t</sub></italic> = <italic>F<sub>k,t</sub></italic>. However, when the node is faulty, the alarm status of the node is the opposite and the difference caused by a single faulty node is 2<italic>TI<sub>k,t</sub></italic>. According to the <xref ref-type="disp-formula" rid="FD8">Equations (8)</xref> and <xref ref-type="disp-formula" rid="FD9">(9)</xref>, after several rounds of event localization operations, the <italic>TI<sub>k,t</sub></italic> of the faulty node <italic>k</italic> is greatly reduced after <italic>t</italic>-th sampling period and it plays a minimal role in the process of event localization. Therefore, in the TISNAP algorithm, the value of the likelihood function is mainly determined by the normal nodes. The algorithm reduces or even ignores the impact of the faulty nodes. It is the reason that the TISNAP algorithm has better fault-tolerant performance and higher accuracy of localization after several rounds of event source locating operations.</p></sec>
<sec>
<label>6.</label>
<title>Performance Evaluation</title>
<p>All experiments in this paper are performed in a simulation environment. In the experiments, we use a square 200 × 200 sensor field with <italic>N</italic> = 1,000 randomly deployed nodes. We assume that the nodes in the sensor network gradually become faulty nodes over time. In the beginning, all nodes are normal. As time goes through, the number of faulty nodes increases at the rate of 5%. Two event sources are randomly deployed in the area and their distance is not less than 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mn>2</mml:mn></mml:msqrt>
<mml:mi>R</mml:mi>
<mml:mi>O</mml:mi>
<mml:mi>C</mml:mi></mml:mrow></mml:math></inline-formula>. The signal strength at the location of the sources is identical. For the parameters used in the experiments, we use the default values shown in <xref ref-type="table" rid="t1-sensors-11-06555">Table 1</xref>. According to <xref ref-type="disp-formula" rid="FD5">Equation (5)</xref>, the sensor readings are given by:
<disp-formula id="FD24">
<label>(24)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mtext>min</mml:mtext>
<mml:mo>{</mml:mo>
<mml:mn>3000</mml:mn>
<mml:mo>,</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>K</mml:mi></mml:munderover>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>ω</mml:mi>
<mml:mi>n</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>}</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>We use the root mean square error (RMS Error) as a method of performance evaluation. We assume that the actual location of the two event sources is 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∈</mml:mo>
<mml:mi>A</mml:mi></mml:mrow></mml:math></inline-formula> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∈</mml:mo>
<mml:mi>A</mml:mi></mml:mrow></mml:math></inline-formula>. The location of the two event sources estimated by TISNAP algorithm is (
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula>) and (
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula>), where <italic>b</italic> = 1, …, <italic>B</italic>. The RMS Error is given by:
<disp-formula id="FD25">
<label>(25)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>S</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>E</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>B</mml:mi></mml:mrow></mml:mfrac>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>B</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:mo>+</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo>−</mml:mo>
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>^</mml:mo></mml:mover>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>In this paper, we assume that B = 100. In every experiment, the location of the sensor nodes is fixed and the event sources are randomly deployed in the area.</p>
<sec>
<label>6.1.</label>
<title>Fault Tolerance</title>
<p>In this section, we evaluate the performance of fault tolerance of the TISNAP algorithm and the DSNAP algorithm under conditions of different fault probability and different numbers of alarmed sensor nodes. Also, we observe how many times all the event sources can be detected in 100 tries and how much the location deviation is. We assume that there are two fault types in the area: one is a <italic>false negativ</italic>e, that is, sensor nodes that fall inside the <italic>ROI</italic> of the event source but their observed readings are smaller than threshold <italic>T</italic>, so they are not alarmed. The other is a <italic>false positive</italic>, that is, sensor nodes that fall outside the <italic>ROI</italic> of the event but their observed readings (we assume the observed reading is a random value between threshold <italic>T</italic> and the source signal strength <italic>c</italic>) are greater than threshold <italic>T</italic>, so they are alarmed. Four groups of experiments are performed under different signal strength of event source, as shown in <xref ref-type="fig" rid="f6-sensors-11-06555">Figure 6</xref>. Left y-axis denotes RMS Error and right y-axis denotes the times all the events are detected in 100 experiments.</p>
<p>As shown in <xref ref-type="fig" rid="f6-sensors-11-06555">Figure 6</xref>, the TISNAP algorithm has better fault tolerance performance than the DSNAP algorithm. When the fault probability of nodes is higher than 35%, the number of event sources in the area cannot be accurately identified using the DSNAP algorithm. When the fault probability of nodes is 40%, the times of that all event sources are detected is less than 40% in 100 tries. However, in the TISNAP algorithm experiment, when the fault probability of nodes is less than 50%, 100% of event sources can be accurately detected and the RMS error is smaller. In the TISNAP algorithm, because the sink assigns a trust index to every node, the trust index of most faulty nodes is reduced after several times of localization, and the trust index of most normal nodes remains high. Hence, the data of the normal sensor nodes have more weight in the process of event source localization. Therefore, the TISNAP algorithm has higher accuracy of localization.</p></sec>
<sec>
<label>6.2.</label>
<title>Dropped Packets</title>
<p>In this section, we investigate the performance of the two algorithms if packets are dropped by the network. As mentioned in Section 4.1, in the first phase of TISNAP, each alarmed node sends a data packet to the sink and other nodes remain silent. Therefore, in the sampling period, if the sink does not receive the packet from a node, it will regard it as a non-alarmed node and assumes that the node does not detect the events. To investigate the effect of dropped packets, we assume that there is only one kind of fault which is dropping packets. And each node has the same probability of dropping packets. <xref ref-type="fig" rid="f7-sensors-11-06555">Figure 7</xref> shows the impact of dropped packets on the two algorithms.</p>
<p>As shown in <xref ref-type="fig" rid="f7-sensors-11-06555">Figure 7</xref>, under the same packet loss rate, the TISNAP algorithm has higher positioning accuracy and better performance of fault tolerance than the DSNAP one. When the packet loss rate is higher than 35%, neither of them cannot accurately determine the number of the events in the area, because the packet loss rate of nodes has a great influence on the alarmed nodes and the alarmed nodes play an important role in the process of event localization. However, non-alarmed nodes do not need to send packets to the sink, so packet loss rate has no impact on them.</p></sec>
<sec>
<label>6.3.</label>
<title>Board Overheating</title>
<p>In sensor networks, due to working long hours, the boards of sensor nodes may be overheating and this may cause the sensor nodes to report false events, as the node is always alarmed. We assume that each node has the same probability of the fault of board overheating. <xref ref-type="fig" rid="f8-sensors-11-06555">Figure 8</xref> shows the impact of board overheating on the two algorithms.</p>
<p>As shown in <xref ref-type="fig" rid="f8-sensors-11-06555">Figure 8</xref>, the TISNAP algorithm we proposed has better fault tolerance performance to board overheating. When the probability of fault is 50%, it still can accurately determine the number of events in the area and estimate their location. However, when the probability of fault is larger than 30%, the performance of the DSNAP algorithm begins to decline sharply, and when the fault probability is 40%, the number of times all events are detected is less than 70% in 100 tries.</p></sec></sec>
<sec sec-type="conclusions">
<label>7.</label>
<title>Conclusions</title>
<p>TISNAP is a simple, efficient, fault-tolerant localization algorithm for multiple event source localization in sensor networks. It only uses the binary data reporting from the sensor nodes in the localization process. The trust index model is introduced to measure the fidelity of data reported by sensor node and to reduce the impact of faulty nodes on the multiple event localization by decreasing their trust index value. Compared to the DSNAP, TISNAP has the same computational overhead but can achieve higher accuracy in multiple event localization when a large percentage of the sensor nodes report erroneous observations. Experimental results show that when 50% nodes are in failure mode, the algorithm can still identify all events correctly and accurately estimate their location. For our future work, we plan to study the performance of TISNAP with respect to energy, bandwidth, and QoS. Furthermore, we will investigate real propagation models, such as in problems of environmental pollution, where an actual substance is released in the environment. Finally, we try to combine this algorithm with Kalman Filtering to achieve tracking of multiple event sources.</p></sec></body>
<back>
<ack>
<p>This work is supported by National Science Foundation of China (Grant No. 60873023, 60973029), and Science and Technology Research and Development Program of Zhejiang Province, China (Grant No. 2008C11100, 2009C03015-1).</p></ack>
<ref-list>
<title>References</title>
<ref id="b1-sensors-11-06555"><label>1.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Akyildiz</surname><given-names>IF</given-names></name><name><surname>Su</surname><given-names>W</given-names></name><name><surname>Sankarasubramaniam</surname><given-names>Y</given-names></name><name><surname>Cayirci</surname><given-names>E</given-names></name></person-group><article-title>Wireless sensor networks: A survey</article-title><source>Comput. Networks</source><year>2002</year><volume>38</volume><fpage>393</fpage><lpage>422</lpage><pub-id pub-id-type="doi">10.1016/S1389-1286(01)00302-4</pub-id></citation></ref>
<ref id="b2-sensors-11-06555"><label>2.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Li</surname><given-names>D</given-names></name><name><surname>Wong</surname><given-names>KD</given-names></name><name><surname>Hu</surname><given-names>YH</given-names></name><name><surname>Sayeed</surname><given-names>AM</given-names></name><name><surname>Wisconsin</surname><given-names>U</given-names></name><name><surname>Madison</surname><given-names>WI</given-names></name></person-group><article-title>Detection, classification, and tracking of targets</article-title><source>IEEE Signal Process. Mag</source><year>2002</year><volume>19</volume><fpage>17</fpage><lpage>29</lpage></citation></ref>
<ref id="b3-sensors-11-06555"><label>3.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Kai</surname><given-names>X</given-names></name></person-group><article-title>Safety warning based on highway sensor networks</article-title><conf-name>Proceedings of the IEEE Wireless Communications and Networking Conference (WCNC 2005)</conf-name><conf-loc>New Orleans, LA, USA</conf-loc><conf-date>13–17 March 2005</conf-date></citation></ref>
<ref id="b4-sensors-11-06555"><label>4.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ni</surname><given-names>K</given-names></name><name><surname>Ramanathan</surname><given-names>N</given-names></name><name><surname>Chehade</surname><given-names>MNH</given-names></name><name><surname>Balzano</surname><given-names>L</given-names></name><name><surname>Nair</surname><given-names>S</given-names></name><name><surname>Zahedi</surname><given-names>S</given-names></name><name><surname>Pottie</surname><given-names>Z</given-names></name><name><surname>Hansen</surname><given-names>M</given-names></name><name><surname>Srivastava</surname><given-names>M</given-names></name><name><surname>Kohler</surname><given-names>E</given-names></name></person-group><article-title>Sensor network data fault types</article-title><source>ACM Trans. Sens. Networks</source><year>2009</year><volume>5</volume><fpage>1</fpage><lpage>29</lpage></citation></ref>
<ref id="b5-sensors-11-06555"><label>5.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ammari</surname><given-names>HM</given-names></name><name><surname>Das</surname><given-names>SK</given-names></name></person-group><article-title>Fault tolerance measures for large-scale wireless sensor networks</article-title><source>ACM Trans. Autonom. Adapt. Syst</source><year>2009</year><volume>4</volume><fpage>1</fpage><lpage>28</lpage></citation></ref>
<ref id="b6-sensors-11-06555"><label>6.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Guo</surname><given-names>S</given-names></name><name><surname>Zhong</surname><given-names>Z</given-names></name><name><surname>He</surname><given-names>T</given-names></name></person-group><article-title>FIND: Faulty node detection for wireless sensor networks</article-title><conf-name>Proceedings of the 7th ACM Conference on Embedded Networked Sensor Systems (SenSys’09)</conf-name><conf-loc>Berkeley, CA, USA</conf-loc><conf-date>4–6 November 2009</conf-date></citation></ref>
<ref id="b7-sensors-11-06555"><label>7.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Vijayakumaran</surname><given-names>S</given-names></name><name><surname>Levinbook</surname><given-names>Y</given-names></name><name><surname>Wong</surname><given-names>T</given-names></name></person-group><article-title>Maximum likelihood localization of a diffusive point source using binary observations</article-title><source>IEEE Trans. Signal Process</source><year>2007</year><volume>55</volume><fpage>665</fpage><lpage>676</lpage><pub-id pub-id-type="doi">10.1109/TSP.2006.885770</pub-id></citation></ref>
<ref id="b8-sensors-11-06555"><label>8.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sheng</surname><given-names>X</given-names></name><name><surname>Hu</surname><given-names>Y</given-names></name></person-group><article-title>Maximum likelihood multiple-source localization using acoustic energy measurements with wireless sensor networks</article-title><source>IEEE Trans. Signal Process</source><year>2005</year><volume>53</volume><fpage>44</fpage><lpage>53</lpage><pub-id pub-id-type="doi">10.1109/TSP.2004.838930</pub-id></citation></ref>
<ref id="b9-sensors-11-06555"><label>9.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ding</surname><given-names>M</given-names></name><name><surname>Liu</surname><given-names>F</given-names></name><name><surname>Thaeler</surname><given-names>A</given-names></name><name><surname>Chen</surname><given-names>DC</given-names></name><name><surname>Cheng</surname><given-names>XZ</given-names></name></person-group><article-title>Fault-tolerant target localization in sensor networks</article-title><source>Eurasip J. Wireless Commun. Networking</source><year>2007</year><volume>2</volume><fpage>9</fpage><lpage>17</lpage></citation></ref>
<ref id="b10-sensors-11-06555"><label>10.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Krishnamachari</surname><given-names>B</given-names></name><name><surname>Iyengar</surname><given-names>S</given-names></name></person-group><article-title>Distributed Bayesian algorithms for fault-tolerant event region detection in wireless sensor networks</article-title><source>IEEE Trans. Comput</source><year>2004</year><volume>53</volume><fpage>241</fpage><lpage>250</lpage><pub-id pub-id-type="doi">10.1109/TC.2004.1261832</pub-id></citation></ref>
<ref id="b11-sensors-11-06555"><label>11.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Premkumar</surname><given-names>K</given-names></name><name><surname>Kumar</surname><given-names>A</given-names></name><name><surname>Kuri</surname><given-names>J</given-names></name></person-group><article-title>Distributed detection and localization of events in Large <italic>ad hoc</italic> wireless sensor networks</article-title><conf-name>Proceedings of the 47th Annual Allerton Conference on Communication, Control, and Computing</conf-name><conf-loc>Monticello, IL, USA</conf-loc><conf-date>September 2009</conf-date></citation></ref>
<ref id="b12-sensors-11-06555"><label>12.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Qingjiang</surname><given-names>S</given-names></name><name><surname>He</surname><given-names>C</given-names></name><name><surname>Chen</surname><given-names>HY</given-names></name><name><surname>Jiang</surname><given-names>LG</given-names></name></person-group><article-title>Distributed wireless sensor network localization via sequential greedy optimization algorithm</article-title><source>IEEE Trans. Signal Process</source><year>2010</year><volume>58</volume><fpage>3328</fpage><lpage>3340</lpage><pub-id pub-id-type="doi">10.1109/TSP.2010.2045416</pub-id></citation></ref>
<ref id="b13-sensors-11-06555"><label>13.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mao</surname><given-names>G</given-names></name><name><surname>Fidan</surname><given-names>B</given-names></name><name><surname>Anderson</surname><given-names>BDO</given-names></name></person-group><article-title>Wireless sensor network localization techniques</article-title><source>Comput. Networks</source><year>2007</year><volume>51</volume><fpage>2529</fpage><lpage>2553</lpage><pub-id pub-id-type="doi">10.1016/j.comnet.2006.11.018</pub-id></citation></ref>
<ref id="b14-sensors-11-06555"><label>14.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Michaelides</surname><given-names>MP</given-names></name><name><surname>Panayiotou</surname><given-names>CG</given-names></name></person-group><article-title>Fault tolerant event localization in sensor networks using binary data</article-title><conf-name>Proceedings of the 2008 American Control Conference</conf-name><conf-loc>Seattle, WA, USA</conf-loc><conf-date>11–13 June 2008</conf-date></citation></ref>
<ref id="b15-sensors-11-06555"><label>15.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Niu</surname><given-names>R</given-names></name><name><surname>Varshney</surname><given-names>P</given-names></name></person-group><article-title>Target location estimation in wireless sensor networks using binary data</article-title><conf-name>Proceedings of the 38th Annual Conference on Information Sciences and Systems (CISS’04)</conf-name><conf-loc>Princeton, NJ, USA</conf-loc><conf-date>March 2004</conf-date></citation></ref>
<ref id="b16-sensors-11-06555"><label>16.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Michaelides</surname><given-names>MP</given-names></name><name><surname>Panayiotou</surname><given-names>CG</given-names></name></person-group><article-title>SNAP: Fault tolerant event location estimation in sensor networks using binary data</article-title><source>IEEE Trans. Comput</source><year>2009</year><volume>58</volume><fpage>1185</fpage><lpage>1197</lpage><pub-id pub-id-type="doi">10.1109/TC.2009.60</pub-id></citation></ref>
<ref id="b17-sensors-11-06555"><label>17.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Michaelides</surname><given-names>MP</given-names></name><name><surname>Laoudias</surname><given-names>C</given-names></name><name><surname>Panayiotou</surname><given-names>CG</given-names></name></person-group><article-title>Fault tolerant detection and tracking of multiple sources in WSNs using binary data</article-title><conf-name>Proceedings of the 48th IEEE Conference on Decision and Control</conf-name><conf-loc>Shanghai, China</conf-loc><conf-date>16–18 December 2009</conf-date></citation></ref>
<ref id="b18-sensors-11-06555"><label>18.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Niculescu</surname><given-names>D</given-names></name><name><surname>Badri</surname><given-names>N</given-names></name></person-group><article-title><italic>Ad hoc</italic> positioning system (APS) using AOA</article-title><conf-name>Proceedings of the Twenty-Second Annual Joint Conference of the IEEE Computer and Communications Societies</conf-name><conf-loc>San Franciso, CA, USA</conf-loc><conf-date>30 March–3 April 2003</conf-date></citation></ref>
<ref id="b19-sensors-11-06555"><label>19.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Lewandowski</surname><given-names>A</given-names></name><name><surname>Wietfeld</surname><given-names>C</given-names></name></person-group><article-title>A comprehensive approach for optimizing ToA-localization in harsh industrial environments</article-title><conf-name>Proceedings of the Position Location and Navigation Symposium (PLANS)</conf-name><conf-loc>Indian Wells, CA, USA</conf-loc><conf-date>4–6 May 2010</conf-date></citation></ref>
<ref id="b20-sensors-11-06555"><label>20.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Girod</surname><given-names>L</given-names></name><name><surname>Estrin</surname><given-names>D</given-names></name></person-group><article-title>Robust range estimation using acoustic and multimodal sensing</article-title><conf-name>Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2001)</conf-name><conf-loc>Maui, HI, USA</conf-loc><conf-date>29 October–3 November 2001</conf-date></citation></ref>
<ref id="b21-sensors-11-06555"><label>21.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Savvides</surname><given-names>A</given-names></name><name><surname>Han</surname><given-names>C-C</given-names></name><name><surname>Strivastava</surname><given-names>MB</given-names></name></person-group><article-title>Dynamic fine-grained localization in <italic>ad-hoc</italic> networks of sensors</article-title><conf-name>Proceedings of the 7th Annual International Conference on Mobile Computing and Networking</conf-name><conf-loc>Rome, Italy</conf-loc><conf-date>16–21 July 2001</conf-date></citation></ref>
<ref id="b22-sensors-11-06555"><label>22.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Brandstein</surname><given-names>MS</given-names></name><name><surname>Adcock</surname><given-names>JE</given-names></name><name><surname>Silverman</surname><given-names>HF</given-names></name></person-group><article-title>A closed-form location estimator for use with room environment microphone arrays</article-title><source>IEEE Trans. Speech Audio Process</source><year>1997</year><volume>5</volume><fpage>45</fpage><lpage>50</lpage><pub-id pub-id-type="doi">10.1109/89.554268</pub-id></citation></ref>
<ref id="b23-sensors-11-06555"><label>23.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Meesookho</surname><given-names>C</given-names></name><name><surname>Mitra</surname><given-names>U</given-names></name><name><surname>Narayanan</surname><given-names>S</given-names></name></person-group><article-title>On energy-based acoustic source localization for sensor networks</article-title><source>IEEE Trans Speech Audio Process</source><year>2008</year><volume>56</volume><fpage>365</fpage><lpage>377</lpage></citation></ref>
<ref id="b24-sensors-11-06555"><label>24.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Pham</surname><given-names>T</given-names></name><name><surname>Scherber</surname><given-names>DS</given-names></name><name><surname>Papadopoulos</surname><given-names>HC</given-names></name></person-group><article-title>Distributed source localization algorithms for acoustic <italic>ad-hoc</italic> sensor networks</article-title><conf-name>Proceedings of the Sensor Array and Multichannel Signal Processing Workshop</conf-name><conf-loc>Sitges, Spain</conf-loc><conf-date>18–21 July 2004</conf-date></citation></ref>
<ref id="b25-sensors-11-06555"><label>25.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Srinivasan</surname><given-names>A</given-names></name><name><surname>Teitelbaum</surname><given-names>J</given-names></name><name><surname>Wu</surname><given-names>J</given-names></name></person-group><article-title>DRBTS: Distributed reputation-based beacon trust system</article-title><conf-name>Proceedings of the 2nd IEEE International Symposium on Dependable, Autonomic and Secure Computing (DASC’06)</conf-name><conf-loc>Indianapolis, IN, USA</conf-loc><conf-date>29 September–1 October 2006</conf-date></citation></ref>
<ref id="b26-sensors-11-06555"><label>26.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Theodorakopoulos</surname><given-names>G</given-names></name><name><surname>Baras</surname><given-names>JS</given-names></name></person-group><article-title>On trust models and trust evaluation metrics for <italic>ad hoc</italic> networks</article-title><source>IEEE J. Sel. Areas Commun</source><year>2006</year><volume>24</volume><fpage>318</fpage><lpage>328</lpage><pub-id pub-id-type="doi">10.1109/JSAC.2005.861390</pub-id></citation></ref>
<ref id="b27-sensors-11-06555"><label>27.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Probst</surname><given-names>MJ</given-names></name><name><surname>Kasera</surname><given-names>SK</given-names></name></person-group><article-title>Statistical trust establishment in wireless sensor networks</article-title><conf-name>Proceedings of the 2007 International Conference on Parallel and Distributed Systems (ICPADS 2007)</conf-name><conf-loc>Hsinchu, Taiwan</conf-loc><conf-date>5–7 December 2007</conf-date></citation></ref>
<ref id="b28-sensors-11-06555"><label>28.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Krasniewski</surname><given-names>M</given-names></name><name><surname>Varadharajan</surname><given-names>P</given-names></name><name><surname>Bagchi</surname><given-names>RS</given-names></name></person-group><article-title>TIBFIT: Trust index based fault tolerance for arbitrary data faults</article-title><conf-name>Proceedings of the International Conference on Dependable Systems and Networks in Sensor Networks (DSN 2005)</conf-name><conf-loc>Yokohama, Japan</conf-loc><conf-date>28 June–1 July 2005</conf-date></citation></ref>
<ref id="b29-sensors-11-06555"><label>29.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ampeliotis</surname><given-names>D</given-names></name><name><surname>Berberidis</surname><given-names>K</given-names></name></person-group><article-title>Low complexity multiple acoustic source localization in sensor networks based on energy measurements</article-title><source>Signal Process</source><year>2009</year><volume>90</volume><fpage>1300</fpage><lpage>1312</lpage></citation></ref>
<ref id="b30-sensors-11-06555"><label>30.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Clouqueur</surname><given-names>T</given-names></name><name><surname>Saluja</surname><given-names>KK</given-names></name><name><surname>Ramanathan</surname><given-names>P</given-names></name></person-group><article-title>Fault tolerance in collaborative sensor networks for target detection</article-title><source>IEEE Trans. Comput</source><year>2004</year><volume>53</volume><fpage>320</fpage><lpage>333</lpage><pub-id pub-id-type="doi">10.1109/TC.2004.1261838</pub-id></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures and Table</title>
<fig id="f1-sensors-11-06555" position="float">
<label>Figure 1.</label>
<caption>
<p>The scenario of various regions used in this paper.</p></caption>
<graphic xlink:href="sensors-11-06555f1.gif"/></fig>
<fig id="f2-sensors-11-06555" position="float">
<label>Figure 2.</label>
<caption>
<p>The family curves of <italic>TI.</italic></p></caption>
<graphic xlink:href="sensors-11-06555f2.gif"/></fig>
<fig id="f3-sensors-11-06555" position="float">
<label>Figure 3.</label>
<caption>
<p>Likelihood matrix <italic>L</italic> calculated by the sink.</p></caption>
<graphic xlink:href="sensors-11-06555f3.gif"/></fig>
<fig id="f4-sensors-11-06555" position="float">
<label>Figure 4.</label>
<caption>
<p>the <italic>ROC</italic> of sensor nodes (<bold>a</bold>) alarmed nodes (<bold>b</bold>) non-alarmed nodes.</p></caption>
<graphic xlink:href="sensors-11-06555f4.gif"/></fig>
<fig id="f5-sensors-11-06555" position="float">
<label>Figure 5.</label>
<caption>
<p>The state of nodes located in different regions.</p></caption>
<graphic xlink:href="sensors-11-06555f5.gif"/></fig>
<fig id="f6-sensors-11-06555" position="float">
<label>Figure 6.</label>
<caption>
<p>Fault tolerance performance for different signal strength of event sources. (<bold>a</bold>) c = 1,000; (<bold>b</bold>) c = 2,000; (<bold>c</bold>) c = 3,000; (<bold>d</bold>) c = 4,000.</p></caption>
<graphic xlink:href="sensors-11-06555f6.gif"/></fig>
<fig id="f7-sensors-11-06555" position="float">
<label>Figure 7.</label>
<caption>
<p>The Fault tolerance performance under different probability of dropped packets.</p></caption>
<graphic xlink:href="sensors-11-06555f7.gif"/></fig>
<fig id="f8-sensors-11-06555" position="float">
<label>Figure 8.</label>
<caption>
<p>Estimator performance <italic>versus</italic> probability of overheating.</p></caption>
<graphic xlink:href="sensors-11-06555f8.gif"/></fig>
<table-wrap id="t1-sensors-11-06555" position="float">
<label>Table 1.</label>
<caption>
<p>Default Parameter Values.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="middle"><bold>Parameter</bold></th>
<th align="left" valign="middle"><bold>Symbol</bold></th>
<th align="left" valign="middle"><bold>Default Value</bold></th></tr></thead>
<tbody>
<tr>
<td align="left" valign="top">The area</td>
<td align="left" valign="top">A</td>
<td align="left" valign="top">200 m × 200 m</td></tr>
<tr>
<td align="left" valign="top">Number of sensor nodes</td>
<td align="left" valign="top"><italic>N</italic></td>
<td align="left" valign="top">1,000</td></tr>
<tr>
<td align="left" valign="top">Saturation voltage</td>
<td align="left" valign="top"><italic>V<sub>max</sub></italic></td>
<td align="left" valign="top">3,000</td></tr>
<tr>
<td align="left" valign="top">Source amplitude</td>
<td align="left" valign="top"><italic>c</italic></td>
<td align="left" valign="top">3,000</td></tr>
<tr>
<td align="left" valign="top">Noise variance</td>
<td align="left" valign="top"><italic>ω<sub>n,t</sub></italic></td>
<td align="left" valign="top"><italic>ω<sub>n,t</sub></italic> ∼ <italic>N</italic>(0,1)</td></tr>
<tr>
<td align="left" valign="top">Threshold</td>
<td align="left" valign="top"><italic>T</italic></td>
<td align="left" valign="top">14</td></tr>
<tr>
<td align="left" valign="top">Grid resolution</td>
<td align="left" valign="top"><italic>g</italic></td>
<td align="left" valign="top">1</td></tr>
<tr>
<td align="left" valign="top">Scaling factor</td>
<td align="left" valign="top"><italic>α</italic></td>
<td align="left" valign="top">2</td></tr>
<tr>
<td align="left" valign="top">Sensor gain</td>
<td align="left" valign="top"><italic>γ</italic></td>
<td align="left" valign="top">1</td></tr></tbody></table></table-wrap></sec></back></article>
