<?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="publisher-id">jsan</journal-id>
      <journal-title>Journal of Sensor and Actuator Networks</journal-title>
      <abbrev-journal-title abbrev-type="publisher">JSAN</abbrev-journal-title>
      <abbrev-journal-title abbrev-type="pubmed">JSAN</abbrev-journal-title>
      <issn pub-type="epub">2224-2708</issn>
      <publisher>
        <publisher-name>MDPI</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.3390/jsan1030183</article-id>
      <article-id pub-id-type="publisher-id">jsan-01-00183</article-id>
      <article-categories>
        <subj-group>
          <subject>Article</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Group-based Motion Detection for Energy-Efficient Localisation</article-title>
      </title-group>
      
      <contrib-group>
        <contrib contrib-type="author">
          <name>
            <surname>Jurdak</surname>
            <given-names>Raja</given-names>
          </name>
          <xref rid="c1-jsan-01-00183" ref-type="corresp">*</xref>
        </contrib>
        <contrib contrib-type="author">
          <name>
            <surname>Kusy</surname>
            <given-names>Branislav</given-names>
          </name>
        </contrib>
        <contrib contrib-type="author">
          <name>
            <surname>Cotillon</surname>
            <given-names>Alban</given-names>
          </name>
        </contrib>
      </contrib-group>
      <aff id="af1-jsan-01-00183">Autonomous Systems Lab, CSIRO ICT Centre, QCAT Technology Court, Pullenvale QLD 4069, Australia; Email: <email>brano.kusy@csiro.au</email> (B.K.); <email>albancotillon@gmail.com</email> (A.C.)</aff>
	  <author-notes>
        <corresp id="c1-jsan-01-00183"><label>*</label> Author to whom correspondence should be addressed; Email: <email>rjurdak@ieee.org</email>.</corresp>
      </author-notes>
      <pub-date pub-type="epub">
        <day>19</day>
        <month>10</month>
        <year>2012</year>
      </pub-date>
      <pub-date pub-type="collection"> <month>12</month>
        <year>2012</year>
      </pub-date>
      <volume>1</volume>
      <issue>3</issue>
      <fpage>183</fpage>
      <lpage>216</lpage>
      <history>
        <date date-type="received">
          <day>18</day>
          <month>06</month>
          <year>2012</year>
        </date>
        <date date-type="rev-recd">
          <day>22</day>
          <month>08</month>
          <year>2012</year>
        </date>
        <date date-type="accepted">
          <day>11</day>
          <month>10</month>
          <year>2012</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>© 2012 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
        <copyright-year>2012</copyright-year>
        <license xmlns:xlink="http://www.w3.org/1999/xlink" license-type="open-access" xlink:href="http://creativecommons.org/licenses/by/3.0/">
          <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>Long-term outdoor localization remains challenging due to the high energy profiles of GPS modules. Duty cycling the GPS module combined with inertial sensors can improve energy consumption. However, inertial sensors that are kept active all the time can also drain mobile node batteries. This paper proposes duty cycling strategies for inertial sensors to maintain a target position accuracy and node lifetime. We present a method for duty cycling motion sensors according to features of movement events, and evaluate its energy and accuracy profile for an empirical data trace of cattle movement. We further introduce the concept of group-based duty cycling, where nodes that cluster together can share the burden of motion detection to reduce their duty cycles. Our evaluation shows that both variants of motion sensor duty cycling yield up to 78% improvement in overall node power consumption, and that the group-based method yields an additional 20% power reduction during periods of low mobility.</p>
      </abstract>
      <kwd-group>
        <kwd>energy-efficient</kwd>
        <kwd>GPS</kwd>
        <kwd>accelerometer</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec sec-type="intro">
      <title>1. Introduction</title>
      <p>Recent advances in radio and processing technology have fuelled increased interest and adoption of localisation systems for both indoor and outdoor applications. Outdoor localisation applications, such as animal or people tracking, typically rely on GPS technology thanks to its high availability and accuracy. However, GPS modules are energy-hungry, which causes quick depletion of battery energy at resource-limited tracking devices.</p>
      <p>Several recent proposals have attempted to address the energy consumption issue by duty cycling the GPS module and supplementing it with cellular tower signals [<xref ref-type="bibr" rid="B1-jsan-01-00183">1</xref>], local radio message exchanges [<xref ref-type="bibr" rid="B2-jsan-01-00183">2</xref>], and accelerometers [<xref ref-type="bibr" rid="B3-jsan-01-00183">3</xref>]. While all of these methods yield reductions in energy consumption, they still require the addition of extra modules into the devices for processing the supplementary signals. This limits the lifetime benefits of embedded devices that are desired in many long-term monitoring applications. For instance, applications that require inertial modules with tilt compensation and heading [<xref ref-type="bibr" rid="B4-jsan-01-00183">4</xref>] have an active power consumption that is comparable to a duty cycled GPS node. There have been limited attempts to duty cycle the supplementary modules, other than duty cycling of radio modules [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>].</p>
      <p>This paper proposes duty cycling strategies for motion modules, in order to reduce their power consumption while maintaining their utility in supplementing GPS position information. Our strategies target applications that can tolerate a degree of positioning uncertainty. We adopt a motion-module duty cycling approach inspired from radio low power listening (LPL) [<xref ref-type="bibr" rid="B6-jsan-01-00183">6</xref>], where the motion module needs to wake up and obtain samples frequently enough to detect motion events (conceptually similar to transmit preambles). The main departure from LPL approaches is that we lack control of the motion event duration, thus we propose the selection of motion module duty cycles to capture the majority of motion events for a given application.</p>
      <p>As an extension of this duty cycling approach, we introduce group-based duty cycling. Intuitively, nodes that cluster together can cooperatively share the burden of regularly checking for motion events, thereby reducing the energy cost for individual nodes. Nodes use periodic short range radio exchanges to track proximity contacts in the recent history. This history enables nodes to identify the subset of their neighbours whose movement has closely aligned with the nodes’ own movement patterns. Each node can then reduce the duty cycle of its motion sensor by up to the cardinality of that subset, as the movement of one of the nodes in the subset is indicative of movement of the whole group. Nodes broadcast radio beacons to all their neighbours when they detect motion, thus triggering sampling of motion sensors at these neighbours.</p>
      <p>Our group-based duty cycling approach has broad applicability for tracking movement of people [<xref ref-type="bibr" rid="B7-jsan-01-00183">7</xref>] or animals [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>]. For instance, a group of people that are known to have close social links tend to cluster together, and their movements tend to be highly correlated. An example is a group of people in a theme park [<xref ref-type="bibr" rid="B7-jsan-01-00183">7</xref>], where the people tend to move together to attend meetings to visit certain attractions. Group-based duty cycling also applies for tracking the movement of many animal species that cluster together in large groups, including terrestrial species such as cattle, aerial species such as flying foxes, and aquatic species such as sardines.</p>
      <p>This paper uses an empirical cattle tracking GPS data trace to evaluate our duty cycling strategies in simulations. The results enable the comparison of the individual and group strategies with previous methods in terms of power consumption and localisation accuracy. We find that both of our proposed strategies yield significant energy improvements over previous proposals at a slight reduction in location accuracy. We further determine that individual duty cycling is more suited towards higher mobility situations due to its deterministic sampling times, while the more space and time diverse sampling schedule of group duty cycling performs better for applications where motion events occur more rarely. </p>
      <p> In summary, the contributions of this paper are three-fold: </p>
      <list list-type="bullet">
        <list-item>
          <p>Proposal of a motion sensor duty cycling strategy, based on learned motion features, for complementing GPS and radio duty cycling;</p>
        </list-item>
        <list-item>
          <p>Extension of the strategy for a collaborative group-based approach;</p>
        </list-item>
        <list-item>
          <p>Performance evaluation of the two strategies against previous work and in high and low mobility scenarios.</p>
        </list-item>
      </list>
      <p>The remainder of the paper is organised as follows. <xref ref-type="sec" rid="sec2-jsan-01-00183">Section 2</xref> reviews related work. <xref ref-type="sec" rid="sec3-jsan-01-00183">Section 3</xref> provides the basis of our duty cycling approach. <xref ref-type="sec" rid="sec4-jsan-01-00183">Section 4</xref> and <xref ref-type="sec" rid="sec5-jsan-01-00183">Section 5</xref> present the individual and group duty cycling strategies respectively. <xref ref-type="sec" rid="sec6-jsan-01-00183">Section 6</xref> compares the performance of these strategies in situations of high and low mobility. <xref ref-type="sec" rid="sec7-jsan-01-00183">Section 7</xref> discusses the results, while <xref ref-type="sec" rid="sec8-jsan-01-00183">Section 8</xref> concludes the paper.</p>
    </sec>
    <sec id="sec2-jsan-01-00183">
      <title>2. Related Work</title>
      <p>Li and Wu [<xref ref-type="bibr" rid="B8-jsan-01-00183">8</xref>] propose the use of a closeness metric between two nodes, defined as a measure of the frequency of encounters between two mobile nodes. To dynamically define communities, they rely on a threshold for the closeness metric, such that any group of nodes that are connected through edges with closeness metrics higher than the threshold are considered as a community. While we share the concept of a closeness threshold, we explore the effect of time and location of the closeness within existing communities, in order to predict emerging communities into the future.</p>
      <p>An early instance of animal tracking by networked embedded systems is the ZebraNet project [<xref ref-type="bibr" rid="B9-jsan-01-00183">9</xref>], which tracks individual position records for animals every of a few minutes. However, ZebraNet collars include a solar panel, making the energy management problem quite a tractable one. Positioning is done by GPS only, and the nodes propagate their information by flooding in order to facilitate data acquisition by the mobile sink. The Networked Cow project [<xref ref-type="bibr" rid="B10-jsan-01-00183">10</xref>] used PDAs with GPS and <italic>ad hoc</italic> WiFi to route position information to a base station.The Electronic Shepherd project [<xref ref-type="bibr" rid="B1-jsan-01-00183">1</xref>] also uses GPS localization for tracking herds of sheep in the mountains. “Real-time” is obtained thanks to a GPRS modems in the collar, even though position is recorded and sent back to base only a few times per day in order to prolong battery life. Unlike our work, nodes are asymmetric: only a few animals in the herd wear collars including GPS and GPRS modules. All the others wear a small ear-tag including only a microcontroller and a radio-chip.</p>
      <p>The work in [<xref ref-type="bibr" rid="B11-jsan-01-00183">11</xref>] considers energy efficient localization for base nodes on the path of the mobile nodes and the energy implications of each approach. While the speed models in [<xref ref-type="bibr" rid="B11-jsan-01-00183">11</xref>] are similar to this paper, their work is purely simulation-based and does not consider the benefits of contact logging or online adaptation according to energy and position changes. The work in [<xref ref-type="bibr" rid="B12-jsan-01-00183">12</xref>] addresses the trade-off between localization accuracy and energy efficiency. It considers static, dynamic, and dead reckoning mobility models and studies their effect on accuracy and energy through ns2 simulations. Our work addresses the same tradeoff but uses empirical GPS data to conduct analysis on three different speed models and a realistic energy model of the GPS-enabled nodes that includes the previously unreported stochastic lock time model. We also consider the effect of dynamically changing the required localization performance based on the mobile node’s distance from an exclusion zone. Further we explore contact logging as a complement to GPS for achieving a better balance between accuracy and efficiency. In a similar fashion, Pattern <italic>et al</italic>. [<xref ref-type="bibr" rid="B13-jsan-01-00183">13</xref>] provide a tuning knob to obtain various energy-accuracy trade-offs by the careful choice of duty cycle and activation radius.</p>
      <p>The works in [<xref ref-type="bibr" rid="B14-jsan-01-00183">14</xref>,<xref ref-type="bibr" rid="B15-jsan-01-00183">15</xref>] address this trade-off as well by considering improvements to the RIP method [<xref ref-type="bibr" rid="B16-jsan-01-00183">16</xref>] as the baseline localization method. A key difference between You’s work and ours is that we support a variable uncertainty bound. Another distinction is their use of mote-based RSSI localization schemes in indoor environments, which require a deployed network infrastructure, consume less power, and require a calibration phase. Finally, they do not consider contact logging for reducing localization uncertainty.</p>
      <p>Recent work [<xref ref-type="bibr" rid="B2-jsan-01-00183">2</xref>,<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>,<xref ref-type="bibr" rid="B17-jsan-01-00183">17</xref>] has also explored collaborative localization that enables nodes to detect neighboring signals for position refinement. Chan <italic>et al</italic>. [<xref ref-type="bibr" rid="B17-jsan-01-00183">17</xref>] use a cluster-based approach, where nearby nodes can establish clusters through IEEE 802.15.4 radios as a neighbour detection sensor that enhances WiFi localization. Our approach is similar in its reliance on contact signals, but it differs in that the contact signal is sent and received by the same radio, as in [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>], eliminating the need for multi-radio nodes.</p>
      <p>More recently, research has explored energy-aware localization for mobile phones equipped with GPS. For example Constandache <italic>et al</italic>. [<xref ref-type="bibr" rid="B18-jsan-01-00183">18</xref>] propose an average error metric for GPS duty cycling. Using proximity mechanisms like WiFi or GSM yields a lower average error for the same energy budget as plain GPS duty cycling. One of their mobility models deduces the current location of the node from recent history when the user is driving on a straight road. Similarly, the work in [<xref ref-type="bibr" rid="B19-jsan-01-00183">19</xref>] stores historical information of locations where GPS does not work, and of average speed as a function of time and place. The work in [<xref ref-type="bibr" rid="B7-jsan-01-00183">7</xref>] propose collaborative GPS localisation for people with smart phones in a theme park environment, confirming the dependence of the energy efficiency and accuracy of this approach on the radio range and uncertainty bound [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>].</p>
      <p>The use of accelerometers has also been proposed as a low power indicator of movement to supplement GPS duty cycling [<xref ref-type="bibr" rid="B19-jsan-01-00183">19</xref>,<xref ref-type="bibr" rid="B20-jsan-01-00183">20</xref>]. Guo <italic>et al</italic>. [<xref ref-type="bibr" rid="B21-jsan-01-00183">21</xref>] have used accelerometers, high sample rate GPS, and magnetometers to develop a cattle movement and behaviour model on which this paper builds. Kjaergaard <italic>et al</italic>. [<xref ref-type="bibr" rid="B22-jsan-01-00183">22</xref>] use both accelerometers and magnetometers for energy efficient tracking, and consider individual duty cycling strategies for these components. Our approach differs from these works in that it considers group based duty cycling strategies for accelerometers or other motion detection sensors.</p>
      <p>Other work has aimed at human tracking with the aid of accelerometers. For instance, Accelerometer Augmented Mobile Phone Localization (AAMPL) [<xref ref-type="bibr" rid="B3-jsan-01-00183">3</xref>] uses accelerometer to infer human activity, such as sitting or standing, through a centralised method. Similarly, Wang <italic>et al</italic>. [<xref ref-type="bibr" rid="B23-jsan-01-00183">23</xref>] propose a classification method based on accelerometers for separating walking, running, stable and vehicle motion for humans. Rate-Adaptive GPS-based positioning for smartphones (RAPS) [<xref ref-type="bibr" rid="B19-jsan-01-00183">19</xref>] triggers GPS samples through accelerometers, as in our work. However, they are not using accelerometer as a boolean motion trigger, rather to measure an activity ratio computed over a time window. Unlike our strategy, their approach does not duty cycle the accelerometer.</p>
    </sec>
    <sec id="sec3-jsan-01-00183">
      <title>3. Overview</title>
      <p>In this paper, we develop algorithms for continuous tracking of mobile nodes based on their mobility features. Each node is equipped with a radio module for communication and contact logging, a motion detection module (such as a vibration sensor or accelerometer), and a GPS module for location estimation. Our goal is to determine duty cycles for the individual modules, so that the energy consumption of the overall system is minimised, while keeping the localisation error under a given threshold.</p>
      <p>Previous work has shown that GPS duty cycling according to the average speed of nodes can reduce power consumption, and that the use of radio contact logging provides for further savings [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>]. Once a node acquires its position estimate through GPS, all neighbouring nodes within its radio broadcast range can estimate their locations accordingly. Here, we extend this work by using a motion detection module to detect when the nodes are stationary and subsequently turning off the GPS module, as in [<xref ref-type="bibr" rid="B19-jsan-01-00183">19</xref>]. This configuration can yield considerable savings, particularly for applications in which nodes are stationary for long periods, such as cattle grazing in a field.</p>
      <p>Motion detection modules, however, still consume appreciable amounts of energy if running continuously. For instance, we use a Honeywell HMC6433 inertial module with accelerometer, magnetometer, heading and tilt compensation [<xref ref-type="bibr" rid="B4-jsan-01-00183">4</xref>] that can continuously draw about 6 mA of current. Keeping the inertial module active would have an equivalent energy cost to duty cycling the GPS module with contact logging [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>]. Therefore, efficient duty cycling of the motion detection modules is important for prolonging the system lifetime. We show that modelling the mobility of nodes enables efficient duty-cycling of accelerometers without sacrificing accuracy of motion detection. Specifically, energy savings on the order of the size of the group of nodes that travel together can be achieved compared with algorithms that consider individual nodes only. In the remainder of this section, we first motivate group based duty cycling through two applications, before presenting an overview of our duty cycling models.</p>
      <sec>
        <title>3.1. Motivating Applications</title>
        <p>A key motivating application for group-based duty cycling is to understand the behaviour of migratory birds [<xref ref-type="bibr" rid="B24-jsan-01-00183">24</xref>]. In particular, flying foxes are major cause for disease spread in both Australia and in Southeast Asia. These animals are highly mobile, traveling tens of kilometres in a single night and covering distances in excess of 1,000 km with the migratory season. In Australia, flying foxes are responsible for the spread of the Hendra virus, which is lethal to horses and harmful to humans. The processes and dynamics that underpin disease propagation within a group of flying foxes are not well understood, which is the main driver to monitor their movements and understand their behavior. Fortunately, these animals congregate at roosting camps and groups of tens of thousands of individuals and may remain there for days or weeks before moving to a new location. Using group based duty cycling therefore has huge potential for developing long-term tracking solutions for these animals. A related application is monitoring of livestock that also tends to form into long-term stable herds. The benefits of collaborative localisation for cattle have been demonstrated in [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>] through reliance on radio proximity data to reduce GPS duty cycles. In that earlier work, nodes did not have any inertial sensors. The animal scientists that wish to study the cattle behaviour are interested in high-quality inertial data from the animals while they are moving.</p>
        <p>Both of the above applications require the use of inertial modules with tilt compensation and heading computation, which have a much higher energy consumption than basic inertial modules. The need to use higher energy inertial modules motivates duty cycling of these modules. In order to avoid missing motion events, multiple nodes that are clustered together in a group can cooperate on detecting motion in the group and simultaneously save energy.</p>
      </sec>
      <sec>
        <title>3.2. Basic Assumptions and Definitions</title>
        <p>We consider a set of nodes <italic>N</italic> = {<italic>N<sub>i</sub></italic>}, where <italic>N<sub>i</sub></italic> denotes an individual node. Our goal is to track location <italic>L<sub>i</sub></italic> of each node over a set of discrete timestamps with a maximum user-set uncertainty. In order to ground the discussion, we consider accelerometers as our motion trigger modules, bearing in mind that the model applies equally to other motion sensors, such as gyroscopes and magnetometers.</p>
        <p>Each node is equipped with a radio that has a perfectly circular range of <italic>R</italic> meters. The nodes are further equipped with an accelerometer for motion detection, and a GPS module that estimates the node’s location <italic>L<sub>i</sub></italic> with an average uncertainty <italic>U<sub>gps</sub></italic> meters. An accelerometer takes <italic>t<sub>A</sub></italic> time to estimate the node’s current speed, and the GPS module requires <italic>t<sub>L</sub></italic> seconds to achieve lock and return a location estimate. Because accelerometer readings are noisy and cannot reliably estimate fine-grained speed values, we use the accelerometer in our model to distinguish between two states: a stationary state and a moving state. The accelerometer can determine whether movement occurs through an internal mechanism that compares the measured speed with a user set speed threshold <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i006.tif"/></p>
        <sec>
          <title>3.2.1. Energy Model</title>
          <p>We model node energy consumption by recording the duty cycles of the major node components: GPS module, radio, MCU, and inertial.</p>
          <p>We compute the GPS and inertial module energy consumption at any time <italic>t</italic> ring the deployment as <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i007.tif"/> where <italic>DC<sub>x</sub></italic> is module <italic>x</italic>’s duty cycle, and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i008.tif"/> is the power consumption of that module in active mode. Both modules are completely powered off when not in use, so they draw no current. We track the radio energy consumption as the sum of the transmission, reception, and listening energy values respectively [<xref ref-type="bibr" rid="B25-jsan-01-00183">25</xref>] for a given radio duty cycle, which is set to 10% in the rest of the paper (note that we do not consider radio state transition times in this paper for simplicity).</p>
          <p>The MCU power consumption is heavily dependent on the duty cycling strategies of all the other components, as the MCU must power on when any of the other modules are active. In general, the MCU duty cycle and energy consumed are expressed as: </p>
          <disp-formula id="jsan-01-00183-i001">
		<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i001.tif"/>
		<label>(1)</label>
		</disp-formula>

          <p>where <italic>DC<sub>gps</sub></italic>, <italic>DC<sub>radio</sub></italic>, and <italic>DC<sub>A</sub></italic> are the duty cycles of the GPS, radio, and accelerometer respectively. The <italic>overlap</italic> parameter denotes any overlap between the on-times between these 3 components.</p>
        </sec>
        <sec>
          <title>3.2.2. Metrics</title>
          <p>We evaluate performance of the tracking algorithms developed in this paper using three main metrics. Power measured in milliwatts is calculated as the mean power consumed by a node over the course of the experiments. We further break down the total consumed power according to the individual hardware components. Error rate is a σ measure of the localisation accuracy of our algorithms. It is calculated as the percentage of times when the localisation error was larger than the reported uncertainty. Finally, AAU (absolute acceptable uncertainty) is a user-set bound on the maximum localisation uncertainty of the tracking algorithm.</p>
        </sec>
      </sec>
      <sec>
        <title>3.3. GPS Duty Cycling with Radio Ranging</title>
        <p>We consider an outdoor cattle tracking application using smart collars that contain wireless sensor nodes, GPS, and inertial modules with accelerometer, magnetometer, and hardware tilt compensation and heading calculation. The wireless sensor node is a Fleck [<xref ref-type="bibr" rid="B26-jsan-01-00183">26</xref>] comprising Atmel-1281 MCU and Atmel RF212 radio. Four D-Cell batteries in series provide power to all the collar components via several switch-mode regulators. The weight of these batteries yields a collar weight that approaches the upper limit set by an animal ethics committee, so larger batteries are not an option.</p>
        <p>The target node lifetime in this application is 3 months, which is the interval at which the animals are brought in for health checks, treatment and sorting. Previous work had shown a significant increase in node lifetime with GPS duty cycling coupled with radio ranging [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>]. As our current work on collaborative localisation with accelerometer duty cycling builds on that earlier work, we briefly revisit it for presentation clarity.</p>
        <p><xref ref-type="fig" rid="jsan-01-00183-f001">Figure 1</xref> shows how GPS duty cycling works. At time <italic>k</italic> we obtain a GPS measurement <italic>x<sub>k</sub></italic> and then turn off the GPS. At the next measurement <italic>x<sub>k</sub></italic><sub>+1</sub>, the mobile node may be either within or outside the AAU, indicated by the larger circle. Whenever <italic>x<sub>k</sub></italic><sub>+1</sub> falls outside the larger circle, we denote this as an error, since the system would have failed to deliver a position estimate within the AAU.</p>
        <p>This approach requires a means to estimate the uncertainty bound (shown as a dashed circle) at any given time. Since we do not know how fast or in what direction are the nodes moving, the simplest model is to assume a certain maximum speed and grow the estimated uncertainty linearly with time. When it approaches the AAU, taking into account the GPS’s lock time, we turn on the GPS. If the node’s speed exceeds our assumption, it could end up at the point marked in red when the GPS obtains a fix. This paper uses the dynamic speed model, which updates the assumed speed of a node every time it obtains a GPS lock [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>].</p>
        <p>GPS lock can take several seconds, during which the module obtains an initial lock with a relatively high <italic>U<sub>gps</sub></italic>, and then exponentially decreases its uncertainty as it receives more signals from visible satellites [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>]. Keeping the module on for longer yields higher position accuracy, but it incurs heavy energy cost. With the GPS duty cycling algorithm, a target GPS uncertainty can be set so that the total off time of the module (considering both the time spent obtaining lock and the time waiting for the algorithm uncertainty to grow) is minimised. Through offline calculations on the model in [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>], we determine this target GPS uncertainty to be 13 m for an AAU of 50 m. We use these settings for the rest of this paper for more aggressive GPS duty cycling. </p>
		<fig id="jsan-01-00183-f001" position="anchor">
          <label>Figure 1</label>
          <caption>
            <p>The growing uncertainty (dashed circle) and the maximum uncertainty bound (solid circle).</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g001.tif"/>
        </fig>
        
        <p>Alongside GPS duty cycling, nodes use radio beacons to provide local position references. The beacons also include the sending node’s uncertainty. Whenever a node receives a beacon from a neighbour with a lower uncertainty, it adopts the position estimate of that neighbour and reduces its uncertainty according to its estimated distance from the neighbour. In order to receive radio messages, nodes use a low-power listening mechanism [<xref ref-type="bibr" rid="B6-jsan-01-00183">6</xref>]. Low power listening keep nodes’ radios in low-power sleep states for most of the time. The radio periodically wakes up for a short channel check assessment (CCA) time to check if there are any upcoming packet transmissions for this node. If so, the radio remains on to receive those packets. Otherwise, it goes back into sleep state. We use the same low-power listening approach for all radio beacons in this paper.</p>
      </sec>
    </sec>
    <sec id="sec4-jsan-01-00183">
      <title>4. Individual Duty Cycling</title>
      <p>In this section, we propose an algorithm for duty cycling of GPS and motion modules using data available locally on a sensor node. We first show that significant energy savings can be achieved if the motion sensing units are heavily duty cycled. We then model the behaviour of a tracked object stochastically as a Markov process. We assume that the object can be characterised by a set of discrete states and changes its state according to a set of fixed transition probabilities. The values of the probabilities heavily depend on contextual information. We assume they can be determined a priori or learned over the lifetime of the tracking system.</p>
      <p>We use empirical data traces from 30 cow collar nodes collected continuously at 1 Hz over 2 days from a herd at the Belmont Research Station in central Queensland, in order to understand the performance of our algorithms on the basis of the behaviour of the tracked animals. We define a stationary and a motion state and study probabilities of transitioning between them. Given these probabilities, we find optimal values to sample motion sensors and update uncertainty of the location estimates.</p>
      <sec>
        <title>4.1. Accelerometer Energy Consumption</title>
        <p>While the earlier work focused on bounding the location uncertainty by growing it linearly over time according to an assumed speed [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>], accelerometers enable nodes to keep their uncertainty constant over long periods and thus reduce the duty cycle of the node’s MCU and GPS units. However, simply including an always-on accelerometer within the node is not energy-efficient, particularly for modules with heading and tilt compensation.</p>
        <p><xref ref-type="table" rid="jsan-01-00183-t001">Table 1</xref> shows the power consumption of the various node components in both active and sleep modes. Our earlier work had shown that GPS Duty cycling with radio proximity can achieve a combined power consumption for the GPS, radio, and MCU around 22 mW. In comparison, the inertial module would consume 18 mW if it remains in active mode all of the time, representing an 82% increase in overall power consumption for the node. While we expect the inclusion of the inertial module to reduce the duty cycles and energy consumption of the other node modules, any energy savings are likely to be outweighed by the increased energy consumption for powering the inertial module. Therein lies the need for aggressive duty cycling of the inertial module. The following sections explore the extent to which individual accelerometer duty cycling can improve the previous GPS/radio ranging strategy. </p>
        <table-wrap id="jsan-01-00183-t001" position="float">
          <object-id pub-id-type="pii">jsan-01-00183-t001_Table 1</object-id>
          <label>Table 1</label>
          <caption>
            <p>Active and sleep mode power consumption for node components. </p>
          </caption>
          <table>
            <thead>
              <tr>
                <th align="left" valign="middle">Component </th>
                <th align="center" valign="middle">Active Mode Power (mW) </th>
                <th align="center" valign="middle">Sleep Mode Power (mW)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" valign="middle">MCU </td>
                <td align="center" valign="middle"> 18 </td>
                <td align="center" valign="middle"> 1.2</td>
              </tr>
              <tr>
                <td align="left" valign="middle">Radio (TX) </td>
                <td align="center" valign="middle">79.2</td>
                <td align="center" valign="middle">0.00825</td>
              </tr>
              <tr>
                <td align="left" valign="middle">Radio (RX) </td>
                <td align="center" valign="middle">29.7</td>
                <td align="center" valign="middle">0.00825</td>
              </tr>
              <tr>
                <td align="left" valign="middle">GPS </td>
                <td align="center" valign="middle"> 165</td>
                <td align="center" valign="middle">0.215</td>
              </tr>
              <tr>
                <td align="left" valign="middle">Accelerometer</td>
                <td align="center" valign="middle">18</td>
                <td align="center" valign="middle">0</td>
              </tr>
            </tbody>
          </table>
		  </table-wrap>
      </sec>
      <sec>
        <title>4.2. Duty Cycling Algorithm</title>
        <p>This strategy enables nodes to set their accelerometer duty cycle independently of any neighbours. The individual duty cycling approach follows a state-based approach with two states: motion state <italic>St<sub>M</sub></italic> and stationary state <italic>St<sub>S</sub></italic>. The node uses the accelerometer to detect motion and defines <italic>St<sub>M</sub></italic> state for speeds above threshold <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i006.tif"/> and <italic>St<sub>S</sub></italic> for speeds lower than the threshold. The individual duty cycling algorithm is shown in <xref ref-type="fig" rid="jsan-01-00183-f002">Figure 2</xref>, while <xref ref-type="fig" rid="jsan-01-00183-f003">Figure 3</xref> shows a typical duty cycling scenario.</p>
        <fig id="jsan-01-00183-f002" position="anchor">
          <label>Figure 2</label>
          <caption>
            <p>Accelerometer Individual Duty Cycling Strategy.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g002.tif"/>
        </fig>
        <fig id="jsan-01-00183-f003" position="anchor">
          <label>Figure 3</label>
          <caption>
            <p>Accelerometer Duty Cycling: showing a timeline of actual motion events, algorithm state, and the active/sleep periods of the accelerometer.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g003.tif"/>
        </fig>
        <sec>
          <title>4.2.1. Travel and Resting Times</title>
          <p>We duty cycle the accelerometer in both the motion and the stationary states. A key consideration in accelerometer duty cycling is the length of the off periods between subsequent accelerometer sampling periods. The lengths of the off periods for the accelerometer are based on two parameters: the minimum time <italic>T<sub>M</sub></italic> that a node is moving and the minimum time <italic>T<sub>S</sub></italic> that a node is stationary. Since a node is moving for at least <italic>T<sub>M</sub></italic> seconds, a duty cycled accelerometer will detect motion if it turns on once every <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i014.tif"/> seconds in <italic>St<sub>S</sub></italic>, where <italic>ε</italic> is a positive small number. Similarly, the accelerometer will detect a node being stationary if it turns on once every <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i009.tif"/> seconds in the motion state <italic>St<sub>M</sub></italic>.</p>
        </sec>
        <sec>
          <title>4.2.2. Uncertainty Estimation</title>
          <p>Transitions between motion and stationary states are triggered by the node speed falling below or above the threshold <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i006.tif"/>. To avoid spurious state transitions, we require the accelerometer to detect motion or non-motion for the duration of at least <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i010.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i011.tif"/> seconds, respectively. The accelerometer detects motion or non-motion by checking the amplitude of its measured signal with a predefined threshold. Nodes increase their uncertainty in both states. In the stationary state, we increase uncertainty assuming that a node is moving at a slow <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i012.tif"/> speed. This allows us to account for slow movement events such as cattle feeding, where a node moves slower than the threshold <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i006.tif"/> for extended periods of time. On the other hand, in the motion state <italic>St<sub>M</sub></italic>, nodes update their uncertainty using their current speed estimate <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i013.tif"/>. Finally, a node also updates its uncertainty when transitioning to the <italic>St<sub>M</sub></italic> state: </p>
          <disp-formula id="jsan-01-00183-i004">
		<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i004.tif"/>
		</disp-formula>

          <p>where <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i015.tif"/> is the current speed estimate and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i016.tif"/> is proportional to the minimum travel time <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/>. <italic>λ</italic> is a constant between 0 and 1. For a conservative uncertainty estimate, the node sets <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i018.tif"/>, assuming the worst case scenario that the node missed the first <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/> seconds of the motion event. A less conservative approach is to increase its uncertainty by <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i019.tif"/>, as the length of time that has already passed for the motion event is a uniformly distributed value between 0 and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/>.</p>
        </sec>
        <sec>
          <title>4.2.3. Duty Cycle Setting</title>
          <p>When the uncertainty grows close to AAU, a node powers on its GPS module. When the GPS locks in, the node powers off the GPS module and turns on the accelerometer for the motion detection. As <xref ref-type="fig" rid="jsan-01-00183-f002">Figure 2</xref> shows, the uncertainty U is also updated to the GPS module uncertainty when the GPS module gets a lock.</p>
          <p>When the node is in the <italic>St<sub>M</sub></italic> state with its GPS off, it duty cycles its accelerometer with duty cycle <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i020.tif"/> as long as motion continues and increases uncertainty accordingly. Every time instant that it increases its uncertainty, the node checks whether the uncertainty has reached a critical threshold by calling the Check_GPS() function (see <xref ref-type="fig" rid="jsan-01-00183-f004">Figure 4</xref>). If so, the node activates its GPS module to start the GPS lock process and powers off its accelerometer.</p>
          <fig id="jsan-01-00183-f004" position="anchor">
            <label>Figure 4</label>
            <caption>
              <p>The Check_GPS() function.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g004.tif"/>
          </fig>
          <p>If the node’s accelerometer detects that it has stopped moving, the node moves back to the <italic>St<sub>S</sub></italic> state, where it increases its uncertainty at a slower rate and reduces the accelerometer duty cycle to <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i021.tif"/>. The function Set_Acc_DC() (see <xref ref-type="fig" rid="jsan-01-00183-f005">Figure 5</xref>) determines the suitable off time for the accelerometer for both motion and stationary states. This will depend on the current value of the node’s uncertainty. Note that a node must power on its GPS module at least <italic>t<sub>L</sub></italic> seconds prior to its uncertainty reaching AAU, in order to account for the uncertainty growth during the GPS lock process. If a node’s uncertainty is much lower than this bound, then it can set its sleep time to <italic>T<sub>A</sub></italic>. However, if a node that is duty cycling its accelerometer detects motion when its uncertainty is slightly below or exactly AAU-<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i022.tif"/>, then it must increase its uncertainty by <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i023.tif"/>, resulting in an uncertainty of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i024.tif"/>. Even if the node powers on its GPS module at this instant, it is likely to have an uncertainty that exceeds AAU by the time it gets GPS lock. To avoid this situation, a node checks whether its uncertainty is greater than <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i025.tif"/>. If so, the node anticipates that it may have to incorporate a step increase in its uncertainty when it detects motion, so it sets an instantaneous value of <italic>T<sub>A</sub></italic> to ensure that it will power on its GPS module at the right time: </p>
          <disp-formula id="jsan-01-00183-i005">
		<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i005.tif"/>
		</disp-formula>
          <p>The value of <italic>τ</italic> is then simply computed as <italic>λT<sub>A</sub></italic>.</p>
		  <fig id="jsan-01-00183-f005" position="anchor">
            <label>Figure 5</label>
            <caption>
              <p>The Set_Acc_DC() function.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g005.tif"/>
          </fig>
          
          <p>The individual duty cycling algorithm uses periodic radio beaconing, in order to quickly correct large uncertainty increases that result from short-term motion events (see <xref ref-type="fig" rid="jsan-01-00183-f006">Figure 6</xref> for an example). Periodic beaconing incurs a radio energy overhead over event-based beaconing [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>], but our results in this paper show that the energy savings with this algorithm outweigh the periodic beaconing overhead.</p>
          <fig id="jsan-01-00183-f006" position="anchor">
            <label>Figure 6</label>
            <caption>
              <p>The growth of uncertainty with accelerometer duty cycling. The narrow peaks correspond to accelerometer motion detection.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g006.tif"/>
          </fig>
        </sec>
      </sec>
      <sec>
        <title>4.3. Example</title>
        <p>We augment the python simulator in [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>] with the accelerometer duty cycling algorithm and energy model to evaluate their performance with our empirical cattle GPS data trace. <xref ref-type="fig" rid="jsan-01-00183-f006">Figure 6</xref> shows a trace of the uncertainty growth for 3 nodes from our empirical cattle dataset. The trace uses solid lines to indicate the algorithm uncertainty and dashed lines to indicate the true error for each node. At the start of the trace, all three nodes are growing their uncertainty linearly according to <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i012.tif"/>, after having logged contact with a common neighbour 104, whose trace is not shown here. All of the narrow peaks in the trace indicate a node detecting motion after sampling its accelerometer, and adding a step increase to its uncertainty. The reason that the uncertainty drops back again is that the node mobility is transient and the nodes receive periodic contact beacons from neighbours that have a lower uncertainty shortly thereafter, which enables the nodes to lower their own uncertainty. It is specifically for this reason that the individual duty cycling algorithm has to use periodic radio beaconing (rather than event-based beaconing), in order to avoid premature GPS locks due to short-lived motion events.</p>
        <p>Interesting situations arise at times 400 and 1,500. At 400 s, nodes 299 and 337 both detect motion independently, but in this case, they cannot lower their uncertainty after they leave the motion state because they do not receive any contact beacons with sufficiently low uncertainty. This situation persists until a neighbour acquires GPS lock, which enables all three nodes in the trace to lower their uncertainty by logging contact with that neighbour. At time 1,500, node 337 first detects brief motion, which causes a spike in its uncertainty. Once its accelerometer detects that it has stopped moving, it returns to a slow linear increase in uncertainty thanks to contact logs with node 299. A similar pattern occurs at node 103 about 100 s later. After that, node 299 detects that it is moving, and adds a step increase to its uncertainty. Note that the actual position error remains within the uncertainty at all times.</p>
      </sec>
      <sec>
        <title>4.4. Parameter Settings and Tradeoffs</title>
        <p>We focus on two performance parameters: energy consumption and localization error of the duty-cycled algorithm. Specifically, we would like to minimise the energy consumption of each node while keeping the localization error within a maximum uncertainty AAU and the error rate σ within an error tolerance σ<sup>*</sup> of 5%, because the animal scientists who are interested in the tracking data can accept a 95% success rate for the algorithm. If the duty cycle is low, we save more energy but increase the latency of motion detection, which can compromise the AAU uncertainty bound. All references to AAU error refer to the percentage of instances that the tracking algorithm exceeds the user-set maximum error.</p>
        <sec>
          <title>4.4.1. Stationary State</title>
          <p> We are interested in two main parameters in the stationary state. The minimum travel time allows us to set accelerometer duty cycle while making sure that we detect the majority of the motion events.</p>
          <p>We use our cattle dataset, which contains GPS traces at 1 Hz for 35 nodes over two days, to determine its minimum travel duration. We define a speed threshold <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i006.tif"/> of 0.4 m/s, above which nodes are considered to be in a motion state [<xref ref-type="bibr" rid="B21-jsan-01-00183">21</xref>]. <xref ref-type="fig" rid="jsan-01-00183-f007">Figure 7</xref> shows the cumulative distribution function of all movement states in the cattle trace, revealing that almost all movements persist for at least 5 s.</p>
          <fig id="jsan-01-00183-f007" position="anchor">
            <label>Figure 7</label>
            <caption>
              <p>The cumulative distribution function of movement durations for a speed threshold of 0.4 m/s. The minimum movement duration is around 5 s. </p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g007.tif"/>
          </fig>
          <p>We run simulations of our duty cycling strategy on the cattle data trace with varying <italic>T<sub>M</sub></italic>. <xref ref-type="fig" rid="jsan-01-00183-f008">Figure 8</xref> shows the energy consumption and error rates for the different <italic>T<sub>M</sub></italic> values. The minimum travel time setting can clearly deliver a range of positioning accuracies (between 92% and 99%) while trading off energy consumption. Because our target application has an error tolerance of 5%, we set a minimum travel time <italic>T<sub>M</sub></italic> of 30 s as the most energy-efficient choice, with a power consumption around 8 mW. </p>
          <fig id="jsan-01-00183-f008" position="anchor">
            <label>Figure 8</label>
            <caption>
              <p>The impact of varying <italic>T<sub>M </sub></italic> on node energy consumption and error rates. The AAU error rate refers to the errors observed in the online algorithm, while the error rate refers to all the errors based on ground truth positions. </p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g008.tif"/>
          </fig>
          <p><xref ref-type="fig" rid="jsan-01-00183-f009">Figure 9</xref> sheds more light on the sharp increase in error rates beyond 30 s. Short-term movements below 30 s in duration typically occur at relatively low speeds between 0.4 and 1 m/s. In contrast, the nodes move at speed regularly exceeding 1 m/s for longer term movements. Keeping the accelerometer off for a duration within 30 s thus strikes a suitable balance between energy efficiency and a tolerable increase in position uncertainty. We select <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/> as 30 s for the remainder of the paper.</p>
          <fig id="jsan-01-00183-f009" position="anchor">
            <label>Figure 9</label>
            <caption>
              <p>Mean speed as a function of travel time. Movement of duration shorter than 30 s occurs with lower speeds, which limits the increase of position errors when <italic>T<sub>M</sub></italic> is within 30 s. </p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g009.tif"/>
          </fig>
          <p>While the algorithm is in stationary mode, we enforce a slow increase in uncertainty to account for slow movements of the nodes that are below the speed threshold. The rate of uncertainty increase is highly specific to the mobility features of the tracked entities. <xref ref-type="fig" rid="jsan-01-00183-f010">Figure 10</xref> illustrates the distribution of the movement distance of all nodes in the cattle dataset over a 10 s time window. The results show that the majority of slow movements occur at a rate of less than 1 m per 10 s, or less than 0.1 m/s.</p>
          <fig id="jsan-01-00183-f010" position="anchor">
            <label>Figure 10</label>
            <caption>
              <p>Distribution of travelled distance in a 10 s time window by all nodes in stationary mode. </p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g010.tif"/>
          </fig>
          <p>The impact of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i012.tif"/> is shown in <xref ref-type="fig" rid="jsan-01-00183-f011">Figure 11</xref>. The X-axis shows the uncertainty increase in meters for every 10 s interval, so a value of 0.1 m corresponds to an assumed stationary speed <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i012.tif"/> of 0.01 m/s. The results show that a value of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i012.tif"/> of 0.04 m/s provides the most energy-efficient configuration within the 5% error tolerance of our application.</p>
          <fig id="jsan-01-00183-f011" position="anchor">
            <label>Figure 11</label>
            <caption>
              <p>The effect of varying <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i012.tif"/>. Lower values reduce the GPS duty cycle, as the uncertainty reaches AAU less often, yet increase the error rate. Higher <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i012.tif"/> deliver a 66% decrease in positioning errors at a slightly higher power consumption for added GPS locks.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g011.tif"/>
          </fig>
        </sec>
        <sec>
          <title>4.4.2. Motion State</title>
          <p>The two main parameters of interest in the motion state are the length of the minimum rest time <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i026.tif"/> and the accuracy of the accelerometer in detecting the stationary state.</p>
          <p>While in the motion state, the node duty cycles its accelerometer by checking for motion every <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i026.tif"/> to check if the node has transitioned into the stationary state. <xref ref-type="fig" rid="jsan-01-00183-f012">Figure 12</xref> shows the performance of our duty cycling strategy for different values of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i026.tif"/>. The results show that a minimum stationary time of 10 s yields the best trade-off within the 5% error tolerance. An unexpected result is that duty cycling the accelerometer in the motion state almost always provides fewer positioning errors relative to keeping the accelerometer always on while in this state. This stems from the noisy outputs of the accelerometer. If it remains on in motion state, it is more susceptible to jittery effects that point to false motion, which results in the accelerometer remaining in the motion state for longer. By switching off for a few seconds, the accelerometer achieves a form of temporal sampling diversity, so that the next sample is less correlated with the current sample, which helps to more accurately capture the true state of the device.</p>
          <fig id="jsan-01-00183-f012" position="anchor">
            <label>Figure 12</label>
            <caption>
              <p>The effect of varying the minimum stationary time <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i026.tif"/>. A 10 s off-time for the accelerometer yields the lowest error rates and power consumption.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g012.tif"/>
          </fig>
          <p>Another consideration is the length of time that a node in motion state checks its accelerometer for detecting a switch to stationary state <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i011.tif"/>. <xref ref-type="fig" rid="jsan-01-00183-f013">Figure 13</xref> shows that longer check times are more robust to transient noisy readings due to their time averaging feature. However, a 1 s check for non-motion is sufficient to deliver our application error tolerance and provides the best energy consumption.</p>
          </sec>
      </sec>
      <sec>
        <title>4.5. Summary</title>
        <p>In this section, we have introduced and evaluated an algorithm for duty cycling the accelerometer module on a mobile node based on local information only. We have also explored the design space for this algorithm and established the suitable parameter settings for our target scenario of energy efficient localisation within an error tolerance of 5%. The next section will use this configuration to propose group based duty cycling of accelerometers. </p>
		<fig id="jsan-01-00183-f013" position="anchor">
            <label>Figure 13</label>
            <caption>
              <p>The effect of varying the accelerometer check time <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i011.tif"/>. A longer check time yields more accurate results as it reduces the effects of noise. </p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g013.tif"/>
          </fig>
        
      </sec>
    </sec>
    <sec id="sec5-jsan-01-00183">
      <title>5. Collaborative Localisation</title>
      <p>The key idea of our collaborative localisation method is that groups of nodes that are known to cluster together can share the burden of motion detection. When operating individually, nodes use their motion detection modules to detect motion events and trigger the GPS module to activate. While nodes can cooperate through periodic contact logging, they set their accelerometer duty cycles individually.</p>
      <p>In collaborative localisation, nodes can significantly reduce their motion module duty cycle proportionally to the size of the group. To achieve this, each node keeps track of its neighbourhood through periodic contact beacons of period (P), maintaining a neighbour table that maps each neighbour’s ID to its probability of contact with the local node over a recent time window of length (T) seconds. Each node considers all neighbours that have been regularly in close contact with it (nodes whose probability of contact is higher than a given proximity threshold) to be part of the same group or community. Once nodes know their group membership and size, it is highly likely that the decision by one node to move will be highly correlated with the movement decisions of other nodes in the same group. For a group of <italic>G</italic> nodes, each node can set its duty cycle to <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i027.tif"/>. In other words, nodes in group <italic>G</italic> can reduce their duty cycle by a factor of the group size | <italic>G</italic> |.</p>
      <sec>
        <title>5.1. Characterising Clusters</title>
        <p>The utility of collaborative localisation depends highly on the clustering dynamics of the monitored individuals. Individuals whose movement is tightly coupled will benefit more from collaborative localisation than individuals that move independently of others. This paper defines clusters according to spatial proximity: nodes that are within a certain distance <italic>R</italic> of each other for at least <italic>T</italic> seconds are part of the same cluster. Naturally, clusters vary over time depending on the movement of the constituent individuals.</p>
        <p>We define a boolean instantaneous proximity function: </p>
        <disp-formula id="jsan-01-00183-i002">
		<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i002.tif"/>
		<label>(2)</label>
		</disp-formula>

        <p>Instantaneous proximity estimates can be highly noisy due to signal variations and for nodes at the boundary of the proximity radius. Localisation estimates, particularly those based on GPS, can be noisy and unreliable for single samples, and they tend to be more reliable when taken over several samples. These variations emphasise the need for capturing proximity over a time window rather than a single sample. Extending <italic>γ</italic> for a time window of <italic>n</italic> discrete time samples <italic>T</italic> = <italic>T</italic><sub>1</sub>…<italic>T</italic><sub>n</sub> yields: </p>
        <disp-formula id="jsan-01-00183-i003">
		<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i003.tif"/>
		<label>(3)</label>
		</disp-formula>

        <p>This function returns a value between 0 and 1 that represents the proportion of samples in window <italic>T</italic> during which nodes <italic>N<sub>i</sub></italic> and <italic>N<sub>j</sub></italic> are within the proximity radius <italic>R</italic>. A proximity of 1 over a time window means that the two nodes have been within a radius <italic>R</italic> for the whole duration of the time window. Similarly, a <italic>γ<sub>T</sub></italic> of 0 means that the nodes are beyond the proximity radius for the whole duration of the time window.</p>
        <p>The selections of <italic>R</italic>, <italic>T</italic> and the minimum threshold <italic>γ<sub>T</sub></italic> that governs cluster membership clearly have a direct impact on proximity. Larger proximity radii deliver large cluster memberships, while larger time windows and threshold <italic>γ<sub>T</sub></italic> provide more stable clusters. Both of these effects are desirable for collaborative localisation. However, both of these values involve inherent trade-offs. Using excessively high proximity radii for collaborative localisation means that nodes have to rely on cluster members that are farther away, which reduces the localisation accuracy. Similarly, time windows that are too long or <italic>γ<sub>T</sub></italic> thresholds that are too high can lead to smaller clusters because of their proximity requirement for a longer duration, which reduces the benefits of collaborative localisation.</p>
        <p>We now explore these effects on our cattle dataset. In order to clearly separate transient and strong proximity, we are seeking proximity distributions that are well segmented. To that end, we run 16 analysis scenarios evaluating a range of values for the proximity radius <italic>R</italic> = 5, 10, 20, 30 m and for the time window length <italic>T</italic> = 5, 10, 30, 60 min. Each scenario runs through the entire datasets and determines the pairwise node proximity values for the given <italic>R</italic> and <italic>T</italic> settings.</p>
        <p><xref ref-type="fig" rid="jsan-01-00183-f014">Figure 14</xref> shows the results of each of the radius threshold and time window value. Each row corresponds to one setting of the proximity radius <italic>R</italic> and each column corresponds to one setting of the time window. Each plot in the figure shows the histogram of <italic>γ<sub>T</sub></italic> values for the corresponding values of <italic>R</italic> and <italic>T</italic>.</p>
        <p>As expected, a large proximity radius (20–30 m) and a short time window (5–10 min) provide the best segmentation. These settings also provide a high proportion of instances with very high proximity. At first glance, this is highly desirable. The following sections explore the effect of large proximity radii on collaborative localisation. </p>
		<fig id="jsan-01-00183-f014" position="anchor">
          <label>Figure 14</label>
          <caption>
            <p>The joint impact of the proximity radius <italic>R</italic> and the time window <italic>T</italic>. </p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g014.tif"/>
        </fig>
        
      </sec>
      <sec>
        <title>5.2. Collaborative Duty Cycling</title>
        <p>The main concept of collaborative duty cycling is to share the burden of motion detection among a group of nodes whose movement appears closely interdependent. To detect a motion event while the group is in a stationary state, at least one of the nodes in the group must sample its accelerometer during the event. Because motion events persist for at least <italic>T<sub>M</sub></italic>, at least one node in the group must sample its accelerometer every <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/> seconds. With <italic>G</italic> nodes in the group, each node can power off its accelerometer for <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i028.tif"/> seconds. Note that we only rely on collaborative duty cycling in the stationary state. When nodes are in the motion state, they revert to individual duty cycling. <xref ref-type="fig" rid="jsan-01-00183-f015">Figure 15</xref> shows a typical motion detection time line with our group based duty cycling algorithm.</p>
        <p><xref ref-type="fig" rid="jsan-01-00183-f016">Figure 16</xref> illustrates how collaborative duty cycling of accelerometers works alongside GPS duty cycling. All nodes send periodic radio beacons that contain their uncertainty and current number of neighbours, with period <italic>T<sub>R</sub></italic>, to maintain neighbourhood state. Each node maintains a neighbourhood table where it stores the proportion of neighbour beacons received in the recent time window <italic>T</italic>. Periodic beacons also serve the purpose of limiting neighbour uncertainty, as in [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>]. Nodes that receive a beacon from a neighbour with a lower uncertainty can reduce their own uncertainty by using that neighbour as a reference.</p>
        <p>Whenever a node obtains position lock from GPS, it samples its accelerometer for <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i010.tif"/> seconds. If it detects no motion during that period, the node transitions into stationary state. At this point, the node determines its <italic>true neighbours</italic>, which are the nodes in its neighbourhood table for which the node has received at least <italic>δ</italic> beacons in the past <italic>T</italic> seconds. The <italic>δ</italic> parameter is a tunable proximity threshold that defines the degree of level of proximity that provides a suitable degree of confidence in neighbour movement correlation.</p>
		<fig id="jsan-01-00183-f015" position="anchor">
          <label>Figure 15</label>
          <caption>
            <p>Group-based Accelerometer Duty Cycling showing a timeline of actual motion events, algorithm state, and the active/sleep periods of the accelerometer for two nodes A and B. Initially, both nodes are in stationary state and their accelerometers are duty cycled with a period of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i029.tif"/>. Once node B detects motion, it sends a warning beacon to node A and switches to the motion state. When node A receives the warning beacon, it samples its accelerometer and detects that it is moving, so it also switches to its motion state. </p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g015.tif"/>
        </fig>
        
        <p>The node also considers the number of neighbours of all of its true neighbours (recall that each node embeds its number of true neighbours in periodic beacons) and selects <italic>G</italic> = <italic>min</italic>(<italic>G</italic>(<italic>N</italic>)), where <italic>G</italic>(<italic>N</italic>) is the number of true neighbours of neighbor <italic>N</italic>. This step is required to ensure consistency in accelerometer duty cycling among nodes in the same group, when some of the nodes belong to overlapping groups of nodes. The node can then set its own duty cycle locally as <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i030.tif"/>. The reasoning is that each of the node’s true neighbours will run the same local computation and set at least the same duty cycle (depending on their neighbours’ number of neighbours). Determining true neighbours and setting the collaborative accelerometer duty cycle repeats at every time step while the node is in stationary state to ensure adaptation to neighbourhood changes.</p>
        <p>Whenever any node samples its accelerometer and detects movement at a speed above <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i006.tif"/>, the node leaves the stationary state and broadcasts a <italic>warning</italic> beacon to all of its neighbours. All neighbours that receive the warning beacon sample their accelerometer immediately to determine if they too have started moving. If so, the neighbours also enter the motion state, and otherwise, they stay in the stationary state.</p>
        <p>Nodes that enter the motion state increase their uncertainty by <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i031.tif"/>, as in the individual duty cycling case. As long as their uncertainty has not reached the critical limit of <italic>AAU</italic> − <italic>t<sub>L</sub></italic>, they duty cycle their accelerometer less aggressively with an off time of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i026.tif"/> and update their uncertainty every time instance by <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i013.tif"/>. If the uncertainty reaches the critical limit, the node powers on its GPS for a new position estimate. If the node powers on its accelerometer before the uncertainty reaches the critical limit and detects no motion for at least <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i011.tif"/> seconds, it transitions back into stationary state.</p>
		<fig id="jsan-01-00183-f016" position="anchor">
          <label>Figure 16</label>
          <caption>
            <p>A flowchart of the group-based duty cycling strategy. The white and dark shaded blocks refer to the stationary and motion states respectively.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g016.tif"/>
        </fig>
        
      </sec>
      <sec>
        <title>5.3. Example</title>
        <p><xref ref-type="fig" rid="jsan-01-00183-f017">Figure 17</xref> shows a trace of the uncertainty growth for 3 nodes from our empirical cattle dataset. The trace uses solid lines to indicate the algorithm uncertainty and dashed lines to indicate the true error for each node. At the start of the trace, all three nodes are growing their uncertainty linearly according to <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i012.tif"/>, after having logged contact with a common neighbour 104, whose trace is not shown here. At around <italic>t</italic> = 200, node 103 detects motion through its accelerometer, which results in a step increase in its uncertainty. However, in the following time instance, node 103 logs contact again with node 104 and reduces its uncertainty again. This happens again in the next cycle with a smaller peak, as node 103 has now switched to a shorter accelerometer duty cycle in motion state. After that, node 103 detects that it has stopped moving, and reverts to slow uncertainty increase. Nodes 337 and node 103 are in the same situation at t = 1,200, 1,250 respectively. At around t = 1,225, node 299 has a sharp increase in uncertainty before node 337 obtains GPS lock and lowers its uncertainty. This is a consequence of using the dynamic speed model with step increases in uncertainty upon motion detection. The last time node 299 got GPS lock, it had a speed of 0.8 m/s. It keeps this speed estimate until its next GPS lock. When it detects motion, it adds <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i032.tif"/> to its uncertainty, which causes this sharp rise. When node 337 obtains lock a few seconds later, this situation is rectified. Another node 394 (not shown here) is also nearby and obtains lock at nearly the same time. At around 1,450 s into the simulation, node 337 detects motion on its accelerometer and sends a warning beacon to its neighbours. Node 103 detects that it is also moving after sampling its accelerometer, while node 299 detects that it is not. Both nodes 103 and 337 add a step increase to their uncertainty after detecting motion. They shortly log contact with node 394 to reduce their uncertainty again. Note that the actual position error remains within the uncertainty at all times.</p>
        <fig id="jsan-01-00183-f017" position="anchor">
          <label>Figure 17</label>
          <caption>
            <p>The growth of uncertainty with collaborative duty cycling. There are fewer motion detection events with group duty cycling.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g017.tif"/>
        </fig>
      </sec>
      <sec>
        <title>5.4. Parameter Settings and Trade-offs</title>
        <p>The accuracy of partitioning nodes into groups that travel together critically influences both the power consumption and error rate metrics of the localisation algorithm. Nodes use their energy unnecessarily if triggered by a motion beacon when they are not moving. On the other hand, the localisation error rate grows when the nodes fail to update uncertainty bounds as a result of not receiving a motion beacon in the motion state.</p>
        <sec>
          <title>5.4.1. Group Radius</title>
          <p>We first explore the selection of the group radius and its effect on performance. We note here that real world deployments yield ranges that are directional as radio transmissions are severely attenuated by obstacles, such as animals’ bodies, or false positives when detecting animal movement. While this paper considers an idealised transmission radius for simplicity of analysis, the techniques presented here do not introduce additional error if our idealised assumptions are not true, but they rather decrease the performance benefits. Thus the worst case scenario is that the collaborative algorithms will have the same performance as for an individual animal not gaining any benefits from group localisation or motion detection. For example, if a node receives a warning beacon from a neighbour within <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/> time from the last time it checked its accelerometer, it simply ignores the beacon as it is already in motion state.</p>
          <p>The discussion above suggests that larger group radii are more favourable. However, larger radii implicitly limit the opportunity for GPS duty cycling. Whenever a node logs contact with a neighbour, it resets its uncertainty as the sum of the neighbour’s uncertainty and the proximity radius. A larger radius means that nodes will have higher uncertainty from neighbour encounters and will activate their GPS modules more often.</p>
          <p><xref ref-type="fig" rid="jsan-01-00183-f018">Figure 18</xref> shows the effects of varying the group radius on power consumption and localisation accuracy. A group radius of 20 m or more results in high error rates since warning beacons from any neighbours will immediately increase the local node’s uncertainty by at least 20 m, with a high likelihood of exceeding the AAU of 50 m. A shorter radius of 10 m has a higher power consumption, as fewer nodes are deemed as neighbours, but it bounds the error rate within 5%.</p>
          <fig id="jsan-01-00183-f018" position="anchor">
            <label>Figure 18</label>
            <caption>
              <p>Performance with different group radius. Benefits from group-based duty cycling decrease for smaller groups.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g018.tif"/>
          </fig>
        </sec>
        <sec>
          <title>5.4.2. Neighbour History</title>
          <p> We now turn our attention towards selecting the length of the time window for maintaining neighbour history. Shorter time windows can respond quickly to neighbourhood changes, while longer time windows favour stable group memberships. <xref ref-type="fig" rid="jsan-01-00183-f019">Figure 19</xref> shows the impact of the time window length on power and localisation errors. Longer time windows clearly provide more accurate positioning for group-based duty cycling at a minor increase in power consumption. These results may stem for the nature of our cattle dataset, where group changes occur on longer time scales. The slight increase in power consumption with longer time windows is a result of an increase in the accelerometer power consumption. Because longer time windows favour stable groups, they cause neighbours that are transiently close to a node to be excluded from the node’s group. This leads to smaller average group sizes for nodes, which results in a higher accelerometer duty cycle. </p>
          <fig id="jsan-01-00183-f019" position="anchor">
            <label>Figure 19</label>
            <caption>
              <p>Performance with different sizes of neighbour history buffer. A longer buffer size of 30 minutes helps establish stable groups.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g019.tif"/>
          </fig>
        </sec>
        <sec>
          <title>5.4.3. Proximity Threshold</title>
          <p>Having selected a group radius of 10 m and a neighbour history time window of 30 min, we refer back to <xref ref-type="fig" rid="jsan-01-00183-f014">Figure 14</xref>. In particular, our simulations point to the plot in the second row and the third column (<italic>R</italic> = 10 m and <italic>T</italic> = 30 min) of that figure. We seek to select the value of the proximity threshold <italic>δ</italic> that captures to classify true neighbours from transient ones. We are effectively aiming to draw a vertical line on the plot that separates these two classes of neighbours.</p>
		  <fig id="jsan-01-00183-f020" position="anchor">
            <label>Figure 20</label>
            <caption>
              <p>Performance with different proximity threshold settings.</p>
            </caption>
            <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g020.tif"/>
          </fig>
        
          <p>We evaluate four values for the proximity threshold between 80% and 95% in separate simulations. The resulting power consumption and error rates are shown in <xref ref-type="fig" rid="jsan-01-00183-f020">Figure 20</xref>. Higher thresholds improve error rates as they are more conservative in labelling useful neighbours. They also lead to smaller groups, which reduces the savings of group-based duty cycling. We select a threshold of 85% as the most energy efficient value that meets our application’s error tolerance of 5%.</p>
          </sec>
      </sec>
    </sec>
    <sec id="sec6-jsan-01-00183">
      <title>6. Performance Evaluation</title>
      <p>We use simulations based on the data that we empirically collected in cattle networks and evaluate performance of the individual and collaborative localisation techniques with respect to the previous GPS duty cycling algorithm and an always-on accelerometer triggering a duty cycled GPS. For the always-on accelerometer approach, we conservatively assume that the activation of the accelerometer does not contribute to an increase in the MCU duty cycle.</p>
      <p>Due to the extensive mobility of animals in our datasets, the performance of the group-based strategy provides relatively small benefits over the individual strategy. To further quantify the effect that the group-based duty cycling might have in other potential areas of application, we also evaluate the different strategies in low mobility scenarios observed during the night, when animals are resting.</p>
      <sec>
        <title>6.1. Individual <italic>vs.</italic> Collaborative Localisation</title>
        <p>We compare the performance of individual duty cycling, group-based duty cycling with 2 baseline scenarios: (1) an always-on accelerometer that triggers a duty cycled GPS to turn on when there is motion, where radio contact logging is used for local position sharing; and (2) the previous work on GPS duty cycling and radio proximity, with no accelerometer. We run two separate sets of simulations for these approaches with different travel times, in order to illustrate how performance can be tuned to favour energy or error rate. The algorithm with no motion accelerometer uses event-based beaconing, which had been established as the most effective approach in [<xref ref-type="bibr" rid="B5-jsan-01-00183">5</xref>], while all other algorithms use periodic beaconing, for reasons discussed in <xref ref-type="sec" rid="sec4-jsan-01-00183">Section 4</xref> and <xref ref-type="sec" rid="sec5-jsan-01-00183">Section 5</xref>.</p>
        <p><xref ref-type="fig" rid="jsan-01-00183-f021">Figure 21</xref> compares the results. Both flavours of our accelerometer duty cycling strategies reduce the power consumption by around 50% over the GPS duty cycling with radio ranging approach and 72% over the always-on accelerometer approach. This comes at the cost of an increased error rate that remains within our application’s 5% error tolerance. The higher error rate with accelerometer duty cycling is intuitive, as nodes slow down their uncertainty growth in stationary state until they detect movement. The bars for a travel time of 15 s show the performance of accelerometer duty cycling for applications with tighter accuracy constraints. This shorter <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/> only causes minor increases in power consumption (about 1 mW for individual duty cycling and less than 0.5 mW for collaborative), while reducing their error rates to 2% and 3.5% respectively. Group duty cycling saves about 10% in power consumption over individual duty cycling, as nodes can set longer accelerometer off time. This comes at an increase of 1.25% to the error rate, since the longer accelerometer off times increases the likelihood of missed motion events.</p>
        <fig id="jsan-01-00183-f021" position="anchor">
          <label>Figure 21</label>
          <caption>
            <p>Performance comparison of the three strategies over the entire dataset.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g021.tif"/>
        </fig>
        <p>Notably, the algorithm with no accelerometer consumes significantly higher energy for powering the GPS module and the MCU, while consuming less than half the energy for radio communication. The higher GPS power consumption is clearly because of the more frequent GPS fixes in the absence of accelerometer triggering. The MCU power consumption is also higher because the MCU has to remain active while the GPS is powered on (see <italic>overlap</italic> parameter in energy model). The radio power consumption is lower for this algorithm as it uses event-based beaconing, while both individual and group-based duty cycling use periodic beaconing. The results clearly show that the added cost of periodic beaconing is well worth the savings in GPS and MCU power consumption, which result from a significant decrease in the frequency of GPS fixes.</p>
        <p>While keeping the accelerometer always on to trigger GPS position locks does reduce GPS power consumption thanks to a reduced frequency of locks, it is the most energy-expensive option, as the accelerometer module consumes 18 mW to power up its tilt compensation and heading calculations in hardware. This algorithm also results in the best location accuracy, slightly outperforming the no-accelerometer algorithm due to more adaptive GPS locks.</p>
      </sec>
      <sec>
        <title>6.2. Mobility Dependencies</title>
        <p>This section examines the performance dependence of our duty cycling strategies on the degree of mobility.</p>
		<fig id="jsan-01-00183-f022" position="anchor">
          <label>Figure 22</label>
          <caption>
            <p>Power consumption and accuracy for the 3-hour interval in the data trace with the highest number of motion events. </p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g022.tif"/>
        </fig>
        
        <p>We first evaluate the effectiveness of our duty cycling strategies for highly mobile scenarios. We select the 3-hour time window from the data trace with the highest number of motion events, and we run each of the duty cycling strategies for all the nodes during that time window only. The results are shown in <xref ref-type="fig" rid="jsan-01-00183-f022">Figure 22</xref>. Both individual and group-based accelerometer duty cycling strategies reduce the power consumption relative to GPS duty cycling with radio proximity (between 21% and 35% respectively) and relative to the always-on accelerometer (between 60% and 62% respectively), at the cost of increased error rates as they use accelerometer estimates to reduce reliance on GPS. Both approaches deliver comparable error rates with GPS duty cycling while delivering this energy benefit. For the group-based strategy, a 30 s <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/> caused the error rates to go above the error tolerance, so we show here the results for <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/> of 15 s and 25 s for that strategy. The individual accelerometer duty cycling approach outperforms the always-on approach, indicating that duty cycling the accelerometer can lead to fewer false positives in detecting transient motion.</p>
        <fig id="jsan-01-00183-f023" position="anchor">
          <label>Figure 23</label>
          <caption>
            <p>Power consumption and accuracy for the 3-hour interval in the data trace with the fewest number of motion events.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-g023.tif"/>
        </fig>
     
		<p>Next, we explore the case of rare movement events. We select the 3-hour time window from the data trace with the least number of motion events, and we run each of the duty cycling strategies for the all the nodes during that time window only. The results are shown in <xref ref-type="fig" rid="jsan-01-00183-f023">Figure 23</xref>. Both individual and group-based accelerometer duty cycling strategies significantly outperform GPS duty cycling with radio proximity (50%–65%) and the always-on accelerometer (65%–78%) in terms of power consumption, with a modest increase in error rates that remains well within the application-specific limit of 5%. The group-based approach delivers a further 20% improvement in power consumption over individual duty cycling, as the nodes that share the accelerometer sampling burden get to spend a longer time in off mode. Interestingly, a <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="jsan-01-00183-i017.tif"/> of 30 s yields the best results for low mobility, as it is less likely to miss motion events during the longer accelerometer sleep time. GPS duty cycling with radio ranging delivers the highest accuracy, outperforming the always-on accelerometer. All versions of accelerometer duty cycling exhibit slight reductions in accuracy, while staying well within the 5% error tolerance.</p>
         </sec>
      <sec>
        <title>6.3. Summary</title>
        <p>The results in this section have shown that while both flavours of accelerometer duty cycling improve the power consumption over previous work, sharing the burden of duty cycling among members of a group is beneficial primarily in situations where the expected likelihood of motion is relatively low. When that is not the case, performance of the two approaches is comparable with a slight improvement in error rate for the individual approach.</p>
      </sec>
    </sec>
    <sec sec-type="discussion" id="sec7-jsan-01-00183">
      <title>7. Discussion</title>
      <sec>
        <title>7.1. Mobility Pattern Adaptation</title>
        <p>The results have shown that individual accelerometer duty cycling performs better during high activity time windows, and that collaborative localisation performs better during low activity time windows. This effect stems from the highly deterministic and synchronous nature of individual duty cycling. For the same reason that synchronous MAC protocols perform better with high traffic scenarios, individual duty cycling is well-suited for situations where the likelihood of a motion event is high. The reason that it outperforms collaborative duty cycling in this situation is that the latter distributes the burden of activity check across multiple neighbours, some of which may leave the group during critical times.</p>
        <p>Through similar reasoning, collaborative duty cycling performs well under low activity scenarios as the dynamic nature of moving nodes adds a randomisation effect to the sample schedules. This randomisation is beneficial for detection of motion events in the group, whose distribution in non-deterministic.</p>
        <p>An interesting extension of our work is to enable nodes to adapt their accelerometer duty cycling strategy based on their observed motion levels. When the frequency of motion events exceeds a certain threshold, nodes switch to individual duty cycling. When activity slows down, they can revert to collaborative duty cycling. The results in <xref ref-type="fig" rid="jsan-01-00183-f022">Figure 22</xref> and <xref ref-type="fig" rid="jsan-01-00183-f023">Figure 23</xref> suggest that additional savings can be achieved by actively enforcing this strategy.</p>
      </sec>
      <sec>
        <title>7.2. Group Overlaps</title>
        <p>The group structure across a dynamic topology of mobile nodes will almost certainly lead to asymmetric views of groups among nodes. For instance, a node A may have ten neighbours, nine of which are tightly connected and have a consistent view of their group. These neighbours can simply set an accelerometer duty cycle at one-tenth of their individual duty cycle. Node A’s tenth neighbour, node B, only sees node A as its neighbour, because it is further away from the other nodes in the group. As a result, node B sets its duty cycle at 50% of its individual duty cycle. Node A will also set its duty cycle to 50% of the individual duty cycle, thanks to the <italic>min</italic>(<italic>G</italic>(<italic>N</italic>)) operation through which it can accommodate its least connected neighbour. This approach also holds true in the case of multiple group overlaps.</p>
      </sec>
      <sec>
        <title>7.3. Desynchronisation</title>
        <p>Another issue is whether group members are implicitly synchronised through warning beacons, and whether this has an impact on the performance of our collaborative duty cycling strategy. A few features in our algorithms help avoid implicit synchronisation. Firstly, nodes notify neighbours when getting GPS lock, which avoids race conditions for this operation. Second, nodes in overlapping groups will check their accelerometers at different intervals, which contributes to desynchronisation. Additionally, the use of the dynamic speed model leads nodes to grow their uncertainties at different rates in motion states, helping to avoid implicit synchronisation. Finally, the specific individual movement or non-movement patterns also help desynchronisation of uncertainty growth. A node in a group that detects movement at one instance will trigger a warning beacon to neighbours. A subset of neighbours will switch to motion state if they are moving as well. This will cause desynchronisation among nodes in the moving subset and the rest of the group. At another point during the process, another subset of the group may similarly detect motion and shift their uncertainty growth away from the rest of the group.</p>
      </sec>
      <sec>
        <title>7.4. Advanced Mobility Models</title>
        <p>This paper has considered a simple mobility model for the animals consisting of a stationary and moving state. While this model can easily be generalised to other moving objects, more fine-grained modelling of the motion states can potentially yield improved accuracy and energy efficiency. In the case of cows, previous studies suggest that motion can be modelled using three [<xref ref-type="bibr" rid="B27-jsan-01-00183">27</xref>] or four states [<xref ref-type="bibr" rid="B28-jsan-01-00183">28</xref>]. The potential benefits of more fine-grained motion modelling should be weighed against the ability of motion detection modules to accurately distinguish between the states. This remains an open issue for future work.</p>
      </sec>
      <sec>
        <title>7.5. Empirical Validation</title>
        <p>The group based motion detection algorithms in this paper have used empirical data traces to explore the design space and establish the utility of this approach, particularly when the mobile entities move rarely. An interesting direction for future work would be to empirically test this approach in order to better quantify its benefits for real-time tracking. Empirical validation would require the use of cameras with targeted image processing algorithms for cattle tracking or through human observers for the duration of the experiment, which would limit the duration or spatial scale of the experiment. </p>
      </sec>
    </sec>
    <sec sec-type="conclusions" id="sec8-jsan-01-00183">
      <title>8. Conclusions</title>
      <p>This paper has presented accelerometer duty cycling strategies to save energy for localising mobile nodes with GPS and radio beaconing. We proposed both individual and collaborative duty cycling of accelerometer based on the mobility features of the nodes. We have shown through simulations on empirical cattle position data traces that the individual approach is well suited towards highly mobile nodes while the collaborative approach is better suited towards low mobility nodes. We expect that collaborative approaches that include and go beyond localisation will become increasingly relevant as mobile devices improve in density and capability.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <title>References</title>
      <ref id="B1-jsan-01-00183">
        <label>1.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Thorstensen</surname>
              <given-names>B.</given-names>
            </name>
            <name>
              <surname>Syversen</surname>
              <given-names>T.</given-names>
            </name>
            <name>
              <surname>Bjørnvold</surname>
              <given-names>T-A.</given-names>
            </name>
            <name>
              <surname>Walseth</surname>
              <given-names>T.</given-names>
            </name>
          </person-group>
          <article-title>Electronic Shepherd—A Low-Cost, Low-Bandwidth, Wireless Network System</article-title>
          <source>Proceedings of the 2nd International Conference on Mobile Systems, Applications, and Services (MobiSys’04)</source>
          <conf-loc>Boston, MA, USA</conf-loc>
          <conf-date>6–9 June 2004</conf-date>
        </citation>
      </ref>
      <ref id="B2-jsan-01-00183">
        <label>2.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Liu</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Zhang</surname>
              <given-names>Y.</given-names>
            </name>
            <name>
              <surname>Zhao</surname>
              <given-names>F.</given-names>
            </name>
          </person-group>
          <article-title>Robust Distributed Node Localization with Error Management</article-title>
          <source>Proceedings of the 7th ACM International Symposium on Mobile Ad Hoc Networking and Computing (MobiHoc ’06)</source>
          <conf-loc>Florence, Italy</conf-loc>
          <conf-date>22–25 May 2006</conf-date>
        </citation>
      </ref>
      <ref id="B3-jsan-01-00183">
        <label>3.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Ofstad</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Nicholas</surname>
              <given-names>E.</given-names>
            </name>
            <name>
              <surname>Szcodronski</surname>
              <given-names>R.</given-names>
            </name>
			<name>
              <surname>Choudhury</surname>
              <given-names>R.R.</given-names>
            </name>
          </person-group>
          <article-title>AAMPL: Accelerometer Augmented Mobile Phone Localization</article-title>
          <source>Proceedings of the First ACM International Workshop on Mobile Entity Localization and Tracking in GPS-Less Environments (MELT ’08)</source>
          <conf-loc>San Francisco, CA, USA</conf-loc>
          <conf-date>19 September 2008</conf-date>
          <fpage>13</fpage>
          <lpage>18</lpage>
        </citation>
      </ref>
      <ref id="B4-jsan-01-00183">
        <label>4.</label>
        <citation citation-type="book">
          <source>3-Axis Compass with Algorithms; HMC6343</source>
          <publisher-name>Honeywell</publisher-name>
          <publisher-loc>Plymouth, MN, USA</publisher-loc>
          <year>2008</year>
        </citation>
      </ref>
      <ref id="B5-jsan-01-00183">
        <label>5.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Jurdak</surname>
              <given-names>R.</given-names>
            </name>
            <name>
              <surname>Corke</surname>
              <given-names>P.</given-names>
            </name>
			<name>
              <surname>Dharman</surname>
              <given-names>D.</given-names>
            </name>
			<name>
              <surname>Salagnac</surname>
              <given-names>G.</given-names>
            </name>
          </person-group>
          <article-title>Adaptive GPS Duty Cycling and Radio Ranging for Energy-Efficient Localization</article-title>
          <source>Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems (SenSys ’10)</source>
          <conf-loc>Zurich, Switzerland</conf-loc>
          <conf-date>3–5 November 2010</conf-date>
          <fpage>57</fpage>
          <lpage>70</lpage>
        </citation>
      </ref>
      <ref id="B6-jsan-01-00183">
        <label>6.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Polastre</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Hill</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Culler</surname>
              <given-names>D.</given-names>
            </name>
          </person-group>
          <article-title>Versatile Low Power Media Access for Wireless Sensor Networks</article-title>
          <source>Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems (SenSys ’04)</source>
          <conf-loc>Baltimore, MD, USA</conf-loc>
          <conf-date>3–5 November 2004</conf-date>
          <fpage>95</fpage>
          <lpage>107</lpage>
        </citation>
      </ref>
      <ref id="B7-jsan-01-00183">
        <label>7.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Vukadinovic</surname>
              <given-names>V.</given-names>
            </name>
            <name>
              <surname>Mangold</surname>
              <given-names>S.</given-names>
            </name>
          </person-group>
          <article-title>Performance of Collaborative GPS Localization in Pedestrian <italic>Ad Hoc</italic> Networks</article-title>
          <source>Proceedings of the Third ACM International Workshop on Mobile Opportunistic Networks (MobiOpp ’12)</source>
          <conf-loc>Zurich, Switzerland</conf-loc>
          <conf-date>15–16 March 2012</conf-date>
          <fpage>45</fpage>
          <lpage>52</lpage>
        </citation>
      </ref>
      <ref id="B8-jsan-01-00183">
        <label>8.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Li</surname>
              <given-names>F.</given-names>
            </name>
            <name>
              <surname>Wu</surname>
              <given-names>J.</given-names>
            </name>
          </person-group>
          <article-title>MOPS: Providing Content-Based Service in Disruption-Tolerant Networks</article-title>
          <source>Proceedings of the 29th IEEE International Conference on Distributed Computing Systems</source>
          <conf-loc>Montreal, QC, Canada</conf-loc>
          <conf-date>22–26 June 2009</conf-date>
          <fpage>526</fpage>
          <lpage>533</lpage>
        </citation>
      </ref>
      <ref id="B9-jsan-01-00183">
        <label>9.</label>
        <citation citation-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Zhang</surname>
              <given-names>P.</given-names>
            </name>
            <name>
              <surname>Sadler</surname>
              <given-names>C.M.</given-names>
            </name>
            <name>
              <surname>Liu</surname>
              <given-names>T.</given-names>
            </name>
            <name>
              <surname>Fischhoff</surname>
              <given-names>I.</given-names>
            </name>
            <name>
              <surname>Martonosi</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Lyons</surname>
              <given-names>S.A.</given-names>
            </name>
            <name>
              <surname>Rubenstein</surname>
              <given-names>D.I.</given-names>
            </name>
          </person-group>
          <article-title>Habitat Monitoring with ZebraNet: Design and Experiences</article-title>
          <source>Wireless Sensor Networks: A Systems Perspective</source>
          <person-group person-group-type="editor">
            <name>
              <surname>Bulusu</surname>
              <given-names>N.</given-names>
            </name>
            <name>
              <surname>Jha</surname>
              <given-names>S.</given-names>
            </name>
          </person-group>
          <publisher-name>Artech House</publisher-name>
          <publisher-loc>Norwood, MA, USA</publisher-loc>
          <year>2005</year>
          <fpage>235</fpage>
          <lpage>257</lpage>
        </citation>
      </ref>
      <ref id="B10-jsan-01-00183">
        <label>10.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Butler</surname>
              <given-names>Z.</given-names>
            </name>
            <name>
              <surname>Corke</surname>
              <given-names>P.</given-names>
            </name>
            <name>
              <surname>Peterson</surname>
              <given-names>R.</given-names>
            </name>
            <name>
              <surname>Rus</surname>
              <given-names>D.</given-names>
            </name>
          </person-group>
          <article-title>Virtual Fences for Controlling Cows</article-title>
          <source>Proceedings International Conference Robotics and Automation</source>
          <conf-loc>New Orleans, LA, USA</conf-loc>
          <conf-date>26 April–1 May 2004</conf-date>
          <fpage>4429</fpage>
          <lpage>4436</lpage>
        </citation>
      </ref>
      <ref id="B11-jsan-01-00183">
        <label>11.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Xu</surname>
              <given-names>Y.</given-names>
            </name>
            <name>
              <surname>Winter</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Lee</surname>
              <given-names>W.-C.</given-names>
            </name>
          </person-group>
          <article-title>Prediction-Based Strategies for Energy Saving in Object Tracking Sensor Networks</article-title>
          <source>Proceedings of IEEE International Conference on Mobile Data Management</source>
          <conf-loc>Berkeley, CA, USA</conf-loc>
          <conf-date>19–22 January 2004</conf-date>
          <fpage>346</fpage>
          <lpage>357</lpage>
        </citation>
      </ref>
      <ref id="B12-jsan-01-00183">
        <label>12.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Tilak</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Kolar</surname>
              <given-names>V.</given-names>
            </name>
            <name>
              <surname>Abu-Ghazaleh</surname>
              <given-names>N.B.</given-names>
            </name>
            <name>
              <surname>Kang</surname>
              <given-names>K.D.</given-names>
            </name>
          </person-group>
          <article-title>Dynamic Localization Control for Mobile Sensor Networks</article-title>
          <source>Proceedings of 24th IEEE International Performance, Computing, and Communications Conference</source>
          <conf-loc>Phoenix, AZ, USA</conf-loc>
          <conf-date>7–9 April 2005</conf-date>
          <fpage>587</fpage>
          <lpage>592</lpage>
        </citation>
      </ref>
      <ref id="B13-jsan-01-00183">
        <label>13.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Pattern</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Poduri</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Krishnamachari</surname>
              <given-names>B.</given-names>
            </name>
          </person-group>
          <article-title>Energy-quality tradeoffs in sensor tracking: Selective activation with noisy measurements</article-title>
          <source>Proc. SPIE</source>
          <year>2003</year>
          <volume>5090</volume>
          <fpage>321</fpage>
          <lpage>329</lpage>
        </citation>
      </ref>
      <ref id="B14-jsan-01-00183">
        <label>14.</label>
        <citation citation-type="thesis">
          <person-group person-group-type="author">
            <name>
              <surname>You</surname>
              <given-names>C.W.</given-names>
            </name>
          </person-group>
          <article-title>Enabling Energy-Efficient Localization Services on Sensor Network Positioning Systems</article-title>
          <source>Ph.D. Thesis</source>
          <publisher-name>Department of Computer Science and Information Engineering, National Taiwan University</publisher-name>
          <publisher-loc>Taipei, Taiwan</publisher-loc>
          <month>January</month>
          <year>2008</year>
        </citation>
      </ref>
      <ref id="B15-jsan-01-00183">
        <label>15.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>You</surname>
              <given-names>C.-W.</given-names>
            </name>
            <name>
              <surname>Huang</surname>
              <given-names>P.</given-names>
            </name>
            <name>
              <surname>Chu</surname>
              <given-names>H.</given-names>
            </name>
            <name>
              <surname>Chen</surname>
              <given-names>Y.C.</given-names>
            </name>
            <name>
              <surname>Chiang</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Lau</surname>
              <given-names>S.</given-names>
            </name>
          </person-group>
          <article-title>Impact of sensor-enhanced mobility prediction on the design of energy-efficient localization</article-title>
          <source>Ad Hoc Netw.</source>
          <year>2008</year>
          <volume>6</volume>
          <fpage>1221</fpage>
          <lpage>1237</lpage>
          <pub-id pub-id-type="doi">10.1016/j.adhoc.2007.11.007</pub-id>
        </citation>
      </ref>
      <ref id="B16-jsan-01-00183">
        <label>16.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Kusy</surname>
              <given-names>B.</given-names>
            </name>
            <name>
              <surname>Sallai</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Balogh</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Ledeczi</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Protopopescu</surname>
              <given-names>V.</given-names>
            </name>
            <name>
              <surname>Tolliver</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>DeNap</surname>
              <given-names>F.</given-names>
            </name>
            <name>
              <surname>Parang</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <article-title>Radio Interferometric Tracking of Mobile Wireless Nodes</article-title>
          <source>Proceedings of the 5th International Conference on Mobile Systems, Applications and Services (MobiSys ’07)</source>
          <conf-loc>San Juan, Puerto Rica</conf-loc>
          <conf-date>11–14 June 2007</conf-date>
          <fpage>139</fpage>
          <lpage>151</lpage>
        </citation>
      </ref>
      <ref id="B17-jsan-01-00183">
        <label>17.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Chan</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Chiang</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Chen</surname>
              <given-names>Y.</given-names>
            </name>
            <name>
              <surname>Ke</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Hsu</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Chu</surname>
              <given-names>H.</given-names>
            </name>
          </person-group>
          <article-title>Collaborative Localization: Enhancing WiFi-Based Position Estimation with Neighborhood Links in Clusters</article-title>
          <source>Proceedings of 4th International Conference on Pervasive Computing (PERVASIVE’06)</source>
          <conf-loc>Dublin, Ireland</conf-loc>
          <conf-date>7–10 May 2006</conf-date>
          <fpage>50</fpage>
          <lpage>66</lpage>
        </citation>
      </ref>
      <ref id="B18-jsan-01-00183">
        <label>18.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Constandache</surname>
              <given-names>I.</given-names>
            </name>
            <name>
              <surname>Gaonkar</surname>
              <given-names>S.</given-names>
            </name>
			<name>
              <surname>Sayler</surname>
              <given-names>M.</given-names>
            </name>
			<name>
              <surname>Choudhury</surname>
              <given-names>R.R.</given-names>
            </name>
			<name>
              <surname>Cox</surname>
              <given-names>L.P.</given-names>
            </name>
          </person-group>
          <article-title>EnLoc: Energy-Efficient Localization for Mobile Phones</article-title>
          <source>Proceedings of IEEE INFOCOM</source>
          <conf-loc>Rio de Janeiro, Brazil</conf-loc>
          <conf-date>19–25 April 2009</conf-date>
          <fpage>2716</fpage>
          <lpage>2720</lpage>
        </citation>
      </ref>
      <ref id="B19-jsan-01-00183">
        <label>19.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Paek</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Kim</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Govindan</surname>
              <given-names>R.</given-names>
            </name>
          </person-group>
          <article-title>Energy-efficient Rate-Adaptive GPS-based Positioning for Smartphones</article-title>
          <source>Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services (MobiSys ’10)</source>
          <conf-loc>San Francisco, CA, USA</conf-loc>
          <conf-date>15–18 June 2010</conf-date>
        </citation>
      </ref>
      <ref id="B20-jsan-01-00183">
        <label>20.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Kjaergaard</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Langdal</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Godsk</surname>
              <given-names>T.</given-names>
              <suffix>Toftkjr T.</suffix>
            </name>
          </person-group>
          <article-title>EnTracked: Energy-efficient Robust Position Tracking for Mobile Devices</article-title>
          <source>Proceedings of the 7th International Conference on Mobile Systems, Applications, and Services (MobiSys ’09)</source>
          <conf-loc>Krakow, Poland</conf-loc>
          <conf-date>22–25 June 2009</conf-date>
          <fpage>221</fpage>
          <lpage>234</lpage>
        </citation>
      </ref>
      <ref id="B21-jsan-01-00183">
        <label>21.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Guo</surname>
              <given-names>Y.</given-names>
            </name>
			<name>
              <surname>Poulton</surname>
              <given-names>G.</given-names>
            </name>
			<name>
              <surname>Corke</surname>
              <given-names>Peter</given-names>
            </name>
			<name>
              <surname>Bishop-Hurley</surname>
              <given-names>G.J.</given-names>
            </name>
			<name>
              <surname>Wark</surname>
              <given-names>T.</given-names>
            </name>
			<name>
              <surname>Swain</surname>
              <given-names>D.L.</given-names>
            </name>
          </person-group>
          <article-title>Using accelerometer, high sample rate GPS and magnetometer data to develop a cattle movement and behaviour model</article-title>
          <source>Ecol. Modell.</source>
          <year>2009</year>
          <volume>220</volume>
          <fpage>2068</fpage>
          <lpage>2075</lpage>
        <pub-id pub-id-type="doi">10.1016/j.ecolmodel.2009.04.047</pub-id></citation>
      </ref>
      <ref id="B22-jsan-01-00183">
        <label>22.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Kjaergaard</surname>
              <given-names>M.B.</given-names>
            </name>
            <name>
              <surname>Bhattacharya</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Blunck</surname>
              <given-names>H.</given-names>
            </name>
            <name>
              <surname>Nurmi</surname>
              <given-names>P.</given-names>
            </name>
          </person-group>
          <article-title>Energy-efficient Trajectory Tracking for Mobile Devices</article-title>
          <source>Proceedings of the 9th International Conference on Mobile Systems, Applications, and Services (MobiSys ’11)</source>
          <conf-loc>Washington, DC, USA</conf-loc>
          <conf-date>28 June–1 July 2011</conf-date>
          <fpage>307</fpage>
          <lpage>320</lpage>
        </citation>
      </ref>
      <ref id="B23-jsan-01-00183">
        <label>23.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Wang</surname>
              <given-names>Y.</given-names>
            </name>
            <name>
              <surname>Lin</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Annavaram</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Jacobson</surname>
              <given-names>Q.A.</given-names>
            </name>
			<name>
              <surname>Hong</surname>
              <given-names>J.</given-names>
            </name>
			<name>
              <surname>Krishnamachari</surname>
              <given-names>B.</given-names>
            </name>
			<name>
              <surname>Sadeh</surname>
              <given-names>N.</given-names>
            </name>
          </person-group>
          <article-title>A Framework of Energy Efficient Mobile Sensing for Automatic User State Recognition</article-title>
          <source>Proceedings of the 7th International Conference on Mobile Systems, Applications, and Services (MobiSys ’09)</source>
          <conf-loc>Krakow, Poland</conf-loc>
          <conf-date>22–25 June 2009</conf-date>
          <fpage>179</fpage>
          <lpage>192</lpage>
        </citation>
      </ref>
      <ref id="B24-jsan-01-00183">
        <label>24.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Mckeown</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Westcott</surname>
              <given-names>D.A.</given-names>
            </name>
          </person-group>
          <article-title>Assessing the accuracy of small satellite transmitters on free-living flying-foxes</article-title>
          <source>Austral Ecol.</source>
          <year>2012</year>
          <volume>37</volume>
          <fpage>295</fpage>
          <lpage>301</lpage>
          <pub-id pub-id-type="doi">10.1111/j.1442-9993.2011.02276.x</pub-id>
        </citation>
      </ref>
      <ref id="B25-jsan-01-00183">
        <label>25.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Jurdak</surname>
              <given-names>R.</given-names>
            </name>
            <name>
              <surname>Ruzzelli</surname>
              <given-names>A.G.</given-names>
            </name>
            <name>
              <surname>O’Hare</surname>
              <given-names>G.M.P.</given-names>
            </name>
          </person-group>
          <article-title>Adaptive Radio Modes in Sensor Networks: How Deep to Sleep?</article-title>
          <source>Proceedings of the 5th Annual IEEE Communications Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks (SECON ’08)</source>
          <conf-loc>San Francisco, CA, USA</conf-loc>
          <conf-date>16–20 June 2008</conf-date>
          <fpage>386</fpage>
          <lpage>394</lpage>
        </citation>
      </ref>
      <ref id="B26-jsan-01-00183">
        <label>26.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Sitka</surname>
              <given-names>P.</given-names>
            </name>
            <name>
              <surname>Corke</surname>
              <given-names>P.</given-names>
            </name>
            <name>
              <surname>Overs</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Valencia</surname>
              <given-names>P.</given-names>
            </name>
            <name>
              <surname>Wark</surname>
              <given-names>T.</given-names>
            </name>
          </person-group>
          <article-title>Fleck-A Platform for Real-World Outdoor Sensor Networks</article-title>
          <source>Proceedings of the 3rd International Conference on Intelligent Sensors, Sensor Networks and Information (ISSNIP)</source>
          <conf-loc>Melbourne Australia</conf-loc>
          <conf-date>3–6 December 2007</conf-date>
          <fpage>709</fpage>
          <lpage>714</lpage>
        </citation>
      </ref>
      <ref id="B27-jsan-01-00183">
        <label>27.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Guo</surname>
              <given-names>Y.</given-names>
            </name>
            <name>
              <surname>Corke</surname>
              <given-names>P.I.</given-names>
            </name>
            <name>
              <surname>Poulton</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Wark</surname>
              <given-names>T.</given-names>
            </name>
            <name>
              <surname>Bishop-Hurley</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Swain</surname>
              <given-names>D.</given-names>
            </name>
          </person-group>
          <article-title>Animal Behaviour Understanding using Wireless Sensor Networks</article-title>
          <source>Proceedings of the 31st IEEE Conference on Local Computer Networks</source>
          <conf-loc>Tampa, FL, USA</conf-loc>
          <conf-date>14–16 November 2006</conf-date>
          <fpage>607</fpage>
          <lpage>614</lpage>
        </citation>
      </ref>
      <ref id="B28-jsan-01-00183">
        <label>28.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Godsk</surname>
              <given-names>T.</given-names>
            </name>
            <name>
              <surname>Kjæ rgaard</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <article-title>High classification rates for continuous cow activity recognition using low-cost GPS positioning sensors and standard machine learning techniques</article-title>
          <source>Lect. Notes Comput. Sci.</source>
          <year>2011</year>
          <volume>6870</volume>
          <fpage>174</fpage>
          <lpage>188</lpage>
        </citation>
      </ref>
    </ref-list>
  </back>
</article>
