The Find Dwell Locations tool determines dwell locations from time-sequential points in a track. Dwell locations are defined as sequential observations with little or no movement over a certain period of time. Depending on your industry, application, or use case, dwell locations can also be referred to as stay points or idle detection. Tracks are identified by the Track ID key field. Each track can have 0, 1, or more dwell locations.

Depending on the dwell output type, the resulting layer can display the dwell location as dwell points, all points including dwells, a convex hull of the dwell locations, or a mean center point of the dwell. The output contains the count of features within a dwell location, the start and end time of the dwell, the duration of the dwell, and any additional statistics that have been calculated.

## Workflow diagram

## Example

A transportation department is monitoring vehicle movement in near real-time to identify dwell locations witnessed throughout the day. The Find Dwell Locations tool can be used to identify dwell locations where vehicles have not exceeded a certain speed threshold.

## Usage notes

- The Track ID and Start Time key fields must be identified on the input dataset to use this tool.
- The input layer must be of time type instant; time type interval is not supported.
- If you generate an output type of Dwell Features, All Features, or Mean Centers, the output will be a point layer. If you choose Convex Hulls, the output will be a polygon layer.
- If you're generating an output type of Mean Centers or Convex Hulls, the resulting features will have an interval time that creates fields named DwellStartTimeand DwellEndTime. These fields are identified as the Start Time and End Time key fields, respectively.
- Features that are missing Track ID or Start Time key field values will be ignored during processing.
- You can specify one or more fields to identify tracks in addition to the Track ID field. Tracks are represented by the unique combination of one or more track fields.
- By default, dwell locations are created using a geodesic method for distance calculation. It is recommended that you use geodesic distance in the following circumstances:
- When tracks cross the international date line—When using the geodesic method, input layers that cross the international date line will have tracks that correctly cross the international date line. This is the default. The input layer or processing spatial reference must be set to a spatial reference that supports wrapping around the international date line, for example, a global projection such as World Cylindrical Equal Area.
- When the dataset is not in a local projection—If the input data is in a local projection, use the planar distance method. For example, use the planar method to examine dwell locations within a single state. The input layer or processing spatial reference must be set to a spatial reference local to the dataset.

- You can calculate additional statistics using the Summary Fields parameter. The summary fields statistics available depend on the field type you are summarizing. A string attribute field can use the Any, Count, and Count Distinct statistics. A numeric attribute field can use the Any, Count, Count Distinct, Sum, Sum of Squares, Min, Max, Range, Variance, and Standard Deviation statistics. A date attribute field can use the Any, Count, Min, Max, and Range statistics.
- The output layer of dwell locations can be represented in one of four ways, as illustrated in the following table:
Output type Description Example All Features

Every feature is returned. The resulting features have time type instant.

Only the dwell observation count statistics are calculated for this output type. The count represents the number of features that belong to a single dwell. Features that are not dwells will have a count of 0.

Dwell Features

Only features that are part of a dwell are returned. The resulting features have time type instant.

Only the dwell observation count statistics are calculated for this output type. The count represents the number of features that belong to a single dwell.

Mean Centers

Each dwell has a single point returned representing the mean center of the dwell in distance and time. The resulting features have time type interval.

The dwell observation count of the number of features in the dwell is always calculated. You can calculate statistics on this type of dwell feature. By default, no statistics are calculated.

Convex Hulls

Each dwell is represented by a convex hull of the dwell features. The resulting features have time type interval.

The dwell observation count of the number of features in the dwell is always calculated. You can calculate statistics on this type of dwell feature. By default, no statistics are calculated.

## Parameters

Parameter | Description | Data type |
---|---|---|

Input Layer | The input point layer with tracks from which to find dwells. The input layer must be a time-enabled layer with features that represent instants in time. | Features |

Distance Tolerance | The maximum distance between points to be considered a single dwell location. | String |

Time Span Tolerance | The minimum time duration to be considered a single dwell location. Both time and distance are considered when finding dwells. The Distance Tolerance parameter specifies distance. | String |

Output Type | Specifies how the dwell features will be returned. - Dwell Features—All of the input point features that are part of a dwell are returned.
- Mean Centers—Points representing the mean centers of each dwell group are returned. This is the default.
- Convex Hulls—Polygons representing the convex hull of each dwell group are returned.
- All Features—All of the input point features are returned.
| String |

TRACK_ID Fields | Select the field or fields to uniquely identify features that will be processed. This parameter is automatically populated if a Track ID key field has been set on the input layer. | String |

Method | Specifies the distance calculation method. - Geodesic
- Planar (Euclidean)
| String |

Summary Fields | Specifies the statistics that will be calculated for specified fields. Different statistics are available depending on whether the field type is a string, numeric, or date field. - Any—A sample string from a field of type string.
- Count—Calculates the number of nonnull values. It can be used on numeric fields or strings. The count of [null, 0, 2] is 2.
- Count Distinct—Calculates the number of distinct, nonnull values. It can be used on numeric fields or strings. The count distinct result of [null, 4, 3, 4] is 2.
- Sum—The sum of numeric values in a field. The sum of [null, 1, 3] is 4.
- Sum of Square—The sum, over all observations, of the squared differences of each observation from the overall mean. The sum of squares of [null, 2.2, 3.1, 4.7] is 3.206.
- Min—The minimum value of a numeric field. The minimum of [0, 2, null] is 0.
- Max—The maximum value of a numeric field. The maximum value of [0, 2, null] is 2.
- Mean—The mean of numeric values. The mean of [0,2, null] is 1.
- Range—The range of a numeric field. This is calculated as the minimum value subtracted from the maximum value. The range of [0, null, 1] is 1. The range of [null, 4] is 0.
- Variance—The variance of a numeric field in a track. The variance of [1] is null. The variance of [null, 1,1,1] is 1.
- Standard Deviation—The standard deviation of a numeric field. The standard deviation of [1] is null. The standard deviation of [null, 1,1,1] is 1.
| String |

## Output layer

The dwell output layer will contain fields based on the Output Type parameter. If an output type of Dwell Features or All Features is set, all input fields will be retained and additional fields representing information about the dwell will be added. If an output type of Mean Centers or Convex Hulls is set, the Track ID field of the input layer will be retained and additional fields representing the entire dwell event will be added. The tables below outline the fields that will be added.

#### Output fields added when the Dwell Features or All Features output type is chosen

Field name | Description | Field type |
---|---|---|

All input fields are retained | All input fields from the input dataset are retained. | Any |

DwellID | A sequentially numbered dwell ID value is created to uniquely identify the dwells. | String |

MeanX | The mean x-value (longitude) of the points that form the dwell. | Float64 |

MeanY | The mean y-value (latitude) of the points that form the dwell. | Float64 |

DwellDuration | The duration of the dwell event in milliseconds. | Int64 |

MeanDistance | The mean distance traveled between each point forming the dwell event. | Float64 |

DwellObservationCount | The number of observations that form the dwell event. | Int32 |

#### Output fields added when the Mean Centers or Convex Hulls output type is chosen

Field name | Description | Field type |
---|---|---|

All input fields are retained | All input fields from the input dataset are retained. | Any |

DwellID | A sequentially numbered ID value for the journey. The first journey for a given track is 1, the second journey is 2, and so on. These IDs are used as the basis for the values in the PreviousJourneyId and NextJourneyId fields. | String |

MeanX | The mean x-value (longitude) of the points that form the dwell. | Float64 |

MeanY | The mean y-value (latitude) of the points that form the dwell. | Float64 |

DwellDuration | The duration of the dwell event in milliseconds. | Int64 |

MeanDistance | The mean distance traveled between each point forming the dwell event. | Float64 |

DwellObservationCount | The number of observations that form the dwell event. | Int32 |

DwellStartTime | The start time of the dwell. This field is identified in the output as the Start Time key field. | Date |

DwellEndTime | The end time of the dwell. This field is identified in the output as the End Time key field. | Date |

## Limitations

- The input layer must contain point features with time-enabled features of type instant.
- Features that do not have time will not be included in the analysis.
- When calculating a convex hull and a dwell location is completely stationary (one unique location) or composed of two unique points that are colinear, a small value based on the tolerance of the spatial reference used in an analysis will be used as the width, height, or diameter to create output polygons instead of convex hulls. These polygons are used for visualization and do not represent the spatial extent of the dwell. Examples of these cases are described in the following table:
Input case Description Example Coincident (one spatially unique point)

If the input features are stacked (coincident), the resulting convex hull will be an invalid polygon.

In this example, the coincident input features are represented by the red dot in the center of the yellow polygon. The yellow polygon represents the output convex hull result for coincident points. The blue polygon shows what a convex hull looks like when there are four noncoincident points in a single dwell location.

Colinear (two spatially unique points)

If the input features are in a line (most common with two spatially unique points), the resulting convex hull will be an invalid polygon.

In this example, colinear points are represented by red dots within the yellow polygon. The yellow polygon represents the output convex hull result for colinear points.