15
NETWRAP: An NDN Based Real-Time Wireless Recharging Framework for Wireless Sensor Networks Cong Wang, Ji Li, Fan Ye, and Yuanyuan Yang, Fellow, IEEE Abstract—Using vehicles equipped with wireless energy transmission technology to recharge sensor nodes over the air is a game- changer for traditional wireless sensor networks. The recharging policy regarding when to recharge which sensor nodes critically impacts the network performance. So far only a few works have studied such recharging policy for the case of using a single vehicle. In this paper, we propose NETWRAP, an NDN based Real Time Wireless Recharging Protocol for dynamic wireless recharging in sensor networks. The real-time recharging framework supports single or multiple mobile vehicles. Employing multiple mobile vehicles provides more scalability and robustness. To efficiently deliver sensor energy status information to vehicles in real-time, we leverage concepts and mechanisms from named data networking (NDN) and design energy monitoring and reporting protocols. We derive theoretical results on the energy neutral condition and the minimum number of mobile vehicles required for perpetual network operations. Then we study how to minimize the total traveling cost of vehicles while guaranteeing all the sensor nodes can be recharged before their batteries deplete. We formulate the recharge optimization problem into a Multiple Traveling Salesman Problem with Deadlines (m-TSP with Deadlines), which is NP-hard. To accommodate the dynamic nature of node energy conditions with low overhead, we present an algorithm that selects the node with the minimum weighted sum of traveling time and residual lifetime. Our scheme not only improves network scalability but also ensures the perpetual operation of networks. Extensive simulation results demonstrate the effectiveness and efficiency of the proposed design. The results also validate the correctness of the theoretical analysis and show significant improvements that cut the number of nonfunctional nodes by half compared to the static scheme while maintaining the network overhead at the same level. Index Terms—Wireless sensor networks, mobile vehicles, named data networking, wireless recharging, mobile energy replenishing, perpetual operation, recharge coordination Ç 1 INTRODUCTION W IRELESS energy transmission technique [1], [2] has opened up a new dimension to power wireless sensor networks. Compared to opportunistic energy harvesting techniques [3], [4] where the energy supply is not always available, it delivers energy to sensor nodes reliably without the complication of wires or plugs. Mobile charging vehicles (called SenCars [19], [20], [39] in this paper) equipped with charging devices can move around the field and replenish node energy conveniently. The recharging policy—when and which SenCar should recharge which nodes and in what order—critically impacts the efficiency and thus the lifetime of the network. So far a few works [11], [12] have studied the recharging policy problem. In [11], an optimization problem to maxi- mize the ratio of recharging time to vehicle’s idling time is considered. In [12], the recharge problem is studied in a rel- atively static setting where nodes report their energy levels periodically, and a centralized algorithm computes a spe- cific order so that a single SenCar recharges selected nodes in the next cycle. Then a system-wide optimization is per- formed to minimize the distance traveled by the SenCar and maximize the network utility. Although commendable first steps, several important practical issues are not consid- ered in the static setting in [11], [12], which may limit its applicability in real network environments. First, the timely, efficient and scalable gathering of energy status information of nodes and its delivery to mobile vehicles are important and challenging issues in themselves. The previous works do not consider these prob- lems and assume that such information is readily available. Second, it takes nontrivial (e.g., 30-80 min) time to recharge a commercial off-the-shelf battery. Finishing one round of recharging for a network of a few hundred nodes may take several days. During this time the energy levels of nodes may have changed significantly due to unpredictable exter- nal events that can trigger extensive activities and quickly drain the battery. The recharging policy computed at the beginning of the cycle is no longer optimal. This can cause energy depletion on some nodes, leading to disruptions to network functions. Third, these algorithms are designed for a single SenCar, which has limited recharging capacity and supports networks of only limited sizes. Multiple SenCars can support larger networks, but new algorithms must be designed to disseminate energy status information to Sen- Cars and coordinate the recharging activities among them efficiently to best leverage their recharging capacities. Finally, the works in [11], [12] use centralized algorithms C. Wang, J. Li, and Y. Yang are with the Department of Electrical and Computer Engineering Stony Brook University Stony Brook, NY 11794. F. Ye is with the School of Electronics Engineering and Computer Science Peking University, Beijing, China. Manuscript received 23 Feb. 2013; revised 1 Oct. 2013; accepted 6 Dec. 2013. Date of publication 1 Jan. 2014; date of current version 29 May 2014. For information on obtaining reprints of this article, please send e-mail to: [email protected], and reference the Digital Object Identifier below. Digital Object Identifier no. 10.1109/TMC.2013.2296515 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014 1283 1536-1233 ß 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. …ceca.pku.edu.cn/media/lw/a50d16c1a1c194f56b45dcc008ccbc27.pdf · this paper, we propose NETWRAP, ... IEEE TRANSACTIONS ON MOBILE COMPUTING,

  • Upload
    dokhanh

  • View
    218

  • Download
    2

Embed Size (px)

Citation preview

NETWRAP: An NDN Based Real-TimeWireless Recharging Framework for Wireless

Sensor NetworksCong Wang, Ji Li, Fan Ye, and Yuanyuan Yang, Fellow, IEEE

Abstract—Using vehicles equipped with wireless energy transmission technology to recharge sensor nodes over the air is a game-

changer for traditional wireless sensor networks. The recharging policy regarding when to recharge which sensor nodes critically

impacts the network performance. So far only a few works have studied such recharging policy for the case of using a single vehicle. In

this paper, we propose NETWRAP, an NDN based Real TimeWireless Recharging Protocol for dynamic wireless recharging in sensor

networks. The real-time recharging framework supports single or multiple mobile vehicles. Employing multiple mobile vehicles provides

more scalability and robustness. To efficiently deliver sensor energy status information to vehicles in real-time, we leverage concepts

and mechanisms from named data networking (NDN) and design energy monitoring and reporting protocols. We derive theoretical

results on the energy neutral condition and the minimum number of mobile vehicles required for perpetual network operations. Then we

study how to minimize the total traveling cost of vehicles while guaranteeing all the sensor nodes can be recharged before their

batteries deplete. We formulate the recharge optimization problem into a Multiple Traveling Salesman Problem with Deadlines (m-TSP

with Deadlines), which is NP-hard. To accommodate the dynamic nature of node energy conditions with low overhead, we present an

algorithm that selects the node with the minimum weighted sum of traveling time and residual lifetime. Our scheme not only improves

network scalability but also ensures the perpetual operation of networks. Extensive simulation results demonstrate the effectiveness

and efficiency of the proposed design. The results also validate the correctness of the theoretical analysis and show significant

improvements that cut the number of nonfunctional nodes by half compared to the static scheme while maintaining the network

overhead at the same level.

Index Terms—Wireless sensor networks, mobile vehicles, named data networking, wireless recharging, mobile energy replenishing,

perpetual operation, recharge coordination

Ç

1 INTRODUCTION

WIRELESS energy transmission technique [1], [2] hasopened up a new dimension to power wireless sensor

networks. Compared to opportunistic energy harvestingtechniques [3], [4] where the energy supply is not alwaysavailable, it delivers energy to sensor nodes reliably withoutthe complication of wires or plugs. Mobile charging vehicles(called SenCars [19], [20], [39] in this paper) equipped withcharging devices can move around the field and replenishnode energy conveniently. The recharging policy—whenand which SenCar should recharge which nodes and inwhat order—critically impacts the efficiency and thus thelifetime of the network.

So far a few works [11], [12] have studied the rechargingpolicy problem. In [11], an optimization problem to maxi-mize the ratio of recharging time to vehicle’s idling time isconsidered. In [12], the recharge problem is studied in a rel-atively static setting where nodes report their energy levelsperiodically, and a centralized algorithm computes a spe-cific order so that a single SenCar recharges selected nodes

in the next cycle. Then a system-wide optimization is per-formed to minimize the distance traveled by the SenCarand maximize the network utility. Although commendablefirst steps, several important practical issues are not consid-ered in the static setting in [11], [12], which may limit itsapplicability in real network environments.

First, the timely, efficient and scalable gathering ofenergy status information of nodes and its delivery tomobile vehicles are important and challenging issues inthemselves. The previous works do not consider these prob-lems and assume that such information is readily available.Second, it takes nontrivial (e.g., 30-80 min) time to rechargea commercial off-the-shelf battery. Finishing one round ofrecharging for a network of a few hundred nodes may takeseveral days. During this time the energy levels of nodesmay have changed significantly due to unpredictable exter-nal events that can trigger extensive activities and quicklydrain the battery. The recharging policy computed at thebeginning of the cycle is no longer optimal. This can causeenergy depletion on some nodes, leading to disruptions tonetwork functions. Third, these algorithms are designed fora single SenCar, which has limited recharging capacity andsupports networks of only limited sizes. Multiple SenCarscan support larger networks, but new algorithms must bedesigned to disseminate energy status information to Sen-Cars and coordinate the recharging activities among themefficiently to best leverage their recharging capacities.Finally, the works in [11], [12] use centralized algorithms

� C. Wang, J. Li, and Y. Yang are with the Department of Electrical andComputer Engineering Stony Brook University Stony Brook, NY 11794.

� F. Ye is with the School of Electronics Engineering and Computer SciencePeking University, Beijing, China.

Manuscript received 23 Feb. 2013; revised 1 Oct. 2013; accepted 6 Dec. 2013.Date of publication 1 Jan. 2014; date of current version 29 May 2014.For information on obtaining reprints of this article, please send e-mail to:[email protected], and reference the Digital Object Identifier below.Digital Object Identifier no. 10.1109/TMC.2013.2296515

IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014 1283

1536-1233� 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

with high complexity, which may incur extra overhead incomputing the optimal solution and may not scale to largenetwork sizes. Because of these practical challenges, a dis-tributed solution is more desirable and efficient in real net-work environments.

In this paper, we propose a novel real-time energy moni-toring and recharging framework that optimizes therecharging policies of SenCars under dynamic network con-ditions. Instead of letting nodes report their energy levelsonly after a long period as in [11], [12], a scalable and effi-cient energy information aggregation protocol gathers bat-tery energy levels continuously from all sensor nodes uponrequests by SenCars. The SenCars receive such informationand make recharging decisions based on the latest energyinformation. To deal with unpredictable emergencies wherenodes may dramatically drain the battery in short time, therecharging of sensor nodes whose energy levels are below acritical threshold has higher priority and takes precedenceover those that can work for relatively longer time with theirresidual energy.

To ensure high scalability of the proposed framework,we apply named data networking (NDN) [14] techniques togather and deliver energy information to SenCars. To thisend, we divide the network in a hierarchical fashion and theenergy information is aggregated bottom-up through differ-ent levels. NDN uses names instead of locations to addressdata, which is a natural match for aggregated energy infor-mation that belongs to an area instead of any particularnode. Thus the aggregated energy information can beaddressed by the area’s name. NDN also supports mobilevehicles because it has mechanisms to constantly updatethe routing states in intermediate nodes to follow the move-ments of vehicles. This is important for the SenCars toreceive the energy information timely after moving.

Due to the unpredictable nature of external events, theSenCars may need to deal with multiple concurrent emer-gencies occurring at different locations. How to scheduleand coordinate the SenCars to recharge these nodes withintheir residual lifetimes while minimizing the cost of SenCarsis called the emergency recharge optimization with multiple Sen-Cars (EROMS) problem in this paper. We first investigatethe necessary conditions for perpetual operations of the net-work based on energy neutral requirement (i.e., the energyconsumed should be less than or equal to the energy replen-ished) and formally derive the minimum number of Sen-Cars needed to satisfy this condition. Then we show thatthe EROMS problem can be formulated as a Multiple Trav-eling Salesmen Problem with Deadlines (m-TSP with Dead-lines) [35], which is NP-hard. Although heuristic algorithmsexist for m-TSP with Deadlines, they are not suitable in ourcontext. First, most of them assume an unlimited number ofvehicles while the number of SenCars in our problem is lim-ited. Second, these algorithms consider a relatively staticinput where the locations to be visited do not change overtime. However, in our context, new emergencies mayappear and old ones may be resolved as SenCars rechargenodes. Finally, these algorithms may produce unbalancedworkloads among SenCars such that some SenCars can beidle while emergencies still exist. Therefore, we propose anew heuristic algorithm to address such deficiencies; itdecides which nodes to recharge through a weighted sum

of the traveling time and residual lifetime of sensor nodes.We also analyze the complexity of our algorithm and dem-onstrate its performance to meet dynamic battery deadlines.

We conduct extensive simulations to demonstrate theeffectiveness and efficiency of our framework. We tracethe process of energy consumption and replenishment, thenumbers of emergencies and nonfunctional nodes in differ-ent network settings. The results demonstrate that ourframework is scalable to networks with hundreds of sensornodes while ensuring the perpetual operation. Then wecompare with the static optimization approach [12] in termsof the fraction of nonfunctional nodes and response time toemergencies. The results show great improvements onreducing the number of nonfunctional nodes and shorten-ing the response time to emergencies. We also validate ourtheoretical results on energy neutral condition through sim-ulations. Given the network and SenCar parameters, net-work administrators can easily estimate the minimumnumber of SenCars needed for perpetual operations.

We make the following contributions in this paper. First,we propose a novel real-time recharging framework forwireless sensor networks, consisting of a set of scalable andefficient NDN-based energy aggregation and gathering pro-tocols. The protocols satisfy both normal and emergencyrecharging needs for multiple mobile vehicles. Second, weformally analyze the conditions for the minimum numberof SenCars needed for perpetual operations. Third, we for-mulate the emergency recharge optimization with multipleSenCars as an m-TSP with Deadlines problem, and furtherpropose an efficient heuristic algorithm suitable to sensorrecharging context. Finally, we conduct extensive simula-tions to demonstrate the effectiveness and efficiency of theframework, compare with existing solutions and validatethe correctness of the theoretical analysis. To the best of ourknowledge, this is the first effort to apply NDN techniquesin sensor networks to make recharge decisions capable ofadapting to dynamic network conditions such as emergen-cies. It is also the first attempt to derive and validate the the-oretical minimum number of vehicles needed for perpetualnetwork operation, and the first to formalize the scheduling/coordination of multiple vehicles’ recharge activities whilemeeting sensor battery deadlines and minimizing total trav-eling cost of vehicles.

The rest of the paper is organized as follows. Section 2discusses related work. Section 3 outlines the frameworkand assumptions made in the network model. Section 4describes the operations and mechanisms of our protocolfollowed by Section 5 and Section 6 on deriving the mini-mum number of SenCars and solving the EROMS problem,respectively. Finally, Section 7 presents the simulationresults and Section 8 concludes the paper.

2 RELATED WORK

2.1 Wireless Rechargeable Sensor Networks

Recently, there have been much research effort in wirelessenergy transmissions from both academia and industry [5],[6], [7], [8], [9], [10], [11], [12], [13]. In [6], the impact of wire-less charging technology on sensor networks is investi-gated using devices from Powercast [5] which are based onradio frequency harvesting, and heuristic algorithms are

1284 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014

developed to solve the deployment and routing problem.In [7], deployment problems are studied in a rechargeablesensor network built from an industrial wireless sensingplatform and commercial off-the-shelf RFID readers. In [8],an Oðk2k!Þ greedy algorithm is designed to find a rechargesequence to maximize the lifetime of sensor nodes usingwireless charging, where k is the number of nodes in therecharge sequence. Experimental tests using Powercastdevices and insights of wireless energy replenishment arealso presented. In [9], a joint routing and wireless chargingscheme is proposed to improve network utilization andprolong network lifetime. Implementations based onPowercast devices and typical sensor nodes have beenconsidered.

However, techniques based on radio frequency harvest-ing are hindered from large deployments due to relativelylow efficiency. The seminal works [1], [2] of resonant induc-tive coupling based wireless energy transmission are capa-ble of transferring a large amount of energy in short timewith high efficiency. Several works [10], [11], [12], [13] con-sider using resonant inductive coupling to recharge sensorbatteries. In [10], batteries are allowed to be partiallycharged and various recharging schemes to traverse thesensing field are explored. In [11], the problem of periodicrecharging each sensor node using a single mobile vehicle isconsidered. A near-optimal solution is provided to calculatethe optimal traveling path of the mobile vehicle, by con-structing the shortest Hamilton cycle through all sensornodes. In [12], the problem of jointly optimizing the effec-tive energy recharging and data collection with boundeddata latency is studied. A two-step approach is proposed torecharge nodes with the least residual energy while maxi-mizing network utility. In [13], collaboration among multi-ple vehicles to recharge not only the sensor nodes but alsoeach other vehicles in a line (1D) network is studied so thata larger network can be covered and vehicles can come backto the starting point.

The above work makes pioneering steps in wirelessrechargeable sensor networks. However, several importantpractical issues are not considered. First, in a practical 2Dnetwork, a single recharging vehicle cannot scale to largenetwork sizes. The recharge coordination problem of dis-patching which vehicle to recharge which sensor node so asto minimize the total traveling cost is not studied. Second,how real-time energy information can be aggregated andreported to mobile vehicles efficiently is not considered.Third, the dynamic changes in energy levels that occur inev-itably and unpredictably during long recharging cycles arenot handled.

2.2 Named Data Networking

Named data networking is a new network architecture pro-posed recently for the Internet [14]. In NDN, data areaddressed by their names instead of hosting nodes’ loca-tions. The operation is based on two types of messages,Interest and Data, and the communication is initiated by thereceiver. A receiver interested in certain data sends Interestmessages carrying the name of the desired data. The Interestmessage propagates in the network following forward inter-est base (FIB) states towards nodes hosting desired data. It

also leaves a “trail” of pending interest table (PIT) states inintermediate nodes. Once the Interest reaches a node host-ing the desired data, data messages can follow PIT states totraverse back to the receiver.

So far NDN research has largely focused on the Internet,with some efforts on mobile networking. Whether it can beused to satisfy the needs of wireless sensor networks is stillunexplored. In this paper, we use wireless recharging as acase study to investigate its applicability in wireless sensornetworks. We find that its hierarchical naming structure fitsnaturally with energy aggregation needs, and its inherentability to handle mobile receivers is attractive for informa-tion delivery to recharging vehicles.

2.3 Coordination of Mobile Vehicles

Adopting multiple mobile vehicles has been studied for datacollection in wireless sensor networks. In [15], a stochasticmodel is presented to evaluate the performance of data col-lection when the vehicles follow a symmetric random walkon a 2D grid topology. In [16], multiple controlled mobilevehicles are adopted for data collection and the objective isto achieve load balancing. In [17], a set of heuristics are pro-posed to schedule the data collection of multiple mobilevehicles to meet sensors’ dynamic buffer overflow time con-straints. A sensor may be visited by one or more mobilevehicles depending on its buffer status. In [18], a set of proto-cols are proposed to achieve spatial coverage equivalence,vehicle mutual avoidance and load balancing. In [20], theproblem of minimizing the total traveling cost of multiplemobile vehicles is studied. It formalizes the problem intocovering salesman problem and presents a tour-planningheuristic. All the existing work focuses on data collectionwhere mobile vehicles only need to cover sensors in theirtransmission ranges, and a sensor may be visited by one ormore vehicles during a short period. However, in wirelessenergy replenishment, the effective wireless rechargingrange is very short compared to data transmissions, whileusing multiple mobile vehicles to recharge the same sensornode incurs high cost and should be completely avoided.

3 A NOVEL FRAMEWORK FOR WIRELESS

RECHARGEABLE SENSOR NETWORKS

In this section, we describe the components, networkmodel and assumptions for our NDN-based wirelessrecharging framework (NETWRAP). NDN has a fewattractive benefits for our environment. First, by sendingout new Interest packets, a mobile receiver can continu-ously update the routing states (i.e., PIT entries) in interme-diate nodes. Data can follow the reverse paths traversed bythe most recent Interest packets and reach the new locationof the receiver. This solves the mobility issue of SenCarsand ensures that the latest energy information can reachthem in a timely manner. Second, to scale to large networksizes, we divide the network in a hierarchical fashion andenergy information is gathered in aggregated forms. Thusthe data are bounded to an area rather than any particularnode. This makes a natural fit for NDN: the data can beaddressed by the area’s name. Compared to a flat topologythat requires flooding messages throughout the network,such hierarchical aggregation reduces considerable

WANG ET AL.: NETWRAP: AN NDN BASED REAL-TIME WIRELESS RECHARGING FRAMEWORK FORWIRELESS SENSOR NETWORKS 1285

overhead by confining message propagation to parts of thenetwork. Third, NDN provides network robustness whenintermediate nodes fail. This is ensured by resending theInterest packet by the receiver when data do not arrive.The new Interest packet explores alternative routes tobypass failures [14].

3.1 Network Components

The network consists of the following components.SenCars and service station: SenCars query the network for

energy information and recharge nodes based on the energyinformation collected. A service station is used for networkmanagement and maintenance. The SenCars can be com-manded by the administrator via the service station that hascomputing and communication capabilities.

Head nodes: A head is a sensor node delegated to aggre-gate energy information from its subordinate area. Whenrequested by a SenCar or by the head of its upper level, ahead queries energy information from subordinate sub-areas at the lower level, aggregates such information andsends to the requester. The head node can be changeddynamically depending on its energy.

Proxy: An emergency occurs when a node’s residualenergy falls below a pre-determined emergency threshold(e.g., 10 percent). Such events need to be taken care ofimmediately. A proxy node aggregates emergencies fromsensor nodes and reports such information to the SenCarwhen queried. Only top-level head nodes are proxies.

Normal node: A sensor node not selected as a head is anormal node. It reports energy information to head nodes,or sends emergency directly to its proxy when its energylevel drops below an emergency recharge threshold.

3.2 Name Assignments and Network Model

We assume sensors are scattered uniformly randomly in thenetwork. The network is divided into several areas andeach area is further divided recursively. The division of thearea is based on geographical coordinates of the sensingfield. Each division generates some new subareas andincreases the number of levels in the network. This processrepeats until the bottom level subarea becomes smallenough such that during the time a SenCar recharges such asubarea, the normal energy levels of the network do notchange too much to warrant interruption of that recharge.Fig. 1 gives an example of a two-level network with twoareas (solid lines), each further splits into two subareas

(dashed lines), where each subarea on the second level con-tains about 10 sensor nodes.

Based on the results of area divisions, we assign NDNdata names for different subareas in a hierarchical manner.For example, Fig. 1 shows all the name assignments for dif-ferent subareas (e.g., the first level areas are “a” and “b”,and the second level has “a/a”, “a/b”, . . .). Thus each sub-area is identified by its unique hierarchical name. Eachnode has an ID including the name of its containing bottom-level subarea plus an identifier. For example, “a/a/2” isnode “2” in subarea “a/a”. The hierarchical names make iteasy to confine the propagation scope of a message to anysubarea: nodes beyond the intended subarea (carried by themessage) can simply stop further propagation.

In addition, we have the following assumptions: 1) Sen-sor nodes are stationary and each node knows its location.2) Nodes have the same transmission range and messagesare forwarded over multiple hops in large networks. 3) TheSenCars have positioning systems and know their locations.The IDs and locations of all sensor nodes, and the subareanames are known to the SenCars (e.g., through a one-timeeffort during network initialization). 4) The SenCars areequipped with powerful antennas so that they can commu-nicate among themselves and to the service station directlyusing long range communication technologies (e.g., cellular,WiMax). 5) Sensors might perform different tasks thus theenergy consumption is not uniform among nodes. 6) Whena SenCar finds that its own energy is about to deplete, itmoves back to the service station for battery replacement.Since the traveling and battery replacing time is short com-pared to recharge time, we ignore the time for SenCar’s bat-tery replacement. 7) The SenCar can approach sensors inclose proximity and induce enough currents on sensor’sreceiving coils for battery recharge.

4 THE NDN-BASED REAL-TIME WIRELESS

RECHARGING PROTOCOL

In this section, we present the detailed design of NET-WRAP. We first give an overview of the protocol design inSection 4.1. Then we describe different operating phases ofthe protocol in Section 4.2.

4.1 Protocol Overview

In NETWRAP, the SenCars obtain the most up-to-dateenergy information from sensors and makes recharge deci-sions in real time. The energy information is aggregated onhead nodes at different levels. To be robust, the head is usu-ally selected as the node having the maximum energy levelin its area. This selection process is done at the beginning ofnetwork startup through the propagation of head selectionmessages. The details will be discussed in the next section.

To start energy information collection, SenCars send outenergy interest messages to poll the heads on the top-level.Once the heads receive such messages, they send lower levelenergy interest messages to their child-heads in respectivesubordinate areas. This process is repeated down the headnode hierarchy, until finally the bottom-level energy interestmessages reach the nodes in the bottom-level subareas.

Once a sensor node receives a bottom-level energy inter-est, it responds by sending out an energymessage containing

Fig. 1. Illustration of area names and network components.

1286 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014

its ID and battery level. When the heads on the bottom-levelreceive such energy messages, they select sensor nodes withenergy level below a normal recharge threshold (defined bythe administrator), and send the names of these nodes andtheir energy information in an energy message to their par-ent head nodes. This is repeated up the head node hierar-chy, until finally the top-level head nodes have theaggregated energy information and send it to the SenCar.When multiple SenCars query energy information simulta-neously, the top-level head nodes send the aggregatedenergy information to the nearest SenCar. Thus SenCarsrecharge nearby normal nodes to reduce their travel costs.The details are explained later in this section.

To reduce transmission overhead, the head is delegatedpartial responsibilities to pre-select sensor nodes to berecharged. At the bottom level, this is done by letting headsselect nodes with low energy levels. At upper levels, a headselects the subordinate area which can be recharged withthe most amount of energy. Thus the SenCars can replenishthe network with more energy in one movement.

Such normal energy aggregation is conducted at therequests of the SenCars. For emergency nodes that havedangerously low battery levels below an emergency thresh-old, they send out emergency messages to the proxy thatmanages its area. The route to its proxy is built by head selec-tionmessages from the proxy.

After completing the recharge of any node, a SenCarsends out an emergency interest message to query whetherany emergency has appeared. These messages are directedto proxies where lists of emergency nodes are stored. Theproxies respond by sending back the emergency node IDs,estimated residual lifetimes and energy levels. SenCarsreceive the messages and use the emergency recharge algo-rithm to decide which nodes to recharge. Note that differentfrom normal recharging, the SenCar recharging an emer-gency node may not be the nearest one. This is due to theurgency to avoid any battery depletion. When a head nodeis low on energy, it can choose another node with highenergy, and send out a head notificationmessage to notify thelatter to become the new head.

4.2 Protocol Design

We describe the detailed protocol assuming the head hierar-chy has l levels.

4.2.1 Head Selection

After the areas and names have been configured, the net-work performs head selection from the bottom up startingat the lth (i.e., the lowest) level. Since initially sensor nodeshave about the same level of energy, any of them maybecome a head. Each sensor node i generates a randomnumber x. If x > K, where K is a pre-determined thresh-old, the node floods a head selection message in its lth levelsubarea, containing the name of this subarea, xmax ¼ x, andIDmax set to its own ID. Otherwise the node waits for mes-sages from other nodes in the area.

A node receiving such a head selection message comparesthe xmax in the message with its local record xmax. If its localrecord is larger, the message is discarded. Otherwise, thesensor updates its local xmax to that in the message, sets

IDmax to that in the message, and forwards the message toits neighbors except the node that sent this message. Finally,the node with the maximum x wins the election and isrecorded by all the nodes in this subarea as the head.

New heads at the lth level then contend to become headsof the ðl� 1Þth level. They flood new head selection messagesin the ðl� 1Þth level subarea, carrying the area’s name, theirrespective x values and IDs. Intermediate nodes performsimilar comparisons. This will elect the heads at theðl� 1Þth level. This process is repeated recursively untilhead nodes of all levels are elected.

One difference for the head selection messages startingfrom the ðl� 1Þth level and up is that messages carryingsmaller x than the local copy are not discarded. Instead,they are propagated throughout the respective subarea.This builds routing states in intermediate nodes of the sub-area: An intermediate node has one entry for each child-head, pointing to the neighbor from which the messagefrom that head arrives first. Duplicate copies of the samemessage arriving later are discarded.

Such states are effectively forward interest base entries inNDN. Later a parent head at the ðk� 1Þth-level can sendenergy interest messages to its child-heads at the kth levelusing such states. To build FIB entries for the 1st level headnodes, they each flood a top-level head selection messagethroughout the whole network. Later the energy interestqueries from the SenCars can use such states to reach them.

4.2.2 Normal Energy Interest Propagation

After the head hierarchy is constructed, the SenCars sendenergy interest messages to query for nodes needingrecharge. The energy information is gathered on demand,and top down in the hierarchy. We will describe normalenergy information collection first. Emergency informationis collected similarly, but with only top-level heads involvedto reduce latency.

For normal energy information, interest messages aresent by the SenCars (e.g., with data name set to “/energy/normal/a” to collect energy information from area a). Inter-mediate nodes use the FIB entries established by top-levelhead selection messages to forward it to all top-level headnodes. To guide the return of future data from a top-levelarea, an intermediate node also sets up a pending interesttable entry pointing to the neighbor from which the interestmessage towards this area is received. Fig. 2 gives a pictorialillustration of a network with three levels. After an interestmessage is sent by the SenCar, the energy information isconverged from the bottom level to the top level towardsthe SenCars.

Fig. 2. Example normal energy information convergence.

WANG ET AL.: NETWRAP: AN NDN BASED REAL-TIME WIRELESS RECHARGING FRAMEWORK FORWIRELESS SENSOR NETWORKS 1287

To avoid duplicate selection of the same normal nodesand reduce travel costs, we want only the nearest SenCar toreceive a head node’s normal energy information. To thisend, the energy interest message from each SenCar carries ahop count increased by one at each intermediate node.When multiple such messages towards the same top-levelarea are received, an intermediate node updates its PITentry to record only the neighbor sending the message withthe smallest hop count. Later energy information from ahead can follow such directions to reach the nearest SenCar.After an intermediate node forwards energy informationfrom a top-level area, it deletes the corresponding PIT entry.

Upon receiving an energy interest message, a top-levelhead sends a new energy interest message to its child-heads, with the data name set to all subareas of its children(e.g., from the head node of area /a, “/energy/normal/a/�”). Similarly, these messages reach all child-heads fol-lowing FIB entries. Intermediate nodes also set up PITentries so that later energy information from child-headscan go back to their parent head. This process is repeateddown the hierarchy, until finally heads at bottom-level floodtheir respective subareas with interest messages.

4.2.3 Normal Energy Report and Node Recharge

When a sensor node receives an lth level energy interestmes-sage, it responds with an energy message including its IDand residual energy. With the help of PIT entries, the mes-sage is returned to the head of the lth level.

The head examines if the reported residual energy is lessthan the normal recharge threshold. If so, the ID of the nodeis added to a list, and the energy that can be recharged tothis node is added to a summation counter. After the headhas collected these messages, it sends an aggregation mes-sage, containing the list, the summation counter and its sub-area name to its parent head. A parent head compares suchmessages from its child-heads, selects the one with the larg-est summation counter (i.e., the bottom-level subarea thatcan be recharged of the greatest amount of energy), and for-wards to its parent head. This process is repeated upwardsin the hierarchy. Finally, the SenCar nearest to a top-levelhead receives a message for the bottom-level subarea withthe largest summation counter. It moves there andrecharges those nodes in the ID list one by one. Only afterrecharging those nodes will the SenCar sends another nor-mal energy query.

The reason we delegate selection partially to head nodesis twofold. First, we expect much less variation in normalenergy levels. Thus the SenCar can choose one bottom-levelsubarea and finish recharging all listed nodes. Only afterthe whole subarea is recharged, we expect enough changesin normal energy distribution that warrant a new normalenergy query from the SenCar. Second, this also keeps thereturn message sizes small and reduces overhead.

4.2.4 Emergency Energy Report and Node Recharge

Emergency energy report is slightly different due to theurgency. If a node detects that its energy level is below theemergency recharge threshold, it immediately sends anemergency message containing its ID and energy level to itsproxy (i.e., its top-level head node). Because the head node

floods a top-level head selection message during head elec-tion, the same FIB entries can be used to forward emergencymessages to the head.

Instead of waiting for recharging a whole bottom-levelsubarea, a SenCar sends out emergency interest messages toeach proxy after finishing recharging any single normalnode or emergency node (e.g., with data name set to“/energy/emergency/a” to collect emergency informationfrom the proxy of area a). To guide the return of future datafrom the proxy of a top-level area, an intermediate nodesets up a PIT entry pointing to the neighbors from whichthe emergency interest messages towards this area arereceived. Later emergency information from a proxy canfollow such directions to return to the SenCar. After anintermediate node forwards emergency information from aproxy, it deletes the corresponding PIT entry.

When an emergency interest message is received, theproxy returns its list of IDs, energy levels and estimatedresidual lifetime of emergency nodes, if there exists any.Compared to normal recharge that maintains nodes’energy at medium levels so that they do not depleteenergy very soon, emergency recharge requires moreaccurate information on how long a node can last, i.e.,an estimation of the residual lifetime. In this paper, it iscalculated by taking a weighted sum of the estimatedresidual lifetime in previous time slots. The estimatedlifetime Li at time slot i is obtained by dividing the cur-rent energy consumption rate from residual energy. Li

can be obtained by a weighted average of previous life-time at n time slots

Li ¼ Li�n þ Li�nþ1

2nþ Li�nþ2

2n�1þ � � � þ Li

2:

For simplicity, we restrict the previous lifetime n used inthe calculation to 3. For example, the estimated residual life-time in time slot t0, t1, t2 and t3 is calculated as L0, L0=2þL1=2, L0=4þ L1=4þ L2=2, and L0=8þ L1=8þ L2=4þ L3=2,respectively. We can see that our estimation gives a domi-nated weight of lifetime in the current slot, which is similarto estimating process time in operating systems [37].

The SenCar uses the algorithm in Section 6 to decidewhich node to recharge. It switches back to normal opera-tion mode only when no emergency is reported. Whenmultiple SenCars query emergency information simulta-neously, they coordinate with each other and make an opti-mal decision to assign the emergency nodes to each ofthem. The procedure of emergency assignment is describedin Section 6.

4.2.5 Head Hierarchy Maintenance

A head can be short on energy, which can happen once in awhile because the head usually engages in more activitiesthan a normal node. When this happens, a new head isneeded. Because only heads of bottom-levels contend forhigher level elections, a head at any level is always the headof its bottom-level subarea. It receives the energy reportsfrom normal nodes in its bottom-level subarea upon thenormal interest query from the SenCar. So it can choose anode with the highest energy, and floods a head notification

1288 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014

message to notify all nodes in the bottom-level subarea ofthe new head.

The new head then triggers a new head election processin its ðl� 1Þth level subarea. It propagates a new head selec-tion message in its ðl� 1Þth subarea, but carrying its energylevel instead of the random number x. Other heads in thisðl� 1Þth level subarea do the same. Then a new ðl� 1Þthhead with the maximum energy is elected. If this is thesame head, the process stops. Otherwise, the new ðl� 1Þthlevel head triggers the same process in its upper level sub-area, until finally a new top-level head is elected. Note thatalthough our head selection and maintenance schemeshares some similarities with previous studies [21], in ourscheme, NDN techniques are adopted to provide scalablecommunication between head nodes of different levels,which is new compared to previous work.

5 THEORETICAL ANALYSIS OF ENERGY

NEUTRALITY AND MINIMUM NUMBER OF

SENCARS

In this section, we study a couple of important theoreticalquestions. Given a sensor network, what is the necessarycondition for it to operate perpetually and what is the mini-mum number of SenCars needed to satisfy this condition?For a rechargeable sensor network to operate perpetually,the energy neutral condition must be satisfied, i.e., for eachsensor node the energy replenished is no less than theenergy consumed in any arbitrarily long time period.

We use a simple Bernoulli process to model a node’senergy consumption: with probability p it consumes unitenergy in a unit time slot [23]. The assumption is quite natu-ral for most of the sensing applications. For example, in anevent-based sensor network, events occur sporadically andare governed by a Poisson distribution. Once the unit timeslot is small enough such that only one event can occur dur-ing a unit time slot, the Poisson distribution is equivalent toBernoulli distribution [24]. A long time period consists of nunit time slots. Let Rn and En denote the energy replenishedand consumed for a sensor node in n time slots, respec-tively, and E0 denote the node’s initial energy. Table 1 sum-marizes the general notations and their correspondingdefinitions in this paper.

In principle, wireless recharge is limited by how fast thecoil can transfer energy (induction between two coils) andhow fast the battery can absorb energy. The lesser of thetwo determines the recharging rate. We assume that thetransmitting coil can induce enough recharge currents onthe receiving coil. Resonant inductive coupling based wire-less energy transfer can easily achieve this. It has beenshown [1] that it can transfer 60 watts of power in excess of2 meters. When the recharge current is high enough, therecharge time depends on how fast the battery can absorbthe charge, which is a battery characteristic. To model therelation between battery capacity and recharge time, weuse an example of Panasonic Ni-MH AAA batteries with780 mAh based on available curves from the data sheets[22]. The instantaneous voltage at time instance t is mappedto capacity ratio and the resultant recharge time function isshown in Fig. 3. Then we use curve fitting in Matlab toobtain an approximation function.1

The energy neutral condition is

Rn þ E0 � En: (1)

Eq. (1) states that for a long time period n, on each sensornode, the sum of replenished energy and initial energyshould be at least as large as the consumed energy. This is anecessary condition for the perpetual operation of the network.

From Eq. (1), we can derive the minimum number of Sen-Cars needed, S. We first estimate a loose upper bound forRn in terms of S. Since it is analytically intractable to obtainRn, an upper bound can provide reasonable estimates of thetotal recharge capabilities from the SenCars. Intuitively,SenCars reach their maximum recharging capacity whenthey can “barely” keep up with the recharging needs, whichmeans that they keep recharging node after node withoutany idle time in between, and each node has almost zeroenergy before being recharged. A SenCar can replenish atmost the battery’s full capacity in the full recharge time.2

During n time slots, the total recharged energy for the whole

TABLE 1Table of Notations

Fig. 3. Recharge function and approximation function by Matlab curvefitting.

1. The sixth degree polynomial equation gives a closed approxima-tion to the original recharge time function cðtÞ ¼ �2:7872� 10�8t6þ6:814 � 10�6t5 � 6:138� 10�4t4 þ 0:02405t3 � 0:3541t2 þ 2:12t � 2:526where t is the recharge time.

2. Different from [10], where partial recharge is allowed, we assumefully recharging batteries to avoid “memory effects” that can reducethe number of charge cycles, so that battery lifetime can be maximized.

WANG ET AL.: NETWRAP: AN NDN BASED REAL-TIME WIRELESS RECHARGING FRAMEWORK FORWIRELESS SENSOR NETWORKS 1289

network is the recharge rate, ðC=trÞS, times the time dura-tion n (e.g., battery capacity C ¼ 780 mAh, full rechargetime tr ¼ 73.4 min for a Panasonic Ni-MH AAA battery[22]). The recharged energy Rn is averaged on each sensornode by dividing the number of sensor nodes N in the net-work. Thus, the upper bound of Rn is

nCStrN

.Note that on the right hand side of Eq. (1), En is a random

variable. We have the following lemma.

Lemma 1. The probability for the energy neutral condition tohold is Pop ¼ FðRnþE0�np

ffiffiffiffiffiffiffiffiffiffiffiffiffi

npð1�pÞp Þ.

Proof. Let X1; X2; . . . ; Xn be independent and identicallydistributed Bernoulli random variables for energy con-sumption in each time slot with probability p. En ¼Pn

i¼1 Xi ¼ nX. When n is sampled over a long timeperiod, by the Central Limit Theorem, we know X �ðp; pð1�pÞ

n Þ. Thus, En is also normally distributed withmðnÞ ¼ np and variance s2ðnÞ ¼ npð1� pÞ (En � Nðnp;npð1� pÞÞÞ [25]. Hence,

Pop ¼ PrfRn þ E0 > Eng ¼ FRn þ E0 � mðnÞ

ffiffiffiffiffiffiffiffiffiffiffiffi

s2ðnÞp

!

:

and the energy neutral condition holds with Pop. tuProposition 1. The minimum number of SenCars required to

achieve perpetual operation is

S ¼ trNð2:33 ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

npð1� pÞp þ np�E0ÞCn

& ’

:

Proof. Since F�1ð1Þ ! 1, we consider the sensor network

achieves perpetual operation when Pop � 0:99. In other

words, to guarantee the sensor network to operate

perpetually, the probability that the energy replen-

ished is larger than the energy consumed is 0.99. From

F�1ð0:99ÞnCStrN

þE0�npffiffiffiffiffiffiffiffiffiffiffi

npð1�pÞp , we obtain the minimum number of

SenCar S. tuTo illustrate how Proposition 1 can be used to estimate

the minimum number of SenCars, we consider a concreteexample comprised of 500 sensor nodes with the rechargefunction of Panasonic Ni-MH AAA batteries and calculatethe minimum number of SenCars needed. Assume in anapplication the battery can last for five days on averagewithout recharge and the energy consumption follows theBernoulli distribution. It yields mð1Þ ¼ 37:5 mJ ands2ð1Þ ¼ 9:4 mJ2 for a time period of six months in whicheach time slot is 1 second. Using Proposition 1, we can cal-culate S ¼ d2:41e ¼ 3 which means it needs at least threeSenCars to cover 500 nodes under the given energy con-sumption rate. We can see that the derivation from Propo-sition 1 can help the network administrator plan thenetwork. Once the experimental parameters and the appli-cation specifics from the sensors have been determined (e.g., network size N , recharge time tr, initial energy E0,working probability p, operation duration n and batterycapacity C), we can easily obtain the minimum number ofSenCars needed. As will be seen later, the correctness ofthe derivation is also verified in simulations.

6 EMERGENCY RECHARGE OPTIMIZATION

ALGORITHM

In this section, we study the emergency recharge optimiza-tion with multiple SenCars problem. Our objective is tominimize the total traveling cost of the SenCars whileguaranteeing recharge before sensors’ battery depletion. Weformalize this problem into a Multiple Traveling SalesmenProblem with Deadlines. We show the problem is NP-hardand propose a heuristic algorithm suitable for dynamic real-time recharging.

6.1 Problem Formulation

Given a set of SenCars S and a set of emergency nodes M,we formalize the problem as follows. Consider a graphG ¼ ðV;EÞ, where V

ðkÞ0 is the starting position of SenCar k,

and Vi (i 2 M) is the location of emergency sensor i to bevisited. E is the set of edges. Each edge Eij has a latencycost cij ¼ ti þ tij, where ti is the time to recharge node ifrom its current energy level to full capacity, and tij is thetraveling time from node i to node j. For SenCar k, c

ðkÞ0j rep-

resents its cost from its initial position 0 to node j. For eachsensor node i, the residual lifetime is Li. Ai specifies thearrival time for a SenCar at sensor node i.

We introduce decision variables xij for edge Eij. Thedecision variable is 1 if an edge is visited, otherwise it is 0.Additionally, x

ðkÞ0j is 1 if SenCar kmoves from its initial posi-

tion to node j. ui is the position of vertex i in the path. Wevirtually make the SenCars return to V

ðkÞ0 after recharging

all the selected nodes by setting cðkÞi0 ¼ 0; i 2 M, thus the

EROMS problem can be formulated as the Multiple StartTraveling Salesman Problem with Deadlines in which mul-tiple traveling salesmen start from different locations to visita set of cities within their deadlines:

P1 : minX

M

i¼1

X

M

j¼1

cijxij þX

S

k¼1

X

M

j¼1

cðkÞ0j x

ðkÞ0j

( )

; (2)

subject to

X

M

j¼1

xðkÞ0j ¼

X

M

i¼1

xðkÞi0 ¼ 1; 8k ¼ 1; 2; . . . ; S; (3)

X

M

i¼1

xik ¼X

M

j¼1

xkj ¼ 1; 8k ¼ 2; . . . ;M; (4)

Ai Li; 8i ¼ 1; 2; . . . ;M; (5)

xij 2 f0; 1g; 8i; j ¼ 1; 2; . . . ;M; (6)

2 ui M; 8i ¼ 2; 3; . . . ;M; (7)

ui � uj þ ðM � SÞxij M � S � 1;

8i; j ¼ 2; 3; . . . ;M; i 6¼ j:(8)

Constraint (3) guarantees that the recharge path starts at0 and finishes at 0. Constraint (4) ensures the connectivityof the path and that every vertex is visited at most once.Constraint (5) guarantees that the arrival time of the SenCar

1290 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014

is within sensor’s residual lifetime. Constraint (6) imposesxij to be 0-1 valued. Constraints (7) and (8) eliminate thesubtour in the planned route. The subtour elimination con-straints are formulated according to [26], [27].

We now show that EROMS is NP-hard. The classicMultiple Traveling Salesman Problem (m-TSP) can beconsidered as a special case of the EROMS problem withthe deadline to visit a city extended from 0 to infinity,and all the SenCars starting from one position. A solutionto the EROMS problem would give a solution to m-TSP.Since m-TSP is known to be NP-hard [28], the EROMSproblem is NP-hard.

6.2 MinimumWeighted Sum Heuristic Algorithmand Complexity Analysis

In this section, we propose a heuristic algorithm for theEROMS problem that jointly considers the residual lifetimeand traveling time. In general, m-TSP is closely related tothe vehicle routing problem (VRP) in which a fleet ofvehicles start from the same depot and visit client locationsexcept that in m-TSP, salesmen are allowed to start from dif-ferent locations. The m-TSP with Deadlines can be consid-ered as a special case of the Multiple Traveling SalesmanProblem with Time Windows (m-TSPTW)3. This problem issimilar to vehicle routing problem with time window(VRPTW) which has been studied in the literature and ahandful of optimal and approximation algorithms are avail-able [29], [30], [31], [32], [33], [34], [35], [36].

The approaches to VRPTW are usually divided into twophases. A construction of a feasible tour is sought in the firstphase and the tour is interactively improved in the secondphase. In [29], several heuristic algorithms are proposedand a computational evaluation is presented to study theperformance. In [30], a local search algorithm is proposed toreduce the computation of checking feasibility constraint ofTSPTW. In [31], the minimum number of vehicles to meetthe time window requirements is studied by utilizing prece-dence graphs. An insertion heuristic to TSPTW is proposedin [36]. The scheme builds a route by inserting a node eachtime. While checking the time feasibility, backtracking issometimes needed and the solution is further improved inthe post-optimization phase. However, since checking thetour feasibility is as hard as the original problem [30], theseapproaches are still quite computationally expensive.

On the other hand, several approximation algorithmshave been proposed for the VRPTW problem in [32], [35].However, these algorithms are not suitable for the recharg-ing problem context. First, they assume the number ofvehicles is unlimited but the number of SenCars is boundedin our problem.4 Second, existing algorithms deal with astatic problem input. However, in EROMS, new emergen-cies may appear at any time, and residual node lifetimesalso vary due to ongoing sensing activities. Maintaining anoptimal schedule would become prohibitively expensive.Finally, existing algorithms may generate unbalanced

workloads among SenCars, resulting in idling SenCarswhile emergencies still exist.

Thus we present a heuristic algorithm that schedulesrecharge assignments among SenCars. Two important met-rics affect the recharging order between node i and node j:the traveling time between node i to node j, and their resid-ual lifetime Li and Lj. If node j has a small Lj such that itwould be dead if a SenCar recharges node i first, node jshould be visited first.

We use a weighted sum wij of traveling time from thecurrent node i to next node j and the residual lifetime ofnode j,

wij ¼ atij þ ð1� aÞLj: (9)

wij is used to decide which node j to recharge next. A sensornode with a smaller weighted value should be visited at ahigher priority. When a ¼ 1, the algorithm reduces to near-est node selection that the SenCars always recharge the clos-est node first regardless of battery deadlines; when a ¼ 0, itpicks the node with the earliest battery deadline firstregardless of the traveling distance.

The value of a greatly affects the schedule. Fig. 4 gives anexample of a SenCar and three sensor nodes. The residuallifetime and the traveling time on each edge are shown in thefigure, and a varies from 0, 0.5 to 1. We assume that recharg-ing a sensor battery takes 1 hour to finish. At time 0 s, theSenCar calculates the weight to sensor nodes 1, 2 and 3.The minimum weights are circled. When a ¼ 1, node 3 hasthe minimum weight; when a ¼ 0:5; 1, node 1 has the mini-mum weight. However, if node 3 is chosen to be the nextnode, node 1 would have been dead after finishing recharg-ing node 3. Thus a ¼ 1 is infeasible in this example. a ¼ 0:5and a ¼ 0 generate the same schedule 1 ! 3 ! 2.

From this example, we can see that the value a affects thefeasibility of the solution. We might expect that the total dis-tance be inversely proportional to a and a binary searchmay locate the maximum feasible a. However, some testshave shown that it is not always true. We decide to searchthrough a list of A distinct a values, e.g., a ¼ 0:0; 0:1; . . . ; 1:0where A ¼ 11. We find that this choice achieves a desirabletradeoff between optimality and complexity.

When a SenCar performs calculation, it communicatesvia a long range radio with other SenCars to know theirpositions for computing the weighted sum. Since the Sen-Car is equipped with high-capacity batteries and powerfulantennas, using long range communication among theSenCars and service station is a reasonable option here.

Fig. 4. Example of minimum weighted sum algorithm.

3. m-TSP with Deadlines is m-TSPTW having all release time at 0.4. Adopting limited number of vehicles usually requires a relaxed

time constraint which allows late arrivals [33], [34]. However, the timeconstraint should not be relaxed in the EROMS problem.

WANG ET AL.: NETWRAP: AN NDN BASED REAL-TIME WIRELESS RECHARGING FRAMEWORK FORWIRELESS SENSOR NETWORKS 1291

Current technology such as cellular communications andWiMax can support data transmission up to several miles,which would suffice the scale for a sensor network. Toavoid conflicts where multiple SenCars choose the samenode for recharge, we utilize the service station to storeand update the availability of each node. The procedure issimilar to that for shared memory access in operating sys-tems [37]. The service station maintains a 0-1 valued nodelist V. Once a sensor is chosen, its value is set to 1 (locked).Otherwise, it is 0. The value should be changed back from1 to 0 when a SenCar finishes recharging that node. A Sen-Car can simply communicate with the service station,exclude nodes already selected by other SenCars, andnotify the service station of the status of nodes it chooses.Table 2 shows the pseudo-code of the entire algorithm.

We now analyze the complexity of the heuristic algo-rithm. Note that the node selection operations are executedon each SenCar, which takes OðMÞ time. For each SenCar, itperforms M=S rounds of node selections and the total num-ber of tests on a is A. Thus, the total computational com-plexity of our heuristic algorithm is OðAM2

S Þ.

7 PERFORMANCE EVALUATION

In this section, we use simulation to evaluate the effec-tiveness and efficiency of our framework. We have devel-oped a discrete event-driven simulator using POSIXthread programming in C language. Message communi-cations between sensor nodes are emulated using inter-process communication in our simulator. Our simulatoris fully capable of realizing message communicationbased on NDN (message routing), information conver-gence, recharge and SenCar mobility. To evaluate the

performance of NETWRAP, we examine two networksizes of 500 and 1,000 sensor nodes, uniformly randomlydistributed over a 200� 200 m2 and 282� 282 m2 squarefield, respectively. The field size is chosen so that thetwo cases have the same node density. The network con-sists of three-level hierarchy with 4l number of subareasat the lth level. The energy consumption on each sensoris a Bernoulli random variable with probability p to con-sume unit energy (37.5 mJ). If a sensor node works con-tinuously at this rate, the battery can last for five days.

To evaluate energy overhead of the protocol, we use themodel presented in [38], i.e., et ¼ ðe1dar þ e0Þl, where et isthe energy consumption while transmitting a message of lbits, dr is the transmission range, e1 is the loss coefficientper bit, a is the path loss exponent and e0 is the excessiveenergy consumed on sensing, coding, modulations, etc.5

The relationship between recharged energy and rechargetime follows that of Panasonic Ni-MH AAA battery [22]. Tounderstand the impact of the number of SenCars on net-work performance, we show marginal cases where thenumber of SenCars is not sufficient while adding one moreSenCar would guarantee perpetual operations. These casesare S ¼ 2; 3 for N ¼ 500 and S ¼ 4; 5 for N ¼ 1;000. We willpresent these cases in the following and validate the correct-ness of Proposition 1. All the parameter settings in the simu-lation are listed in Table 3.

7.1 Evaluation of Weighted-Sum Algorithm

In this section, we evaluate the effectiveness of theweighted-sum algorithm in finding the shortest path andachieving no node failure. We examine cases when fourSenCars are employed. We assume the locations of emer-gencies are randomly distributed in the field of282� 282 m2, and the residual energy uniformly distributedfrom zero to the emergency threshold. The correspondingresidual lifetime is calculated by dividing the residualenergy by prc, the expected energy consumption in unittime.

Table 4 shows the total distance of SenCars when the num-ber of concurrent emergenciesM increases from 72 to 96 in astep of 8. Note that when the number reaches 96, the set offour SenCar is not sufficient to resolve all the emergencies

TABLE 3Parameter Settings

TABLE 2MinimumWeighted Sum Algorithm

5. dr ¼ 15m, e0 ¼ 45� 10�9 J/bit, e1 ¼ 10� 10�9 J/bit, a ¼ 2.

1292 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014

without complete battery depletion. For M ¼ 88, weightparameter a ¼ 0:8; 1 are not feasible and for M ¼ 72; 88,a ¼ 1 is not feasible either. We notice that in the case whena ¼ 1, some nodes that suffer from energy shortage may notget recharged in a higher priority thereby rendering the resultinfeasible to avoid battery depletion. As we can see from thisexample, the choice of a is critical, when a approaches 1, thetotal distance is decreased at the risk of becoming infeasible.Thus we need to search for a in our algorithm. In real applica-tions, the value of a is subject to change and determined byreal-time statistical data and parameters.

7.2 Performance Comparison with a StaticOptimization Approach

In this section, we compare network performance of ourreal-time framework with the static optimization approachused in [12]. Since the static approach has only designedalgorithms for a single SenCar, we set the number of SenCarat 1 and compare the percentage of nonfunctional nodesand response time to emergencies when N ¼ 250; 300. Thepercentage of nonfunctional nodes indicates how manynodes have depleted energy and are waiting for the SenCar.The response time to emergencies is measured from thetime a node reports emergency until it is resolved by theSenCar. A shorter response time indicates that the SenCarcan respond faster to emergencies.

In the static approach, the SenCar selects nodes withenergy less than the normal recharge threshold, calculatesthe minimum traveling distance throughout these nodesand performs recharge one by one. Fig. 5a shows thepercentage of nonfunctional nodes. We can see the numberof nonfunctional nodes is much higher in the static optimi-zation approach, e.g., when N ¼ 250, there are around15 percent nonfunctional nodes in NETWRAP but nearly30 percent in the static approach. This is because that somenodes in the pre-computed sequence may consume energyat faster rates, making the initial sequence computed in thestatic method no longer valid. Thus it cannot cover all thesensor nodes before energy depletion. Second, a node inemergency is not treated with priority in the static method.Thus a node in emergency may deplete its energy before theSenCar arrives, resulting in high percentage of nonfunc-tional nodes. The results in Fig. 5a clearly indicate that ourreal-time framework is more effective in recharging sensornodes and resolving emergencies.

Fig. 5b shows the average response time to emergencies.We can see while NETWRAP takes around 10 and 12.5 hours(for N ¼ 250 and 350 respectively), the static approach takesdrastically longer times (around 61 and 160 hours, almost

one order of magnitude longer). This is because in [12]emergency and normal nodes are not differentiated. A pre-computed route containing both types of nodes wouldresult in extremely long waiting times for emergency nodes.The approach degrades fast and becomes infeasible as thenetwork size increases. In contrast, NETWRAP prioritizesnodes in emergency; it resolves nonfunctional situationsmuch faster than the static approach.

7.3 Network Performance

In this section, we evaluate the energy evolution of the net-work, the number of emergency and nonfunctional (i.e.,energy depleted) nodes of the network, and the mainte-nance cost of the framework.

7.3.1 Energy Evolution

First, we show the energy evolution in the networks with 500nodes and 1,000 nodes served by different numbers of Sen-Cars, compared to the upper bounds of total recharge capa-bilities. In Fig. 3, the maximum recharging rate is achieved inthe 17th minute to 45th minute duration. It replenishes 75percent of the battery energy, equivalent to 433 J/min. Theupper bound is calculated by assuming that all the SenCarsare performing recharge at maximum recharging rates allthe time. In Fig. 6, the amount of energy consumed, replen-ished and recharge upper bound in every one-hour time slotis plotted as functions of the simulation time.

In Figs. 6a and 6c, we can see that the consumed energy“steps down” to a lower level around 400 hours and thenenters equilibrium. This is because a portion of sensor nodesdeplete their energy and do not get recharged. In these twoscenarios the energy neutral condition has been violated,simply because the number of SenCars is not enough.Figs. 6b and 6d show the energy evolution when the num-ber of SenCars is increased by 1, both of which satisfy theenergy neutral condition at the equilibrium and there is nosuch “step-down” effect in energy consumption. The gapbetween the recharge upper bound and energy replenishedis due to that there are traveling time and idling timebetween two consecutive recharges in simulations. In addi-tion, the SenCars may perform normal recharge in whichthe recharging rates are much lower than the maximumrecharging rates used for calculating the upper bound.

The energy distribution among nodes also carries valu-able information about the health of the network. Higheraverage energy distribution is more robust to unexpected

TABLE 4Total Traveling Distance of SenCars,D

Fig. 5. Comparison of static and real-time approaches in terms of (a) per-centage of nonfunctional nodes; (b) average response time toemergencies.

WANG ET AL.: NETWRAP: AN NDN BASED REAL-TIME WIRELESS RECHARGING FRAMEWORK FORWIRELESS SENSOR NETWORKS 1293

surges in energy consumption. Fig. 7 shows the energydistribution of N ¼ 500, S ¼ 2; 3 and N ¼ 800, S ¼ 4; 5. Tosee the benefits of more SenCars, compare Figs. 7a and7b. The latter has energy distribution that concentratesaround a higher average value. In Fig. 7d for a networksize of 1,000 sensors, the number of nodes with energybelow the emergency threshold is significantly lower thanthat in Fig. 7c.

7.3.2 Number of Emergencies

Fig. 8 compares the percentage of nodes in emergency andnonfunctional (i.e., energy at zero) status for networks of500 and 1,000 nodes with different numbers of SenCars.

First, we can see that there are surges in the numbers ofemergency and nonfunctional nodes during the first200 hours. This is due to the fact that the SenCars onlyresponds to requests when the node energy is below thenormal recharge threshold. When such requests swarm intothe job queues on the SenCars at the beginning of 200 hours,we can see that the SenCars’ capacity has been temporarilyexceeded. As the energy of sensors is restored, the numbersof emergency and nonfunctional nodes decrease sharply.

To illustrate the consequences of insufficient number ofSenCars, we vary the number of SenCars S over a rangeincluding the minimum number needed for energy neutral.Figs. 8a and 8b show the number of emergency and nonfunc-tional nodes over time. For cases N ¼ 500; S ¼ 2 andN ¼ 1;000; S ¼ 4 when the number of SenCars is insufficientfor energy neutral, we can see that about 30 percent nodes arein constant emergency and 20 percent nodes are in nonfunc-tional status after the network achieves equilibrium. ForN ¼ 500; S ¼ 3, occasionally, there are nonfunctional nodesbut they are soon recharged by the SenCars. For a majority ofthe time, the number of nonfunctional nodes stays at zero. ForN ¼ 1;000; S ¼ 5, the number of nonfunctional nodes stays atzero at equilibriumwith only a small number of emergencies.

Recall from Proposition 1 that the minimum number ofSenCars for N ¼ 500 and N ¼ 1;000 can be calculated asS ¼ d2:41e ¼ 3 and S ¼ d4:84e ¼ 5 for the given parametersettings in Table 3. These numbers match well with our simu-lation results that S ¼ 3; 5 are the minimum number of Sen-Cars to achieve perpetual operation at equilibrium,respectively. By utilizing our theoretical analysis, the networkadministrator can make reasonable estimations for the mini-mumnumber of SenCars neededwhen planning a network.

7.4 Cost Evaluation

7.4.1 Comparison of Energy Information Collection

Schemes

We compare energy consumption for different energyinformation collection schemes. Rather than collectingenergy information at the SenCars, another method is toroute it through multi-hop transmission to the service sta-tion. The service station computes recharge schedules anddisseminates decisions to SenCars via long range radio. Achallenge to this alternative scheme is that more energy isconsumed on nodes near the service station. For demon-stration purposes, we draw the heat map of energy con-sumed in a 1-hour interval after the network entersequilibrium in Fig. 9. First, we observe that more energy is

(a) (b)

(c) (d)

Fig. 7. Energy distribution at equilibrium. (a) N ¼ 500, S ¼ 2.(b)N ¼ 500, S ¼ 3. (c)N ¼ 1;000, S ¼ 4. (d)N ¼ 1;000, S ¼ 5.

(a) (b)

Fig. 8. Number of emergent and nonfunctional nodes (a) number ofemergent nodes (b) number of nonfunctional nodes.

(a) (b)

(c) (d)

Fig. 6. Evolution of energy consumption versus energy replenishment insix months time. (a) N ¼ 500, S ¼ 2. (b) N ¼ 500, S ¼ 3. (c) N ¼ 1;000,S ¼ 4. (d)N ¼ 1;000, S ¼ 5.

1294 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014

consumed if the information is routed back to the servicestation, i.e., three-four times of that to route it to SenCars.Second, more energy is consumed on nodes near the servicestation, which is shown as bright spot in Fig. 9a. Since arechargeable battery has a limited number of rechargingcycles, higher loads on these nodes result in more frequentrecharge and faster battery expiration.

7.4.2 Evaluation of Protocol Overhead

We evaluate the energy overhead incurred during transmis-sion of all types of messages sent by sensor nodes or Sen-Cars, and compare with that of the static scheme in [12],where energy information is routed to the service stationevery 6 hours. Fig. 10 shows the average energy overheadfor each node per hour in a six month period for differentscenarios. Due to head selection, our protocol has certainamount of overhead (around 6-8 mJ/h per node) at thebeginning. We plot the energy overhead after the networksenter equilibrium.

First, we can see that the average energy overhead isfrom 0.1 to 1 mJ. Compared to the average energy consump-tion of 135 J/h (i.e., average energy consumption per slot37.5 mJ times 3,600 s) due to sensing activities for eachnode, the overhead is negligible. Second, we can see that theaverage energy overhead is similar to that the static scheme.Intuitively, our protocol could incur more energy overheadbecause energy information is collected more frequently.However, the static scheme requires the energy informationrouted back to the service station. Thus unbalanced energyconsumption on nodes near the service station is inevitable.The scalability of the scheme degrades when the size of thenetwork increases. In contrast, delivering the energy

information to multiple mobile SenCars alleviates the unbal-ance in our protocol.

The energy overhead to gather emergency energy infor-mation is not significant in our protocol. Both the emer-gency interests from SenCars and emergency reports fromnodes are sent directly to proxies (i.e., top-level heads) with-out propagating through the hierarchy, leading to lessenergy overhead. More importantly, when the number ofSenCars is sufficient, most of the time the network has verysmall fraction of nodes in emergency.

Normal energy information gathers causes more over-head. Upon receiving energy interests, the heads need to polltheir descendants in a top-down manner which finallyresults in the broadcast of energy interest message in subar-eas at the bottom-level. Such broadcast, as well as the replyfrom each node, leads to the increase of the number of mes-sages transmitted and the overhead. When the number ofSenCars is sufficient as N ¼ 500; S ¼ 3 andN ¼ 1;000; S ¼ 5,more energy overhead is observed.

7.4.3 Evaluation of Load Balance and Mileage on

SenCars

We monitor the energy replenished by each SenCar andcompare their workloads. The workload is measured by theamount of energy replenished to sensor nodes during theentire simulation period. Table 5 shows that the workloadsare well balanced in all four scenarios due to the effectivecoordination in our framework. The SenCars share thework evenly and no SenCar is overloaded. On the otherhand, we use the mileages SenCars travel to evaluate thecost (e.g., the energy consumed) for SenCars to movearound. Fig. 11 shows the accumulated mileages in sixmonths. For both network sizes, the networks with fewerSenCars (500 nodes and two SenCars, 1,000 nodes and fourSenCars) have lower mileage compared with the same net-work with more SenCars (500 nodes and three SenCars,1,000 nodes and five SenCars), respectively. This is due to

Fig. 10. Average energy overhead for each sensor node per hour.

TABLE 5Balance of Load on SenCars

Fig. 9. Comparison of energy information convergence schemes (a) con-verge to service station (b) converge to SenCars.

Fig. 11. Mileages SenCars have traveled in six months.

WANG ET AL.: NETWRAP: AN NDN BASED REAL-TIME WIRELESS RECHARGING FRAMEWORK FORWIRELESS SENSOR NETWORKS 1295

the presence of nonfunctional nodes. According to the cal-culation of weight for emergency selection (Eq. (9)), decisionis made based on the residual lifetime of the nodes and thetraveling time from the SenCars to the nodes. For the net-works with fewer SenCars, there are always approximate20 percent nonfunctional nodes after the networks enterequilibrium. The weights are dominated by the travelingtime which is proportional to the distances from the Sen-Cars to these nodes. Thus the SenCars always choose thenearest nodes for recharge. For the network with more Sen-Cars, however, the traveling time is not the dominating fac-tor, thus the SenCars may choose a farther node withshorter residual lifetime for recharge to avoid battery deple-tion. This causes the increase of SenCar mileage.

8 CONCLUSION AND FUTURE WORKS

In this paper, we study how to coordinate multiple mobilevehicles to recharge sensors and propose a novel NDN-based real-time wireless energy replenishment framework.In the framework, a comprehensive set of communicationprotocols are developed using NDN concepts and mecha-nisms to provide real-time energy information gatheringand delivery. The protocols can adapt to unpredictablenetwork conditions and satisfy the needs for both normaland emergency recharging. Then we formally analyze theprobability for the energy neutral condition to hold, whichis required for perpetual network operation. In the analy-sis, we derive the minimum number of SenCars needed toachieve perpetual operations. To address concurrent emer-gency situations, we model the Emergency Recharge Opti-mization problem with multiple SenCars into the m-TSPwith Deadline problem and provide a fast, efficient heuris-tic algorithm suitable for dynamic network conditions.The extensive simulation results demonstrate the effi-ciency and effectiveness of the proposed algorithm andthe framework in improving network performance com-pared to the static optimization approach and other meth-ods of energy information collection. We also validate thecorrectness of theoretical analysis on the minimum num-ber of SenCars needed.

There are some interesting issues that deserve furtherstudy in future. One important practical aspect is therecharge capacity of the SenCar, and its own energy con-sumption in moving. Such factors should be included in theoptimization formulation to understand their impacts onrecharge decisions. In addition, since the resources are lim-ited on the SenCars, important nodes (e.g., cluster heads,proxies) may need some priority in recharging. Anotherimportant issue is the distributed decision and coordinationamong SenCars. Currently, the decisions are aided by theservice station with long range radio transmissions. A dis-tributed design would allow SenCars to coordinate witheach other to make decisions, which is more robust andpotentially more efficient.

ACKNOWLEDGMENTS

This work was supported in part by the US National ScienceFoundation (NSF) grant numbers ECCS-0801438 and ECCS-1307576 and US ARO grant number W911NF-09-1-0154.

REFERENCES

[1] A. Kurs, A. Karalis, R. Moffatt, J.D. Joannopoulos, P. Fisher, andM. Soljacic, “Wireless Power Transfer via Strongly Coupled Mag-netic Resonances,” Science, vol. 317, pp. 83-86, 2007.

[2] A. Karalis, J.D. Joannopoulos, and M. Soljacic, “Efficient WirelessNon-Radiative Mid-Range Energy Transfer,” Annals of Physics,vol. 323, no. 1, pp. 34-48, Jan. 2008.

[3] M. Rahimi, H. Shah, G. Sukhatme, J. Heideman, and D. Estrin,“Studying the Feasibility of Energy Harvesting in a Mobile SensorNetwork,” Proc. IEEE Int’l Conf. Robotics and Automation, 2003.

[4] A. Kansal, J. Hsu, andM.Srivastava, V. Raqhunathan, “HarvestingAware PowerManagement for SensorNetworks,” Proc. 43rd ACM/IEEEDesign Automation Conf., 2006.

[5] PowerCast Corp, http://www.powercastco.com, 2014.[6] B. Tong, Z. Li, G. Wang, and W. Zhang, “How Wireless Power

Charging Technology Affects Sensor Network Deployment andRouting,” Proc. IEEE 30th Int’l Conf. Distributed Computing Systems(ICDCS), 2010.

[7] S. He, J. Chen, F. Jiang, D Yau, G. Xing, and Y. Sun, “Energy Provi-sioning in Wireless Rechargeable Sensor Networks,” Proc. IEEEINFOCOM, 2011.

[8] Y. Peng, Z. Li, W. Zhang, and D. Qiao, “Prolonging Sensor Net-work Lifetime through Wireless Charging,” Proc. IEEE 31st IEEEReal-Time Systems Symp. (RTSS), 2010.

[9] Z. Li, Y. Peng, W. Zhang, and D. Qiao, “J-RoC: A Joint Routingand Charging Scheme to Prolong Sensor Network Lifetime,” Proc.19th IEEE Int’l Conf. Network Protocols (ICNP), 2011.

[10] C. Angelopoulos, S. Nikoletseas, T. Raptis, C. Raptopoulos, F.Vasilakis,“Efficient Energy Management in Wireless RechargeableSensor Networks,” Proc. IEEE 15th ACM Int’l Conf. Modeling, Anal-ysis and Simulation of Wireless and Mobile Systems (MSWiM), 2012.

[11] Y. Shi, L. Xie, T. Hou, and H. Sherali, “On Renewable Sensor Net-workswithWireless Energy Transfer,” Proc. IEEE INFOCOM, 2011.

[12] M. Zhao, J. Li, and Y. Yang, “Joint Mobile Energy Replenishmentand Data Gathering in Wireless Rechargeable Sensor Networks,”Proc. IEEE 23rd Int’l Teletraffic Congress (ITC), 2011.

[13] S. Zhang, J. Wu, and S. Lu, “Collaborative Mobile Charging forSensor Networks,”Proc. IEEE Ninth Int’l Conf. Mobile Ad-Hoc andSensor Systems (MASS), 2012.

[14] V. Jacobson, D. Smetters, J. Thornton, M. Plass, N. Briggs, and R.Braynard, “Networking Named Content,” Proc. ACM Fifth Int’lConf. Emerging Networking Experiments and Technologies (CoNEXT),2009.

[15] R. Shah, S. Roy, S. Jain, andW. Brunette, “Data MULEs: Modellinga Three-Tier Architecture for Sparse Sensor Networks,” Proc. FirstIEEE Int’l Workshop Sensor Network Protocols and Applications, 2003.

[16] D. Jea, A. Somasundara, and M. Srivastava, “Multiple ControlledMobile Elements (Data Mules) for Data Collection in SensorNetworks,” Proc. First IEEE Int’l Conf. Distributed Computing inSensor Systems (DCOSS), 2005.

[17] A. Somasundara, A. Ramamoorthy, and M. Srivastava, “MobileElement Scheduling for Efficient Data Collection in Wireless Sen-sor Networks with Dynamic Deadlines,” Proc. 25th IEEE Int’l Real-Time Systems Symp. (RTSS), 2004.

[18] I. Chatzigiannakis, A. Kinalis, S. Nikoletseas, and J. Rolim, “Fastand Energy Efficient Sensor Data Collection by Multiple MobileSinks,” Proc. ACM Fifth ACM Int’l Workshop Mobility Managementand Wireless Access (MobiWac), 2007.

[19] M. Ma and Y. Yang, “SenCar: An Energy-Efficient Data GatheringMechanism for Large-Scale Multihop Sensor Networks,” IEEETrans. Parallel and Distributed Systems, vol. 18, no. 10, pp. 1476-1488, Oct. 2007.

[20] M. Ma and Y. Yang, “Data Gathering in Wireless Sensor Networkswith Mobile Collectors,” Proc. IEEE Int’l Symp. Parallel and Distrib-uted Processing (IPDPS), 2008.

[21] O. Younis and S. Fahmy, “Distributed Clustering in Ad-Hoc Sen-sor Networks: A Hybrid, Energy-Efficient Approach,” IEEE Trans.Mobile Computing, vol. 3, no. 4, pp. 366-379, Oct. 2004.

[22] Panasonic Ni-MH Battery Handbook, http://www2.renovaar.ee/userfiles/Panasonic_Ni-MH_Handbook.pdf, 2014.

[23] Y. Wang, M.C. Vuran, and S. Goddard, “Stochastic Analysis ofEnergy Consumption Wireless Sensor Networks,” Proc. IEEE Sev-enth Ann. Comm. Soc. Conf. Sensor Mesh and Ad Hoc Comm. and Net-works (SECON), 2010.

[24] R. Nelson, Probability, Stochastic Processes, and Queueing Theory: TheMathematics of Computer Performance Modeling. Springer, 1995.

1296 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 13, NO. 6, JUNE 2014

[25] S. Ross, A First Course in Probability, eighth ed. Prentice Hall, 2009.[26] C. Miller, A. Tucker, and R. Zemlin, “Integer Programming For-

mulations and Traveling Salesman Problems,” J. ACM, vol. 7,pp. 326-329, 1960.

[27] B. Gavish, “A Note on the Formulation of the m-Salesman Travel-ing Salesman Problem,” Management Science, vol. 22, pp. 704-705,1976.

[28] Tolga Bektas, “The Multiple Traveling Salesman Problem: AnOverview of Formulations and Solution Procedures,”Int’l J. Man-agement Science, vol. 34, pp. 209-219, 2006.

[29] M.M. Solomon, “Algorithm for the Vehicle Routing and Schedul-ing Problems with TimeWindow Constraints,” Operation Research,vol. 35, no. 2, pp. 254-265, 1987.

[30] M.W.P. Savelsbergh, “Local Search in Routing Problems withTime Windows,” Annals of Operation Research, vol. 4, pp. 285-305,1985.

[31] S. Mitrovic-Minic and R. Krishnamurti, “The Multiple TSP withTime Windows: Vehicle Bounds Based on Precedence Graphs,”Operations Research Letters, vol. 34, pp. 111-120, 2006.

[32] M. Desrochers, J.K. Lenstra, M.W.P. Savelsbergh, and F. Soumis,Vehicle Routing with Time Windows: Optimization and Approxima-tion. Elsevier Science Publisher, 1988.

[33] H.C. Lau, M. Sim, and K.M. Teo,“Vehicle Routing Problem withTime Windows and a Limited Number of Vehicles,” EuropeanJ. Operation Research, vol. 148, pp. 559-569, 2003.

[34] E. Taillard, P. Badeau, M. Gendreau, F. Geurtin, and J.Y. Potvin,“A Tabu Search Heuristic for the Vehicle Routing Problem withSoft Time Windows,” Transportation Science, vol. 31, pp. 170-186,1997.

[35] N. Bansal, A. Blum, S. Chawla, and A. Meyerson, “ApproximationAlgorithms for Deadline-TSP and Vehicle Routing with TimeWindows,” Proc. 36th Ann. ACM Symp. Theory of Computing(STOC), 2004.

[36] M. Gendreau, A. Hertz, G. Laporte, and M. Stan, “A GeneralizedInsertion Heuristic for the Traveling Salesman Problem with TimeWindows,” J. Operations Research, vol. 46, no. 3, pp. 330-335, 1998.

[37] A. Tanenbaum, Modern Operating Systems, third ed., p. 125. Pren-tice Hall, 2007.

[38] W.R. Heinzelman, A. Chandrakasan, and H. Balakrishnan,“Energy-Efficient Communication Protocol for Wireless Micro-sensor Networks,” Proc. IEEE 33rd Hawaii Int’l Conf. System Scien-ces (HICSS), 2000.

[39] M. Zhao and Y. Yang, “Bounded Relay Hop Mobile Data Gather-ing in Wireless Sensor Networks,” IEEE Transactions on Computers,vol. 61, no. 2, pp. 265-277, Feb. 2012.

Cong Wang received the BEng degree in infor-mation engineering from the Chinese Universityof Hong Kong and the MS degree in electricalengineering from Columbia University, NewYork. He is currently working toward the PhDdegree in the Department of Electrical and Com-puter Engineering, Stony Brook University, NewYork. His research interests include wireless sen-sor networks, performance evaluation of networkprotocols and algorithms.

Ji Li received the BS degree in electrical engi-neering from Harbin Engineering University,Harbin, China, and the MS degree in electricalengineering from Zhejiang University, Hangzhou,China. He is currently working toward the PhDdegree at the Department of Electrical andComputer Engineering, Stony Brook University,Stony Brook, New York. His research interestsinclude wireless sensor networks and embeddedsystems.

Fan Ye received the BE and MS degrees in auto-mation and computer science from Tsinghua Uni-versity, Beijing, China, and the PhD degree incomputer science from UCLA. He then joinedIBM T.J. Watson Research as a research staffmember, working on stream processing systems,cloud messaging and mobile computing. Heserved as the chair for IBM Watson Mobile Com-puting Professional Interest Community for twoyears. He is currently an associate professor withthe Center for Energy-Efficient Computing and

Applications at the EECS school of Peking University, Beijing, China. Heholds over a dozen US/international patents and patent applications. Hisresearch interests include mobile computing, mobile cloud, wireless net-works, sensor networks and their applications.

Yuanyuan Yang received the BEng and MSdegrees in computer science and engineeringfrom Tsinghua University, Beijing, China, and theMSE and PhD degrees in computer science fromJohns Hopkins University, Baltimore, Maryland.She is a professor of computer engineering andcomputer science at Stony Brook University,New York, and the director of Communicationsand Devices Division at New York State Centerof Excellence in Wireless and Information Tech-nology (CEWIT). Her research interests include

wireless networks, data center networks, optical networks and high-speed networks. She has published more than 280 papers in major jour-nals and refereed conference proceedings and holds seven US patentsin these areas. She is currently the associate editor-in-chief for the IEEETransactions on Computers and an associate editor for the Journal ofParallel and Distributed Computing. She has served as an associate edi-tor for the IEEE Transactions on Computers and IEEE Transactions onParallel and Distributed Systems. She has served as a general chair,program chair, or vice chair for several major conferences and a pro-gram committee member for numerous conferences. She is a fellow ofthe IEEE.

" For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.

WANG ET AL.: NETWRAP: AN NDN BASED REAL-TIME WIRELESS RECHARGING FRAMEWORK FORWIRELESS SENSOR NETWORKS 1297