Bike trip distribution and network analysis, Maple Prairie Active Transportation Plan
Weekday bike trips between 12 traffic analysis zones (TAZs) in Maple Prairie, distributed with a gravity model and assigned to the bike network. The analysis was run in QGIS and rerun in ArcGIS Pro. The two runs differed on 32 of 132 OD pairs because of two network errors. With the corrected network both tools return the same result, and the largest gap in the network is the missing link to Prairie Commons.
Bike network 2026, 52 links12 TAZs, 2025 populationWeekday bike tripsQGIS and ArcGIS ProPrepared Nov 5, 2026
Summary
Network gap · Prairie Commons
From Prairie Commons, the bike route to the high school is 3.4 times the straight-line distance
The Commons Trail from the Route 445 underpass dead-ends at Maple Run, 560 ft short of the Prairie Commons street network. The bike route to the high school is 2.54 mi against 0.75 mi straight-line, and 2.68 mi to downtown. With project AT-07 on the draft project list, a bike/ped bridge over Maple Run, the routes drop to 1.10 mi and 1.25 mi. Modeled trips from Prairie Commons to downtown then rise from 17 to 40 per weekday.
Action: rank AT-07 as a near-term project and confirm right-of-way and floodplain constraints at Maple Run.
QGIS vs. ArcGIS Pro
32 of 132 OD pairs differ, and each run has one network error
QGIS joined the Schoolhouse Trail to Broad Street where the trail passes under the street, because the two lines share a vertex. Ten OD pairs to and from South Hollow came out 0.50 mi too short. ArcGIS Pro, set to end-point connectivity, did not connect Meadowbrook Trail where it meets Linden Avenue mid-segment. All 22 OD pairs to and from Meadowbrook came out 0.38 mi too long.
Fixed in links_v3: shared vertex removed at the underpass and Linden Avenue split at the trail. Both tools now return identical distances.
Link volumes · Commerce Road
Commerce Road carries the most bike trips of any street with car traffic
East of Route 445, Commerce Road is the only link from the Broad Street signal to Oakmont Plaza, Prairie Commons, the business park and Creekside. The model assigns 223 bike trips per weekday to its 0.51 mi, a two-lane 35 mph street with no bike lane (LTS 4). That is more than Church Street into downtown (206). With AT-07 the volume drops to 135.
Action: a separated bike facility on Commerce Road is still needed with AT-07.
Desire lines and link volumes
Choose a run and the distance-decay parameter. Click a TAZ to see its OD pairs, then a second TAZ or a table row to see the route in all three runs. The link volume view shows trips assigned to the network, and the LTS view shows level of traffic stress by link.
View
Run
Project
0Bike trips per weekday
0Mean trip length
0Share of trips crossing Route 445
0OD pairs that differ from the corrected network
Hover a link, TAZ or desire line for values. Line width follows the number of trips. Click a selected TAZ again to clear it.
Details
Comparison of runs
Network distances for all 132 OD pairs compared with the corrected network, using the same TAZs and the same β.
Run parameters for the current view
Sources and method
Sources
MP_Bike_Network_2026.gpkgBike network with facility type, posted speed and LTS by link (town inventory and Virginia Road Centerlines), NAD83(2011) Virginia South (FIPS 4502), US survey feet. Layers links_v2 (runs) and links_v3 (corrected).52 links
MP_TAZ_Population_Destinations.gpkgTAZs with 2020 Census population updated for 2021–2025 residential permits, and a destination weight from jobs (LEHD LODES), school enrollment and retail square footage12 TAZs
MP_HTS_2024_Bike_Summary.xlsxHousehold travel survey summary: mean bike trip length 1.3 mi, 0.12 bike trips per resident per weekday in the plan target scenario3 sheets
ATP_Draft_Project_List.pdfDraft project list, including AT-07: bike/ped bridge over Maple Run from the Commons Trail to Prairie Commons, 560 ft18 pages
trip_distribution_gravity.pyPyQGIS script: OD matrix with QNEAT3 and gravity model, first run212 lines
od_cost_matrix_arcgispro.ipynbArcGIS Pro notebook: Network Analyst OD Cost Matrix on network dataset BikeND (MP_Network.gdb) and the same gravity step18 cells
README_rerun.mdRun order, software versions and parameter file for rerunning the analysis3 pages
Method
Each TAZ was given trip productions of population × 0.12 bike trips per weekday and attractions equal to its destination weight. The 0.12 rate is the plan target scenario in the travel survey summary, a planning assumption rather than an observed rate.
Network distances for all 132 OD pairs were computed as shortest paths on the bike network. Each TAZ centroid connects to the nearest node with a centroid connector of at least 200 ft.
Trips were distributed with a production-constrained gravity model: Tij = Pi · Aj · e−β·dij / Σk Ak · e−β·dik. β was calibrated to 0.93 per mile, which reproduces the 1.3 mi mean bike trip length in the travel survey.
Trips for each OD pair were assigned to the shortest path (all-or-nothing) to get volumes by link.
Links were classified by level of traffic stress (LTS 1–4) following Mekuria, Furth and Nixon, Low-Stress Bicycling and Network Connectivity (Mineta Transportation Institute Report 11-19, 2012). In mixed traffic, every street with a 35 mph or higher speed limit is LTS 4; at 25 and 30 mph the lower value applies to residential streets and streets without a marked centerline. A signalized crossing adds no stress of its own, so the Broad Street crossing keeps the stress of its 35 mph approach.
The same steps were run in QGIS (QNEAT3) and in ArcGIS Pro (Network Analyst). OD pairs whose network distances differed by more than 3 ft were traced to two network errors, fixed in links_v3: the Broad Street vertex at the Schoolhouse Trail underpass was removed, elevation fields were set at grade-separated crossings, and Linden Avenue was split at Meadowbrook Trail. With the corrected network both tools return identical distances.
Assumptions and limitations
Impedance is length only. Grade, signal delay and LTS do not affect route choice; LTS is shown for reference.
The model is production-constrained: trips from each TAZ are fixed. A project shifts trips between destinations but does not generate new trips.
All-or-nothing assignment gives one route per OD pair. Link volumes compare links with each other and are not a forecast of bike counts.
Intrazonal trips and trips to or from places outside Maple Prairie are not included.
Straight-line distance is measured between TAZ centroids. Circuity = network distance / straight-line distance.