A Survey of Sink Mobility Models to Avoid the Energy-Hole Problem in Wireless Sensor Networks

—Wireless Sensor Networks (WSN) refer to networks where the sensors are deployed in an environment to sense and select data. WSN sensor nodes have limited power and cannot be recharged easily. Consequently, the faster sensor nodes to deplete their energy budget are those close to the sink as they have to relay all data emanating from any sensor in the network. Thus, a hole of energy around the sink is created as the sink coverage nodes have drained their initial energy thus leading to sink unreachability. The WSN lifetime maximization problem has always been a hot research topic. Collecting data in WSN using a mobile sink is an efﬁcient approach for achieving WSN longevity and preventing the energy hole problem. However, ﬁnding the optimal trajectory along with its appropriate ﬂow routing is a challenging problem since many constraints should be considered. This paper discusses and compares several existing WSN-lifetime-maximization using sink mobility solutions. These solutions are mainly classiﬁed into two types: Linear Programming and Artiﬁcial Intelligence- based solutions. The state-of-the-art solutions are compared in terms of network topology, sojourn points and duration, buffer size, and overhearing. Finally, a discussion of the WSN lifetime maximization constraints is provided to deﬁne a promising sink mobility model.


I. INTRODUCTION
Now-a-days, Wireless Sensor Networks (WSN) are used to sense and collect data from many environments that are not easy to reach. WSN consists of: (1) a sink node, which oversees collected data from the wireless sensor nodes for further processing, and (2) many sensor nodes usually scattered in a harsh environment to collect data and deliver it to the sink to serve a given application such as environmental monitoring [1] and military applications [2]. Wireless Sensor nodes rely on batteries power. Once they are scattered, it is hard to replace or recharge the batteries. Therefore, maximizing the WSN lifetime by optimizing nodes' energy is crucial.
The sensor nodes close to the sink are always responsible for forwarding other distant nodes' data to the sink. Consequently, due to this burdening, they are usually the earliest nodes that deplete their energy, while the other sensor nodes still have a good amount of energy [3]. Furthermore, if the sensors that are closer to the sink drain their energy budget, they create an energy hole around the sink. Fig. 1 illustrates the energy hole problem caused by the batteries' depletion of sensor nodes within the sink coverage (nodes with a red . If this energy hole occurs, the sink will become unreachable, and hence, the network is no longer operable as it won't be able to deliver the sensed data to the sink for further processing. To overcome this issue, many approaches have been proposed such as assigning sensor nodes multiple transmission power, nonuniform initial energy budget distribution, and sink mobility [4] (see in Section II). This survey focuses on maximizing WSN by exploiting sink mobility. Thus, the sink can move and stop at many points in the network to receive sensed data. Besides the sink mobility, the appropriate flow routing is defined to balance the energy consumption between sensor nodes. This work considers only the algorithms that apply to delay-tolerant networks. This means that, when the sink is at location i, only the sensor nodes within the transmission range of the sink at this location can transmit their data, while the others have to delay their transmissions. So, in one round the sink has to collect data from all the nodes and returns back to its first location in D time which is the maximum delaytolerant time [5].
The remainder of the survey is organized as follow: Section II presents some proposed approaches to overcome the energy hole problem, and the main constraints that are considered in WSN. Section III, IV and V discuss the most cited linear programming-based (LP-based), artificial intelligencebased (AI-based) and other solutions that are neither LPbased nor AI-based for maximizing the WSN lifetime using a single mobile sink. Moreover, a comparative study among these existing WSN-lifetime maximization approaches will be conducted in Section VI. Finally, in section VII, we discuss some additional constraints that impact the WSN lifetime in order to define an optimal mobile sink solution that maximizes the network lifetime and other future research directions.

II. MITIGATING ENERGY HOLE PROBLEM APPROACHES
WSN nodes have limited resources (e.g., transmission range, buffer size, and batteries). Due to the battery constraint, the sink coverage nodes are the first nodes that deplete their energy due to the burdening of the relying task from the distant nodes, causing the energy hole problem. Therefore, the energy hole problem is addressed in many research works. Many approaches had been proposed to mitigate the energy hole problem as shown in Fig. 2 such as: assigning sensor nodes multiple transmission power, nonuniform initial energy budget distribution, and sink mobility [4].
First, in the multiple transmission power approaches, to balance the energy consumption among sensor nodes in the WSN, two or three hops away sensors can send data to the sink directly by passing one or two hops away sensors. As a result, the sink coverage nodes are highly alleviated from the relaying task, and hence the WSN lifetime is improved. [6] and [7] proposed two different routing protocols that both aim at allowing the sensor nodes to either send a message to its immediate neighbors or send it directly to the sink node. Simulation results show that both protocols achieve longer network lifetime especially compared to the nominal transmission range solution. Regarding the nonuniform initial energy budget distribution approach, the sensor nodes that are closer to the sink are given a higher amount of energy than distant nodes. So, the sink coverage nodes will not die quickly because they have a higher energy budget. Nevertheless, their lifetime is always constrained as they have to forward all the remaining nodes data messages. Finally, the third approach considers a mobile sink that moves between the sensor nodes to relieves the sink coverage nodes from their heavy relaying task and aims at balancing the energy consumption among WSN sensor nodes such that every node will drain it energy budget smoothly and uniformly throughout the network. In our survey, we focus on work related to exploiting the sink mobility for It is worth noting that most of the reviewed papers agreed on three main constraints that describe the behavior of sensors and the sink in WSN, these constraints must be fulfilled to make the WSN work correctly. The constraints for the sensor node were defined as follows: • The energy constraint: the total energy consumption at a node i due to the reception and transmission of data over the network lifetime T must not exceed its initial energy.
• The flow conservation law between sensor nodes: for any node, the sum of total incoming flow rates plus the self-generated data rate must be equal to the sum of the resulting outgoing flow rates at time t As for the constraint related to the sink, it is defined as follows: • The total traffic going into a sink in a duration of time must be equal to the amount of total generated data from all sensor nodes in that duration.

III. LINEAR PROGRAMMING-BASED SINK MOBILITY MODELS
After extensive research, we end up reviewing many papers that have proposed different sink mobility models using different approaches. We classified these research works as Linear Programming-based (LP-based), Artificial Intelligencebased (AI-based), and other sink mobility models as shown in Fig. 3.
In this section we will start discussing the LP-based models.

A. Exploiting a Single Mobile Sink
Many researchers proposed WSN maximization models that used a single mobile sink to collect data from WSN sensor nodes. These models are classified based on the decisionmaking placement as centralized and distributed solutions. They also vary based on their movement as discrete and semicontinuous.
Y. Yun et al. [8] formulated a distributed algorithm for the WSN-lifetime maximization problem. First, they convert the WSN lifetime maximization problem into a network flow problem on an expanded graph. For each possible sink location, correspond an expanded graph G l , and a set of coverage nodes are defined. A path links each node in G l to the sink. For each G l , the sink takes T time to collect data from all sensors in that graph. So, the problem of WSN lifetime maximization is to maximize the number of sink tours T . The authors formulated the main three constraints of WSN as a linear problem to minimize the WSN maximum energy consumption. Then, they divided the problem into sub-problems using the fractional knapsack problem. Thus, they develop a distributed algorithm to decide at each node whether data should be transmitted to the sink or buffered locally. The distribution of the algorithm allows the solution to be built-in in network protocols, and the decisions can be made at each sensor. The authors proved (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 13, No. 5, 2022 the efficiency and convergence to the optimal value. Moreover, they measured the Lyapunov drift at every iteration and proved that the queue size is bounded from above, which is equal to the maximum delay time D, and the average value of the total queue size has increased along with iterations. As a result, the increasing D will increase T × D, which is the WSN lifetime.
On the other hand, many centralized sink mobility models were proposed. For instance, [9] proposed a joint algorithm to determine the sink movement and sojourn duration in a grid network topology. The suggested algorithm states that, when a sensor node is located at the same vertical or horizontal line as the sink, there is a single unique path between them which is the direct one. Otherwise, only the two routes are considered with equal hop count revealed by the rectangle boundary defined by a sensor i and the sink. To generate the energy model of their algorithm, a pair of horizontal and vertical dotted lines to enclose the nodes associated with the column and the row of the sink in the network is defined resulting in eight sub-areas of the grid as shown in Given a grid topology of size L (L being equal to the square root of the sensor nodes number), a sensor node i, its sub-area, and position (i.e., column and row indexes (x, y)), the energy consumption is calculated as follows: To find the optimal sojourn times at the grid cells that maximize the network lifetime, this energy model is converted to a linear programming model as follows: (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 13, No. 5, 2022 where the WSN lifetime denoted by z is the sum of all sink sojourn duration t k (in seconds) at all sojourn points k, e 0 is the node's initial energy (in Joules), and C k i is the energy consumption of data transmitted in node i while the sink sojourns at position k (in Joules/bit).
Finally, the authors implemented their solution using LINGO [10] and provided visualization of the sink sojourn duration and the nodes' energy consumption during the network lifetime. The results showed the sink sojourn duration follow a pattern that is distributed between the four corners nodes of the two-dimensional grid. This pattern achieves a balanced energy consumption among sensor nodes, thus maximizing the WSN lifetime. As a limitation, there is a computational overhead for finding the optimal sojourn points and duration.
It is worth noting that the previously-mentioned solutions propose discrete mobility models. Other works such as [11] and [12] proposed a semi-continuous novel flow routing solution to solve the Unconstrained-Mobile Base station (U-MB) problem, wherein the base station is continuously roaming anywhere in the WSN environment. This proposed algorithm is driven from the Constrained-Mobile Base station (C-MB) problem, where the base station can only move to predefined points. Once the authors realize and prove the conversion from the temporal optimization problem to the location-based one, they drive a solution for the C-MB and prove that it converges to the (1 − ) optimal solution. To do so, they convert the infinite number of mobile base station locations to a finite number.
First, the base station movement space is narrowed down to the smallest enclosing disk (SED) for all WSN nodes. Then, the SED is divided into subareas as follows: The possible minimum distance D min and maximum distance D max between  Finally, the C-MB solution is applied using the FCPs in the U-MB problem. This work proved that the total sojourn duration for the base station in each sub-area is maximizing the WSN lifetime is greater than the C-MB optimal lifetime and (1 + ) U-MB lifetime. This guarantees that the suggested algorithm lifetime is at least (1 + ) far from the optimal lifetime obtained by the U-MB algorithm. We believe that the proposed solution will be better if it considers the optimal path for the base station mobility. Indeed, choosing the shortest path will minimize the travelling time between FCPs and the nodes' buffer size, thus maximizing the WSN lifetime.

B. Exploiting a Mobile Relay or a Special Property
Other researchers propose to use more than one mobile entity to collect data, which we refer to in our survey as the mobile relay. Moreover, some works exploit a special property (such as recharging batteries) to make the mobile entity collect data more efficiently.
In [13], the authors proposed a framework to investigate the wireless sensor network lifetime maximization based on the graph model using joint discrete sink mobility and routing problem. First, they expanded the network as two graphs: ongraph and off-graph. On-graph is when the sink is co-located at a sensor node location, while off-graph is when the sink is not. The authors proved that using predefined sink sojourn points with variant sojourn duration for the sink is a simplified version of the Maximizing the Network Lifetime (MNL) problem. Consequently, they formalized a linear program solution for the MNL problem using a single mobile sink (MNL-SMS) for the on-graph case. Then, they formulate the Primal-dual algorithm for the set of paths between a node i and the sink, and the set of paths that go through the node i in the k th sink sojourn duration after reformulating it as a pathflow. They used an extension of the Floyd-Warshall algorithm to compute the all-pairs shortest path. The resulted paths are organized into clusters, each containing paths with the same end. Then, they run a search algorithm to find the best sink sojourn duration t k that achieves minimum energy consumption. Consequently, they generalized the primal-dual algorithm to the MNL problem using multiple mobile sinks.
Finally, they proved that using a sink layout schedule will maximize the WSN lifetime longer than maximizing the WSN lifetime by any sink with a fixed layout and referred to this problem as the TO MOVE OR NOT TO MOVE (TMNTM) decision problem. Moreover, they found that the mobile sink in the on-graph case relieves the forwarding load from the colocated sensor node and thus saves the energy consumption of that sensor node.However, the suggested algorithm still has a high computational complexity even though it is an approximated version from the Floyd-Warshall algorithm.
In [14], the authors investigated the WSN lifetime achieved using either a mobile relay or a mobile sink and their tradeoffs. The mobile relay is a sensor node with unlimited energy (i.e., batteries can be replaced or recharged). First, the authors compute the WSN lifetime achieved by a static routing when the sensor nodes are all static and know the relay node location. In this case, the optimal data routing schedule is determined by sorting the static nodes' lifetime in ascending order. Then, these nodes are visited accordingly to collect data. As for the dynamic routing, where the static nodes don't know the relay node's current location to send their data, the authors proposed a linear programming model for the data routing while assuming that the relay node is co-located with a static node. The author proved that using the mobile sink will maximize the network lifetime better than the relay node. But, sometimes, it might not always be possible for the sink to be mobile as in hostile terrains. In this case, using a mobile relay will be efficient. Consequently, using a mobile relay along with a mobile sink will maximize the WSN lifetime four times compared to using a static sink. For achieving this, the mobile relay has to stay two-hop away from the sink. The authors constructed a joint mobility and routing algorithm. When the sink modifies its position, it will select a new node as an aggregation node marked to send its new position to all sensor nodes in the network. Nodes in the one-hop radius of the sink (P 1 ) send data to the sink directly. Those outside P 1 require to know the location of the mobile relay to send data to OM line, O being the position of the sink and M that of the mobile relay. As such, this data will be sent to the aggregation node through OM , then to the sink, which is called an Aggregation Routing Algorithm (ARA). Finally, the authors showed through simulation how using a mobile relay with a mobile sink maximizes the WSN lifetime. This approach is efficient because it applies to large-scale networks with a high density of nodes. However, since two mobile entities are used (a mobile sink and a mobile relay), building a new routing incurs more communication and computation overhead since the routing changes when their positions are changing.
Xie L et al. [15] step forward by proposing a mathematical model to move the Wireless Charging Vehicle (WCV) which is used to both collecting data and recharging the sensor nodes. The main goal of designing their model is to minimize the entire system's energy consumption. This goal is reached by the following: 1) minimizing the energy used to move the WCV along the predefined path, which is equivalent to the maximization of the ratio of the WCV vacation time to its travelling time; and 2) minimizing the energy rate used to charge the sensor nodes, which will vary depending on each node and its distance to the WCV. Thus, to achieve these two goals, the authors proposed a mobile WCV travel path that minimizes the WCV energy while ensuring data collection from nodes and recharging all sensor nodes in a balanced manner. Beside the three main constraints in WSN they defined their own: time constraint and energy criteria constraint. The time constraint imposes that the WCV total travelling time which depends on the path distance and the velocity of WCV plus the total stopping time must be less than the WCV vacation time. As for the energy criteria constraint, it dictates to ensure that each sensor node energy which equals E max at the beginning of the network (t = 0) must be fully charged back to E max at any time of the renewable cycle before its end. Based on these constraints, the authors developed a time-dependent optimization problem. However, since the time-dependent problem is an NP-hard problem, they solved it by considering a special case of the problem that depends on the WCV's location (space-dependent) instead of the time dependency and they replaced each time variable by a space variable. Then, they proved that the time-dependent solution is equal to the space-dependent solution by showing that for any value achieved by a time-dependent feasible solution (in a time t), there is a same value achieved by the space-dependent feasible solution (in location p). That being said, the spacedependent problem has an infinite number of stop points in the WCV travelling path. So, to find the near-optimal solution, they discretize the path into a finite number of segments and assign a logical point to each segment. Then, the upper bound of each segment is determined by calculating the best case (where a node has a minimum energy consumption and is charged by the maximum energy). On the other hand, the lower bound corresponds to the worst-case (i.e., a node has a maximum energy consumption and is charged by the minimum energy). Afterwards, the gap between these two bounds is calculated; if it is not small enough, then this segment is discretized until reaching a gap within (1 − ) between upper bound and lower bound. The authors proved that their algorithm finds the threshold between collecting data and recharging the sensors, and of course, this makes the WSN work continuously. A summary of all these LP models is provided in Table I IV. ARTIFICIAL INTELLIGENCE-BASED SINK MOBILITY MODELS In this section we will present several artificial intelligence solutions proposed to solve the energy-hole problem. Some of them are applied to the cluster-based network model while the others consider a non-cluster based architecture.

A. Non-Cluster based Models
Anwit et al. [16] proposed a variable-length chromosome genetic algorithm to find the optimal set of sink sojourn www.ijacsa.thesai.org It is a distributed algorithm, that means lower computation overhead [9] A joint algorithm to defined sink movement, and sink sojourn duration.
Balance the energy consumption Overhead of computation and communication is high [11] Continuous sink mobility solution by deriving a solution for (U-MB) problem from the (C-MB) problem solution. (Shi Y, 2012) Near to the (1 − ) optimal solution It has a polynomial complexity With Exploiting A Mobile Relay or A Special Property [13] A primal-dual algorithm that generalized the single mobile sink solution to the multiple mobile sink problem. (Luo J, 2010) The algorithm gives jointly mobility and routing solution for lifetime maximization, and it applies to many network topologies.
Has a computational complexity and it is not suitable for line network [14] Maximizing WSN lifetime using a mobile relay by determining his optimal mobility area to collect data. (Wang W, 2005) It is appropriate to the large-scale networks that have a high density of nodes Has a high overhead of computation and communication since there are two mobile entities. [15] Moving wireless charging vehicle (WCV) that used to recharge nodes and collect data from them, by developing a space-dependent algorithm.
They used WCV to recharge sensor nodes while trying to maximize the WSN lifetime.
The path must be predefined, the algorithm only found the sojourn points that maximize the WSN lifetime.
points and their locations. They applied their algorithm as follows: First, they start by generating a variable number of chromosomes from size (0.2× the number of sensor nodes in the WSN (n) to size (0.5 × n). Each chromosome consists of a sequence of IDs numbers of random sojourn points' locations. After that, for each chromosome, they generate a population with fixed-sized. To evaluate these chromosomes, a balance between two factors is necessary. The first factor is the chromosome length which equals the number of sojourn points IDs in this chromosome. The second factor is the mobile sink path length, which is the total distance that the mobile sink cross when it moves through all these sojourn points. A high number of sojourn points may produce a longer path while there is a shorter path covering the same nodes. However, a small number of sojourn points may result in a longer path that uncovers some sensor nodes. So, to ensure the compromise between these two factors, a Fitness Function is used to filter all the unfit chromosomes that do not satisfy the threshold between making the sink path short but covering all nodes. the solution proceeds as follows: 1) One chromosome from two different populations is selected using the roulette wheel selection algorithm. 2) After that, the multi-points crossover technique is applied on these two selected chromosomes based on a predefined probability. 3) Then, the mutation operation is performed to the child chromosomes that were generated from the crossover operation. In the mutation operation, the gene position value to be changed is also selected using a predefined probability.
At the end of this cycle, the children's chromosomes are compared to their parents' chromosomes. If they are better, they replace them in the new population. Otherwise, they are rejected. This cycle repeats until a predefined termination condition is reached. Finally, the simulation results showed that the proposed algorithm outperforms the traditional Travel Saleman Problem (TSP) algorithm by reducing the path length and the data collection time. However, the authors did not consider the energy consumption at each node and its impact on the path selection, which is the main goal of the sink mobility research.
In [17], a data collection strategy is proposed using a mobile sink that moves based on an ant colony optimization algorithm. First, the authors introduce a method to select the rendezvous nodes that can communicate directly with the mobile sink. These nodes are selected based on the entropy weight method of many indicators (e.g., the relative residual energy and density of the nodes) to select the optimal access path for the mobile sink. This optimal solution should minimize the WSN energy consumption and tolerate some delay to compensate for energy consumption. The simulation of the proposed algorithm showed the energy consumption is balanced between all sensor nodes. Nevertheless, the main limitation of this research is that the solution focuses on minimizing the whole network residual energy amount instead of maximizing the network lifetime.
Zhu et al. [18] proposed a WSN scheme inspired by the honey-comb structure to collect data from the WSN sensor nodes. First, they assumed that the first position of the sink is the WSN's centre point. Then, they divide the network into a number of hexagons, each hexagon is called a partition. Each partition must contain at least one sensor node and its side length (a) must be bigger than or equal to the power two of the sensor node's sensing radius (r 2 ). Besides, they established the Cartesian coordinate system in the network with an origin O located at the WSN's centre point. After the network partition, they gave each hexagon a partition ID and a direction value. Like the Cartesian coordinate, the partition ID is represented by two integers (m, n), where m is increasing along the x − axis and n is increasing along the y − axis progressively. It is worth noting that n increases by two for the vertical partitions and by 1 for the non-vertical partitions. As for the direction, each partition's direction value is determined based on the sink position. The sink position is at the Cartesian coordinate centre point (0,0) and its direction value is 0. As the suggested scheme  [18] consists of many hexagons, each edge of the sink's hexagon is represented by a number n from 1 to 6. When the hexagon partition is located on the (n th ) side direction, the direction value of these partitions is equal to the (n th ) number. The remaining partitions have a combined direction value, i.e. the values of the surrounding partitions (e.g. the partition between partitions 1 and 2 has the value 12 as shown in Fig. 6).
Regarding the sensor nodes, they will be assigned a combined addressing values containing (i) partition ID, (ii) the direction value, and (iii) the node ID which is a unique number used to distinguish sensor nodes. Once every sensor is assigned to a given partition, then there are three aspects of this datagathering scheme: 1) data forwarding between partitions, 2) sink moving strategy and 3) updating the direction value. For the data forwarding, the node will forward its data to the sink partition through its direction value. For the sink moving strategy, first of all, the sink has a counter to count the number of received packets; if it reaches a threshold, then the sink will move and change its location. There are three strategies for sink movement: 1) The random movement (RM), where the sink selects one of its partition's neighbours randomly.

2) The data volume-based greedy movement (DGM),
where the sink has counters on each hexagon side, used to count the number of the received data packets, then the sink chooses the side with the highest counter to move to. 3) The energy-based greedy movement (EGM), where the sink employs an agent node for each hexagon side to calculate the average residual energy for sensor nodes on that side, then the sink will choose to move to the side with the highest residual energy. 4) For the direction value update, the sink moves either vertically (to sides numbered by 1 or 4) or non vertically (to sides numbered by 2, 3, 5, or 6). When the sink moves, it discloses its new location to some partitions. Indeed, there is no need to broadcast the new position to all sensors since the many partitions will still locate at the same partition regarding the sink position, thus achieving energy efficiency (see Fig. 7). Case. [18] Finally, the author simulated their three proposed schemes using MATLAB, then they compared them based on 1) sensor nodes density, 2) ratio of the source nodes in WSN, and 3) the hexagon side length. The main performance criteria are the average energy consumption, the maintenance cost, packet collected, and packet loss rate. They found that their HSDG scheme with DGM for the sink (HSDG-DGM) is outperforming other data gathering schemes HSDG-EGM and HSDG-RM in the energy-efficiency with low data loss. As an advantage, this algorithm is energy efficient since the broadcast and update of the sink's new location is limited to a given direction partition. Moreover, it avoids the routing void. Indeed, when there is no sensor node to forward the data to in a partition, the forwarding scheme states that the data packet is transmitted to another neighbour partition.
Gharaei et al. [19] proposed Energy-Efficient Mobile sink Sojourn Location Optimization (EMSLO) algorithm. Their algorithm consists of two phases: 1) Evaluating sensor nodes residual energy, and 2) Optimizing sink sojourn points. First, to evaluate the sensor nodes in the network, the remaining alive time for each sensor is calculated by dividing the residual energy by the energy consumption rate. After that, the sensor with the minimum lifetime is chosen to be the Critical Node (CN). Next, all nodes are given a weight calculated by dividing the CN lifetime by its lifetime. Accordingly, the CN is the start point of the sink sojourn location, to find the next point, the genetic algorithm is used to select the sensor nodes with the minimum cost. This cost is calculated by a function based on two factors: 1) The variance of residual energy of sensor nods. 2) each sensor weight that has been calculated before depending on CN lifetime. Finally, the authors simulate their scheme and found that their model decreases the variance of sensor residual energy, which means a good distribution of energy consumption. Moreover, they compare their model to EPMS [20] and DCHS [21] in terms of WSN lifetime, and found that their model EMSLO maximizes the WSN lifetime more than others. Moreover, they compare their algorithm to CMS2TO [22] and CM2SV2 [23] to prove that optimizing the sink sojourn location is better than optimizing the sojourn duration or the speed of the sink, and the result emphasizes that.

B. Cluster based Models
Lu et al. [24] and Jong et al. [25] both inspired from bees and queen honeybee behaviour respectively. First, in [24] they proposed a path optimization strategy for the mobile sink in WSNs using an artificial bee colony algorithm. They improve the data gathering ability by obtaining the optimal trajectory design of the mobile sink. First of all, they cluster the nodes in the grid and select some nodes as cluster heads by the traditional method LEACH [26]. These cluster heads are considered as the rendezvous points of the mobile sink. Then, they transform the WSN energy consumption problem into a minimization of the total hops between all rendezvous points and the sensor nodes by establishing the constraints' criterion that makes the WSN lifetime maximized. Moreover, they optimize the artificial bee colony (ABC) algorithm to solve this problem. As the ABC algorithm, where employed bees are randomly selected to search for the initial food sources, the authors proposed a formula to select the initial rendezvous points. After selecting the initial individual, they compare their finesses to a newly generated individual to determine which one is better. If the new individual is better, then they replace the old with it, if not then increase the cumulative factor by one. This cumulative factor is used to indicate the quality of this individual, the more quality they have, the higher its probability to be selected. Then the food source or the rendezvous points will be selected using the roulette method based on their probabilities. Besides, the authors used the Cauchy mutation detection operator based on the current solution. By using this operator, the feasible solution diversity is increased, and the randomness of the solution is avoided. Moreover, the convergence to the optimal solution is achieved, which will increase the accuracy of the solution.
Jong et al. [25] proposed a scheme to maximize the WSN lifetime inspired by the migration process of the Queen called a QHBM algorithm. First of all, based on the nature of the Queen migration such as travel for food, depending on scout bees to look for new food sources or places, follow the scout bees with high sign (excitement), stop to rest at several points, and repeat all of these tills decide where to build its hive. By applying this scenario in the network, let the Queen be a sink. For the sensor nodes, they are clustered randomly. Each cluster has some CH sensor nodes selected randomly too. These CH nodes are responsible for forwarding the cluster sensor nodes data to the sink, if their residual energy becomes below a threshold, they will send an alert to the sink to start its journey and leave this cluster, so this cluster could replace the weak CH nodes and assign the nodes with the highest residual energy as the new CH nodes. In the proposed algorithm, these CH nodes will take place of bee scouts, they will lead the sink to come over. To mimic the honeybee migration, by knowing that the Queen honeybee travel to one of the 8 cardinal directions poles, and between every two poles, there is a sector containing bees scouts. Moreover, let the residual energy of the CH nodes become the sign (excitement) of the scout bees. Consequently, the proposed algorithm steps will be as follows: 1) Set the variables: sink initial position, sink communication radius, the confidence factor. 2) Assign the scouts from the CH nodes.
3) Group the CH nodes located in the same sector. 4) The sink calculates the average residual energy of the CH nodes in each sector. 5) Then the sink calculates each sector probability, After that, the sink selects the sector that has the highest probability, which means that this sector has the CH nodes with the highest residual energy. 6) After selecting the sector, the sink compares the probability of the two adjacent sectors of the selecting one, then selects the pole in the edge of the sector with the highest probability as a destination. 7) Finally, the sink start its journey after receives an alert from the CH nodes.
The authors proved that their proposed algorithm is maximizing the WSN lifetime compared to a static sink since the re-position of the sink is alleviating the energy-depletion on the same nodes. Moreover, QHBM algorithm is alleviating the routing overhead since the sink only communicates with the CH nodes, so only these nodes require the update of the sink position. Additionally, the QHBM provides a balanced energy consumption since there is a scanning phase, where the sink looks for the CH nodes that have the highest residual energy to travel to. As a limitation, the authors did not find the optimal value of the sink communication radius, and the confidence factor is still calculated randomly.
Kumar et al. [27] proposed an Energy-Aware sink Mobility model (EASM). First of all, they proposed to logically divide the grid into a number of sub-grids, each sub-grid has an ID number, and this ID number is embedded also in each sensor node ID that belongs to it. After that, to determine the movement direction of the sink, the sink first calculates the average residual energy of its one-hop neighbors at each sub-grid. Then, it categories these sub-grids into 4 levels of energy called: Adequate Level, Operation Level, Warning Level and Danger Level. If the energy level of the sojourn grid reaches the warning or danger level, then the sink has to move by calculating each sub-grid's average residual energy then selecting the grid with the maximum residual energy level as a destination. After the sink reaches the new sub-grid, it applies the Breadth-First Search (BFS) technique to generate a spanning tree that connects all sensors in that sub-grid to the sink with the shortest path. Finally, the authors simulate their algorithm and compare it to a static sink and Energy-Aware Sink Relocated model in terms of the number of alive sensors, average residual energy, and amount of collected data. They found that their algorithm EASM is outperforming the others.
Wang et al. [28] proposed a path planning model for the mobile sink to minimize the energy consumption of the sensor nodes and make the sink travel path as short as possible. Namely, to create this path, a number of Rendezvous Points (RP) were selected after four phases: 1) tree formation, 2) RP candidate, 3) RP selecting and 4) Finding the shortest path. The tree formation is done simply by applying the spanning tree algorithm. While for the RP candidate, they follow the bottom-up manner and check the buffer remaining space for each sensor while considering the amount of data that comes from its child sensors. If a node with a full buffer capacity is found, then this node will candidate to be one of the final RP. After that, each candidate RP with its sub-tree will be evaluated by Depth-First Search (DFS) based on hop count and distance. Finally, by connecting these RP and finding the TSP, the travel path of the mobile sink is created. Moreover, the authors proposed an enhancement of their model to further reduce the travel path length. Their enhancement is done by finding better RP by replacing it or combining two of them depending on some calculation of its RP and RP-1 and RP+1.
Finally, the authors evaluate their model in terms of the dropped packet, energy consumption, computational time and buffer exploitation. They proved that their model exploits the RP buffer better than other models (CB-E [29] and WRP [30]). Consequently, the number of dropped packets is minimized. Moreover, they proved that their model is energy and computationally efficient. Table II summarizes the AI-based solutions. It provides the key concept, advantages and disadvantages of each work.

V. OTHER SINK MOBILITY MODELS
Some of the proposed models are dependent on the sinks statistical and operational decisions made for moving. Shah et al. [31] proposed a model using Mobile Ubiquitous LAN Extensions (MULEs). MULEs also are not suitable for a realtime data system. First of all, the authors consider that the network consists of (i) several Access Points, which are uniformly distributed, (ii) several sensor nodes, randomly distributed, and (iii) several MULEs. Additionally, they assumed that: • The MULEs move with 0.25 probability to any of the four main directions of the grid (North, South, East, West) with every global clock trick.
• The MULEs can't communicate or exchange data with other sensor nodes or access points unless they are colocated at the same grid points.
• Due to the limitation in MULEs' and sensor nodes' buffer size, any amount of data transferred to them will be dropped, if it is full.
They relied on Markov chains and its transition probabilities to estimate the average values of the inter-arrival time of the MULE to a sensor, the number of steps that the MULE takes to complete one round, and the average number of data amount that MULE picks up and transfer to the AP. After that, to measure the performance, they consider the following criteria: Data Success Rate and Buffer Size (keep it as small as possible) From the performance result, the authors found that: • The sensor buffer size is increasing linearly with the grid size.
• Data latency at sensor nodes is increasing linearly with the sensor nodes' buffer size.
• MULEs buffer size is increasing with the square of the grid size.
• Data latency to reach the access point is increasing linearly with the grid size.
As a result, if the grid size increases, it is required to use multiple MULEs and multiple access points, to achieve a high success data rate while keeping an appropriate buffer size. Indeed, using a large buffer size will lead to energy consumption, which is against the goal of maximizing the WSN lifetime. As benefits of using MULEs, it can increase scalability, flexibility, and robustness for the WSN. But it may have some drawbacks because of its unpredictable and constrained movement. Indeed, sometimes the MULE is unable to reach the sensor nodes due to the change in terrain that causes limitations in the MULEs movement.
Gosh et al. [32] proposed a new sink mobility approach based on the sensors request. First of all, they assume that the sink has a limited queue with size n. When a sensor node's buffer becomes near to be full, it sends a request to the sink to move and collect data directly through a single hop. On the sink side, the sink save these request on its queue and serve them based on two scheduling schemes: 1) First Come First Serve (FCFS), 2) Nearest Job Next (NJN). The main contribution of the authors is joining new schemes to the previous two. Thus, additionally there will be 3) Earliest Deadline First-First Come First Serve (EDF-FCFS), and 4) Earliest Deadline First-Nearest Job Next (EDF-NJN).
First, it is important to point out that each request has to be served before its deadline. Moreover, each request has a service time, which is the time taken to completely transmit the data from the sensor's buffer to the sink. There is also a movement time, which is the time taken by the sink when it moves between the sensors based on the serving queue order. Due to the different sensor locations and the nodes' geometric distribution, the order of serving the sensors' requests is a critical thing, since the sink moving time will be considered. Accordingly, the authors first apply the first two schemes: FCFS and NJN, if all requests in the queue will be served before their deadlines, then this queue order is good and there is no need to change it. Else, if there is a request i that will miss its deadline, the two newly proposed approaches will be applied: EDF-FCFS and EDF-NJN. According to these approaches, if there is a request i that will miss its deadline, then this request will reverse the order with the request (i−1), if it is still, then reverses it with (i − 2), if it is still, then this request will not be served and dropped from the queue. Finally, the author evaluated the four schemes and compared it based on the number of not-served request and the response time. They proved that their adapted schemes (EDF-FCFS and EDF-NJN) have outperformed the originals (FCFS and NJN) with less number of not-served requests and faster responses. But, still, these schemes are not suitable for large scale networks.

VI. DISCUSSION
We compare in Table. IV the research works that were discussed earlier are based on the following criteria: • Network Topology: many types of networks have been investigated including (i) grid (regular) network, (ii) random network, and (iii) scale-free network. The network topology of the reviewed papers varies between grid and random. Some of the random typologies are clustered by (i.e. See SectionIV-B) • Sink Sojourn Points: sojourn points are points where the sink stops to collect data from the sensor nodes.
Most of the reviewed papers under LP models are using predefined sojourn points while the AI-based Non-Cluster Based Models [16] A genetic algorithm to find the optimal number of sink sojourn points and their locations It is used to find the shortest path The energy consumption at each node is not considered, which of course impact on the path selection. [17] A data collection strategy Using ant colony optimization algorithm to move the sink.
It is used to find the best path between the sojourn points.
It minimizes the whole network residual energy consumption, instead of maximizing the network lifetime.
[18] Sink mobile through a WSN scheme inspired by the honey-comb for data collection Energy efficient, and avoiding the routing avoid [19] Use genetic algorithm to select sink sojourn points after calculating the cost for each sensor nodes Easy to implement, applicable for high density WSN.
Cluster Based Models [24] Moving the sink using Bee colony optimization algorithm.
Avoid the randomness of the solution Using the Cauchy mutation detection [25] QHBM algorithm inspired by the migration process of the Queen Honey Bee Due to the scanning phase in the algorithm, it provides a balancing energy consumption Many variables need to be restricted, such as the confidence factor which is calculated randomly. [27] First, divided the grid to sub grids, then calculate the average residual energy and determine the energy level for each sub-grid. After that if the sojourn subgrid energy level decreased to 4th, the sink mobile to the sub grid with the highest energy level.
Efficient for high density WSN. [28] Applying the spanning tree, then go bottom-up and check the buffer to find sojourn points.
It ensures transmission and exploits the whole amount of buffers. Easy to implement The MULE is unpredictably and physically moved so it is affected by the changes in its environment. [32] Sink Mobility based on two sachems of serving sensor request EDF-FCFS and EDF-NJN.
Easy to implement Many packet will be loose because the sink has a limited queue size, and the request has a deadline. Hence, it is not scalable.
• Sink Sojourn Duration: it refers to the time the sink takes at a sojourn point to complete collecting data from the sensor nodes. The WSN lifetime is actually the sum of all sink sojourn duration. So it is important to find the trade-off between maximizing the sojourn duration while taking into account the delay-tolerance time.
• Buffer size: it is the size of the sensors' temporary storage that is used to store data until the sink comes. All reviewed papers assume that the buffer size is infinite, though it id an unrealistic assumption.
• Overhearing: in WSN, the nodes are always listening to the traffic in their transmission range, hence consume an additional amount of energy. However, none of the reviewed papers has considered the overhearing while it is an important source of energy consumption that should be taken into account in WSN.

VII. FUTURE RESEARCH DIRECTIONS
We provide in the following some insights on possible future research directions to pave the way towards building more realistic and robust solutions for the energy hole problem.

A. Considering Additional Constraints
Based on the aforementioned comparative analysis, we deduce that two constraints are always considered in all WSN-lifetime-maximization solutions namely (i) the energy constraint and (ii) the flow conservation law. Consequently, it is highly recommended to consider more constraints that impact the WSN lifetime such as: • Buffer Size: The buffer size is an important criterion as it constrains the senor capacity to store received and generated data packets which has an impacts on the sink sojourn duration at each sojourn point. Besides, a higher buffer size leads to a higher energy consumption. So, finding the optimal sojourn duration that takes into account the size of the buffers that avoid data rejection is one of the main goals OM [31] Grid X X X [32] Random X X for WSN-lifetime-maximization [33] [31]. However, this constraint is generally ignored when solving the energy hole problem.
• Overhearing Energy Consumption: Since we deal with wireless sensor networks, ignoring the overhearing is unrealistic and gives flawed results for the WSN lifetime as it inevitably consumes energy. However, none of the reviewed papers considers overhearing. Thus, it is important to devise new models that take it into account when searching for the optimal sojourn duration for the sink using techniques that reduce the overhearing as in [34].
• Link Capacity: Similarly to the buffer size, the link capacity constrains the number of received and transmitted data packets, which consequently impact the energy consumption since it is calculated per data unit. As such, new models that consider this constraint are required in the field.

B. Reducing Latency
Even though the reviewed models are applicable for delaytolerant WSN, reducing latency is important to avoid the data loss due to the buffer size limitation. Many approaches have been suggested to reduce the latency by using multiple mobile sinks that cover the WSN simultaneously, which allows to collect data faster. However, this solution has a higher cost which is undesirable in WSN [35].
Another alternative is to use a powerful mobile sink that can move between sensor nodes at a higher velocity. Similarly to the previous approach, this will be more efficient than a single sink but would incur higher costs. Meanwhile, as the WSN is usually used in harsh environments, the moving in a high speed can be difficult to achieve.
Consequently, more research is required to find the tradeoff between the efficiency and the total cost of the proposed solution while taking into account the geographical characteristic of the environment and the buffer size constraint.

C. Utilizing Additional Energy Resources
One of the approaches to prolong the WSN lifetime is to recharge sensors' batteries. Even in a harsh environment, there are many ways to recharge sensors such as using the solar power, microwave energy transfer, radio-frequency energy transfer, and wireless charging stations where the mobile sink could be used as a recharging station [15]. Joint data gathering using mobile sink and sensors' battery recharging is a promising solution to optimize the WSN lifetime [36] [37][38] [39]. Even though lots of these approaches had been proposed, few works combine both techniques. A possible future research direction would be to investigate the strengths of both techniques (i.e., maximizing the WSN lifetime and energy recharging) to design a promising WSN lifetime optimization solution.

VIII. CONCLUSION
In this survey, numerous sink mobility models were discussed in the literature review to mitigate the WSN energy hole problem and maximize the WSN lifetime. These sink mobility models were classified into three categories: Linear programming-based solutions (LP-based), Artificial Intelligence-based solutions (AI-based), and other computation models. Regarding the LP-based models, four solutions used only one mobile sink, while the rest used either an additional entity or a special property (e.g., recharging sensor nodes). As for the AI-based models, they have two categories: cluster based models (i.e., sensors are organized into clusters, where each cluster has a cluster head), and a non-cluster based models. Finally, the last section discusses additional solutions that neither used LP nor AI-based.
All the solutions are discussed in detail and compared according to a set of criteria. The comparative analysis shows that most of the research ignored important constraints that fully impact WSN lifetime, namely, limited buffer size, overhearing, and link capacity. Finally, future research directions were suggested to develop a more comprehensive WSN lifetime maximization using a mobile sink.