Transit Pass Subsidy#
The transit pass subsidy model is a component of the transit fare discount model, which models persons who purchase or are provided a transit pass. The transit fare discount consists of two submodels - this transit pass subsidy model and a person transit_pass_ownership model. The result of this model can be used to condition downstream models such as the person transit_pass_ownership model and the tour and trip mode choice models via fare discount adjustments.
The main interface to the transit pass subsidy model is the transit_pass_subsidy function. This function is registered as an Inject step in the example Pipeline.
Structure#
Configuration File:
transit_pass_subsidy.yaml
Core Table:
persons
Result Field:
transit_pass_subsidy
Configuration#
- settings activitysim.abm.models.transit_pass_subsidy.TransitPassSubsidySettings#
Bases:
LogitComponentSettings
Settings for the transit_pass_subsidy component.
- Fields:
- Validators:
nests_are_for_nl
»NESTS
- field COEFFICIENTS: Path | None = None#
Coefficients filename.
This is a CSV file giving named parameters for use in the utility expression. If it is not provided, then it is assumed that all model coefficients are given explicitly in the SPEC as numerical values instead of named parameters. This is perfectly acceptable for use with ActivitySim for typical simulation applications, but may be problematic if used with “estimation mode”.
- field LOGIT_TYPE: Literal['MNL', 'NL'] = 'MNL'#
Logit model mathematical form.
- “MNL”
Multinomial logit model.
- “NL”
Nested multinomial logit model.
- field NESTS: LogitNestSpec | None = None#
Nesting structure for a nested logit model.
The nesting structure is specified heirarchically from the top, so the value of this field should be the “root” level nest of the nested logit tree, which should contain references to lower level nests and/or the actual alternatives.
For example, this YAML defines a simple nesting structure for four alternatives (DRIVE, WALK, WALK_TO_TRANSIT, DRIVE_TO_TRANSIT) with the two transit alternatives grouped together in a nest:
NESTS: name: root coefficient: coef_nest_root alternatives: - DRIVE - WALK - name: TRANSIT coefficient: coef_nest_transit alternatives: - WALK_TO_TRANSIT - DRIVE_TO_TRANSIT
- Validated by:
nests_are_for_nl
- field SPEC: Path [Required]#
Utility specification filename.
This is sometimes alternatively called the utility expressions calculator (UEC). It is a CSV file giving all the functions for the terms of a linear-in-parameters utility expression.
- field preprocessor: PreprocessorSettings | None = None#
Setting for the preprocessor.
- field source_file_paths: list[Path] = None#
A list of source files from which these settings were loaded.
This value should not be set by the user within the YAML settings files, instead it is populated as those files are loaded. It is primarily provided for debugging purposes, and does not actually affect the operation of any model.
Examples#
Implementation#
- activitysim.abm.models.transit_pass_subsidy.transit_pass_subsidy(state: State, persons_merged: DataFrame, persons: DataFrame, model_settings: Optional[TransitPassSubsidySettings] = None, model_settings_file_name: str = 'transit_pass_subsidy.yaml', trace_label: str = 'transit_pass_subsidy') None #
Transit pass subsidy model.