key: cord-0233195-856egzic authors: Sorbelli, Francesco Betti; Das, Sajal K.; Pinotti, Cristina M.; Rigoni, Giulio title: A Comprehensive Investigation on Range-free Localization Algorithms with Mobile Anchors at Different Altitudes date: 2021-02-10 journal: nan DOI: nan sha: e4c4d253b49e9fa497ff18c0cae49f871eaaadea doc_id: 233195 cord_uid: 856egzic In this work, the problem of localizing ground devices (GDs) is studied comparing the performance of four range-free (RF) localization algorithms that use a mobile anchor (MA). All the investigated algorithms are based on the so-called heard/not-heard (HnH) method, which allows the GDs to detect the MA at the border of their antenna communication radius. Despite the simplicity of this method, its efficacy in terms of accuracy is poor because it relies on the antenna radius that continuously varies under different conditions. Usually, the antenna radius declared by the manufacturer does not fully characterize the actual antenna radiation pattern. In this paper, the radiation pattern of the commercial DecaWave DWM1001 Ultra-Wide-Band (UWB) antennas is observed in a real test-bed at different altitudes for collecting more information and insights on the antenna radius. The compared algorithms are then tested using both the observed and the manufacturer radii. The experimental accuracy is close to the expected theoretical one only when the antenna pattern is actually omnidirectional. However, typical antennas have strong pattern irregularities that decrease the accuracy. For improving the performance, we propose range-based (RB) variants of the compared algorithms in which, instead of using the observed or the manufacturer radii, the actual measured distances between the MA and the GD are used. The localization accuracy tremendously improves confirming that the knowledge of the exact antenna pattern is essential for any RF algorithm. Considering the recent interest in the Internet of Things (IoT), and in general in the Wireless Sensor Networks (WSNs), the problem of localizing sparse wireless sensors is more and more appealing to researchers. Due to their limited size and low cost, those sensors can be installed everywhere for any specific task. For instance, localization can help to search and rescue people after natural disasters, to monitor the structural health of building, or even to track people during the COVID-19 pandemic in order to decrease the circulation of the virus. Technically speaking, the localization problem aims at estimating the position of ground devices (GDs) deployed on the WSN. For this important task, special devices whose positions are known a-priori, called anchors, are in charge of localizing the GDs. In the literature, localization can be classified in respect to the type of anchors deployed, i.e., static anchors (SAs) or mobile anchors (MAs). The former scenario requires a discrete amount of SAs with fixed positions, while the latter one requires a single MA (e.g., rover, drone) with GPS capabilities (need of fresh coordinates while moving). Notice that the usage of SAs is not affordable in terms of costs when the WSN is large; analogously, such a fixed infrastructure cannot be quickly reused elsewhere. Hence, in this paper we consider only the localization with a single MA. Localization algorithms can be also broadly categorized as range-free (RF) or range-based (RB) approaches [1] . In the previous, the position is estimated only by discovering if the GD and MA are one in the range of the other. In the latter, the position of the GD is estimated by taking measurements (e.g., distance, angle, signal strength) between it and the MA. Usually, RB algorithms are known to be more accurate than RF ones but at the cost of additional specialized hardware. Finally, among the RF algorithms, the radius-based algorithms assume the knowledge of the transmission radius, while the radius-free ones do not. In this paper, we evaluate on a test-bed the accuracy of many RF algorithms. They exploit the heard/not-heard (HnH) method, consisting of detecting two consecutive messages transmitted by the MA, one heard and one not-heard from the GD, called endpoints. All the algorithms, but one which is new, have been described in the literature under the ideal model. The ideal model assumes that both MA and GD are equipped with an isotropic antenna whose radiation pattern is a perfect sphere. Consequently, the transmission and receiving areas, which are given by the intersection of the sphere with the earth surface, are perfect circles. The ideal model can be emulated in reality only with expensive hardware on noiseless areas, which are not the usual operating conditions of most localization applications that occur, for example, in precision agriculture or search-andrescue context. To reproduce the typical operating conditions, we adopt for our test-bed a set of inexpensive DecaWave DWM1001 Ultra-Wide-Band (UWB) antennas and an off-the-shelf 3DR Solo drone as the flying MA. Our pursued goals can be summarized as follows: • We experimentally evaluate the performance of many localization algorithms, with very little knowledge on the antenna radiation pattern; • We study how the MA's altitude can affect the localization performance. The experimental results raised difficulties, doubts, and questions. Firstly, collecting a large set of endpoints on the field has proven to be challenging. So, we search for the statistical distribution that best fits the already observed endpoints for generating a large new set of synthetic endpoints. Such a set is used for testing the compared algorithms. To mitigate the poor observed performance in the real scenario, we decide to exploit the DWM1001's capability of taking distance measurements to gain awareness of the antenna radiation pattern. Despite this strategy makes the RF algorithms actually RB, the original algorithmic rules are kept, and the awareness of the exact antenna radiation pattern, though incomplete, significantly improves the performance. The paper, which is an extension on [2] , is structured as follows: Sec. 2 reviews the literature on localization. Sec. 3 presents the compared algorithms. Sec. 4 describes the test-bed. Sec. 5 analyzes the antenna's performance. Sec. 6 evaluates the algorithms under different scenarios. Sec. 7 shows how the algorithms can incorporate the distance measurements. Sec. 8 offers conclusions. In this section we cover the state-of-the-art about localization in WSNs, giving first a brief overview about known techniques with SAs, and then surveying more in detail techniques using a MA. Finally, we describe a few works that implemented real test-beds about localization. The Static Anchors Scenario. In literature, different algorithms exist to tackle the issue of localization of GDs using SAs. DV-HOP based techniques [3] and Amorphous algorithms [4] approximate the distance between GDs using the number of hops between them and estimating the average hop distance inside the WSN. Then, using the trilateration method, each GD computes its own position. The Centroid algorithm used in [5] is another technique where each SA broadcasts its position to the surrounding, and each GD computes its own position calculating the average of all the coordinates of the SAs that it can hear. Other works propose solutions based on the Approximate Point in Triangulation (APIT) [6] whose goal is to divide the area in triangles in which unknown GDs reside. In each overlapped section (i.e., a polygon) of triangle area, the position of the unknown GD is computed calculating the centroid. The main issue for these solutions is the relative high number of SAs required for an acceptable localization error. The Mobile Anchor Scenario. All these algorithms emulate multiple SAs with a single MA that continuously broadcasts its position. For localizing GDs, a MA has to plan a route (static path) in advance inside the WSN. On that route, the MA estimates the distance between itself and the GDs in range, and eventually the GDs' positions are computed performing trilateration. In [7] three different 2D movement trajectories have been studied, i.e., SCAN, DOUBLE-SCAN, and HILBERT. The distance between two consecutive segments of the trajectories is defined as the resolution. The simplest algorithm is SCAN, in which the MA follows a path formed by vertical straight lines interconnected by horizontal lines. Essentially, the MA sweeps the area along the y-axis. The main drawback is that it provides a large amount of collinear endpoints. In order to resolve the collinearity problem, DOUBLE-SCAN sweeps the sensing area along both the xaxis and the y-axis. However, in this way the path length is doubled compared with SCAN. Finally, a level-n HILBERT curve divides the area into 4 n square cells and connects the centers of those cells using 4 n line segments, each of length equal to the length of the side of a square cell. Generally, HILBERT provides more non-collinear endpoints but the path length can be very long if the resolution increases. All the above techniques are based on straight lines and suffer from collinearity problem. In order to heavily reduce collinearity, S-CURVES [8] has been introduced, which is similar to SCAN except that it uses curves rather than straight lines. Even though the collinearity problem is almost resolved, the main problem is that it does not properly cover the four corners of the squared sensing area. One of the best techniques is LMAT [9] . The main idea is to plan a series of MAs in such a way as to form equilateral triangles, avoiding collinearity problems. Each GD inside a triangle is localized by a trilateration procedure using the three vertices. All the previous algorithms are range-based since they rely on measurements (signal strength, distance, etc.). Only a few range-free techniques have been proposed in the literature. Among them, the ones proposed by Xiao [10] and Lee [11] rely on a ground MA, while the one proposed by Betti [12] , relies on a flying MA. We will give more details and insights about those algorithms in Sec. 3. Implemented Test-beds. To the best of our knowledge, only a few test-bed implementations have been done aimed at comparing the performance among RF algorithms with a MA. Recently in [13] , a test-bed using inexpensive UWB antennas and a drone as MA evaluates the localization accuracy of the RF Drf algorithm proposed in [12] . Such an algorithm strictly relies on the good quality of the antenna radiation pattern and requires simple geometrical rules for estimating the GD's position. Unfortunately, in practice, the experimental localization error obtained by the implemented Drf algorithm is large. Another recent study in [14] shows that the irregularities of the hard-ware antenna radiation pattern can heavily affect the air-to-ground (A2G) link quality between a MA (drone) and a GD. The authors study the A2G link quality of BroadSpec UWB antennas from Time Domain Inc by observing the Received Signal Strength Indication (RSSI). They show a dependency of the link quality on the antennas' orientations, their elevation, and their distance. The authors in [15] report the UWB A2G propagation channel measurements in an open field using a drone. Three scenarios with different obstacles are considered while a drone was orbiting above a GD at different altitudes and ground distances. Also, different antenna orientations are considered for the drone. Experimental results show that the received power is highly dependent on the antenna gain of the line-of-sight (LoS) component in the elevation plane when the antennas are aligned (same orientation). In a work proposed in [16] , authors investigate a time difference of arrival (TDoA) based approach for localizing drones taking into account a simple A2G 3D antenna radiation pattern. Experimental results show that accounting for antenna effects makes a significant difference and reveals many important relationships between the localization accuracy and the altitude of the drone. Most importantly, they finally show that the localization performance varies in a non-monotonic pattern with respect to the drone altitude. Motivations. Considering that the RF algorithms have been around for a long time, that the algorithm tested in [13] on the field using a drone (i.e., flying MA) resulted in bad performance, and that the irregularities showed in [14, 15, 16] are for A2G links, we started to think that altitude could be one of the main cause of poor results for the algorithm tested in [13] and in general for RF algorithms. Therefore, these considerations motivate us to investigate more concerning the accuracy of RF algorithms at different altitudes and the quality of antennas. In this section, we describe the RF algorithms that we compare. We start defining a rover as a MA that moves on the ground, and a drone as a MA that flies in the sky. During the localization procedure, called mission, the MA visits specific points in its path, called waypoints. Along this path, the MA continuously transmits a beacon that can be used by any GD within the communication range for estimating its position. The beacon includes the current MA's GPS position and it is sent at regular intervals of time. The distance among any two consecutive transmitted beacons is called inter-waypoint distance I w and depends on the MA's current speed. All the algorithms that we study exploit the HnH method relying on the detection of endpoints. Performing HnH, the GD learns that the MA is currently transmitting at its transmission area border. Moreover, the GD learns that the last (first) not-heard beacon is at a distance I w from the first (last) heard beacon (endpoint), and hence at a distance no more I w from the edge of the transmission area. In general, three applications of HnH are required for localizing the GD. In the following, we describe three RF algorithms that we evaluate, namely, Drf [12] , Xiao [10] , and Lee [11] . We also introduce a new variant of Drf, called DrfE. In these algorithms, the MA travels along a static path for localizing the GD. The static path is formed by a sequence of consecutive straight segments in which the MA regularly broadcasts message beacons (its current position) that the GD is listening to. Once the GD has collected enough information, it can finally compute and estimate its position according to the performed algorithm. Drf [12] is a lightweight RF radius-free algorithm designed for drones. This algorithm is based on the notion of chord. In geometry, the perpendicular bisector of any circle's chord passes through the center O of the circle itself. So, the bisector of another non-parallel chord and the previous one intersect at O point. In Fig. 1(a) , the GD is located at the point O, while initially the MA travels along the segment that intersects the points in sequence A 0 first and then A 3 . The radio receiving area of the GD is identified by the circle centered at O, so if the MA transmits a message outside that circle (e.g., in A 0 ), the GD cannot hear any message. However, when the MA crosses such a circle and transmits in A 1 , the GD can now receive and record messages, because the relative distance between them is less than or equal to the transmitting/receiving radius. The same reasoning can be applied for the points A 2 (heard) and A 3 (not heard). Accordingly, the first chord is denoted by the segment with endpoints A 1 A 2 . It is easy to understand that when the MA crosses the GD's receiving area along another segment (e.g., the one that intersects the point B 1 ), another endpoint is detected, and eventually two chords are identified by the pairs A 1 A 2 and A 2 B 1 . Finally, the GD starts to estimate its position once it has detected these two chords computing first the associated perpendicular bisectors (dashed lines) and then their intersection point (which can be different from point O). The detection of chords incurs several problems that eventually affect the localization accuracy. Recalling that the MA regularly broadcasts its current position (waypoint) at discrete intervals of time and that two consecutive waypoints are at distance I w , the endpoints of the chords may not exactly fall on the circumference of the receiving disk, even if the receiving disk is a perfect circle (e.g., A 2 and A 3 ). Xiao [10] is a RF radius-based localization algorithm initially developed for ground MAs. Like Drf, the Xiao algorithm exploits the HnH method in order to detect special points used for building a constrained area that bounds the GD's position. Unlike Drf, Xiao also uses the value of the communication radius r. In Fig. 1(b) , the GD is located at the point O while the MA travels along the segment that intersects first the point A 0 and then A 3 . Once applied the HnH method, the GD initially detects the first pair of heard endpoints A 1 and A 2 . However, since the segment lies on a straight line and the value of I w is known, the GD can also compute two additional non-heard beacons, i.e., A 0 and A 3 , associated with A 1 and A 2 , called pre-arrival and post-departure. Then, four circles of radius r centered at each of these four points are drawn. Those circles create two symmetrical intersection areas (e.g., the first one is bounded by the points P 1 , P 4 , P 2 , P 3 ) where the GD may reside. Hence, the GD's position can be at the "center" of one of the two intersection areas. In order to disambiguate in which intersection area the GD resides, a third HnH beacon is required, and the final estimated position is the one which has the closest distance, from that third point, to the radius. The definition of center varies depending on whether the intersection area is delimited by four or five vertices [10] . Lee [11] is a RF radius-based algorithm very similar to Xiao. It builds a constrained area using the HnH method and the knowledge of both r and I w , similarly to Xiao. In Fig. 1(c) , once the GD has detected the two extreme endpoints (A 1 and A 2 ), it traces two circles of radius r and r − I w on both the points, which create two annuli, intersecting in two distinct and symmetrical intersection areas (e.g., one is bounded by the points P 1 , P 4 , P 2 , P 3 ). Finally, GD resides at the center of one of such areas, and a third endpoint is used to disambiguate the correct one. Now we present a new RF algorithm, called DrfE, that shares the "chord" idea with the Drf algorithm and the radius information r with Xiao and Lee. In the special case that the two endpoints A 1 and A 2 that delimit the chord exactly lie on the circumference, the GD resides on the point O of the perpendicular bisector that is distant r from the two endpoints. Precisely, there are two possible locations for O, one on the left and one on the right of the chord. Usually, using a third endpoint non-collinear with A 1 and A 2 , it is possible to disambiguate the correct intersection. In general, since the MA's path is sampled with discrete beacons at distance I w among them, A 1 and A 2 may not lie on the circumference and thus GD may not exactly reside on the perpendicular bisector of the chord A 1 A 2 , but in its vicinity. So, to find the GD's position, DrfE repeats the above construction for the three chords A 1 A 2 , A 0 A 2 , and A 1 A 3 , where A 0 and A 3 are the two non-heard beacons associated with the endpoints A 1 and A 2 , as illustrated in Fig. 2 . From the three chords A 1 A 2 , A 1 A 3 , and A 0 A 2 , three intersection points P 1 , P 2 , and P 3 are obtained at distance r from the endpoints of their chord. In other words, P 1 , P 2 , and P 3 form three isosceles triangles (A 1 A 2 P 1 ), (A 1 A 3 P 2 ), and (A 0 A 2 P 3 ) with two oblique sides of equal length r. As before, this construction finds three vertices on the left of the chord and three vertices on the right that will be disambiguated using another non-collinear endpoint (not illustrated). Let us suppose that GD is on the right of the chord A 1 A 2 . DrfE places GD at the centroid of P 1 , P 2 , and P 3 on the right of the chord A 1 A 2 . Since the RF radius-based algorithms require the knowledge of the transmission radius, in the next next we describe how to collect such information in a real test-bed. In this section, we describe the test-bed and the used hardware. We fix a Cartesian coordinate system with origin at the special position Home (0, 0, h 0 ), with h 0 = 1 m. At Home, we place the GD's antenna at the top of a tripod of height h 0 . Also, the MA is equipped with an antenna. When we set h = 0 m, we refer to a rover mission where the MA and the GD are placed at h 0 , while when we set h > 0 m, we refer to a drone mission flown at an altitude h 0 + h. h s r P t W h 0 (a) The drone and the ground device P . In our test-bed, we employ different hardware components: a few DecaWave DWM1001 UWB antennas [17] , a Raspberry Pi, and a 3DR Solo drone [18] . According to DecaWave, the transmission radius is 60 m and hence, in this paper, we set the manufacturer radius to r 0 = 60 m. The main component that pilots the MA and sends commands to the GD is the Raspberry Pi. The Raspberry can be used for the experiments on the ground using a rover, or together with the drone for the aerial ones. In the former case, i.e., MA as a rover, we simulate the rover's behavior by just walking in the field at a regular walking speed (about 3 km/h as measured by a smart-watch) keeping the Raspberry on the hands at h 0 = 1 m above the ground. Moreover, since the rover has to send GPS positions, we rely on a cheap USB GPS module connected to the Raspberry. Finally, in the latter case, i.e., MA as a drone, we use the 3DR Solo drone which is able to fly up to 25 min [18] . A mission is a static path Π that consists of n segments S i , i = 0, . . . , n − 1. Such a list of n segments is made by generating n + 1 random points in the deployment area. Each segment is delimited by two random points, and any two consecutive segments share one random point by setting the waypoints' coordinates (x W i , y W i , h) for each W i , i = 0, . . . , n − 1 (see Fig. 3 (b)). When all the waypoints are generated, the mission starts. Once the first waypoint of Π is reached, the drone/rover starts to send message beacons according to its current position by converting GPS coordinates in local Cartesian (x, y) positions. This process continues until the MA reaches the last waypoint of Π. When the mission is accomplished, the MA comes back to Home. Regarding the GD, in our experiments, we set its antenna on the tripod placed at Home, lying on two different planes, as sketched in Fig. 3 (c) (left and right). According to the DecaWave's Datasheet document [19] , there are three planes in the spherical space with respect to the antenna's center, i.e., xz, xy, and yz. Each plane experiences a different radiation pattern. In Fig. 3 (c), we show the GD's antenna when it is in the xz plane (bottom left) and in the yz plane (bottom right). We denote as vertically placed an antenna that lies in the xz plane, and as horizontally placed an antenna that lies in the yz plane. The drone's antenna is always vertically placed in the xz plane ( Fig. 3(c) , top left and top right) keeping the UWB transceiver at the bottom for guaranteeing the most available free space. For simplicity, we indicate the first configuration (Fig. 3(c) , left), where the two antennas lie on the same side, but in opposite direction, with vertical-vertical (VV); whereas we refer to the other configuration (Fig. 3(c) , right) with vertical-horizontal (VH). In this section, we recap the UWB technology, report the DecaWave's technical datasheet information, and analyze the experimental data. UWB is a promising radio technology that can use a very low energy level for short-range, high-bandwidth communications over a large portion of the radio spectrum. Nowadays, its primary purpose is in the field of location discovery and device ranging. Differently from both Wi-Fi and Bluetooth, UWB is natively more precise and accurate, uses less power and, as production of UWB chips blows up over time, holds the promise of a lower price point. Moreover, UWB offers relative immunity to multipath fading. In this paper we rely on a kit of DWM1001 UWB antennas produced by DecaWave. According to DecaWave's datasheet document [17] , those antennas provide 10 cm accuracy for the measurements. Moreover, those chips have a 6.5 GHz center frequency, and have a point-to-point range up to 60 m in a line-of-sight (LoS) scenario and up to 35 m in a non line-of-sight (NLoS) scenario. Although the DWM1001 chip transmitting power is set to −41.3 dBm/MHz, and the typical receiver sensitivity is −93 dBm/500MHz [17] , the received power is influenced by the antenna polarization. Fig. 4 shows the antenna radiation patterns of the UWB antennas according to DecaWave's document (Datasheet for the DWM1001C, Tab. 12 [19] ) for different configurations. The solid dark line of Fig. 4(a) shows that it is possible to obtain the same gain in all the directions in the xz-plane when an antenna vertically placed (i.e., on xz-plane) is observed by another antenna which shares the same vertical orientation (Φ polarization), i.e., they are concordant. We recreate this situation by implementing the antennas as VV. Thus, we expect that the VV configuration experiences the same gain at different angles, at least when the two antennas are at the same height. Both the dashed lines of Fig. 4 (a) and Fig. 4 (b) refer to the VH configuration because they show the gain when an antenna is observed by another antenna perpendicularly oriented (Θ polarization), i.e., they are discordant. Both the dashed lines have nulls at certain angles that can limit the gain and can introduce "holes" and "bubbles" in the pattern. Thus, we expect that the VH configuration experiences different gains at different angles, and we also expect a relevant variability given that the dashed lines of Fig. 4(b) and Fig. 4 (a) are different, although the relative position of the antennas seems to be the same. Analyzing these technical data, it seems that the gain is omnidirectional at least when the two antennas are placed as VV. We have not found, for DWM1001, any data which correlates the gain and the polar angle. However, in a document of a former antenna model called DW1000 [17] , DecaWave gives the gain values (reported in Tab. 1) for an antenna vertically placed (as in Fig. 4(a) ) in an anechoic chamber. We report these values just to confirm the not negligible impact of the elevation 1 : the 3D radiation pattern is far from being a sphere, with the same gain in all the directions. Then, we conjecture that, when the MA is a drone, the 3D antenna pattern is highly irregular and it can be sketched as a nibbled apple (Fig. 5) . Therefore, when such an antenna shape is projected on the ground, holes and bubbles can be found. We speculate that the altitude is the main cause of the pattern irregularity. So, we conjecture that when the two antennas are both on the ground (rover as MA) in VV configuration, the gain is the same in almost all the directions. A 1 A 2 t O (a) xz-plane. O A 1 t h A 1 A 2 A 2 (b) yz-plane. In our experiments, we wish to characterize the 2D antenna pattern observing the range of values of its radius. The MA starts at Home in (0, 0) at different altitudes h = {0, 10, 20} m. As explained in Sec. 4, the MA traverses the deployment area with n segments that aim to cross the receiving shape of the GD. Moving along each random segment, the MA continuously broadcasts its current (x, y) position, and the GD registers the first and the last heard endpoints sent by the MA. Since we know in advance the Home position of the GD, we can compute the actual 2D radius for each detected endpoint. Note that we observe the radius on the ground. It is important to recall that the beacons are sent at regular intervals of time, and so the observed radii have an intrinsic error of at most I w . In this paper, we fix I w to 0.40 m since we have experimentally observed this value, which clearly depends on the speed of the MA. From the collected endpoints during the same experiment, we compute the mean µ and the standard deviation σ of the set of observed radii. Then, we apply the goodness-of-fit method in order to assess whether a given distribution is suitable to the built data-set 2 . We repeat the experiments for the two antenna configurations (VV and VH) and for different altitudes. We start reporting in Tab. 2 the results of the first experiment with the rover (i.e., h = 0 m) and VV configuration. According to DecaWave's datasheet (solid line in Fig. 4(a) ), we expect an almost uniform radius in the experiments, at least when the two antennas are at the same height. We observed 38 different endpoints, with mean µ = 97.10 m and σ = 39.74 m, and also with min = 32.14 m and max = 162.40 m. According to the Pearson χ 2 -test, at h = 0 m, the radii of the VV configuration have a uniform distribution. As we will see, this is the only configuration with uniform distribution of the radii. Therefore, we agree with DecaWave that this configuration is somehow special. However, the radius cannot be considered really constant. Finally, in Tab. 4 we summarize the statistic distributions that fit the observed experimental radii. For each distribution, i.e., Uniform (U ) and Normal (N ), we give the observed µ and σ, and the likelihood. Except for the rover in VV, all the experiments show that the radius most likely follows a normal distribution, but with a large σ. It is worthy to note that increasing h, the mean of the radii decreases. The mean decreases faster with VV while with VH it remains quite stable (see Tab. 4) . The values of the radii are generally more concentrate with VH than VV. We conclude that, oppositely to our conjecture, VH seems better than VV and the radii obtained with a drone seem more concentrated than those obtained with a rover. Marginally, let us point out that organizing a localization mission is easier with a drone than with a rover because the drone is faster and less attention has to be paid to the terrain. Although the results are different from what we expected, we continue our investigation in localization algorithms accuracy. Thus, we use the results reported in Tab. 4 to generate a large synthetic set of endpoints that fit the estimated parameters of the radii distributions for testing the different algorithms surveyed in Sec. 3 . From now on, we refer to the radius reported in Tab. 4 as the observed radius r = µ, while to the DecaWave declared radius as the manufacturer radius r = r 0 . In this section, we compare all the RF localization algorithms using first the set of synthetic endpoints, and then the set of real endpoints collected during the experiments. Our goal is to analyze the localization error and the percentage of unsuccessful localizations of Drf, Xiao, Lee, and DrfE. For each triple, we invoke the four algorithms using either the observed radius r = µ used to generate the endpoints or the manufacturer radius r = r 0 . In the former case, we test the performance of algorithms when they receive in input the actual radius, but still, the endpoints can be affected by the antenna irregularity (i.e., σ). In the latter case, we test the performance of algorithms when they receive in input a completely different radius from the actual one. Reinterpreting the constraints to improve the accuracy given in [20] , the three selected endpoints, i.e., B 1 , B 2 , and B 3 we use for localizing the GD should satisfy two constraints: the minimum distance r min = 60 m and the minimum angle α min = 20 deg between them. The constraint r min means that the distances d(B 1 , B 2 ), d(B 2 , B 3 ), and d(B 3 , B 1 ), must be at least as long as r min . The α min constraint means that the three angles α 1 = ∠B 3 B 1 B 2 , α 2 = ∠B 1 B 2 B 3 , and α 3 = ∠B 2 B 3 B 1 , must be at least as large as α min . From a geometrical point of view, these two constraints guarantee that the three selected endpoints are sufficiently apart each other, thus avoiding the construction of degenerated triangles. Therefore, in the experiments, we discard any triple of endpoints that does not satisfy r min = 60 m and α min = 20 deg. We repeat the endpoint extraction until we find three suitable endpoints. We compare the RF algorithms under two metrics; the localization error, defined as the Euclidean distance between the actual GD's position and the estimated one outputted by the algorithms, and the percentage of unlocalized. Concerning the first metric, we report the localization error resumed into a boxplot that highlights the median (horizontal line), the average value (solid circle), and the data between the first Q 1 and the third quartile Q 3 (box). Additionally, the extremes of the whiskers represent the Q 1 − 1.5 IQR and Q 3 + 1.5 IQR, respectively, where the interquartile range (IQR) is defined as IQR = Q 3 − Q 1 . Lastly, about the second metric, an unsuccessful localization is an application of the algorithm which does not return any constrained area or in general any geometrical intersection where the GD can reside, i.e., the GD remains unlocalized. This mainly happens for the RF radius-based algorithms when the radius is under-estimated. In this section, we evaluate the performance of the RF algorithms. We start considering a synthetic set of endpoints with an average radius equal to the observed radius µ, but very small standard deviation, emulating an ideal model. This experiment is to support the observation that a high accuracy is possible when the antenna is almost isotropic. Moreover, we discuss the performance of the RF algorithms on the synthetic set of endpoints generated according to the observed distributions in Tab. 4. These experiments, as those that use the manufacturer radius, show poor accuracy. In all the experiments, the impact of using a rover or a drone is considered. Finally, we report the comparison between the performance of Drf and DrfE. Under the Ideal Model. Let us start considering the nearly ideal model in Fig. 6 in which the endpoints are generated with the observed radius µ given in Tab. 4 for the VV configuration, but selecting σ equal to 1. We evaluate the algorithms simulating an almost omnidirectional antenna. Since the dispersion is low, the radius can be considered almost constant. As expected, all the radius-based algorithms perform well when they use the observed radius r = µ, which is the same radius used to generate the endpoints. In such a case, the localization error is on the order of a couple of meters or less for all the algorithms 3 . Drf is slightly better than the other algorithms at any altitude, while DrfE is worse than Drf. The number of unlocalized GDs is very small. However, the performance of the radius-based algorithms drastically drops down when the algorithms run using the manufacturer radius r 0 = 60 m, while the endpoints have been generated with the observed radius. The percentage of unsuccessful localizations is extremely large. These results confirm what we said in Sec. 3: to obtain an accurate localization, not only the antenna must be of good quality (i.e., with small σ), but also the observed radius µ must be exactly known by the algorithm. The results show that the error due to the use of the radius r 0 decreases when h increases because decreases the difference between the observed µ and the manufacturer r 0 radii. Alongside, note that since Drf is radius-free, the performance of Drf is not influenced by the radius selection, as shown in Fig. 6(b) . Drf only requires an omnidirectional antenna. Using the Synthetic Endpoints Set. Figs. 7(a), 7(b), 7(e), and 7(f) show the results when both the endpoints and the algorithms use the observed radius in Tab. 4. Figs. 7(c), 7(d), 7(g), and 7(h) instead show the results when the endpoints are generated using the observed radius and the algorithms run with the manufacturer radius. This is what happens in practice whenever the end-user implements the RF radius-based algorithms using the DecaWave datasheet radius on our test-bed. The errors of the algorithms are compared at different altitudes, antenna configurations, and radii. For all the algorithms, the average error is large. The worst error occurs with the VV configuration of the antennas and h = 0 m: in such a scenario, the endpoints follow a uniform distribution. In general, the VH makes an error smaller than the VV probably because the radius that generated the endpoints for VH is less dispersed (i.e., σ is smaller) than that for VV. The three radius-based algorithms, Xiao, Lee, and DrfE, exhibit the same performance. They are inspired by slightly different ideas, but they actually act the same. The Drf algorithm experiences the worst average error, but the error is only slightly more than that of the radius-based algorithms. The whisker of the largest error of Drf is the longest whisker among all the algorithms probably because Drf finds a localization also in extreme cases when other algorithms return an unsuccessful localization. The error in Drf decreases when the altitude increases, moreover the error of the VV configuration is worse than that of the VH one. The localization error is almost the same regardless of the adopted radius (observed or man-ufacturer). As witnessed by comparing the whiskers of the boxplots in Figs. 7(a) and 7(c) (resp., by Figs. 7(b) and 7(d)), the localization error of the radius-based algorithms, when they use the manufacturer radius r 0 , is slightly worse than when they use the observed radius µ. Instead, the knowledge of µ reduces percentage of unlocalized GDs as illustrated in Figs. 7(e) and 7(g) for VV. The improvement in Figs. 7(f) and 7(h) is weaker for VH than for VV because for VH the difference between the observed radii µ = {63.58, 66.34, 57.60} m and r 0 = 60 m is smaller than VV. In conclusion, the average localization error for VV and VH is 50 m and 30 m, respectively, regardless of if the algorithm knows the true radius used to generate the endpoints or not. The knowledge of the radius used to generate the endpoints by the algorithm only matters when the radius dispersion is small. The take-away lesson here is that to apply a RF radius-based algorithm the antenna must be omnidirectional and its radius must be known by the algorithm. Between Drf and DrfE. In Fig. 8 , we compare the performance of Drf, DrfE µ (DrfE with radius µ), and DrfE r 0 (DrfE with radius r 0 ). In general, DrfE µ performs better than DrfE r 0 , but DrfE µ has always an error much greater than the error of the ideal model (see Fig. 6 ). Using Real Endpoints. In Fig. 9 , we show the results using the real endpoints collected during our test-bed. For the radius-based algorithms, in VV, the results of the localization error seem to follow the trend already seen on the synthetic generated set. In general, VV has a larger error compared to that of VH. In VH, the results are slightly better than that obtained on the synthetic generated set, although the number of valid triples is small. Indeed, the average error at h = 20 m is about 15 m although σ is greater than 20 m when the radius µ is used. The average error increases to 20 m when the radius r 0 is used. This can be explained with the fact that there is a much stronger correlation between the endpoints that are not fully captured by the two constraints r min and α min that we imposed for the selection of the synthetic endpoints. Finally, the error of Drf is worse with real endpoints than with synthetic endpoints, especially for the VV configuration. So far, we learned the performance of all the RF algorithms strongly relies on the radiation antenna pattern. The simplest way to discover the radiation antenna pattern is to measure for each direction up to which distance the MA and the GD are one in the range of the other. So, in the next section, we significantly improve the localization accuracy exploiting the capability of the UWB antennas used in our test-bed of taking distance measurements. Even though there are bubbles and holes in the antenna pattern, it is always possible to discover them if the distance from the GD and the MA is taken (see Fig. 10) . Figure 10 : The two radii measure by the GD when the antenna pattern is irregular. Our interest in RF algorithms lay in the fact that they are simple to implement, do not require specialized hardware, and are scalable with respect to the number of GDs. Also, they are immune to problems that come from the measurement of the 3D distance. Indeed, distance measurements are affected by several errors that depend on the adopted technology and GPS. Technologies like WiFi or Bluetooth are much less accurate than UWB and may have measurement errors of the order of tens of meters, whereas GPS and barometer inaccuracies together with bad weather conditions can seriously impact the drone's position. Such combined 3D slant errors are then reflected on the ground, leading to 2D ground errors. Although range measurements come with their troubles, given the results of the previous section, we decided to include distance measurements in our algorithms. Since in our test-bed both the MA and GD are equipped with UWB antennas that are able to take distance measurements, we do not need to heavily modify our test-bed. In the algorithm variants that we are going to propose, the actual measured distance between MA and GD is used to run the algorithms instead of using the observed or manufacturer radius. This adaption makes the RF algorithms actually RB algorithms, but we maintain the original algorithmic rules (e.g., intersection of annuli or circumferences). It is worth noting that we can apply modifications only to the RF algorithms that actually make use of the radius in their localization rules, and hence only for the radius-based ones, i.e., Xiao, Lee, and DrfE. Accordingly, the simplest radius-free algorithm Drf cannot be adapted to measurements. Range-based version of Xiao. Fig. 11(a) shows how the Xiao algorithm is modified. When the GD hears for the first time the beacon in A 1 , the GD measures the distance r 1 = d(A 1 , O) between its position O and A 1 . Whenever the MA is inside the receiving area of the GD, the GD still takes distance measurements neglecting the intermediate measurements. When the last beacon A 2 is heard, the GD saves the last distance r 2 = d(A 2 , O) between its position O and A 2 . As in the original version of Xiao, the GD computes the other two points A 0 and A 3 knowing the line that interconnects A 1 and A 2 and the value of I w . Then, the algorithm proceeds as before, except that it draws two circumferences of radius r 1 = r 1 + Iw 2 centered in A 0 and A 1 , and two circumferences of radius r 2 = r 2 + Iw 2 centered in A 2 and A 3 . That is, the predefined observed or manufacturer radii are substituted by the distances from the endpoints and the GD. Note that the radius r 1 and r 2 are used instead of r 1 = d(A 1 , O) and r 2 = d(A 2 , O) to avoid that O falls outside the intersection area in case of measurement error that underestimated the distances (see Fig. 11(a) ). Range-based version of Lee. As seen for Xiao, also for Lee, the two distances r 1 and r 2 between the endpoints and the GD are ranged. The algorithm proceeds by drawing two annuli centered at A 1 and A 2 , with outer radius equal to r 1 = r 1 + Iw 2 and r 2 = r 2 + Iw 2 , and inner radius equal to r 1 − I w and r 2 − I w , respectively. The main difference with the previous version is that the radii are replaced by the distances between the GD and the endpoints. As in Xiao, we use the radii r 1 = r 1 + Iw 2 and r 2 = r 2 + Iw 2 instead of r 1 or r 2 to limit the risk that, due to measurement inaccuracy, O falls outside the intersection area. The width I w of the annuli is preserved. Range-based version of DrfE. We replace r with r 1 = r 1 = d(A 1 , O) and r 2 = r 2 = d(A 2 , O). The intersection of the two circles of radius r 1 and r 2 centered, respectively, at A 1 and A 2 , returns P 1 which coincides with O (assuming no measurement errors). To repeat the construction of the RF DrfE, the points P 3 and P 2 are drawn in a way similarly to P 1 . Precisely, P 3 is at the intersection between a circumference of radius r 1 centered in A 0 and a circumference of radius r 2 centered in A 2 . P 2 is at the intersection between a circumference of radius r 1 centered in A 1 and a circumference of radius r 2 centered in A 3 . As a result, differently from the original version where there were three isosceles triangles lying on the same line passing through A 0 and A 3 , here there are three scalene triangles, i.e., (A 1 A 2 P 1 ), (A 1 A 3 P 2 ), and (A 0 A 2 P 3 ). Eventually, the centroid resulting from the vertices P 1 , P 2 , and P 3 is selected as the estimation point, as shown in Fig. 11(c) . In this section, we argue concerning the localization error that can be obtained once the original RF versions of the algorithms have been adapted to be actually RB. We focus on Xiao, but a very similar analysis applies to Lee. Some words will be finally spent for DrfE. Without loss of generality, we assume that the MA moves along a straight line along the x-axis (see Fig. 11(a) ). Let O = (x O , y O ) be the actual GD's location with respect to Cartesian coordinate system with origin in A 0 = (0, 0), and let P = (x P , y P ) be the estimated GD's location by the algorithm. We fix A 1 and A 2 so as r 1 = d(A 1 , O) ≤ d(A 2 , O) = r 2 and let A 1 = (I w , 0) and A 2 = (kI w , 0), where k is an integer number that represents the number of times the MA has sent the beacons from A 1 to A 2 . Finally, let A 3 = ((k + 1)I w , 0). The RB Xiao relies on two different radii, i.e., r 1 applied to A 0 and A 1 , and r 2 applied to A 2 and A 3 , for constructing four circumferences, i.e., (a) We also denote as L 1 the lune 4 delimited by Eqs. (a)-(b), and as L 2 the lune delimited by Eqs. (c)-(d), also in accordance with the original Xiao algorithm. Note that r 1 and r 2 are affected by the measurement errors [20] and for this reason we do not directly conclude that the estimated position P is at the intersection of Eqs. (b)-(c). Moreover, the quantity kI w = d(A 1 , A 2 ) is influenced by the MA's speed, and hence it cannot be considered exact as well. Therefore, we prefer to select P inside the intersection among L 1 and L 2 . The correctness of the RB Xiao algorithm is completely different from that of the original Xiao. Although our implementation only memorizes the first and the last measured radius, i.e., r 1 and r 2 , the RB Xiao algorithm performs measuring, at each i th beacon A i = (iI w , 0), the current distance r 2 (i) = d(A i , O). Therefore, for each intermediate beacon A i and corresponding measurement r 2 (i), with 1 ≤ i ≤ k, RB Xiao knows that O ∈ (L 1 ∩ L 2 (i)), i.e., where L 2 (i) is the lune created by the two circumferences of radius r 2 (i) centered in A i and A i+1 , respectively. Hence, although we do not implement this feature in our algorithm, after each measurement r 2 (i) RB Xiao could stop. As we will see, the best moment to stop would be when r 2 (i) is minimum. This is the main reason that makes RB Xiao robust to hole and bubbles: whenever it stops, the intersection area is limited. However, a discussion about the intersection of lunes while A i varies along the x-axis is needed to complete the error analysis. Assuming an omnidirectional antenna pattern, as MA moves along the x-axis, it crosses the GD's receiving area disk. The distances d(A i , O) decrease until MA reaches the closest position to O in A k * = (k * I w , 0) (precisely, x O ≤ k * I w < x O + I w ). Then, d(A k * , O) ≈ y O . After A k * , the distances d(A i , O) start to increase again up to A 3 = ((k + 1)I w , 0), where the MA is no longer reachable from the GD, and whose last measured distance taken from A 2 = (kI w , 0) is d(A 2 , O) = r 2 . The observed distances while MA moves in A i , with i = 1, . . . , k * , . . . , k, form a unimodal sequence R with minimum in k * I w . As long as the radii in R decrease, i.e., x A i < x A k * , the lunes L 1 and L 2 (i) have the same curvature 5 (see Fig. 12 (a)), while when the radii in R increase, i.e., x A i > x A k * , L 1 and L 2 (i) have opposite curvature (see Fig. 12(c) ). In A k * , the tangent to the circumferences of the lune L 2 (k * ) is parallel to the x-axis (see Fig. 12(b) ). In a general scenario in presence of holes and bubbles, the MA stops at A 2 in one of the three cases depicted in Fig. 12 : (i) the curvatures of A 1 and A 2 are concordant, i.e., 1 < k < k * or k * < 1 < k; (ii) the tangent at A 2 is parallel to x-axis, i.e., 1 < k = k * ; (iii) the curvature A 1 and A 2 are discordant, i.e., 1 < k * < k. To evaluate the size of the intersection among L 1 and L 2 in these three cases, let observe that they cross each other making at most four intersections, i.e., A is the intersection among Eqs. Note that A is stable when A 2 moves because it is at the intersection of the two measurements of O. If there were no errors, O ≡ A. It is worth noting that y B = y D and x B − x D = I w = d(D, B) regardless of k. Now we are in the position of clarifying the three previous cases. Recalling that A 1 = (I w , 0), depending on which is the last heard beacon A 2 = (kI w , 0), it may occurs: Case (i): The lunes have the same curvature, as illustrated in Fig. 12(a) . The area where P can be selected has width I w and height y C − y A . In particular, if k is very small, r 2 → r 1 , and thus y C → r 1 . If y A → 0, the error y C − y A ≈ r 1 . As k approaches k * , y C − y A quickly decreases. A similar error occurs when k * < 1 < k. Case (ii): By intersecting the coordinates x C = x A , and all the four points A, B, C, and D are very close. The area where P can be selected is very small. Case (iii): Observe that x C can be re-written as Thus, x C < x A + I w for any k. Due to this and the fact that the curvatures of L 1 and L 2 are opposite, their intersection area is quite limited. Unfortunately, we could not find a simple formula for describing |y A − y C | here, but it can be computed by approximating the curves with their tangent in A. Hence, the intersection of the two lunes can be inscribed in a rectangle with two sides parallel to the x-axis of length I w and two vertical sides whose length depends on the angular coefficient of the tangents in A. We can only add that their lengths decreases below 2I w when arctan y A x A > 1. So, the area where P can be selected only depends on I w . When arctan y A x A ≤ 1, the trivial bound is y A , which cannot be very large however. So, the size of the area where P can be selected depends on I w and y A . When r 1 ≤ x A < r 1 + I w , C is undefined (see Fig. 12 (d)), Hence, the vertical side of the rectangle that contain P has length at most y A ≤ » r 2 1 − (r 1 − I w ) 2 . This leads to the same error described in Xiao when the lunes have only 3 intersection points [10] . In presence of irregularities, RB Xiao, as in our implementation, stops at the last heard beacon. The error can be large only when A 1 and A 2 fall on the same side with respect to x O , and thus the associated lunes have concordant curvatures. In order to limit the occurrences of Case (i), in our implementation we have forced B 1 , B 2 , and B 3 , i.e., the three selected endpoints, to respect the r min and α min constraints, putting them sufficiently apart, so as the two lunes will have opposite curvature. Moreover, in Cases (ii) and (iii) the error is quite limited and only depends on I w . Without irregularities, RB Xiao always falls in Cases (ii) or (iii). The same happens for the original Xiao which stops when r 1 = r 2 and thus the curvatures are opposite. To conclude, the above analysis also applies for Lee. In Lee, the GD belongs to the intersection of two annuli of different radii but with the same width I w , and the error depends on the curvature of the lunes created by the intersection of annuli. As regard to DrfE, P 1 , P 2 , and P 3 are the intersections of pair of circumferences, and here the lunes coincide with portions of circumferences. Differently from Xiao and Lee, the position uncertainty depends only on the measurement errors and on I w , and it is bounded according to [20] . In this section, we evaluate the performance of the RB variants, and we compare these results with those of the RF original implementation. In reality, in our previous experiments, since the goal was to investigate the performance of RF algorithms, we did not take any distance measurement even though our UWB antennas were able to range measurements with good accuracy. Indeed, we only knew in advance the GD's Home position (0, 0) and the MA's position with respect to Home. Instead, the new RB variants rely on the 3D slant distances between the MA and the GD, which are then converted in 2D ground distances. However, it is important to recall that, due to the pandemic COVID-19, it is forbidden to take new distance measurements in the open field. According to those restrictions and based on our previous research experience, we decided to estimate the 2D ground distances (see Fig. 3(a) ) between the MA and the GD just calculating the Euclidean distance from the endpoints to the Home in (0, 0) plus a random error (overestimation or underestimation) computed as proposed in [20] 6 . In other words, we perturb any Euclidean distance r adding the error E r : where h is the drone's altitude, Range-free vs Range-based. In Tab. 5 we report the localization accuracy of Xiao, Lee, and DrfE showing the comparison between the original RF and adapted RB versions of them. Tab. 5 also reports the number of times (in %) that an algorithm does not localize the GD. The experimental results take into account the constraints r min = 60 m and α min = 20 deg, and only VV. In particular, for the original RF versions we report the average error for both the radii, i.e., the observed radius r = µ and the manufacturer radius r = r 0 . For the adapted RB versions we report the average error for the measured radius, denoted as r = d(A i , O), where A i is an endpoint. It is clear that the average error, using measurements, is one order of magnitude smaller. We have seen that the knowledge of the exact distance significantly improves the accuracy and practically clear the number of unlocalized devices. This also enforces our original statement that the knowledge of the radiation pattern is fundamental for the success of the localization. Bubbles and holes in the antenna radiation pattern are no longer a problem because we range the effective distances between the endpoints and the GD. So to avoid measurements, any manufacturer should give as much information as possible on the antenna radiation pattern as possible. Range-based Comparison. Here, we present performance-wise the RB versions of the Xiao, Lee, and DrfE algorithms. As previously said, Drf is not present because it is not radius-based. For this simulation evaluation, we consider different cases varying the constraints of minimum distance r min = {0, 60} m and minimum angle α min = {20, 40} deg, as explained in Sec. 6. In Fig. 13 and Fig. 14 , we evaluate the performance of the RB algorithms. In particular, in constraint is kept to α min = 40 deg. Overall, we can see that DrfE works better than the other two algorithms with an average error smaller across all the tests, and that Xiao works better than Lee with those settings. Also, a better localization accuracy can be obtained for the experiments carried on the ground at h = 0 m, exception made for Fig. 13 (c) in which, oddly, the error is smaller at h = 20 m. More specifically, in both Fig. 13 and Fig. 14 is also evident that VH benefits slightly more from the r min constraint of 60 m, while it is the opposite for VV which behaves better showing smaller error with no r min constraint. Finally, there is very little improvement while testing with larger α min . It is extremely important to note that using measurements, all the selected endpoints are suitable for localizing the GD in O. This means that the number of unlocalized GDs is zero, but also this leads to the growth of the outliers number. This can be seen by the presence of long whiskers and a considerable difference between the average (i.e., solid circle) and median (i.e., horizontal line) values. However, even though such whiskers are pretty long, they are really short with respect to the ones seen in the previous experiments in Sec. 6, Fig. 9 . In this paper, we compared the performance of four RF algorithms based on HnH on a real test-bed using the DecaWave DWM1001 UWB antennas as MA and GDs. We implemented and simulated the algorithms on a large data-set of endpoints collected in the field. We analyzed the antenna radiation pattern of the GD at different altitudes and configurations, i.e., VV and VH. We have shown how such algorithms actually perform assuming (i) first the datasheet radius of the antenna equal to that released by the manufacturer, (ii) then the experimental observed radius, and (iii) finally the actual radius obtained via distance measurements. The manufacturer datasheet radius poorly performs because usually it does not characterize the antenna radiation pattern very well. The observed radius can help only if it is almost constant in all the directions. When the antenna is irregular, only the knowledge of the distances between the MA and the GD can alleviate the localization error. We conclude that the RF algorithms are simple and elegant, but they can be very inaccurate and can leave a high percentage of unlocalized GDs if the antenna is not omnidirectional and measurements are not allowed. However, the exact knowledge of the irregular antenna can make accurate the RF algorithms. A survey on mobile anchor node assisted localization in wireless sensor networks Range-free localization algorithms with mobile anchors at different altitudes: A comparative study An rssi based dv-hop algorithm for wireless sensor networks Amorphous localization algorithm based on bp artificial neural network, in: International Conference on Frontiers of Internet of Things Weighted centroid localization algorithm: theoretical analysis and distributed implementation Improvement on APIT localization algorithms for wireless sensor networks Path planning of mobile landmarks for localization in wireless sensor networks Static path planning for mobile beacons to localize sensor networks Localization with a mobile anchor node based on trilateration in wireless sensor networks Distributed localization using a moving beacon in wireless sensor networks Localization with a mobile beacon based on geometric constraints in wireless sensor networks Range-Free Localization Algorithm Using a Customary Drone: Towards a Realistic Scenario Ground localization with a drone and uwb antennas: Experiments on the field Impact of 3d uwb antenna radiation pattern on air-to-ground drone connectivity Ultra-wideband air-to-ground propagation channel characterization in an open area Impact of 3d antenna radiation patterns on tdoa-based wireless localization of uavs Just the facts Datasheet for the DWM1001C On the accuracy of localizing terrestrial objects using drones Range based Algorithms for Precise Localization of Terrestrial Objects using a Drone