MiCO: Migratory Connectivity in the Ocean


Migratory Connectivity in the Ocean (MiCO) System Methods Overview: 

Development of Node and Corridor Data Products from Animal Tracking Data

An objective of the Migratory Connectivity in the Ocean (MiCO) initiative is to synthesize data on marine migratory species area use to support worldwide conservation efforts.  These general areas of use are further partitioned into MiCO nodes which are aggregated areas of non-migratory behavior (e.g., wintering, breeding, foraging), and MiCO corridors which are aggregated areas used by migrating individuals. Nodes and corridors are generated using animal tracking data via well-accepted kernel density estimation (KDE) methods using R statistical software (R Core Team 2018).   

Data Acquisition and Cleaning

Animal tracks collected by telemetry tags, including geolocator, Argos, and global positioning system (GPS), used to develop node and corridor data products for the MiCO system were obtained with permission from large online data warehouses or directly from data holders.  See the MiCO contributor page for a full list of current data providers and for information on how to contribute data.  Data were formatted, cleaned, and standardized for subsequent filtering, interpolation, track segmentation, and kernel density analysis.

Data Filtering

All telemetry data are subject to positional error and temporal irregularities due to a number of factors including animal behavior, weather, satellite availability, and seasonality.  In the case of geolocator data, cloud cover and artificial shading of the tag (by sitting on it or submerging it) can confound the light signal. Argos data may be irregular or erroneous due to the limited amount of time that many aquatic species spend at the surface of the water combined with a potential lack of Argos satellite availability at the time of surfacing.  Regardless of device type, these erroneous or low accuracy locations are often filtered and the tracks regularized prior to any spatial analysis in order to prevent temporal or spatial biases in the estimation of area use.

Equinox filtering for geolocator data

Geolocator tags are small, archival tags that continuously record ambient light levels.  They are useful for studying large scale movements of individuals over time scales of months to years.  Because of their small size, they can be used to study movement patterns of smaller species for which Argos platform terminal transmitters (PTT) or global position system (GPS) tags are too large.  Day length and the time of high noon, derived from light levels, are used to infer latitude and longitude respectively. Generally, these data are low resolution and may contain positional errors on the scale of 200 km.  Because day and night length are equal during the equinoxes, the latitude calculations during these time periods are unreliable and subject to much larger errors. Due to this increased error, conventional practice is to remove these error prone locations with an equinox filter.  For geolocator data, we removed locations during the time periods surrounding spring equinox (March 20, -21/+7 days) and autumnal equinox (September 22, -7/+21 days). We assumed asymmetrical effects on latitudinal location quality for the spring and fall equinoxes as those periods of greatest variability in latitude precede the spring equinox and follow the autumnal equinox (Hill and Braun 2001).

Speed, distance angle (SDA) filtering

For tracks where information on the animal’s activities/behaviors were available or determined by expert knowledge, a speed, distance, angle (SDA) filter was applied to remove erroneous or low accuracy locations (Freitas et al. 2008).  For geolocator data, we applied the SDA filter post equinox filtering. The SDA algorithm from the R package argosfilter  takes into account the species’ maximum swim / flight speed, distance between consecutive points, and the turning angle in order to filter out locations that exceed what is biologically feasible for an animal (Freitas 2012).  Maximum speeds for each species were taken from the peer-reviewed literature where available in order to apply a coarse SDA filter.

For tracks where activity/behavior was not available, data were fit to a Bayesian switching state-space model (SSSM) to infer behavior states (Jonsen et al. 2005).  Bayesian models account for the measurement error in the observations, removing the need for the SDA filter.

Track Segmentation

Sea Turtles

For Argos telemetry data, due to the inherent irregularity in timestamps, performing area-use analysis on these points can often lead to underestimation and patchiness in results. To take this into account, state-space modeling (SSM) is often used to estimate locations at regular time intervals and account for measurement error in the original Argos observations (Jonsen et al. 2005).

For data where we have information on the animal behavior/activity, the Argos points were fitted with a SSM to obtain regular locations at 24 hour intervals, using the R package ssmTMB (Jonsen and Wotherspoon 2018).  The resulting regularized tracks were subjected to a final quality control, where tracks that failed to converge were manually re-fitted using different initial model parameters.  Afterwards, the supporting literature and expert knowledge provided were used to further partition interpolated tracks into associated migratory and non-migratory segments, usually based on geographic or temporal details. All segments were then manually assigned to descriptor variables of unique non-migratory breeding nodes or migratory corridors.

When information was not available on animal activity/behavior, tracks were fitted with a Bayesian switching state-space model to filter locations and segment the track to infer different behavior states using the R package bsam (Jonsen et al., 2005; Jonsen, 2016). For cases where multiple animals had similar movement patterns, tracks were fitted to the hierarchical correlated random walk switching model (hDCRWS) for filtering and segmentation, also using the R package bsam (Jonsen 2016). Sections of the individual tracks assigned by the model as area-restricted search (ARS) and transiting movement types were then grouped into non-migratory and migratory segments, respectively. All segments were then manually assigned to descriptor variables of unique non-migratory breeding nodes or migratory corridors.


In order to segment the tracks into migratory and non-migratory portions of the annual cycle, the data were first partitioned into breeding and non-breeding categories based on data provider input on breeding status available in the Seabird Tracking Database.  Breeding segments were grouped for subsequent kernel density analysis. Net squared displacement (NSD), the squared distance between each consecutive location in the trackline and the initial point, was calculated for all non-breeding segments. NSD is a spatial only signal that can be used in a behavioral change point analysis framework to segment the trackline into discrete segments.  Other signals that may be used to segment a track include residence time (Barraquand and Benhamou 2008) and first-passage time (Johnson et al. 1992, Fauchald and Tveraa 2003). Individual animal tracks were plotted for visual examination and tracks were categorized based on wintering destination or based on the absence of a migration. Each individual track within those categories was then segmented based on a behavioral change point analysis framework using the Lavielle contrast function (Lavielle 1999; 2005) as implemented in the R package adehabitatLT (Calenge 2006).  This method optimizes the number of segments by minimizing the contrast function, in our case, assuming that discrete segments will differ in the mean of the NSD signal.  These segments were then manually assigned to descriptor variables of unique non-breeding nodes or migratory corridors.

Marine Mammals

A template model builder (TMB) implementation of a state-space model was fitted to Argos locations to account for the error in the Argos data using the R package foieGras (Jonsen et al. 2019).  Tracks with data gaps in excess of 36 hours were broken up for separate modeling and only segments greater than 10 days tracking duration were modeled.   Supporting literature and expert knowledge were used to further partition interpolated tracks into associated migratory and non-migratory segments, usually based on geographic or temporal details. All segments were then manually assigned to descriptor variables of unique non-migratory breeding nodes, foraging nodes, or migratory corridors.

Kernel Density Analysis

We produced kernel density estimates (KDEs) using the R package ks (Duong 2018) for each individual segment within a unique node or corridor using the mean integrated square error (MISE) bandwidth output (Fleming et al. 2015) from the autocorrelated kernel density estimator function in the R package ctmm (Fleming and Calabrese 2018).  We chose this bandwidth over conventional bandwidth estimators such as plug-in or least squares cross-validation after exploratory work demonstrated issues with undersmoothing, particularly with cross-validation.  Additionally, MISE does not assume data independence and is thus preferred when auto-correlation structures are present such as with telemetry data (Fleming et al. 2015). Output density estimate rasters for each individual segment within a given node or corridor were stacked and averaged to account for variability in segment length or tracking duration, and to produce one KDE for a group of individuals present in that node or corridor.

From the averaged KDE, we calculated contour levels, or the heights of the corresponding highest density region for a given probability (e.g., 0.9 or 0.25) with the R package ks (Duong 2018).  The KDEs for the 90th and 25th contour levels for each of these unique nodes and corridors can be viewed from the MiCO mapper tool as the “Distribution” and “Core Area,” respectively, and are downloadable from the public online interface.


Barraquand, F., and S. Benhamou. 2008. Animal Movements in Heterogeneous Landscapes: Identifying Profitable Places and Homogeneous Movement Bouts. Ecology 89:3336–3348.

Calenge, C. 2006. The package adehabitat for the R software: a tool for the analysis of space and habitat use by animals. Ecological Modelling 197:516-519

Duong, T. 2018. ks: Kernel Smoothing. R package version 1.11.3. https://CRAN.R-project.org/package=ks

Fauchald, P., and T. Tveraa. 2003. Using First-Passage Time in the Analysis of Area-Restricted Search and Habitat Selection. Ecology 84:282–288.

Fleming, C. H. and Calabrese J. M. 2018. ctmm: Continuous-Time Movement Modeling. R package version 0.5.2. https://CRAN.R-project.org/package=ctmm

Fleming, C. H., W. F. Fagan, T. Mueller, K. A. Olson, P. Leimgruber, and J. M. Calabrese. 2015. Rigorous home range estimation with movement data: a new autocorrelated kernel density estimator. Ecology 96:1182–1188.

Freitas, C. 2012. argosfilter: Argos locations filter. R package version 0.63. https://CRAN.R-project.org/package=argosfilter

Freitas, C., C. Lydersen, M. A. Fedak, and K. M. Kovacs. 2008. A simple new algorithm to filter marine mammal Argos locations. Marine Mammal Science 24:315–325.

Hill, R. D., and M. J. Braun. 2001. Geolocation by Light Level. Pages 315–330 in J. R. Sibert and J. L. Nielsen, editors. Electronic Tagging and Tracking in Marine Fisheries: Proceedings of the Symposium on Tagging and Tracking Marine Fish with Electronic Devices, February 7–11, 2000, East-West Center, University of Hawaii. Springer Netherlands, Dordrecht.

Johnson, A. R., B. T. Milne, and J. A. Wiens. 1992. Diffusion in Fractal Landscapes: Simulations and Experimental Studies of Tenebrionid Beetle Movements. Ecology 73:1968–1983.

Jonsen, I. 2016. Joint estimation over multiple individuals improves behavioural state inference from animal movement data. Scientific Reports 6:20625.

Jonsen, I. D., M. Basson, S. Bestley, M. V. Bravington, T. A. Patterson, M. W. Pedersen, R. Thomson, U. H. Thygesen, and S. J. Wotherspoon. 2013. State-space models for bio-loggers: a methodological road map. Deep Sea Research Part II: Topical Studies in Oceanography 88:34-46.

Jonsen, I. D., J. M. Flemming, and R. A. Myers. 2005. Robust State-Space Modeling of Animal Movement Data. Ecology 86:2874–2880.

Jonsen, I. D., and C. R. McMahon, T. A. Patterson, M. Auger-Methe, R. Harcourt, M. A. Hindell, and S. Bestley. 2019. Movement responses to environment: fast inference of variation among southern elephant seals with a mixed effects model. Ecology 100:1.

Jonsen, I.D.  and Wotherspoon, S. 2018. ssmTMB: A fast state-space model for filtering Argos satellite tracking data using TMB. R package version http://github.com/ianjonsen/ssmTMB

Lavielle, M. 1999. Detection of multiple changes in a sequence of dependent variables. Stochastic Processes and their Applications 83:79–102.

Lavielle, M. 2005. Using Penalized Contrasts for the Change-point Problem. Signal Process. 85:1501–1510.

Nash, J. C. 2014. On Best Practice Optimization Methods in R. Journal of Statistical Software 60:1–14.

R Core Team. 2018. R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. URL https://www.R-project.org/