1 Introduction

A Wireless sensor network (WSN) is a wireless network consisting of large number of small size, inexpensive, and battery operated sensor nodes which are densely deployed in ad-hoc manner. Such nodes are essential for monitoring physical or environmental conditions such as temperature and humidity, perform simple computation, and communicate via wireless multi-hop transmission technique to report the collected data to sink node [1].

Multi-hop WSN with single sink has been developed over a long period, but possible architectures are limited by the need for robustness, scalability and reliability since single-sink large-scale WSNs depend entirely on the single sink. While the energy consumption rate of the sensor nodes around the sink is much higher than that of the remote one, resulting in highly unbalanced energy consumption which causes energy holes around the sink. As a result, the sink might be isolated from the WSN and loses its functionality. Moreover, the invalidation of the sink node will inevitably lead to the failure of the whole network. All of these limitations make the use of WSN with single sink infeasible in practice. Therefore, the multi-sink WSN architecture has been proposed [2, 3].

The multi-sink wireless sensor network is a WSN with multiple sink nodes. Multi-sink topology has significant advantages over single sink topology. Firstly, multi-sink usage can balance the energy consumption of the whole network and relieve the energy hole problem. Secondly, deploying more sink nodes in the network relieves the traffic congestion problem to a certain extent. Finally, multi-sink usage reduces the average distance from sensor nodes to sink nodes, resulting in more energy saving and thus extends the network lifetime [4, 5].

One of the fundamental design challenges in designing a WSN is to maximize the network lifetime, as each sensor node of the network is equipped with a limited energy resource [6]. In WSNs, communication has been recognized as the major source of energy consumption and costs significantly more than computation [7]. Consequently, most of the existing routing techniques in WSNs attempt to find the shortest path to the sink to minimize energy consumption. As a result, highly unbalanced energy consumption causes energy holes around the sink and significant network lifetime reduction. Therefore, designing energy-balanced routing technique plays a crucial role in WSNs [8, 9].

In event-driven sensor networks, e.g., those used in detection and monitoring applications, nodes normally operate under low or idle load states. When events occur, these nodes suddenly become active, resulting in a part of the network becoming overloaded and causing congestion in some areas. Due to memory constraints on sensor nodes, congestion in WSNs can lead to buffer overflow. Therefore, such a buffer overflow problem may result in loss of critical information, wastage of resources, and delay due to the retransmission of the same packets thus limiting network’s lifetime and efficiency. Consequently, it is a highly needed to consider buffer space when designing routing protocols in WSNs to spread data traffic away from the congested areas [10, 11].

Providing reliable and efficient data transmission is one of the major technical challenges in WSNs [1214]. The loss of important information due to unexpected node failure or dynamic nature of wireless communication link [15] prevents the sensor network from achieving its primary purpose which is data transfer. Hence, routing techniques should give priority to reliable transmission. At the same time, it is critical to reduce packet loss in WSNs which will improve the network throughput and energy-efficiency.

Although there are many limitations on wireless sensor nodes as described above, it has been used in many applications including military, health care, environmental monitoring, and security. One of the major applications in WSN is object tracking due to its wide real-life applications such as wildlife animal monitoring [16, 17] and military intrusion detection [18]. The object tracking process consists of two critical operations. The first operation is monitoring, in which the movement states of the mobile object is detected and tracked by the sensor nodes. The second operation is reporting, where nodes detecting the object report their observations to the sink node [19].

Many object tracking researches focus on how to track the location of objects accurately and do not consider many other parameters such as reliable data reporting [1923], nodes energy consumption, congestion control, and nodes energy balancing. Therefore, in this paper, these parameters collectively are taken into consideration. We believe that considering such parameters will enhance the overall performance of the WSNs as well as advance the object tracking operation.

Furthermore, as the size of WSNs increases, it becomes inefficient to collect all information with single sink. The paper handles multi-object tracking; in addition, due to the multi-object tracking several nodes will report the detected objects in which it might overwhelm the network in case of multi-hop WSNs. Therefore, our paper deals with multi-hop networks not a centralized network. However, our proposed algorithm is even suitable in the centralized networks. So, WSN with multi-sink has been considered in our proposal. To do so, our contributions in this paper focus on: (1) formulating the object tracking problem in large scale multi-sink WSN into 0/1 integer programming with previously mentioned parameters, (2) reducing energy consumption in reporting operation for WSN lifetime extension, (3) balancing of energy consumption among sensor nodes to maintain and balance of residual energy on sensor nodes as well, (4) enhancing data reliability where the sensed data can reach any sink node in a more reliable way, (5) Reducing the probability of buffer overflow by taking into consideration the sensors buffer space to reduce the number of dropped messages, (6) introducing the principle about selecting the optimal sink for data transmission, and (7) introducing a new algorithm in title REBTAM for data reporting taking into consideration Reliability, energy balancing, and traffic awareness.

The rest of this paper is organized as follows: The related work is discussed in Sect. 2. Following this, the problem description is introduced in Sect. 3. Then, Sect. 4 describes the problem formulation. In addition, the solution approach is described in Sect. 5. The simulation results are depicted in Sect. 6. Finally, the conclusions are presented in Sect. 7.

2 Related work

This section focuses only on the most related work to the proposal of this paper. It starts by explaining the work presented in [24, 25, 27] which are the more related work to our proposed approach followed by the differences from our proposal.

The work in [24] presents a Dynamic Traffic Aware routing algorithm (DTAR) that provides traffic balancing in multi-sink WSNs by detecting congested areas along the route and distributing packets along paths that have idle and under loaded nodes. The underlying concept of this algorithm is the construction of a gradient field using three factors: number of hops, number of packets at one-hop neighbours and the minimum number of packets at two-hop neighbours. The number of hops is used to find the shortest paths for packets. The second and third factors address the queue length at neighbouring nodes that may become the next forwarder.

Although this scheme [24] is presented for multi-sink WSNs, it doesn’t consider the principle about selecting an optimal sink for data transmission which considered the first step for the selection of the optimal routing path. Furthermore, it is found out that some issues are not considered. First of all, the reliable data transmission which becomes one of the most essential issues in WSNs is not considered. Indeed, ignoring such issue might increase the packet loss as well as can cause more energy consumption due to packet retransmission as a result of unstable paths which inevitably affects the network efficiency. Secondly, the approach suffers from energy unbalancing. This might cause an energy hole problem, where the sensor nodes closer to the sink will drain their energy faster than others. Therefore, this uneven use of energy leads to a significant network lifetime reduction.

In NBPR (multi-sink probabilistic routing algorithm based on Naive Bayesian Classification model) [25], a multi-sink routing algorithm is presented. It takes the advantage of the Naive Bayesian Classification model to select the optimal routing in multi-sink sensor networks by means of probabilistic routing method. When the source node needs to transmit data to the sink, first of all, it selects the optimal sink by means of Naive Bayesian Classification model mainly taking the transmission energy consumption and residual energy into account. The energy consumption of data transmission is represented by hop count. The residual energy refers to the total residual energy of the nodes in a certain hop around one sink. Once the optimal sink is selected, the source node selects the forwarding node by probability which depends on the residual energy in the forwarding nodes. Furthermore, the forwarding node must choose the node whose hop count is smaller than that of the forwarding node in order to avoid forming a loop.

Meanwhile, the analysis of NBPR algorithm [25] shows that some issues are not considered which are reflected as drawbacks. Firstly, the network reliability (reliability is calculated as the ratio of the number of packets correctly received at the sink node to the total number of packets sent by source nodes), as discussed above, this might increase the packet loss and packet retransmissions which affects the network efficiency. The second is the queue buffer size in which it has directly impact on network throughput and lifetime. Finally, node load which is an influential factor in the energy balance among sensor nodes from our point of view. In other words, if the more sensor nodes choose the same node to relay their messages, the more energy should be reserved for this node with heavier load. Therefore, taking residual energy and node load into consideration can balance residual energy among sensor nodes efficiently as proposed in [26]. Moreover, it selects the optimal sink by a probability depending on the total residual energy of the nodes around each sink where, a part of energy resources at these nodes is used for sending this kind of information to each sink. This might affect the energy efficiency of the network.

Multiple Sink Dynamic Destination Geographic Routing (MSDDGR) algorithm based on greedy forwarding has been given in [27]. When any node needs to send its data packet, it first chooses the nearest sink as the current destination. Then, it transmits the packet to the next hop node using greedy forwarding algorithm. In addition, if any intermediate node sees another sink is nearer to it, the current destination node will be changed to the new selected sink. However, MSDDGR algorithm doesn’t consider some critical issues such as a drawback. The first is energy balancing, as described above; this might lead to unbalanced energy consumption in the network which causes energy holes around the sink and significant network lifetime reduction. The second issue is the network reliability which is one of the key issues in WSNs due to the high dynamics, limited resources, and unstable channel conditions. Thus, this might deteriorate the network performance as mentioned above. Finally, the packet buffer capacity of sensor nodes. As described above, this might increase the packet loss and packet retransmission which inevitably affects the network efficiency.

In [28], the authors proposed an improved novel routing algorithm based on the concept of buffer length. In this algorithm, the buffer length of each neighbour node is used to make routing decision in order to reduce congestion. A congestion avoidance protocol is proposed in [29] based on the lightweight buffer management. However, they deal with single sink and our work in this paper deals with multi-sink problem.

The proposed approach, firstly, formulates the object tracking problem in multi-sink WSNs as into 0/1 integer programming for optimal solution. Then, it develops a heuristic algorithm to construct an efficient object tracking in multi-sink WSNs. It proposes a novel protocol based on energy reduction, reliability, and energy balance routing in multi-sink WSNs for object tracking. The proposed protocol consists of two steps which are the selection of the optimal sink and the selection of the relay nodes. The selection probability of the optimal sink depends on the transmission energy consumption and residual energy as the previous work in [25]. In the proposed model, the energy consumption of data transmission is represented by hop count as in [25], where the less hop count implies the less energy consumption at a fixed transmission range.

In our work, instead of the total residual energy of sink node neighbours that used in [25] to reflect the residual energy around each sink, the minimum residual energy of sensor nodes on the paths used for a certain time interval to route data to each sink node reflects the residual energy on the routing paths to that sink. The maximum minimum residual energy means the maximum residual energy on the routing paths to that sink. Moreover, in the selection of the relay nodes, unlike the previous work in [24, 25, 27], we consider the end-to-end reliability of a multi-hop route based on the PRR which is one of the most commonly used reliability metrics [30]. In the proposed model, the work analyses the reliability of the whole path from the next hop node to the chosen sink, and then chooses the relay node with the best PRR which results in high reliability instead of dropping packets.

Furthermore, the proposed approach considers a congestion control mechanism as in [24] and unlike the previous work in [25, 27], but it utilizes the current normalized buffer space at one-hop neighbours only to avoid congested areas or overloaded nodes and thus reducing the number of dropped packets and energy consumption due to retransmission the of the lost packets as a result of buffer overflow. In addition, unlike the previous work in [24, 25, 27], the proposed protocol can balance residual energy consumption among sensor nodes evenly as much as possible through new effective function between nodes’ residual energy and weight. In addition, it can effectively alleviate buffer overflow by integrating the normalized buffer space into routing choice.

3 Problem description

Consider a multi-sink WSN deployed in a field for the purpose of object tracking. Our objective is to propose a data reporting model for this kind of service. To consider reliable object tracking taking into consideration nodes energy consumption, the energy balancing, and buffer size. The object tracking problem is modelled as a graph based on the nodes location in the monitored environment and their characteristics. The efficient object tracking in WSNs problem can be modelled as a simple undirected graph, G(V,L), where V is the set of sensor nodes in the network distributed in a two-dimensional plane and L is the set of all links (i, j) where, \( i,j \in V \) Link (i, j) = 1 if and only if \( j \in NEB_{i} \), where NEB i is the set of neighbours of node i. Assuming that multiple objects are moving in the environment, they will be detected by some sensor nodes which are denoted by source nodes. The frequency of object movement at each source node differs according to the number of objects that are within the sensing range of each source node. The information about the presence of the detected objects at each source node should be reported to one of the sink nodes.

In order to select the optimal sink for each source node, it should satisfies two constraints, (1) the sensor nodes on the routing paths to that sink should have the maximum residual energy to achieve balanced energy consumption, (2) low transmission energy consumption. In our model, the minimum residual energy of sensor nodes on all paths that used to send messages from the source nodes to a certain sink during a certain time interval is used to evaluate the residual energy toward that sink. The maximum minimum residual energy of sensor nodes toward a certain sink means the maximum residual energy toward that sink. In addition, hop count is used to represent the energy consumption of data transmission in our model where, the less hop count implies the less energy consumption at a fixed transmission range.

Once each of the source nodes select the optimal sink, its information should be sent to the chosen sink through intermediate sensor nodes which acts as a relay nodes. The chosen path from each source node to the chosen sink should be the best path which satisfies some constraints including (1) low communication cost, (2) its reliability greater than or equal target value, (3) at the same time, sensor nodes on that path should have the maximum value resulting from our equation between the residual energy and weight compared with their neighbours to balance energy among sensor nodes, and (4) as well, sensor nodes should have a buffer space greater than or equal message size to reduce number of lost packets and energy consumption due to retransmission of the same packets as a result of buffer overflow.

4 Problem formulation for optimal solution

Based on the previous modelling to the object tracking problem, the problem can be solved optimally. In this section, the problem is mathematically formulated using Integer Linear Programming (ILP); then solved by any of the selected solver. This solution is used to guarantee the optimal solution, if any, to the previously described problem. However, due to the complexity of the problem and its constraints, it is expected and it is well known from the previous experiences in similar problems [31, 32] that no optimal solution could be found in some cases of the problem representation. Therefore, the mathematical formulation is used to solve small-scale problems as well as it is designed to fully understand the problem with its major constraints. In addition, the optimal solution for small-scale problems could be used to measure the quality of any given heuristic that might be used to solve the same problem. Up to our knowledge, this is the first ILP for the multi-sink object tracking problem using WSN. In fact, in the next section, the paper explains a REBTAM solution to the optimization problem. This solution is used for large-scale problems.

To simplify the description of the problem and its formulation, the notations used to model the problem are given in Table 1.

Table 1 Our model notations

The residual energy has been utilized by many of the researchers and prototypes; for instance, in [33] used the residual energy to balance energy consumption among sensor nodes. The authors in [34] also used the residual energy to balance energy consumption and maintain coverage and connectivity. In addition, the presented protocol in [35] used the residual energy to balance data traffic among the nodes and improve the network lifetime. So, it is not that hard to get at least some knowledge about the residual energy of a node especially with new smart sensors.

Similar to the previously stated researchers, our proposal in this paper is to use the residual energy to balance energy consumption among sink nodes and among sensor nodes. Our algorithm avoids the energy consumption due to exchanging energy among the nodes in a distributed network by limiting the energy exchange to nodes’ neighbours as given in [3335]. Therefore, nodes need only to know their neighbours energy. In addition, an event-based approach is used for nodes’ energy update in which, no periodic messages will be sent between the neighbours unless there is a need for that; again, this saves the nodes’ energy, avoids nodes congestion, and nodes interference will be limited.

Now, let’s start with the selection of the optimal sink for each source node which depends on the minimum residual energy of sensor nodes located in the direction to that sink. When the message sent from any source node s to a certain sink along the path p, the minimum residual energy of the relay nodes on that path is included in the energy field in the data message, there is no new message for it. If any relay node finds that its residual energy is less than that in the energy field, it will be changed to the new value in the data message. Such energy information is recorded at the sink node if its value is less than the previous one. Therefore, every certain time interval T s , each sink node broadcasts a message contains the minimum residual energy toward that sink to all of the sensor nodes. The minimum residual energy is defined by Eq. (1).

$$ MRE_{{s_{i} }} = \hbox{min} \left\{ {E_{{\hbox{min} p_{n} }}^{{s_{i} }} } \right\}\quad \, n = 1,2, \ldots ,N $$
(1)

where, P n is the set of all paths used by the source nodes to send their data to the sink node s i during time interval T s while Nis the number of these paths.\( E_{{\hbox{min} p_{n} }}^{{s_{i} }} \) is the set of the minimum residual energy of the sensor nodes on all the paths P n to sink node s i during a certain time interval T s .

Due to the use of multi-hop routing technique, the information about the detected objects at each source node should be transmitted as messages to the chosen sink s i through the relay nodes. Since the energy resource is limited on such nodes, it is highly needed to achieve energy balanced routing. The node with heavy weight and low residual energy should be prevented from being selected as a next hop. So, the proposed algorithm considers the selection of the relay nodes based on the value of a new proposed function. This function enables the selection decision according to the residual energy and weight of nodes. The computation of the weight of each node j is defined by Eq. (2) as follows:

$$ we_{j} = \left\{ {\begin{array}{*{20}c} {\sum\limits_{{i \in NEB_{j} }} {Mes_{i} } } & { \, if \, dis_{{_{j} }}^{{s_{i} }} < dis_{{_{i} }}^{{s_{i} }} } \\ 0 & {otherwise} \\ \end{array} } \right. $$
(2)

Since the objects in the monitored environment are distributed non-uniformly, node’s weight can be defined as the total number of messages at the object’s neighbour nodes. Equation (2) means that packets are not allowed to be transmitted backward to the neighbours with higher hop count. This strategy ensures that the packets are forwarded closer toward the sink and prevents forming a loop.

In addition, the new function that combines residual energy and weight for each node j at time t is defined by Eq. (3) as follows:

$$ Ewr_{j} (t) = \left\{ {\begin{array}{*{20}c} {\exp \left( {{\raise0.7ex\hbox{${\left( {NRE_{j} (t) - we_{j} (t)} \right)}$} \!\mathord{\left/ {\vphantom {{\left( {NRE_{j} (t) - we_{j} (t)} \right)} {IE_{j} }}}\right.\kern-0pt} \!\lower0.7ex\hbox{${IE_{j} }$}}} \right)*\left( {\frac{{NRE_{j} (t)}}{{1 + \left( {IE_{j} - NRE_{j} (t)} \right)}}} \right)} & { \, if \, we_{j} \ne 0} \\ 0 & {otherwise} \\ \end{array} } \right. $$
(3)

where, IE j is the normalized initial energy of node j which is the ratio between the initial energy of node j and the energy required to do single hop transmission and reception and NRE j is the normalized residual energy of node j which is the ratio between the residual energy of node j and the energy required to do single hop transmission and reception.

In event-driven sensor networks such as those used in object tracking application, nodes normally operate under low or idle load states. When events occur, these nodes suddenly become active; resulting in a part of the network becoming overloaded and causing congestion in some areas. Since the sensor nodes have limited memory, it is impossible to buffer a large number of packets. Consequently, the buffer of the relay node may start overflowing; this may result in loss of important packets and more energy consumption due to the retransmission of the lost packets [10, 11, 36]. In order to avoid congestion or overloaded nodes, the normalized buffer space is integrated into routing choice. The normalized buffer space is defined as the ratio between the buffer space and packet size. It is used to express the number of packets that can be received by every sensor node without it starting buffer overflowing at a certain time. The normalized buffer space of node j at time t can be defined as follows:

$$ bm_{j} (t) = \left\{ {\begin{array}{*{20}c} {\frac{{bs_{j} (t)}}{pz}} & {if \, bs_{j} (t) \ge pz} \\ 0 & {otherwise} \\ \end{array} } \right. $$
(4)

Dijkstra algorithm has been used to compute the shortest path from the source node to the sink nodes to get the solution set of \( \left\{ {h_{{s_{i} }}^{s} } \right\} \) and the shortest path from the source node to the chosen sink to get the solution set of \( \left\{ {x_{p}^{sd} } \right\} \); the objective in these cases is to minimize communication cost. To fit the Dijkstra algorithm into our formulation, the algorithm is represented mathematically as follows [37]:

The sensor nodes are being processed according to their order. The sensor nodes that are yet to be processed denoted by U, initially \( U \in S \cup R \). When a sensor node i is processed, the following task is performed:

$$ \, F(j) = \hbox{min} \{ F(j),D_{(i,j)} + F(j)\} ,for \, all \, j \in NEB_{i} ,NEB_{i} \in U $$
(5)

where F(j) denotes the length of the shortest path from node i to node j which initially equal to zero for the first processed node. When the sensor node i is processed, the {F(j)} values of its neighbours that have not yet been processed are updated in accordance with Eq. (5).

To complete the informal description of the algorithm, it is only necessary to specify the order in which the nodes are processed. The next node to be processed is one whose F(j) value is the smallest over all the unprocessed nodes as follows:

$$ i = \arg \hbox{min} \{ F(j)\} ,j \in U $$
(6)

Recalling that U denotes the set of unprocessed nodes, Thus after node i is processed it is immediately deleted from U, where, U = U  {i}

The total communication cost for a graph G and object tracking tree T is defined as the sum of the individual contributions of all source and relay nodes in G:

$$ Total \, communication \, \cos t(G,T) = \sum\limits_{s \in S} {\sum\limits_{{d \in D_{s} }} {\sum\limits_{(i,j) \in L} {t_{(i,j)}^{ds} } } } C_{(i,j)} $$
(7)

Based on these computations the problem is formulated as follows:

The objective function:

$$ Z_{IP} = \hbox{min} \sum\limits_{s \in S} {\sum\limits_{{d \in D_{s} }} {\sum\limits_{(i,j) \in L} {t_{(i,j)}^{ds} } } } C_{(i,j)} $$
(IP)

Subject to:

$$ \sum\limits_{{s_{i} \in S_{i} }} {h_{{s_{i} }}^{s} \, = 1 { }\quad\forall s \in S} $$
(8)
$$ \sum\limits_{{K \in S_{i} - \left\{ {s_{i} } \right\}}} {z_{K} \left( {MRE_{{s_{i} }} - MRE_{K} } \right)} < 0 \, \quad\forall s_{i} \in S_{i} $$
(9)
$$ 2 - \sum\limits_{{K \in S_{i} - \left\{ {s_{i} } \right\}}} {z_{K} } = b_{{s_{i} }}^{sd} + 1 \, \quad\forall s_{i} \in S_{i} ,\forall s \in S,\forall d \in D_{s} $$
(10)
$$ \sum\limits_{{K \in S_{i} - \left\{ {s_{i} } \right\}}} {z_{K} } \le 1 \,\quad \forall s_{i} \in S_{i} $$
(11)
$$ \sum\limits_{{s_{i} \in S_{i} }} {b_{{s_{i} }}^{sd} \, = 1 { }\forall s \in S,\quad\forall d \in D_{s} } $$
(12)
$$ \sum\limits_{{s_{i} \in S_{i} }} {h_{{s_{i} }}^{s} b_{{s_{i} }}^{sd} } \le g_{{s_{i} }}^{sd} \, \quad\forall s \in S,\forall d \in D{}_{s} $$
(13)
$$ \sum\limits_{{p \in P_{{s_{i} }}^{s} }} {x_{p}^{sd} \, = 1 { }\quad\forall s \in S,\forall d \in D_{s} } ,s_{i} \in S_{i} $$
(14)
$$ \sum\limits_{i \in S \cup R} {U_{(i,j)}^{sd} } = 1 \, \quad\forall s \in S,\forall d \in D_{s} ,j \in NEB_{i} ,NEB_{i} \in S \cup R $$
(15)
$$ \sum\limits_{{N \in NEB_{i} - \{ j\} }} {z_{N} (Ewr_{j} - Ewr_{N} ) < 0 \, \quad\forall j \in NEB_{i} ,NEB_{i} \in S \cup R} $$
(16)
$$ 3 - \sum\limits_{{N \in NEB_{i} - \{ j\} }} {z_{N} = m_{j} + 1 \, \quad\forall j \in NEB_{i} ,NEB_{i} \in S \cup R} $$
(17)
$$ \sum\limits_{{N \in NEB_{i} - \{ j\} }} {z_{N} \le 1 \, \quad\forall j \in NEB_{i} ,NEB_{i} \in S \cup R \, } $$
(18)
$$ \sum\limits_{{p \in p_{{s_{i} }}^{s} }} {k_{p}^{sd} PRR_{p} \ge Q \,\quad \forall s \in S,\forall d \in D_{s} } ,PRR_{p} \in PRR_{{p_{{s_{i} }}^{s} }} ,s_{i} \in S_{i} $$
(19)
$$ k_{p}^{sd} + 1 \le x_{p}^{sd} + 1 \,\quad \forall p \in P_{s} ,s \in S,d \in D_{s} $$
(20)
$$ \sum\limits_{{j \in NEB_{i} }} {b_{j} } bm_{j} > 0 \, \quad NEB_{i} \in S \cup R $$
(21)
$$ \sum\limits_{{p \in P_{s} }} {\sum\limits_{{j \in NEB_{i} }} {\delta_{j}^{p} x_{p}^{sd} m_{j} b_{j} k_{p}^{sd} \le U_{(i,j)}^{sd} } \, \forall s \in S,\forall d \in D_{s} } ,i \in S \cup R,NEB_{i} \in S \cup R $$
(22)
$$ \sum\limits_{{j \in NEB_{i} }} {m_{j} \le 1 { }\quad NEB_{i} \in S \cup R} $$
(23)
$$ \sum\limits_{{j \in NEB_{i} }} {b_{j} \le 1 { }\quad NEB_{i} \in S \cup R} $$
(24)
$$ \sum\limits_{(i,j) \in L} {t_{(i,j)}^{sd} \ge 1 { }\quad\forall s \in S,\forall d \in D_{s} } $$
(25)
$$ z_{K} = 0 \, or \, 1 \,\quad K \in S_{i} - \left\{ {s_{i} } \right\} $$
(26)
$$ b_{{s_{i} }}^{sd} = 0 \, or \, 1 \,\quad \forall s \in S,\forall d \in D_{s} ,s_{i} \in S_{i} $$
(27)
$$ h_{{s_{i} }}^{s} = 0 \, or \, 1 \, \quad \forall s \in S,,s_{i} \in S_{i} $$
(28)
$$ g_{{s_{i} }}^{sd} = 0 \, or \, 1 \, \forall \quad s \in S,\forall d \in D_{s} ,s_{i} \in S_{i} $$
(29)
$$ z_{N} = 0 \, or \, 1 \, \quad N \in NEB_{i} - \left\{ j \right\} $$
(30)
$$ x_{p}^{sd} = 0 \, or \, 1 \,\quad \forall s \in S,\forall d \in D_{s} ,p \in P_{s} $$
(31)
$$ U_{(i,j)}^{sd} = 0 \, or \, 1 \, \forall s \in S,j \in NEB_{i}, NEB_{i} \in S \cup R,\forall d \in D_{s} $$
(32)
$$ m_{j} = 0 \, or{ 1 }\quad\forall j \in NEB_{i} ,NEB_{i} \in S \cup R $$
(33)
$$ k_{p}^{sd} = 0 \, or{ 1 }\quad\forall p \in P_{s} ,\forall s \in S,\forall d \in D_{s} $$
(34)
$$ t_{(i,j)}^{sd} = 0 \, or{ 1 }\quad\forall s \in S,\forall d \in D_{s} ,(i,j) \in L $$
(35)
$$ b_{j} = 0 \, or{ 1 }\quad\forall j \in NEB_{i} ,NEB_{i} \in S \cup R $$
(36)

To simplify the description of the formulation the constraints are divided into sets and each set is recognized by its functionalities as follows:

4.1 Routing constraints

The routing constraints involve constraints 8, 13, 14, 15, 22, 23 and 24.

Constraint (8): It is used to guarantee that any source node s must choose only one sink node.

Constraint (13): Once the sink node s i is selected, and it has the maximum minimum residual energy compared with the other sink nodes. Then, the decision variable \( g_{{s_{i} }}^{sd} \) must be enforced to 1.

Constraint (14): It is used to guarantee that any source node s must choose only one path to the chosen sink.

Constraint (15): To avoid cycle, the use of any node j as a relay node for the same source node sends a message d is equal 1, except the sink node.

Constraint (22): once the path p is selected and the PRR of that path is greater than or equal the target end-to-end success probability. As well as, the node j is on the path and has the highest residual energy to weight ratio compared with other neighbour nodes. In addition, the node j can receive the message without buffer overflow. Then the decision variable \( U_{(i,j)}^{sd} \) must be enforced to equal 1.

Constraint (23–24): They are used to guarantee that any node i must choose only one node j from its neighbours.

4.2 Energy constraint

The energy constraints contain constraints 9, 10, 11, 12, 16, 17, and 18.

Constraint (9–12): they are used to balance energy consumption of the whole network. Any source node s must choose only one sink node s i to report its message d to it. The chosen sink should have the lowest load compared with the other sink nodes.

Constraint (16–18): they are used to maintain higher and balance residual energy on nodes. Any node i must choose only one node j from its neighbours which have the highest residual energy to weight ratio compared with other neighbour nodes.

4.3 Reliability constraint

The reliability constraints contain constraints 19 and 20.

Constraint (19–20): It is used to guarantee that the selected path p for the source node s and message d has a PRR greater than or equal the target end-to-end success probability.

4.4 Buffer constraint

The buffer constraint contains constrain 21.

Constraint (21): It is used to prevent buffer overflow. Any node i must choose only one node j from its neighbours which can receive its message without buffer overflow.

4.5 Decision variables

The decision variable constraints are composed of constraints 26through 36.

Constraint (26–36): \( t_{(i,j)}^{sd} ,z_{K} ,g_{y} ,b_{{s_{i} }}^{sd} ,h_{{s_{i} }}^{s} ,x_{{s_{i} }}^{sd} ,z_{N} ,x_{p}^{sd} ,U_{(i,j)}^{sd} ,m_{j} ,b_{j} , {\text{ and }}k_{p}^{sd} \) equal 0 or 1.

4.6 Redundancy constraint

The redundancy constraints include only constraint number 25.

Constraint (25): For all \( \sum\limits_{(i,j) \in L} {t_{(i,j)}^{sd} } \) must be greater than or equal to 1.

5 The proposed solution

This section describes the second solution approach for the reliable object tracking problem which is divided into two steps as described below.

  1. 1.

    The selection of the optimal sink by a probability which depends on the residual energy and the energy consumption of data transmission.

  2. 2.

    The selection of the relay nodes depends on the node cost which takes residual energy, weight, and buffer space of the relay nodes into account. As well as, the energy consumption and reliability of data transmission.

5.1 Initialization

During the initialization phase, each sink node broadcasts a control message to all 1-hop neighbours with a hop count field initialized to “0”. Each node receiving the message updates its hop count (increments the value by 1) and rebroadcasts the control message to its 1-hop neighbouring nodes. If any node receives the control message from the node whose hop count is lower or equal its hop count. Then the sending node is considered as the next hop candidate node; otherwise, the control message is discarded. This process repeated until all the nodes are initialized.

5.2 Data transmission

Once the source node detects an object, the process of selecting the optimal sink node for data transmission is started. The selection of the sink node is related to the sink node cost. The sink having the maximum cost is to be considered as the optimal sink node. Our model takes the residual and hop count into account. When a message sent from any source node to a certain sink, the minimum residual energy of the sensor nodes on the routing path will be reported to that sink and then updates its residual energy information which represents the least received value at this sink. Such information is used to evaluate the residual energy of the sensor nodes located in the direction to a certain sink. That’s to say, the higher residual energy means the greater sink cost. In this way, the energy balance factor is taken into consideration. Hop count is used to represent energy consumption of data transmission where, at a fixed transmission range the less hop count means the less energy consumption. The cost of a sink node s i at the source node s is determined as follows:

$$ P_{rs} \left( {s,s_{i} } \right) = \frac{{MRE_{{s_{i} }} }}{{mhc_{{s_{i} }}^{s} }} $$
(37)

After the source node selects which the sink the data will be sent to, the process of selecting the relay nodes for data transmission is started. The selection of the relay node is related to the node cost. The node having the maximum cost is to be considered as the next hop node. Whenever, a given node i have data to send, it calculates the value of NC j associated for each neighbour node j. Then, it sends its data over the neighbour node having the greater value of NC j which is calculated as follows:

$$ NC_{j} (t) = (e_{j} (t) + hd_{ij} ( {\text{t) }} + Nbs_{j} (t))*r_{ij} (t) $$
(38)

where

$$ e_{j} (t) = \frac{{Ewr_{j} (t)}}{{\hbox{min} \left( {Ewr_{j} (t)} \right)}} $$
(39)
$$ r_{ij} (t) = \left( {{\raise0.7ex\hbox{${PRR_{ij} }$} \!\mathord{\left/ {\vphantom {{PRR_{ij} } {\hbox{max} \left( {PRR_{ij} } \right)}}}\right.\kern-0pt} \!\lower0.7ex\hbox{${\hbox{max} \left( {PRR_{ij} } \right)}$}}} \right) + \left( {\left( {PRR_{ij} *PRR_{si} } \right) - PRR_{si} } \right) $$
(40)
$$ hd_{ij} (t) = \left( {(hc_{i} - hc_{j} ) + 1} \right)*\left( {{\raise0.7ex\hbox{${dis_{i} }$} \!\mathord{\left/ {\vphantom {{dis_{i} } {dis_{j} }}}\right.\kern-0pt} \!\lower0.7ex\hbox{${dis_{j} }$}}} \right) $$
(41)
$$ Nbs_{j} (t) = \frac{buffer \, space - packet \, size}{buffer \, size} $$
(42)

where, PRR si represents the PRR of the path from the source node s to the node i.

The major issues to be tackled by the routing protocols for WSNs comprises of providing reliability and congestion control mechanisms while being energy efficient. Both of the two factors help in reducing packet loss, which results in an energy efficient network operation that is a key factor in increasing network lifetime.

Therefore, Nb sj (t) and r ij (t) are used in the calculation of NC j which enables decision making according to the buffer space on the neighbour nodes and reliability of the wireless links.

As in Eq. (39), e j (t) is related to the proposed relation between residual energy and weight. Ewr j (t) is used in order to distribute traffic loads as evenly as possible across the network with an aim to balance energy consumption among the nodes and improve network lifetime.

One of the main challenges in WSN is to maximize network lifetime by conserving energy. Consequentially, choosing the paths with minimum length for data transmission is required to minimize energy consumption and conserve much more energy as possible. Therefore, the use of hd ij (t) function in the calculation of NC j allows the REBTAM algorithm to be energy-efficient.

In order to collect the information required to calculate the value of \( e_{j} (t),r_{ij} (t),{\text{ and }}Nbs_{j} (t) \), the node i broadcasts the next hop selection message to its 1-hop neighbours. On receiving the reply, if the Euclidean distance from the neighbour node to the chosen sink is found to be greater than that of the node itself, the message is discarded. Then this neighbour node is removed from the routing calculation. Once the reply message is received, the node i calculates the link cost using Eq. (38) and selects the neighbour node having the maximum cost.

6 Performance evaluations

The performance of the proposed approach for multi-sink WSNs is evaluated through comparison with sophisticated algorithms designed for multi-sink WSNs such as DTAR [24], NBPR [25], and MSDDGR [27].The reason of selecting DTAR to compare with is that it is one of the most recent work that deals with multi-sink problem and unfortunately till writing this paper, up to our knowledge, there is no routing algorithm taking into consideration all used, in our paper, parameters together. The section starts by describing the performance metrics followed by simulation environment and finally simulation results.

6.1 Performance metric

For a comprehensive performance evaluation, several quantitative metrics considered are defined below.

  1. 1.

    Network Lifetime [8]. It is defined as the time duration from the beginning of the network operation until the first node exhausts its battery.

  2. 2.

    Energy Imbalance Factor (EIF) [8]. It is defined to quantify the routing protocol energy balance characteristic which defined formally as the standard variance of the residual energy of all nodes. The EIF was calculated during running time (simulation time) to quantify the routing protocol energy balance characteristic.

    $$ EIF = \frac{1}{n}\sqrt {\sum\limits_{i = 1}^{n} {(RE_{i} - RE_{avg} )^{2} } } $$

    where n is the total number of sensor nodes, RE i is the residual energy on node i, and RE avg is the average residual energy of all nodes.

  3. 3.

    Throughput Ratio (TR) [38]. This metric is defined as:

    $$ TR = \frac{Number \, of \, packets \, received \, by \, the \, \sin k}{Number \, of \, packets \, sent \, by \, source \, nodes} $$
  4. 4.

    Average End-to-End Delay (Seconds) [39]: It is defined as the average time a packet takes to travel from source node to the sink node. This includes propagation, transmission, queuing, and processing delay. The processing delay can be ignored as a result of fast processing speed [40].

6.2 Simulation environment

In this work, the sink node, and sensor nodes are stationary after being deployed in the field. All the later experiments are done for both homogeneous and heterogeneous node energy distributions on a custom Matlab simulator. Data traffic is generated according to a Poisson process of intensity λ packets per second. In addition, we choose a harsh wireless channel model, which includes shadowing and deep fading effects, as well as the noise. The simulation parameters are listed in Table 2 according to TDA5250 datasheet [41]. The energy consumption model used in this paper is according the TDA5250 radio energy model. The proposed MAC protocol is inspired by IEEE 802.11 MAC protocol.

Table 2 Simulation environment parameters

6.3 Simulation results

In this section, a variety of experiments are conducted to evaluate the performance of the proposed REBTAM approach for multi-sink WSNs compared with DTAR [24], NBPR [25], and MSDDGR [27] in terms of network lifetime, network throughput, average end-to-end delay, and energy balance for homogeneous and heterogeneous networks. In all later experiments, each node is assumed to have an initial energy of 500 mJ for homogenous network, while it is between 500 and 450 mJ randomly for heterogeneous network. The same proposed scheme for selecting the optimal sink is used with the DTAR algorithm in all later experiments, since it doesn’t consider the principle about selecting sink node.

6.3.1 Optimal and REBTAM approaches performance

In these set of experiments, we evaluate and analyse the performance of the ILP optimization approach compared to swarm solution. In order to verify the success of the proposed REBTAM intelligence approach, it should be compared with the results obtained from optimization approach using the same network characteristics. Two sets of experiments are conducted with the same network parameters. The first set of experiments assumes that a single object has been moved in the environment and detected by the three source nodes which denoted by S1 and S2. The second set of experiments assumes that multi-objects have been moved in the environment and detected by the same source nodes. The two experiments are conducted with different target reliabilities, 0.5, 0.6, 0.7, 0.8, and 0.9 as given in Table 3.

Table 3 Single object detection

As can be seen from the simulation results in Table 3, when the target reliability increases, the ILP approach cannot find a solution. Unlike REBTAM solution which it finds a solution with reliability close to the target value. It is worth mentioning that in small size problems like the one presented in Table 3, the obtained reliability by the REBTAM solution is very close to the ILP approach gained reliability.

The simulation results for the second set of experiments are shown in Tables 4, and 5.The detected objects for each source node are denoted by ob1… etc. As can be seen from the simulation results in Tables 4 and 5, ILP approach cannot find a solution for all detected objects. In addition, when the target reliability increases, the ILP approach, unfortunately, cannot find a solution due to the required memory and long-time taken. On the other side, the proposed REBTAM approach was able to find the second optimal path as in Table 5. For instance, when the target reliability equal 0.5 ILP approach find a solution for only the first detected objects at each source node but cannot find the solution for other detected objects. Unlike REBTAM approach which find a solution for all detected objects close to the target value.

Table 4 ILP approach multi-objects detection
Table 5 REBTAM approach multi-objects detection

6.3.2 Network lifetime evaluation for homogenous and heterogeneous networks

In this set of experiments, the performance of the proposed REBTAM approach is evaluated in terms of network lifetime for both homogenous and heterogeneous networks compared to DTAR [24], NBPR [25], and MSDDGR [27].

6.3.2.1 Network lifetime evaluation with different number of sink nodes

These experiments study the impact of varying the number of sink nodes on the network lifetime for homogeneous and heterogeneous networks as shown in Figs. 1 and 2 respectively. In these experiments, 100 sensor nodes are randomly deployed in an area of 1000 m × 1000 m square, while increasing number of deployed sink nodes starting from one sink to three sink nodes. The number of source nodes that can detect the objects in the environment and the average traffic rate λ are fixed to 10 and 5 packets per seconds respectively.

Fig. 1
figure 1

Network lifetime versus number of sink nodes for homogeneous network

Fig. 2
figure 2

Network lifetime versus number of sink nodes for heterogeneous network

As depicted in Figs. 1 and 2, deploying more sink nodes prolong the network lifetime. This happens because, as the number of sink nodes increases, nodes have more choices among the sink nodes to route the data packets which reduce the number of nodes that participate in the routing of data packets, and thus reduce the number of exhausted nodes in the network which in turn prolong the network lifetime. Meanwhile, with more sink nodes in the network, the probability of having a sink in the proximity of a sensor increases, thus less hops would be crossed to reach a sink and the overall energy consumption would be reduced. Even though more sink nodes save more energy, the number of sink nodes should be limited as the sink nodes’ cost is usually much larger than sensor nodes’ cost.

However, it is evident that the proposed REBTAM approach achieves longer lifetime even while increasing the number of sink nodes as compared with the others. This can be justified as follow. The proposed REBTAM approach can balance the energy consumption and traffic loads efficiently across the network. At the same time, it improves the packet delivery against unreliable links and buffer overflow, thus saving energy consumption due to the retransmission of the lost packets.

In the case of MSDDGR algorithm, the node before transmitting their packets always chooses the nearest sink node as its current destination. Then it selects a neighbour node nearest to the chosen sink as the next hop. However, balancing loads among sink nodes and balancing the loads among sensor nodes situated on the routes to reach sink nodes are not taken into account. Therefore, messages sent to an overloaded sink may keep using the same relay nodes and as a result depleting their energies, subsequently affect the network lifetime. As well as, it doesn’t consider the reliable message delivery and congestion control mechanism for data transmission leading to a lot of lost packets and thus causes a large amount of energy consumption due to the retransmission of the lost packets.

DTAR algorithm spreads traffic over underloaded paths to reduce congestion and buffer overflow unaware of residual energy distribution in the network and the reliability of the routing paths. This readily leads to energy imbalance and more energy consumption due to the retransmission of the lost packets as a result of unreliable wireless links.

The NBPR relies on the residual energy to balance loads among sink nodes and to balance loads among sensor nodes situated on the routing paths to reach sink nodes. However, it is not sufficient to achieve effective energy consumption balance across the network. In addition, it doesn’t consider how to alleviate congestion and how to avoid unreliable wireless links, which diminish the network throughput resulting in more energy consumption due to the retransmission of the lost packets.

6.3.2.2 Network lifetime evaluation with different average traffic rate

These simulation experiments evaluate the performance of the proposed REBTAM approach with respect to the average traffic rate λ for homogeneous and heterogeneous networks as shown in Figs. 3 and 4 respectively. In these experiments, a random topology is built in a 1000 m × 1000 m area with 100 sensor nodes and a 2 sink nodes placed at (1000 m, 0 m) and (1000 m, 1000 m).

Fig. 3
figure 3

Network lifetime versus traffic rate λ for homogeneous network

Fig. 4
figure 4

Network lifetime versus traffic rate λ for heterogeneous network

It can be seen from the figures, the network lifetime decreases, as the traffic rate increase due to two reasons. First, when the traffic increases, the packet delivery ratio reduces due to collision leading to more retransmission times and thus causes the waste of energy. The second reason is that the relay load of nodes increases with increasing traffic rate.

However, the proposed REBTAM approach achieves the improvement on the network lifetime as compared with that proposed for single sink. The reason of this improvement can be explained by the fact that the multi-sink topology can balance energy consumption and effectively solve the energy hole problem more than single sink, which extends the network lifetime. In addition, multi-sink usage reduces the distance a data packet has to travel to reach a sink, resulting in more energy saving and longer lifetime. It can be seen also from the figures that the performance of the proposed REBTAM approach outperforms the DTAR, NBPR, and MSDDGR schemes designed for multi-sink WSNs, irrespective of the average traffic rate. This is because; the proposed REBTAM approach balances the energy consumption throughout the network and saves energy consumption due to the retransmission of the lost packets effectively more than the others.

6.3.3 Network throughput evaluation for homogenous and heterogeneous network

In this set of experiments, the performance of the proposed approach is evaluated in terms of TR for both homogenous and heterogeneous networks compared to the DTAR [24], NBPR [25], and MSDDGR [27] for homogeneous and heterogeneous networks.

6.3.3.1 Network throughput evaluation with different number of sink nodes

These experiments study the impact of varying the number of sink nodes on the network throughput for homogeneous and heterogeneous networks as shown in Figs. 5 and 6 respectively. For testing this variation, the number of sink nodes is increased from 1 to 3 in a network of 100 sensor nodes randomly deployed in a field area of 1000 m × 1000 m square. The number of source nodes and the average traffic rate λ are fixed to 10 and 5 packets per seconds respectively.

Fig. 5
figure 5

Network throughput versus number of sink nodes for homogeneous network

Fig. 6
figure 6

Network throughput versus number of sink nodes for heterogeneous network

It can be observed that the network throughput increases with increasing the number of sink nodes, because the average distance from sensor nodes to sink nodes is decreased. However, the proposed REBTAM approach outperforms the other algorithms. This happens because the proposed REBTAM approach improves the packet delivery ratio by selecting the more reliable paths and spreading data traffic over underloaded nodes as much as possible to reduce congestion and buffer overflow. But, the DTAR reduces the number of lost packets due to buffer overflow by preventing nodes with overloaded buffers from joining in routing calculation, while the packet losses due to the unreliable wireless links are not taken into account. The NBPR and MSDDGR protocols don’t consider reliable message delivery and congestion control mechanism for data transmission.

6.3.3.2 Network throughput evaluation with different average traffic rate

The simulation experiments study the variation in the network lifetime with respect to the average traffic rate λ for homogeneous and heterogeneous networks as shown in Figs. 7 and 8 respectively. These experiments started with increasing the average traffic rate λ in a network from 3 to 7 packets per second with 100 sensors randomly deployed in a square area of 1000 m × 1000 m with 2 sink nodes placed at (1000 m, 0 m) and (1000 m, 1000 m).

Fig. 7
figure 7

Network throughput versus traffic rate λ for homogeneous network

Fig. 8
figure 8

Network lifetime versus traffic rate λ for heterogeneous network

In general, as the average traffic rate increases, the traffic load in the network increases. Since the traffic load increases, a larger number of packets are pushed into the network. This causes areas of congestion, leading to more packet losses and therefore a decrease in the network throughput.

However, it can be seen from the figures that when the average traffic rate increases, the network throughput of the proposed REBTAM approach is slightly decreased. Meanwhile, the proposed REBTAM approach achieves further improvement in the network throughput compared with DTAR, NBPR, and MSDDGR algorithms even while increasing the average traffic rate in the network. The reason for such results is that the proposed REBTAM approach can effectively recover from congestion and buffer overflow as much as possible even in cases of high traffic by spreading traffic over underloaded paths, as well as avoid the unreliable paths as compared to DTAR, NBPR, and MSDDGR algorithms.

6.3.4 Energy balancing evaluation for homogenous and heterogeneous networks

In this experiment, the performance of the proposed approach is evaluated in terms of energy balance for both homogenous and heterogeneous networks compared to the DTAR [24], NBPR [25], and MSDDGR [27] for homogeneous and heterogeneous networks. The EIF was calculated during running time to find the network’s balance efficiency. these simulation experiments are conducted in a network of 100 sensor nodes distributed randomly in a two dimensional simulation area of size 1000 m × 1000 m with 2 sink nodes placed at (1000 m, 0 m) and (100 m, 1000 m). The number of source nodes and the average traffic rate λ are fixed to 10 nodes and 5 packets per seconds respectively.

Figures 9 and 10 present the variation of EIF over simulation time for homogeneous and heterogeneous networks respectively. It is clear from the figures that EIF increases with more running time. Indeed, in random topologies, some sink nodes are deployed in highly dense areas while the others are not. Since these areas are not necessarily overlapping, some sensor nodes are obliged to bind exclusively to certain sink nodes, subsequently enforcing an unbalance in the distribution of sensors among the sink nodes. Undoubtedly, it has a negative impact on the variance of residual energy across the network. It reveals the reason behind the augmentation of the EIF with more running time.

Fig. 9
figure 9

The EIF versus simulation time for homogeneous network

Fig. 10
figure 10

The EIF versus simulation time for heterogeneous network

However, it is obvious that the EIF of the proposed scheme can balance energy consumption efficiently more than that of the proposed scheme for single sink. This is due to the fact that multi-sink usage can balance energy consumption of the whole network and relieve the energy hole problem more than single sink. Also, it can be seen from the figures that the EIF of the proposed approach is less than that of the others. This is happens because, in the case of MSDDGR scheme, there is no notion of residual energy distribution, since any node has a packet waiting for transmission always chooses the nearest sink as its current destination, then it selects a neighbour node nearest to the chosen sink. Therefore, messages sent to an overloaded sink may keep using the same relay nodes and as a result depleting their energies, leading to an unbalanced distribution of residual energy.

NBPR scheme balance the load among sink nodes and balance the load among the sensor nodes situated on the routes to reach sink nodes based on the residual energy. The residual energy of sensor nodes is not sufficient to achieve effective energy balance across the network. DTAR scheme spreads the data traffic away from congested areas unaware of residual energy distribution, leading to unbalanced energy consumption in the network. But the proposed scheme balances the load among sink nodes depending on the least residual energy of sensor nodes that situated on the routes toward those sink nodes. As well as, it balances the load among sensor nodes depending of the energy weight cost presented in Sect. 4, which provides more efficient energy balance than that depending on the residual energy only.

6.3.5 Average end-to-end delay evaluation for homogenous and heterogeneous networks

In this set of experiments, the performance of the proposed REBTAM approach is evaluated in terms of end-to-end delay for both homogenous and heterogeneous networks compared to the DTAR [24], NBPR [25], and MSDDGR [27] algorithms.

6.3.5.1 Average end-to-end delay evaluation with different number of sink nodes

These experiments study the impact of varying the number of sink nodes on the end-to-end delay for homogeneous and heterogeneous networks as shown in Figs. 11 and 12 respectively. These experiments were conducted in a network of 100 sensor nodes randomly deployed in a 1000 m × 1000 m square region, while varying the number of sink nodes from 1 to 3. As well as, the number of source nodes and the average traffic rate λ are fixed to 10 nodes and 5 packets per second respectively.

Fig. 11
figure 11

Average end-to-end delay versus number of sink nodes for homogeneous network

Fig. 12
figure 12

Average end-to-end delay versus number of sink nodes for heterogeneous network

As can be seen from the figures, the average end-to-end delay decreases with increasing the number of sink nodes, because the average distance from sensor nodes to sink nodes is decreased.

However, it is clear from the figures that the proposed REBTAM approach has the lowest end-to-end delay compared with the others, irrespective of the number of sink nodes. This can be justified as follow. The proposed REBTAM approach sends packets over the least congestion areas and avoids the unreliable wireless links, leading to reduced end-to-end delay in the network. On the contrary, the NBPR and MSDDGR can’t prevent packets from going to heavily congested regions and can’t avoid the unreliable data transmission and therefore an increase in the end-to-end delay due to the retransmission of a lot lost packets. The DTAR algorithm prevents packets from going to possible congested areas, while the reliable data transmission is not taken into account, which causes more packet losses and thus increasing the end-to-end delay.

6.3.5.2 Average end-to-end delay evaluation with different average traffic rate

These simulation experiments study the variation of the end-to-end delay with respect to the average traffic rate λ for homogeneous and heterogeneous networks as shown in Figs. 13 and 14 respectively. These experiments started with increasing the average traffic rate λ in a network from 3 to 7 packets per second with 100 sensors randomly deployed in a square area of 1000 m × 1000 m with 2 sink nodes placed at (1000 m, 0 m) and (1000 m, 1000 m).

Fig. 13
figure 13

Average end-to-end delay versus traffic rate λ for homogeneous network

Fig. 14
figure 14

Average end-to-end delay versus traffic rate λfor heterogeneous network

The results show that the end-to-end delay increases with increasing the average traffic rate. The reason why the end-to-end delay is increased in this case is because the network traffic is increased with increasing the average traffic rate λ causes an increase in the queuing delay. It is evident that the end-to-end delays of the proposed REBTAM approach lower than that of the proposed approach with single sink. This is due to the fact that in multi-sink topology, the average distance from sensor nodes to the sink nodes is decreased, which implies that the end-to-end delay decreases.

However, the proposed REBTAM approach performs a smaller end-to-end delay than the others. This can be justified as follow. Compared with NBPR and MSDDGR algorithms, the proposed REBTAM approach reduces the number of packets dropped and packet retransmissions by avoiding the unreliable paths and the heavily congested areas or overloaded nodes. On the other hand, the DTAR algorithm can’t avoid the packet loss and packet retransmissions due to unreliable wireless links, leading to increased end-to-end delay.

7 Conclusions

In this work, an efficient data reporting method for object tracking in multi-sink WSNs is proposed. In data reporting phase, the proposed approach not only reduces the energy consumption but also balanced the loads among sink nodes and among sensor nodes to extend the network lifetime. At the same time, the sensed data delivered to the chosen sink with the highest possible reliability and minimum buffer overflow. A new scheme for selecting the optimal sink for data transmission is proposed. This work formulates the problem as 0/1 integer programming problem, and then proposes REBTAM approach for solving the optimization problem. Experiments have been carried out to evaluate and analyse the performance of the proposed REBTAM approach compared to the previous work such as DTAR, NBPR, and MSDDGR protocols. Simulation results showed that the proposed approach is robust; achieve longer lifetime, and giving lower end-to-end delay compared to the previous works for both homogenous and heterogeneous networks.