<?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/s101009493</article-id>
<article-id pub-id-type="publisher-id">sensors-10-09493</article-id>
<article-categories>
<subj-group>
<subject>Article</subject></subj-group></article-categories>
<title-group>
<article-title>A Distance-Based Energy Aware Routing Algorithm for Wireless Sensor Networks</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Wang</surname><given-names>Jin</given-names></name><xref ref-type="aff" rid="af1-sensors-10-09493"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Kim</surname><given-names>Jeong-Uk</given-names></name><xref ref-type="aff" rid="af2-sensors-10-09493"><sup>2</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Shu</surname><given-names>Lei</given-names></name><xref ref-type="aff" rid="af3-sensors-10-09493"><sup>3</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Niu</surname><given-names>Yu</given-names></name><xref ref-type="aff" rid="af1-sensors-10-09493"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Lee</surname><given-names>Sungyoung</given-names></name><xref ref-type="aff" rid="af1-sensors-10-09493"><sup>1</sup></xref><xref ref-type="corresp" rid="c1-sensors-10-09493">*</xref></contrib></contrib-group>
<aff id="af1-sensors-10-09493">
<label>1</label> Department of Computer Engineering, Kyung Hee University, Suwon, Korea; E-Mails: <email>wangjin@oslab.khu.ac.kr</email> (J.W.); <email>niuyu@oslab.khu.ac.kr</email> (Y.N.)</aff>
<aff id="af2-sensors-10-09493">
<label>2</label> Department of Energy Grid, Sang Myung University, Seoul, Korea; E-Mail:<email>jukim@smu.ac.kr</email> (J.-U.K.)</aff>
<aff id="af3-sensors-10-09493">
<label>3</label> Department of Multimedia Engineering, Osaka University, Japan; E-Mail: <email>lei.shu@ist.osaka-u.ac.jp</email> (L.S.)</aff>
<author-notes>
<corresp id="c1-sensors-10-09493">
<label>*</label> Author to whom correspondence should be addressed; E-Mail: <email>sylee@oslab.khu.ac.kr</email>; Tel.: +82-31-201-2514; Fax: +82-31-202-2520.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2010</year></pub-date>
<pub-date pub-type="epub">
<day>21</day>
<month>10</month>
<year>2010</year></pub-date>
<volume>10</volume>
<issue>10</issue>
<fpage>9493</fpage>
<lpage>9511</lpage>
<history>
<date date-type="received">
<day>4</day>
<month>8</month>
<year>2010</year></date>
<date date-type="rev-recd">
<day>20</day>
<month>9</month>
<year>2010</year></date>
<date date-type="accepted">
<day>19</day>
<month>10</month>
<year>2010</year></date></history>
<permissions>
<copyright-statement>© 2010 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
<copyright-year>2010</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>Energy efficiency and balancing is one of the primary challenges for wireless sensor networks (WSNs) since the tiny sensor nodes cannot be easily recharged once they are deployed. Up to now, many energy efficient routing algorithms or protocols have been proposed with techniques like clustering, data aggregation and location tracking <italic>etc.</italic> However, many of them aim to minimize parameters like total energy consumption, latency <italic>etc.</italic>, which cause hotspot nodes and partitioned network due to the overuse of certain nodes. In this paper, a Distance-based Energy Aware Routing (DEAR) algorithm is proposed to ensure energy efficiency and energy balancing based on theoretical analysis of different energy and traffic models. During the routing process, we consider individual distance as the primary parameter in order to adjust and equalize the energy consumption among involved sensors. The residual energy is also considered as a secondary factor. In this way, all the intermediate nodes will consume their energy at similar rate, which maximizes network lifetime. Simulation results show that the DEAR algorithm can reduce and balance the energy consumption for all sensor nodes so network lifetime is greatly prolonged compared to other routing algorithms.</p></abstract>
<kwd-group>
<kwd>wireless sensor networks</kwd>
<kwd>routing</kwd>
<kwd>hotspot</kwd>
<kwd>hop number</kwd>
<kwd>energy efficiency</kwd>
<kwd>network lifetime</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>Wireless sensor networks (WSNs) have received lots of attention in recently years due to their wide applications like military and disaster surveillance, industrial product line monitoring, agricultural and wildlife observation, healthcare, smart homes, <italic>etc.</italic> [<xref ref-type="bibr" rid="b1-sensors-10-09493">1</xref>]. Cheap and tiny sensor nodes are usually randomly deployed in a physical environment to be monitored and they will transmit their collected data to certain remote sink node (or base station) in an autonomous and unattended manner.</p>
<p>Energy efficiency and balancing is one of the primary challenges to the successful application of WSNs since the sensor nodes are powered with limited batteries and they cannot be easily recharged once deployed. Up to now, many energy efficient routing algorithms or protocols have been proposed with techniques like clustering, data aggregation, multi-path and location tracking, <italic>etc.</italic>, as can be seen from related work. However, many of them aim to minimize parameters like total energy consumption or delay during the routing process, which might cause some hotspot nodes as well as a partitioned network due to the overuse of certain nodes. Since the network lifetime is usually defined as the time when the first node dies from lack of energy, huge amounts of energy will be wasted by the remaining sensor nodes.</p>
<p>Hop number and hop distance have a very important impact on many network metrics like energy consumption, routing overhead, interference, latency, <italic>etc.</italic> Intuitively, if the hop number is too large, the energy consumption can be reduced at the cost of long end-to-end latency and large control overhead. If the hop number is too small (e.g., direct transmission), the latency will be very small while the energy consumption can be very large due to the long distance wireless communication nature. Therefore, an optimal hop number with suitable individual distance(s) needs to be deduced as a tradeoff in order to achieve energy reduction and energy balancing.</p>
<p>Hotspot problems are caused by an unbalanced energy consumption among the sensors [<xref ref-type="bibr" rid="b2-sensors-10-09493">2</xref>–<xref ref-type="bibr" rid="b5-sensors-10-09493">5</xref>]. It is a big challenge to overcome under the random and dynamic topology of WSNs. Besides, the routing scheme and traffic pattern vary under different applications, which add to the difficulty of energy balancing and will usually lead to hotspot nodes and partitioned networks. For example, when all sensors use direct transmission, the nodes far away from sink node will die earlier since the energy consumption is proportional to the fourth order of the long distance. Meanwhile nodes close to the sink node will have much residual energy. On the other hand, when multi-hop transmission is used, nodes near a sink node will have more traffic to forward and will die quickly while nodes far from a sink node will have much remaining energy by using short distance multi-hop transmission. This hotspot issue also appears in many other energy efficient routing algorithms or protocols like those described in [<xref ref-type="bibr" rid="b6-sensors-10-09493">6</xref>–<xref ref-type="bibr" rid="b8-sensors-10-09493">8</xref>], <italic>etc.</italic></p>
<p>To effectively alleviate the hotspot problem, we need to balance energy consumption among all sensors by considering factors like manner of transmission, traffic patterns, hop number and distance, <italic>etc.</italic> Based on our previous work in [<xref ref-type="bibr" rid="b5-sensors-10-09493">5</xref>], we find that the final residual energy is still not well balanced when the first node dies, even though the energy consumption is largely reduced and the network lifetime is extended. The main reason is that in [<xref ref-type="bibr" rid="b5-sensors-10-09493">5</xref>] we tried to minimize the total energy consumption on each route so that some nodes close to sink node are overused, which causes a hotspot problem.</p>
<p>In order to alleviate the hotspot problem, we study the energy consumption under different energy and traffic models and aim to let all sensor nodes consume their energy at similar rate. In other words, we are not trying to 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mi mathvariant="italic">Min</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> for the <italic>n</italic>-hop route but rather to equalize <italic>E<sub>1</sub> ≈ E<sub>2</sub> ≈</italic> ⋯ <italic>≈ E<sub>n</sub></italic> for the involved intermediate <italic>n</italic> nodes with proper individual distance <italic>d<sub>i</sub></italic>. Here, <italic>E<sub>i</sub></italic> is the energy consumption for each individual node.</p>
<p>The main objective in this paper is to prolong network lifetime via an energy efficient and balancing routing algorithm and our contributions are listed as below:
<list list-type="order">
<list-item>
<p>Given the source to sink node distance <italic>d</italic>, the optimal multi-hop number and the corresponding individual distance <italic>d<sub>i</sub></italic> can be determined based on the theoretical analysis of energy consumption under event based and time based traffic model.</p></list-item>
<list-item>
<p>Based on (1), a Distance-based Energy Aware Routing (DEAR) algorithm is proposed which consists of route setup and route maintenance phases. The distance factor is treated as the first parameter during the routing process and the residual energy factor is the second parameter to be considered. The DEAR algorithm can balance energy consumption for all sensor nodes and consequently prolong the network lifetime.</p></list-item>
<list-item>
<p>Simulation results and comparisons are provided with discussion details.</p></list-item></list></p>
<p>The rest of the paper is organized as follows. Section 2 introduces some related work of energy efficient routing algorithms. In Section 3 we present relevant network, traffic and energy models. In Section 4, the details of our DEAR algorithm are described based the theoretical deduction and numerical analysis under different models. Performance evaluation and comparison are given in Section 5 and Section 6 concludes this paper.</p></sec>
<sec>
<label>2.</label>
<title>Related Work</title>
<p>Up to now, many techniques have been proposed to improve the energy efficiency in different layers of WSNs. For example, the technique of coding in the PHY layer, the scheduling mechanism of “active/idle/sleeping” in the MAC layer as well as cross-layer optimization methods can reduce energy consumption to a certain degree. In this paper, we focus on energy efficient routing in the network layer.</p>
<p>Many energy efficient routing protocols or algorithms have been proposed for WSNs recently. In this section, we first introduce some traditional energy efficient routing algorithms which are listed in the left side of <xref ref-type="fig" rid="f1-sensors-10-09493">Figure 1</xref> (similar to [<xref ref-type="bibr" rid="b9-sensors-10-09493">9</xref>]). Then another kind of energy efficient routing algorithms based on soft computing techniques such as genetic algorithm (GA), ant colony optimization (ACO) and swarm intelligence (SI) are introduced. Finally a few recent studies from hop-based or distance-based energy aware routing algorithms are provided.</p>
<sec>
<label>2.1.</label>
<title>Traditional Energy Efficient Routing</title>
<p>As is shown in the left side of <xref ref-type="fig" rid="f1-sensors-10-09493">Figure 1</xref>, the traditional routing protocols in WSNs can be classified into flat (or data centric [<xref ref-type="bibr" rid="b10-sensors-10-09493">10</xref>]), hierarchical and location based routing. Among flat routing protocols, SPIN (Sensor Protocols for Information via Negotiation [<xref ref-type="bibr" rid="b11-sensors-10-09493">11</xref>]) can be viewed as the first data-centric routing protocol which utilizes the data negotiation method among sensor nodes to reduce data redundancy and save energy. Direct Diffusion [<xref ref-type="bibr" rid="b12-sensors-10-09493">12</xref>] is another representative data-centric routing protocol for WSNs. The data generated by sensor nodes is named by attribute-value pairs. Once a sink node inquires certain type of information (like four-legged animals in a certain area), it will send a query and the observed data can get aggregated and then be transmitted back to the sink node. In addition, the load balancing can be achieved by forwarding the data on different paths based on probability. Rather than always using the lowest energy paths, the authors in [<xref ref-type="bibr" rid="b13-sensors-10-09493">13</xref>] use sub-optimal paths occasionally so that the network lifetime is increased by 40% compared to [<xref ref-type="bibr" rid="b12-sensors-10-09493">12</xref>].</p>
<p>Hierarchical routing protocols [<xref ref-type="bibr" rid="b6-sensors-10-09493">6</xref>–<xref ref-type="bibr" rid="b8-sensors-10-09493">8</xref>,<xref ref-type="bibr" rid="b14-sensors-10-09493">14</xref>] are very suitable for WSNs since they can not only provide good scalability for hundreds or thousands of sensors, but also perform data aggregation by cluster head within each cluster. LEACH [<xref ref-type="bibr" rid="b6-sensors-10-09493">6</xref>,<xref ref-type="bibr" rid="b14-sensors-10-09493">14</xref>] is one of the most famous hierarchical routing protocols for WSNs. It can prolong network lifetime up to 8-fold more than other ordinary routing protocols like direction transmission and minimum transmission energy routing protocols. However, the 5% of cluster head nodes are randomly chosen and the cluster head nodes use direct transmission to the sink node therein. PEGASIS [<xref ref-type="bibr" rid="b7-sensors-10-09493">7</xref>] is viewed as an improved version of LEACH. It is a chain based routing protocol which can save more energy compared to LEACH. The message can get aggregated along the chain and finally be sent to sink node via direct transmission by one random node on the chain. The main shortcoming is that PEGASIS requires global knowledge of the whole network. HEED clustering protocol [<xref ref-type="bibr" rid="b8-sensors-10-09493">8</xref>] considers the residual energy as the primary parameter and a secondary parameter like node’s degree during the selection of cluster head. It can not only minimize the control overhead but also prolong network lifetime than other clustering algorithms like LEACH since the cluster heads are well distributed. Besides, it does not need global knowledge of the whole network and all intelligent decisions are made locally by sensor nodes.</p>
<p>Location-based routing protocols [<xref ref-type="bibr" rid="b15-sensors-10-09493">15</xref>,<xref ref-type="bibr" rid="b16-sensors-10-09493">16</xref>] can get location information through global positioning system (GPS) devices or certain estimation algorithms based on received signal strength (RSS). Once the location information is known, the energy consumption can be largely reduced through power control techniques and communication overhead can also be reduced. MECN [<xref ref-type="bibr" rid="b15-sensors-10-09493">15</xref>] provides a minimum energy network for WSNs under the support of low power GPS. The authors in [<xref ref-type="bibr" rid="b16-sensors-10-09493">16</xref>] make an extension of [<xref ref-type="bibr" rid="b15-sensors-10-09493">15</xref>] by considering possible obstacles between any pair of communication nodes.</p></sec>
<sec>
<label>2.2.</label>
<title>Soft Computing Based Energy Efficient Routing</title>
<p>Due to the dynamic nature of WSNs, the optimization of network metrics like shortest path, minimal energy consumption can be viewed as a combinatorial optimization problem which is hard to solve. Since soft computing based techniques can dynamically adjust their parameters during the search of the optimal value, it is very suitable to be used to solve these kinds of dynamic optimization problems, such as NP-hard problems.</p>
<p>A multi-path routing protocol based on dynamic clustering and ant colony optimization (ACO) is proposed in [<xref ref-type="bibr" rid="b17-sensors-10-09493">17</xref>] so as to reduce energy consumption and maximize network lifetime. The ACO technique is used during the search for multi-paths between cluster head and sink node. In [<xref ref-type="bibr" rid="b18-sensors-10-09493">18</xref>], an improved version of LEACH [<xref ref-type="bibr" rid="b6-sensors-10-09493">6</xref>] is presented to improve energy efficiency and system stability where genetic algorithm (GA) is utilized during the selection of cluster head nodes. GA can also be applied to minimize data latency once the number of gateways and their positions are determined [<xref ref-type="bibr" rid="b19-sensors-10-09493">19</xref>]. In [<xref ref-type="bibr" rid="b20-sensors-10-09493">20</xref>], each swarm agent can carry and exchange the residual energy information during the route selection process in order to maximize the network lifetime in ad hoc and sensor networks.</p></sec>
<sec>
<label>2.3.</label>
<title>Hop-Based Energy Efficient Routing</title>
<p>In hop-based routing, the metric of (optimal) hop number or corresponding individual distance is treated as the primary factor in order to achieve energy efficiency during routing process. It can be seen that the factor of hop number or hop distance is not specifically proposed and addressed by most of the energy efficient routing protocols above, when in fact, it has very important impact on many network metrics like energy consumption, latency, routing overhead, interference, <italic>etc.</italic> [<xref ref-type="bibr" rid="b21-sensors-10-09493">21</xref>].</p>
<p>The authors in [<xref ref-type="bibr" rid="b22-sensors-10-09493">22</xref>] present some pioneering work by studying different energy models under general wireless network environment. The authors in [<xref ref-type="bibr" rid="b6-sensors-10-09493">6</xref>,<xref ref-type="bibr" rid="b14-sensors-10-09493">14</xref>] consider different energy consumption for source and intermediate node and each cluster head uses direct transmission under their small scale network environment. The authors in [<xref ref-type="bibr" rid="b2-sensors-10-09493">2</xref>] study selection of transmission manner from probability point of view. They present a probability of <italic>P<sub>i</sub></italic> to transmit data through multi-hop manner and a probability (1 − <italic>P<sub>i</sub></italic>) to transmit through single hop manner to sink node. The authors in [<xref ref-type="bibr" rid="b3-sensors-10-09493">3</xref>] also study the energy consumption under both single hop and multi-hop transmission manners. They claim that the preference of multi-hop routing to single hop routing depends on source to sink distance and reception cost. The author in [<xref ref-type="bibr" rid="b4-sensors-10-09493">4</xref>] proposes a Multihop/Direct Forwarding scheme to split data traffic into two branches by using either direct or multihop transmission to achieve good energy efficiency and network lifetime performance. In our previous work [<xref ref-type="bibr" rid="b5-sensors-10-09493">5</xref>], we propose a Hop-based Energy Aware Routing (HEAR) algorithm which can largely reduce energy consumption as well as prolong network lifetime. However, the hotspot problem cannot be avoided since we try to minimize the total energy consumption during certain route rather than to let sensor nodes consume their energy at similar rate.</p>
<p>Even though the above-mentioned energy efficient routing protocols or algorithms can improve energy efficiency and prolong network lifetime to some degree, they cannot effectively overcome the hotspot problem which is tightly related with energy and traffic models. In this paper, we propose a Distance-based Energy Aware Routing (DEAR) algorithm which can effectively alleviate the hotspot problem based on the theoretical deduction and analysis of relevant models.</p></sec></sec>
<sec>
<label>3.</label>
<title>System Model and Problem Statement</title>
<sec>
<label>3.1.</label>
<title>System Model</title>
<sec>
<label>3.1.1.</label>
<title>Network Model</title>
<p>The traditional WSNs can be regarded as an undirected graph <italic>G = &lt;V, E&gt;</italic> where <italic>V</italic> represents the set of vertices and <italic>E</italic> represents the set of edges (or links) [<xref ref-type="bibr" rid="b9-sensors-10-09493">9</xref>]. Sink node (or BS) can be placed either inside or outside the area to be monitored. We assume that there are <italic>N</italic> nodes randomly scattered in a two dimensional square field [X, Y]. There exists a link <italic>E</italic>(<italic>i, j</italic>) between node <italic>I</italic> and node <italic>j</italic> if the Euclidean distance <italic>d</italic>(<italic>i, j</italic>) is not larger than the radio transmission radius <italic>R</italic>, namely <italic>d</italic>(<italic>i, j</italic>) ≤ <italic>R</italic>. Here, undirected graph means bi-directional communication link. In other words, if node <italic>j</italic> can receive packet from its neighboring node <italic>i</italic>, it is believed that node <italic>i</italic> can receive packet from node <italic>j</italic> in a reverse way. The objective in this paper is to find a set of optimal or sub-optimal individual distances during routing process so that the energy is consumed at similar rate for all involved sensors.</p></sec>
<sec>
<label>3.1.2.</label>
<title>Traffic Model</title>
<p>There are four types of traffic patterns in WSNs, which are time-based, event-based, query-based and hybrid traffic pattern [<xref ref-type="bibr" rid="b1-sensors-10-09493">1</xref>]. Usually, routing is trigged when a source node has traffic to send. It is worth noting that traffic pattern has a very important impact on routing performance like energy consumption, latency, <italic>etc.</italic></p>
<p>Time-based traffic pattern is used when each sensor nodes take turns to report their collected data in a time series manner. It is mainly used in applications like temperature and seismic monitoring where long term observation results like mean value or trend are needed for future prediction. Event-based traffic pattern is used for applications like target tracking or intrusion detection <italic>etc.</italic> When a target is entering into the nearby region of a sensor node, the target will be detected and tracked with an increased (or burst) traffic sent by involved sensor nodes to remote sink node. Query-based pattern means remote commander can send query to obtain observations in certain area. Hybrid traffic pattern is also commonly used. For example, during the time-based traffic monitoring period, the remote sink node may send a query to demand for certain information simultaneously. In this paper, we will study the characteristic of energy consumption under different traffic patterns so as to achieve energy balancing and prolong network lifetime.</p></sec>
<sec>
<label>3.1.3.</label>
<title>Energy Model</title>
<p>The energy consumption model we use here is called first order radio model [<xref ref-type="bibr" rid="b5-sensors-10-09493">5</xref>–<xref ref-type="bibr" rid="b8-sensors-10-09493">8</xref>,<xref ref-type="bibr" rid="b14-sensors-10-09493">14</xref>], as is shown in <xref ref-type="fig" rid="f2-sensors-10-09493">Figure 2</xref>.</p>
<p>Each sensor node will consume the following <italic>E<sub>Tx</sub></italic> amount of energy to transmit a <italic>l</italic>-bits message over distance <italic>d</italic>:
<disp-formula id="FD1">
<label>(1)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>x</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</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:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">elec</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ɛ</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>s</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>,</mml:mo></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi mathvariant="italic">if</mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>0</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ɛ</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>p</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>4</mml:mn></mml:msup>
<mml:mo>,</mml:mo></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi mathvariant="italic">if</mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>≥</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>0</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula><italic>E<sub>Rx</sub></italic> amount of energy to receive this message:
<disp-formula id="FD2">
<label>(2)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>x</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">elec</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></disp-formula>and <italic>E<sub>Fx</sub></italic> amount of energy to forward this message:
<disp-formula id="FD3">
<label>(3)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mi>x</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>x</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>x</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>l</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:mn>2</mml:mn>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">elec</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ɛ</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">fs</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>,</mml:mo></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi mathvariant="italic">if</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>0</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ele</mml:mi>
<mml:mi>c</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ɛ</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>p</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>4</mml:mn></mml:msup>
<mml:mo>,</mml:mo></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi mathvariant="italic">if</mml:mi>
<mml:mi> </mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>≥</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>0</mml:mn></mml:msub>
<mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula>The definition of the radio parameters is listed in <xref ref-type="table" rid="t1-sensors-10-09493">Table 1</xref>.</p></sec></sec>
<sec>
<label>3.2.</label>
<title>Problem Statement</title>
<p>Many traditional routing protocols can improve the performance of energy efficiency and network lifetime by introducing intelligent clustering methods or considering residual energy, <italic>etc.</italic> However, most of these energy efficient routing protocols do not consider the energy consumption under various traffic models, which is an important factor that influences the hotspot problem.</p>
<p><xref ref-type="fig" rid="f3-sensors-10-09493">Figure 3</xref> shows the distribution of hotspot nodes with circles under our previous work in [<xref ref-type="bibr" rid="b5-sensors-10-09493">5</xref>], where BS is placed inside at (150, 150) in <xref ref-type="fig" rid="f3-sensors-10-09493">Figure 3(a)</xref> and outside at (150, 400) in <xref ref-type="fig" rid="f3-sensors-10-09493">Figure 3(b)</xref>. The hotspot nodes are close to the BS since multi-hop routing is favorable in most cases. Even though our HEAR algorithm in [<xref ref-type="bibr" rid="b5-sensors-10-09493">5</xref>] can largely reduce energy consumption and prolong network lifetime to certain degree, it cannot avoid the hotspot problem due to its intrinsic nature of minimizing the total energy consumption during certain route. In other words, if we aim to prolong and maximize the network lifetime, the final objective function should be let each sensor consume their energy at similar rate (<italic>E<sub>1</sub></italic> <italic>≈ E<sub>2</sub>≈</italic> ⋯ <italic>≈ E<sub>n</sub></italic>) rather than to 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mi mathvariant="italic">Min</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> for the <italic>n</italic>-hop route.</p></sec></sec>
<sec>
<label>4.</label>
<title>Distance-Based Energy Aware Routing (DEAR) Algorithm</title>
<sec sec-type="methods">
<label>4.1.</label>
<title>Theoretical Analysis of Hotspot Problem</title>
<sec>
<label>4.1.1.</label>
<title>Event-based Traffic Model</title>
<p>We first study the one dimensional linear network for simplicity, which can be used in linear applications like highway traffic monitoring, congestion control <italic>etc.</italic> In <xref ref-type="fig" rid="f4-sensors-10-09493">Figure 4</xref>, there are <italic>n</italic> sensor nodes placed along a line from source node to sink node with individual distance {<italic>d<sub>1</sub></italic>, <italic>d<sub>2</sub></italic>, ⋯, <italic>d<sub>n</sub></italic>}. The source to sink node distance is <italic>d</italic> and 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi>d</mml:mi></mml:mrow></mml:math></inline-formula>.</p>
<p>Once an event is detected by the source node, it will send an <italic>l</italic>-bits message through either direct transmission or multi-hop transmission to the remote sink node. Since multi-hop transmission is more energy efficient when <italic>d</italic> is large, here we study the <italic>n</italic>-hop transmission from source to sink node. Our first objective is to find the optimal multi-hop number and each individual distance <italic>d<sub>i</sub></italic> so that each node consumes the least energy at similar rate. Based on <xref ref-type="disp-formula" rid="FD1">Equation (1)</xref> to <xref ref-type="disp-formula" rid="FD3">(3)</xref>, the total energy consumption to transmit one bit data (<italic>l</italic> = 1) over <italic>n</italic>-hop route will be:
<disp-formula id="FD4">
<label>(4)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ele</mml:mi>
<mml:mi>c</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ɛ</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>α</mml:mi></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ele</mml:mi>
<mml:mi>c</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ɛ</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>α</mml:mi></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ɛ</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>p</mml:mi></mml:mrow></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>α</mml:mi></mml:msubsup></mml:mrow></mml:mrow></mml:math></disp-formula>where, <italic>ε<sub>amp</sub></italic> = <italic>ε<sub>fs</sub></italic> when <italic>α</italic> = 2 and <italic>ε<sub>amp</sub></italic> = <italic>ε<sub>mp</sub></italic> when <italic>α</italic> = 4. For fixed 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi></mml:msub></mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi>d</mml:mi></mml:mrow></mml:math></inline-formula>, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>α</mml:mi></mml:msubsup></mml:mrow></mml:mrow></mml:math></inline-formula> in <xref ref-type="disp-formula" rid="FD4">Equation (4)</xref> has a minimal value when <italic>d<sub>1</sub></italic> = <italic>d<sub>2</sub></italic> = ⋯= <italic>d<sub>n</sub></italic> = <italic>d/n</italic>. Therefore, <italic>E</italic>(<italic>n</italic>) is finally equal to:
<disp-formula id="FD5">
<label>(5)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>n</mml:mi></mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mi>α</mml:mi></mml:mrow></mml:msup>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>α</mml:mi></mml:msup></mml:mrow></mml:math></disp-formula><xref ref-type="disp-formula" rid="FD5">Equation (5)</xref> has the minimum when <italic>E<sup>′</sup></italic>(<italic>n</italic>) = 0 or
<disp-formula>
<mml:math display="block">
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mi>α</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>/</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mi>α</mml:mi></mml:msup>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow></mml:math></disp-formula>Thus, we can get the final optimal hop number as:
<disp-formula id="FD6">
<label>(6)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi mathvariant="italic">opt</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>α</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:mi>α</mml:mi></mml:mrow></mml:msup>
<mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>and the corresponding distance [<xref ref-type="bibr" rid="b5-sensors-10-09493">5</xref>,<xref ref-type="bibr" rid="b22-sensors-10-09493">22</xref>]:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mi>n</mml:mi>
<mml:mi mathvariant="italic">opt</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>α</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:mrow>
<mml:mi>α</mml:mi></mml:mroot></mml:mrow></mml:math></disp-formula></p>
<p>Since the distance <italic>d<sub>i</sub></italic> as well as the traffic length is the same for all sensor nodes, the only difference of energy consumption is <italic>E<sub>Rx</sub>(l)</italic> = <italic>l · E<sub>elec</sub></italic>, as can be seen from <xref ref-type="disp-formula" rid="FD1">Equation (1)</xref> to <xref ref-type="disp-formula" rid="FD3">(3)</xref>. Therefore, we can get <italic>E<sub>1</sub></italic> <italic>≈ E<sub>2</sub></italic> <italic>=E<sub>3</sub></italic> ⋯ <italic>= E<sub>n</sub></italic>.</p>
<p>The query-based traffic model is similar to the event-based model in terms of energy consumption since the length of data message as well as the individual distance is the same for all sensors. In both cases, all involved sensors will consume their energy at similar rate, which can effectively alleviate the hotspot problem and prolong the network lifetime.</p></sec>
<sec>
<label>4.1.2.</label>
<title>Time-Based Traffic Model</title>
<p>Under the time-based traffic model, each node will take turns to transmit its data to a sink node. Therefore, the key difference between time-based and event/query-based traffic model is the packet length. For example, node 1 which is the furthest from sink node only needs to transmit its data once while node <italic>n</italic> which is closest to sink node has to transmit its own data once and help forward the data (<italic>n</italic> − 1) times along the line.</p>
<p>It is worth noting that if we use the same methodology to let <italic>d<sub>1</sub></italic> = <italic>d<sub>2</sub></italic> = ⋯= <italic>d<sub>n</sub></italic> = <italic>d/n</italic>, node <italic>n</italic> will become a hotspot node and die quickly since it has more traffic burden to forward. On the other hand, node 1 will have much residual energy when node <italic>n</italic> dies, which is not desirable. Thus, the objective we have here is to let <italic>E<sub>1</sub></italic> <italic>= E<sub>2</sub></italic> <italic>=E<sub>3</sub></italic> ⋯ <italic>= E<sub>n</sub></italic> in order to maximize network lifetime.</p>
<p>Since node <italic>i</italic> will transmit its own <italic>l</italic>-bits data for once and forward the traffic for (<italic>i</italic> − 1) times after all nodes take turn to transmit their data to sink node. The energy consumption for node <italic>i</italic> is:
<disp-formula id="FD8">
<label>(8)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ele</mml:mi>
<mml:mi>c</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>α</mml:mi></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>α</mml:mi></mml:msubsup>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo>⋅</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>α</mml:mi></mml:msubsup></mml:mrow></mml:math></disp-formula>Let <italic>E<sub>i</sub></italic> = <italic>E<sub>i</sub></italic><sub>+1</sub>, we can finally get:
<disp-formula id="FD9">
<label>(9)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">elec</mml:mi></mml:mrow></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi>i</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>α</mml:mi></mml:msubsup></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:mrow>
<mml:mi>α</mml:mi></mml:mroot>
<mml:mo>=</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>i</mml:mi>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>p</mml:mi></mml:mrow></mml:msub>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>α</mml:mi></mml:msubsup></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>p</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mfrac></mml:mrow>
<mml:mi>α</mml:mi></mml:mroot></mml:mrow></mml:math></disp-formula>Since <italic>d<sub>n</sub></italic> &gt; 0, namely 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>α</mml:mi></mml:msubsup></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mi>n</mml:mi></mml:mrow></mml:mfrac>
<mml:mo>&gt;</mml:mo>
<mml:mn>0</mml:mn></mml:mrow></mml:math></inline-formula>, it must satisfy:
<disp-formula id="FD10">
<label>(10)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>&lt;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>α</mml:mi></mml:msubsup></mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">elec</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mtext>or</mml:mtext>
<mml:mo> </mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>&gt;</mml:mo>
<mml:mroot>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>n</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">elec</mml:mi></mml:mrow></mml:msub></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mrow>
<mml:mi>α</mml:mi></mml:mroot></mml:mrow></mml:math></disp-formula></p>
<p>Based on (10), we can get the corresponding lower bound distance <italic>d</italic><sub>1</sub> when hop number <italic>n</italic> = [2:9], as is shown in <xref ref-type="table" rid="t2-sensors-10-09493">Table 2</xref>. Here, <italic>E<sub>elec</sub></italic> = 50 <italic>nJ/bit</italic>, <italic>α</italic> = 4 and <italic>ε<sub>amp</sub></italic> = 0.001 <italic>pJ/bit/m</italic><sup>4</sup>. Given the multi-hop number <italic>n</italic>, <xref ref-type="table" rid="t2-sensors-10-09493">Table 2</xref> provides the lower bound distance value <italic>d</italic><sub>1</sub> as well as the minimal source to sink node distance <italic>d</italic> = Σ<italic>d<sub>i</sub></italic>. For example, when <italic>d</italic> = 300, we can only use 2-hop or 3-hop route to achieve energy balancing with practical distance <italic>d</italic><sub>1</sub>(2) &gt; 100 or <italic>d</italic><sub>1</sub>(3) &gt; 118.9. If the hop number <italic>n</italic> ≥ 4, the minimal <italic>d</italic> = Σ<italic>d<sub>i</sub></italic> ≥ 307.6 which is contrary to <italic>d</italic> = 300.</p>
<p>On the other hand, given the source to sink node distance <italic>d</italic>, there might be several multi-hop routes with different hop number <italic>n</italic>. There exists the highest hop number above with the minimal energy consumption for each sensor node and this is the optimal multi-hop number we need.</p>
<p>From <xref ref-type="table" rid="t3-sensors-10-09493">Table 3</xref>, we can see different set of <italic>d</italic><sub>1</sub>(<italic>n</italic>) given the source to sink node distance <italic>d</italic>. For example, when <italic>d</italic> = 800, we can either choose 8-hop route with <italic>d</italic><sub>1</sub>(8) = 164.8 or choose 7-hop route with <italic>d</italic><sub>1</sub>(7) = 170.5. The corresponding individual distance <italic>d</italic><sub>i</sub> can be deduced from <xref ref-type="disp-formula" rid="FD9">Equation (9)</xref>. It is worth noting that we cannot choose 9-hop route since the minimal Σ <italic>d<sub>i</sub></italic> (9) = 840.9 &gt; <italic>d</italic> = 800. Thus, we can choose <italic>n</italic>-hop route with <italic>n</italic> ∈ [2,8] when <italic>d</italic> = 800. Finally, we choose the highest 8-hop route with <italic>d</italic><sub>1</sub>(8) = 164.8 since each of the 8 nodes consumes the least energy of 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>l</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:msubsup>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>a</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>8</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
<p>From the analysis under both event/query based and time-based traffic model, we can conclude that:
<list list-type="order">
<list-item>
<p>Given the source to sink node distance <italic>d</italic>, the optimal multi-hop number <italic>n</italic> as well as each individual distance <italic>d<sub>i</sub></italic>, <italic>i</italic> ∈ [1,<italic>n</italic>] can be determined so that all the sensor nodes consume their energy at similar rate;</p></list-item>
<list-item>
<p>The event or query based model will finally become time-based traffic model when the observing time is long enough. In that case, each sensor node will be almost uniformly chosen for once among all sensor nodes from time point of view, which is similar to the time-based traffic model.</p></list-item>
<list-item>
<p>Therefore, the time-based traffic model is more popular and practical and we just focus on the analysis of time-based traffic model in the following sections.</p></list-item></list></p></sec></sec>
<sec>
<label>4.2.</label>
<title>DEAR Algorithm</title>
<p>In the DEAR algorithm, each sensor node has two tables. One is the routing table which contains information like source node, previous and next hop node, <italic>etc</italic>. The other table is the neighbor table which contains neighbors’ information like distance between them, distance to the sink node, residual energy, node degree, <italic>etc</italic>. Thus, each node can make intelligent decisions about the next hop based on the DEAR algorithm and the algorithm is easy to implement for practical engineering applications.</p>
<p>The key strength of DEAR algorithm is that given the source to sink node distance d and hardware parameters in <xref ref-type="table" rid="t1-sensors-10-09493">Table 1</xref>, we can provide energy efficient route with the optimal multi-hop number and corresponding individual distance under the practical sensor network. The energy will be consumed at similar rate for all sensor nodes so that energy efficiency and energy balancing can be achieved and network lifetime can be prolonged.</p>
<sec>
<label>4.2.1.</label>
<title>Basic Assumptions</title>
<p>We make the following basic assumptions similar to [<xref ref-type="bibr" rid="b17-sensors-10-09493">17</xref>]:
<list list-type="simple">
<list-item>
<p>♦ All sensor nodes are static after deployment.</p></list-item>
<list-item>
<p>♦ The communication links are symmetric.</p></list-item>
<list-item>
<p>♦ Each sensor node can control its power level to the neighbors.</p></list-item>
<list-item>
<p>♦ Each sensor node can know the distance to its neighbors and to the sink node.</p></list-item>
<list-item>
<p>♦ We assume ideal MAC layer conditions.</p></list-item></list></p>
<p>Here, we make no assumption of the uniform distribution of sensor nodes or the knowledge of global network topology. Based on the received signal strength index (RSSI) or other positioning and localization techniques, each node can get the distance to its neighbors and to the sink node and then adjust its transmission power level.</p></sec>
<sec>
<label>4.2.2.</label>
<title>Flow Chart of DEAR</title>
<p>From <xref ref-type="fig" rid="f5-sensors-10-09493">Figure 5</xref> we can see that the flow chart of DEAR algorithm consists of two phases. On the left side is the route setup phase and on the right side is the route maintenance phase.</p>
<p>If the ACK message is not received within a certain time, a link failure is detected. Then a local repair process will be initiated first. If the node can find an alternative next hop node, it will determine its next hop in a similar way like above. Or else, it will notify all the involved nodes about the failure of this link by sending a route error (RERR) message. This broken link will be deleted by all involved nodes from their routing table and neighboring table and they will avoid using this link later on. Finally, the source node will restart the route setup phase.</p></sec>
<sec>
<label>4.2.3.</label>
<title>Route Setup Phase</title>
<p>The whole route setup phase is summarized in <xref ref-type="table" rid="t5-sensors-10-09493">Algorithm 1</xref>. Once source node has data to send, it will try to set up a route from source to sink node as follows.</p>
<table-wrap id="t5-sensors-10-09493" position="anchor">
<label>Algorithm 1.</label>
<caption>
<p>Route setup phase.</p></caption>
<graphic xlink:href="sensors-10-09493t1.gif"/></table-wrap>
<p>First, it determines the transmission manner by comparing the source to sink node distance <italic>d</italic> and <italic>d<sub>i</sub></italic>(<italic>n</italic> = 2) = 100 in <xref ref-type="table" rid="t2-sensors-10-09493">Table 2</xref>, as is explained above. It is worth mentioning that we might choose direct transmission when d ≥ 100 + Δ under real network environment. For example, when <italic>d</italic> = 120, it is very difficult to find a 2-hop route with <italic>d<sub>1</sub></italic> = 100 and <italic>d<sub>2</sub></italic> <italic>=</italic> 20 so that <italic>E<sub>1</sub></italic> = <italic>E<sub>2</sub></italic> under random network topology, especially when BS is placed outside. The value of Δ is dependant on network density and we set Δ ∈ [20,50] in this paper under different network topologies.</p>
<p>Once multi-hop transmission manner is chosen, source node will determine its next hop as is illustrated in <xref ref-type="table" rid="t2-sensors-10-09493">Table 2</xref> and <xref ref-type="table" rid="t3-sensors-10-09493">3</xref>. It is worth emphasizing that the selection criterion of next hop node is critical during routing process. Here, we choose the final next hop based on the following rules:
<list list-type="simple">
<list-item>
<p>♦ The distance between node <italic>i</italic> and its next hop node <italic>j</italic> should be <italic>d</italic> (<italic>i,j</italic>) ∈ (<italic>d<sub>i</sub></italic>, <italic>d<sub>i</sub></italic> + Δ].</p></list-item>
<list-item>
<p>♦ The distance between node <italic>j</italic> to BS should be less than node <italic>i</italic> to BS, namely: <italic>d<sub>j,BS</sub></italic> &lt; <italic>d<sub>i,BS</sub></italic>.</p></list-item>
<list-item>
<p>♦ The final next hop node <italic>j</italic> should have relatively much residual energy.</p></list-item></list></p>
<p>Therefore, the final next hop node <italic>j</italic> is chosen after the following 3 steps. First, we choose a set of candidates with <italic>d</italic> (<italic>i,j</italic>) ∈ (<italic>d<sub>i</sub></italic>, <italic>d<sub>i</sub></italic> + Δ] based on the analysis in <xref ref-type="disp-formula" rid="FD9">Equation (9)</xref> and <xref ref-type="table" rid="t2-sensors-10-09493">Table 2</xref> and <xref ref-type="table" rid="t3-sensors-10-09493">3</xref>. Then, some of the candidates whose distance to BS is less than the current node <italic>i</italic> to BS are chosen based on greedy routing mechanism, namely <italic>d<sub>j,BS</sub></italic> &lt; <italic>d<sub>i,BS</sub></italic>. Among them, we will choose half of them whose distance to BS is smaller than the other half. Finally, the one with the largest residual energy is chosen as the next hop. It is worth emphasizing that our first parameter is the distance and our secondary is the residual energy in order to achieve energy balancing and energy efficiency during routing process.</p>
<p>When the next hop node is chosen, the source node will send a RREQ message to that specific neighbor directly with its own location information encapsulated inside RREQ. Once the neighbor receives the RREQ message, it will send an ACK message back to its previous node. Then, it will add its own location information again into the RREQ message and send it to its next hop neighbor in an iterative manner like above. Finally, the RREQ message will reach the sink node carrying the complete route information and a RREP message will be sent back to the source node based on the assumption of symmetric link.</p>
<p>The traffic can get started once the source node gets the RREP message with complete route information from sink node. After the traffic session is closed, each node on the route will update its routing table as well as neighboring table.</p></sec>
<sec>
<label>4.2.4.</label>
<title>Route Maintenance Phase</title>
<p>As can be seen from <xref ref-type="fig" rid="f5-sensors-10-09493">Figure 5</xref>, link failure will be detected and route maintenance phase will be initiated if an ACK message is not received for certain TTL (time-to-live) time. Link failure is usually caused by reasons like node dies, interference, <italic>etc.</italic></p>
<p>If the source node detects a link failure, it will restart the route setup phase by choosing another next hop in a similar way above. If an intermediate node detects a link failure, it will first attempt a local link repair process. In other words, the intermediate node will first try to choose another proper neighbor in order to fix the route to BS. In this way, the end to end latency can get reduced and the energy consumption as well as overhead can be reduced. This local repair process will last for certain time until an ACK message is received or when TTL is expired.</p>
<p>If the local link repair process fails, a RERR message will be sent from intermediate node to source node in a reverse way based on the information stored in RREQ. Finally, this route will be deleted from source node and intermediate nodes and a new route setup phase will be initiated.</p></sec></sec></sec>
<sec>
<label>5.</label>
<title>Performance Evaluation</title>
<sec>
<label>5.1.</label>
<title>Simulation Environment</title>
<p>For performance evaluation, we use MATLAB software which is similar to C language where the code is executed line by line. As is shown in <xref ref-type="table" rid="t4-sensors-10-09493">Table 4</xref>, there are 300 sensor nodes randomly deployed in a 300 × 300 m<sup>2</sup> area WSN with BS placed in the middle of the area. The maximal transmission radius is 150 meters. Each node takes turn to transmit a 2,000 bits message to BS using either direct transmission or multi-hop transmission based on different routing algorithms. We compare our DEAR algorithm with the following three popular routing algorithms which are direct transmission, greedy and maximal residual energy (MRE) algorithms.</p></sec>
<sec>
<label>5.2.</label>
<title>Performance Evaluation</title>
<p><xref ref-type="fig" rid="f6-sensors-10-09493">Figure 6</xref> shows the distribution of individual hop distance <italic>d<sub>i</sub></italic> under different multi-hop routes, as is discussed in <xref ref-type="disp-formula" rid="FD9">Equation (9)</xref> and <xref ref-type="table" rid="t2-sensors-10-09493">Table 2</xref>. Given the source to BS distance <italic>d</italic> = 800, there are several multi-hop route options with hop number <italic>n</italic> ∈  [2,8] (see <xref ref-type="table" rid="t3-sensors-10-09493">Table 3</xref>). Finally, we will choose 8-hop route since each node consumes the least energy. It is worth noting that the practical <italic>d</italic><sub>1</sub>(8) will be larger than the theoretical value under random network topology. In this way, the energy consumption for all the 8 sensor nodes is the minimal than other <italic>n</italic> hop route where <italic>n</italic> ∈ [<xref ref-type="bibr" rid="b2-sensors-10-09493">2</xref>,<xref ref-type="bibr" rid="b7-sensors-10-09493">7</xref>]. Therefore, both energy efficiency and energy balancing is achieved.</p>
<p><xref ref-type="fig" rid="f7-sensors-10-09493">Figure 7</xref> shows the average energy consumption for four routing algorithms under 100 different network topologies. The simulation environment is that there are 300 nodes randomly placed in a 300 × 300 m<sup>2</sup> area network. We set <italic>R</italic> = 150 and Δ = 40 here.</p>
<p>We can see from <xref ref-type="fig" rid="f7-sensors-10-09493">Figure 7</xref> that direct transmission algorithm consumes the largest amount of energy since the average source to sink node distance is relatively long and multi-path model is used here. Our DEAR algorithm consumes the least energy due to it distance-based nature. The performance of greedy and MRE algorithm is in the middle under 100 simulations. From here we can see that DEAR can not only balance energy consumption for all sensor nodes but also reduce energy consumption comparing to other algorithms.</p>
<p><xref ref-type="fig" rid="f8-sensors-10-09493">Figures 8</xref> and <xref ref-type="fig" rid="f9-sensors-10-09493">9</xref> show the total energy consumption when BS is placed either inside or outside. The simulation environment is similar to <xref ref-type="fig" rid="f7-sensors-10-09493">Figure 7</xref> where there are 300 nodes randomly deployed in a 300 × 300 m<sup>2</sup> area. We set <italic>R</italic> = 130 and Δ = 20 here.</p>
<p>From both figures, we can see a similar trend of energy consumption for the four routing algorithms where the direct transmission algorithm consumes the largest energy while our DEAR algorithm consumes the least energy. The total energy means the summation of energy consumption for each algorithm up to the current simulation round. Besides, we can see that the total energy consumption increases sharply when BS is placed outside at (150, 400) since the average source to BS distance is much larger than before.</p>
<p><xref ref-type="fig" rid="f10-sensors-10-09493">Figure 10</xref> shows network lifetime under the same network environment as in <xref ref-type="fig" rid="f7-sensors-10-09493">Figure 7</xref>. Here, network lifetime is defined as the time when the first node dies out of energy since this might cause network partition or isolated area quickly afterwards.</p>
<p>As can be seen from <xref ref-type="fig" rid="f10-sensors-10-09493">Figure 10</xref>, direct transmission usually has the shortest lifetime in a large scale network scenario or when the average source to sink node distance is large. For the MRE algorithm, a node chooses its next hop based on the remaining energy which is irrelevant to the distance distribution. Therefore, the final multi-hop route might has too many short hop number which consumes more average energy, as is shown in previous <xref ref-type="fig" rid="f7-sensors-10-09493">Figure 7</xref>. For a greedy routing algorithm, each node will prefer to choose its next hop with distance close to <italic>R</italic> in order to make greediest progress toward the sink node. Thus, more energy consumption is caused with relatively short network lifetime. Again we can see the DEAR algorithm has the longest network lifetime due to its energy efficiency and balancing nature.</p></sec>
<sec sec-type="discussion">
<label>5.3.</label>
<title>Discussion</title>
<p>Given the source to sink node distance and the hardware parameter values in <xref ref-type="table" rid="t1-sensors-10-09493">Table 1</xref>, we can determine the transmission manner, the optimal multi-hop number as well as the corresponding individual distances. The key difference between DEAR and other energy efficient routing algorithms is that we try to let each node consume the energy at similar rate rather than to minimize the total energy consumption during each routing process.</p>
<p>The selection criterion of the next hop node is the key problem during routing process. In this paper, we treat the distance metric as the primary parameter and we also consider node residual energy as the secondary parameter. Thus, the energy consumption can be balanced well based on the distance and residual energy distribution. From this paper, we can see that DEAR algorithm is a distributed, localized, energy efficient and balancing algorithm which can be easily used in real applications.</p>
<p>The shortcoming of the DEAR algorithm is the requirement of knowing the source to sink node distance, which can be obtained through GPS devices, certain localization or positioning techniques with additional computing and communication overhead. Also, the DEAR algorithm is not usable in sparse network environments or when there are obstacles between the neighboring nodes. In both cases, the next hop node based on our DEAR algorithm might not be found.</p></sec></sec>
<sec sec-type="conclusions">
<label>6.</label>
<title>Conclusions</title>
<p>To efficiently reduce and balance the energy consumption in WSNs, we proposed a Distance-based Energy Aware Routing (DEAR) algorithm based on theoretical analysis and numerical illustration under different energy and traffic models. Given the source to sink node distance, the optimal multi-hop number as well as the corresponding individual distance can be determined so that all sensor nodes can consume energy at a similar rate. During the routing process, we treat distance distribution as the first parameter and the residual energy as the secondary parameter. The final results show that DEAR can ensure better energy efficiency and energy balancing performance comparing with other popular multi-hop routing algorithms.</p>
<p>For future research, we plan to extend our work by studying the influence of hop number and hop distance on other network metrics such as latency, communication overhead, packet delivery ratio, <italic>etc.</italic> Also, we will consider probability based energy efficient routing which integrates in factor of hop distance, residual energy and node degree.</p></sec></body>
<back>
<ack>
<p>This work was supported by a grant from the Kyung Hee University in 2010 (KHU-20101372). The authors are thankful to the anonymous reviews for their constructive comments and suggestions which greatly improve the quality of this paper.</p></ack>
<ref-list>
<title>References</title>
<ref id="b1-sensors-10-09493"><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. Netw</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-10-09493"><label>2.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Efthymiou</surname><given-names>C</given-names></name><name><surname>Nikoletseas</surname><given-names>S</given-names></name><name><surname>Rolim</surname><given-names>J</given-names></name></person-group><article-title>Energy balanced data propagation in wireless sensor networks</article-title><source>Wirel. Netw</source><year>2006</year><volume>12</volume><fpage>691</fpage><lpage>707</lpage><pub-id pub-id-type="doi">10.1007/s11276-006-6529-y</pub-id></citation></ref>
<ref id="b3-sensors-10-09493"><label>3.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Szymon</surname><given-names>F</given-names></name><name><surname>Martin</surname><given-names>C</given-names></name></person-group><article-title>On the problem of energy efficiency of multi-hop <italic>vs</italic>. one-hop routing in wireless sensor networks</article-title><conf-name>Proceedings of the 21st International Conference on Advanced Information Networking and Applications Workshops (AINAW)</conf-name><conf-loc>Niagara Falls, Canada</conf-loc><conf-date>21–23 May 2007</conf-date><fpage>380</fpage><lpage>385</lpage></citation></ref>
<ref id="b4-sensors-10-09493"><label>4.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Deng</surname><given-names>J</given-names></name></person-group><article-title>Multi-hop/Direct Forwarding (MDF) for static wireless sensor networks</article-title><source>ACM Trans. Sens. Netw</source><year>2009</year><volume>5</volume><fpage>1</fpage><lpage>25</lpage></citation></ref>
<ref id="b5-sensors-10-09493"><label>5.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname><given-names>J</given-names></name><name><surname>Cho</surname><given-names>J</given-names></name><name><surname>Lee</surname><given-names>S</given-names></name><name><surname>Chen</surname><given-names>KC</given-names></name><name><surname>Lee</surname><given-names>YK</given-names></name></person-group><article-title>Hop-based Energy aware routing algorithm for wireless sensor networks</article-title><source>IEICE Trans. Commun</source><year>2010</year><volume>2</volume><fpage>305</fpage><lpage>316</lpage></citation></ref>
<ref id="b6-sensors-10-09493"><label>6.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Heinzelman</surname><given-names>W</given-names></name><name><surname>Chandrakasan</surname><given-names>A</given-names></name><name><surname>Balakrishnan</surname><given-names>H</given-names></name></person-group><article-title>Energy-efficient communication protocol for wireless microsensor networks</article-title><conf-name>Proceedings of Hawaii International Conference System Sciences</conf-name><conf-loc>Maui, HI, USA</conf-loc><conf-date>4–7 January 2000</conf-date><fpage>1</fpage><lpage>10</lpage></citation></ref>
<ref id="b7-sensors-10-09493"><label>7.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Lindsey</surname><given-names>S</given-names></name><name><surname>Raghavendra</surname><given-names>CS</given-names></name></person-group><article-title>PEGASIS: Power Efficient gathering in sensor information systems</article-title><conf-name>Proceedings of IEEE Aerospace Conference</conf-name><conf-loc>Big Sky, MT, USA</conf-loc><conf-date>9–16 March 2002</conf-date><fpage>924</fpage><lpage>935</lpage></citation></ref>
<ref id="b8-sensors-10-09493"><label>8.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Younis</surname><given-names>O</given-names></name><name><surname>Fahmy</surname><given-names>S</given-names></name></person-group><article-title>HEED: A hybrid, energy-efficient, distributed clustering approach for ad hoc sensor networks</article-title><source>IEEE Trans. Mobile Comput</source><year>2004</year><volume>3</volume><fpage>366</fpage><lpage>379</lpage><pub-id pub-id-type="doi">10.1109/TMC.2004.41</pub-id></citation></ref>
<ref id="b9-sensors-10-09493"><label>9.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Al-Karaki</surname><given-names>JN</given-names></name><name><surname>Kamal</surname><given-names>AE</given-names></name></person-group><article-title>Routing techniques in wireless sensor networks: A Survey</article-title><source>IEEE Wirel. Commun</source><year>2004</year><volume>11</volume><fpage>6</fpage><lpage>28</lpage></citation></ref>
<ref id="b10-sensors-10-09493"><label>10.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Akkaya</surname><given-names>K</given-names></name><name><surname>Younis</surname><given-names>M</given-names></name></person-group><article-title>A survey on routing protocols in wireless sensor networks</article-title><source>Ad. Hoc. Netw</source><year>2005</year><volume>3</volume><fpage>325</fpage><lpage>456</lpage><pub-id pub-id-type="doi">10.1016/j.adhoc.2003.09.010</pub-id></citation></ref>
<ref id="b11-sensors-10-09493"><label>11.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Kulik</surname><given-names>J</given-names></name><name><surname>Heinzelman</surname><given-names>WR</given-names></name><name><surname>Balakrishnan</surname><given-names>H</given-names></name></person-group><article-title>Negotiation-based protocols for disseminating information in wireless sensor networks</article-title><conf-name>Proceedings of ACM/IEEE International Conference on Mobile Computing and Networking (MobiCom'99)</conf-name><conf-loc>Seattle, WA, USA</conf-loc><conf-date>15– 9 August 1999</conf-date><fpage>169</fpage><lpage>185</lpage></citation></ref>
<ref id="b12-sensors-10-09493"><label>12.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Intanagonwiwat</surname><given-names>C</given-names></name><name><surname>Govindan</surname><given-names>R</given-names></name><name><surname>Estrin</surname><given-names>D</given-names></name></person-group><article-title>Directed diffusion: A scalable and robust communication paradigm for sensor networks</article-title><conf-name>Proceedings of the 6th Annual ACM/IEEE International Conference on Mobile Computing and Networking (MobiCom'00)</conf-name><conf-loc>Boston, MA, USA</conf-loc><conf-date>November 2000</conf-date><fpage>56</fpage><lpage>67</lpage></citation></ref>
<ref id="b13-sensors-10-09493"><label>13.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Shah</surname><given-names>RC</given-names></name><name><surname>Rabaey</surname><given-names>JM</given-names></name></person-group><article-title>Energy aware routing for low energy ad hoc sensor networks</article-title><conf-name>Proceedings of the IEEE Wireless Communications and Networks Conference (WCNC 02)</conf-name><conf-loc>Orlando, FL, USA</conf-loc><conf-date>17–21 March 2002</conf-date><fpage>350</fpage><lpage>355</lpage></citation></ref>
<ref id="b14-sensors-10-09493"><label>14.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Heinzelman</surname><given-names>W</given-names></name></person-group><source>Application-specific protocol architectures for wireless networks</source><comment>PhD Thesis</comment><publisher-name>Massachusetts Institute of Technology</publisher-name><publisher-loc>Cambridge, MA, USA</publisher-loc><year>2000</year><fpage>84</fpage><lpage>86</lpage></citation></ref>
<ref id="b15-sensors-10-09493"><label>15.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Rodoplu</surname><given-names>V</given-names></name><name><surname>Ming</surname><given-names>TH</given-names></name></person-group><article-title>Minimum energy mobile wireless networks</article-title><source>IEEE J. Sel. Areas Comm</source><year>1999</year><volume>17</volume><fpage>1333</fpage><lpage>1344</lpage><pub-id pub-id-type="doi">10.1109/49.779917</pub-id></citation></ref>
<ref id="b16-sensors-10-09493"><label>16.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Li</surname><given-names>L</given-names></name><name><surname>Halpern</surname><given-names>JY</given-names></name></person-group><article-title>Minimum energy mobile wireless networks revisited</article-title><conf-name>Proceedings of IEEE International Conference on Communications (ICC’01)</conf-name><conf-loc>Helsinki, Finland</conf-loc><conf-date>11–14 June 2001</conf-date><fpage>278</fpage><lpage>283</lpage></citation></ref>
<ref id="b17-sensors-10-09493"><label>17.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname><given-names>J</given-names></name><name><surname>Xu</surname><given-names>M</given-names></name><name><surname>Zhao</surname><given-names>W</given-names></name><name><surname>Xu</surname><given-names>B</given-names></name></person-group><article-title>A multipath routing protocol based on clustering and ant colony optimization for wireless sensor networks</article-title><source>Sensors</source><year>2010</year><volume>10</volume><fpage>4521</fpage><lpage>4540</lpage><pub-id pub-id-type="doi">10.3390/s100504521</pub-id><pub-id pub-id-type="pmid">22399890</pub-id></citation></ref>
<ref id="b18-sensors-10-09493"><label>18.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Li</surname><given-names>X</given-names></name><name><surname>Xu</surname><given-names>L</given-names></name><name><surname>Wang</surname><given-names>H</given-names></name><name><surname>Song</surname><given-names>J</given-names></name><name><surname>Yang</surname><given-names>SX</given-names></name></person-group><article-title>A Differential evolution-based routing algorithm for environmental monitoring wireless sensor networks</article-title><source>Sensors</source><year>2010</year><volume>10</volume><fpage>5425</fpage><lpage>5442</lpage><pub-id pub-id-type="doi">10.3390/s100605425</pub-id><pub-id pub-id-type="pmid">22219670</pub-id></citation></ref>
<ref id="b19-sensors-10-09493"><label>19.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Youssef</surname><given-names>W</given-names></name><name><surname>Younis</surname><given-names>M</given-names></name></person-group><article-title>Optimized asset planning for minimizing latency in wireless sensor networks</article-title><source>Wirel. Netw</source><year>2010</year><volume>16</volume><fpage>65</fpage><lpage>78</lpage><pub-id pub-id-type="doi">10.1007/s11276-008-0115-4</pub-id></citation></ref>
<ref id="b20-sensors-10-09493"><label>20.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname><given-names>H</given-names></name><name><surname>Ye</surname><given-names>F</given-names></name><name><surname>Sikdar</surname><given-names>B</given-names></name></person-group><article-title>A swarm-intelligence-based protocol for data acquisition in networks with mobile sinks</article-title><source>IEEE Trans. Mobile Comput</source><year>2008</year><volume>7</volume><fpage>931</fpage><lpage>945</lpage><pub-id pub-id-type="doi">10.1109/TMC.2007.70783</pub-id></citation></ref>
<ref id="b21-sensors-10-09493"><label>21.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Haenggi</surname><given-names>M</given-names></name></person-group><article-title>Twelve reasons not to route over many short hops</article-title><conf-name>Proceedings of the 60th IEEE Vehicular Technology Conference (VTC)</conf-name><conf-loc>Los Angeles, CA, USA</conf-loc><conf-date>26–29 September 2004</conf-date><fpage>3130</fpage><lpage>3134</lpage></citation></ref>
<ref id="b22-sensors-10-09493"><label>22.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Stojmenovic</surname><given-names>I</given-names></name><name><surname>Lin</surname><given-names>X</given-names></name></person-group><article-title>Power-aware localized routing in wireless networks</article-title><source>IEEE Trans. Parallel Distrib. Syst</source><year>2001</year><volume>12</volume><fpage>1121</fpage><lpage>1133</lpage></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures and Tables</title>
<fig id="f1-sensors-10-09493" position="float">
<label>Figure 1.</label>
<caption>
<p>Routing protocols in sensor networks: A taxonomy.</p></caption>
<graphic xlink:href="sensors-10-09493f1.gif"/></fig>
<fig id="f2-sensors-10-09493" position="float">
<label>Figure 2.</label>
<caption>
<p>Radio energy dissipation model.</p></caption>
<graphic xlink:href="sensors-10-09493f2.gif"/></fig>
<fig id="f3-sensors-10-09493" position="float">
<label>Figure 3.</label>
<caption>
<p>Hop spot nodes under HEAR algorithm <bold>(a)</bold> when BS is inside; <bold>(b)</bold> when BS is outside.</p></caption>
<graphic xlink:href="sensors-10-09493f3.gif"/></fig>
<fig id="f4-sensors-10-09493" position="float">
<label>Figure 4.</label>
<caption>
<p>One dimensional linear network.</p></caption>
<graphic xlink:href="sensors-10-09493f4.gif"/></fig>
<fig id="f5-sensors-10-09493" position="float">
<label>Figure 5.</label>
<caption>
<p>DEAR flow chart.</p></caption>
<graphic xlink:href="sensors-10-09493f5.gif"/></fig>
<fig id="f6-sensors-10-09493" position="float">
<label>Figure 6.</label>
<caption>
<p>Distribution of hop distance under different multi-hop routes.</p></caption>
<graphic xlink:href="sensors-10-09493f6.gif"/></fig>
<fig id="f7-sensors-10-09493" position="float">
<label>Figure 7.</label>
<caption>
<p>Average energy consumption.</p></caption>
<graphic xlink:href="sensors-10-09493f7.gif"/></fig>
<fig id="f8-sensors-10-09493" position="float">
<label>Figure 8.</label>
<caption>
<p>Total energy consumption when BS is inside.</p></caption>
<graphic xlink:href="sensors-10-09493f8.gif"/></fig>
<fig id="f9-sensors-10-09493" position="float">
<label>Figure 9.</label>
<caption>
<p>Total energy consumption when BS is outside.</p></caption>
<graphic xlink:href="sensors-10-09493f9.gif"/></fig>
<fig id="f10-sensors-10-09493" position="float">
<label>Figure 10.</label>
<caption>
<p>Network lifetime.</p></caption>
<graphic xlink:href="sensors-10-09493f10.gif"/></fig>
<table-wrap id="t1-sensors-10-09493" position="float">
<label>Table 1.</label>
<caption>
<p>Definition of radio parameters.</p></caption>
<table frame="box" rules="cols">
<thead>
<tr>
<th align="center" valign="bottom"><bold>Parameter</bold></th>
<th align="center" valign="bottom"><bold>Definition</bold></th>
<th align="center" valign="bottom"><bold>Unit</bold></th></tr>
<tr>
<th colspan="3" align="left" valign="middle">
<hr/></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="middle"><italic>E<sub>elec</sub></italic></td>
<td align="center" valign="middle">Energy dissipation to run the radio</td>
<td align="center" valign="middle">50 nJ/bit</td></tr>
<tr>
<td align="center" valign="middle"><italic>ε<sub>fs</sub></italic></td>
<td align="center" valign="middle">Free space model of transmitter amplifier</td>
<td align="center" valign="middle">10 pJ/bit/m<sup>2</sup></td></tr>
<tr>
<td align="center" valign="middle"><italic>ε<sub>mp</sub></italic></td>
<td align="center" valign="middle">Multi-path model of transmitter amplifier</td>
<td align="center" valign="middle">0.0013 pJ/bit/m<sup>4</sup></td></tr>
<tr>
<td align="center" valign="middle"><italic>l</italic></td>
<td align="center" valign="middle">Data length</td>
<td align="center" valign="middle">2,000 bits</td></tr>
<tr>
<td align="center" valign="middle"><italic>d<sub>0</sub></italic></td>
<td align="center" valign="middle">Distance threshold</td>
<td align="center" valign="middle">
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">fs</mml:mi></mml:mrow></mml:msub>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>ε</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">mn</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msqrt></mml:mrow></mml:math></inline-formula>m</td></tr></tbody></table></table-wrap>
<table-wrap id="t2-sensors-10-09493" position="float">
<label>Table 2.</label>
<caption>
<p>Corresponding <italic>d<sub>i</sub></italic> when hop number <italic>n</italic> = [2:9].</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th align="center" valign="top"><bold>n</bold></th>
<th align="center" valign="top"><bold>d<sub>1</sub></bold></th>
<th align="center" valign="top"><bold>d<sub>2</sub></bold></th>
<th align="center" valign="top"><bold>d<sub>3</sub></bold></th>
<th align="center" valign="top"><bold>d<sub>4</sub></bold></th>
<th align="center" valign="top"><bold>d<sub>5</sub></bold></th>
<th align="center" valign="top"><bold>d<sub>6</sub></bold></th>
<th align="center" valign="top"><bold>d<sub>7</sub></bold></th>
<th align="center" valign="top"><bold>d<sub>8</sub></bold></th>
<th align="center" valign="top"><bold>d<sub>9</sub></bold></th>
<th align="center" valign="top">Σ<italic>d<sub>i</sub></italic></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="top">2</td>
<td align="center" valign="top">100.0</td>
<td align="left" valign="top">0</td>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="center" valign="top">100.0</td></tr>
<tr>
<td align="center" valign="top">3</td>
<td align="center" valign="top">118.9</td>
<td align="left" valign="top">84.1</td>
<td align="left" valign="top">0</td>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="center" valign="top">203.0</td></tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">131.6</td>
<td align="left" valign="top">100.0</td>
<td align="left" valign="top">76.0</td>
<td align="left" valign="top">0</td>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="center" valign="top">307.6</td></tr>
<tr>
<td align="center" valign="top">5</td>
<td align="center" valign="top">141.4</td>
<td align="left" valign="top">110.7</td>
<td align="left" valign="top">90.4</td>
<td align="left" valign="top">70.7</td>
<td align="left" valign="top">0</td>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="center" valign="top">413.2</td></tr>
<tr>
<td align="center" valign="top">6</td>
<td align="center" valign="top">149.5</td>
<td align="left" valign="top">119.0</td>
<td align="left" valign="top">100</td>
<td align="left" valign="top">84.1</td>
<td align="left" valign="top">66.9</td>
<td align="left" valign="top">0</td>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="center" valign="top">519.5</td></tr>
<tr>
<td align="center" valign="top">7</td>
<td align="center" valign="top">156.5</td>
<td align="left" valign="top">125.7</td>
<td align="left" valign="top">107.5</td>
<td align="left" valign="top">93.1</td>
<td align="left" valign="top">80.0</td>
<td align="left" valign="top">63.9</td>
<td align="left" valign="top">0</td>
<td align="left" valign="top"/>
<td align="left" valign="top"/>
<td align="center" valign="top">626.7</td></tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">162.7</td>
<td align="left" valign="top">131.6</td>
<td align="left" valign="top">113.6</td>
<td align="left" valign="top">100.0</td>
<td align="left" valign="top">88.0</td>
<td align="left" valign="top">76.0</td>
<td align="left" valign="top">61.5</td>
<td align="left" valign="top">0</td>
<td align="left" valign="top"/>
<td align="center" valign="top">733.4</td></tr>
<tr>
<td align="center" valign="top">9</td>
<td align="center" valign="top">168.2</td>
<td align="left" valign="top">136.8</td>
<td align="left" valign="top">118.9</td>
<td align="left" valign="top">105.7</td>
<td align="left" valign="top">94.6</td>
<td align="left" valign="top">84.1</td>
<td align="left" valign="top">73.1</td>
<td align="left" valign="top">59.5</td>
<td align="left" valign="top">0</td>
<td align="center" valign="top">840.9</td></tr></tbody></table></table-wrap>
<table-wrap id="t3-sensors-10-09493" position="float">
<label>Table 3.</label>
<caption>
<p><italic>d</italic><sub>1</sub>(<italic>n</italic>) under different <italic>d</italic>.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th align="center" valign="middle">d</th>
<th align="center" valign="middle">800</th>
<th align="center" valign="middle">900</th>
<th align="center" valign="middle">1000</th></tr></thead>
<tbody>
<tr>
<td align="center" valign="middle" rowspan="3"><italic>d</italic><sub>1</sub>(<italic>n</italic>)</td>
<td align="center" valign="top">d<sub>1</sub>(8) = 164.8</td>
<td align="center" valign="top">d<sub>1</sub>(9) = 169.7</td>
<td align="center" valign="top">d<sub>1</sub>(10) = 174.3</td></tr>
<tr>
<td align="center" valign="top">d<sub>1</sub>(7) = 170.5</td>
<td align="center" valign="top">d<sub>1</sub>(8) = 174.2</td>
<td align="center" valign="top">d<sub>1</sub>(9) = 177.8</td></tr>
<tr>
<td align="center" valign="top">d<sub>1</sub>(6) = 183.7</td>
<td align="center" valign="top">d<sub>1</sub>(7) = 184.7</td>
<td align="center" valign="top">d<sub>1</sub>(8) = 186.3</td></tr></tbody></table></table-wrap>
<table-wrap id="t4-sensors-10-09493" position="float">
<label>Table 4.</label>
<caption>
<p>Simulation environment.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th align="center" valign="middle"><bold>Parameter</bold></th>
<th align="center" valign="middle"><bold>Value</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="middle">Network size</td>
<td align="center" valign="middle">300 × 300 m<sup>2</sup></td></tr>
<tr>
<td align="center" valign="middle">Node number</td>
<td align="center" valign="middle">300</td></tr>
<tr>
<td align="center" valign="middle">Radius</td>
<td align="center" valign="middle">150 m</td></tr>
<tr>
<td align="center" valign="middle">Data length</td>
<td align="center" valign="middle">2,000 bits</td></tr>
<tr>
<td align="center" valign="middle">Initial energy</td>
<td align="center" valign="middle">2 Joule</td></tr>
<tr>
<td align="center" valign="middle"><italic>E<sub>elec</sub></italic></td>
<td align="center" valign="middle">50 nJ/bit</td></tr>
<tr>
<td align="center" valign="middle"><italic>ε<sub>amp</sub></italic></td>
<td align="center" valign="middle">0.001 pJ/bit/m<sup>4</sup></td></tr>
<tr>
<td align="center" valign="middle"><sub>Δ</sub></td>
<td align="center" valign="middle">[20,50] m</td></tr>
<tr>
<td align="center" valign="middle">BS</td>
<td align="center" valign="middle">inside or outside</td></tr></tbody></table></table-wrap></sec></back></article>
