Skip to main content

Make Last Mile Delivery Analysis Layer (Network Analyst Tools)

Summary

Creates a last mile delivery network analysis layer and sets its analysis properties. A last mile delivery analysis layer is useful for optimizing a set of routes using a fleet of vehicles. The layer can be created using a local network dataset or a service hosted online or in a portal.

Usage

  • This tool is typically used as the first step in a network analysis workflow. Once the layer is created, you can add inputs to it using the Add Locations tool and solve the analysis using the Solve tool.

    Learn more about the network analysis layer workflow

  • The analysis network used for a last mile delivery analysis must have at least one travel mode, one cost attribute with time units, and one cost attribute with distance units, as well as a time zone attribute.

  • When ArcGIS Online or an ArcGIS Enterprise portal whose routing services are configured using ArcGIS Online is used as the input network data source, solving the analysis will consume credits and will be subject to certain limits, such as the number of allowed inputs.

    Learn more about credit consumption and analysis limits in network analysis

  • By default, the new analysis layer's data will be created in a new, automatically-named feature dataset in the Current Workspace geoprocessing environment, which is usually the project geodatabase. Table-based data will be created at the root level of the same geodatabase because tables cannot be stored in a feature dataset. You can override this behavior using the Analysis Geodatabase and Analysis Feature Dataset Name parameters.

  • Although this tool can be used in a Python script, the recommended best practice for performing network analysis in Python is to use the solver classes in the arcpy.nax module instead.

    Learn more about performing network analysis in Python.

Parameters

Label Explanation Data type

Network Data Source

The network dataset or service on which the network analysis will be performed.

The parameter can be specified using the following:

  • The catalog path to a network dataset.

  • A network dataset layer

  • The URL for ArcGIS Online or an ArcGIS Enterprise portal configured with standard routing services

To use a portal URL, you must be signed in to the portal with an account that has routing privileges.

Learn more about network analysis using routing services

When using ArcGIS Online or an ArcGIS Enterprise portal whose routing services are configured using ArcGIS Online as the input network, solving the analysis will consume credits and will be subject to certain limits, such as the number of allowed inputs.

Learn more about credit consumption and analysis limits in network analysis

The network must have at least one travel mode, one cost attribute with time units, and one cost attribute with distance units, as well as a time zone attribute.

Network Dataset Layer; String

Layer Name

(Optional)

The name of the network analysis layer that will be created.

String

Travel Mode

(Optional)

The name of the travel mode that will be used in the analysis. The travel mode represents a collection of network settings, such as travel restrictions and U-turn policies, that determine how a pedestrian, car, truck, or other medium of transportation moves through the network. Travel modes are defined on your network data source.

An arcpy.na.TravelMode object and a string containing the valid JSON representation of a travel mode can also be used as input to this parameter.

The travel mode's impedance attribute must have units of time.

String

Time Units

(Optional)

Specifies the time units that will be used by the analysis layer's properties and the temporal fields of the analysis layer's sublayers and tables (network analysis classes). This value does not need to match the units of the time cost attribute.

  • MinutesThe time units will be minutes. This is the default.

  • SecondsThe time units will be seconds.

  • HoursThe time units will be hours.

  • DaysThe time units will be days.

String

Distance Units

(Optional)

Specifies the distance units that will be used by the analysis layer's properties and the distance fields of the analysis layer's sublayers and tables (network analysis classes). This value does not need to match the units of the optional distance cost attribute.

Caution:

The Inches, Centimeters, Millimeters, and Decimeters options are not available when the network data source is a service.

  • MilesThe distance units will be miles. This is the default.

  • KilometersThe distance units will be kilometers.

  • FeetThe distance units will be feet.

  • YardsThe distance units will be yards.

  • MetersThe distance units will be meters.

  • InchesThe distance units will be inches.

  • CentimetersThe distance units will be centimeters.

  • MillimetersThe distance units will be millimeters.

  • DecimetersThe distance units will be decimeters.

  • Nautical MilesThe distance units will be nautical miles.

String

Earliest Route Start Date

(Optional)

The default earliest start date for routes. This date is used for all routes for which the EarliestStartDate field in the Routes sublayer is null. When no parameter value is specified, all rows in the Routes sublayer must specify a value in the EarliestStartDate field.

Although you can specify both a date and a time for this parameter, only the date is used. To set the earliest start time for routes, use the Earliest Route Start Time parameter.

Caution:

Although the other Network Analyst solvers allow you to use special dates to model a day of the week or the current date instead of a specific, static date, the last mile delivery solver does not. You must choose a specific date.

Date

Earliest Route Start Time

(Optional)

The default earliest start time for routes. This time of day is used for all routes for which the EarliestStartTime field in the Routes sublayer is null. When no parameter value is specified, all rows in the Routes sublayer must specify a value in the EarliestStartTime field.

Although you can specify both a date and a time for this parameter, only the time is used. To set the earliest start date for routes, use the Earliest Route Start Date parameter.

Date

Max Route Total Time

(Optional)

The maximum allowed total time for each route. The value can be any positive number.

The value is used for all routes for which the MaxTotalTime field in the Routes sublayer is null. When no parameter value is specified, all rows in the Routes sublayer must specify a value in the MaxTotalTime field.

The value is interpreted in the units specified in the Time Units parameter.

Double

Time Zone for Time Fields

(Optional)

Specifies the time zone that will be used for the input date-time fields supported by the tool.

Specifying the date-time values in UTC is useful if you do not know the time zone in which the orders or depots are located or when you have orders and depots in multiple time zones and you want all the date-time values to start simultaneously.

  • Local time at locationsThe date-time values associated with the orders or depots will be in the time zone in which the orders and depots are located. For routes, the date-time values are based on the time zone in which the starting depot for the route is located. If a route does not have a starting depot, all orders and depots across all the routes must be in a single time zone. This is the default.

  • UTCThe date-time values associated with the orders, depots, and routes will be in coordinated universal time (UTC) and are not based on the time zone in which the orders or depots are located.

String

Sequence Gap

(Optional)

The gap in numerical values to leave in the Sequence field in the Orders sublayer between adjacent orders when the analysis is solved. The value acts as a multiplier for the actual sequence of orders on each route. For example, if the gap is 5, the first order on the route will have a Sequence field value of 5, the second order on the route will have a Sequence field value of 10, the third 15, and so on. This parameter helps support inserting orders after the initial route plan has been created because the new orders can be inserted into the sequence gaps.

The value must be a positive integer. The default is 1.

The first time the analysis is solved, the Sequence field values will be populated with sequential values using the designated sequence gap. On subsequent solves of the same analysis, the Sequence field values of existing orders will be maintained, and new orders will be inserted into the gaps using available integer values for the Sequence field that are not in use by other orders. If the sequence gap is set to 1, the sequence values will always be updated to contiguous values for every solve.

Long

Ignore Invalid Order Locations on Solve

(Optional)

Specifies whether invalid order locations will be ignored.

  • CheckedInvalid order locations will be ignored so that the analysis will succeed using only valid locations.

  • UncheckedInvalid order locations will not be ignored and will cause the analysis to fail. This is the default.

Boolean

Output Route Shape

(Optional)

Specifies the shape type that will be used for the route features that are output by the analysis.

Regardless of the output shape type specified, the best route is always determined by the network impedance, not Euclidean distance. This means that only the route shapes are different, not the underlying traversal of the network.

  • Along networkThe output routes will have the exact shape of the underlying network sources. The output includes route measurements for linear referencing. The measurements increase from the first stop and record the cumulative impedance to reach a given position.

  • No linesNo shape will be generated for the output routes.

  • Straight linesThe output route shape will be a single straight line between the stops. This is the default.

String

Generate Directions on Solve

(Optional)

Specifies whether directions will be generated when running the analysis.

For an analysis in which generating turn-by-turn directions is not needed, turn directions generation off to reduce the time it takes to solve the analysis.

  • CheckedTurn-by-turn directions will be generated on solve.

  • UncheckedTurn-by-turn directions will not be generated on solve. This is the default.

Boolean

Analysis Geodatabase

(Optional)

The file geodatabase workspace where the new network analysis layer's sublayer data will be stored. When this parameter is not specified, the sublayer data will be created in the Current Workspace geoprocessing environment, which is usually the project geodatabase.

Learn more about the analysis data source of a network analysis layer

Workspace

Analysis Feature Dataset Name

(Optional)

The name to use for the new feature dataset that the tool will create in the analysis geodatabase to store the network analysis layer's sublayer data. When not specified, the feature dataset will be created with a random unique name.

Learn more about the analysis data source of a network analysis layer

String

Derived output

Label Explanation Data type

Network Analyst Layer

The new network analysis layer.

Network Analyst Layer

Environments

Current Workspace

Licensing information

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes