Skip to contents

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.

Usage

graph_most_likely(graph, quiet = FALSE)

Arguments

graph

a graph object.

quiet

logical to hide messages about the progress.

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 information

  • lat latitude,

  • lon longitude

  • start datetime of the start of the stationary period (same as in stap)

  • end datetime of the end of the stationary period (same as in stap)

  • include logical if stationary period was modelled (same as in stap)

  • nb_sample known number of datapoint used to compute pressure (same as in stap)

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.

Examples

owd <- setwd(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)
setwd(owd)

# 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)