Closed PieterjanVerhelst closed 2 years ago
As the current script searches for the least cost-distance, this is not supported yet. As a side note, the current matrix is containing a single defined distance in between each receiver (NxN matrix). How would you propose to represent these alternative routes?
Maybe an additional code can be written in case loops are present. The presence of loops can be indicated in the external network csv file (e.g. column 'loop' with '1' next to the stations that are part of a loop). I think it is possible when the loop-trajectories are given a different weights http://desktop.arcgis.com/en/arcmap/latest/tools/spatial-analyst-toolbox/creating-the-least-cost-path.htm
In fact this means that in future projects (receiver networks) containing
loops, we should install recivers "in the loop", ensuring that the distance
between these "extra" receivers and the receivers near the "cross-roads of
the different loops" is smaller than the distance between these
cross-road-receivers ... Illustrated below: red circles= "cross-road
receivers" (which are in fact the receivers between which two different
routes are possible), blue stars:the extra receivers in the loop. The
discrepancy between route D versus route ABC to go from the one circled
receiver to the other, is than made by the receivers in between (bleu stars
and green receivers in the Albert channel).
So perhaps, if we could insert "virtual receivers" (the blue stars on the map below) in the detection file based on the sub-sequence of the receivers for which we have detections, we could automate the calculation of the distances for the case of the Kempense Kanalen?
Not sure whether this idea is clear and feasible?
@IPauwels could you upload your figure as well (on gitub: edit comment, just drag your picture into the edit field)
I close this issue as it is further discussed in a very similar way in #68.
Automatically calculating receiver distances in longitudinal networks works excellent. A new challenge is calculating distances when loops are present, due to parallel canals. For example, fish migrating through the Albert Canal have different options to get into the Schelde in Antwerpen: 1) migration along the Albert canal - calculating the distances works with the current script (prepare_dataset.R) 2) moving into parallel canals (the 'Kempische kanalen'), resulting in different possible distances to move from station A to B (see figure below; note that the 2 loops are connected to eachother at the cross section). How could this be implemented in the script?![ak_network_loops](https://cloud.githubusercontent.com/assets/10052950/22733220/3b5fd05e-edf1-11e6-9528-08c957d546cc.png)