energy-efficient task allocation with quality of service provisioning for concurrent applications in...

20
Energy-efcient task allocation with quality of service provisioning for concurrent applications in multi-functional wireless sensor network systems Wei Li 1,3, * ,, Flávia C. Delicato 2,1 , Paulo F. Pires 2,1 and Albert Y. Zomaya 1 1 The Centre for Distributed and High Performance Computing, School of IT, University of Sydney, Sydney, NSW, Australia 2 Federal University of Rio de Janeiro, Rio de Janeiro, RJ, Brazil 3 National ICT Australia, Sydney, NSW, Australia SUMMARY Multi-functional wireless sensor network (WSN) system is a new design trend of WSNs, which are evolving from dedicated application-specic systems to an integrated infrastructure that supports the execution of multiple concurrent applications. Such system offers inherent advantages in terms of cost and exibility because it allows the effective utilization of available sensors and resource sharing among multiple applica- tions. However, sensor nodes are very constrained in resources, mainly regarding their energy. Therefore, the usage of such resources needs to be carefully managed, and the sharing with several applications imposes new challenges in achieving energy efciency in these networks. In order to exploit the full poten- tial of multi-functional WSN systems, it is crucial to design mechanisms that effectively allocate tasks onto sensors so that the entire system lifetime is maximized while meeting various application requirements. However, it is likely that the requirements of different applications cannot be simultaneously met. In this paper, we present the Multi-Application Requirements Aware and Energy Efciency algorithm as a new resource allocation heuristic for multi-functional WSN system to maximize system lifetime subject to various application requirements. The heuristic effectively deals with different quality of service parameters (possibly conicting) trading those parameters and exploiting heterogeneity of multiple WSNs. Copyright © 2013 John Wiley & Sons, Ltd. Received 29 April 2012; Revised 23 September 2012; Accepted 7 July 2013 KEY WORDS: wireless sensor network; task allocation; energy efciency; resource management; system lifetime 1. INTRODUCTION Ever since the emergence of wireless sensor networks (WSNs), they have been traditionally developed as a dedicated application-specic system. However, recent years have witnessed the emergence of new applications, trends, and paradigm shifts in the WSN eld, including new design approaches. In many commercial WSN deployments, the return of investment (ROI) is a crucial factor to determine the successfulness of those deployments. On one hand, as it is always the case in networks composed of resource-constrained devices, the system lifetime is the fundamental requirement to be taken into account in the design of a WSN system. In this sense, the ROI is considered benecial from a longer system lifetime. On the other hand, the utilization of a WSN plays an increasingly important role in current WSN design. For instance, a WSN designed for a smart building may *Correspondence to: Wei Li, The Centre for Distributed and High Performance Computing, School of IT, University of Sydney, Sydney, NSW, Australia. E-mail: [email protected] Copyright © 2013 John Wiley & Sons, Ltd. CONCURRENCY AND COMPUTATION: PRACTICE AND EXPERIENCE Concurrency Computat.: Pract. Exper. (2013) Published online in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/cpe.3107

Upload: albert-y

Post on 10-Dec-2016

214 views

Category:

Documents


1 download

TRANSCRIPT

CONCURRENCY AND COMPUTATION: PRACTICE AND EXPERIENCEConcurrency Computat.: Pract. Exper. (2013)Published online in Wiley Online Library (wileyonlinelibrary.com). DOI: 10.1002/cpe.3107

Energy-efficient task allocation with quality of service provisioningfor concurrent applications in multi-functional wireless sensor

network systems

Wei Li1,3,*,†, Flávia C. Delicato2,1, Paulo F. Pires2,1 and Albert Y. Zomaya1

1The Centre for Distributed and High Performance Computing, School of IT, University of Sydney,Sydney, NSW, Australia

2Federal University of Rio de Janeiro, Rio de Janeiro, RJ, Brazil3National ICT Australia, Sydney, NSW, Australia

SUMMARY

Multi-functional wireless sensor network (WSN) system is a new design trend of WSNs, which are evolvingfrom dedicated application-specific systems to an integrated infrastructure that supports the execution ofmultiple concurrent applications. Such system offers inherent advantages in terms of cost and flexibilitybecause it allows the effective utilization of available sensors and resource sharing among multiple applica-tions. However, sensor nodes are very constrained in resources, mainly regarding their energy. Therefore,the usage of such resources needs to be carefully managed, and the sharing with several applicationsimposes new challenges in achieving energy efficiency in these networks. In order to exploit the full poten-tial of multi-functional WSN systems, it is crucial to design mechanisms that effectively allocate tasks ontosensors so that the entire system lifetime is maximized while meeting various application requirements.However, it is likely that the requirements of different applications cannot be simultaneously met. In thispaper, we present the Multi-Application Requirements Aware and Energy Efficiency algorithm as a newresource allocation heuristic for multi-functional WSN system to maximize system lifetime subject tovarious application requirements. The heuristic effectively deals with different quality of service parameters(possibly conflicting) trading those parameters and exploiting heterogeneity of multiple WSNs. Copyright ©2013 John Wiley & Sons, Ltd.

Received 29 April 2012; Revised 23 September 2012; Accepted 7 July 2013

KEY WORDS: wireless sensor network; task allocation; energy efficiency; resource management;system lifetime

1. INTRODUCTION

Ever since the emergence of wireless sensor networks (WSNs), they have been traditionally developedas a dedicated application-specific system. However, recent years have witnessed the emergence ofnew applications, trends, and paradigm shifts in the WSN field, including new design approaches. Inmany commercial WSN deployments, the return of investment (ROI) is a crucial factor to determinethe successfulness of those deployments. On one hand, as it is always the case in networkscomposed of resource-constrained devices, the system lifetime is the fundamental requirement to betaken into account in the design of a WSN system. In this sense, the ROI is considered beneficialfrom a longer system lifetime. On the other hand, the utilization of a WSN plays an increasinglyimportant role in current WSN design. For instance, a WSN designed for a smart building may

*Correspondence to: Wei Li, The Centre for Distributed and High Performance Computing, School of IT, University ofSydney, Sydney, NSW, Australia.

†E-mail: [email protected]

Copyright © 2013 John Wiley & Sons, Ltd.

W. LI ET AL.

provide the following four services: temperature and humidity monitoring, security alarms, lightcontrol, and structural health monitoring. Obviously, in this case, each service requires a set ofsensors (dependent upon the service type) to perform the associated sensing tasks. In the traditionaldesign, the smart building project would require four independent service-specific WSNs to fulfillthe needs of the applications. However, with such design, the utilization of each individual WSNcould be low, and the maintenance cost could be high. Therefore, one direct consequence of thistype of design is the decrease of the WSN ROI. For these reasons, and considering the physicalnetworks’ infrastructure cost and the fact that the same set of sensors can be useful for a variety ofapplications, the design trend of WSNs starts shifting from energy-efficient application-specificapproach toward energy-efficient multiple applications approach. Compared to the traditional designapproach, this new one enables multiple applications to share the resource of sensors andnetworking, as well as increases the overall system utilization, so that the system cost can bereduced and the ROI can be increased. However, this new trend hinders the issue of obtainingenergy efficiency in the WSN and poses new challenges regarding simultaneously meetingrequirements of different applications.

Several novel WSN application scenarios, such as web of things [1], industrial automation [2],cyber-physical system [3], and smart grids [4], among others, have adopted the new designapproaches that support performing multiple concurrent applications on the same WSN system.For these scenarios, the involved WSN systems are generally of large scale, hierarchicallystructured, and encompassing heterogeneous resource constraint sensors that provide diversefunctions. By heterogeneous, we mean that sensor nodes in the system have multiple sensingdevices (for instance, temperature, humidity, light intensity, and acceleration); thus, a same nodeis capable to provide different services. In this paper, the systems consisting of a set of possiblyspatial overlapping WSNs, where each WSN contains a number of heterogeneous sensors, whichact as a support infrastructure for a same set of concurrent applications, are referred to as multi-functional WSN system. Moreover, the multi-functional WSN system should support variousrequirements of applications that have distinct purposes, where the application requirements arerepresented by a combination of Quality of Service (QoS) parameters and a set of requestedsensing tasks. Such WSN design approach faces a new challenge that is how to find out theoptimal solution for allocating applications to a specific WSN deployment so as to maximize thesystem lifetime subject to the resource constraints of sensor nodes and the applicationrequirements. Similar issues [5–7] also arise in the research areas of distributed computing andgrid computing. However, the existent algorithms in those areas are mainly focused on a well-known performance metric called makespan [8], which represents the time difference between anapplication start and its completion. Instead, in WSNs, the system lifetime and application QoSrequirements (for instance, data accuracy, delay, and coverage) are the most relevant parametersto be considered in the allocation process. The system lifetime, in its turn, is strongly related tothe energy consumption of sensor nodes, and the performance of a sensing application is usuallymeasured by its QoS parameters. For instance, for some time critical applications, as firedetection [9], the system response time (related to the network delay) is the main performancemetric. For other application domains, as habitat monitoring [10], the system lifetime is a prioritymetric, while for others, as target tracking [11], the data accuracy of the physical phenomenon ofinterest is the main performance issue. In our research, we consider energy efficiency and dataaccuracy as two selected QoS parameters. However, in most cases, energy efficiency and dataaccuracy are two conflicting QoS parameters. For example, the improvement of data accuracynormally requires higher data sampling rate, and the increased rate makes sensors remain activefor a longer time period, which leads to excessive energy consumption. Depending on differentapplication requirements, a tradeoff needs to be found between these two parameters when theallocation decision is made.

To address the previous challenge, the process of allocating tasks (the units of execution thatmake up an application) to sensor nodes and managing communication among tasks in WSNs isa key issue to fully exploit the potential of a multi-functional WSN system. The goal of the taskallocation process is to provide an effective resource management scheme so that the entiresystem lifetime is maximized while meeting various application requirements. The task allocation

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

ENERGY-EFFICIENT TASK ALLOCATION

problem (also known as sensor-task assignment in WSN) in its general form is a non-deterministicpolynomial-time hard problem [12], so heuristic technique is useful for solving the problem in areasonable amount of time. In this paper, a straightforward greedy heuristic algorithm—calledMulti-Application Requirements Aware and Energy Efficiency (MARAEE)—is presented as anew resource allocation mechanism for allocating various types of tasks from differentapplications to a multi-functional WSN system. The proposed algorithm operates into two stepsto handling incoming applications in offline or online manner, which offline case means that theentire set of tasks consisted of an application is given at once while online case means that thetasks of an application are arrived at different points of time. In step one, the algorithm seeksfor the proper sensor nodes that are capable to provide the requested services under geographicalconstraints (meaning that in this step, the algorithm takes into account only the types of services,sensors’ location, and sensing range of the sensor nodes). In step two, based on the applicationrequirements and the results generated from step one, MARAEE decides the sensor-taskassignment and dispatches the task to the selected sensors in order to maximize the systemlifetime subject to meet the requirements of different applications.

The research in this paper makes the following main contributions:

• A general WSN system model called multi-functional WSN system is introduced, which is funda-mentally different from the traditional WSNs designed for running only a single designatedapplication.

• The proposed algorithm MARAEE is designed to effectively exploit the heterogeneity of WSNsto achieve better performance.

• MARAEE generates the sensor-task assignment based on the submitted application(s) and on thesystem status to maximize system lifetime subject to different application requirements.

• A new energy-efficient technique is developed for sensors to process sensing tasks withoutsacrificing the quality of generated sensing data.

• A simple but effective energy balance strategy is integrated with MARAEE to prevent overusingenergy of certain WSNs in the decision process of task allocation, so that the energy is consumedin a balanced way and the entire system lifetime can be further extended.

The remainder of this paper is structured as follows. Section 2 examines some of the literaturerelated to this work. In Section 3, the application model, system model, energy model, and problemformulation are described in sequence. The MARAEE algorithm is presented in details in Section 4. InSection 5, we evaluate the algorithm performance. Finally, Section 6 concludes the paper and presentsfuture work.

2. RELATED WORK

Recently, much emphasis has been given to the general task-sensor assignment problem in WSNs.Although a number of efforts in this respect have been made, those efforts are not directlyapplicable to the scenario considered in this paper, that is, concurrent applications running on amulti-functional WSN system. Researches that share a similar goal concern the scheduling ofmultiple applications in distributed and heterogeneous computing systems, such as clusters andgrids. Specifically in [13], the authors proposed several list scheduling-based algorithms thatjudiciously constrain the amount of resources that can be allocated to each incoming application in ahomogeneous multi-cluster system. Algorithms proposed in [14] combine multiple task graphs into asingle composite task graph, which is then scheduled using a standard list scheduling algorithm, andtwo fairness-aware algorithms were developed to perform task-by-task scheduling over all tasks inall task graphs to optimize the overall makespan. A three-tiered system model is adopted in [15],and a two-level distributed scheduling algorithm for multiple tasks graphs is proposed. The firstlevel is a WAN-wide distributed scheduler responsible for dispatching different applications toseveral second level schedulers that are LAN-wide and centralized. No matter what algorithm isproposed for distributed computing, the first priority is to minimize the makespan but not energyefficiency or other WSN-related performance metrics. Furthermore, the properties of computational

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

W. LI ET AL.

tasks are very different from sensing tasks. For instance, the popular energy-efficient technique,Dynamic Voltage Scaling (DVS), used in distributed computing, although being potentially useful inWSNs (see for instance [16]), is not very commonly employed in real-world sensor hardware forenergy conservation when performing tasks. Furthermore, the resource allocation problem addressedin other areas (e.g., grid, cluster, and wireless network) is fundamentally different from that thesame problem when addressed in the WSNs context. For example, cluster and grid computingsystems address issues like number of machines and task completion time, while the wirelessnetwork mostly addresses network-level issues like data rate, packet delay, throughput, and packetloss probability. Consequently, the algorithms developed for allocating multiple applications ontomulti-clusters system cannot be directly applied to the multi-functional WSN system or evenconventional WSNs.

Several noticeable works for a single WSN with different goals have been proposed recently. In [17],Byers and Nasser introduced a framework in which the task-sensor assignment problem is modeled withnotions of utility (accuracy of the collected data and its usefulness to a task) and cost (the energyconsumption of activating and operating the sensors and other possible cost factors). They aimed todevelop an algorithm that maximizes the utility while staying under a predefined budget (of energy).A market-based task-sensor assignment method is proposed in [18], where the tasks are allocated tothose sensors that provide information or ‘goods’ that can be purchased while observing certainbudgets. Another energy-aware task-sensor assignment algorithm [12] is proposed by Rowaihy et al.by using joint utility functions to obtain the near-optimal allocation. In their solution, the energyefficiency is achieved by evenly distributing the tasks among sensors. However, sensors are onlyallowed to process single tasks with the highest priority at a time, while the other tasks have to waitfor their commencement until the completion of the tasks with higher priority. In [19], the authorsadopted the similar WSN system paradigm as proposed in this paper, but the focus of their work is tofind out the best tradeoff between the fidelity-aware resource allocation and the selection to supportmultiple concurrent applications. Fidelity is defined as an application-dependent concept that candenote a variety of operational measures including communication latency, data quality, andredundancy. In order to support more applications running in the WSN system simultaneously, thealgorithm reduces the value of fidelity of several tasks in the applications to meet the requirement,which induce the quality reduction for those applications. Utility-based Multi-ApplicationDeployment Environment (UMADE) [20], proposed by Bhattacharya et al., is an integratedsystem for allocating and deploying applications in a shared sensor networks (the resource ofsensors can be shared among applications). The goal of application allocation sought by UMADEin a shared sensor network is to allocate sensor nodes to applications so as to maximize the overallsystem utility (measured by quality of monitoring) subject to node memory constraints. However,the energy consumption is not taken into account in their solution. The aforementioned works canbe attributed to a multi-objective resource allocation problem in WSNs, and more detailedinformation can be found in [21]. Besides the aforementioned solutions, the proposal presented in[22] is one of the few works aiming to achieve load balancing by allocating tasks to sensors,instead of achieving such goal through data propagation, which is addressed in [23–25]. In [22],an energy-balanced task allocation algorithm is developed to meet the deadline of a real-timeapplication running on homogeneous sensor nodes connected via multiple wireless channels. Theyformulated the problem as an integer linear programming issue and presented a polynomial three-phase heuristic solution. However, they did not consider the broadcasting nature of wirelesscommunication in their model, and the multiple wireless channel technique is not widely used inthe real-world sensor nodes.

The problem we tackle here is distinct from the previous works because our work considers thetradeoff of two conflicting QoS parameters, data accuracy, and energy efficiency, which are stronglyrelated to the context of WSNs as the primary allocation criteria, as well as it takes the energybalance among WSNs into account during the task allocation decision process. To the best of ourknowledge, MARAEE is the first work devoted to the study of maximizing system lifetime byallocating tasks in a multi-functional WSN system, which simultaneously encompasses severalWSNs constructed by heterogeneous sensors and multiple applications with various purposes,subject to satisfying different application requirements.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

ENERGY-EFFICIENT TASK ALLOCATION

3. ARCHITECTURE AND MODELS

We consider a multi-functional WSN system consisting of three core components: an applicationplanner, a number of WSNs, and heterogeneous sensors. A general model of multi-functional WSNsystem is given in Figure 1. The application planner is a software component deployed in a serveror desktop computer that acts as a facade to the entire system, as well as serves as the gatewaybetween the WSNs and the external networks such as the Internet. Its major responsibilities includethe following: handle dynamic application arrivals, decompose an application into tasks, distributethe tasks to WSNs, and maintain the status of WSNs when sink node reports the latest informationof sensors inside each WSN. With the collaboration of other components, the application plannercan utilize the global knowledge of system to make task allocation in favor of extending the systemlifetime subject to meet the requirements of applications.

Each WSN provides differential services to the applications in its covering area, depending on thecomposition of sensors it contains. Each WSN has at least one fixed sink node that has tworesponsibilities. First, the sink node establishes connections from the WSN to the applicationplanner and among WSNs that pertain to a same multi-functional WSN system. Second, sink nodescollect the information of sensors inside their network and send back to the application planner inorder to assist it to make the task allocation decision with the latest global knowledge of the system.The information includes the capabilities (services), the current status, and the geographical locationof each sensor node. Such information is updated by messages sent from sensor nodes when it isrequired from sink nodes (normally at the time of the allocated tasks of an application aresuccessfully completed). According to the information, sink nodes cooperate with sensors and theapplication planner to assign and complete the applications.

Within the WSNs, the sensors are responsible for performing the allocated tasks and send the resultback to the sink node when the tasks are completed. Sensors can be heterogeneous in terms of bothsupported services and resource capacities (in this paper, we only concentrate on supported services)because a sensor node can be equipped with one or more sensing devices. Integrating multiplesensing devices on the same sensor (e.g., Crossbow [26] and Arduino [27] products) can reducehardware cost because sensing devices share the computation and communication components.

Figure 1. A general model of multi-functional WSN system.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

W. LI ET AL.

In the next subsections, we elaborate the models that are used in our proposal, including applicationmodel, system model, and energy model, and we formally define our problem in the last subsection.

3.1. Application model

In our proposal, an application is defined as a four-tuple {V,G,Δt,C} where V denotes the tasksand each task v ∈V represents the demand for a service, G is the geographic area to bemonitored, Δt is the application lifespan, and C represents the confidence of an applicationregarding its successful completion. In the context of our work, task and service are stronglycorrelated. A service indicates the type of data that can be obtained from a sensor (moreprecisely, the phenomenon that can be monitored by a sensing device) so as to provide it to therelevant task. A task cannot be further divided; that is, it is the most basic element of anapplication. A given task v has the following properties: {Service _ type, SsR, SdR,Workload}.Service_type denotes the type of service requested by a task. Each task corresponds to one andonly one service type (for instance, temperature, light intensity, humidity, acceleration, etc). SsRand SdR are two application-specific properties to characterize the service requested by a task.SsR denotes the data sensing rate, meaning the time interval between consecutive data readingsthe service requires to be properly performed. SdR denotes the data sending rate that indicatesthe frequency of data sending in the execution time period. The Workload element denotes howlong a task will take to complete. In general, WSN applications can be classified in two classesaccording to the SsR and SdR: periodical (or continuous) and event-driven. In periodical/continuous application, environmental data are collected at a data sensing rate—SsR—and thecollected data are transmitted at a data sending rate—SdR (usually the same as SsR). In theevent-driven application, environmental data are collected at a given SsR, and the collected dataare only sent if an event of interest occurs. Such event is defined by a given threshold related tothe collected data values. Geographic area G is determined by four geographic coordinates thatdefine the boundary of a squared area where the application is interested. Application lifespan Δtis used to specify how long the application should last. The relationship between a taskworkload vi_workload and application lifespan Δt is vi_workload≤Δt, which means that theapplication lifespan is equivalent to the maximum task workload of that application.

To complete a WSN application (a composition of tasks), one or more services are required.Specifically, each of these services is the finest-grained and non-divisible service for a particulartask, and they compose the WSN application. In this paper, we assume that tasks in an applicationare independent from each other and are heterogeneous. We also assume that once a task is initiated,it cannot be interrupted until its completion. The independence of tasks means that no precedence isimposed between tasks. In other words, none of a task completion is a prerequisite for another taskcommencement. The heterogeneity of tasks has two meanings in the context of our study. First, anyrequired service is provided by specific (often different) types of sensors. Second, services providedby different sensors have different data accuracy values affected by the environmental noise, whichwill be introduced in Section 3.2. Moreover, different compositions of services provide a differentlevel of confidence to the application. The concept of application confidence is first introduced inthis paper, and it regards the level of confidence that can be assigned to a particular sensor or set ofsensors when performing task(s) to achieve an application goal. As an example, let’s consider anapplication of fire detection. Such application can be met by different compositions of services,encompassing the following sensing tasks: CO2, CO, temperature, and smoke. In this example, CO2

and CO detections are the services used to indicate the concentration of carbon dioxide and carbonmonoxide at the monitored area. Temperature monitoring denotes the service of sensing thetemperature at the monitored area and comparing the collected value with a threshold. Smokedetection is the service used to indicate whether dense smoke is detected. Each service is performedby the respective sensor. A fire can be confirmed by the outcome of an individual service, with alow level of certainty, or by a composition of two or more of these services, with a higher level ofcertainty. Such degree of ‘certainty’ provided by a given service or composition of services ischaracterized by C in the application tuple, where C stands for confidence to indicate that thecertainty of the application is completed successfully. The values of C range from [0%, 100%]. If

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

ENERGY-EFFICIENT TASK ALLOCATION

the composition contains all the fire-related data detected by every possible type of sensor, we have themaximum certainty or confidence (100% in this case), thus totally meeting the application needs. Allthe other compositions only provide a partial meeting of the application needs. In this paper, westipulate that all the tasks of an application have to be completed to provide the maximum certainty/confidence.

3.2. System model

We assume that k WSNs, denoted by the set W = {W1,W2,……,Wk}, are deployed into themonitored area. Each WSN Wi has one sink node SNi and a number of sensor nodes, whichform a multiple-hop network by default. Sink SNi is used to establish the communication linkamong the WSNs and to the external network, such as the Internet. It is also used to distributetasks to the selected sensor nodes that are capable to provide required services in that WSN.Upon the completion of services, the sink node is also responsible for transmitting the results(sensor-generated data) to the users. In addition, sink SNi takes charge of the communicationwith other sink nodes (from different WSNs) to exchange data whenever this is needed. For easeof analysis, we assume that sink nodes are independent devices and do not draw energy fromthe system (they are, for instance, PCs wired to the electric power network). Any WSN canoverlap a set of other WSNs with range [0%, 100%]. This indicates that some regions of themonitored area are mutually covered by more than one WSN. Thus, a required service can beprovided by the sensors from different WSNs.

Sensor nodes are mainly composed of three functional modules: sensing, communication, andprocessing. We assume that each functional module has only two states, namely active and sleep. Asensor node p can be equipped with multiple sensing devices to provide multiple services, forinstance, temperature, light, smoke, movement, and acceleration, among others. For a given sensingdevice, it can only stay in one of two states (active or sleep), and its status does not affect othersensing devices. Each sensor node belongs to one and only one WSN, and sensors can detect allevents occurring within their sensing range. Sensor nodes form a connected network with single-hopor multi-hop topology in a WSN. We assume that all the sensors in a WSN Wi have a validcommunication path to reach the respective sink node SNi. This functionality is provided by a low-level network management algorithm, but the detailed information is out of the scope of this paper.Our solution is agnostic to the protocols used in the underlying layers of the WSN stack, as, forinstance, the routing protocol. All sensors are endowed with the same radio interface as well as havethe same communication range. Communication interference between sensors is not considered inthis paper.

In order to examine the sensing availability of a sensor, we introduce a judging function thatindicates whether a sensor can provide the required service at the specified area. The function isgiven by equation (1),

A s; x; y; ið Þ ¼ 1; if a sensor is able

0; if a sensor is unable

�(1)

where s is the service requested by a task, x and y are the location information for the monitoring event,and i is the index of the sensor. The sensors that are able to provide the request service and meet thelocation condition are assigned with 1, otherwise 0.

Once we consider the possibility of overlapping WSNs, there is a chance for more than onesensor to be able to provide the same service at the specific area but with different degrees ofdata accuracy. Data accuracy in WSNs is affected by several factors [28], such as the nominalprecision of the sensing device, the environmental noise of its measurements, the number ofneighboring nodes, and the proximity to the target area. In this paper, we only take theenvironmental noise of a sensor measurement (Mi) into account. The parameter Mi is manlyaffected by physical characteristics of the location where the sensor node is deployed.Examples of factors that affect the sensor readings are electric signals [4], local temperature,and humidity [29]. The parameter Mi is a normalized value that depends on the actual level of

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

W. LI ET AL.

environmental noise Ni, where Ni ranges from 0 to 100. The measurement environmental noise isthen given by the following equation

Mi ¼ 1� Ni=100 (2)

3.3. Energy model

The energy consumption of a sensor node is a function of the node state and the time during which thesensor remains in that state. The state of a sensor can be described by the combined states of allindividual modules (sensing, communication, and processor). In this paper, the sensing andcommunication modules are the major functional parts with which we are concerned. When thesensor state is determined, a sensor consumes a fixed energy rate in that time period until the statechanges. When a module is active (state on), the energy consumption is much greater than when themodule is inactive (state off). Assuming that an insignificant amount of energy is consumed when amodule is inactive, we consider that the energy consumption in this situation is 0. Overall, theenergy consumption of a sensor during time t is calculated by E(t) =Ec +Es, where Ec represents theenergy consumption of communication module, and Es represents the energy consumption ofsensing module.

Considering the fact that a sensor consumes different energy when it sends or receives the same amountof data over the same distance within its communication range, we distinguish them as Etx(l, d) and Erx(l)where l represents the size of the data being transmitted (sent or received) and d represents the distancebetween two communication nodes. The equations are listed later:

Etx l; dð Þ ¼ Eelec � lþ εamp � l� d2 (3)

Erx lð Þrx ¼ Eelec � l (4)

where Eelec and εamp are hardware-related parameters [30], which denote radio energy dissipation andtransmission amplifier energy dissipation, respectively. The previous equations (3) and (4) are known asfirst order radio model [31], which is a well-known and generally accepted formula for estimatingenergy consumption of communication in the field of low-energy radios (e.g., sensor), during the lastdecade. For any n-hop distance sensors (n> 1 but still belonging to the same WSN), the datacommunication is performed by using shortest path-based multi-hop routing protocol (the routingprocess is out of scope of our work). The energy consumption of transmitting l-bit data from source tothe destination is defined as Etx(l, src, des):

Etx l; src; desð Þ ¼ ∑k

i¼1Etx l; dð Þ (5)

where k is the minimum hop count the data travel from source to destination and Etx(l,d) remains the samemeaning as shown in equation (3). The energy consumption of sensing module is calculated by a linearequation:

Esi ¼ ERsi � tsi (6)

where ERsi represents the energy consumed by an active sensing device i in the unit of time and tsirepresents the time period that a sensing device i remains in the active state. In addition, when anapplication is completed, sink nodes will collect the latest information of sensors within its network. Asmentioned before, sink nodes are independent devices and do not draw energy from the system; thus,the energy consumption spent in the collection process is ignored in this paper. In the informationcollection process, the sensor nodes employ the piggyback technique to send the useful data whennecessary. The updated information of sensor nodes is attached with the collected data from sensingtasks, and the size of it has been already included when we are calculating the energy consumption oftransmitting l-bit data from source to destination.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

ENERGY-EFFICIENT TASK ALLOCATION

3.4. Problem formulation

The goal of the task allocation is to find out a mapping for each application on a set of sensors tomaximize the multi-functional WSN system lifetime subject to application requirements. Accordingto [32], there are several different network lifetime definitions for WSNs. In this paper, we adoptedthe definition of the time in which the first sensor has its energy completely depleted. The reason forusing this definition is that the death of a sensor node has a chance to cause the network to bedisconnected from the system, or some areas requiring monitoring to be uncovered. Thus, thesystem lifetime of the multi-functional WSN system is determined by the minimum network lifetimeof a WSN in the system, which is also the minimum sensor lifetime in that WSN. We use notationsLpi , LWi , and LSYS to represent the lifetime of a sensor pi, a WSN Wi, and the entire system,respectively, and the relationship among these three notations are Lpi≥LWi≥LSYS.

For given m applications, which each application Ai is composed of n tasks and a system topologyΟ, we need to find a mapping Π :V→P, such that each task v ∈V is allocated to a sensor, p∈P, in themulti-functional WSN system for execution. Let Ux ¼ Ux

1;Ux2;……;Ux

n

� �denote a task mapping

scheme of the application on the given system topology Ο, where x is the index of task mapping

solution. Each element uxi ∈Ux is a tuple of the form vi; pj;Evi ;pj ;Dvi ;pj

n o, where pj represents the

sensor to which a task vi (vi∈Ai) is allocated, Evi ;pj represents the total energy consumption (considerboth energy consumption of sensing and communication) of task vi on sensor pj, and Dvi ;pjrepresents the data accuracy that can be obtained if task vi is allocated to sensor pj. The designobjective of MARAEE is to find a task mapping scheme to maximize the system lifetime subject toapplication requirements.

Find Uo ¼ argMax Min Lpi� �� �

subject to ψAi¼ f EAi ;DAið Þ (7)

where ψAirepresents the requirement of application Ai and it is a cost function of energy consumption

EAi and data accuracy DAi of that application, which is detailed in the next section. As mentionedbefore, the task allocation problem is shown to be a non-deterministic polynomial-time hardproblem; thus, heuristic algorithm is employed to solve this problem in polynomial time.

4. ALGORITHM DESIGN

In this section, we present our MARAEE algorithm designed for determining the optimal taskallocation that can be accommodated under the given application requirements in a multi-functionalWSN system. MARAEE is an adaptive centralized task allocation algorithm, which means it ismainly running in the component of application planner but takes the environmental changecollected from other components into consideration for making each task allocation decision.MARAEE is also designed to be tunable to different application requirements, as well as to seek forenergy conservation for maximizing system lifetime by

• Taking an adaptive approach for allocating resources to tasks that can exploit detailed knowledgeof application requirements, application characteristics, and resource availability,

• Minimizing sensing cost by maximizing the data reuse of common services required for differentapplications,

• Reducing communication cost by allocating tasks to the sensor that is close (count by hops) to itssink node when several sensors belonging to different WSNs are available for the allocation, and

• Using application-specific values to supervise the algorithm to select sensors best suited for theapplication.

The MARAEE pseudo code is shown in Figure 2, and its execution phases are detailed in the nextsubsections.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

Figure 2. MARAEE pseudo code.

W. LI ET AL.

4.1. Service analysis and candidate sensors identification

The MARAEE starts with a location-aware service discovery. When a new application arrives, theapplication planner will analyze the composition of the application and decomposes it into a set oftasks. Several important pieces of information that help to generate a list of candidate sensors areextracted from this service analysis process, including the number of tasks, requested service type ofeach task, and the location of interest. For each task of an application, all possible sensors capableof providing the type of service the task requires are identified (by using equation (1) throughapplication planner. In traditional web services, the incoming task (user request) can be randomlydistributed to a service provider, which is capable of providing the corresponding service. However,because of the limitation of sensor hardware, each sensor has its sensing range, and only thephysical phenomenon within this range can be detected. As a result, the sensors that are available tothe task are then selected by considering their geographical locations, their sensing ranges, and the

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

ENERGY-EFFICIENT TASK ALLOCATION

location of the task requested to detect. The selected sensors are finally put into candidate sensor listfor further processing.

4.2. Best candidate selection

Typically, WSN applications have various QoS requirements. According to [33], the WSN QoSrequirements can be classified into two categories, application-specific QoS and network-specificQoS. From the perspective of applications, QoS parameters are used to measure the quality of theservices provided by WSNs. Depending on the specific application, the QoS parameters may includedata accuracy, aggregation delay, coverage, fault tolerance, and so on. From the perspective ofnetwork, QoS parameters are used to measure whether a system can provide the related services toapplications while maximizing network resource utilization. Differently from the traditionalcomputer networks, QoS parameters like packet loss, delay, jitter, and bandwidth are not the majorconcerns in WSNs. Instead, the network lifetime becomes a vital metric to assess the quality of thesystem. The QoS parameters from the application point of view and from the system/network pointof view are often conflicting with each other. Moreover, different applications are characterized byrequiring different QoS parameters. For instance, some applications demand for high data accuracyor low delay, some require the network that has a long lifetime to monitor long life cyclephenomena, and others may have both requirements. Therefore, an application can choose toprioritize lifetime in favor of accuracy or delay, or the opposite, to prioritize accuracy/delay in favorof network lifetime, or it can choose to balance both parameters. In this paper, we specificallyconsider applications that are sensitive to the accuracy of the sensor-generated data and to theenergy consumption (strongly related to the lifetime), but are not considering time criticalapplications or other QoS parameters. Considering this premise and based on the classification ofapplications, in this work, there are three possible application requirements’ profiles as listed later:

1. Precision-based – profile characterized by the prioritization of data accuracy or precision.2. Lifetime-based – profile characterized by the prioritization of the network lifetime.3. Ratio-based – this profile balances the network lifetime and the data accuracy; that is, it seeks

some tradeoffs between energy consumption and data accuracy.

For precision-based profile, MARAEE focuses primarily on how to provide the best data accuracyto the application. As a result, the sensor in the candidate sensors list that has the smallest value ofMi isselected as the best candidate to perform the task. For lifetime-based profile, the energy consumptionfor each task is considered as the primary critical factor; thus, the sensor that is able to provide the mostenergy conservation will be ranked as the best candidate for the specific task. For ratio-based profile,user-defined values are assigned to both QoS parameters. And then, the best sensor is selected fromthe candidate sensors list to perform the task.

4.2.1. Energy conservation. As previously mentioned, the energy consumption of a sensor iscalculated from two parts, sensing and communication. A poor choice of the best candidate affectsthe quality of the resulting allocation, especially for the lifetime-based profile. To derive a lowerenergy consumption task allocation for an application, MARAEE selects the best candidate byconsidering two aspects: (1) maximize the sensing data sharing and (2) reduce the communicationhops to reach the sink. The goal of choosing the best candidate from the list of candidate sensors isto find out a sensor-task assignment that will reduce the energy consumption at most, thuseventually contributing to extend the system lifetime.

First, from equation (6), we know that the energy consumption is related to two variables, ERsi andtsi . Once the service type is determined, ERsi is obtained and remains invariable during the executionperiod of task vi. The way to reduce the energy consumption of a sensing task is to decrease the time ittakes. One possible solution is to decrease the SsR rate of a sensing task, and let the related sensingdevice stay in active state for less time. The energy consumption is reduced correspondingly.However, this solution has a risk to sacrifice the performance of application because some criticaldata can be missed in the time period we force the sensing device to stay idle. This is particularlyrelevant to applications that prioritize the data accuracy over the system lifetime. To address this

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

W. LI ET AL.

problem, we are motivated by the idea of session persistence from [34] and use the concept to developan energy-saving solution without lowering the SsR. Session persistence is a job-dispatching strategyto ensure that the same user is connected to the same server for the duration of the session. It hasbeen widely used in the context of Internet applications such as load balancer, online shopping, andso on. The rationale behind the solution is to maximize the intersection of execution (sensing) timeof the same service for different applications. For example, suppose that two sensors p1 and p2 areable to provide the same service to a task v in the monitored area. A task v requested fromapplication A1 is allocated to the sensor p1. When a new application A2 arrives, it contains the sameservice request in the same area. Meanwhile, the task v of application A1 is still running on p1.Instead of initializing a new sensor p2 to perform the task, we allocate the new arrival task to sensorp1, which is already providing the same service to application A1. Before the task v of application A1

stops running, the collected data can be used for both application A1 and A2. In the mean time, onlyone measurement of energy is drawn from the system. Thus, the longer intersection time means abetter opportunity of saving more energy due to a larger overlap of common tasks.

Second, communication cost is another energy consumer for the task execution. As shown inequations (3) and (5), the energy consumption of communication is mainly affected by twovariables, l and hop counts. The amount of data l is determined by SdR, which is a predefined valuefor each service request. Attempt to change this value can cause degradation in the QoS.Consequently, handling the other variable, hop count, is an obvious way to reduce the energyconsumption of task communication. For all tasks in a WSN, the destination of communication isthe sink node. Because WSNs have different topology, the sensors belonging to different WSNsnaturally have different number of routing hops to the sink (in here, we only consider the shortestpath). According to equation (5), for a given communication task, its energy consumption is directlyproportional to the number of hops it travels.

The purpose of energy conservation is to extend the system lifetime, while the system can onlyfulfill its purpose as long as it is considered ‘alive’. Although the system may be still functionalafter the first sensor dies, the QoS is no longer to be 100% guaranteed as before, especially forWSNs composed of a small number of sensors. Therefore, MARAEE acts as a greedy heuristic toselect the sensor that consumes the least energy (the sum of sensing and communication) from thecandidate sensors list when data accuracy is not the primary requirement for the applications.

4.2.2. Normalized data accuracy and energy consumption. As the performance of MARAEE mainlyrelies on data accuracy and energy consumption, we derive an equation to quantitatively select the bestcandidate from the list of candidate sensors, especially for the ratio-based profile. Because dataaccuracy and energy consumption are two QoS parameters measured by different units ofmeasurement, the normalization technique is employed to generate equation (8):

αDpi

Dbestþ β

Eresidual � Epi

Eresidual(8)

where α and β are user-defined coefficients to indicate the relative importance weights between thenormalized data accuracy and the normalized energy consumption, and these two coefficients have arelationship β = 1� α. In equation (8), for any given task, Dbest represents the best data accuracy thatcan be provided from the candidate sensors list, and Eresidual represents the residual energy of theWSN to which the selected sensor belongs. Dpi denotes the data accuracy value of a sensor pi in thecandidate sensor list, and its value ranges from 0 to Dbest. Epi denotes the estimated energyconsumption for running a task on sensor pi in the candidate sensor list, and its value ranges fromEbest to ∞. Ebest is the sensor that provides the minimum energy consumption for a certain type ofservice in candidate sensors list. In the allocation decision process, MARAEE always tends to selectthe sensor that consumes the least energy as the best candidate for a specific task, especially whenthe weight of energy consumption is increasing. Under this strategy, it is likely that some availablesensors are overused, while the others are underused. As a result, the actual system lifetime can beshorter than the expected value. In addition, the energy consumption of one sensor for a task doesnot reveal how much energy (e.g., multi-hop communication consumption) of the entire WSN

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

ENERGY-EFFICIENT TASK ALLOCATION

spends on it. For these reasons, the best sensor for energy conservation performing a task is not alwaysthe best choice for the system lifetime extension.

To alleviate this issue, MARAEE employs a concise look-ahead mechanism as shown in the secondpart of equation (8). It uses the changes in energy consumption of a WSN as a measure of the impact onthe network lifetime when a given task is allocated to a given sensor belonging to that WSN. Thismechanism allows MARAEE to select a sensor that does not consume the least energy but the onethat contributes most to prolonging the system lifetime under the given task and real-time systemstatus. When the energy imbalance occurs among the available sensors, the process will continueuntil the other available sensors reach the same (or less) energy level of the previous best sensor.After the process of energy balancing among available sensors, the sensor-task assignment with theminimum energy consumption is selected and committed.

5. PERFORMANCE ANALYSIS

To evaluate the performance of MARAEE algorithm, we implemented a simulator in Java and tested itunder the scenario tailored for multi-functional WSN system. The simulation goal is to assess thealgorithm performance by measuring the metrics: system lifetime, data accuracy, and energybalance, under different scenarios.

5.1. Parameters setup

In our simulator, there are several parameters that need to be properly addressed in the application,system, and energy models. For the application model, the applications (including online and offlinecases) arrive to the application planner following a Poisson distribution with a mean of 10 timeunits. At each arrival time, there is a probability for more than one application arriving at the sametime, and the probability is controlled by a parameter called multiple application arrival rate thatranges from 0 to 1 with a default value of 0.1. The larger value of multiple application arrival rateindicates the higher possibility of multiple applications will occur at each arrival time. Themaximum number of applications arriving at the application planner at the same time is set to 3.Each application contains 2 to 10 independent tasks. The average workload of a task is randomlygenerated from a uniform distribution ranging from 5 to 15. The SsR is set to ∞ for all tasks, whichmeans that in the execution time of a task, the related sensing device needs to monitor the interestedarea at all time. SdR ranges from 1 to 3, and the total amount of communication data is less than orequal to the data collected by sensor.

For the system model, we built a multi-functional WSN system that has one application planner, 2 to10 WSNs and each WSN containing a number of sensors ranging from 2 to 50. Each sensor has anumber of sensing devices uniformly distributed within the range of 1 and 5. Within a WSN, all thesensors are supposed to have the same sensing range and communication range, but they are underdifferent environmental noises. Please note that in our simulation configuration, none of the sensorsare subject to the same environmental noise; therefore, there are no two sensors with the same dataaccuracy in the system. The WSN topology is either single-hop or multi-hop, and the multi-hopcount ranges from 2 to the maximum number of sensors in a WSN. The sensing range of each WSNoverlaps one or more WSNs with range [0%, 100%], and the default value is set to 50%.

For the energy model, the hardware-related parameters in equations (3) and (4) are incoherence with [35, 36] as follows: Eelec = 50 nJ/b and ɛamp = 10 pJ/b/m2. Please note that thecommunication energy is only consumed by the sender node in the simulation. Considering thefact that in WSN, the communication energy consumption is often greater than the sensingenergy consumption, we set the parameter ERsi as being uniformly distributed within range of5 and 15 nJ/b in equation (6). The initial energy for all the sensors in the simulation is set to1.0 ñ 10�5 J.

In order to obtain the bounds of system performance, we set the coefficient α= 1 or β = 1 forprecision-based profile and lifetime-based profile, respectively. For the ratio-based profile, we set thesame value for the coefficients α and β in equation (8); thus, both of them are equal to 0.5. Unless

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

W. LI ET AL.

specifically stated, all the aforementioned parameters are used as default values in the simulations. Allthe presented results were averaged over at least 500 times; consequently, a 95% confidence intervalwith a 5% (or better) precision is achieved.

5.2. System lifetime

System lifetime is probably the most important metric for the WSNs performance evaluation. It can beseen as an indicator for the maximum utility a sensor network is able to provide. Therefore, we firstinvestigate how system lifetime is influenced by using different application requirements’ profilesunder the same set of applications.

Results shown in Figure 3 indicate that the precision-based profile does not significantly changesystem lifetime with the increase in the number of WSNs encompassed in the multi-functional WSNsystem while the lifetime-based profile obtains the most benefit to extend the system lifetime. Thisis because under the precision-based profile, MARAEE will always select the sensor that has theleast environmental noise to perform the tasks. As a consequence, those tasks requesting the sameservice in the same area will be always allocated to the same sensor, independently on how muchenergy the sensor spent to deliver its data. In addition, because the coefficient β is set to 0, the look-ahead mechanism is not able to provide the energy balance among WSNs. Apparently, some sensorscan be easily overdrawn by adopting this allocation strategy, and the system lifetime stronglydepends on the lifetimes of each single node that constitutes the network. As a result, precision-based profile performs poorly when the number of WSNs increases. Differently from the precision-based profile, the lifetime-based approach will always seek for the least energy consumption for thetasks. When the number of WSNs increases, MARAEE has more sensors to perform the tasksbecause of the overlapping of WSNs, and thus, its use prolongs the system lifetime. The ratio-basedprofile obtains the characteristics from both profiles, so it has medium performance of systemlifetime among the three profiles.

We also used the same WSNs system (three WSNs included) to investigate the impact of theapplication inter-arrival times (measured by its mean value) over the system lifetime. Theincrease of the mean value induces the increase of time interval between applications. In otherwords, the number of incoming applications is inversely proportional to the mean value in agiven time period.

As shown in Figure 4, the system lifetime increased for all profiles when the mean value isincreased. One obvious reason for the change of the system lifetime is that fewer applicationsare required to be processed in the system. However, the system lifetime ends up with similarvalues no matter what profile is used in the allocation process. In order to reveal the basis forthe system lifetime behavior, we plotted the curves in Figure 5 to examine the applications’

Figure 3. System lifetime for application requirements profiles with different number of WSNs.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

Figure 4. The system lifetime for application requirements under different mean values of application inter-arrival times.

ENERGY-EFFICIENT TASK ALLOCATION

workload (measured by time units) performed on the system. The applications’ workload is defined

as ∑n

i¼1AWi, where AWi is the workload for the ith arrival application and n is the total number of

applications that have arrived during the system lifetime.As shown in Figure 5, the workload is larger for all profiles when they have smaller mean values.

This is a direct consequence of the energy saving in sensing tasks achieved by the extensive use ofdata sharing among arriving applications. To better understand this result, it is important toremember that in our energy model, the energy consumption related to the sensing is directlyproportional to the time the sensor remains sensing. When the time interval between applications issmall, a sensor that is already used to perform the previously arrived application is more likely tohave its collected data shared to the newly arrived applications. If the interval between arrivals islarge, a sensor that has already finished data collection for the previous application will have to beactivated again to perform the newly arrived applications. The more applications arrive in the giventime period, the more sensing time of the same sensor can be shared among different applications,so that newly arrived applications do not generate a substantial burden to the system in terms ofenergy consumption.

Figure 5. The applications’ workload for application requirement profiles under different mean values ofapplication inter-arrival times.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

W. LI ET AL.

Even for the precision-based profile whose allocation strategy only focuses on data accuracy, thetasks requested for the same service are persistently allocated to the same sensor in a short timeperiod when the mean value is small and leads to ‘passive’ data sharing on that sensor. For thelifetime-based profile, MARAEE is intended to look for the sensors that can provide the maximumperiod of time for data sharing, and this allocation strategy makes the same amount of energy to beserved for more applications than if each application was processed sequentially. With the increaseof the mean value, the total workload significantly decreases. This is because the possibility ofsharing data among applications is dropping. If the mean value increases to 50, in most cases, theprevious application has been completed when the next application arrives. Consequently, there isvery little chance to find out a time period for sharing data between tasks. Under this circumstance,the energy difference is mainly affected by routing hops of the tasks among applicationrequirements profiles. These results emphasize the importance of our approach of considering thesharing of data among different applications, thus exploiting the fact that the same informationproduced by a sensor node is potentially useful for several applications in a multi-functional WSNsystem. Therefore, in such systems, the increase in the number of applications concurrently runningin the WSNs does not necessarily lead to a decrease in the overall system lifetime. With the data-sharing approach, it is possible to achieve a maximum utilization of the physical networkinfrastructure, thus increasing the ROI.

Moreover, by analyzing the graphs of Figure 4 along with Figure 5, it is possible to observe abenefit of using different profiles as proposed in our work. For instance, with the mean value ofapplication inter-arrival times ranging from 5 to 40, the system lifetime is greater for thelifetime-based profile even with a larger application workload. Thus, such behavior confirms thatthe lifetime-based profile not only improves the system lifetime but also maximizes the usage ofthe WSN resources.

5.3. Data accuracy

In our system, data accuracy refers to whether the data are correctly gathered by the sensor or theevent of interest is correctly detected. It has two requirements: It must be the right value, and itmust represent the value in a consistent form with all other representations of the same value.Otherwise, the data sent back to the user can be flawed and further lead to wrong decision/action. As mentioned in equation (2), in the current version of our work, the data accuracy isonly affected by Mi. In order to measure the data accuracy provided to an application, we definethe following equation:

DAi ¼ ∑n

i¼1Mi (9)

where Mi is the measurement of the environmental noise of the selected sensor for a task and n isthe number of tasks the application Ai contains. For the experimental analyses, we will use the bestcase for all profiles as a benchmark, and the remainder cases will be normalized by the benchmarkin order to clearly reveal the relationship among different application requirements.

Figure 6 shows the relative performance of MARAEE for different application requirements profilesunder different percentage of overlapping WSNs. The overlapping percentage in this experiment is setto light (10%, represented by ●), medium (50%, represented by ■), and heavy (90%, represented by▲).The x-axis is the average relative data accuracy, and the y-axis is the average relative system lifetime. Itallows us to evaluate the gain with regard to conflicting metrics and to highlight dominant results.Profiles located toward the top-right corner of the graph are thus preferable.

For all the profiles, ratio-based profile presents the relative best performance in our simulation,especially when the overlapping area is large. This is because not only the ratio-based profilecontains both characteristics from precision-based profile and lifetime-based profile, but also theheavy overlapping provides more options for the algorithm to evenly draw energy from all WSNs, aswell as provides better data accuracy when allocating a task to a sensor. Because no energy balancestrategy is evolved in the task allocation process of precision-based profile, the system lifetime is not

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

Figure 6. Data accuracy for application requirement profiles depending on the percentage of WSNsoverlapping—small, medium, and large.

ENERGY-EFFICIENT TASK ALLOCATION

comparable to other profiles no matter what size of overlapping. With the increase of overlapping sizeamongWSNs, there are more options for MARAEE to provide a node with less environmental noise foraccomplishing tasks; as a consequence, an increasing in the quality of the data accuracy is observed.Interestingly, for the lifetime-based profile, the data accuracy is increased when the overlapping sizeis increased as well. We believe that this result is due to the energy balance strategy that makes theenergy of available sensor for a task is intentionally drawn in a round-robin way. Whenever eachavailable sensor has different data accuracy, the large overlapping size means more chance to allocatea task onto a sensor with less environmental noise to provide better service, especially when thesensor with least energy consumption is located in a noisy environment. However, the relativechange among different overlapping sizes of lifetime-based profile is small.

5.4. Energy balance

One goal of our algorithm is to exploit the distributed resources available from different WSNinfrastructure and shared by the multiple applications so that balanced energy consumption can beachieved within the multi-functional WSN system. With such approach, no single WSN would haveits energy drained faster than the others, with the incoming tasks being evenly distributed among thenodes pertaining to different networks, considering their current status. In this experiment, we aim atshowing that such even energy consumption was successfully obtained by MARAEE. In theperformed simulations, a multi-functional WSN system encompassing three WSNs with 90%overlapping was considered. The lifetime-based profile was used. In Figure 7, the x-axis representsthe system lifetime, which denotes the residual energy of the sensor with the minimum energy in thesystem, in the end of the simulations. The y-axis represents the normalized remaining energy, whichmeans the sensor with the minimum energy in each WSN compared to its initial energy. Byobserving the graphs, we can note that the energy is drained very similarly among the three differentWSNs, demonstrating the capacity of MARAEE in efficiently distributing the tasks among theseveral networks so that not a single one is overloaded.

6. CONCLUSION

In this paper, we introduced the idea of multi-functional WSN system, which is aligned to the noveldesign approaches being investigated for current WSNs deployments and applications. Weformulated the problem of maximizing system lifetime by allocating task with QoS provisioning asit arises in the context of performing concurrent applications in a multi-functional WSN system. Tosolve the problem, we developed a new resource allocation algorithm called MARAEE that exploits

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

Figure 7. The energy consumption of WSNs in different stages of system lifetime.

W. LI ET AL.

resource heterogeneity to make effective task-sensor assignments, explicitly taking into accountperformance requirements of applications. In our algorithm, we explicitly exploited the data sharingamong applications, so that a sensor that is already active to produce data to a given application canhave its data being used for new incoming applications (provided that the requirements are similar),thus not increasing the overall consumption of resources in the network. Experimental resultsindicate that MARAEE generates promising results for different scenarios in terms of bothapplication performance and energy efficiency in WSNs.

The research area investigating the execution of multiple applications on sensor networks is stillunder development. As a promising start, MARAEE is at the beginning stage of this area, andseveral interesting research directions are opened up for ongoing and future studies. First of all,more comprehensive application (e.g., Directed Acyclic Graph-modeled collaborative application),system and energy models can be employed to enhance the adaptability of MARAEE. Secondly, wecan investigate the MARAEE performance when using different application-specific QoS parametersin its formulation, such as, for instance, delay, which is relevant for time critical applications.Finally, MARAEE is currently a greedy heuristic solution, but many other possible options, forexample, analytic, reinforcement learning, and optimization technique, can be employed to developalternative solutions for the same research problem. It will be interesting to compare theperformance of these different approaches of solutions.

ACKNOWLEDGEMENTS

Dr. Li’s work was supported by Australian Postgraduate Award (APA) and NICTA enhanced PHDprogram. Prof. Delicato and Prof. Pires’ works were supported by Brazilian Funding Agencies FAPERJand CNPq (under grants 470586/2011-7 and 311363/2011-3 for Flavia Delicato and 310661/2012-9 forPaulo Pires). Professor Zomaya’s work was supported by the Australian Research Council Discovery Grant(DP1097111).

REFERENCES

1. Guinard D, Fischer M, Trifa V. Sharing Using Social Networks in a Composable Web of Things. in Pervasive Com-puting and Communications Workshops (PERCOM Workshops), 2010 8th IEEE International Conference onMannheim, Germany, 2010, 702–707.

2. Christin D, Mogre PS, Hollick M. Survey on Wireless Sensor Network Technologies for Industrial Automation: TheSecurity and Quality of Service Perspectives. Future Internet 2010; 2:96–125.

3. Lim HB, Iqbal M, Wang W, Yao Y. The National Weather Sensor Grid: A Large-Scale Cyber-Sensor Infrastructurefor Environmental Monitoring. International Journal of Sensor Networks 2010; 7:19–36.

4. Gungor VC, Bin L, Hancke GP. Opportunities and Challenges of Wireless Sensor Networks in Smart Grid. IndustrialElectronics, IEEE Transactions on 2010; 57:3557–3564.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

ENERGY-EFFICIENT TASK ALLOCATION

5. Casanova H, Fr\, \#233, d\, Suter r. Desprez r. On Cluster Resource Allocation for Multiple Parallel Task Graphs.Journal of Parallel Distributed Computing 2010; 70:1193–1203.

6. Braun TD, Siegel HJ, Maciejewski AA, Hong Y. Static Resource Allocation for Heterogeneous Computing Environ-ments with Tasks Having Dependencies, Priorities, Deadlines, and Multiple Versions. Journal of Parallel Distrib-uted Computing 2008; 68:1504–1516.

7. Dutot P-F, N’Takpe T, Suter F, Casanova H. Scheduling Parallel Task Graphs on (Almost) HomogeneousMulticluster Platforms. IEEE Transactions Parallel Distributed Systems 2009; 20:940–952.

8. Zomaya AY. Parallel and Distributed Computing Handbook. McGraw-Hill Professional, 1996.9. Lloret J, Garcia M, Bri D, Sendra S. A Wireless Sensor Network Deployment for Rural and Forest Fire Detection and

Verification. Sensors 2009; 9:8722–8747.10. Mainwaring A, Culler D, Polastre J, Szewczyk R, Anderson J. Wireless Sensor Networks for Habitat Monitoring,

presented at the Proceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications,Atlanta, Georgia, USA, 2002.

11. Gui C, Mohapatra P. Power Conservation and Quality of Surveillance in Target Tracking Sensor Networks.Presented at the Proceedings of the 10th Annual International Conference on Mobile Computing and Networking,Philadelphia, PA, USA, 2004.

12. Rowaihy H, Johnson MP, Liu O, Bar-Noy A, Brown T, Porta TL. Sensor-Mission Assignment in Wireless SensorNetworks. ACM Transactions Sensors Network 2010; 6:1–33.

13. N’Takpe T, Suter F. Concurrent Scheduling of Parallel Task Graphs on Multi-Clusters Using Constrained ResourceAllocations. presented at the Proceedings of the 2009 IEEE International Symposium on Parallel\&DistributedProcessing, 2009.

14. Henan Z. Sakellariou R. Scheduling Multiple DAGs Onto Heterogeneous Systems. in Parallel and DistributedProcessing Symposium, 2006. IPDPS 2006. 20th International, 2006, 14.

15. Chen H, Maheswaran M. Distributed Dynamic Scheduling of Composite Tasks on Grid Computing Systemspresented at the Proceedings of the 16th International Parallel and Distributed Processing Symposium,2002.

16. Sinha A. Chandrakasan A. Dynamic Power Management in Wireless Sensor Networks. Design & Test of Computers,IEEE 2001; 18:62–74.

17. Byers J, Nasser G. Utility-Based Decision-Making in Wireless Sensor Networks. in Mobile and Ad Hoc Networkingand Computing, 2000. MobiHOC. 2000 First Annual Workshop on, 2000; 143–144.

18. Mullen T, Avasarala V, Hall DL. Customer-Driven Sensor Management. Intelligent Systems, IEEE, 2006; 21:41–49.19. Roy N, Rajamani V, Julien C. Supporting Multi-Fidelity-Aware Concurrent Applications in Dynamic Sensor

Networks. in Pervasive Computing and Communications Workshops (PERCOM Workshops), 2010 8th IEEE Inter-national Conference on, 2010; 43–49.

20. Bhattacharya S, Saifullah A, Lu C, Roman G-C. Multi-Application Deployment in Shared Sensor Networks Basedon Quality of Monitoring. presented at the Proceedings of the 2010 16th IEEE Real-Time and Embedded Technologyand Applications Symposium, 2010.

21. Rowaihy H, Eswaran S, Johnson M, Verma D, Bar-Noy A, Brown T, La Porta T. A Survey of Sensor SelectionSchemes in Wireless Sensor Networks. SPIE Unattended Ground, Sea, and Air Sensor Technologies andApplications IX, 2007.

22. Yu Y, Prasanna VK. Energy-Balanced Task Allocation for Collaborative Processing in Wireless Sensor Networks.Mobile Networks and Applications, 2005; 10:115–131.

23. Jarry A, Leone P, Nikoletseas S, Rolim J. Optimal Data Gathering Paths and Energy-Balance Mechanisms inWireless Networks. Ad Hoc Networks 2011; 9:1036–1048.

24. Leone P, Nikoletseas S, Rolim J. Stochastic Models and Adaptive Algorithms for Energy Balance in SensorNetworks. Theory of Computing Systems 2010; 47:433–453.

25. Efthymiou C, Nikoletseas S, Rolim J. Energy Balanced Data Propagation in Wireless Sensor Networks. WirelessNetwork 2006; 12:691–707.

26. (2011, 27/06/2011). Moog Crossbow (Asset Tracking and Shipment Tracking Products) Home Page. Available:http://www.xbow.com/

27. (2011, 27/06/2011). Arduino. Available: http://arduino.cc/en/28. Delicato F, Protti F, Pirmez L, de Rezende JF. An Efficient Heuristic for Selecting Active Nodes in Wireless Sensor

Networks. Computer Networks 2006; 50:3701–3720.29. Sohn H, Dzwonczyk M, Straser EG, Kiremidjian AS, Law KH, Meng T. An Experimental Study of Temperature

Effect on Modal Parameters of the Alamosa Canyon Bridge. Earthquake engineering & structural dynamics 1999;28:879–897.

30. Tian Y, Ekici E. Cross-Layer Collaborative in-Network Processing in Multihop Wireless Sensor Networks. IEEEtransactions on mobile computing 2007; 297–310.

31. Heinzelman WR, Chandrakasan A, Balakrishnan H. Energy-Efficient Communication Protocol for Wireless Micro-sensor Networks. in System Sciences, 2000. Proceedings of the 33rd Annual Hawaii International Conference on,Maui, Hawaii, 2000; 2:10.

32. Dietrich I, Dressler F. On the Lifetime of Wireless Sensor Networks. ACM Transactions on Sensor Networks (TOSN)2009; 5:1–39.

33. Chen D, Varshney PK. QoS Support in Wireless Sensor Networks: A Survey, 2004; 227–233.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe

W. LI ET AL.

34. Wei L, Vesilo R. Modeling of Session Persistence in Web Server Systems. in Australian Telecommunications Net-works and Application Conference, Melbourne, 2006; 303–307.

35. Wang A, Chandrakasan A. Energy-Efficient DSPs for Wireless Sensor Networks. Signal Processing Magazine, IEEE2002; 19:68–78.

36. Shih E, Cho S-H, Ickes N, Min R, Sinha A, Wang A, Chandrakasan A. Physical Layer Driven Protocol and Algo-rithm Design for Energy-Efficient Wireless Sensor Networks. presented at the Proceedings of the 7th Annual Inter-national Conference on Mobile Computing and Networking, Rome, Italy, 2001.

Copyright © 2013 John Wiley & Sons, Ltd. Concurrency Computat.: Pract. Exper. (2013)DOI: 10.1002/cpe