Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updating branch to most recent #260

Merged
merged 161 commits into from
Dec 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
161 commits
Select commit Hold shift + click to select a range
9031057
calibrated atwork tour stop distances
aletzdy Jul 17, 2024
771f62f
Merge branch 'ABM3_develop' into 165-calibrate-at-work-tours-out-of-d…
aletzdy Oct 22, 2024
1985141
Changed network settings to read skims in omxz format
JoeJimFlood Oct 23, 2024
0059fb9
Changed except to exclude in settings_mp in order to work with Activi…
JoeJimFlood Oct 23, 2024
1437dc9
Updated logfile name
JoeJimFlood Oct 23, 2024
595578c
Updated vehicle type choice settings to work with version 1.3
JoeJimFlood Oct 23, 2024
43b8c5d
Added cmd file to convert skims to OMXZ
JoeJimFlood Oct 23, 2024
efb9269
Updated convertSkimsToOMXZ.cmd to delete omx skims to save space
JoeJimFlood Oct 23, 2024
ecede3b
Added NewPrice to columns to include in vehicle type choice alternatives
JoeJimFlood Oct 23, 2024
e4084b3
Set airport models to read skims in omxz format
JoeJimFlood Oct 23, 2024
d0f4d1f
Added skim conversion to omxz to master_run.py
JoeJimFlood Oct 23, 2024
22880ec
Added logic version to trip_scheduling.yaml
JoeJimFlood Oct 23, 2024
5ec927c
Changed environment name from asim_baydag to asim_131 in resources fo…
JoeJimFlood Oct 23, 2024
bd60412
Added recoding of trip_veh_age in write trip matrices preprocessor as…
JoeJimFlood Oct 24, 2024
fa004bc
Updated environment name from asim_131 to asim_132 as v1.3.2 was just…
JoeJimFlood Oct 24, 2024
0be169e
Reset coef_calib_flexfleet in trip mode choice
JoeJimFlood Oct 24, 2024
e080567
Added calibration coefficients for zero-auto households traveling wit…
JoeJimFlood Oct 24, 2024
e1d577a
Applied TNC_shared_IVTFactor to non-flexible fleet travel as those al…
JoeJimFlood Oct 24, 2024
4496685
Updated trip mode choice spec for crossborder model to use same TNC s…
JoeJimFlood Oct 24, 2024
a983c33
Added TNC_shared_IVTFactor to calculations of timeDrive and distanceD…
JoeJimFlood Oct 24, 2024
0f0cf30
Revert bike coefficients, move to properties file
aber-sandag Oct 25, 2024
bc43df3
Update bike minutes per mile based on bike speed
aber-sandag Oct 25, 2024
8b53895
Don't check access time for owned ebike trips
aber-sandag Oct 25, 2024
e8e2494
Include access time and cost for ebike owner trips in non-ebike tours…
aber-sandag Oct 25, 2024
02c865c
Added arguments in run_proc() to track skim conversion in the logbook
JoeJimFlood Oct 25, 2024
7f59dfe
Fix incorrect ebike tour variable name
aber-sandag Oct 25, 2024
ba4b728
Merge remote-tracking branch 'origin/ABM3_develop' into bike_fixes
aber-sandag Oct 25, 2024
7015b02
Corrected skim file formats in common airport network settings
JoeJimFlood Oct 25, 2024
8227dc8
Updated tour and trip mode choice calibration coefficients for flexib…
JoeJimFlood Oct 25, 2024
7f93f4c
Updated convertSkimsToOMXZ.cmd to work
JoeJimFlood Oct 26, 2024
80273dc
Use bike logsum for micromobility
aber-sandag Oct 26, 2024
47e822c
fix ebike_owner in trip destination
aber-sandag Oct 29, 2024
c88c83d
Updated scenario manager to work with ruamel.yaml version 0.18.6
JoeJimFlood Oct 29, 2024
e97d1b9
Revert bike logsum for micromobility (continue to use bike time)
aber-sandag Oct 29, 2024
69f69a8
Updated crossborder preprocessing to reflect change in geopandas 1.0
JoeJimFlood Oct 30, 2024
633a0d6
Updated extensions to work with ActivitySim 1.3.2
JoeJimFlood Oct 30, 2024
8918da6
Fix ebike owner in trip destination sample
aber-sandag Oct 30, 2024
472be96
Added TAZ-level active skims to travel time reporter
JoeJimFlood Oct 30, 2024
b7b7131
Corrected spelling of settings
JoeJimFlood Oct 30, 2024
41b6ed9
Removed pipeline and inject from update_tables as those are no longer…
JoeJimFlood Oct 31, 2024
db7ca61
Separated maz and taz skims and added call of function to add taz ski…
JoeJimFlood Oct 31, 2024
4499b59
Updated check_disk_usage.py to accomodate for removal of activitysim.…
JoeJimFlood Oct 31, 2024
9cc0349
Chaged config.setting() to state.settings() in update_tables.py
JoeJimFlood Oct 31, 2024
a650866
Specified that update_tables and check_disk_space need to have State …
JoeJimFlood Oct 31, 2024
94f5131
Removed max_blend_distance from network settings
JoeJimFlood Oct 31, 2024
3c872a3
Corrected which skims should read omx and omxz files
JoeJimFlood Oct 31, 2024
a7f5ed4
Removed microtransit access to transit from travel time reporter
JoeJimFlood Nov 1, 2024
2c77dda
Moved addition of TAZ-level active skims to function reading active s…
JoeJimFlood Nov 1, 2024
8e8bb31
Moved query for values under time threshold out of unpivot_skims() an…
JoeJimFlood Nov 1, 2024
33e11a7
Update network-import-tned.md
cundo92 Nov 1, 2024
a462dd2
Made expansion_matrix an attribute of the TravelTimeReporter class so…
JoeJimFlood Nov 1, 2024
305050e
Removed unpivoting of taz skims as they are already in that format
JoeJimFlood Nov 1, 2024
408a9e8
Updated update_tables with new way of getting output_table_settings
JoeJimFlood Nov 1, 2024
72e1196
Set to resume after write_trip_matrices to debug update_tables
JoeJimFlood Nov 1, 2024
15efab4
Made changes of reading output tables settings to reflect that the se…
JoeJimFlood Nov 1, 2024
259c5de
Fix household reindex in trip destination preprocessor, add ebike tou…
aber-sandag Nov 1, 2024
c53b14d
Changed loading of configs\common\outputs.yaml to use yaml.safe_load(…
JoeJimFlood Nov 1, 2024
ebe173f
Replaces setting('model_name') with state.settings.model_name
JoeJimFlood Nov 1, 2024
95bbefb
Moved time under time_threshold query back to unpivot_skims
JoeJimFlood Nov 1, 2024
630d229
Obtained common configs directory using state.filesystem.get_configs_…
JoeJimFlood Nov 1, 2024
cd6e24d
Converted configs_dir to string before checking what's in it
JoeJimFlood Nov 1, 2024
65a8e76
Apply shared TNC ivt factor to only non-ff trips
aber-sandag Nov 1, 2024
90188e7
Remove commented out taxi/tnc time in airport write_trip_matrices
aber-sandag Nov 1, 2024
b9918fa
Use TNC_transit access times to calculate mt/nev access times
aber-sandag Nov 1, 2024
16d1eac
Merge pull request #232 from SANDAG/ff_zeroauto_calib
bhargavasana Nov 1, 2024
08dec09
Updated reading of write trip matrices settings to work with Activity…
JoeJimFlood Nov 1, 2024
9433458
Added state.filesystem as argument to WriteTripMatricesSettings.read_…
JoeJimFlood Nov 1, 2024
f2405f8
unpivot_skim returns unpivoted skims; it is not done in place
JoeJimFlood Nov 1, 2024
5517214
Merge remote-tracking branch 'origin/ABM3_develop' into bike_fixes
aber-sandag Nov 2, 2024
ee62c90
Changed from assignment of maz times to taz times from vectorized to …
JoeJimFlood Nov 4, 2024
75196dd
Fixed microtransit access dist type. This file only has 3 columns.
bhargavasana Nov 4, 2024
0851bf5
self.skims['bike_time'] and self.skims['walk_time'] are Series, not D…
JoeJimFlood Nov 4, 2024
223a9f9
Updated with correct column names for MAZ-level active skims
JoeJimFlood Nov 4, 2024
545e84c
Replaced for loop in read_active_skims() with vectorized assignment a…
JoeJimFlood Nov 4, 2024
770c07f
Disable micromobility when bike time = 0
aber-sandag Nov 4, 2024
647eb7e
Documentation: Transit Skimming and Assignment
JiaXu1024 Nov 4, 2024
4869a45
Lowered threshold in travel time reporter to 30 minutes
JoeJimFlood Nov 4, 2024
a046f19
Updated filenames in datalake exporter to reflect change in travel ti…
JoeJimFlood Nov 4, 2024
0c34db6
Wrote initial draft of v15.2.0 release notes
JoeJimFlood Nov 5, 2024
4777d7b
Merge remote-tracking branch 'origin/ABM3_develop' into bike_fixes
aber-sandag Nov 5, 2024
d462214
Update network-import-tned.md
cundo92 Nov 5, 2024
6e8e466
Removed str.format() call during read_active_skims() as it's not nece…
JoeJimFlood Nov 5, 2024
d7807ae
Merge pull request #233 from SANDAG/ttr_taz_active_skims
bhargavasana Nov 5, 2024
c32069d
Merge remote-tracking branch 'origin/ABM3_develop' into bike_fixes
aber-sandag Nov 5, 2024
aa5746b
Merge pull request #235 from SANDAG/wiki_import_network
bhargavasana Nov 5, 2024
3eda1fd
Documentation: update description of access modes
JiaXu1024 Nov 5, 2024
8839591
Merge pull request #237 from SANDAG/docs_update_sxu
bhargavasana Nov 6, 2024
d34130c
Updated merge of input and output persons tables in update_tables to …
JoeJimFlood Nov 6, 2024
5f3f497
update reporting docs
anneku Nov 6, 2024
fd99057
Add option to skip validation
aber-sandag Nov 6, 2024
c89e0dd
Updated update_tables so that the replacing of null values doesns't h…
JoeJimFlood Nov 6, 2024
060dc6a
Added documentation updates to v15.2.0 release notes
JoeJimFlood Nov 6, 2024
b3f3e98
Updated logfile filename in logging.yaml for special market models
JoeJimFlood Nov 7, 2024
1290e3a
Added blank shadow_pricing.yaml file in common airport configs
JoeJimFlood Nov 7, 2024
778e851
Fix MAZ-Stop walk times, move max dist back to 2zoneSkim parameters
aber-sandag Nov 7, 2024
1acb03f
Merge pull request #240 from SANDAG/fix_transit_walk
bhargavasana Nov 7, 2024
747bd5c
Merge pull request #239 from SANDAG/skip_validation
bhargavasana Nov 7, 2024
e94ac44
Removed CHOICE_COL_NAME from tour_mode_choice.yaml in common airport …
JoeJimFlood Nov 7, 2024
b1b344e
Added airport mode choice nesting as workaround to issue #908
JoeJimFlood Nov 7, 2024
f2c9f8e
Removed non-existent (and unnecessary) fields from TOURs_MERGED_CHOOS…
JoeJimFlood Nov 7, 2024
f4e4e93
Don't allow ebike for escort tours
aber-sandag Nov 7, 2024
7418c83
Updated airport_returns.py to work with ActivitySim 1.3
JoeJimFlood Nov 8, 2024
0bafcfd
Copied outputs.yaml from common configs to common airport configs
JoeJimFlood Nov 8, 2024
5ee64fe
Merge pull request #241 from SANDAG/bike_fixes
bhargavasana Nov 8, 2024
a3d52b9
Use walk distance instead of straight line for max maz-stop distance
aber-sandag Nov 8, 2024
4500ac2
Merge pull request #242 from SANDAG/maz-stop-max-walk
bhargavasana Nov 8, 2024
ba2959a
Added copy of outputs.yaml from configs/common to configs/common_airp…
JoeJimFlood Nov 8, 2024
cee3b5a
Added blank shadow_pricing.yaml file to visitor configs
JoeJimFlood Nov 8, 2024
6ffd5fb
Fix inaccessible premium MAZ-stop pairs
aber-sandag Nov 8, 2024
88ffb55
Merge pull request #243 from SANDAG/fix-maz-stop-inaccessible
bhargavasana Nov 8, 2024
3d12c0b
Documentation: updated persons.csv
mansisandag Nov 8, 2024
d726051
Doc updates
mansisandag Nov 8, 2024
cb9b3b3
removed truckregiontype
mansisandag Nov 8, 2024
5c76d26
Updated v15.2.0 release notes with commits made on November 8, 2024
JoeJimFlood Nov 8, 2024
1a985bb
Remove unnecessary ivt settings
kelvinnguyenn Nov 12, 2024
b5e36e0
Remove unnecessary ivt settings
kelvinnguyenn Nov 12, 2024
c986aa6
Merge pull request #245 from SANDAG/remove_unused_settings_kng
kelvinnguyenn Nov 12, 2024
24ab100
(wiki) introduce documentation on external aggregate models
mwe-sandag Nov 12, 2024
9e76c26
Merge pull request #238 from SANDAG/docs_update_aku
anneku Nov 12, 2024
749466e
Added protect_columns to tour_od_choice settings in crossborder configs
JoeJimFlood Nov 12, 2024
bd7fd5d
Replaced references of omx skims with omxz skims in resident_preproce…
JoeJimFlood Nov 13, 2024
e698d57
Changed slash direction in command to copy outputs.yaml from configs\…
JoeJimFlood Nov 14, 2024
65807ed
Removed CHOICE_COL_NAME from tour_mode_choice.yaml in crossborder and…
JoeJimFlood Nov 14, 2024
bea8250
Set crossborder model to read omxz skims
JoeJimFlood Nov 14, 2024
aebe263
Final update of v15.2.0 release notes before release
JoeJimFlood Nov 14, 2024
0beb10d
Merge pull request #246 from SANDAG/external_models_docs_update
bhargavasana Nov 14, 2024
e3f416b
Merge pull request #247 from SANDAG/v15_2_0_release_notes
bhargavasana Nov 14, 2024
f1fe3ca
Merge pull request #244 from SANDAG/docs_update
bhargavasana Nov 14, 2024
ff1a7dd
Added TNC-transit skim removal to v15.2.0 release notes
JoeJimFlood Nov 14, 2024
e0ab785
Corrected pull request number for TNC-transit skim removal
JoeJimFlood Nov 14, 2024
2edfeaa
Merge pull request #248 from SANDAG/v15_2_0_release_notes_2
bhargavasana Nov 14, 2024
3d988ab
Update release-notes.md
bhargavasana Nov 14, 2024
92a3a5c
updated tour mode choice calibration script
aletzdy Nov 15, 2024
48f0fc6
adding tour mode choice calibration target
aletzdy Nov 15, 2024
cef0252
trip mode choice calibration files
aletzdy Nov 15, 2024
c652f67
Update 2022 ebike ownership, calibrate bike/ebike share for ebike owners
aber-sandag Nov 16, 2024
01fa2da
Merge pull request #249 from SANDAG/ABM3_develop_calibrationScripts
bhargavasana Nov 18, 2024
92945e4
Updated update_tables to replace null values for fields with categori…
JoeJimFlood Nov 18, 2024
efcea32
Merge branch 'asim_13_no_sharrow' into ABM3_develop
bhargavasana Nov 19, 2024
0e40786
Revert "Merge branch 'asim_13_no_sharrow' into ABM3_develop"
bhargavasana Nov 19, 2024
0aa3a48
Remove "Skip copy of bike logsum"
aber-sandag Nov 20, 2024
20c6a85
Documentation: editing of outpage page of wiki for consistency
mansisandag Nov 20, 2024
804bf61
remove input checker from ABM3
JiaXu1024 Nov 20, 2024
714faae
Bike mode share calib prep
aber-sandag Nov 21, 2024
e82c6d5
Merge pull request #251 from SANDAG/165-calibrate-at-work-tours-out-o…
bhargavasana Nov 21, 2024
d52c9a8
Merge pull request #252 from SANDAG/docs_overall_design
bhargavasana Nov 21, 2024
7aa3fe1
Merge pull request #253 from SANDAG/remove_copy_bikels
bhargavasana Nov 21, 2024
18989af
Merge pull request #255 from SANDAG/remove_inputchecker
bhargavasana Nov 21, 2024
4e57650
Merge pull request #254 from SANDAG/docs_update
bhargavasana Nov 21, 2024
3fc3553
Calibrate bike-adjacent tour share
aber-sandag Nov 21, 2024
6173896
Increased AM threshold to 45 minutes in travel time reporter
JoeJimFlood Nov 21, 2024
8035909
Increased MD threshold to 45 minutes in travel time reporter
JoeJimFlood Nov 21, 2024
942aefa
Update file names in datalake_exporter.py for transit time reporter t…
JoeJimFlood Nov 21, 2024
abe294e
Merge pull request #256 from SANDAG/ttr_45min
bhargavasana Nov 21, 2024
edddebd
Add option to skip travel time reporter
aber-sandag Nov 21, 2024
cc716a5
Updated bike-adjacent tour calibration
aber-sandag Nov 22, 2024
6f86d67
Merge pull request #257 from SANDAG/skip_travel_time_reporter
bhargavasana Nov 22, 2024
08dc513
Merge pull request #258 from SANDAG/ebike_calib
bhargavasana Nov 23, 2024
184cf04
Lowered telecommute frequency alternative-specific coefficients to in…
JoeJimFlood Nov 27, 2024
df5fe06
Lowered work from home regional calibration coefficient to increase V…
JoeJimFlood Nov 27, 2024
b28941f
Merge pull request #259 from SANDAG/abm3_lower_wfh
bhargavasana Nov 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 38 additions & 3 deletions docs/design/demand/external.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,42 @@
# External Models
The external aggregate travel models predict characteristics of US-SD and SD-US/MX travel behavior for all non-commercial, non-visitor vehicle trips and selected transit trips. Note that non-commercial MX-SD trips are forecast in the crossborder model, and non-commercial SD-US and SD-MX trips are forecast in the resident model.

Details aggregate external models.
![](../../images/design/external_external_county_cordons.png)

## External Internal Model
## External Model Estimation of Trip Counts by Type
The total count of trips by production and attraction location was estimated in a series of steps:

## External External Model
1. The number of crossborder trips made by Mexican residents to attractions in San Diego was previously determined.
2. The trips in the resident travel survey were expanded to estimate the total number of trips made by San Diego residents to attractions in Mexico.
3. To derive an estimate of the number of US-MX trips, the number of MX-SD (1) and SD-MX (2) trips was subtracted from the total number of border-crossings.
* The distribution of US-MX trips among external stations on the US-side of San Diego County will be assumed to be proportional to the total volume at each external station, regardless of the point of entry at the Mexican border.
4. The number of US-MX trips was then subtracted from the total number of trips in the SCAG cordon survey to arrive at an estimate of the combined total of US-US, US-SD, and SD-US trips with routes through San Diego County.
5. Finally, the actual amounts of US-US, US-SD, and SD-US trips at each external station were estimated from the remaining trips (4) according to their proportions in the successfully geocoded responses in the SCAG cordon survey.

## External Model Design Overview
The behavioral characteristics of the different types of external trip were derived from the various data sources available as follows:

* US-US trips: a fixed external station OD trip matrix was estimated from the SCAG cordon survey.
* */src/main/emme/toolbox/model/external_external.py*
* US-MX trips: a fixed external station OD trip matrix was estimated from the SCAG cordon survey, Customs and Border Protection vehicle counts, and Mexican resident border-crossing survey as described in the previous section.
* */src/main/emme/toolbox/model/external_external.py*
* US-SD trips: rates of vehicle trips per household for each external county were developed from the SCAG cordon survey, and the trips were distributed to locations in San Diego County according to a destination choice model estimated from the interregional survey.
* Intermediate stops and transit trips are not modeled in this segment due to the small contribution of these events to the total demand in the segment.
* */src/main/emme/toolbox/model/external_internal.py*

### External-Internal Destination Choice Model
The external-internal destination choice model distributes the EI trips to destinations within San Diego County. The EI destination choice model explanatory variables are:

* Distance
* The size of each sampled MGRA

Diurnal and vehicle occupancy factors are then applied to the total daily trip tables to distribute the trips among shared ride modes and different times of day.

### External-Internal Toll Choice Model
The trips are then split among toll and non-toll paths according to a simplified toll choice model. The toll choice model included the following explanatory variables:

* In-vehicle-time
* Toll cost

## Sources
information primarily taken from this SANDAG document: [link to pdf](https://www.sandag.org/-/media/SANDAG/Documents/PDF/data-and-research/applied-research-and-performance-monitoring/surveys/appendix-t-SANDAG-travel-demand-model-documentation.pdf)
21 changes: 20 additions & 1 deletion docs/design/report/report.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,22 @@
# Reporting Framework

Details of reporting components.
**Reporting Process Overview:**

1. **ABM3 model output files are stored to data lake:**
- Model outputs are written to the data lake immediately following ABM3 model run completion.
- Output CSV files are converted to Parquet format before writing to the data lake.
- Each model run is assigned a unique scenario ID.

2. **Data lake files are loaded to Delta tables:**
- Each output file in the data lake is loaded into its corresponding Delta table. For example, the trips output file is loaded into the trips Delta table, the persons output file is loaded into the persons Delta table, etc.
- Delta tables store the results from all model runs, organized by scenario ID.

3. **Delta Tables are processed in Databricks:**
- Delta tables are read, transformed, and aggregated as needed to support analysis and reporting requirements.
- Once transformations are complete, the resulting data is written back to the data lake as new Delta tables or used to update existing tables.
- These new Delta tables are also organized by scenario ID, making it easier to manage and query specific versions of processed data.

4. **Delta tables are ingested by Power BI:**
- Power BI reads the data from the Delta tables.
- Power BI report templates with various metrics of interest are automatically refreshed with new model run outputs.
- Metrics can easily be compared across different scenario IDs.
59 changes: 58 additions & 1 deletion docs/design/supply/network-import-tned.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,60 @@
# Network Import from TNED

Details of importing and processing the ETL network.
This section describes the procedure by which the ABM3 model system imports (into Emme) network (highway and transit) files along with a general description of the different network files.

## Network Files

The ABM3 model system has been configured to be compatible with SANDAG's Transportation Network Editing Database (TNED) system, which is utilized to edit, maintain and generate transportation networks. The TNED network files, generated via an ETL (i.e., Extract, Tranform, Load) procedure, serve as inputs to the ABM3 model system's import network procedure and are produced in text file, shapefile, geodatabase table and geodatabase feature class geodatabase formats. There are, additionally, some non-TNED input network files which are manually maintained.

The following are the required network files used during the Emme import network procedure:

| **File** | **Source** | **Description** |
|--------------------------------|---------------------|----------------------------------------------------------------------------------------------|
| EMMEOutputs.gdb/TNED_HwyNet | TNED | Roadway network links |
| EMMEOutputs.gdb/TNED_HwyNodes | TNED | Roadway network nodes |
| EMMEOutputs.gdb/TNED_RailNet | TNED | Rail network links |
| EMMEOutputs.gdb/TNED_RailNodes | TNED | Rail network nodes |
| EMMEOutputs.gdb/Turns | TNED | Turn prohibition records |
| special_fares.txt | Manually Maintained | Special fares in terms of boarding and incremental in-vehicle costs |
| timexfer_{time_of_day}.csv | Manually Maintained | Timed transfer pairs of lines, by period. Where time_of_day refers to EA, AM, MD, PM, or EV. |
| trrt.csv | TNED | Attribute data (modes, headways) for the transit lines |
| trlink.csv | TNED | Sequence of links (routing) for the transit lines |
| trstop.csv | TNED | Stop data for the transit lines |
| MODE5TOD.csv | Manually Maintained | Global (per-mode) transit cost and perception attributes |
| vehicle_class_toll_factors.csv | Manually Maintained | Factors to adjust the toll cost by facility name and class |

## Import Network Procedure

This section describes the main steps carried out during the Emme import network procedure. The entire process is executed by the [import_network.py](https://github.com/SANDAG/ABM/blob/ABM3_develop/src/main/emme/toolbox/import/import_network.py) script.

#### Create Modes

This step creates the different combinations of traffic and transit modes that will get applied to the network links. A mode defines a group of vehicles or users which have access to the same parts of the network. Modes are used in both the traffic and transit assignments to define the available network for each class of demand. Each mode is uniquely identified by a single case-sensitive character. The modes which have access to a given link are listed on that link, and each link must allow at least one mode.

#### Create Roadway Base Network

This step creates the base roadway network by importing it from the EMMEOutputs.gdb/TNED_HwyNet and EMMEOutputs.gdb/TNED_HwyNodes. The nodes and links (referred to as the base network in Emme) for the traffic network are imported from the TNED_HwyNode and TNED_HwyNet geodatabase feature classes. The nodes are created first and the links connect between them. The I-node (from node, field AN) and J-node (to node, field BN) are used to associate the nodes and links and uniquely identify the link in the Emme network. Separate forward (AB) and reverse (BA) links are generated for links that have been coded as two-way.

#### Create Turns

This step processes the EMMEOutputs.gdb/Turns input network file to generate turn restrictions by to- and from- link ID. If the indicated link IDs do not make a valid turn (links not adjacent) an error is reported.

#### Calculate Traffic Attributes

This step calculates derived traffic attributes. It utilizes the vehicle_class_toll_factors.csv to adjust toll costs by facility name and class.

#### Check Zone Access

This step verifies that every centroid has at least one available access and egress connector.

#### Create Rail Base Network

This step creates the base roadway network by importing it from the EMMEOutputs.gdb/TNED_RailNet and EMMEOutputs.gdb/TNED_RailNodes. The nodes and links (referred to as the base network in Emme) for the rail network are imported from the TNED_RailNode and TNED_RailNet geodatabase feature classes. The nodes are created first and the links connect between them. The I-node (from node, field AN) and J-node (to node, field BN) are used to associate the nodes and links and uniquely identify the link in the Emme network. Separate forward (AB) and reverse (BA) links are generated for links that have been coded as two-way.

#### Create Tranist Lines

This step creates the transit lines by importing them from the trrt.csv, trlink.csv and trstop.csv input network files and matched to the transit base network. The mode-level attributes from MODE5TOD.csv, which vary by mode, are copied to transit line attributes and used in transit assignment. It is in this step also where the timexfer_{time_of_day}.csv files are used to explicitly set route-to-route specific transfer transit times.

#### Calculate Transit Attributes

The transit line and stop / segment attributes (including fares) are imported to Emme attributes. The special_fares.txt lists network-level incremental fares by boarding (line and/or stop) and in-vehicle segment. They specify additive fares based on the network elements encountered on a transit journey and are used to represent the Coaster (or other) zonal fare system.
10 changes: 9 additions & 1 deletion docs/design/supply/transit-skims-assign.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
# Transit Skimming and Assignment

Details of transit skimming and assignment.
The transit assignment uses a headway-based approach, where the average headway between vehicle arrivals for each transit line is known, but not exact schedules. Passengers and vehicles arrive at stops randomly and passengers choose their travel itineraries considering the expected average waiting time.

The Emme Extended transit assignment is based on the concept of optimal strategy but extended to support a number of behavioral variants. The optimal strategy is a set of rules which define sequence(s) of walking links, boarding and alighting stops which produces the minimum expected travel time (generalized cost) to a destination. At each boarding point the strategy may include multiple possible attractive transit lines with different itineraries. A transit strategy will often be a tree of options, not just a single path. A line is considered attractive if it reduces the total expected travel time by its inclusion. The demand is assigned to the attractive lines in proportion to their relative frequencies.

The shortest "travel time" is a generalized cost formulation, including perception factors (or weights) on the different travel time components, along with fares, and other costs / perception biases such as transfer penalties which vary over the network and transit journey.

The model has four access modes to transit (walk, park-and-ride (PNR), kiss-and-ride (KNR), and Transportation Network Company (TNC)) and three transit sets (local bus only, premium transit only, and local bus and premium transit sets), for 12 total demand classes by 5 TOD. These classes are assigned by slices, one at a time, to produce the total transit passenger flows on the network.

While there are 12 slices of demand, there are only three classes of skims: Local bus only, premium only, and all modes. The access mode does not change the assignment parameters or skims.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 11 additions & 12 deletions docs/inputs.md
Original file line number Diff line number Diff line change
Expand Up @@ -166,15 +166,7 @@ The table below contains brief descriptions of the input files required to execu
| emp_non_ws_wfh | Non-wage and salary work from home employments |
| emp_non_ws_oth | Non-wage and salary other employments |
| emp_total | Total employment |
| pseudomsa | Pseudo MSA - |
| | 1: Downtown |
| | 2: Central |
| | 3: North City |
| | 4: South Suburban |
| | 5: East Suburban |
| | 6: North County West |
| | 7: North County East |
| | 8: East County |
| pseudomsa | Pseudo MSA<br>1: Downtown<br>2: Central<br>3: North City<br>4: South Suburban<br>5: East Suburban<br>6: North County West<br>7: North County East<br>8: East County |
| zip09 | 2009 Zip Code |
| enrollgradekto8 | Grade School K-8 enrollment |
| enrollgrade9to12 | Grade School 9-12 enrollment |
Expand All @@ -184,12 +176,11 @@ The table below contains brief descriptions of the input files required to execu
| parkactive | Acres of Active Park |
| openspaceparkpreserve | Acres of Open Park or Preserve |
| beachactive | Acres of Active Beach |
| district27 | |
| district27 | Special layer reg employer shuttle service around Sorrento Valley |
| milestocoast | Distance (miles) to the nearest coast |
| acres | Total acres in the mgra (used in CTM) |
| land_acres | Acres of land in the mgra (used in CTM) |
| effective_acres | Effective acres in the mgra (used in CTM) |
| truckregiontype | |
| exp_hourly | Expected hourly prking cost |
| exp_daily | Expected daily prking cost |
| exp_monthly | Expected monthly prking cost |
Expand Down Expand Up @@ -335,14 +326,22 @@ The table below contains brief descriptions of the input files required to execu
| pnum | Person Number |
| age | Age of person |
| sex | Gender of person<br>1 = Male<br>2 = Female |
| military | Military status of person:<br>0 = N/A Less than 17 Years Old<br>1 = Yes, Now on Active Duty |
| miltary | Military status of person:<br>0 = N/A Less than 17 Years Old<br>1 = Yes, Now on Active Duty |
| pemploy | Employment status of person:<br>1 = Employed Full-Time<br>2 = Employed Part-Time<br>3 = Unemployed or Not in Labor Force<br>4 = Less than 16 Years Old |
| pstudent | Student status of person:<br>1 = Pre K-12<br>2 = College Undergrad+Grad and Prof. School<br>3 = Not Attending School |
| ptype | Person type:<br>1 = Full-time Worker<br>2 = Part-time Worker<br>3 = College Student<br>4 = Non-working Adult<br>5 = Non-working Senior<br>6 = Driving Age Student<br>7 = Non-driving Student<br>8 = Pre-school |
| educ | Educational attainment:<br>1 = No schooling completed<br>9 = High school graduate<br>13 = Bachelor's degree |
| grade | School grade of person:<br>0 = N/A (not attending school)<br>2 = K to grade 8<br>5 = Grade 9 to grade 12<br>6 = College undergraduate |
| occen5 | Occupation:<br>0 = Not in universe (Under 16 years or LAST-WRK = 2)<br>1..997 = Legal census occupation code |
| occsoc5 | Detailed occupation codes defined by the Bureau of Labor Statistics |
| indcen | Industry code.<br>0 = default<br>9970 = NAICS2 is MIL |
| weeks | Weeks worked during past 12 months<br>0 .N/A (less than 16 years old/did not work during the past 12 .months)<br>1 .50 to 52 weeks worked during past 12 months<br>2 .48 to 49 weeks worked during past 12 months<br>3 .40 to 47 weeks worked during past 12 months<br>4 .27 to 39 weeks worked during past 12 month<br>5 .14 to 26 weeks worked during past 12 months<br>6 .13 weeks or less worked during past 12 months|
| hours | Hours worked per week past 12 months<br>0 .N/A (less than 16 years old/did not work during the past .12 months)<br>1..98 .1 to 98 usual hours<br>99 .99 or more usual hours |
| rac1p | Race:<br>1 = White alone<br>2 = Black or African American alone<br>3 = American Indian alone<br>4 = Alaska Native alone<br>5 = American Indian and Alaska Native tribes specified; or .American Indian or Alaska Native, not specified and no other .races<br>6 = Asian alone<br>7 = Native Hawaiian and Other Pacific Islander alone<br>8 = Some Other Race alone<br>9 =Two or More Races |
| hisp | Hispanic origin:<br>1 = Not Hispanic<br>2 = Hispanic |
| version | Synthetic population run version. Presently set to 0. |
| naics2_original_code | 2 digit North American Industry Classification System (NAICS) |
| soc2 | 2 digit Standard Occupational Classification |


<a id="vehicle_class_toll"></a>
Expand Down
Loading