Exercise 2: Creating a multimodal network dataset
Exercise 1 shows how to create a network for a single mode of transportation; however, travelers and commuters frequently use several modes of transportation, such as walking on sidewalks, driving on road networks, and riding on trains. Goods also travel on many modes of transportation like trains, ships, trucks, and airplanes. In this exercise, you create a multimodal network dataset from multiple feature classes within a feature dataset.
The data for this exercise and the other exercises in the Network Analyst tutorial is available on ArcGIS.com. After downloading the data, you can extract it wherever you like. It may be helpful, however, to extract it to C:\arcgis\ArcTutor since the tutorial refers to this path as the default location for the data.
Starting the New Network Dataset wizard
- Start ArcCatalog by clicking Start > All Programs > ArcGIS > ArcCatalog 10.1.
-
Enable the ArcGIS Network Analyst extension.
-
Click Customize > Extensions.
The Extensions dialog box opens.
- Check Network Analyst.
- Click Close.
-
Click Customize > Extensions.
-
If you don't already have a connection to the Network Analyst Tutorial folder, you need to create one by following the substeps below.
-
On the Standard toolbar, click the Connect To Folder button .
The Connect to Folder dialog box opens.
-
Navigate to the folder with the Network Analyst tutorial data.
The default location for the tutorial data is C:\ArcGIS\ArcTutor\Network Analyst\Tutorial.
-
Click OK.
A shortcut to the folder is added to Catalog Tree under Folder Connections.
-
On the Standard toolbar, click the Connect To Folder button .
- In the Catalog Tree, expand ...\ArcTutor\Network Analyst\Tutorial > Exercise02 > Paris.gdb.
-
Click the Transportation feature dataset.
The feature classes it contains are listed on the Contents tab of ArcCatalog.
-
Right-click the Transportation feature dataset and click New > Network Dataset.
The New Network Dataset wizard opens.
Naming the network and selecting source feature classes
-
Type ParisMultimodal_ND as the name of your network dataset.
- Leave Choose a version for your network dataset set to the latest version.
This option is useful if you need to share your network dataset with people who use older releases of ArcGIS. They will be able to open the network dataset that you create and share when you choose a version that is less than or equal to their ArcGIS release number. The drawback of doing this, however, is you won't be able to include any new network dataset functionality that was introduced in later releases of ArcGIS—controls in the New Network Dataset wizard to add that functionality will be disabled. If you don't need to share a network dataset, or the people you share with use the same ArcGIS release as you, choosing the latest version is the best option.
-
Click Next.
The wizard page for choosing the feature classes that participate in the network dataset is displayed.
-
Click Select All to select all the feature classes to participate as sources in the network.
- Click Next.
-
Click Yes to model turns in the network.
Although there are not any turn feature classes for this network, selecting Yes allows the network dataset to support global turns and gives you the option of adding turn features anytime after the network is created.
-
Click Next.
The page for setting connectivity is displayed.
Setting the connectivity and elevation policies
Connectivity in the ArcGIS Network Analyst extension begins with the definition of connectivity groups. Each edge source is assigned to exactly one connectivity group, and each junction source can be assigned to one or more connectivity groups. A connectivity group can contain any number of sources. How network elements connect depends on which connectivity groups the elements are in. For example, two edges created from two distinct source feature classes can connect if they are in the same connectivity group. If they are in separate connectivity groups, the edges won't connect unless they are joined by a junction that participates in both connectivity groups.
You will create connectivity groups in the following steps.
-
Click Connectivity to set up the connectivity model for the network.
The Connectivity dialog box opens.
-
Click the Group Columns up-arrow once to increase the number of connectivity groups to 2.
A column for the second connectivity group is created in the Connectivity Groups table.
- Click the Streets row and check the check box under the column labeled 2 to move the Streets source to connectivity group 2.
-
Click the Metro_Entrances row and check the check box under the column labeled 2 to include the source feature class in groups 1 and 2.
Metro entrances are points of transfer between the streets and the walkways that lead to the metro stations.
-
Change the Connectivity Policy of the Metro_Entrances row from Honor to Override.
- Click OK to return to the New Network Dataset wizard.
- Click Next.
-
No elevation data exists for this dataset; therefore, click None.
-
Click Next.
The wizard displays the attributes of the network dataset.
Each feature of Metro_Entrances is coincident with a vertex of the streets feature class. However, the streets feature class has a policy of endpoint connectivity. Since the metro entrances need to be connected to the streets at the coincident vertex, you must set Metro_Entrances to override the default endpoint connectivity of the streets.
Elevation settings in a network dataset further define connectivity. To understand why, assume two edges have coincident endpoints in x and y space but have different elevations (one endpoint is higher than the other). Furthermore, assume their connectivity policy is set to Endpoint. If elevation is ignored, the edges connect. However, if elevation is considered, they won't connect.
There are two ways to model elevations: using true elevation values from geometry or using logical elevation values from elevation fields.
Removing an attribute
Network attributes are properties of the network that control navigation. Common examples are cost attributes that function as impedances over the network and restriction attributes that prohibit traversal in both directions or one direction, like one-way roads.
Network Analyst analyzes the source feature class (or classes) and looks for common fields like Meters, Minutes (FT_Minutes and TF_Minutes, one for each direction), and Oneway. If it finds these fields, it automatically creates the corresponding network attributes and assigns the respective fields to them. (This can be viewed by clicking Evaluators.)
Network Analyst automatically configures five attributes for the Paris streets data: Hierarchy, Meters, Minutes, Oneway, and Road Class.
Although you could leave the hierarchy attribute on the network dataset, this short set of steps demonstrates how to remove a network attribute by removing Hierarchy.
- Click Hierarchy.
- Click Remove.
Now the network is left with four attributes.
Verifying and creating network attributes
One goal for this network dataset is to model both pedestrian times and drive times. When performing analyses on the network, this allows you to choose between the two time costs. For example, you can choose to answer a question like, What's the quickest route from point A to point B for a pedestrian who can walk along streets and ride the metro? or What's the quickest route for someone who's driving a car? To accomplish this, you must set up two time-cost attributes: PedestrianTime and DriveTime.
-
Select the Minutes row, click Rename, type DriveTime, and press ENTER.
-
Click Add.
The Add New Attribute dialog box opens.
- Type PedestrianTime in the Name text box.
- Set the Usage Type to Cost.
- Change Units to Minutes.
-
Set the Data Type to Double.
-
Click OK.
The Add New Attribute dialog box closes, and PedestrianTime is added to the list of attributes.
The Minutes attribute that Network Analyst automatically detected in the source data represents drive times, so you can change the name to something more appropriate.
The three cost attributes—Meters, DriveTime, and PedestrianTime—have yellow warning symbols that alert you to potential problems with the evaluators, which specify how the values of network attributes are calculated.
In the next three sections, you will configure the evaluators.
Configuring the Meters evaluator
You will set up various evaluators in this section and the following sections. The Meters evaluator calculates the distance cost for edges in the network; that is, it determines how long the edge is.
-
Select Meters and click Evaluators.
The Evaluators dialog box opens. Here you can view and edit the evaluator type and its value for each source in the network. You can see that junction and turn sources always have one associated evaluator, but edge sources have two: one for each direction of travel (the from-to and to-from directions).
-
While holding the SHIFT key, click the Transfer_Stations From-To row and click the Transfer_Street_Station To-From row.
The four rows with the warning symbols are selected.
-
Right-click any of the selected rows and click Type > Field.
The warning symbols change to red error symbols, which indicate an incomplete assignment of values for the field evaluator.
-
With the four rows still selected, right-click any one of them and click Value > SHAPE_LENGTH.
This assigns values from the SHAPE_LENGTH field in the selected source feature classes to the Meters attribute for their associated network edge elements.
-
Click Apply.
The Meters network attribute is configured to get length values. For the network elements created from Metro_Lines, Streets, Transfer_Stations, and Transfer_Street_Station sources, the attribute values are respectively pulled from their Meters, METERS, Shape_Length, and SHAPE_LENGTH fields.
Network Analyst inspects all source feature classes and tries to automatically assign evaluators for the Meters attribute. In this case, it discovered that the Metro_Lines and Streets sources had a field named Meters, so it set up evaluators to pull values from those fields. The same length values are assigned to the from-to and to-from directions of the edge sources.
Network Analyst was unable to find fields for meters in the Transfer_Stations and Transfer_Street_Station sources. Hence, a warning symbol is present to indicate there is a potential problem.
Configuring the DriveTime and Oneway evaluators
Since automobiles only travel on streets, the evaluators for the various sources should be set up accordingly.
-
From the Attribute drop-down list, choose DriveTime.
The DriveTime values for the Streets source have been populated automatically by Network Analyst; however, the other edge sources display warning symbols because they don't have values assigned. These sources need to be marked as restricted. Also, metro stations need to be restricted so that new network analysis objects can be prevented from locating there.
-
Make sure that all the rows with a warning symbol (Metro_Lines, Transfer_Stations, and Transfer_Street_Station) are selected.
If they aren't selected, select them by clicking one row and holding the CTRL key while clicking the other rows.
- Hold the CTRL key and click Metro_Stations to add it to the selection.
-
Right-click any one of the selected rows and click Type > Constant.
The same rows remain selected, and their evaluator type changes to Constant.
-
Again, right-click one of the selected rows, but this time click Value > Properties.
The Constant Value input box appears.
-
Type -1 and press ENTER.
The values for all the selected rows change to -1. Network Analyst treats any elements that have a cost value of -1 as restricted. So whenever the DriveTime attribute is used as impedance in network analyses, these sources are not traversable.
- Click Apply.
-
From the Attribute drop-down list at the top of the Evaluators dialog box, choose Oneway.
The Attribute Values frame now displays the evaluators for the Oneway network attribute, which has automatically been assigned values for the Streets source.
The sources related to the metro system don't need one-way restrictions.
-
Click either one of the Streets rows and click the Evaluator Properties button .
You can see the expression used to determine whether a street is one-way.
- Click Cancel to return to the Evaluators dialog box.
Configuring the PedestrianTime evaluator
The PedestrianTime network attribute represents the time it takes a pedestrian to travel on the network. In this set of steps, you will assign appropriate travel times for a pedestrian who can ride the metro system or walk along streets.
-
From the Attribute drop-down list at the top of the Evaluators dialog box, choose PedestrianTime.
The rows for the following sources should already be selected: Metro_Lines, Transfer_Stations, and Transfer_Street_Station.
- Right-click one of the selected rows and click Type > Field.
-
Again, right-click one of the selected rows, but this time click Value > TRANSITTIM.
The TRANSITTIM fields store the time costs for a pedestrian to use the transit system. The streets also need pedestrian time values, but you calculate them differently.
- Click the Streets From-To row to select it. Hold the CTRL key and click the Streets To-From row to select both rows.
-
Right-click one of the selected rows and click Value > Properties.
The Field Evaluators dialog box opens.
- Double-click the field METERS to move it into the Value = text box and finish typing the expression as [METERS] * 60 / 3000 in the Field Evaluators dialog box, as shown below.
-
Click Verify to ensure that the expression is correct and fix it if necessary.
-
Click OK to return to the Evaluators dialog box.
- Click OK to return to the New Network Dataset wizard.
- Click Next.
Configuring directions
When routes are calculated on your network dataset, you have the ability to produce driving directions to accompany the results. A network dataset is required to have at least one edge source with a text attribute (for street name information) and a distance attribute to show how far it will be before the next relevant maneuver is required.
- Click Yes to set up directions.
-
Click Directions.
The Network Directions Properties dialog box opens.
-
On the General tab, click the Source drop-down list and choose Streets.
- In the Street Name Fields list, click Primary to select it.
-
Click in the Name column and choose FULL NAME.
- Click OK to return to the New Network Dataset wizard.
-
Click Next.
A summary of all the settings is displayed for your review.
Now you will specify the fields used to report directions for network analysis results.
Creating and building the network dataset
After setting up how you want the network dataset to function, you need to create and build it. The creation process is quick and essentially creates a container for the logical network.
-
Click Finish.
A progress bar opens showing you that Network Analyst is creating the network dataset.
-
Click Yes.
The Build Network Dataset progress bar opens; it will disappear when the build process is finished.
The new network dataset, ParisMultimodal_ND, is added to ArcCatalog along with the system junctions feature class, ParisMultimodal_ND_Junctions.
- Preview the network dataset by clicking its name and clicking the Preview tab.
- Close ArcCatalog.
Once the network is created, the system asks if you want to build it. The build process determines which network elements are connected and populates the attributes of the network dataset. You must build the network before you can perform any network analysis on it.