-
Notifications
You must be signed in to change notification settings - Fork 3
Accessibility
If the base_yearis not equal to scenario_name, daily and hourly parking cost residing in the parcel file will be updated by a script named update_parking.py, which is located in scripts\utils folder. New parking costs are provided by two external files. File names and formats are shown as follows.
| Input File | Location | Description | Source |
|---|---|---|---|
| daily_parking_costs.csv | inputs\accessibility | new daily parking cost by ensemble | copied from base_inputs\landuse folder |
| hourly_parking_costs.csv | inputs\accessibility | new hourly parking cost by ensemble | copied from base_inputs\landuse folder |
| parking_gz.csv | inputs\ | EMME ensemble (gz) for parking cost | copied from base_inputs\landuse folder |
At this time, PSRCTAZ and its ensemble gz are used to relate parcel file and new parking cost. It is because PSRC has defined districts of parking cost and our BKRCast TAZ outside of Eastside area are too big to incorporate PSRC's parking cost district. It can be changed later.
Daily and hourly parking spaces (PARKDY_P and PARKHR_P) will not be updated by update_parking.py. This information needs to be manually updated in parcel file. For parcels in districts with non-zero parking costs, each parcel is assumed to have minimum number of parking spaces. For now, region-wide average parking space per parcel is assumed for parcels with zero parking spaces and non-zero parking cost. The parcel file with updated parking price is saved in inputs\accessibility\ folder.
This directory contains input files for parcel accessibility calculations; the accessibility calculations involve generating a buffered parcel file:
| File | Description | Source |
|---|---|---|
| all_streets_links_2014.csv | All street network links | copied from base_inputs\accessibility folder |
| all_streets_nodes_2014.csv | All street nodes | copied from base_inputs\accessibility folder |
| transit_stops.csv | A list of transit stops with submode flags | copied from base_inputs\network folder |
The configuration is saved in accessibility_configuration.py, located in scripts\accessibility folder.
| Setting | Value | Description |
|---|---|---|
| parcels_file_name | parcels_urbansim.txt |
Primary parcel file with land-use data |
| buffered_parcels | buffered_parcels.txt |
Buffered parcel file name |
| land_use_output_folder | outputs/landuse |
land use output folder |
| output_parcels | outputs/landuse/buffered_parcels.dat |
Output buffered parcel file |
| transit_stops_name | inputs/network/transit_stops.csv |
Transit stops file |
| nodes_file_name | inputs/accessibility/all_streets_nodes_2014.csv |
All street nodes file |
| links_file_name | inputs/accessibility/all_streets_links_2014.csv |
All street links file |
| daily_parking_cost | inputs\\accessibility\\daily_parking_costs.csv |
Daily parking cost |
| hourly_parking_cost | inputs\\accessibility\\ hourly_parking_costs.csv |
Hourly parking cost |
| max_dist | 24140.2 |
Maximum buffered distance in meters (15 miles?) |
| distances | {1: 2640,2: 5280} |
Buffer distances, key=buffer type (1 or 2), value=distance in feet. The two buffer distances are used in calculating accessibilities to different land-use. The two buffer distances are sort of for walk and bike, but buffer variables are used in a lot of models, including destination choice, and we tested whether a somewhat smaller or large buffer worked better in destination and used that. For transit accessibility, there are fields in the buffered parcel file providing distance to transit stops. |
| parcel_attributes | {"sum": ["HH_P", "STUGRD_P", "STUHGH_P", "STUUNI_P", "EMPMED_P", "EMPOFC_P", "EMPEDU_P", "EMPFOO_P", "EMPGOV_P", "EMPIND_P","EMPSVC_P", "EMPOTH_P", "EMPTOT_P", "EMPRET_P","PARKDY_P", "PARKHR_P", "NPARKS", "aparks", "daily_weighted_spaces", "hourly_weighted_spaces"], "ave": [ "PPRICDYP", "PPRICHRP"],} |
Attributes of the input parcel file; key = functions applied when aggregating over buffers, value = fields |
| col_order | [parcelid, xcoord_p, ycoord_p, sqft_p, taz_p, lutype_p, hh_p, stugrd_p, stuhgh_p, stuuni_p, empedu_p, empfoo_p, empgov_p, empind_p, empmed_p, empofc_p, empret_p, empsvc_p, empoth_p, emptot_p, parkdy_p, parkhr_p, ppricdyp, pprichrp, hh_1, stugrd_1, stuhgh_1, stuuni_1, empedu_1, empfoo_1, empgov_1, empind_1, empmed_1, empofc_1, empret_1, empsvc_1, empoth_1, emptot_1, parkdy_1, parkhr_1, ppricdy1, pprichr1, nodes1_1, nodes3_1, nodes4_1, tstops_1, nparks_1, aparks_1, hh_2, stugrd_2, stuhgh_2, stuuni_2, empedu_2, empfoo_2, empgov_2, empind_2, empmed_2, empofc_2, empret_2, empsvc_2, empoth_2, emptot_2, parkdy_2, parkhr_2, ppricdy2, pprichr2, nodes1_2, nodes3_2, nodes4_2, tstops_2, nparks_2, aparks_2, dist_lbus, dist_ebus, dist_crt, dist_fry, dist_lrt, dist_park] |
Column names in the output buffered parcel file. The order of the fields matters in all DaySim files. |
| transit_attributes | ["tstops"] |
Attribute in the transit file. 1 if a node is a transit stop |
| intersections | ["nodes1", "nodes3", "nodes4"] |
Attributes in the intersection file. nodes1 for a dead end node, nodes3 for T intersection, nodes4 for a four-or-more-leg intersection |
In DaySim, it is important to have measures not only of within a particular parcel but also what lies in the area immediately surrounding each parcel. These measures are created by defining a “buffer” area around each parcel and counting what lies inside the buffer. These variables can then be used in DaySim in a way similar to how zonal land use and density variables are used in TAZ-based models, with the advantage that the buffer is defined in exactly the same way for each parcel. The process of calculating buffered variables is called accessibility calculations.
The buffer variables that DaySim uses include:
- The number of households in the buffer;
- Employment (number of jobs) in the buffer in various employment sectors;
- Enrollment in schools in the buffer, segmented by grade schools and colleges;
- The number of spaces and average price of paid off-street parking in the buffer;
- The number of transit stops within the buffer (segmented by sub-mode, if relevant);
- The number of street intersections in the buffer, segmented by 1-node (dead-end or cul-de-sac), 3-node (T-junction), and 4+node intersections
In addition, DaySim also uses the distance from the parcel centroid to the nearest transit stop (by transit sub-mode, if relevant), as well as the distance to the nearest open space area while simulating models.
The accessibility process requires all street network (all_streets_links_2014.csv and all_streets_nodes_2014.csv) inputs to determine parcel to parcel, parcel to intersection and parcel to transit stop distance. The process calculates buffer variables for a parcel by summing landuse variables of all parcels within a certain buffer distance of the particular parcel. As BKRCast is based on SoundCast, the all-street network is provided by PSRC. The all-street network is generally denser than the EMME highway network. The all-street network can be updated when there are significant changes in the network (more or fewer links). As the accessibility calculations use only link length (distance), the other link or node attributes do not matter.
The accessibility calculation is done by:
- map each parcel to its nearest node (in all street network) including intersections and transit stops;
- calculate buffer variables within half a mile and one mile distance from each node. Attribute name with
_1refers to sum within half a mile, while_2refers to within one mile.
-
Model System
-
Model Setup
-
Model Network
-
Land Use
-
Model Components
-
Model Directory
-
Calibration