<?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/s100302003</article-id>
<article-id pub-id-type="publisher-id">sensors-10-02003</article-id>
<article-categories>
<subj-group>
<subject>Article</subject></subj-group></article-categories>
<title-group>
<article-title>Distributed Power Allocation for Sink-Centric Clusters in Multiple Sink Wireless Sensor Networks</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Cao</surname><given-names>Lei</given-names></name><xref ref-type="aff" rid="af1-sensors-10-02003"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Xu</surname><given-names>Chen</given-names></name><xref ref-type="aff" rid="af1-sensors-10-02003"><sup>1</sup></xref><xref ref-type="corresp" rid="c1-sensors-10-02003">*</xref></contrib>
<contrib contrib-type="author">
<name><surname>Shao</surname><given-names>Wei</given-names></name><xref ref-type="aff" rid="af1-sensors-10-02003"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Zhang</surname><given-names>Guoan</given-names></name><xref ref-type="aff" rid="af1-sensors-10-02003"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Zhou</surname><given-names>Hui</given-names></name><xref ref-type="aff" rid="af1-sensors-10-02003"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Sun</surname><given-names>Qiang</given-names></name><xref ref-type="aff" rid="af1-sensors-10-02003"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Guo</surname><given-names>Yuehua</given-names></name><xref ref-type="aff" rid="af2-sensors-10-02003"><sup>2</sup></xref></contrib></contrib-group>
<aff id="af1-sensors-10-02003">
<label>1</label> Department of Electronic and Information, The University of Nantong, Nantong Jiangsu, China</aff>
<aff id="af2-sensors-10-02003">
<label>2</label> Department of Sciences, The University of Nantong, Nantong Jiangsu, China</aff>
<author-notes>
<corresp id="c1-sensors-10-02003">
<label>*</label> Author to whom correspondence should be addressed; E-Mail: <email>xuchen@ntu.edu.cn</email>; Tel.: +086-513-8501-2622; Fax: +086-513-8501-2600.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2010</year></pub-date>
<pub-date pub-type="epub">
<day>11</day>
<month>3</month>
<year>2010</year></pub-date>
<volume>10</volume>
<issue>3</issue>
<fpage>2003</fpage>
<lpage>2026</lpage>
<history>
<date date-type="received">
<day>6</day>
<month>1</month>
<year>2010</year></date>
<date date-type="rev-recd">
<day>21</day>
<month>1</month>
<year>2010</year></date>
<date date-type="accepted">
<day>7</day>
<month>2</month>
<year>2010</year></date></history>
<permissions>
<copyright-statement>© 2010 by the authors; licensee Molecular Diversity Preservation International, 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>Due to the battery resource constraints, saving energy is a critical issue in wireless sensor networks, particularly in large sensor networks. One possible solution is to deploy multiple sink nodes simultaneously. Another possible solution is to employ an adaptive clustering hierarchy routing scheme. In this paper, we propose a multiple sink cluster wireless sensor networks scheme which combines the two solutions, and propose an efficient transmission power control scheme for a sink-centric cluster routing protocol in multiple sink wireless sensor networks, denoted as MSCWSNs-PC. It is a distributed, scalable, self-organizing, adaptive system, and the sensor nodes do not require knowledge of the global network and their location. All sinks effectively work out a representative view of a monitored region, after which power control is employed to optimize network topology. The simulations demonstrate the advantages of our new protocol.</p></abstract>
<kwd-group>
<kwd>wireless communication</kwd>
<kwd>sensor networks</kwd>
<kwd>multiple sink</kwd>
<kwd>clustering hierarchy</kwd>
<kwd>power control</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>In wireless sensor networks (WSNs) [<xref ref-type="bibr" rid="b1-sensors-10-02003">1</xref>], a sensor network is composed of a large number of wireless sensors, densely deployed, in the range of a phenomenon to observe, study and monitor it. A sensor is an electronic device which generally combines three main capabilities: the ability to measure and collect data relative to the environment surrounding it, the ability to process these collected data, and the ability to exchange it with other devices. The other devices can be sensor nodes or sinks. A sink is a particular node, generally with no energy limitation, which collects the information resulting from the sensing nodes, processes it and/or sends it to a data concentration center.</p>
<p>In a WSN cluster protocol, the network is randomly divided into several clusters, where each cluster is managed by a cluster head (CH). The sensor nodes transmit data to their cluster heads, which transmit the aggregated data to the base station. Localized clustering can contribute to more scalable behavior as the number of nodes increases, providing improved robustness, and more efficient resource utilization for many distributed sensor coordination tasks [<xref ref-type="bibr" rid="b2-sensors-10-02003">2</xref>]. Data aggregation becomes more simple under cluster conditions. Many clustering algorithms exist in the literature (k-means clustering [<xref ref-type="bibr" rid="b3-sensors-10-02003">3</xref>], self-organizing maps [<xref ref-type="bibr" rid="b4-sensors-10-02003">4</xref>], LEACH (LEACH-c) [<xref ref-type="bibr" rid="b5-sensors-10-02003">5</xref>], TEEN [<xref ref-type="bibr" rid="b6-sensors-10-02003">6</xref>], PEGASIS [<xref ref-type="bibr" rid="b7-sensors-10-02003">7</xref>], <italic>etc.</italic>).</p>
<p>As a novel issue, WSNs with multiple sinks have become a hot research topic. Many research works have focused on how to deploy sink nodes at optimal locations so the networks can cover relatively larger distances [<xref ref-type="bibr" rid="b8-sensors-10-02003">8</xref>,<xref ref-type="bibr" rid="b9-sensors-10-02003">9</xref>]. Even many mobile sink schemes were proposed [<xref ref-type="bibr" rid="b10-sensors-10-02003">10</xref>] in wireless self-organized networks. This suggests that information about each mobile sink’s location be continuously propagated through the sensor field to keep all sensor nodes updated with the direction for forwarding future data reports. Unfortunately frequent location updates from multiple sinks can lead to both excessive drain of sensors’ limited battery power supply and increased collisions in wireless transmissions. Sink mobility brings new challenges to large-scale sensor networking [<xref ref-type="bibr" rid="b11-sensors-10-02003">11</xref>]. In our opinion, it is more practical to improve the network’s topology after the sink nodes are deployed by using a routing protocol and power control scheme.</p>
<p>In this paper, we combine the multiple sink and cluster based routing technology. The MSCWSNs-PC is targeted at multiple sink clustering-based WSNs and is the first power allocation protocol developed for these networks, to our knowledge. The multiple sink cluster WSNs (MSCWSNs) can be simply divided into sink as cluster head and non-sink as cluster head mode. A topology illustration of multiple sink clusters is given in <xref ref-type="fig" rid="f1-sensors-10-02003">Figure 1</xref>. Both types of sink nodes need to negotiate the broadcast radius in order to obtain satisfactory network connectivity and decrease the mutual communication interference.</p>
<p>This paper features the following major contributions:
<list list-type="bullet">
<list-item>
<p>It provides a distributed transmission power control algorithm for sink nodes in multiple sink WSNs.</p></list-item>
<list-item>
<p>By using our algorithm, less sensor nodes needs to decide which sink should act as center of local subnetworks.</p></list-item>
<list-item>
<p>The algorithm provides a high network connectivity.</p></list-item>
<list-item>
<p>It is targeted at multiple sink cluster-based wireless sensor networks and is the first protocol developed for these networks, to our knowledge.</p></list-item></list></p>
<p>In order to design good distributed power allocation protocols for multiple sink wireless microsensor networks, it is important to understand the parameters that are relevant to the sensor applications. While there are many ways in which the properties of a sensor network protocol can be evaluated, we use the following metrics:</p>
<sec>
<label>A.</label>
<title>Reachability</title>
<p>In multiple sink-centric cluster WSNs, each sensor node will choose at least one sink as its management sink (also denoted as centric sink). It means that the total coverage area by all sinks should be big enough to cover all sub nodes. In this paper, the reachability is defined as the ratio of the number of nodes reached by any one sink to the total nodes deployed in network. Reachability is similar to connectivity.</p></sec>
<sec>
<label>B.</label>
<title>Power efficiency</title>
<p>The sensor networks should function for as long as possible since it may be inconvenient or impossible to recharge node batteries. Therefore, all aspects of the node, from the hardware to the protocols, must be designed to be extremely energy efficient. In this paper, power efficiency is defined as the mean number of “one-hop” sink (sink to sensor node is one-hop) as each sensor node.</p></sec>
<sec>
<label>C.</label>
<title>Clustering interference</title>
<p>After the implementation of power allocation, each sink obtains an appropriate transmission power for broadcast operations. Sensor nodes may receive the broadcast packets from more than one “one-hop” sink. These nodes need to decide which sink should to be chosen as centric sink. At this time, clustering interference is taking place.</p>
<p>In this paper, we analyze an efficient multiple sink transmission power control scheme for a sink-centric cluster routing protocol in multiple sink wireless sensor networks. All sinks in the network know their location, and at the same time other sink nodes share their location information. Then every sink decides its communication radius by an absolutely distributed algorithm that uses the location information of the other sink nodes.</p>
<p>The rest of the paper is organized as follows. A summary of related work is presented in Section 2. Section 3 describes the system model of the MSCWSNs-PC protocol. Section 4 describes the design of the MSCWSNs-PC protocol in detail. The performance of MSCWSNs-PC is evaluated in Section 5 and compared with its improved versions using simulation. The paper concludes in Section 6 and some possible improvements to MSCWSNs-PC are pointed out.</p></sec></sec>
<sec>
<label>2.</label>
<title>Related Work</title>
<p>Several researchers have proposed routing protocols for utilizing multiple sink nodes [<xref ref-type="bibr" rid="b12-sensors-10-02003">12</xref>–<xref ref-type="bibr" rid="b16-sensors-10-02003">16</xref>], but only [<xref ref-type="bibr" rid="b15-sensors-10-02003">15</xref>,<xref ref-type="bibr" rid="b16-sensors-10-02003">16</xref>] proposed a geographic routing. In [<xref ref-type="bibr" rid="b15-sensors-10-02003">15</xref>] a grid scenario was assumed, ignoring the routing holes problem, and no details about the real implementation is given. The so-called Greedy Forwarding scheme based routing protocol for multiple sink WSNs is a novel research issue [<xref ref-type="bibr" rid="b16-sensors-10-02003">16</xref>].</p>
<p>The advantages of multiple sink wireless sensor networks compared with single sink sensor networks are as follows:
<list list-type="bullet">
<list-item>
<p>They are more reliable due to the fact that invalidation of a sink node will drag down the whole network in single sink WSNs.</p></list-item>
<list-item>
<p>Usually there exists a serious node energy bottleneck (around sinks) if a single sink collects reports from too many sensors.</p></list-item>
<list-item>
<p>They relieve the unbalanced energy consumption among sensor networks.</p></list-item>
<list-item>
<p>They avoid mobile sink schemes that result in large energy consumption and serious communication interference [<xref ref-type="bibr" rid="b11-sensors-10-02003">11</xref>].</p></list-item>
<list-item>
<p>Multiple sinka reduce payoff of data fusion in very large and complex WSN applications [<xref ref-type="bibr" rid="b17-sensors-10-02003">17</xref>].</p></list-item>
<list-item>
<p>They offer more versatile functional applications and communication cooperation. In some applications, different users (sinks) may require different environmental variables (temperature, humidity, light intensity, <italic>etc.</italic>) or data formats (image, sound, video, <italic>etc.</italic>). In this time, all nodes need to cooperate with each other during the communication process.</p></list-item>
<list-item>
<p>In some cluster routing protocols, such as LEACH [<xref ref-type="bibr" rid="b5-sensors-10-02003">5</xref>] or PEGASIS [<xref ref-type="bibr" rid="b7-sensors-10-02003">7</xref>], each cluster head node needs to communicate with a sink node directly. If only one sink node was deployed, cluster head nodes must work with high transmission power, which not only consumes too much node energy, but also the interference problem of the long distance transmission cannot be ignored.</p></list-item>
<list-item>
<p>In some location-based routing protocols [<xref ref-type="bibr" rid="b18-sensors-10-02003">18</xref>] (such as GPSR [<xref ref-type="bibr" rid="b19-sensors-10-02003">19</xref>]), the routing holes problem is unavoidable, but it is is expected to be solved effectively in a multiple sink network structure because the sink deployment dispersion will help a sender find a next hop node.</p></list-item>
<list-item>
<p>They provide more real-time data transport of networks, which has a significant effect in multimedia WSNs [<xref ref-type="bibr" rid="b20-sensors-10-02003">20</xref>].</p></list-item></list></p>
<p>At present, the multiple sink sensor networks have been tried in a few applications, such as polar environmental monitoring [<xref ref-type="bibr" rid="b21-sensors-10-02003">21</xref>], underwater WSNs [<xref ref-type="bibr" rid="b22-sensors-10-02003">22</xref>], <italic>et</italic>c. These applications provide valuable experience for further research on multiple sink networks systems.</p>
<p>In [<xref ref-type="bibr" rid="b23-sensors-10-02003">23</xref>], the problem of routing packets in dynamically changing networks is considered, concentrating on two different modes: anycasting and multicasting. In anycasting, a packet has a set of destinations but only has to reach one of them, whereas in multicasting, a packet has a set of destinations and has to reach all of them.</p>
<p>Due to the more balanced energy consumption of clustering-based routing protocols, they are usually employed for large scale WSNs. The LEACH protocol presented in [<xref ref-type="bibr" rid="b24-sensors-10-02003">24</xref>] is an elegant solution where clusters are formed to fuse data before transmitting it to the base station. By randomizing the cluster heads chosen to transmit to the base station, LEACH achieves an 8-fold improvement compared to direct transmissions, as measured in terms of when nodes die. But in LEACH all cluster head nodes communicate directly with the base station, which exhausts the nodes far away from base station soon. TEEN considers that cluster heads at increasing levels in the hierarchy need to transmit data over correspondingly larger distances [<xref ref-type="bibr" rid="b6-sensors-10-02003">6</xref>]. Combined with the extra computations they perform, they end up consuming energy faster than the other nodes. In order to evenly distribute this consumption, all the nodes take turns in becoming the cluster head for a time interval <italic>T</italic>, called the cluster period. TEEN is well suited for time critical applications and is also quite efficient in terms of energy consumption and response time. PEGASIS (Power-Efficient GAthering in Sensor Information Systems) [<xref ref-type="bibr" rid="b7-sensors-10-02003">7</xref>] is a near optimal chain-based protocol that is an improvement over LEACH. In PEGASIS, each node communicates only with a close neighbor and takes turns transmitting to the base station, thus reducing the amount of energy spent per round.</p></sec>
<sec>
<label>3.</label>
<title>System Model</title>
<sec>
<label>3.1.</label>
<title>Transmission Power Control Algorithms</title>
<p>We assume the WSNs consist of many common sensor nodes and some sink nodes. Each sink node is aware of its own location by using GPS or some other localization mechanism. A sink node broadcasts power control assistant messages (PCAM) to the other sink nodes by one-hop communication. PCAM contains the sender’s location information. We also make some assumptions about the sensor nodes and the underlying network model. For the sink nodes, we assume that all sink nodes can transmit with enough power to reach each other, and that the sink nodes can use a power control scheme to vary the amount of transmission power. Otherwise, each node has the computational power to support different MAC protocols and perform signal processing functions.</p>
<p>In order to obtain satisfactory network connectivity, sink nodes need to negotiate the broadcast radius. A sink node working outside its radio range employs an energy dissipation algorithm to adjust the actual broadcast range.</p>
<p>In [<xref ref-type="bibr" rid="b9-sensors-10-02003">9</xref>], the total energy dissipation of node <italic>i</italic> described as:
<disp-formula id="FD1">
<label>(1)</label>
<mml:math display="block">
<mml:mrow>
<mml:msubsup>
<mml:mi>e</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>T</mml:mi></mml:msubsup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>α</mml:mi>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mi>n</mml:mi></mml:msup>
<mml:mo>+</mml:mo>
<mml:mi>β</mml:mi></mml:mrow></mml:math></disp-formula>where <italic>α,β</italic> ∈ ℛ are real numbers. <italic>β</italic> is the overhead energy, representing the sum of the receiver, sensing and computation energy which is a constant value with varying distance <italic>d</italic>.</p>
<p>A more acknowledged model is proposed in [<xref ref-type="bibr" rid="b25-sensors-10-02003">25</xref>]. If node <italic>X</italic> send a packet with power <italic>P<sub>t</sub></italic>, which is heard by node <italic>Y</italic> with power <italic>P<sub>r</sub></italic>, the following equation holds:
<disp-formula id="FD2">
<label>(2)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>X</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>Y</mml:mi></mml:msub>
<mml:mo> </mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mi>λ</mml:mi>
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:mi>π</mml:mi>
<mml:mi>d</mml:mi></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>n</mml:mi></mml:msup>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi></mml:msub></mml:mrow></mml:math></disp-formula>where <italic>λ</italic> is the carrier wavelength, <italic>d</italic> is the distance between the transmitter and the receiver, <italic>n</italic> is the path loss coefficient, and <italic>gt</italic> and gr are the antenna gains at the transmitter and receiver. The typical value of n is 2. Usually, <italic>λ</italic> = <italic>LightVelocity/Frequency</italic> = 0.1 m or so in 2.4 GHz WSNs applications.</p></sec>
<sec sec-type="methods">
<label>3.2.</label>
<title>Coverage Rate Analysis</title>
<p><bold>Theorem 1.</bold> Consider a set of two sinks in an a×b rectangle work area <italic>Z</italic>, and a diagonal line <italic>l</italic>. If the two sinks lie in on different sides of <italic>l</italic>, the intersections of the two radio range circles must be outside the rectangle work area, at the same time the corresponding diagonal vertex (in same position direction) must be inside the radio range of the sink, or else only the sink nearer to the centre of rectangle needs to work, the radio radius chooses the distance between the farthest vertex and itself.</p>
<p><bold>Proof.</bold> Firstly, assume two sinks were deployed at different sides of the diagonal line [see <xref ref-type="fig" rid="f2-sensors-10-02003">Figure 2(a)</xref>], a straight line through the two intersection points E and F, and | <italic>S<sub>2</sub></italic> <italic>D</italic> |&gt; | <italic>S<sub>2</sub></italic> <italic>C</italic> |, | <italic>S<sub>1</sub></italic> <italic>B</italic> |&gt; | <italic>S<sub>1</sub></italic> <italic>A</italic> |, so the intersection of AEFB and EDCF always contains the rectangle work area ABCD. If the corresponding diagonal vertex (in same position direction, such as <italic>S<sub>2</sub></italic> and <italic>D</italic>) is inside the radio range of the sink, the radio range of all sinks contains the whole work area. When two sinks are on the same side, the sink nearer to the centre of rectangle uses the distance between the farthest vertex and itself as radio radius, the other three vertices must be in the radio range. It means that the sink has enough transmission power to cover the whole work area. The other sink does not need to work at this time.</p>
<p>Consider a WSN with two sink nodes, as shown in <xref ref-type="fig" rid="f2-sensors-10-02003">Figure 2</xref>. According to the Theorem 1, the radio radius <italic>R<sub>S<sub>i</sub></sub></italic> in <xref ref-type="fig" rid="f2-sensors-10-02003">Figure 2(a)</xref>, <italic>i</italic> ∈ {1,2}, is given by:
<disp-formula id="FD3">
<label>(3)</label>
<mml:math display="block">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula>where (<italic>x</italic>,<italic>y</italic>) is a point in the radio range circle. In order to not only minimize the total transmission power, but also ensure the coverage rate of network, we also define <italic>f</italic> :
<disp-formula id="FD4">
<label>(4)</label>
<mml:math display="block">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mi>f</mml:mi>
<mml:mo>=</mml:mo>
<mml:mtext>min</mml:mtext>
<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:mn>2</mml:mn></mml:munderover>
<mml:mrow>
<mml:msubsup>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>i</mml:mi></mml:msub></mml:mrow>
<mml:mi>n</mml:mi></mml:msubsup></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mtext>s.t.</mml:mtext></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>A</mml:mi></mml:msub></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>A</mml:mi></mml:msub></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>≤</mml:mo>
<mml:msubsup>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>C</mml:mi></mml:msub></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>C</mml:mi></mml:msub></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>≤</mml:mo>
<mml:msubsup>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>E</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>F</mml:mi></mml:msub>
<mml:mo>&lt;</mml:mo>
<mml:mi>a</mml:mi></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>E</mml:mi></mml:msub>
<mml:mo>≥</mml:mo>
<mml:mi>b</mml:mi>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>F</mml:mi></mml:msub>
<mml:mo>≤</mml:mo>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where <italic>n</italic> is the path loss coefficient in <xref ref-type="disp-formula" rid="FD2">equation (2)</xref>. <italic>R<sub>S<sub>i</sub></sub></italic> in <xref ref-type="fig" rid="f2-sensors-10-02003">Figure 2(b)</xref>, <italic>i</italic> ∈ {1,2}, is given by:
<disp-formula id="FD5">
<label>(5)</label>
<mml:math display="block">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>C</mml:mi></mml:msub></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>C</mml:mi></mml:msub></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>≤</mml:mo>
<mml:msubsup>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:math></disp-formula></p>
<p>In this paper, we only analyse the conditions of two sinks, more sinks, and so forth.</p></sec></sec>
<sec>
<label>4.</label>
<title>Power Control For Multiple Sink Cluster WSNs (MSCWSNs-PC)</title>
<p>In this section, we briefly describe the key features of the MSCWSNs-PC algorithms, and some modification algorithms. The protocol discussed includes:</p>
<sec>
<label>4.1.</label>
<title>Neighborhood Sink Discovery</title>
<p>In MSCWSNs-PC, only one packet frame format need to be defined, which is denoted as the <italic>HELLO</italic> frame. As shown in <xref ref-type="fig" rid="f3-sensors-10-02003">Figure 3</xref> the <italic>HELLO</italic> packet carries the <italic>ID</italic> and location information of the sender. After the network initialization, each sink first pre-detects its coarse position in the work area, such as topside, underside, leftside or rightside. Let all sink nodes belong to the corresponding set of <italic>Topside, Underside, Leftside</italic> or <italic>Rightside</italic>. Each sink knows its neighborhood sink by the process of sink discovery communication between them.</p></sec>
<sec>
<label>4.2.</label>
<title>Distributed Power Allocation</title>
<p>Assume deployment of <italic>M</italic> sink nodes in an <italic>X</italic> × <italic>Y</italic> region of space, denoted as <italic>S<sub>i</sub></italic>, and the location be set as (<italic>x<sub>i</sub></italic>,<italic>y<sub>i</sub></italic>), <italic>i</italic> ∈ <italic>M</italic>. Let <italic>Z</italic>(<italic>x</italic>,<italic>y</italic>) be the rectangle area, where <italic>x</italic> is the length and <italic>y</italic> is the width. C<italic>S</italic>(<italic>x<sub>i</sub></italic>,<italic>y<sub>i</sub></italic>,<italic>r<sub>i</sub></italic>) is the circle area, where the point (<italic>x<sub>i</sub></italic>, <italic>y<sub>i</sub></italic>) acts as the centre and <italic>r<sub>i</sub></italic> is the radio radius. To ensure the network’s coverage rate up to 100%, the value <italic>r<sub>i</sub></italic>, <italic>i</italic>∈ <italic>M</italic>, must satisfy the following condition:
<disp-formula id="FD6">
<label>(6)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>Z</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>⊂</mml:mo>
<mml:mi mathvariant="italic">CS</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∪</mml:mo>
<mml:mi mathvariant="italic">CS</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∪</mml:mo>
<mml:mo>...</mml:mo>
<mml:mo>∪</mml:mo>
<mml:mo> </mml:mo>
<mml:mi mathvariant="italic">CS</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>M</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>M</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>M</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>In [<xref ref-type="bibr" rid="b26-sensors-10-02003">26</xref>] the network is represented as the graph <italic>G</italic> = (<italic>N,E</italic>), where <italic>N</italic> is a set of <italic>m</italic>+<italic>n</italic> nodes (containing <italic>m</italic> sinks and <italic>n</italic> sensor nodes), and <italic>S</italic>⊂<italic>N</italic> is the set of sink nodes (with |<italic>S</italic>| = <italic>m</italic>). The set of weighted edges is denoted as <italic>E</italic>, and we note <italic>di;j</italic> as the distance along the shortest path between <italic>i</italic> and <italic>j</italic>. With each sink <italic>k</italic> we associate the <italic>Voronoi cluster V<sub>k</sub></italic> containing the nodes whose closest sink is <italic>k</italic>. More formally, a <italic>Voronoi cluster V<sub>k</sub></italic> is defined as:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">{</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>:</mml:mo>
<mml:munder>
<mml:mrow>
<mml:mtext>min</mml:mtext></mml:mrow>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>S</mml:mi></mml:mrow></mml:munder>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>In the <italic>Voronoi</italic> algorithm, each node must be aware of the location of all sink and itself.</p>
<p>In MSCWSNs, firstly each sink pre-detects its coarse position in the work area and the corresponding set of coordinates is (<italic>X<sub>Topside</sub></italic>, <italic>Y<sub>Topside</sub></italic>), (<italic>X<sub>Underside</sub></italic>, <italic>Y<sub>Underside</sub></italic>), (<italic>X<sub>Leftside</sub></italic>, <italic>Y<sub>Leftside</sub></italic>), (<italic>X<sub>Rightside</sub></italic>, <italic>Y<sub>Rightside</sub></italic>). The sink number of each group is <italic>nunsink<sub>Topside</sub></italic><italic>, nunsink<sub>Underside</sub></italic>, <italic>nunsink<sub>Leftside</sub></italic><italic>,</italic> and <italic>nunsink<sub>Rightside</sub></italic>. Secondly, we make four sequences in a given order, respectively, according to the value of <italic>X<sub>Topside</sub></italic>, <italic>X<sub>Underside</sub></italic>, <italic>Y<sub>Leftside</sub></italic>, and <italic>Y<sub>Rightside</sub></italic>. Then the sink with the lowest order in each group uses the distance between the corresponding vertices of the rectangle and itself as its radius, then each these sink has three cross points with the boundary of the rectangle, (e.g., node A in <xref ref-type="fig" rid="f4-sensors-10-02003">Figure 4</xref>). The other sink at least have two cross points with the corresponding nearest border by employing an enough transmission power, (e.g., node B in <xref ref-type="fig" rid="f4-sensors-10-02003">Figure 4</xref>). Set a current sink node <italic>w</italic>(<italic>x<sub>w</sub></italic>,<italic>y<sub>w</sub></italic>) wants to pre-detect its coarse position in work area.</p>
<table-wrap id="t1-sensors-10-02003" position="anchor">
<label>Algorithm 1:</label>
<caption>
<p>sink <italic>w</italic> pre-decide its coarse position</p></caption>
<table frame="hsides" rules="groups">
<tbody>
<tr>
<td align="left" valign="top">01:</td>
<td align="left" valign="top"><bold>for all</bold> <italic>x<sub>w</sub>, w</italic> ∈ <italic>M</italic></td></tr>
<tr>
<td align="left" valign="top">02:</td>
<td align="left" valign="top">  <bold>if</bold> <italic>x<sub>w</sub></italic>&gt;<italic>Y/</italic>2 <bold>then</bold></td></tr>
<tr>
<td align="left" valign="top">03:</td>
<td align="left" valign="top">   <italic>w</italic> ∈ <italic>Topside</italic></td></tr>
<tr>
<td align="left" valign="top">04:</td>
<td align="left" valign="top">   <italic>nunsink<sub>Topside</sub></italic> =<italic>nunsink<sub>Topside</sub>+</italic>1</td></tr>
<tr>
<td align="left" valign="top">05:</td>
<td align="left" valign="top">   <italic>X<sub>Topside</sub></italic>(<italic>nunsink<sub>Topside</sub></italic>)= <italic>x<sub>w</sub></italic></td></tr>
<tr>
<td align="left" valign="top">06:</td>
<td align="left" valign="top">   <italic>Y<sub>Topside</sub></italic>(<italic>nunsink<sub>Topsiede</sub></italic>)= <italic>y<sub>w</sub></italic></td></tr>
<tr>
<td align="left" valign="top">07:</td>
<td align="left" valign="top">  <bold>else</bold></td></tr>
<tr>
<td align="left" valign="top">08:</td>
<td align="left" valign="top">   <italic>w</italic> ∈ <italic>Underside</italic></td></tr>
<tr>
<td align="left" valign="top">09:</td>
<td align="left" valign="top">   <italic>nunsink<sub>Underside</sub></italic> =<italic>nunsink<sub>Underside</sub>+</italic>1</td></tr>
<tr>
<td align="left" valign="top">10:</td>
<td align="left" valign="top">   <italic>X<sub>Underside</sub></italic>(<italic>nunsink<sub>Underside</sub></italic>)= <italic>x<sub>w</sub></italic></td></tr>
<tr>
<td align="left" valign="top">11:</td>
<td align="left" valign="top">   <italic>Y<sub>Underside</sub></italic>(<italic>nunsink<sub>Underside</sub></italic>)= <italic>y<sub>w</sub></italic></td></tr>
<tr>
<td align="left" valign="top">12:</td>
<td align="left" valign="top">  <bold>endif</bold></td></tr>
<tr>
<td align="left" valign="top">13:</td>
<td align="left" valign="top"><bold>//</bold></td></tr>
<tr>
<td align="left" valign="top">14:</td>
<td align="left" valign="top">   <bold>if</bold> <italic>x<sub>w</sub></italic>&lt;<italic>X/</italic>2 <bold>then</bold></td></tr>
<tr>
<td align="left" valign="top">15:</td>
<td align="left" valign="top">   <italic>w</italic> ∈ <italic>Leftside</italic></td></tr>
<tr>
<td align="left" valign="top">16:</td>
<td align="left" valign="top">   <italic>nunsink<sub>Leftside</sub></italic> = <italic>nunsink<sub>Leftside</sub></italic> <italic>+</italic>1</td></tr>
<tr>
<td align="left" valign="top">17:</td>
<td align="left" valign="top">   <italic>X<sub>Leftside</sub></italic>(<italic>nunsink<sub>Leftside</sub></italic>)= <italic>x<sub>w</sub></italic></td></tr>
<tr>
<td align="left" valign="top">18:</td>
<td align="left" valign="top">   <italic>Y<sub>Leftside</sub></italic>(<italic>nunsink<sub>Leftside</sub></italic>)= <italic>y<sub>w</sub></italic></td></tr>
<tr>
<td align="left" valign="top">19:</td>
<td align="left" valign="top">  <bold>else</bold></td></tr>
<tr>
<td align="left" valign="top">20:</td>
<td align="left" valign="top">   <italic>w</italic> ∈ <italic>Rightside</italic></td></tr>
<tr>
<td align="left" valign="top">21:</td>
<td align="left" valign="top">   <italic>Nunsink<sub>Rightside</sub></italic> = <italic>Nunsink<sub>Rightside</sub></italic> <italic>+</italic>1</td></tr>
<tr>
<td align="left" valign="top">22:</td>
<td align="left" valign="top">   <italic>X<sub>Rightside</sub></italic>(<italic>Nunsink<sub>Rightside</sub></italic>)= <italic>x<sub>w</sub></italic></td></tr>
<tr>
<td align="left" valign="top">23:</td>
<td align="left" valign="top">   <italic>Y<sub>Rightside</sub></italic>(<italic>Nunsink<sub>Rightside</sub></italic>)= <italic>y<sub>w</sub></italic></td></tr>
<tr>
<td align="left" valign="top">24:</td>
<td align="left" valign="top">  <bold>endif</bold></td></tr>
<tr>
<td align="left" valign="top">25:</td>
<td align="left" valign="top"><bold>endfor</bold></td></tr></tbody></table></table-wrap>
<p>In our opinion, if the intersection of all circle cut off from the edges contained total rectangle borders, the coverage rate of the rectangle work area would be guaranteed. In this time, the <italic>r<sub>i</sub></italic>, <italic>i</italic> ∈ <italic>M</italic>, must satisfy as the following conditions:
<disp-formula id="FD8">
<label>(8)</label>
<mml:math display="block">
<mml:mrow>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mi>X</mml:mi>
<mml:mo>⊂</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∪</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:mo>∪</mml:mo>
<mml:mo>...</mml:mo>
<mml:mo>∪</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>t</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi mathvariant="italic">Topside</mml:mi></mml:msub></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi>X</mml:mi>
<mml:mo>⊂</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∪</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:mo>∪</mml:mo>
<mml:mo>...</mml:mo>
<mml:mo>∪</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>u</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>u</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>u</mml:mi></mml:msub>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi mathvariant="italic">Underside</mml:mi></mml:msub></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi>Y</mml:mi>
<mml:mo>⊂</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∪</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:mo>∪</mml:mo>
<mml:mo>...</mml:mo>
<mml:mo>∪</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>l</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>l</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>l</mml:mi></mml:msub>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi mathvariant="italic">Leftside</mml:mi></mml:msub></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi>Y</mml:mi>
<mml:mo>⊂</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>∪</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:mo>∪</mml:mo>
<mml:mo>...</mml:mo>
<mml:mo>∪</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>r</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi mathvariant="italic">Rightside</mml:mi></mml:msub>
<mml:mi> </mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p><xref ref-type="fig" rid="f5-sensors-10-02003">Figure 5</xref> shows three conditions of radio radius choice, which are too large, appropriate, and too small. It is sure that the appropriate radius is the most desirable. In this article, we attempt to provide a distributed power allocation algorithm by which appropriate radius will be choosen for all sink nodes.</p></sec>
<sec>
<label>4.3.</label>
<title>Sink Ordering Orientation</title>
<p>After all sink nodes knowing their groups as <italic>Topside</italic>, <italic>Underside</italic>, <italic>Leftside</italic>, and <italic>Rightside</italic>, four sequences in given order are obtained respectively according to the value of <italic>X<sub>Topside</sub></italic>, <italic>X<sub>Underside</sub></italic>, <italic>Y<sub>Leftside</sub></italic>, and <italic>Y<sub>Rightside</sub></italic>. In this paper, two modes of sink ordering orientation are proposed. The axis orientation (See <xref ref-type="fig" rid="f6-sensors-10-02003">Figure 6 (a)</xref>) and the Anticlockwise mode (or clockwise mode, See <xref ref-type="fig" rid="f6-sensors-10-02003">Figure 6 (b)</xref>), they are different in the axis orientation of topside and rightside.</p>
<p>Assume the four vertexs of the objective area are <italic>q<sub>1</sub></italic>(0,0), <italic>q<sub>2</sub></italic> (<italic>X</italic>,0), <italic>q<sub>3</sub></italic>(<italic>X,Y</italic>), <italic>q<sub>4</sub></italic>(0,<italic>Y</italic>). Before implementation of the MSCWSNs-PC, coordinate axis modification must to be done due to each sink to reckon its radio radius according to the local coordinate information.</p>
<p>Coordinates axis modification in axis orientation mode, is
<disp-formula id="FD9">
<label>(9)</label>
<mml:math display="block">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Topside</mml:mi></mml:msub></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">underside</mml:mi></mml:msub></mml:mrow></mml:mrow></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Leftside</mml:mi></mml:msub></mml:mrow></mml:mrow></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Rightside</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula></p>
<p>While the coordinates axis modification in anticlockwise (or clockwise) orientation mode is
<disp-formula id="FD10">
<label>(10)</label>
<mml:math display="block">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Topside</mml:mi></mml:msub></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">underside</mml:mi></mml:msub></mml:mrow></mml:mrow></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Leftside</mml:mi></mml:msub></mml:mrow></mml:mrow></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mo> </mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Rightside</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula></p></sec>
<sec>
<label>4.4.</label>
<title>Most significant bit sink radius correction (MSBSRC)</title>
<p>In original MSCWSNs-PC, sink calculates its radio radius always according to the radio range of previous sink. It often induces a border communication void problem. As shown in <xref ref-type="fig" rid="f7-sensors-10-02003">Figure 7</xref>, the border |<italic>mn</italic>| is defined as border communication void. For this reason, we provide most significant bit sink radius correction (MSBSRC) scheme. After each sink working out its radio radius using original MSCWSNs-PC, then each sink has highest order in each group decides its radius by comparing <italic>R<sub>ij</sub></italic> and <italic>Distance</italic>(<italic>S<sub>i,j</sub></italic>, <italic>vert<sub>i</sub></italic>), <italic>i</italic> ∈ <italic>M</italic>, where <italic>Distance</italic>(<italic>m</italic>,<italic>n</italic>) denotes the distance between <italic>m</italic> and <italic>n</italic>, and <italic>vert<sub>i</sub></italic> is the vertices set of rectangle work area<italic>, i</italic> ∈ {<italic>Topside, Underside, Leftside, Rightside</italic>} and <italic>j</italic> ∈ { <italic>numsink<sub>Topside</sub>, numsink<sub>Underside</sub>, numsink<sub>Leftside</sub>, numsink<sub>Rightside</sub></italic>}. Set <italic>w</italic>(<italic>x<sub>w</sub></italic>,<italic>y<sub>w</sub></italic>) is a sink node has highest order wants to decide its radius.</p>
<table-wrap id="t2-sensors-10-02003" position="anchor">
<label>Algorithm 2:</label>
<caption>
<p><italic>w</italic> decides its radius by comparing <italic>R<sub>i,j</sub></italic> and <italic>d</italic>(<italic>S<sub>i,j</sub></italic>, <italic>vert<sub>i</sub></italic>)</p></caption>
<table frame="hsides" rules="groups">
<tbody>
<tr>
<td align="left" valign="top">01:</td>
<td align="left" valign="top"><bold>for all</bold> <italic>w</italic> ,</td></tr>
<tr>
<td align="left" valign="top">02:</td>
<td align="left" valign="top"><bold>//</bold> <italic>w</italic>∈ <bold>{ max{</bold>(<italic>X<sub>Topside</sub></italic>,<italic>Y<sub>Topside</sub></italic>)<bold>}</bold>, <bold>max{</bold>(<italic>X<sub>Underside</sub></italic>,<italic>Y<sub>Underside</sub></italic>)<bold>}</bold>,</td></tr>
<tr>
<td align="left" valign="top">03:</td>
<td align="left" valign="top"><bold>//</bold>     <bold>max{</bold>(<italic>X<sub>Leftside</sub></italic>,<italic>Y<sub>Leftside</sub></italic>)<bold>}</bold>, <bold>max{</bold>(<italic>X<sub>Rightside</sub></italic>,<italic>Y<sub>Rightside</sub></italic>)<bold>} }</bold></td></tr>
<tr>
<td align="left" valign="top">04:</td>
<td align="left" valign="top">  <bold>if</bold> <italic>R<sub>i,j</sub></italic> &gt;= <italic>distance</italic> (<italic>S<sub>i</sub></italic>, <italic>vert<sub>i</sub></italic>) <bold>then</bold></td></tr>
<tr>
<td align="left" valign="top">05:</td>
<td align="left" valign="top"><bold>//</bold> <italic>i</italic> ∈ {<italic>Topside</italic>, <italic>Underside</italic>, <italic>Leftside</italic>, <italic>Rightside</italic>}</td></tr>
<tr>
<td align="left" valign="top">06:</td>
<td align="left" valign="top"><bold>//</bold> <italic>j</italic> ∈ {<italic>numsink<sub>Topside</sub>, numsink<sub>Underside</sub></italic>, <italic>numsink<sub>Leftside</sub>, numsink<sub>Rightside</sub></italic>}</td></tr>
<tr>
<td align="left" valign="top">07:</td>
<td align="left" valign="top">   <italic>R<sub>w</sub></italic>= <italic>R<sub>i,j</sub></italic></td></tr>
<tr>
<td align="left" valign="top">08:</td>
<td align="left" valign="top">  <bold>else</bold></td></tr>
<tr>
<td align="left" valign="top">09:</td>
<td align="left" valign="top">   <italic>R<sub>w</sub></italic>= <italic>distance</italic> (<italic>S<sub>i</sub></italic>, <italic>vert<sub>i</sub></italic>)</td></tr>
<tr>
<td align="left" valign="top">10:</td>
<td align="left" valign="top">  <bold>endif</bold></td></tr>
<tr>
<td align="left" valign="top">11:</td>
<td align="left" valign="top"><bold>endfor</bold></td></tr></tbody></table></table-wrap>
<p><italic>Distance</italic>(<italic>m</italic>,<italic>n</italic>) computes the euclidean distance between nodes <italic>m</italic> and <italic>n</italic> in two dimensions, 
<inline-formula>
<mml:math>
<mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>n</mml:mi></mml:msub></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>n</mml:mi></mml:msub></mml:mrow>
<mml:mo>)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow></mml:math></inline-formula>.</p></sec>
<sec>
<label>4.5.</label>
<title>Border Constraint Problem (BCP)</title>
<p>Although the most significant bit sink radius correction (MSBSRC) scheme is provided, when only a few sink nodes were deployed, the sink border group is absent [see <xref ref-type="fig" rid="f8-sensors-10-02003">Figure 8(a)</xref>] which would result in a communication void. In our opinion, if one or more of the sink groups in <italic>Topside</italic>, <italic>Underside</italic>, <italic>Leftside</italic>, or <italic>Rightside</italic> was empty, this situation will easily produce a sink communication void problem. In addition, the power allocation algorithm is only focused on the borders of the objective area, and the center communication void problem also needs to be considered [see <xref ref-type="fig" rid="f8-sensors-10-02003">Figure 8(b)</xref>]. We denote all of these conditions collectively as the border constraint problem.</p>
<p>For the sink group absence problem, if a sink found that any sink border group was empty, it would chose the distance between the farthest vertex of the border and itself as current radius. In order to solve the center communication void problem, the sink, nearest to the center point of the rectangle in each border group checks if the point has been covered by themselves. If not, they adjust their radio radius equal to the distance between the center point and itself. After these measures, the border constraint problem will be improved greatly.</p>
<p>Let the vertices of the rectangle work area <italic>vert<sub>i</sub></italic>, <italic>i</italic> ∈ {<italic>I,II,III,IV</italic>}, <italic>I,II,III,IV</italic> denote the quadrants.</p>
<table-wrap id="t3-sensors-10-02003" position="anchor">
<label>Algorithm 3:</label>
<caption>
<p>sink <italic>w</italic> decides its radius considering border constraint problem (Anticlockwise orientation mode)</p></caption>
<table frame="hsides" rules="groups">
<tbody>
<tr>
<td align="left" valign="top">01:</td>
<td align="left" valign="top"><italic>//</italic> <bold>(a) sink border group absence</bold></td></tr>
<tr>
<td align="left" valign="top">02:</td>
<td align="left" valign="top"><bold>if</bold> <italic>i</italic><bold>==</bold>∅ <bold>then</bold></td></tr>
<tr>
<td align="left" valign="top">03:</td>
<td align="left" valign="top"> <bold>for all</bold> <italic>w</italic>, <italic>w</italic> ∈ <italic>S<sub>i</sub></italic></td></tr>
<tr>
<td align="left" valign="top">04:</td>
<td align="left" valign="top"> <bold>//</bold> <italic>i</italic> ∈ {<italic>Topside</italic>, <italic>Underside</italic>, <italic>Leftside</italic>, <italic>Rightside</italic>}</td></tr>
<tr>
<td align="left" valign="top">05:</td>
<td align="left" valign="top">  <bold>find out the sink <italic>j</italic> which nearest to the corresponding vertex <italic>k</italic> then</bold></td></tr>
<tr>
<td align="left" valign="top">06:</td>
<td align="left" valign="top">     <bold>if</bold>   <italic>r<sub>j</sub></italic>&lt;<italic>distance</italic>(<italic>j</italic>,<italic>k</italic>) <bold>then</bold></td></tr>
<tr>
<td align="left" valign="top">07:</td>
<td align="left" valign="top">       <italic>r<sub>j</sub></italic>=<italic>distance</italic>(<italic>j</italic>,<italic>k</italic>)</td></tr>
<tr>
<td align="left" valign="top">08:</td>
<td align="left" valign="top">     <bold>endif</bold></td></tr>
<tr>
<td align="left" valign="top">09:</td>
<td align="left" valign="top">  <bold>endfor</bold></td></tr>
<tr>
<td align="left" valign="top">10:</td>
<td align="left" valign="top"><bold>endif</bold></td></tr>
<tr>
<td align="left" valign="top">11:</td>
<td align="left" valign="top"><bold>// (b) center void</bold></td></tr>
<tr>
<td align="left" valign="top">12:</td>
<td align="left" valign="top"><bold>for all</bold> <italic>w</italic>, <italic>w</italic> ∈ <italic>S<sub>i</sub></italic></td></tr>
<tr>
<td align="left" valign="top">13:</td>
<td align="left" valign="top">  <bold>find out the sink <italic>m</italic> which nearest to the center vertex <italic>O</italic> then</bold></td></tr>
<tr>
<td align="left" valign="top">14:</td>
<td align="left" valign="top">  <italic>// m</italic> ∈ {<italic>Topside</italic>, <italic>Underside</italic>, <italic>Leftside</italic>, <italic>Rightside</italic>}</td></tr>
<tr>
<td align="left" valign="top">15:</td>
<td align="left" valign="top">   <bold>if</bold>   <italic>r<sub>m</sub></italic>&lt;<italic>distance</italic>(<italic>m</italic>,<italic>O</italic>) <bold>then</bold></td></tr>
<tr>
<td align="left" valign="top">16:</td>
<td align="left" valign="top">      <italic>r<sub>m</sub></italic>=<italic>distance</italic>(<italic>m</italic>,<italic>O</italic>)</td></tr>
<tr>
<td align="left" valign="top">17:</td>
<td align="left" valign="top">   <bold>Endif</bold></td></tr>
<tr>
<td align="left" valign="top">18:</td>
<td align="left" valign="top"><bold>endfor</bold></td></tr></tbody></table></table-wrap></sec>
<sec>
<label>4.6.</label>
<title>MSCWSNs-PC Algorithm Implementation</title>
<p>In this section, we describe the implementation details of MSCWSNs-PC protocol using flowchart. The two main processes are route request and route reply. A flowchart of this distributed power control algorithm is shown in <xref ref-type="fig" rid="f9-sensors-10-02003">Figure 9</xref>.</p>
<p><xref ref-type="fig" rid="f10-sensors-10-02003">Figure 10</xref> gives a simple illustration of a radio radius calculation. For the underside border of the work area, the first sink <italic>A</italic> has the euclidean distance |<italic>Aa<sub>2</sub></italic>| as its transmission range <italic>R<sub>A,1</sub></italic>, then sink <italic>B</italic> can calculate <italic>R<sub>B,2</sub></italic> according to <italic>R<sub>A,1</sub></italic> by:
<disp-formula id="FD11">
<label>(11)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>B</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>B</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>A</mml:mi></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>−</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>A</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>B</mml:mi></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow></mml:math></disp-formula></p>
<p>From what has been discussied above, we may safely draw a conclusion that the <italic>R<sub>i,j</sub></italic>, <italic>i</italic> ∈ <italic>M</italic>, <italic>j</italic> ∈ {<italic>numsink<sub>Topside</sub>, numsink<sub>Underside</sub></italic>, <italic>numsink<sub>Leftside</sub>, numsink<sub>Rightside</sub></italic>}, can be calculated by:
<disp-formula id="FD12">
<label>(12)</label>
<mml:math display="block">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>−</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:msqrt></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Topside</mml:mi></mml:msub>
<mml:mtext> </mml:mtext>
<mml:mi mathvariant="italic">or</mml:mi>
<mml:mtext> </mml:mtext>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Underside</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr columnalign="left">
<mml:mtd columnalign="left">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>j</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mo>−</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>x</mml:mi>
<mml:mi>j</mml:mi>
<mml:mn>2</mml:mn></mml:msubsup></mml:mrow></mml:msqrt></mml:mrow></mml:mtd>
<mml:mtd columnalign="left">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Leftside</mml:mi></mml:msub>
<mml:mtext> </mml:mtext>
<mml:mi mathvariant="italic">or</mml:mi>
<mml:mtext> </mml:mtext>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Rightside</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>Finally, <italic>r<sub>i</sub></italic>, <italic>i</italic> ∈ <italic>M</italic>, be calculated by:
<disp-formula id="FD13">
<label>(13)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mtext>max</mml:mtext>
<mml:mo stretchy="false">{</mml:mo>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">}</mml:mo>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi> </mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mi>M</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo>∈</mml:mo>
<mml:mo stretchy="false">{</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Topside</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">underside</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Leftside</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">numsink</mml:mi>
<mml:mi mathvariant="italic">Rightside</mml:mi></mml:msub>
<mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></disp-formula></p></sec>
<sec>
<label>4.7.</label>
<title>Created Clusters Communication with Sink Nodes</title>
<p>For the sensor nodes, we assume that all nodes can transmit with enough power to reach the sink if needed, that the nodes can use power control to vary the amount of transmit power, and that each node has the computational power to support different MAC protocols and perform signal processing functions. It means that the created clusters allow energy-efficient communication from the sensors to the sinks, all sensor nodes communicate directly to the sink or they use multi-hop communication in non-sinks as cluster head condition.</p></sec>
<sec>
<label>4.8.</label>
<title>Mobility and Transmission Power Maintenance</title>
<p>Sink mobility brings new challenges to routing and data dissemination in large sensor networks. Once any sink has changed its location, all sinks in the border-based sink groups would need to re-build their transmission power. It is important to note that only the sinks in the same group (previously and currently) as the mobile sink would need to take part in transmission power adjustment. It can be seen that our scheme is also suited for mobile networks.</p>
<p>Transmission power maintenance is the process of real-time adjustment of the transmission power for some special conditions, such a a routing failure; at this time alternate routing or a router discovery mechanism need to start for setting up new transmission power allocation for all or some sink nodes. The MSCWSNs-PC protocol since the process of establishment of the radio radius is based on the local connectivity state of adjacent sink nodes, transmission power maintenance can be attributed to the issue of how frequently power control assistant messages (PCAMs) are periodically exchanged.</p></sec></sec>
<sec>
<label>5.</label>
<title>Evaluation</title>
<p>This section provides a detailed quantitative analysis comparing the performance of the MSCWSNs-PC protocol using a variety of deployment sink node numbers. We precisely define three metrics for MSCWSNs-PC performance: connectivity, power efficient and clustering interference. The connectivity illustrates the resilience of the algorithm. Because of the rigidly energy constraint in each sensor node, the power efficient is the most important metric for comparison when evaluating WSN protocol schemes. In this paper, power efficiency is denoted as the total transmission power of a sink. The other obvious metric for comparison when evaluating WSN schemes is the clustering interference due to the very high deployment density of sensor nodes. For all of our experiments, sensor nodes are randomly distributed in a 100 × 100 m<sup>2</sup> rectangular region, the connected sub-network consist of <italic>N</italic> sensor nodes and <italic>M</italic> sink nodes act as the centric nodes.</p>
<sec>
<label>5.1.</label>
<title>Deployment Modes of Sink Nodes</title>
<p>Many research works have focused on how to deploy sink nodes at optimal locations, so that the resulting network could cover a relatively larger distance. In our opinion, it is more practical to improve the network’s topology after the sink nodes are deployed using a routing protocol. Transmission power control for MSCWSNs has a significant effect on the percentage of network coverage. In this section, we will illustrate the coverage rate performance of MSCWSNs-PC by using geometric figures. Without loss of generality, we generally not only consider the fixed deployment of sink nodes, but also randomly deployed sinks.</p>
<p><xref ref-type="fig" rid="f11-sensors-10-02003">Figure 11</xref> shows that whether sinks are fixed or randomly deployed, both conditions can obtain a satisfactory percentage of network coverage. The network is more regular in fixed mode [seen in <xref ref-type="fig" rid="f11-sensors-10-02003">Figure 11(a)</xref>], but more easy to deploy in random mode [as seen in <xref ref-type="fig" rid="f11-sensors-10-02003">Figure 11(b)</xref>].</p></sec>
<sec>
<label>5.2.</label>
<title>Sink Orientation to Calculate Radius and Mean Connectivity</title>
<p>In order to measure the reachability between any sink node and a sensor after execution of our algorithm, we introduce a parameter, <italic>mean connectivity</italic>, which is denoted as <italic>γ</italic>. Mean connectivity is defined as the percentage of the total sensor nodes covered by any sink node in the network. In this section, four schemes described above will be proposed: original MSCWSNs-PC, considering MSBSRC, considering BCP, and considering both of MSBSRC and BCP. For these simulations, two modes of axis ordering orientation are employed simultaneously. In these experiments, generally all results are the statistical average of 1,000 rounds. <xref ref-type="fig" rid="f12-sensors-10-02003">Figure 12</xref> shows the mean connectivity using the original MSCWSNs-PC at variety sink number. With an increasing number of sinks, the mean connectivity of the network becomes nearly 100%. For the modes of axis ordering orientation, anticlockwise mode brings higher mean connectivity compared to axis mode, with a low sink density of (less than six), but with an increase of the number of sinks the gap between the two lines gradually narrows.</p>
<p><xref ref-type="fig" rid="f13-sensors-10-02003">Figure 13</xref> shows the relationship between the number of sinks and the mean connectivity of sensor nodes, when only considering MSBSRC. It can be seen that by employing MSBSRC a great improvement in network coverage is achieved. Unlike in original MSCWSNs-PC, axis mode provides higher mean connectivity compared to anticlockwise mode.</p>
<p><xref ref-type="fig" rid="f14-sensors-10-02003">Figure 14</xref> shows the relationship between the number of sinks and the mean connectivity of sensor nodes, when only considering BCP. Although BCP results in an obvious increase of mean connectivity compared to the original algorithm, the degree of improvement is smaller compared to the condition only considering MSBSRC. It is noteworthy that with the increase of sinks neither mode of axis ordering orientation is always dominant. The demarcation point is when the number of sinks reaches six, before which anticlockwise mode shows its advantages, while the axis mode is better under other conditions.</p>
<p><xref ref-type="fig" rid="f15-sensors-10-02003">Figure 15</xref> shows the mean connectivity result when considering both BCP and MSBSRC schemes. In this condition, the MSCWSNs-PC combines the advantages of the BCP and MSBSRC schemes, and as a result the simulation result is very attractive. Like in <xref ref-type="fig" rid="f12-sensors-10-02003">Figure 12</xref>, axis mode results in higher mean connectivity compared to anticlockwise mode.</p></sec>
<sec>
<label>5.3.</label>
<title>Power Efficiency</title>
<p>The sensor networks should function for as long as possible since it may be inconvenient or impossible to recharge node batteries. Therefore, all aspects of the node, from the hardware to the protocols, must be designed to be extremely energy efficient. In this paper, power efficiency is defined as sensor nodes have different number of “one-hop” sink (sink to node is one-hop) when total them with controlled transmission power over maximum transmission power.</p>
<p><xref ref-type="disp-formula" rid="FD2">Equation (2)</xref> gives the relationship of transmission and reception power for wireless devices. Thus, the transmission power of sink node to the sub nodes in a cluster is given by:
<disp-formula id="FD14">
<label>(14)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo>/</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mi>λ</mml:mi>
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:mi>π</mml:mi>
<mml:mi>d</mml:mi></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>n</mml:mi></mml:msup>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi></mml:msub></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>Assume has <italic>S</italic> sink in the network, the total transmission power is given by:
<disp-formula id="FD15">
<label>(15)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>t</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>s</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow>
<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>s</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo>/</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mfrac>
<mml:mi>λ</mml:mi>
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:mi>π</mml:mi>
<mml:mi>d</mml:mi></mml:mrow></mml:mfrac>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>n</mml:mi></mml:msup>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi></mml:msub></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow>
<mml:mo>=</mml:mo></mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo> </mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>4</mml:mn>
<mml:mi>π</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>n</mml:mi></mml:msup></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>t</mml:mi></mml:msub>
<mml:mo> </mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>r</mml:mi></mml:msub>
<mml:mo> </mml:mo>
<mml:msup>
<mml:mi>λ</mml:mi>
<mml:mi>n</mml:mi></mml:msup></mml:mrow></mml:mfrac>
<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>s</mml:mi></mml:munderover>
<mml:mrow>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mi>n</mml:mi></mml:msup></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p><xref ref-type="fig" rid="f16-sensors-10-02003">Figure 16</xref> shows the comparisons of the total transmission power between MSCWSNs-PC and maximum transmission power per round. As shown in <xref ref-type="fig" rid="f16-sensors-10-02003">Figure 16</xref>, MSCWSNs-PC achieves an improvement of several orders of magnitude compared to maximum power transmissions and with the increase of the number of sink the gap between the two lines gradually widens. For the two modes of axis ordering orientation, more total transmission power is needed in axis mode, but the gap between the two modes is very small.</p>
<p>In the well-known energy model of nodes (First Order Radio Model) in [<xref ref-type="bibr" rid="b5-sensors-10-02003">5</xref>], the model took into account nodes’ transmitting and receiving energy consumptions, compared to the actual work that node energy model more suitable for constant rate and peer-to-peer links in the mobile node. The literature assumes a simple model for the radio hardware energy dissipation where the transmitter dissipates energy to run the radio electronics and the power amplifier, and the receiver dissipates energy to run the radio electronics. For the experiments described here, both the free space (power loss) and the multipath fading (power loss) channel models were used, depending on the distance between the transmitter and receiver [<xref ref-type="bibr" rid="b28-sensors-10-02003">28</xref>]. Power control can be used to invert this loss by appropriately setting the power amplifier - if the distance is less than a threshold, the free space (fs) model is used; otherwise, the multipath (mp) model is used. Thus, to transmit a <italic>k</italic>-bit message a distance, the radio expends:
<disp-formula id="FD16">
<label>(16)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">Tx</mml:mi></mml:msub>
<mml:mo> </mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>d</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">Tx</mml:mi>
<mml:mo>−</mml:mo>
<mml:mi mathvariant="italic">elec</mml:mi></mml:mrow></mml:msub>
<mml:mo> </mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">Tx</mml:mi>
<mml:mo>−</mml:mo>
<mml:mi mathvariant="italic">amp</mml:mi></mml:mrow></mml:msub>
<mml:mo> </mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</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:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi mathvariant="italic">kE</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>ξ</mml:mi></mml:mrow>
<mml:mi mathvariant="italic">fs</mml:mi></mml:msub>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>,</mml:mo></mml:mtd>
<mml:mtd>
<mml:mi>d</mml:mi>
<mml:mo>&lt;</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>0</mml:mn></mml:msub></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi mathvariant="italic">kE</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>ξ</mml:mi></mml:mrow>
<mml:mi mathvariant="italic">mp</mml:mi></mml:msub>
<mml:msup>
<mml:mi>d</mml:mi>
<mml:mn>4</mml:mn></mml:msup>
<mml:mo>,</mml:mo></mml:mtd>
<mml:mtd>
<mml:mi>d</mml:mi>
<mml:mo>≥</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mn>0</mml:mn></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:math></disp-formula>and to receive this message, the radio expends:
<disp-formula id="FD17">
<label>(17)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mi mathvariant="italic">Rx</mml:mi></mml:msub>
<mml:mo> </mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">Rx</mml:mi>
<mml:mo>−</mml:mo>
<mml:mi mathvariant="italic">elec</mml:mi></mml:mrow></mml:msub>
<mml:mo> </mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi mathvariant="italic">kE</mml:mi>
<mml:mi mathvariant="italic">elec</mml:mi></mml:msub></mml:mrow></mml:math></disp-formula></p>
<p>The electronic energy, <italic>E<sub>elec</sub></italic>, depends on factors such as the digital coding, modulation, filtering, and spread of the signal, whereas the amplifier energy, <italic>ξ<sub>fs</sub>d</italic><sup>2</sup> or <italic>ξ<sub>mp</sub>d</italic><sup>4</sup>, depends on the distance to the receiver and the acceptable bit-error rate. For the experiments described in this paper, the communication energy parameters are set as: <italic>E<sub>elec</sub></italic> = 50 nJ/bit, <italic>ξ<sub>fs</sub></italic> = 10 pJ/bit/m<sup>2</sup>, and <italic>ξ<sub>mp</sub></italic> = 0.0013 pJ/ bit/m<sup>4</sup>. Using the experimental results in [<xref ref-type="bibr" rid="b29-sensors-10-02003">29</xref>], the energy for data aggregation is set as <italic>E<sub>DA</sub></italic> = 5 nJ/ bit/signal.</p>
<p>The first order radio model shows that we should reduce the communication of each sensor node as much as possible. In MSCWSNs-PC, without considering the following process of clustering routing, not only all sinks save power by constraining their radio range, but also all sensor nodes receive a smaller number of sink advertising messages, which greatly saves sensor node battery energy.</p></sec>
<sec>
<label>5.4.</label>
<title>Clustering Interference</title>
<p>To reduce inter-cluster interference, each cluster in LEACH communicates using TDMA and direct-sequence spread spectrum (DSSS). Each cluster uses a unique spreading code; all the nodes in the cluster transmit their data to the cluster head using this spreading code and the cluster head filters all received energy using this spreading code. This is known as <italic>transmitter-based code assignment</italic> [<xref ref-type="bibr" rid="b27-sensors-10-02003">27</xref>], since all transmitters within the cluster use the same code. In this paper, clustering interference is defined as the mean number of sinks a node senses. Wen a node wants to select a sink as its cluster head, the less sink node it hears, the less energy it needs to consume. <xref ref-type="fig" rid="f17-sensors-10-02003">Figure 17</xref> shows that by using our algorithm, less sensor nodes need to decide which sink they should belong to. The reason is that since all sinks are broadcasting in a more smaller radio range by using MSCWSNs-PC, then less sensor nodes can receive the broadcast packets.</p></sec>
<sec>
<label>5.5.</label>
<title>Networks Performance</title>
<p>For our experiments in OPNET, let <italic>M</italic> = {1,2,3,4}, <italic>N</italic> = 28, and four source nodes are randomly deployed in a 100 m × 100 m rectangular region. Radio radius constrained at 20 m. In these experiments, the simulation period <italic>T</italic> is set from 0 to 10 minutes. The data rate created by each source node is 1,000 bits/s.</p>
<p><xref ref-type="fig" rid="f18-sensors-10-02003">Figure 18</xref> shows network load for different sink numbers. The more sinks deployed, the lower a network load is created. When more sink nodes are deployed, the source node has a chance to choose a nearer sink to transport its data packet to. This results in a significant decrease in the total communication hops, and results in a greatly lower load on the system.</p>
<p>In <xref ref-type="fig" rid="f19-sensors-10-02003">Figure 19</xref>, end-to-end delay of MSCWSNs-PC decreases as sink number increases. The performance of end-to-end delay when using four sink nodes always outperforms in terms of less sinks. In MSCWSNs-PC, more sink nodes result in shorter data transport paths and lower loads which have a significant impact on decreasing networks congestion. Thus, congestion is more likely to happen when less sinks are deployed.</p></sec></sec>
<sec sec-type="conclusions">
<label>6.</label>
<title>Conclusions</title>
<p>In this paper, we analyze an efficient multiple sink transmission power control scheme for a sink-centric cluster routing protocol in multiple sink wireless sensor networks. Each sink in the network knows its location, and at the same time the other sink nodes share location information. Then every sink decides its communication radius by a distributed algorithm, which is denoted as MSCWSNs-PC. In a sensor network, our algorithm is executed at each sink node independently. We precisely define three metrics for MSCWSNs-PC performance: connectivity, power efficient and clustering interference. Simulation results confirm that our approach produce a satisfactory network performance. Since the combination of multiple sinks and an adaptive clustering hierarchy routing scheme is a novel topic, more in-depth work needs to be done.</p></sec></body>
<back>
<ref-list>
<title>References and Notes</title>
<ref id="b1-sensors-10-02003"><label>1.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Clare</surname><given-names>L.P.</given-names></name><name><surname>Pottie</surname><given-names>G.J.</given-names></name><name><surname>Agre</surname><given-names>J.R.</given-names></name></person-group><article-title>Self-Organizing Distributed Sensor Networks</article-title><conf-name>Proceedings of UGSTA</conf-name><conf-loc>Orlando, FL, USA</conf-loc><conf-date>April, 1999</conf-date><fpage>229</fpage><lpage>237</lpage></citation></ref>
<ref id="b2-sensors-10-02003"><label>2.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Estrin</surname><given-names>D.</given-names></name><name><surname>Govindan</surname><given-names>R.</given-names></name><name><surname>Heidemann</surname><given-names>J.</given-names></name><name><surname>Kumar</surname><given-names>S.</given-names></name></person-group><article-title>Next Century Challenges: Scalable Coordination in Sensor Networks</article-title><conf-name>Proceedings of MOBICOM</conf-name><conf-loc>Seattle, WA, USA</conf-loc><conf-date>August 1999</conf-date><fpage>263</fpage><lpage>270</lpage></citation></ref>
<ref id="b3-sensors-10-02003"><label>3.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tapas</surname><given-names>K.</given-names></name><name><surname>David</surname><given-names>M.M.</given-names></name><name><surname>Nathan</surname><given-names>S.N.</given-names></name><name><surname>Christine</surname><given-names>D.P.</given-names></name><name><surname>Ruth</surname><given-names>S.</given-names></name><name><surname>Angela</surname><given-names>Y.W.</given-names></name></person-group><article-title>An Efficient k-Means Clustering Algorithm: Analysis and Implementation</article-title><source>IEEE Trans.Pattern Anal. Mach. Intel</source><year>2002</year><volume>24</volume><fpage>881</fpage><lpage>892</lpage><pub-id pub-id-type="doi">10.1109/TPAMI.2002.1017616</pub-id></citation></ref>
<ref id="b4-sensors-10-02003"><label>4.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Kohonen</surname><given-names>T.</given-names></name></person-group><source>Self-organizing maps of symbol strings</source><comment>Report A42,</comment><publisher-name>Helsinki University of Technology, Laboratory of Computer and Information Science</publisher-name><publisher-loc>Espoo, Finland</publisher-loc><year>1996</year></citation></ref>
<ref id="b5-sensors-10-02003"><label>5.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wendi</surname><given-names>B.H.</given-names></name><name><surname>Anantha</surname><given-names>P.C.</given-names></name><name><surname>Hari</surname><given-names>B.</given-names></name></person-group><article-title>An Application-Specific Protocol Architecture for Wireless Microsensor Networks</article-title><source>IEEE Trans. Wirel. Commun</source><year>2002</year><volume>1</volume><fpage>660</fpage><lpage>670</lpage><pub-id pub-id-type="doi">10.1109/TWC.2002.804190</pub-id></citation></ref>
<ref id="b6-sensors-10-02003"><label>6.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Manjeshwar</surname><given-names>A.</given-names></name><name><surname>Agrawal</surname><given-names>D.P.</given-names></name></person-group><article-title>TEEN: a routing protocol for enhanced efficiency in wireless sensor networks</article-title><conf-name>Proceedings of IPDPS</conf-name><conf-loc>San Francisco, CA, USA</conf-loc><conf-date>April 2001</conf-date><fpage>2009</fpage><lpage>2015</lpage></citation></ref>
<ref id="b7-sensors-10-02003"><label>7.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Stephanie</surname><given-names>L.</given-names></name><name><surname>Cauligi</surname><given-names>S.R.</given-names></name></person-group><article-title>PEGASIS: Power-Efficient Gathering in Sensor Information Systems</article-title><conf-name>Proceedings of the IEEE Aerospace Conference</conf-name><conf-loc>Big Sky, MO, USA</conf-loc><conf-date>March 2002</conf-date><fpage>1125</fpage><lpage>1130</lpage></citation></ref>
<ref id="b8-sensors-10-02003"><label>8.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kim</surname><given-names>H.</given-names></name><name><surname>Seok</surname><given-names>Y.</given-names></name><name><surname>Choi</surname><given-names>N.</given-names></name><name><surname>Choi</surname><given-names>Y.</given-names></name><name><surname>Kwon</surname><given-names>T.</given-names></name></person-group><article-title>Optimal Multi-sink Positioning and Energy-efficient Routing in Wireless Sensor Networks</article-title><source>Lect. Notes Comput. Sci</source><year>2005</year><volume>3391</volume><fpage>264</fpage><lpage>274</lpage></citation></ref>
<ref id="b9-sensors-10-02003"><label>9.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Oyman</surname><given-names>E.I.</given-names></name><name><surname>Ersoy</surname><given-names>C.</given-names></name></person-group><article-title>Multiple Sink Network Design Problem in Large Scale Wireless Sensor Networks</article-title><conf-name>Proceedings of ICC</conf-name><conf-loc>New York, NY, USA</conf-loc><conf-date>June 2004</conf-date><fpage>3663</fpage><lpage>3667</lpage></citation></ref>
<ref id="b10-sensors-10-02003"><label>10.</label><citation citation-type="other"><person-group person-group-type="author"><name><surname>Oyman</surname><given-names>E.I.</given-names></name></person-group><source>Multiple Sink Location Problem and Energy Efficiency in Large Scale Wireless Sensor Networks</source><comment>Ph.D. Thesis,</comment><publisher-name>Bogazici University</publisher-name><publisher-loc>Istanbul, Turkey</publisher-loc><year>2004</year></citation></ref>
<ref id="b11-sensors-10-02003"><label>11.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Ye</surname><given-names>F.</given-names></name><name><surname>Luo</surname><given-names>H.</given-names></name><name><surname>Cheng</surname><given-names>J.</given-names></name><name><surname>Lu</surname><given-names>S.</given-names></name><name><surname>Zhang</surname><given-names>L.</given-names></name></person-group><article-title>A two-tier data dissemination model for large-scale wireless sensor networks</article-title><conf-name>Proceedings of MOBICOM</conf-name><conf-loc>Atlanta, GA, USA</conf-loc><conf-date>September 2002</conf-date><fpage>148</fpage><lpage>159</lpage></citation></ref>
<ref id="b12-sensors-10-02003"><label>12.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Meng</surname><given-names>M.</given-names></name><name><surname>Wu</surname><given-names>X. L.</given-names></name><name><surname>Jeong</surname><given-names>B.S.</given-names></name><name><surname>Lee</surname><given-names>S.</given-names></name><name><surname>Lee</surname><given-names>Y.K.</given-names></name></person-group><article-title>Energy Efficient Routing in Multiple Sink Sensor Networks</article-title><conf-name>Proceedings of ICCSA</conf-name><conf-loc>Kuala Lumpur, Malaysia</conf-loc><conf-date>August 2007</conf-date><fpage>561</fpage><lpage>566</lpage></citation></ref>
<ref id="b13-sensors-10-02003"><label>13.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liu</surname><given-names>H.</given-names></name><name><surname>Zhang</surname><given-names>Z. L.</given-names></name><name><surname>Srivastava</surname><given-names>J.</given-names></name><name><surname>Firoiu</surname><given-names>V.</given-names></name></person-group><article-title>PWave: A multi-source multi-sink anycast routing framework for wireless sensor networks</article-title><source>Lect. Notes Comput. Sci</source><year>2007</year><volume>4479</volume><fpage>179</fpage><lpage>190</lpage></citation></ref>
<ref id="b14-sensors-10-02003"><label>14.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Frank</surname><given-names>Y.</given-names></name><name><surname>Sung</surname><given-names>L.</given-names></name><name><surname>Wen</surname><given-names>Y. F.</given-names></name></person-group><article-title>Multi-sink Data Aggregation Routing and Scheduling with Dynamic Radii in WSNs</article-title><source>IEEE Commun. Lett</source><year>2006</year><volume>10</volume><fpage>692</fpage><lpage>694</lpage><pub-id pub-id-type="doi">10.1109/LCOMM.2006.06058</pub-id></citation></ref>
<ref id="b15-sensors-10-02003"><label>15.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Taddia</surname><given-names>C.</given-names></name><name><surname>Mazzini</surname><given-names>G.</given-names></name></person-group><article-title>Performance of multisink geographic routing with different distance metrics</article-title><conf-name>Proceedings of SoftCOM</conf-name><conf-loc>Split-Dubrovnik, Croatia</conf-loc><conf-date>September 2007</conf-date><fpage>1</fpage><lpage>5</lpage></citation></ref>
<ref id="b16-sensors-10-02003"><label>16.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Nathalie</surname><given-names>M.</given-names></name><name><surname>David</surname><given-names>S.R.</given-names></name><name><surname>Ivan</surname><given-names>S.</given-names></name></person-group><article-title>Guaranteed delivery for geographical anycasting in wireless multi-sink sensor and sensor-actor networks</article-title><conf-name>Proceedings of INFOCOM</conf-name><conf-loc>Rio de Janeiro, Brazil</conf-loc><conf-date>April 2009</conf-date></citation></ref>
<ref id="b17-sensors-10-02003"><label>17.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Tan</surname><given-names>H.P.</given-names></name><name><surname>Gabor</surname><given-names>A.</given-names></name><name><surname>Winston</surname><given-names>K.S.</given-names></name><name><surname>Pius</surname><given-names>W.L.</given-names></name></person-group><article-title>Performance Analysis of Data Delivery Schemes for a Multi-sink Wireless Sensor Network</article-title><conf-name>Proceedings of AINA2008</conf-name><conf-loc>GinoWan, Okinawa, Japan</conf-loc><conf-date>March 2008</conf-date><fpage>418</fpage><lpage>425</lpage></citation></ref>
<ref id="b18-sensors-10-02003"><label>18.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jain</surname><given-names>R.</given-names></name><name><surname>Puri</surname><given-names>A.</given-names></name><name><surname>Sengupta</surname><given-names>R.</given-names></name></person-group><article-title>Geographical routing using partial information for wireless Ad Hoc networks</article-title><source>IEEE Personal Commun</source><year>2001</year><volume>8</volume><fpage>48</fpage><lpage>57</lpage></citation></ref>
<ref id="b19-sensors-10-02003"><label>19.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Karp</surname><given-names>B.</given-names></name><name><surname>Kung</surname><given-names>H.T.</given-names></name></person-group><article-title>GPSR: greedy perimeter stateless routing for wireless networks</article-title><conf-name>Proceedings of Mobicom</conf-name><conf-loc>Boston, MA, USA</conf-loc><conf-date>July 2000</conf-date><fpage>243</fpage><lpage>254</lpage></citation></ref>
<ref id="b20-sensors-10-02003"><label>20.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Akyildiz</surname><given-names>I.F.</given-names></name><name><surname>Melodia</surname><given-names>T.</given-names></name><name><surname>Chowdury</surname><given-names>K.R.</given-names></name></person-group><article-title>Wireless multimedia sensor networks: A survey</article-title><source>Wirel.Commun</source><year>2007</year><volume>14</volume><fpage>32</fpage><lpage>39</lpage></citation></ref>
<ref id="b21-sensors-10-02003"><label>21.</label><citation citation-type="web"><comment>Available online: <ext-link xlink:href="http://www.chinanews.com.cn/gn/news/2008/01-24/1144158.shtml" ext-link-type="uri">http://www.chinanews.com.cn/gn/news/2008/01-24/1144158.shtml</ext-link> (accessed on February 8, 2008).</comment></citation></ref>
<ref id="b22-sensors-10-02003"><label>22.</label><citation citation-type="web"><person-group person-group-type="author"><name><surname>Cui</surname><given-names>J.H.</given-names></name></person-group><article-title>Building Autonomous Underwater Sensor Networks</article-title><comment>Under Water Sensor Network (UWSN) Lab. Available online: <ext-link xlink:href="http://uwsn.engr.uconn.edu" ext-link-type="uri">http://uwsn.engr.uconn.edu</ext-link>. (accessed on February 8, 2008).</comment></citation></ref>
<ref id="b23-sensors-10-02003"><label>23.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Awerbuch</surname><given-names>B.</given-names></name><name><surname>Brinkmann</surname><given-names>A.</given-names></name><name><surname>Scheideler</surname><given-names>C.</given-names></name></person-group><article-title>Anycasting and Multicasting in Adversarial Systems: Routing and Admission Control</article-title><comment>Technical Report,</comment><publisher-name>Johns Hopkins University</publisher-name><publisher-loc>Baltimore, MD, USA</publisher-loc><year>2002</year></citation></ref>
<ref id="b24-sensors-10-02003"><label>24.</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 HICSS</conf-name><conf-loc>Maui, HI, USA</conf-loc><conf-date>January 2000</conf-date><fpage>4</fpage><lpage>7</lpage></citation></ref>
<ref id="b25-sensors-10-02003"><label>25.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Wesel</surname><given-names>E.K.</given-names></name></person-group><source>Wireless Multimedia communications: Networking video, voice, and Data</source><publisher-name>Addison-Wesley</publisher-name><publisher-loc>Reading, MA, USA</publisher-loc><year>1998</year></citation></ref>
<ref id="b26-sensors-10-02003"><label>26.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Henri</surname><given-names>D.F.</given-names></name><name><surname>Deborah</surname><given-names>E.</given-names></name></person-group><source>Efficient and practical query scoping in sensor networks</source><comment>Technical Report 39,</comment><publisher-name>CENS, UCLA</publisher-name><publisher-loc>Los Angeles, CA, USA</publisher-loc><month>April</month><year>2004</year></citation></ref>
<ref id="b27-sensors-10-02003"><label>27.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hu</surname><given-names>L.</given-names></name></person-group><article-title>Distributed code assignments for CDMA packet radio networks</article-title><source>IEEE/ACM Trans. Netw</source><year>1993</year><volume>1</volume><fpage>668</fpage><lpage>677</lpage><pub-id pub-id-type="doi">10.1109/90.266055</pub-id></citation></ref>
<ref id="b28-sensors-10-02003"><label>28.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Rappaport</surname><given-names>T.</given-names></name></person-group><source>Wireless Communications: Principles &amp; Practice</source><edition>2nd ed</edition><publisher-name>Prentice-Hall</publisher-name><publisher-loc>Englewood Cliffs, NJ, USA</publisher-loc><year>1996</year></citation></ref>
<ref id="b29-sensors-10-02003"><label>29.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Wang</surname><given-names>A.</given-names></name><name><surname>Heinzelman</surname><given-names>W.</given-names></name><name><surname>Chandrakasan</surname><given-names>A.</given-names></name></person-group><article-title>Energy-scalable protocols for battery-operated microsensor networks</article-title><conf-name>Proceedings of SiPS ’99</conf-name><conf-loc>Taipei, Taiwan, China</conf-loc><conf-date>October 1999</conf-date><fpage>483</fpage><lpage>492</lpage></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures</title>
<fig id="f1-sensors-10-02003" position="float">
<label>Figure 1.</label>
<caption>
<p>Sink-centric multiple sink cluster WSNs. (a) Sink as cluster head. (b) Non-sink as cluster head.</p></caption>
<graphic xlink:href="sensors-10-02003f1.gif"/></fig>
<fig id="f2-sensors-10-02003" position="float">
<label>Figure 2.</label>
<caption>
<p>Illustration of WSNs with two sink nodes. (a) Two sinks at different sides; (b) Two sinks on the same side.</p></caption>
<graphic xlink:href="sensors-10-02003f2.gif"/></fig>
<fig id="f3-sensors-10-02003" position="float">
<label>Figure 3.</label>
<caption>
<p>Frame format of <italic>HELLO</italic> packet in MSCWSNs-PC.</p></caption>
<graphic xlink:href="sensors-10-02003f3.gif"/></fig>
<fig id="f4-sensors-10-02003" position="float">
<label>Figure 4.</label>
<caption>
<p>Sink A and B cross with rectangular borders.</p></caption>
<graphic xlink:href="sensors-10-02003f4.gif"/></fig>
<fig id="f5-sensors-10-02003" position="float">
<label>Figure 5.</label>
<caption>
<p>Illustration of radio radius calculation when deploying 4 sink nodes in work area. <bold>(a)</bold> Too large. <bold>(b)</bold> Appropriate. <bold>(c)</bold> Too small.</p></caption>
<graphic xlink:href="sensors-10-02003f5.gif"/></fig>
<fig id="f6-sensors-10-02003" position="float">
<label>Figure 6.</label>
<caption>
<p>Illustration of radio radius calculation when deploying 4 sink nodes in work area. <bold>(a)</bold>The axis orientation mode. <bold>(b)</bold> the Anticlockwise (or clockwise) mode. Dashed lines refer to the border of quadrant area while solid lines with arrowhead refer to the axis orientation of radio radius calculation.</p></caption>
<graphic xlink:href="sensors-10-02003f6.gif"/></fig>
<fig id="f7-sensors-10-02003" position="float">
<label>Figure 7.</label>
<caption>
<p>Illustration of border communication void problem.</p></caption>
<graphic xlink:href="sensors-10-02003f7.gif"/></fig>
<fig id="f8-sensors-10-02003" position="float">
<label>Figure 8.</label>
<caption>
<p>Border constraint problem resulting of sink communication void. (a) sink border group absence. (b) center void.</p></caption>
<graphic xlink:href="sensors-10-02003f8.gif"/></fig>
<fig id="f9-sensors-10-02003" position="float">
<label>Figure 9.</label>
<caption>
<p>Flow chart for MSCWSNS-PC in each sink.</p></caption>
<graphic xlink:href="sensors-10-02003f9.gif"/></fig>
<fig id="f10-sensors-10-02003" position="float">
<label>Figure 10.</label>
<caption>
<p>Illustration of radio radius calculation.</p></caption>
<graphic xlink:href="sensors-10-02003f10.gif"/></fig>
<fig id="f11-sensors-10-02003" position="float">
<label>Figure 11.</label>
<caption>
<p>The radio range of sink nodes with power allocation. (a) sink fixed deployment. (b) sink deployment randomly.</p></caption>
<graphic xlink:href="sensors-10-02003f11a.gif"/>
<graphic xlink:href="sensors-10-02003f11b.gif"/></fig>
<fig id="f12-sensors-10-02003" position="float">
<label>Figure 12.</label>
<caption>
<p>Mean connectivity of MSCWSNs-PC at variety sink number with considering neither MSBSRC nor BCP (mean of 1,000 rounds).</p></caption>
<graphic xlink:href="sensors-10-02003f12.gif"/></fig>
<fig id="f13-sensors-10-02003" position="float">
<label>Figure 13.</label>
<caption>
<p>Mean connectivity of MSCWSNs-PC at variety sink number with considering MSBSRC (mean of 1,000 rounds).</p></caption>
<graphic xlink:href="sensors-10-02003f13.gif"/></fig>
<fig id="f14-sensors-10-02003" position="float">
<label>Figure 14.</label>
<caption>
<p>Mean connectivity of MSCWSNs-PC at variety sink number with considering BCP (mean of 1,000 rounds).</p></caption>
<graphic xlink:href="sensors-10-02003f14.gif"/></fig>
<fig id="f15-sensors-10-02003" position="float">
<label>Figure 15.</label>
<caption>
<p>Mean connectivity of MSCWSNs-PC at variety sink number with considering BCP (mean of 1,000 rounds).</p></caption>
<graphic xlink:href="sensors-10-02003f15.gif"/></fig>
<fig id="f16-sensors-10-02003" position="float">
<label>Figure 16.</label>
<caption>
<p>Total transmission power at different sink numbers (n=2).</p></caption>
<graphic xlink:href="sensors-10-02003f16.gif"/></fig>
<fig id="f17-sensors-10-02003" position="float">
<label>Figure 17.</label>
<caption>
<p>Mean connectivity at variety node number and sink number (100 rounds).</p></caption>
<graphic xlink:href="sensors-10-02003f17.gif"/></fig>
<fig id="f18-sensors-10-02003" position="float">
<label>Figure 18.</label>
<caption>
<p>Network load at different sink numbers.</p></caption>
<graphic xlink:href="sensors-10-02003f18.gif"/></fig>
<fig id="f19-sensors-10-02003" position="float">
<label>Figure 19.</label>
<caption>
<p>Network load for different sink numbers.</p></caption>
<graphic xlink:href="sensors-10-02003f19.gif"/></fig></sec></back></article>
