Compute the trajectory which maximizes the joint probability using the Viterbi algorithm on the graph structure. For more details, see section 2.3.1 of Nussbaumer et al. (2023b) and the GeoPressureManual.
Value
Path data.frame containing the columns
-stap_id
stationary period
j
unique ID for each path, here always 1 as there is a single path.ind
indices of the coordinate in the 2D grid. Useful to retrieve map or graph informationlat
latitude,lon
longitudestart
datetime of the start of the stationary period (same as instap
)end
datetime of the end of the stationary period (same as instap
)include
logical if stationary period was modelled (same as instap
)
References
Nussbaumer, Raphaël, Mathieu Gravey, Martins Briedis, Felix Liechti, and Daniel Sheldon. 2023. Reconstructing bird trajectories from pressure and wind data using a highly optimized hidden Markov model. Methods in Ecology and Evolution, 14, 1118–1129 https://doi.org/10.1111/2041-210X.14082.
See also
Other graph:
graph_create()
,
graph_marginal()
,
graph_set_movement()
,
graph_simulation()
,
print.graph()
Examples
withr::with_dir(system.file("extdata", package = "GeoPressureR"), {
tag <- tag_create("18LX", quiet = TRUE) |>
tag_label(quiet = TRUE) |>
twilight_create() |>
twilight_label_read() |>
tag_set_map(
extent = c(-16, 23, 0, 50),
known = data.frame(stap_id = 1, known_lon = 17.05, known_lat = 48.9)
) |>
geopressure_map(quiet = TRUE) |>
geolight_map(quiet = TRUE)
})
# Create graph
graph <- graph_create(tag, quiet = TRUE)
# Define movement model
graph <- graph_set_movement(graph)
# Compute most likely path
path_most_likely <- graph_most_likely(graph, quiet = TRUE)
plot_path(path_most_likely)