Route analysis layer

This topic describes the route analysis layer's feature classes and analysis properties.

Learn more about the route solver

Stops feature class

The Stops feature class initially stores the locations you want the output route or routes to visit. After running the analysis, it stores the locations that were reached by the route, those that weren't (and the reason they weren't reached), and the order in which the stops were visited, as well as other information.

The following tables describe the input fields, input/output fields, and output fields of the Stops feature class:

Stops: Input fields

Input fieldDescription

ObjectID

The system-managed ID field.

Shape

The geometry field indicating the geographic location of the network analysis object.

Name

The name of the stop.

A name, which you can edit, is assigned automatically when the stop is added to the map.

RouteName

The name of the route to which the stop belongs. Stops with the same RouteName value are grouped together.

Using this field, you can group stops into different routes, and the output attempts to generate one route for each group of stops.

  • If some stops have route names, they are grouped into a route with the same name. If some stops have RouteName values and others do not, those without route names are listed as unassigned in the results and are left out of the solution.
  • If none of the stops have a RouteName value, all the stops belong to the same route and one route is generated.
  • RouteName values are not case sensitive. For example, Route 1 will be interpreted as the same route as ROUTE 1.

TimeWindowStart

This field stores the earliest time the stop can be visited.

If TimeWindowStart is set to 10:00 AM and the route arrives at the stop at 9:50 AM, there is a wait time of 10 minutes that is added to the total time.

By default, if the network dataset has a time-zone attribute, the date and time specified in this field refer to the same time zone as the edge, or street, on which the stop is located. If you want the date and time to be interpreted as UTC, change the timeZoneUsageForTimeFields property of the route analysis layer using the RouteSolverProperties class in Python.

The time zone for the time window fields can be specified using the time_zone_for_time_fields parameter on the Make Route Analysis Layer geoprocessing tool.

Learn how to specify the time for the time window

TimeWindowEnd

This field stores the latest time the stop can be visited.

Together, the TimeWindowStart and TimeWindowEnd fields make up the time window within which a route can visit the stop.

If a location has a TimeWindowEnd value of 11:00 AM, and the earliest a route can reach the stop is 11:25 AM, a violation of 25 minutes is noted. Additionally, the stop is symbolized to display that it has a time window violation.

By default, if the network dataset has a time-zone attribute, the date and time specified in this field refer to the same time zone as the edge, or street, on which the stop is located. If you want the date and time to be interpreted as UTC, change the timeZoneUsageForTimeFields property of the route analysis layer using the RouteSolverProperties class in Python.

The time zone for the time window fields can be specified using the time_zone_for_time_fields parameter on the Make Route Analysis Layer geoprocessing tool.

Learn how to specify the time for the time window

Attr_[Cost]

(for instance, Attr_Minutes, where Minutes is the travel cost)

This field specifies how much additional time spent or distance traveled will occur at the stop.

To determine the units of the field, refer to the units of the network cost attribute specified in the field name. For instance, if there is a DriveTime cost attribute that has a unit of minutes, Attr_DriveTime is in minutes.

A zero or null value indicates the stop requires no service time or extra distance traveled.

You may want to add more time on a stop to represent how long it takes to make a delivery, install equipment, or perform some other task at the stop. Similarly, adding extra distance may be useful to account for a long driveway or other road that isn't represented by your network dataset.

If you have multiple network cost attributes, you'll see multiple Attr_[Cost] fields. Consequently, you may have more than one time- or distance-based Attr_[Cost] field. The field values you provide are only referenced if the cost attribute referred to in the field name is used in the analysis, for instance, to minimize or accumulate time or distance.

CurbApproach

The CurbApproach field specifies the direction a vehicle may arrive at and depart from the network location. The shortest path between two points can change depending on the direction of travel permitted when arriving at or departing from a location. There are four choices (their coded values are shown in parentheses):

  • Either side of vehicle (0)—The vehicle can approach and depart the point in either direction. U-turns are allowed. Choose this setting if a vehicle can make a U-turn at the location or if it can pull into a driveway or parking lot and turn around.
  • Right side of vehicle (1)—When the vehicle approaches and departs the point, the curb must be on the right side of the vehicle. A U-turn is prohibited.
  • Left side of vehicle (2)—When the vehicle approaches and departs the point, the curb must be on the left side of the vehicle. A U-turn is prohibited.
  • No U-Turn (3)—When the vehicle approaches the point, the curb can be on either side of the vehicle; however, the vehicle must depart without turning around.
Learn more about U-turns and curb approach

LocationType

This field describes the stop type.

  • Stop (0)—Represents a location that the route will visit. This is the default.
  • Waypoint (1)—Represents a location that the route will travel through without making a stop. Waypoints can be used to force the route to take a specific path (to go through the waypoint) without being considered an actual stop. Waypoints do not appear in driving directions.
  • Break (2)—Represents a location where the route stops for the driver to take a break.

Note:
A time window only states when a vehicle can arrive at a stop, not when the Attr_[Cost] must also be completed. To account for service time and leave before the time window is over, subtract Attr_[Cost] from the TimeWindowEnd field.

Learn more about time windows

Stops: Input/output fields

Input/output fieldDescription

Sequence

As an input field, this number represents the order in which the stops will be visited. You can use the Sequence parameter on the Route Layer tab to specify whether the output route follows the sequence specified in this field or overrides it to generate an optimal sequence that minimizes backtracking.

Within a route (that is, for stops with the same RouteName field value), the sequence number should be greater than 0 but not greater than the total number of stops grouped in the route. Also, the sequence number should not be duplicated among any stops with the same RouteName field value.

Status

Indicates the status of the point with respect to its location on the network and the outcome of the analysis. The possible values are the following:

  • 0 (OK)—The point was located on the network.
  • 1 (Not Located)—The point was not located on the network and consequently was not included in the analysis.
  • 2 (Network element not located)—The network element identified by the point's network location fields can't be found. This can occur when a network element where the point should be was deleted, and the network location was not recalculated.
  • 3 (Element not traversable)—The network element that the point is located on is not traversable. This can occur when the element is restricted by a restriction attribute.
  • 4 (Invalid Field Values)—Field values fall outside a range or coded-value domain. For example, a negative number exists where positive numbers are required.
  • 5 (Not Reached)—The point can't be reached by the solver. The point may be on a separate, disconnected area of the network from the other inputs, or barriers or restrictions prevent travel to or from the point.
  • 6 (Time window violation)—The point could not be reached within the designated time windows. This status only applies to network analysis types that support time windows.
  • 7 (Not located on closest)—The closest network location to the point is not traversable because of a restriction or barrier, so the point has been located on the closest traversable network feature instead.

Network location fields

  • SourceID
  • SourceOID
  • PosAlong
  • SideOfEdge
  • SnapX
  • SnapY
  • SnapZ
  • DistanceToNetworkInMeters

Together, these properties describe the point on the network where the object is located.

Learn more about locating inputs on a network

Stops: Output fields

Output fieldDescription

ArriveCurbApproach

Indicates which side of the vehicle the curb is on when the vehicle approaches the stop. If the stop's CurbApproach value is set to Right side of vehicle, the ArriveCurbApproach after solving is Right side of vehicle. However, if the CurbApproach value is set to Either side of vehicle or No U-Turn, the ArriveCurbApproach can be on the right or left side, depending on which produces the overall shortest path.

DepartCurbApproach

Indicates which side of the vehicle the curb is on when the vehicle departs the stop. If the network location's CurbApproach value is set to Right side of vehicle, the DepartCurbApproach after solving is Right side of vehicle. However, if the CurbApproach value is set to Either side of vehicle or No U-Turn, the DepartCurbApproach can be on the right or left side, depending on which produces the overall shortest path.

Cumul_[Cost]

(for instance, Cumul_Minutes, where Minutes is the cost for the network)

This field is the total time, distance, or other travel cost it takes to reach the stop. This includes the travel cost incurred in traveling to the stop, the cost at the stop, and the costs of all the previous stops.

If a route analysis layer determines it takes 10 minutes to visit two stops, and the second stop has an Attr_Minutes value of 5, the Cumul_Minutes value is 15 minutes.

Wait_[Cost]

(for instance, Wait_Minutes, where Minutes is the travel cost)

This field stores the time spent waiting for the time window to open (TimeWindowStart) when the route arrives early at the stop.

CumulWait_[Cost]

(for instance, CumulWait_Minutes, where Minutes is the travel cost)

This field stores a sum of how much time has been spent waiting for time windows to open (TimeWindowStart). It measures idle time. It includes the wait time from the current stop and all previous stops visited by the route.

Violation_[Cost]

This field is a measure of how late the route arrived after the time window closed (TimeWindowEnd). Specifically, it stores the amount of time between the end of the time window and when the route arrived at the stop.

CumulViolation_[Cost]

This field stores the cumulative violation time (Violation_[Cost]) from the current stop and all previous stops visited by the route.

ArriveTime

The date and time value indicating the arrival time at the stop.

When using traffic data that covers multiple time zones, the time zone for this time-of-day value is taken from the network element on which the order is located.

DepartTime

The date and time value indicating the departure time from the stop.

When using traffic data that covers multiple time zones, the time zone for this time-of-day value is taken from the network element on which the order is located.

ArriveTimeUTC

The date and time value indicating the arrival time in coordinated universal time (UTC).

DepartTimeUTC

The date and time value indicating the departure time in coordinated universal time (UTC).

Routes feature class

The Routes feature class stores the resulting route, or routes, from the analysis. It is an output-only class; the route analysis layer overwrites or deletes any route features while running the analysis.

The following table describes the output fields of the Routes feature class:

Routes: Output fields

Output fieldDescription

ObjectID

The system-managed ID field.

Name

The name for the route is assigned automatically when the route layer is solved, either by reading the value from the RouteName field of the Stops feature class or, if that value is null, by integrating the name of the first stop in the route and the name of the last stop, for example, Stop 1 – Stop 8.

Shape

The geometry field indicating the geographic location of the network analysis object.

FirstStopID

The ObjectID value of the route's first stop.

LastStopID

The ObjectID value of the route's last stop.

StopCount

The number of stops visited by the route.

Total_[Cost]

(for instance, Total_Minutes, where Minutes is the travel cost for the network)

The total distance, time, or other travel cost from the beginning of the first stop to the end of the last stop. The total travel cost and the Attr_[Cost] of the visited stops are included in this value.

TotalWait_[Cost]

(for example, TotalWait_Minutes, where Minutes is the travel cost of the network)

This field stores the route's overall wait time, which is the time spent at stops waiting for time windows to open.

TotalViolation_[Cost]

(for example, TotalViolation_Minutes, where Minutes is the travel cost of the network)

This field stores the route's overall violation time at stops. Violation time is added when the route arrives at a stop after the time window has ended; it's the difference between the ArriveTime and TimeWindowEnd.

StartTime

The time the route begins.

EndTime

The time the route is complete.

StartTimeUTC

The start time of the route in coordinated universal time (UTC).

EndTimeUTC

The end time of the route in coordinated universal time (UTC).

Route analysis layer properties

The following subsections list properties you can set on the route analysis layer. They are found on the Route Layer tab, which is available only if your route layer or one of its sublayers is selected in the Contents pane.

Analysis

Use the options in this section to estimate the credits and run the analysis.

Analysis section

Run

Once you load input features and set analysis properties, click the Run button to run the analysis. If the analysis uses credits, and the number of credits estimated for the solve exceeds the available credits, you will see an error message that blocks the solve or a warning message that will allow you to choose whether to proceed with the solve.

The run button may appear different based on the source of the network dataset.

  • Run—The network analysis layer is referencing a local network data source.
  • Run Service—The network analysis layer is referencing a network data source in ArcGIS Online.
  • Run—The network analysis layer is referencing a network data source in an enterprise portal.

Estimate Credits

The Estimate Credits button can be used to estimate the number of service credits that will be consumed by running the analysis on the selected network analysis layer. When this button is enabled, it indicates that the network analysis layer will consume credits when solved.

Estimate Credits enabled

The Estimate Credits button is enabled when the following occur:

Estimate Credits disabled

The Estimate Credits button is disabled when the following occur:

When you click the Estimate Credits button, a dialog box appears with an estimate of how many credits are likely to be consumed solving the current analysis. The credit is estimated based on the number of input locations used in the analysis. The actual credits consumed may change based on the output generated by the Solve operation. Depending on how your organization has set up the credit budgeting and allocation settings, the available credits may not be shown. Also, credit estimation may not always be possible if the network data source is an ArcGIS Enterprise portal with routing services configured from ArcGIS Online.

Learn more about the credit usage by each analysis type

Estimated credit consumption and total credits available
Note:

Depending on the configuration of the ArcGIS Online organization account and the signed-in user, solving the analysis may be blocked or may show a warning if the estimated credits exceed the available credits.

Input Data

Use the options in this section to import the input features to participate in the analysis.

Input Data section

Import Stops

Use Import Stops Import Stops to load features from another data source, such as a point feature layer, into the Stops feature class.

Import Barriers

Use the Import Point Barriers Import Point Barriers, Import Line Barriers Import Line Barriers, or Import Polygon Barriers buttons Import Barriers to load features from another data source, such as another feature layer, into one of the barriers feature classes (point barriers, line barriers, or polygon barriers).

Create Features

Use the Create Features button Create Features to open the Create Features pane. Select from the available templates to create features in the current map.

Travel Settings

Use the options in the Travel Settings section to select the travel mode and optimize the route.

Travel Settings section

Mode

The Mode drop-down list allows you to choose a travel mode, which is a group of settings that together model the movement of pedestrians, cars, trucks, or another travel mode. The choices available in the drop-down list depend on the travel modes that are configured on the network data source that the network analysis layer is referencing.

Sequence

The Route solver always finds the shortest path between two stops. However, you can potentially shorten the overall route by calculating the best stop sequence that minimizes backtracking. Optimizing stop order is also known as TSP.

Sequence gives you the following options to preserve all, some, or none of the stop sequences:

  • Use Current Use Current—Preserves the relative stop order specified in the Sequence field of the stops.

    Any stops having null Sequence field values are inserted after those with non-null values.

  • Find Best Find Best—Does not preserve the sequence of any stops, which means the route can begin at any stop location. All stops are reordered to find the shortest possible route.

  • Preserve First & Last Stop Preserve First & Last Stop—The route starts and ends at the first and last stop, respectively. The intermediate stops are reordered to find the shortest possible route.

    If the input stops have a mix of null and non-null Sequence field values, the route begins at the stop with the lowest non-null value and ends at the last stop in the feature class that has a null value.

  • Preserve First Stop Preserve First Stop—The route starts at the first stop. The subsequent stops are reordered to find the shortest possible route.

    If the input stops have a mix of null and non-null Sequence field values, the route begins at the stop with the lowest non-null value and continues to the other stops, which are optimally reordered regardless of whether they have null or non-null values.

  • Preserve Last Stop Preserve Last Stop—The route ends at the last stop. The preceding stops are reordered to find the shortest possible route.

    If the input stops have a mix of null and non-null Sequence field values, the route ends at the last stop in the feature class that has a null value. All preceding stops are reordered for optimality regardless of whether they have null or non-null values.

Accumulate Cost Attributes

The Accumulate Cost Attributes drop-down menu Accumulate Cost Attributes button can be used to configure accumulated cost attributes. The drop-down menu is unavailable if the network data source is a service, the output geometry types do not include lines, or there are no cost attributes. The attributes are grouped by unit domain shown as the group header (for example, Time or Distance). A checked check box indicates that the analysis layer will accumulate the checked attribute during the solve.

Accumulate Cost Attributes drop-down menu

When multiple analysis layers of the same layer type are selected, the check box shows a mixed state if all layers do not share the same checked status for one attribute. In the following image, the WeekendFallbackTravelTime attribute is selected for multiple layers, so it has a check mark.

Check box showing a mixed state

If all selected layers share the checked status for an attribute, the check box shows that state.

Check boxes are checked for the attributes.

Date and Time

Use the options from the Date and Time section to specify the date, time, and day to be used in the analysis.

Date and Time section

Learn more about date and time

Arrive Depart Date-Time Type

The Arrive Depart Date-Time Type drop-down list is available when the cost units are time based. From the drop-down list, choose whether a specific time and date value is given to indicate the time that the route or routes depart from their first stop. The primary reason for setting a specific time and date is to solve the analysis using dynamic traffic conditions or public transit schedules; however, to use traffic or public transit in the analysis, the network dataset or route service must include traffic data or public transit.

The options in the drop-down list are as follows:

  • Not Using Time—Regardless of whether the network data source includes time-based data, the results are based on static travel times—the travel times on a network edge don't vary throughout the day. The Time of Day and Date text boxes are unavailable.

  • Date & Time—Specify the time as a time of day and calendar date. The Time of Day and Date text boxes are available to provide this information.

  • Day of Week—Specify a time of day and day of the week. The Time of Day and Date text boxes are available to provide this information.

  • Today—Specify a time, and the day is assumed to be the current date. The Time of Day text box is available to provide the time of day, and the Date text box is set to Today and is unavailable so it can't be changed.

  • Now—When you run the analysis, the time and date are set to the current time and date. This is useful if your network dataset is configured with live traffic data, and the routes are distributed to drivers for implementing immediately after running the analysis. The Time of Day and the Date text boxes are unavailable so they can't be changed.

Time of Day

Specify the depart time of the day.

See the Arrive Depart Date-Time Type section to see when this option is enabled.

Date

Specify the depart day of the week by typing one of the following values in the Date text box:

  • Monday
  • Tuesday
  • Wednesday
  • Thursday
  • Friday
  • Saturday
  • Sunday

See the Arrive Depart Date-Time Type section to see when this option is enabled.

Reference Time Zone

From the Reference Time Zone drop-down list Reference Time Zone button, you can choose which time zone to use in the analysis. The options are as follows:

  • Local Time at Locations
  • UTC (Universal Coordinated Time)

Output Geometry

Use the options from the drop-down menu to choose how the output will display in the map.

Output Geometry section

Output Geometry Linear Shape Type

The route analysis always solves least-cost paths along the network using the settings you specify, but in addition to displaying these true paths along the network on the map, you can also represent the routes on a map using simple straight lines between stops or no lines at all.

  • No Lines—No output linear shapes are generated.
  • Straight Lines—Output simplified geometry as straight lines.
  • Along Network—Generate true paths along the network on the map.

Drawing

Use the Symbology button Symbology to access the symbology pane for the active network analysis layer. You can configure the symbology for the sublayers of the active network analysis layer by choosing one of the following options:

  • Single Color—This option is available for all network analysis layer types. All feature sublayers in the active network analysis layer except barriers will use the same single symbol with the specified color. For example, choosing a single color of blue for a Route layer will convert all the Stops and the Routes features to the same color of blue.
  • Color Linked—This option is available for Route and Vehicle Routing problem layers. It applies a color scheme to the sublayers such that related features are symbolized with the same color. This symbology configuration symbolizes related features with the same color, making it easier to visually distinguish different routes and their associated features in the map. For example, for a Route layer with multiple routes, each route and the stops assigned to that route will be assigned matching colors.

Learn more about network analysis layer symbology

Filtering

You can filter the network analysis sublayers to only show features related to the selected features in the primary layer.

Add or remove filters on the primary and related sublayers

  • Add Filters Filter by Selection—Applies filters to sublayers of the network analysis layer to only show features related to the selected feature of the primary sublayer. Definition queries are automatically created and applied on the relevant sublayers. Every time the Add Filters button is clicked, a new definition query is created with the same name replacing the previous definition query.

    When a feature is selected in the primary sublayer Routes, a definition query called Route is created on the Routes sublayer (primary layer) and the related sublayer Stops.

  • Remove Filters Remove Filter—Deletes the definition query on the primary and the related sublayers.

Directions

Use the options from the Directions section to specify whether directions should be generated.

Directions section

Output on Solve

Turn on this option to generate directions upon solve for the current network analysis layer.

Show Directions

When the Output on Solve option is checked, on clicking the Show Directions button Directions, the Directions pane appears with turn-by-turn directions for each route in the solution.

Share As

Share the output of the analysis by using the available option of Route Layers.

Share As section

Share as Route Layers

The Route Layers button Share As Route Layer allows you to share the results from the analysis as route layers. This button opens the Share as Route Layers geoprocessing tool. After it runs, the results from the analysis are shared as route layer items in the portal.