Network analysis

Network analysis is a type of analysis performed on transportation networks, such as roads, railways, and bus networks. Examples of network analysis operations include finding the best route across a city, finding the closest emergency vehicle or facility, identifying a service area around a location, or servicing a set of orders with a fleet of vehicles.

You can perform network analysis in GeoAnalytics Engine using the Create Routes, Create Service Areas, Find Closest Facilities or Generate OD Matrix tools.

Network analysis with GeoAnalytics Engine requires the geoanalytics-natives jar. See the Install and set up documentation for more information on how to install this jar in your environment.

Network datasets

The network analysis tools require a network dataset to model transportation networks. Network datasets are created from source records, which can include lines, points, and turns, and they store the connectivity of the source records.

Connectivity is important, given that records are normally unaware of each other. For example, if two line records intersect, neither line is aware of the other. Similarly, a point at the end of a line doesn't have any inherent information that lets it know about the line. However, network datasets keep track of the source records that are coincident. They also have a connectivity policy to further define which coincident records are truly connected.

Network datasets in GeoAnalytics Engine

You will need to create a network dataset to be able to perform network analysis in GeoAnalytics Engine. Make sure to create a network dataset that covers the extent of the input data used when performing analysis. To learn how to create a network dataset, see Create a network dataset.

GeoAnalytics Engine network analysis tools support two network datasource formats:

Loading network data from a file geodatabase is not supported. Using a network service, such as the ArcGIS Online network analysis service, is not supported.

The network dataset must be locally accessible to all nodes in your Spark cluster. For more information, see Locator and network dataset setup.

Network analysis concepts

Travel modes

Travel modes on a network dataset define how a pedestrian, car, truck, or other mode of transportation moves through the network. A travel mode can be general—for example, to model typical trucks—or more specific, such as to model ladder trucks or rescue trucks.

A travel mode is essentially a template consisting of a long list of travel settings that define the physical characteristics of a vehicle or pedestrian. Those characteristics are considered when performing a network analysis to define how the vehicle or pedestrian travels and where it can go. Selecting a predefined travel mode allows you to efficiently and consistently set a number of properties that are appropriate for the mode of travel you intend to model. The benefits are time savings and reduced complexity—you don't need to remember and configure, with each analysis, the parameter values that most accurately characterize the vehicles you're modeling.

Travel modes are defined on the network datasource or using JSON format for a custom travel mode. By default, the network analysis tools use the default travel mode predefined in the network datasource for the analysis.

All network analysis tools have the setTravelMode() setter. This setter accepts any of the travel modes defined on the network dataset, or a JSON string that defines a custom travel mode.

Cost attributes

Certain attributes are used to measure and model impedances, such as travel time (transit time on a street) or demand (the volume of garbage picked up on a street). These attributes are apportionable along an edge; that is, they are divided proportionately along the length of an edge. For example, if travel time is modeled as a cost attribute, traversing half an edge will take half the time of traversing the whole edge: if the travel time to traverse the edge is 3 minutes, it takes 1.5 minutes to traverse half the edge. If you are looking for a 1.5-minute route along this edge, the route feature is created from the first half of the edge feature.

Network analysis often involves the minimization of a cost (also known as impedance) during the calculation of a path. Common examples include finding the fastest route (minimizing travel time) or the shortest route (minimizing distance). Travel time and distance are also cost attributes of the network dataset.

The Generate OD Matrix and Find Closest Facilities tools support cost attributes using the .accumulateAttributes() method.

How the Create Routes tool works

The Create Routes tool uses a network dataset to understand the connectivity of a transportation network to find the best route between a series of input points. A route is calculated for each record in the input DataFrame. The output DataFrame contains a linestring column with the routes that visit the input points.

Use cases

  • A distribution center for grocery stores assigns routes to each of the food delivery trucks to minimize transportation costs.
  • A health department creates an optimized route daily for each of the health inspectors to maximize the number of inspections performed each day.

For more information about how to use Create Routes, see the tool documentation.

How the Create Service Areas tool works

The Create Service Areas tool uses a network dataset to generate reachable service areas around facility locations. These service areas are accessible within a given cutoff cost from the facility location. For example, the 10-minute walk-time service area around a subway station indicates a region where residents can walk to the station within ten minutes. The tool accepts point geometries as the input DataFrame, representing the facilities around which the service areas will be created. The output DataFrame can contain polygons that represent reachable areas within the impedance cutoffs or lines that represent the reachable roads before the cutoffs are exceeded.

Use cases

  • A retail company is planning to expand its chain of stores to better serve its customers. The company wants to identify potential locations for new stores that would maximize their customer base and minimize the competition with existing stores. They also want to understand the coverage area and accessibility of each potential store location to ensure they are strategically positioned. The tool calculates the service areas around each potential store location based on the road network and travel time or distance constraints.
  • A network company wants to generate 2 and 4-hour service areas to check if their customers that have signed up for a service agreement can actually be reached within the given time constraint. Their contract promises a 2 or 4-hour turn-around time in case a network switch/router goes down.

For more information about how to use Create Service Areas, see the tool documentation.

How the Find Closest Facilities tool works

The Find Closest Facilities tool uses a network dataset to find a specified number of closest facilities to an incident based on a specified travel mode. The tool requires two point DataFrames as inputs representing the incidents and the facilities. The tool returns the travel costs and best routes between the incidents and the chosen facilities.

Use cases

  • A national healthcare department wants to find the three closest urgent care facilities for every one of their customers so they can disseminate this information with them in their next newsletter.

For more information about how to use Find Closest Facilities, see the tool documentation.

How the Generate Origin Destination Matrix tool works

The Generate OD Matrix tool uses a network dataset to create an origin-destination cost matrix from multiple origins to multiple destinations. It returns a table that contains the travel cost, including travel time and travel distance from each origin to each destination within the specified impedance cutoff. The tool requires two point-geometry DataFrames as an input, representing the origins and destinations.

Use cases

  • A city's transportation department wants to analyze the commuting patterns of its residents to understand the flow of people between residential areas and major employment centers. The goal is to identify traffic bottlenecks, optimize public transportation routes, and plan infrastructure improvements to reduce congestion and travel times. The tool calculates the travel time or distance matrix between each origin-destination pair, considering the road network and any transportation restrictions.
  • GIS analysts in local government offices need to be able to calculate how many and which grocery stores are within a 15-minute drive from each census tract. Depending on the result, they will be able to determine if people living below poverty have access to grocery stores. Transportation engineers will take this information into account when evaluating and improving the transportation infrastructure.

For more information about how to use this tool, see the Generate OD Matrix tool documentation.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.