Skip to main content

Acoustic positioning in a reflective environment: going beyond point-by-point algorithms



Acoustic positioning telemetry is nowadays widely used in behavioural ecology of aquatic animals. Data on the animal’s geographical location and its changes through time are used to study for instance movement patterns, habitat use and migration. The acoustic signals are detected by stand-alone receivers, allowing to collect huge amounts of data over long periods of time. However, large volumes of data might contain large errors. The traditional Time Difference of Arrival (TDOA) method used to calculate underwater positions, is a point-by-point approach: every position is calculated independently of all other positions. This method assumes that the acoustic transmissions follow a linear path. In many environments, this assumption is violated, for instance by reflections of the acoustic signal against hard surfaces, such as rock formations and concrete walls, or by diffractions around obstacles. Hence, acoustic positioning datasets usually require additional filtering. Unfortunately, the performance of the available filtering techniques is often unclear or ambiguous, especially when reflections occur. An alternative to the point-by-point approach, is a track-oriented approach, as used by YAPS (Yet Another Positioning System). This novel algorithm uses the information that is present in previous and subsequent positions, by combining a model of fish behaviour with Time of Arrival (TOA) of the signals on the receivers. In this study, we investigated the performance of two filtering techniques applied to positions provided by the Vemco Positioning System (VPS) in a highly reflective environment. We compared the unfiltered VPS positions with a standard filtering technique, making use of the Horizontal Positioning Error (HPE), and developed a new filter based on receiver cluster classification. Finally, we recalculated the positions with YAPS and compared the performance of this system to the two filtering techniques.


The performance of the VPS system was strongly impeded by the multiple reflections occurring in this study area, but lowering the power output of transmitters can slightly attenuate this issue. None of the filtering techniques was able to compensate for reflections and to improve the positioning accuracy significantly. Only the YAPS algorithm could cope with the high level of reflectivity in this study site.


Point-by-point algorithms might fail to provide accurate fine-scale tracks in a highly reflective acoustic environment. As this study has shown, the YAPS algorithm can provide a successful alternative, even in these difficult conditions.


Since the late 1950s, underwater positioning has added important information to the traditional sampling and fishing techniques: the movement of aquatic animals could finally be (indirectly) observed beneath the water surface [1, 2]. Both radio and acoustic telemetry have since been developed further and are nowadays widely used in behavioural ecology of aquatic animals. In acoustic telemetry, animal-implanted transmitters periodically emit acoustic signals that are heard and decoded by receivers. By installing receivers at key locations, aquatic animals can be tracked to investigate migration routes, barrier passage, delay at structures, entrainment at water intakes [3] and movement patterns along rivers during migration [4]. Single receiver detections yield presence/absence data, but do not allow to investigate fine-scale movement, such as for instance swimming behaviour related to hydrodynamics near structures [5, 6] and fine-scale habitat use [7, 8]. In this case, a dense network of receivers with overlapping ranges is used to calculate 2D (or 3D) positions, resulting in movement tracks. The accuracy required on these positions depends on the research questions. When fish are moving hundreds of kilometres or when large-scale migrations are studied, accuracy of a km or so is adequate. In contrast, high accuracies are needed for instance in ecohydraulic studies, where the interaction between animals and hydraulics is studied at metre to sub-metre scale.

One of the most widely used acoustic positioning systems for fine-scale positioning is the Vemco Positioning System (VPS; Halifax, NS, Canada). Vemco provides acoustic transmitters or tags, together with an autonomous receiver system that collects the transmitted signals of animals present within the system. They also provide a positioning service based on the Time Difference of Arrival (TDOA) algorithm [9], a hyperbolic positioning system. The difference in detection time between 2 receivers is converted into a range difference, by use of sound speed in water. This gives 3 equations for each set of 3 receivers, that can be solved to find the position and time of the transmitter and its transmission independently of all other transmissions. Vemco uses a weighted average of positions calculated from each available triangle of receivers. The weights are determined by use of an error sensitivity measure: the Horizontal Position Error (HPE). HPE is a dimensionless measure based on the sensitivity of the calculated position to injected errors in range differences and transmitter depth [9].

The accuracy of TDOA positioning is influenced by 3 main types of errors [9]: uncertainty in the receiver positions, uncertainty in the transmitter depth, and errors on range difference. In this study, the receivers were attached at fixed structures and walls, minimising receiver movement. The canal depth (about 5 m) is small compared to the distance between receivers (80 m on average), therefore depth error is also minimal. Range difference error is primarily determined by error on the detection time, which depends on the receiver’s time resolution, e.g., when a receiver has a time resolution of 1 ms, an uncertainty of about 1.4 m (with 1435 m/s sound speed in water) can be expected. Another source of error on range difference is non-ideal sound propagation: TDOA positioning assumes that the signal travels straight from transmitter to receiver. When this assumption is not fulfilled, errors are introduced. Any time a signal is reflected or diffracted, its actual detection time does not match the theoretical detection time and as a result, the calculated distance between transmitter and receiver will be wrong. Reflections occur in many environments: signals can for instance bounce off the ocean floor, the water surface and rock formations [10]. Particularly, human-made structures in concrete such as canal walls, dams and sluices are very prone to reflecting acoustic signals. Diffractions occur when a signal is deflected around an object, such as corners, pillars and other structures in the water column. In addition, a low signal-to-noise ratio might also contribute to positioning error [11, 12].

Manufacturers usually provide a filtering measure, such as the dilution of precision and reliability index of Lotek Wireless Inc. [13], and the HPE and more recently root mean square error (RMSE) in VPS. Depending on the research question, these filtering techniques can result in sufficient data quality for the study (e.g., [7, 8, 14,15,16]). In highly reflective environments, however, such filters might be affected and not work as expected.

A new development in the fine-scale acoustic positioning domain is YAPS (Yet Another Positioning Solver; [17]). While traditional positioning methods depart from TDOA-data, YAPS uses the time of arrival (TOA) data directly to calculate the transmitter position. A state–space model, describing acoustic signal transmission and fish behaviour, is fitted to the TOA data, and the error-minimising track is found by a maximum likelihood analysis. The algorithm simultaneously estimates transmission time, x and y coordinates and speed of sound. If available, calculated sound speed data based on temperature measurements can be incorporated in the model. Contrastingly to the TDOA algorithm, YAPS can also use detections picked up by less than three receivers and optimises as such the use of available information. Moreover, the movement model constrains the track to biologically plausible positions, hence avoiding large errors.

This paper evaluates the performance of a TDOA-based system (here the 69-kHz VPS) in a highly reflective case study in the Albert Canal in Belgium, comprising concrete canal walls (causing reflection) and a corner (causing deflection) protruding in the receiver array. It compares different filtering techniques on the VPS data with the novel YAPS algorithm, which is directly based on TOA. The outcome of this study can probably be extended to other TDOA-based systems such as Lotek (Lotek Wireless Inc., Newmarket, Ontario, Canada) and Thelma Biotel (Trondheim, Norway).


Verification of system performance

The positioning efficiency of the fixed transmitters was 82% on average. The lower-power V7 reference transmitter (R4) did not deviate much from this average, and performed with 79% positioning efficiency even better than one of the high-power V16 synchronisation transmitters (S12, 76%). The measured noise was best related to ship passage (Fig. 1; R2 = 55%, p = 1e-28), and not to discharge of the hydropower turbines. The average noise level was 257 mV, well below the level expected to cause issues for detection efficiency (< 300 mV; [18]). Consistent with this expectation, there was no significant relationship between noise and positioning efficiency.

Fig. 1
figure 1

Time series of average daily noise (blue line) and average daily ship passage (red dotted line). The horizontal dotted red line indicates the noise level for good detection efficiencies, i.e. 300 mV [18]

The accuracy of positioning of fixed transmitters varied among transmitters and over time (Figs. 2 and 3), with errors up to 255 m (S16). 75% of the errors were below 2.5 m and 8% above 5 m. Especially the transmitters located next to a wall, showed deviations mainly inwards the array (Fig. 3). Note that the guiding structures to which some receivers and fixed transmitters are attached, are only superficial structures and no walls. The errors were not statistically related to any environmental variable (precipitation, temperature, discharge, ship passage).

Fig. 2
figure 2

VPS positions calculated for the fixed transmitters S17 (purple), S15 (blue), S16 (green), S13 (orange) and S7 (red) during the entire study period, illustrating the variation in errors among transmitters. In UTM coordinates to allow background plotting from the ArcGIS Map server

Fig. 3
figure 3

3D-timeseries of the daily average VPS position of fixed transmitters: synchronisation transmitters (green) and reference transmitters (red). The study area is outlined in the xy plane. The calculated positions are in the z-direction. Perfect positions would result in a straight vertical line; any deviations from the vertical line indicate positioning errors

To compare the influence of power output, we compared the error on the V7 reference transmitter (R4) to the error on V16 fixed transmitters. The error on R4 (power output 136 dB) was significantly lower than the error on all V16 fixed transmitters (power output 150–62 dB), according to a Mann–Whitney test (p = 0.00).

Comparison of VPS, filtering techniques and YAPS

Fixed transmitter positioning

The 3 filtering methods retained similar numbers of positions for the fixed transmitters (76 to 79%; Table 1). While the HPE filter decreased the on-land positions with 9%, the receiver cluster filters even slightly increased this percentage. Although the latter filters did remove some positions on land, they removed a higher number of positions in the water (resulting in a slightly higher percentage of positions on land). YAPS positioning obtained 30% more positions than VPS, and very few of these positions were on land. All filtering methods succeeded in removing some erroneous positions (in which the good performance filter was most successful), but none of the methods achieved the accuracy of the YAPS positions.

Table 1 Performance measures on fixed transmitter positioning for the different filtering techniques (VPS-NF, no filtering; HPE, 75%-quantile HPE as threshold; good p., only positions from good performing receiver clusters; bad p., removing positions from bad performing clusters) and for YAPS positioning

Test track positioning

The HPE filter succeeded in removing some erroneous positions, decreasing the mean error to 3.8 m (Table 2). In general, this filter removed mainly points outside of the receiver array (Figs. 4b and 5b). The good and bad performance filters omitted the largest errors, but barely decreased the mean positioning error. Moreover, the good performance filter retained only half of the VPS positions, therefore losing a lot of information. YAPS calculated almost twice the number of positions, compared to VPS. However, this larger amount of information came with some extra errors: a few YAPS positions ended up on land, and the mean and median error were larger than on the unfiltered VPS positions. Nevertheless, YAPS did succeed in avoiding positions that were completely off track, given the strongly reduced maximum error and the reduced 99%-quantile error. Figures 4e and 5e show that the errors occurred mainly in the entrance of the northern lock chamber and on the parts of the track outside of the array. Both VPS (with or without filtering) and YAPS gave different results for the V13 versus the V7 track (Fig. 4), even though both transmitters were deployed simultaneously.

Table 2 Performance measures on test track positioning for the different filtering techniques (VPS-NF, no filtering; HPE, 75%-quantile HPE as threshold; good p., good performance filter, i.e. only positions from good performing receiver clusters; bad p., bad performance filter, i.e. removing positions from bad performing clusters) and for YAPS positioning
Fig. 4
figure 4

Test track performed on August 4th 2016, resulting from the different methods: VPS (a), HPE filter (b), good performance filter (c), bad performance filter (d) and YAPS (e). The gray line represents the ground truth, measured by a high-precision GPS. The green line connects positions calculated for the V13 test transmitter, the blue dashed lined connects positions (with smaller dots) for the V7 test transmitter. The dots are shaded according to their accuracy: darker shades green or blue indicate larger deviations from the GPS position. The gray polygon marks the contour of the receiver array

Fig. 5
figure 5

Test track performed on August 5th 2016, resulting from the different methods: VPS (a), HPE filter (b), good performance filter (c), bad performance filter (d) and YAPS (e). The gray line represents the ground truth, measured by a high-precision GPS. The green line connects positions calculated for the V13 test transmitter. The dots are shaded according to their accuracy: darker shades indicate larger deviations from the GPS position. The gray polygon marks the contour of the receiver array

Fish positioning

All 3 filtering methods reduced the number of impossible fish positions on land, as well as the percentage of velocities that exceeded the sustained and burst swimming velocity (Table 3). However, especially the good performance filter led to huge data loss, retaining only 20 to 30% of the positions. In contrast, YAPS calculated 2 to 4 times more positions than VPS, hence significantly increasing the amount of information. Moreover, YAPS calculated the fewest positions on land and the lowest percentage of velocities exceeding sustained/burst velocity.

Table 3 Performance measures on eel and salmon positioning for the different filtering techniques

A visual comparison of all the methods on 3 fish tracks (Figs. 67 and 8) confirms that the YAPS tracks are biologically the most plausible. Figure 8a shows the difference between YAPS and VPS when the fish is out of array: whereas YAPS continues to estimate a quite plausible track, the VPS track becomes very noisy and calculates positions that are very implausible from a biological point of view. Only the good performance filter (Fig. 8d) is able to filter out these erroneous positions originating from outside the array.

Fig. 6
figure 6

Track of salmon 34435, tagged with a V7 transmitter (rbi 40–80 s). The time series (a) show the X- and Y-coordinates of the VPS track (blue) and YAPS track (green). The other panels show the track in 2D from 13:00 on, resulting from the different methods: VPS (b), HPE filter (c), good performance filter (d), bad performance filter (e) and YAPS (f). The gray polygon marks the contour of the receiver array

Fig. 7
figure 7

Track of eel 100, tagged with a V13 transmitter (rbi 17–33 s). The time series (a) show the X- and Y-coordinates of the VPS track (blue) and YAPS track (green). The other panels show the track in 2D resulting from the different methods: VPS (b), HPE filter (c), good performance filter (d), bad performance filter (e) and YAPS (f). The gray polygon marks the contour of the receiver array

Fig. 8
figure 8

Track of eel 103, tagged with a V13 transmitter (rbi 17–33 s). The time series (a) show the X- and Y-coordinates of the VPS track (blue) and YAPS track (green). The other panels show the track in 2D until 03:00, resulting from the different methods: VPS (b), HPE filter (c), good performance filter (d), bad performance filter (e) and YAPS (f). The gray polygon marks the contour of the receiver array

For 11 of the 119 tagged fish that reached the VPS array, the YAPS algorithm did not converge in 5 attempts, and hence no track was obtained. These fish had either very few observations (< 30) or were detected only in periods with large burst intervals (Table 4). The large burst intervals were programmed to save battery life for eels in periods when we did not expect them to migrate.

Table 4 Acoustic transmitter (tag) types, burst interval and power output


In this study, we investigated different positioning approaches in a highly reflective environment: two filtering techniques, applied on vendor-supplied VPS positions, and YAPS tracks calculated directly from the raw detection data. As our results showed: YAPS performed well in a situation where VPS (and the associated filters) did not. Before comparing the performance of the different systems, we will discuss the performance of the VPS-system, investigated by use of fixed transmitters.

The vicinity of a navigation lock complex is a challenging environment for acoustic positioning. Ship traffic through the study site amounts to 74 vessels per day on average (except on Sundays, when the navigation locks are not operating). The operation of the locks and the hydropower installation might increase the noise level already produced by the ships. Nevertheless, the measured noise level was in a favourable range, resulting in a good acoustic positioning efficiency of about 80%.

Despite the good positioning efficiency, the positioning accuracy of the VPS system was moderate: 8% of the fixed transmitter positions had 5 to 255 m error. According to Vemco, errors up to 7 m can be expected from VR2W-receivers due to their low time resolution of 1 ms, but higher inaccuracies are probably caused by non-ideal sound propagation. The concrete canal walls surrounding the system can reflect up to 98% of acoustic energy [19]. After receiving a transmission, each receiver sleeps for 260 ms and hence is deaf for reflected signals arriving in this time span [10]. However, when the direct signal is not heard, this protection is absent. Smith et al. (1998) [11] stated that reflections cannot be predicted, because they depend on each position individually. This chaotic behaviour of reflections is apparent when analysing fixed transmitter positions over time (Figs. 2 and 3). Especially the receivers close to the walls are prone to errors, with positions deviating mostly inwards the array (Fig. 3). The main cause of diffraction in this study site is probably the presence of corners within the receiver array (Fig. 9). The path length of a signal travelling around the corner, for instance from transmitter S15 to receiver S7, is augmented with about 30%, causing an error on the range difference between receiver S7 and other detecting receivers. The passing ships are probably another source of reflections and diffractions.

Fig. 9
figure 9

Aerial view of the navigation lock complex and receiver array for 2D-positioning in Kwaadmechelen. The green dots are the receivers, the blue dots are the synchronisation tags (collocated with receivers). The blue triangles are reference tags, of which R4 was only installed towards the end of the study, since April 5th 2017. On that day, S8 was also moved to another position, indicated with S8-2. Background from Google Maps Satellite

The observation that the error on the V7 reference transmitter was significantly lower than on the V16 transmitters, while keeping a good positioning efficiency, is promising. This lower-output transmitter appears to be less prone to reflections than the other fixed transmitters. Since the fish were tagged with similar output transmitters (V7 and V13), their positioning accuracy is probably better than for the V16 transmitters.

We compared the performance of VPS, the three filter methods and YAPS on three sources of data: fixed transmitter positions, test tracks and fish tracks. The fixed transmitter positions allow error calculation, since the real position is known. However, the positioning of V16 transmitters might not be fully representative for positioning of the fish transmitters (V7, V9 and V13), which have a lower power output. Therefore, we used V7 and V13 transmitters in the test tracks. Since the test tracks contain only a small amount of data, we also used the proper fish tracks to compare the different filtering and positioning methods. We used optimal swimming speed and burst speed as biological thresholds to verify positioning quality by means of measured swimming velocities. These can be merely used to check for unlikely and impossible swimming velocities. Although positions with velocities that do not exceed these values are not necessarily correct, positions that do exceed the limits are guaranteed to be wrong, and hence a measure of wrongness (rather than correctness).

Despite successful implementation in other studies [7, 20], we could not find a relation between HPE and the 2DRMS statistic on fixed transmitters in this case study. The reason is that HPE does not take into account the error caused by reflected or diffracted signals. More precisely, reflections do not only cause positioning error, but also error estimation error (personal communication with Frank Smith, Vemco). This can result in positions with high error but low HPE value, and hence inconsistencies in its representation of error sensitivity. In the absence of a more supported HPE threshold, we used the 75%-quantile HPE value as a threshold.

HPE values are high outside the array and small within the array [9]. This is reflected in the ability of the HPE filter to decrease the number of positions situated on land (hence out-of-array). Also, the HPE-filtered test tracks and fish tracks clearly show the filter’s bias towards inside-array positions. At the same time, the filter did not completely remove on-land positions and retained some erroneous positions inside the array. Although the HPE filter improved the accuracy on fixed transmitter positions and test tracks, the filtered fish tracks do not show an improvement in quality: rather they are fragmented and noisy. (Note that the number of unlikely swimming velocities nevertheless decreased.) Hence, the usability of the HPE-filter in this type of study site seems limited.

Both receiver cluster filters slightly improved the accuracy on fixed transmitter positions and test tracks, but removed less positions on land. Although these filters removed a lot of test track positions wrongly (i.e. false negatives), they were not biased towards inside-array positions and hence retained more information outside of the array. However, in general the cluster filtering resulted in a large information loss, especially for the V7 transmitter (Fig. 4c, d). The loss of information and abundance of false negatives indicate the shortcomings of this method: the receiver clusters were classified based on V16 fixed transmitter data, and hence the derived filtering probably only works well on V16 transmitters. V13 transmitters are less likely to be heard by the same groups of receivers, and V7 transmitters even less, due to the lower output. The fish tracks confirmed the unsuitability of these filters, and especially the salmon track (V7) was heavily deformed by both bad and good performance filters.

The positioning accuracy of fixed transmitter was better for YAPS than for any VPS filtering approach. Surprisingly, this was not the case for the test tracks, where the average error on YAPS positions was even larger than on unfiltered VPS positions. The main cause of the larger average error is YAPS’ ability to calculate more positions. Signals coming from the out-of-array zone are detected by fewer receivers. Therefore, VPS can calculate only a few positions, resulting in a very noisy track. YAPS, which does not need three receivers to calculate a positions, retains almost the same frequency of positioning. However, the low number of detecting receivers, combined with a random burst interval (so that the algorithm has to almost interpolate between points with more receivers), results also for YAPS in a lower out-of-array accuracy. And since YAPS calculates more positions, these errors contribute more in the average error than in the case of VPS. In contrast to the VPS track, the YAPS tracks captured better the form of the boat path, especially outside of the array. Since this zone is not the main zone of interest, exact positions are less important here, but it can be interesting to have an idea on how a fish is behaving just before entering the study area. Moreover, this avoids that erroneous positions from out-of-array end up inside the array, disturbing the interpretation of behaviour inside the zone of interest (as observed in VPS-tracks). Due to the presence of guiding structures in the study site, the boat tracks covered a restricted area (around the guiding structures) and are not entirely representative for fish tracks. More test tracks covering the entire receiver array could probably enhance this comparison exercise.

Although the V7 and V13 YAPS tracks are slightly different outside of the array, the difference is by far less pronounced than in the VPS tracks and the filtered tracks. Apparently, YAPS is less sensitive to the power output of the transmitter. This is related to its resilience against reflected signals and its capacity to calculate tracks with little information, which are probably the causes of the difference between V7 and V13 VPS tracks.

The power of YAPS to use all available detection information, is unmistakable in the fish tracks. Especially the salmon tracks contain a multitude more YAPS than VPS positions. These lower-power V7-transmitters are more prone to signal loss than the V16-fixed transmitters and V13-transmitters. Hence, YAPS’ ability to estimate a track from few detections, in contrast to VPS, is emphasised on V7 transmitters. Moreover, visual analysis indicates that the YAPS tracks are the closest to the real fish tracks.

When comparing the fish tracks visually, three features of YAPS stand out. Firstly, its ability to calculate more positions results in more information about behaviour (Fig. 6), and a biologically plausible track. In contrast, the numerous missing points in the VPS track, combined with some erroneous positions from reflections, make it difficult to interpret the track correctly, and none of the filters provide an improvement. Secondly, YAPS can correct for reflected signals, in contrast to VPS (Fig. 7). Note that the eel transmitter suffers more from reflections than the salmon transmitter, due to its higher power output. Thirdly, YAPS is able to capture the behaviour of a fish outside the study area, where most VPS positions are completely off track (Fig. 8). These erroneous VPS positions not only fail to capture the out-of-array behaviour, but also disturb the interpretation of the track inside the array.

The average burst interval of fish transmitters in this study was at least 22.5 s. Smaller burst intervals would cause more signal collisions, especially when many fish are present simultaneously in the receiver array. This is due to the type of signal transmission (PPM or pulse position modulation), which takes 3 to 5 s to transmit [21], and inherently limits the amount of information that can be obtained on a fish track. Recently developed systems now allow using smaller burst intervals (in the order of seconds). Examples are the high residency (HR) system (Vemco) and the code division multiple access (CDMA) system (Lotek), which use signals that take < 10 ms to transmit [21]. In combination with a better temporal receiver resolution, these systems are expected to allow sub-meter accuracy [22]. Hence, it would be useful to repeat this paper’s comparison exercise with these systems.

Despite the promising performance of YAPS, one cannot ignore the extra effort it demands from practitioners. Before running the YAPS algorithm, the raw detections must be synchronised in time, cleaned-up and rearranged. Especially the time synchronisation is an essential, but potentially tedious task. The details of these preprocessing steps are not discussed in this paper, but references to online available code are given in the “Methods” section. In addition, recent developments of the YAPS package have added the possibility to perform the time synchronisation inside the package [23], in an effort to make YAPS positioning accessible to all. Our results suggest that for research questions on detailed fish behaviour (with required meter or submeter precision), company-provided black-box positions and filtering methods might not provide the required precision, where YAPS does. This statement specifically holds for reflective environments as presented here.


Reflective case studies form a challenge for traditional point-by-point positioning algorithms. Additional filtering on these methods is not likely to succeed, given the lack of information to detect which positions originate from reflected or diffracted signals. Indeed, neither the standard HPE filter nor a newly developed filtering method based on receiver cluster classification was able to provide sufficiently reliable fish tracks in this highly reflective study site.

The positioning accuracy of VPS in a reflective study site depends on the power of the transmitters used. Therefore, it is advisable to incorporate some reference transmitters of the fish transmitter type in the study. The resulting dataset will be more representative to monitor fish positioning during the study than a set of V16 transmitters. Also, corners in the receiver array should rather be avoided, since these create non-linear transmission paths (although in some case studies, like the present one, this might not be possible).

Methods that incorporate models of fish behaviour are promising because positions that deviate from the path due to reflections can be intercepted. YAPS proved to be high-performing in reflective environments, conditions with a low signal-to-noise ratio (in this case due to a low-power signal), and even in grasping information about fish behaviour outside of the receiver array. Hence, it seems that this new algorithm manages even less convenient study sites. Despite the necessary effort in the time synchronisation of the dataset, and the possible effort needed to adapt YAPS to certain case studies, we advocate that the strain is more than worth it to obtain scientifically sound results in difficult study sites such as the one presented.


Case study

The Albert Canal is an impounded shipping canal connecting the Meuse River in Liège to the Scheldt Estuary in Antwerp. The canal contains 6 navigation lock complexes to bridge the level difference of 56 m between Liège and Antwerp. We collected information about fish behaviour in a 200 × 150 m area (about 5 m deep) in front of the navigation lock complex of Kwaadmechelen, which embarks about 74 vessels daily (Fig. 9). Adjacent to this navigation lock, a combined hydropower/pumping installation generates energy at high flow and can pump water upstream at low flow.

VPS data collection

We tracked European eels (Anguilla anguilla) in the silver eel phase and Atlantic salmons (Salmo salar) in the smolt phase during 3 deployments, starting, respectively, in November 2015, January 2016 and August 2016. The data of the last deployment were offloaded in June 2017. The mature and large silver eels were tagged with V13 transmitters, while the juvenile salmon smolts required the smaller V7 transmitters. All acoustic transmitters had a random burst interval, transmitting on average each 22.5 (salmon), 25 (eel) or 60 s (salmon) (Table 4).

To collect fish positions, we attached 12 69-kHz VR2W receivers (with time resolution 1 ms) to the guiding structures of the lock complex, on average about 80 m apart (Fig. 9). The configuration of the receivers ensured that every location in the area of interest was covered by at least 3 receivers. Since the receivers of the Vemco system are not cable-connected, synchronisation of the receiver clocks happens by synchronisation transmitters. Additionally, we installed 3 reference transmitters in the receiver array. Both synchronisation and reference transmitters produce signals every 10 min on average (randomly between 540 and 660 s). These data were used to verify the system performance. During placement, we measured the position of synchronisation and reference transmitters with a hand-held Garmin GPS (about 5 m accuracy).

To make sure that the synchronisation signal is not lost during the study, we used synchronisation (and also reference) transmitters of the V16-family, characterised by a high power output (Table 4). In the course of the study (on April 5th 2017), we added a 4th V7 reference transmitter (R4), to also verify positioning performance of a low-power transmitter. Simultaneously, we moved one of the receivers (ST08) about 50 m to the east, to improve the coverage of the receiver array. Receiver S9 was originally not collocated with a synchronisation transmitter, but on January 11th 2017, we replaced this receiver with the newer VR2TX type, containing an internal synchronisation transmitter and capable of measuring noise (one measurement every 10 min). After each deployment, we offloaded the receivers and sent the data to Vemco for positioning (Fig. 10).

Fig. 10
figure 10

Workflow of the study

During the 2nd deployment, we collected 3 test tracks with 3 different test transmitters. We mounted a Trimble TSC2 GPS with 0.01 m average horizontal accuracy on a boat, measuring the true position every second. We attached the test transmitters to a rope with a heavy weight to keep them vertically underneath the boat, and towed them through the study site. On August 4th 2016, we combined a V13 (17–33 s) and a V7 (15–30 s) transmitter in one boat track (average ground speed 0.24 m/s). On August 5th, we performed a second boat track (average ground speed 0.40 m/s) with another V13 transmitter, having a fixed delay of 10 s.

Verification of system performance

The performance of a positioning system depends on positioning accuracy and efficiency. The fixed transmitters in the VPS array allow verifying both measures. Positioning efficiency is the number of calculated positions in proportion to the number of expected positions in a given time frame and is related to the signal-to-noise ratio. The transmitter’s output level determines the power of a signal and is different for different transmitter sizes (Table 4). The main source of acoustic noise in this study can be expected to be ship noise and noise related to the operation of the navigation lock complex and hydropower installation. We used the noise measurements of the VR2TX receiver to verify the influence of noise on positioning efficiency. Accuracy is determined by the error between real and calculated transmitter position. We analysed the error on fixed transmitter positions visually, by use of 3D timeseries plots. Furthermore, we compared the error on the V7 reference transmitter (R4) to the V16 fixed transmitters, to verify the influence of power output.

Filtering methods

Every VPS position is delivered with some additional information, containing the HPE value (a dimensionless error sensitivity measure) and the set of receivers used for the position calculation. We used this information in two filtering techniques: HPE threshold and receiver cluster classification.

HPE threshold

According to Coates et al. (2013) [7], calculated positions can be filtered by use of an HPE threshold, determined by a relationship between HPE and a statistic on the positioning error on fixed transmitters. To find this relationship, we binned the HPE values of all fixed transmitter positions per unit of 1 HPE and calculated the “twice the Distance Root Mean Square error” (2DRMS) in each group [20]. Since the HPE measure is to be interpreted for each deployment separately, we did this for the 3 deployments. However, in none of the deployments, a linear relationship between HPE and 2DRMS could be found (Fig. 11). As an alternative, we used the 75%-percentile of HPE values as HPE threshold: 3.0, 5.7 and 6.7 for the 3 deployments, respectively.

Fig. 11
figure 11

HPE versus calculated error on each fixed transmitter position (gray dots) for the first (a), second (b) and third (c) deployment. The black crosses represent the twice the distance root mean square error (2DRMS) statistic for each group of 1 Horizontal Position Error (HPE) unit

Classification of receiver clusters

In this approach, we filtered positions based on the overall performance of the receivers used for the position calculation. To this end, we classified every receiver cluster (i.e. every group of receivers used at least once to calculate a position) in two performance categories. The classification of receiver clusters assumes that the choice of receivers used to calculate a position, influences the accuracy of that position. The performance of a receiver cluster can be verified by use of the positions calculated for synchronisation and reference transmitters. We classified every cluster that calculated at least 10 stationary transmitter positions, according to its performance. If a receiver cluster calculated at least 95% of the positions with an error of max 5 m, it is classified as a well performing cluster, otherwise as a badly performing cluster [24]. This results in 2 options to filter the positions: (1) only keep the positions calculated with well performing clusters (and hence omit the unclassified clusters that calculated too few positions) or (2) remove all positions calculated with badly performing clusters (and hence keep unclassified positions). The first is further referred to as ‘good performance filter’, the second as ‘bad performance filter’.

YAPS positioning

Although the default time precision of the detection data is only 1 s, the softwares VUE and FATHOM provided by Vemco allow to obtain the millisecond time precision (see the APosTel web page). This precision is needed to execute a positioning algorithm independent from VPS. The YAPS R package is available online [25] and can be user-adapted to specific case studies and situations [23]. The results come with an estimated error, indicating model uncertainty for each position estimate. Since we had water temperature measurements available, we incorporated sound speed data calculated by use of the Mackenzie equation [26].

To position fixed transmitters, we split the observations whenever a silence of 60 min occurred (an observation is defined as all receiver detections originating from one transmission). We split the resulting groups in chunks of 2000 observations, and if the algorithm did not converge, we truncated these chunks further to size 1000, 500, 250 and 100. For each run, we allowed 5 attempts of YAPS to find a solution, for each new attempt changing the initial conditions and requiring the estimated error to be smaller than 2. For the synchronisation transmitters, we omitted each transmitter’s self detections, i.e. on the receiver collocated with the transmitter. In addition, we omitted detections on receivers that were completely outside direct-line-of-sight. For instance for receiver S15, these are S7, S10 and S12.

The test tracks needed no splitting of the data and were run until an estimated error < 10. To estimate the fish tracks, we split the observations at silences of 30 minutes (again no further chunking needed). We allowed 5 attempts and used an estimation error threshold of 100. A higher threshold was needed since the model uncertainty was overall larger for fish tracks than for fixed transmitter positions.

An essential step preceding each positioning algorithm is time synchronisation of the receiver clocks [27]. Additionally, some preprocessing in terms of rearrangement and clean-up of the raw detection data are needed before feeding the TOA data to YAPS [28]. Examples of the actual YAPS positioning on fish, fixed and test data can be found online [29], even as all resulting YAPS tracks [30].

Measures to compare performance

To compare the two filtering techniques with unfiltered VPS positions and with the YAPS algorithm (Fig. 10), we calculated performance measures on the fixed transmitter positions, test tracks and fish tracks.

With the VPS positions on fixed transmitters, Vemco also provides the positioning error in reference to the so-called ‘derived’ GPS positions. These GPS positions originate from a receiver station calibration [9], performed prior to VPS analysis, by use of calculated distances between receiver pairs. A calibration is required, since GPS positions may come with a significant error. To ensure a fair comparison, we also performed a station calibration on the YAPS analysis, where the most frequently prevailing YAPS position of a fixed transmitter was used as ‘true’ position. This is comparable to the result of the Vemco calibration, where the derived position of a transmitter is close to its most abundant VPS position.

In the receiver cluster filter, the cluster classification is directly based on the fixed transmitter data. Therefore, we used 3-fold cross validation to calculate the error on the fixed transmitter positions that remained after this filtering.

For the test tracks, we used the high-precision Trimble GPS tracks as ground truth to calculate the error on the positions. Furthermore, we visually compared the tracks resulting from the different methods.

In case of fish tracks, the real track is unknown. However, the biological plausibility of fish tracks can be estimated by use of knowledge on the swimming velocities. Fish are characterised by an optimal swimming speed, at which the energetic cost is minimal. For silver eels this is about 0.66 m/s [31, 32]. This speed would optimise the eels’ energy use during their long trip to the Sargasso Sea. Salmon smolts can sustain a velocity of 0.54 m/s during a few hours [33]. We can assume that swimming velocities above these values are less likely to occur, therefore the percentage of such positions is a measure for possibly erroneous positions.

Another measure is the burst speed, which is the highest speed a fish can attain and can be maintained for less than 20 seconds [34]. Large fish such as silver eels (with an average length of 840 mm in this study) can reach a speed of 4 body lengths/s [35], or 3.4 m/s in this case. Small fish such as salmon smolts (average length of 160 mm) can reach 25 body lengths/s [35], or 3.9 m/s. Swimming velocities that exceed these respective values can be considered with high certainty as originating from erroneous positions, therefore we calculated the percentage of positions where this occurred. In addition, we calculated the 95 and 99%-percentile of swimming velocities, and the maximum occurring swimming velocity for each method. We summarised all performance measures separately for the 2 species, since they have different swimming velocities.

A frequently occurring phenomenon are positions situated on the embankment and the surrounding land. These are obviously erroneous positions, indicating directly how a method is performing. Since 5 receivers were fixed on the canal walls, the majority of calculated positions for their collocated synchronisation transmitters will be on the wall and hence on land. To account for this, we applied a buffer of 3 m around the walls to determine on-land positions. Furthermore, every filtering of the positions is a trade-off between increasing the accuracy and retaining information. Therefore, we calculated the percentage of positions retained relative to the VPS results (i.e. the positions delivered by Vemco without any filtering or positioning effort). Both measures were calculated for the 3 groups of positions (fixed transmitters, test and fish tracks).

Availability of data and materials

The dataset analysed during the current study is available at Zenodo: Acoustic positioning telemetry in a case study on the Albert Canal (Belgium): VPS and YAPS positions. [30].

The python code for classification of receiver clusters is available on GitHub: Archived on: JennaVergeynst/code_cluster_classification: First release of cluster classification code. Zenodo.

The python and R code used for data preparation and positioning by use of the YAPS algorithm is available on GitHub:

Time synchronisation of the receiver clocks: Archived on: JennaVergeynst/time_synchronization: Code for time synchronisation of an acoustic positioning system. Zenodo. [27].

Preparation of TOA matrices: Archived on: JennaVergeynst/prepare_toa_for_yaps: Code to prepare TOA-data for YAPS. Zenodo. [28]

Examples of YAPS positioning on fish, fixed and test data: Archived on: JennaVergeynst/YAPS_on_casestudy_AlbertCanal: Case study in the Albert Canal using YAPS. Zenodo. [29].


bad p.:

Bad performance filter

good p.:

Good performance filter


Twice the Distance Root Mean Square Error


Code Division Multiple Access


Global Positioning System


Horizontal Positioning Error


High Residency


Pulse Position Modulation


Root Mean Square Error


Time Difference of Arrival


Time of Arrival


Vemco Positioning System


Yet Another Positioning System


  1. Hockersmith EE, Beeman JW. A history of telemetry in fishery research. In: Telemetry techniques: a user guide for fisheries research, p. 542; 2012.

  2. DeCelles G, Zemeckis D. Acoustic and radio telemetry. In: Stock identification methods, p. 397–428; 2014. Chap. 17.

    Chapter  Google Scholar 

  3. Piper AT, Wright RM, Walker AM, Kemp PS. Escapement, route choice, barrier passage and entrainment of seaward migrating European eel, Anguilla anguilla, within a highly regulated lowland river. Ecol Eng. 2013;57:88–96.

    Article  Google Scholar 

  4. Verhelst P, Reubens J, Pauwels I, Buysse D, Aelterman B, Van Hoey S, Goethals P, Moens T, Coeck J, Mouton A. Movement behaviour of large female yellow European eel (Anguilla anguilla L.) in a freshwater polder area. Ecol Freshw Fish. 2017;.

    Article  Google Scholar 

  5. Piper AT, Manes C, Siniscalchi F, Marion A, Wright RM, Kemp PS, Siniscalchi F, Marion A, Rm W, Ps K, Piper AT. Response of seaward-migrating European eel (Anguilla anguilla) to manipulated flow fields. Proc R Soc B Biol Sci. 2015;.

    Article  Google Scholar 

  6. Arenas A, Politano M, Weber L, Timko M. Analysis of movements and behavior of smolts swimming in hydropower reservoirs. Ecol Modell. 2015;312:292–307.

    Article  Google Scholar 

  7. Coates JH, Hovel KA, Butler JL, Peter Klimley A, Morgan SG. Movement and home range of pink abalone Haliotis corrugata: implications for restoration and population recovery. Mar Ecol Progr Ser. 2013;486:189–201.

    Article  Google Scholar 

  8. Scheel D, Bisson L. Movement patterns of giant Pacific octopuses, Enteroctopus dofleini (Wülker, 1910). J Exp Mar Biol Ecol. 2012;416–417:21–31.

    Article  Google Scholar 

  9. Smith F. Understanding HPE in the VEMCO Positioning System (VPS). Technical report. 2013.

  10. Pincock DG. Understanding the performance of VEMCO 69 kHz single frequency acoustic telemetry. Technical report 2008.

  11. Smith GW, Urquhart GG, MacLennan DN, Sarno B. A comparison of theoretical estimates of the errors associated with ultrasonic tracking using a fixed hydrophone array and field measurements. Hydrobiologia. 1998;371(372):9–17.

    Article  Google Scholar 

  12. Ehrenberg JE, Steig TW. A method for estimating the “position accuracy” of acoustic fish tags. ICES J Mar Sci. 2002;59(1):140–9.

    Article  Google Scholar 

  13. Niezgoda G, Benfield M, Sisak M, Anson P. Tracking acoustic transmitters by code division multiple access (CDMA)-based telemetry. Hydrobiologia. 2002;483:275–86.

    Article  Google Scholar 

  14. Hanson KC, Cooke S, Suski CD, Niezgoda GH, Phelan FJS, Tinline R, Philipp DP. Assessment of largemouth bass behaviour and activity at multiple spatial and temporal scales utilizing a whole-lake telemetry array. Hydrobiologia. 2007;582:243–56.

    Article  Google Scholar 

  15. Espinoza M, Farrugia TJ, Webber DM, Smith F, Lowe CG. Testing a new acoustic telemetry technique to quantify long-term, fine-scale movements of aquatic animals. Fish Res. 2011;108(2–3):364–71.

    Article  Google Scholar 

  16. Roy R, Beguin J, Argillier C, Tissot L, Smith F, Smedbol S, De-Oliveira E. Testing the VEMCO Positioning System: spatial distribution of the probability of location and the positioning error in a reservoir. Anim Biotelemet. 2014;2(1):1–6.

    Article  CAS  Google Scholar 

  17. Baktoft H, Gjelland KØ, Økland F, Thygesen UH. Positioning of aquatic animals based on time-of-arrival and random walk models using YAPS ( Yet Another Positioning Solver ). Sci Rep. 2017;7:1–10.

    Article  CAS  Google Scholar 

  18. Vemco: Manual on receiver noise measurements. Technical report 2015.

  19. Holmes N, Browne A, Montague C. Acoustic properties of concrete panels with crumb rubber as a fine aggregate replacement. Construct Build Mater. 2014;73:195–204.

    Article  Google Scholar 

  20. Meckley TD, Holbrook CM, Wagner C, Binder TR. An approach for filtering hyperbolically positioned underwater acoustic telemetry data with position precision estimates. Anim Biotelemet. 2014;2(1):1–13.

    Article  Google Scholar 

  21. Guzzo MM, Van Leeuwen TE, Hollins J, Koeck B, Newton M, Webber DM, Smith FI, Bailey DM, Killen SS. Field testing a novel high residence positioning system for monitoring the fine-scale movements of aquatic organisms. Methods Ecol Evol. 2018;9:1478–88.

    Article  PubMed  PubMed Central  Google Scholar 

  22. Leander J, Klaminder J, Jonsson M, Brodin T, Leonardsson K, Hellström G. The old and the new: evaluating performance of acoustic telemetry systems in tracking migrating Atlantic salmon (Salmo salar) smolt and European eel (Anguilla anguilla) around hydropower facilities. Can J Fish Aquat Sci. 2019;77:177–87.

    Article  Google Scholar 

  23. Baktoft H, Gjelland KØ, Økland F, Rehage JS, Rodemann JR, Corujo RS, Viadero N, Thygesen UH. Opening the black box of high resolution fish tracking using yaps. bioRxiv, the prepint server for biology, 1–14; 2019.

  24. Vergeynst J. JennaVergeynst/code_cluster_classification: First release of cluster classification code. Zenodo. 2017

  25. Baktoft H. YAPS 2017.

  26. Mackenzie KV. Formulas for the computation of sound speed in sea water. J Acoust Soc Am. 1960;32(1):100–4.

    Article  Google Scholar 

  27. Vergeynst J. JennaVergeynst/time_synchronization: Code for time synchronisation of an acoustic positioning system. Zenodo. 2019.

  28. Vergeynst J. JennaVergeynst/prepare_toa_for_yaps: Code to prepare TOA-data for YAPS. Zenodo. 2019.

  29. Vergeynst J. JennaVergeynst/YAPS_on_casestudy_AlbertCanal: Case study in the Albert Canal using YAPS. Zenodo. 2019.

  30. Vergeynst J, Pauwels I, Baeyens R, Mouton A, Coeck J. Acoustic positioning telemetry in a case study on the Albert Canal (Belgium): VPS and YAPS positions [Data set]. Zenodo., 2019.

  31. Quintella BR, Mateus CS, Costa JL, Domingos I, Almeida PR. Critical swimming speed of yellow- and silver-phase European eel (Anguilla anguilla, L.). J Appl Ichthyol. 2010;26(3):432–5.

    Article  Google Scholar 

  32. Palstra AP, van den Thillart GEEJM. Swimming physiology of European silver eels (Anguilla anguilla L.): energetic costs and effects on sexual maturation and reproduction. Fish Physiol Biochem. 2010;36(3):297–322.

    Article  CAS  PubMed  PubMed Central  Google Scholar 

  33. Tang J, Wardle CS. Power output of two sizes of Atlantic Salmon (Salmo salar) at their maximum sustained swimming speeds. J Exp Biol. 1992;166(1):33–46.

    Google Scholar 

  34. Gui F, Wang P, Wu C. Evaluation approaches of fish swimming performance. Agric Sci. 2014;05(02):106–13.

    Article  Google Scholar 

  35. Wardle CS. Limit of fish swimming speed. Nature. 1975;255(1):725–7.

    Article  CAS  Google Scholar 

Download references


This work was a collaboration between Ghent University and the Research Institute for Nature and Forest (INBO). N. De Maerteleire, E. Gelaude, S. Pieters and K. Robberechts assisted with the data collection. We thank Henrik Baktoft for his support in running the YAPS algorithm.


The first author is a Ph. D. fellow funded by the Special Research Fund (BOF) of Ghent University. Receivers and transmitters were funded by INBO, LifeWatch and the European Union’s Horizon 2020 research and innovation programme under Grant Agreement No 727830.

Author information

Authors and Affiliations



JV analysed and interpreted the data and wrote the manuscript. TVW helped with running the YAPS algorithm on the data. RB and IP assisted with the data collection and with data interpretation. IP, TDM, AM and IN supervised the work. All authors read and approved the final manuscript.

Corresponding author

Correspondence to Jenna Vergeynst.

Ethics declarations

Ethics approval and consent to participate

The study is approved by the Ethical Committee of the Research Institute for Nature and Forest (ECINBO09).

Consent for publication

Not applicable

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit The Creative Commons Public Domain Dedication waiver ( applies to the data made available in this article, unless otherwise stated in a credit line to the data.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Vergeynst, J., Vanwyck, T., Baeyens, R. et al. Acoustic positioning in a reflective environment: going beyond point-by-point algorithms. Anim Biotelemetry 8, 16 (2020).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: