Handing Optimization Energy Consumption in Heterogeneous Wireless Sensor Networks

This paper presents an integer linear programming model devoted to optimize the energy consumption efficiency in heterogeneous wireless sensor networks. This model is based upon a schedule of sensor allocation plans in multiple time intervals subject to coverage and connectivity constraints. By turning off specifics sets of redundant sensors in each time interval, it is possible to reduce the total energy consumption in the network and, at the same time, avoid partitioning the whole network by losing some strategic sensors too prematurely. Since the network is heterogeneous, sensors can sense different phenomena from different demand points, with different sample rates. By resorting to this model, it is possible to provide extra lifetime to heterogeneous wireless sensor networks, reducing their setup and maintenance costs. This is an important issue to be considered when deploying sensor devices in hostile and inaccessible environments.


Introduction
A wireless Sensor Network (WSN) typically consists of a large number of small, low-power, and limited-bandwidth computational devices named sensor nodes, as shown in Figure 1.Four modules constitute a sensor node: processor, battery, transmission, and sensor module.In addition to the construction of processing packets, a dynamic algorithm for routing in sensor nodes is performed to find and configure the best possible network topology at runtime in order to reduce the loss of energy and retransmission.
These nodes can frequently interact with each other, in a wireless manner, in order to relay the sensed data towards one or more processing machines (also known as sinks) residing outside the network.They also have been primarily used in the monitoring of several physical phenomena, such as temperature, barometric pressure, humidity, ambient light, sound volume, solar radiation, and precipitation, and therefore have been deployed in different areas of application/research, like agriculture, climate study, biology, and security.Figure 2 outlines a wireless sensor network.
The simple deployment of the approach is proposed by [1], while sensing different phenomena through the same WSN can lead to inefficiency in terms of energy expenditure.With this perspective in mind, in this work, we provide an extension to the model devised by [2][3][4], namely, to consider different coverage radius and sampling rates for different phenomena.We argue that the incorporation of such aspects into the model can have a significant impact on the network lifetime mainly when the spatiotemporal properties of the phenomena under observation vary a lot.
The introduction of this new dimension into the model brings about novel issues to be dealt with.The critical issue relates to the concurrent routing of data related to different phenomena, as these data should be relayed to different sinks.The rest of the paper is organized as follows.Section 2 presents the Wireless Sensor Network (WSN), how do they work, the components of a sensor, the problems that can occur in a WSN, and complementary knowledge to optimize the network.On the other hand, Section 3 presents the novel integer linear programming model for the minimization of energy expenditure in WSNs regarding the heterogeneity  aspects of the sensed phenomena mentioned above.Moreover, Section 4 presents computational results achieved by simulation while providing a qualitative discussion of such results.Finally, Section 5 concludes the paper and comments on future work.

The Wireless Sensor Network
A Wireless Sensor network typically consists of a large number of small, low-power, and limited-bandwidth computational devices named sensor nodes.These nodes can frequently interact with each other, in a wireless manner, in order to relay the sensed data towards one or more processing machines (a.k.a.sinks) residing outside the network [5].For such a purpose, special devices, called gateways, are also employed in order to interface the WSN with a wired transport network.To avoid bottleneck and reliability problems, it is pertinent to make one or more of these gateways available in the same network setting.This is a strategy that can also reduce the length of the traffic routes across the network and consequently lower the overall energy consumption.A typical sensor node is composed of four modules, namely, the processing module, the battery, the transceiver module, and the sensor module [6].Besides the packet building processing, a dynamic routing algorithm runs over the sensor nodes in order to discover and configure in runtime the "best" network topology in terms of number of retransmissions and waste of energy.Due to the resources limited microprocessor, most devices make use of a small operating system that supplies basic functionalities to the application program.To provide the necessary energy for the whole unit, there is a battery, whose lifetime duration depends on several aspects, among which, its storage capacity and the levels of electrical current employed in the device.The transceiver module, conversely, is a device that transmits and receives data using radiofrequency propagation as media and typically involves two circuits, namely, the transmitter and the receiver.Due to the use of public-frequency bands, other devices in the neighbourhood can cause interference during sensor communication [7].Likewise, the operation/interaction among other sensor nodes of the same network can cause this sort of interference.Therefore, the lower the number of active sensors is in the network, the more reliable the radiofrequency communication tends to be among these sensors.The last component, the sensor module, is responsible for gauging the phenomena of interest; the ability of concurrently collecting data pertaining to different phenomena is a property already available in some sensor nodes' models.
For each application scenario, the network designer has to consider the variation's rate for each sensed phenomenon in order to choose the best sampling rate of each sensor device.Such decision is very important to be pursued with precision as it surely has a great impact on the amount of data to be sensed and delivered and, consequently, on the levels of energy consumed prematurely by the sensor nodes [8].This is the temporal aspect to be considered in the network design.
Another aspect to be considered is the spatial one.Moreover, [9] defines coverage as a measure of the ability to detect objects within a sensor field.The lower the variation of the physical variable being measured across the area, the shorter has to be the radius of coverage for each sensor while measuring the phenomenon.This influences the number of active sensors to be employed to cover all demand points related to the given phenomenon.The fact is that the more sensors are active in a given moment, the bigger the overall energy consumed across the network.WSN is usually deployed in hostile environments, with many restrictions of access.In such cases, the network would be unreliable and unstable if the minimum number of sensor nodes was effectively used to cover the whole area of observation.If some sensor nodes failed to operate, their coverage area would be out of monitoring, preventing the data correlation coming from this area with others coming from other areas.Another worst-case scenario occurs when we have sensor nodes as network bottlenecks, being responsible for routing all data coming from the sensor nodes in the neighbourhood.In this case, a failure in such nodes could jeopardize the whole network.To avoid these problems and build WSN, a robust design and extra sensor nodes are usually employed in order to introduce some sort of redundancy.By these means, the routing topology needs to be dynamic and adaptive.When a sensor node that is routing data from other nodes fails, the routing algorithm discovers all its neighbour nodes, and then the network reconfigures its own topology dynamically.A problem with this approach is that it entails unnecessary energy consumption.This is because of the coverage areas of the redundant sensor nodes overlap too much, giving birth to redundant data.In addition, these redundant data bring about extra energy consumption in retransmission nodes.The radio-frequency interference is also stronger, which can cause unnecessary data retransmissions, increasing the levels of energy expenditure.
Reference [10] presents many integer linear programming models to optimize energy consumption but does not consider the dynamic time scheduling.The solution proposed by [1,3,4,11] is to create different schedules, each one associated with a given time interval, that activate only the minimum set of sensor nodes necessary to satisfy the coverage and connectivity constraints.The employment of different schedules prevents the premature starvation from some of the nodes, bringing about a more homogeneous level of consumption of battery across the whole network.This is because the alternation of active nodes among the schedules is often an outcome of the model, as it optimizes the energy consumption of the whole network taking into account all time intervals and coverage and connectivity constraints [12].It is well known that the sensing of different phenomena does not follow the same spatio-temporal profile.For instance, the temporal and spatial variations of temperature measurements in a given area can be very different from those related to humidity.Working with only one radius of coverage for all sensed phenomena entails that this radius will be the smallest one.Likewise, choosing only one sampling rate for all sensed phenomena implies that this rate can keep up well with the phenomenon that varies faster.

The Integer Linear Programming Model
The solution proposed by [1,2] is to create different schedules, each one associated with a given time interval, which activate only the minimum set of sensor nodes necessary to satisfy the coverage and connectivity constraints.The employment of different schedules prevents the premature starvation from some of the nodes, bringing about a more heterogeneous energy consumption level across the whole network [13].This is provided because the alternation of active nodes among the schedules is often a model outcome, as it optimizes the whole network energy consumption taking into account all time intervals and coverage and connectivity constraints.In order to properly model the heterogeneous WSN setting, some previous remarks are necessary.
(1) A demand point is a geographical point in the region of monitoring where one or more phenomena are sensed.The distribution of such points across the area of monitoring can be regular, like a grid, but can also be random in nature.The density of such points varies according to the spatial phenomenon's variation under observation.At least one sensor must be active in a given moment to sense each demand point.Such constraint is implemented in the model.
(2) Usually, the sensors are associated with coverage areas that cannot be estimated accurately.To simplify the modelling, we assume plain areas without obstacles.Moreover, we assume a circular coverage area.The coverage radius is determined by the spatial variation of the sensed phenomenon.It is assumed that all demand points within this area can be sensed.The radio-frequency propagation in real WSNs is also irregular in nature.In the same way, we can assume a circular communication area.The radius of this circle is the maximum distance at which two sensor nodes can interact.
(3) A route is a path from one sensor node to a sink possibly passing through one or more sensor nodes by retransmission.Gateways are regarded as special sensor nodes whose role is only to interface with the sinks.Each phenomenon sensed in a node has its data associated with a route leading to a given sink, which is independent from the routes followed by the data related to other phenomena sensed in the same sensor node.
(4) The energy consumption is actually the electric current drawn by a circuit in a given time period.
In what follows [11,[13][14][15][16], the constants, variables, objective function, and constraints of the integer linear programming model applied energy consumption in heterogeneous are introduced in a step-by-step manner.

𝑡𝑔
is set to one.This last condition will occur only in those cases when there is no sensor node that can cover the demand point, that is, for the lack of battery power when being used for other time periods and/or to monitor other phenomena, or because there is no sensor that can cover the demand point (ii) sensor = 0; (iii) measure = 0; (iv) demand point 21.
The  constant for the indices quoted indicates that it is possible to cover the demand point 0 by the sensor 21, in the time interval 0 to 0 magnitude.If this sensor is selected to satisfy the constraint, the corresponding value of    is equal to 1.If no sensor is allocated to cover a demand point, which happens for example with the demand point 55, wherein the sensor 2 is the only sensor that can monitor it and is not active, then the variable    for the corresponding index value will be equal to 0, and the variable ℎ   equals 1, and the penalty is applied.
On the other hand, the constraint (3) turns on variable    (which means that a sensor node is actively sensing phenomenon  in period ) if its associated sensor node is indeed allocated to cover any demand point associated with .Furthermore, the variable    is applied in an other restriction of connectivity to indicate the start of the route if the sensor node is active. Consider: Besides, the constraint (4) reads that sensor node  is fully active (parameter    ) if it is active for at least one phenomenon of observation.This constraint is used to facilitate the implementation of energy maintenance, and the activation sensor for routing restrictions is described, In restriction (5), an exit route exists for a sensor node  to node  sensor if there is already a path of arrival sensor node  to node  sensor at time interval , the phenomenon .The constant   indicates whether a sensor has a connectivity with another sensor.The index  indicates the sensor node that initiated the route, , ∀,  ∈ , ∀ ∈ , ∀ ∈ . ( International Journal of Distributed Sensor Networks In Figure 4, if an input arc  (s3, s6), for example, will have to be some other output arc, for example,  (s6, sin 0), that is,    3 6 −    6 sin 0 = 0, the sum is applied to indicate all possible routes according to the constant connectivity of the time interval  and magnitude .The index  indicates the node that initiated the route.
Moreover, in restriction (6) if a node is active, then there must be a route starting from it.As previously mentioned, the variable  indicates whether a sensor node  is active at a time ,  for measure.This restriction is necessary because it is the beginning of the route, or one route out, not being possible to be met by the conservation flow. Consider: And also in constraint (7), if a sensor node is active, then its route must end in a sink node.Similarly to the previous restriction (6), it is not possible to apply the conservation flow since there is no exit route for sink node, only income, Furthermore, constraint (8) indicates that if there is an exit route past a sensor node, the sensor node must be active.A sensor node can be active only for data transmission, then the decision variable    indicates that it should be active to receive value equal to the greater presence of the exit route, Constraint (9) shows that if there is an entry of a route that passes by a sensor node, then that sensor node must be active.
In the same way, for the constraint of output going the route of input Constraint (10) determines the total energy spent by sensors throughout the time that the network is active: (a) it is added for each sensor , and the energy is expended in all periods of time with maintenance (     ), if    = 1; (b) the same happens with the activation of sensors indicated by the variable    , with      .All the energy for receiving data from the sensor , although not itself, who comes from sensor , is added in The same happens with the energy that used to transmit data, except that it may be the sensor that initiated the route expressed by this part, Constraint (11) enforces that each sensor node should consume at most the capacity limit of its battery, If a sensor is active in the first time interval, it means it consumed energy to activate.The  variable indicates this activation.Then, the variable's value is set to 1. On the other hand, if the sensor is kept off in the first time interval, the value is set to 0. Constraint (12) ensures that In constraint (13), the sensor's past and current activation states are compared.If the sensor node was active from period  − 1 to period , then  is set to 1 or 0, otherwise,

Computational Results
The following conditions were considered to execute the computational tests: four different scenarios are set according to the time interval amounts 2, 4, 6, and 8 time intervals.
For each time interval, it was executed for some instances using only phenomenon light and, other instances using two International Journal of Distributed Sensor Networks phenomena: temperature and light.The sensor's coverage radius used for temperature was 8.8 meters, and light used a coverage radius of 16 meters.The connectivity radius among the sensors is set to 11 meters.A regular grid of demand points with 400 points was distributed in a square area of 10 × 10 meters, with four demand points per m 2 .Each demand point may be associated with a phenomenon, but the coverage of the sensors is totally independent of a demand point alone.Likewise, 36 sensors were distributed in a regular grid of 6 × 6 over the monitoring region, and in other instances, distributed randomly.All sensor nodes have the same characteristics as the coverage capacity, processing, and transmission.Only one sink node was used, allocated in the center the monitored region.All elements of described (demand points, sensors, and sinks) were generated applying geographic coordinates.
The constants energy values were calculated according to the values found in the manufacturer's sensor manual (Mote battery life calculator).The total transmission and reception data in a given time interval are calculated based on the amount of data and rate adopted by the devices.A constant representing the penalty for not covering a demand point is assigned for a value considerably high to force the model to find a result that meets all coverage restrictions.
In [1,3,17,18] they conceived their computational experiments to produce WSNs with the minimum energy consumption as possible, while maintaining the coverage and connectivity constraints.The gain obtained in their work is calculated by the comparison of the minimum set of sensors that have to be active and the energy waste caused by the activation of all sensors with high coverage overlapping in a high density configuration [4].
The Integer Linear Programming (ILP) [19] model was implemented in the programming language Java 6 using the library Concert22, responsible for integrating the solver used.The tests' cases were solved by the IBM dynamic library integrated CPLEX12.1 (IBM ILOG CPLEX).The machine used on this test was an Intel i7 64 bits with 8 GB of RAM with windows 7 64 bits [20].
Table 1 shows the results obtained by running the model for heterogeneous networks using one and two phenomena, both for sensors allocated in grid and randomly, with the objective's function values composed of two parts: the electrical charge summation consumption in all sensor nodes and the penalties.The penalties are an artifact that allows the model to remain feasible even when some demand points are not covered by any sensor, giving flexibility to the model, but at the same time this resource must be well calibrated to avoid its unnecessary use that would cause disturbance in the real solution.Thus, the real objective is calculated by subtracting the artificial coverage penalties of the objective function or just calculating the first part (summation) of the objective expression.
In these experiments, the demand points are disposed in a grid and randomly.In Table 2, the values are in function of execution time represented in minutes: seconds, distributed analogously to Table 1.Analogously to Tables 1 and 2, Table 3 values represent the noncovered demand points' percentage (%).Table 4 represents the number of variables and constraints of the problem when the exact method is applied.For both grid and random allocations, the number of constraints and variables is the same for each characteristic.This equality is due to the same problem; just the data about coverage and connectivity are changed.
The real purpose of this model is to extend the WSN lifetime as far as possible, reducing the WSN energy cost and preserving its coverage and connectivity.So, lower electrical charge consumption is not necessarily an important issue if it does not reflect on more time slots.The number of time slots multiplied by the duration of the time slot represents the WSN lifetime.This idea seems coherent at first glance since energy waste reduction is often desirable.
The only drawback here is the uncovered demand point rate, which is worse than ILP value.Despite this small imperfection, many real applications tolerate some lack of coverage by the nature of the observed phenomenon and other aspects.Even though, this uncovered demand points are often situated at the periphery of the observed area.The coverage radius does not reflect necessarily a sharp threshold of sensing.The implementation of heterogeneous networks by applying exact method for scenarios with 8 time intervals increased in size so as not to allow the solver to find the solution within 24 hours.
Analysing the results, it is observed that the heterogeneous network has an energy saving, considering that the phenomena are handled differently.The radio of coverage for the phenomena is different, making it unnecessary to monitor a given phenomenon, in this case light, by having a greater radius of coverage by various sensors, reducing the amount of redundant data to be transmitted.
Figure 5 shows the result obtained for an implementation of a WSN with six time intervals, 36 sensor nodes, 400 demand points, and two phenomena.For the temperature phenomenon, in the time intervals 2 and 4, the network's configuration is given in Figure 5.
The time intervals 6 and 8 configurations are given by Figure 6.The configuration is able to maintain the network active in the three given periods, so it is not necessary to change the network's configuration in the time given.
The same happens with the light phenomenon, but for the time intervals 2, 4, 6, and 8, shown by Figure 7, the configuration is the same.This happens because the coverage radius is big enough to only be capable to cover the entire sensoring area, and the necessary energy to transmit the data is less than temperature.The time interval 6 needed another configuration, as the previous sensor's battery energy would not be enough to maintain the network active.This last configuration is shown in Figure 8.

Conclusion and Future Works
The difference between the homogeneous [11] and the heterogeneous is that the last one has the capacity to deal with different phenomena independently, giving different sample data and sensed range for each phenomenon.This implies in a different way to treat the network's transmission data.Although it does not implement any density explosion control, good solutions are found in feasible execution time for wireless sensor network that could not be possible if only ILP was applied.

Figure 3
Figure 3 illustrates the results of two time intervals fourth sensor nodes.The corresponding indices are (i) time interval = 0;

Figure 3 :
Figure 3: The application of the covering according to the chosen variable    .

Figure 4 :
Figure 4: Applying connectivity according to the chosen variable    .
Figure 5 Figure 6 applied when sensor  ∈  is activated to unnecessarily sense the phenomenon ;    : set of arcs indicates whether the sensor  coppers the point of demand  for phenomenon .1}: if arc  belongs to the route from sensor  to a sink in period  for phenomenon ;    ∈ {0, 1}: if sensor  was activated in period  for phenomenon ; ℎ   ∈ {0, 1}: if demand point  for phenomenon  is not covered by any sensor in time period ;   : Energy consumed by sensor  considering all time periods.
3.1.Constants : set of sensors; : set of demand points; : set of sinks; : set of  scheduling periods; : set of phenomena (temperature, humidity, barometric pressure, etc.).Each phenomenon has its own spatiotemporal properties.The associated sampling rate has impact on data traffic, while the associated radius of coverage has impact on the number of active sensors;   : set of arcs ,  ∈ ,  ∈ , link sensors to demand points;   : cumulated battery energy for sensor  ∈ ;   : energy dissipated while activating sensor  ∈ ;   : energy dissipated while sensor  ∈  is activated (effectively sensing); the total amount of data transmitted across the WSN and, consequently, the levels of energy waste;   : energy expended in the reception of data for sensor  ∈ ;    : penalty applied when any sensor does not cover a demand point  ∈  for phenomenon ;    : penalty 3.3.Objective Function.The objective function (1) minimizes the total energy consumption through all time periods.The second term penalizes the existence of some uncovered demand points, but the solution continues feasible.It penalizes unnecessary activation for the phenomenon too.∈   + ∑ ∈ ∑ ∈ ∑ 3.4.Restrictions.The constraint (2) enforces the activation of at least one sensor node  to cover the demand point  associated with phenomenon  in period .Otherwise, the penalty variable ℎ

Table 1 :
Results obtained on the basis of objective value.

Table 2 :
Results obtained in the light of the runtime (minutes : seconds).

Table 3 :
Results obtained based on demand points.

Table 4 :
Number of variables and constraints.