-
Notifications
You must be signed in to change notification settings - Fork 2
Initial ActivitySim Instructions
These are working instructions that ODOT has developed to start to communicate that ActivitySim inputs that exist for the "BAYDAG" version of ActivitySim. It's important to remember that Oregon's final ABM setup, won't have this exact set of inputs or instructions. Oregon's ABM estimation will start with BAYDAG but will be revised. The instructions will allow the OMSC members to discuss what they do and do not like about the BAYDAG setup and make changes specific to how the OMSC would like Oregon's ABM platform implemented.
The following lays out the input develop into tables:
- household inputs
- person inputs
- zonal inputs
- skims
- Network inputs (needed to build the skims)
| Column Name (SANDAG) | Description (SANDAG) | Oregon Notes (BRM) |
|---|---|---|
| hhid | Unique Household ID | unique household id from PopSim |
| household_serial_no | Household serial number | Not sure if needed, if needed - develop a unique number |
| taz | TAZ of household | TAZ that the household falls in |
| mgra | MGRA of household “SANDAG Master-Geographic Reference Area (MGRA). The SANDAG current MGRA system consists of 32,000 zones, which are roughly equivalent to Census block groups (see Figure T.2). To avoid computational burden, SANDAG relies on a 4,600 Transportation Analysis Zone (TAZ) system for highway skims and assignment, but performs transit calculations at the more detailed “ Ref: appendix-t-SANDAG-travel-demand-model-documentation.pdf -mgra is more granular | MAZ that the household falls in |
| hinccat1 | Household income category:
|
Categorize “hinc” which is originally from “hhincadj” of synthetic households.csv (binning a continuous variable from PUMS / PopSim |
| hinc | Household income | “hhincadj” from PopSim |
| hworkers | Number of workers in household | “nwrkrs_esr” from PopSim |
| veh | Number of vehicles in household | “veh” from PopSim |
| persons | Number of persons in household | “np” from PopSim |
| hht | Household/family type:
|
“hht” of from PopSim, with the extra note that hht=-8 is replaced by 0 to match with SANDAG “hht” category. |
| bldgsz | Building size - Number of Units in Structure & Quality:
|
“bld” from PopSim. Only bld =-8 is replaced by 0 to match with SANDAG “bld” category. |
| unittype | Household unit type: 0 = Non-GQ Household 1 = GQ Household | “gqflag” from PopSim |
| version | Synthetic population run version. Presently set to 0. | Presently set to 0 |
| poverty | Poverty indicator utilized for social equity reports. Percentage value where value <= 2 (200% of the Federal Poverty Level) indicates household is classified under poverty. | Poverty=Income / Threshold Income=hinc Threshold will be based on following table - "2024 POVERTY GUIDELINES FOR THE 48 CONTIGUOUS STATES AND THE DISTRICT OF COLUMBIA" from this link |
| Column Name (SANDAG) | Description (SANDAG) | Oregon Notes (BRM) |
|---|---|---|
| hhid | Household ID | unique household id from PopSim |
| perid | Person ID | unique person id within each household from PopSim obtained from PUMS seed |
| Household_serial_no | Household serial number | Not sure if needed, if needed - develop a unique number |
| pnum | Person Number | “sporder” from PopSim obtained from PUMS seed |
| age | Age of Person | "agep" of from PopSim obtained from PUMS seed |
| sex | Gender of person; 1) Male, 2) Female | "sex" from PopSim obtained from PUMS seed |
| miltary | TBD | TBD |
| pemploy | Employment status of person:
|
Using fields; agep, esr, wkhp, wkw.
|
| pstudent | Student status of person:
|
Using field schg where schg 1-5 is k-12 and 6 & 7 is college. |
| ptype | Person Type:
|
Using fields; agep, pemploy, pstudent.
|
| educ | Educational attainment:
|
Using field schl where schl 1-8 is "No schooling completed", 9-12 is "High school graduate", and higher values are "Bachelor's degree". |
| grade | School grade of person:
|
Using field schg where schg 1-4 is K to grade 8, 5 is Grade 9-12, and higher values are "College undergraduate", (N/A is 0) |
| occen5 | Occupation:
|
TBD |
| occsoc5 | Detailed occupation codes defined by the Standard Occupational Classification (SOC) system | built on the SOCP from PUMS and PopSim |
| indcen | Industry code defined in PECAS: They are about 270 industry categories grouped by 6-digit NAICS code (North American Industrial Classification System) | TBD |
| weeks | Weeks worked in 2010:
|
Using field wkw, the only change from PopSim processing is that -8 is changed to 0 |
| hours | Hours worked in 2010:
|
Using field wkhp, the only change from PopSim processing is that -8 is changed to 0 |
| rac1p | Race of person:
|
Uses RACE1P from PUMS and PopSim |
| hisp | Hispanic flag: Non-Hispanic (0) Hispanic (1) | Uses HISP from PUMS and PopSim |
| version | Synthetic population run version. | Presently set to 0. |
| naics2_original_code | TBD | TBD |
| soc2 | TBD | TBD |
| Column Name (SANDAG) | Description (SANDAG) | Oregon Notes (BRM) |
|---|---|---|
| MAZ | MAZ Number | MAZ number |
| taz | TAZ Number | TAZ number |
| hs | housing structures | This may include all structures (including vacant). All modeling inventory so far is just occupied households. At this time ODOT has only populated with total occupied households. |
| hs_sf | single family structures | tabulated from household table bld == 2 |
| hs_mf | multi family structures | tabulated from household table bld > 2 |
| hs_mh | mobile homes | tabulated from household table bld == 1 |
| hh | total number of households | currently same as hs above |
| hh_sf | number of households - single family | currently same as hs_sf |
| hh_mf | number of households - multi family | currently same as hs_mf |
| hh_mh | number of mobile homes | currently same as hs_mh |
| gq_civ | GQ civilian | Total MAZ tabulated population minus household (non-GQ) population |
| gq_mil | GQ military | currently coded as zero as we haven't been populating military populations for Oregon models |
| i1 | Number of households with income less than $15,000 ($2010) | tabulated from the hhincadj field in households.csv |
| i2 | Number of households with income $15,000-$29,999 ($2010) | tabulated from the hhincadj field in households.csv |
| i3 | Number of households with income $30,000-$44,999 ($2010) | tabulated from the hhincadj field in households.csv |
| i4 | Number of households with income $45,000-$59,999 ($2010) | tabulated from the hhincadj field in households.csv |
| i5 | Number of households with income $60,000-$74,999 ($2010) | tabulated from the hhincadj field in households.csv |
| i6 | Number of households with income $75,000-$99,999 ($2010) | tabulated from the hhincadj field in households.csv |
| i7 | Number of households with income $100,000-$124,999 ($2010) | tabulated from the hhincadj field in households.csv |
| i8 | Number of households with income $125,000-$149,999 ($2010) | tabulated from the hhincadj field in households.csv |
| i9 | Number of households with income $150,000-$199,999 ($2010) | tabulated from the hhincadj field in households.csv |
| i10 | Number of households with income $200,000 or more ($2010) | tabulated from the hhincadj field in households.csv |
| hhs | household size | hhs=total population/ total number of households (hh) |
| pop | total population | tabulated from household/person inputs |
| hhp | total household population (exclude gq pop) | tabulated from household/person inputs |
| emp_gov | Government? | EMP_PUBADM - Public Administration employment (NAICS 92) & EMP_POSTAL - Postal Service employment (NAICS 49) |
| emp_mil | Miltary? | populate with zero |
| emp_ag_min | Agriculture and Mining | EMP_AGR - Agriculture, Forestry, Fishing and Hunting employment (NAICS 11) & EMP_MIN - Mining, Quarrying, and Oil and Gas Extraction employment (NAICS 21) |
| emp_bus_svcs | ? | EMP_PROF - Professional, Scientific, and Technical Services employment (NAICS 54) & EMP_ADMIN - Administrative and Support and Waste Management employment (NAICS 56) |
| emp_fin_res_mgm | Finance, Real Estate, and Management | EMP_FINANC - Finance and Insurance employment (NAICS 52) & EMP_REALES - Real Estate and Rental and Leasing employment (NAICS 53) & EMP_MGMT - Management of Companies and Enterprises employment (NAICS 55) |
| emp_educ | Education | EMP_EDUC - Educational Services employment (NAICS 61) |
| emp_hlth | Health | EMP_HEALTH - Health Care and Social Assistance employment (NAICS 62) |
| emp_ret | Retail | EMP_RETAIL - Retail Trade employment (NAICS 44) & EMP_SPORT - Sporting Goods, Hobby, Musical Instruments and Book stores employment (NAICS 45) |
| emp_trn_wrh | Transport & Warehouse? | EMP_TRANS - Transportation employment (NAICS 48) |
| emp_con | Construction | EMP_CONSTR - Construction employment (NAICS 23) |
| emp_utl | Utilities | EMP_UTIL - Utilities employment (NAICS 22) |
| emp_mnf | Manufacturing | EMP_WOOD - Wood Product Manufacturing employment (NAICS 32) & EMP_METAL - Primary Metal Manufacturing employment (NAICS 33) |
| emp_whl | Wholesale | EMP_WHOLE - Wholesale Trade employment (NAICS 42) |
| emp_ent | Entertainment? | EMP_ARTS - Arts, Entertainment, and Recreation employment (NAICS 71) |
| emp_accm | Accommodation | EMP_ACCFD - Accommodation and Food Services employment (NAICS 72) |
| emp_food | Food Manufacturing? | EMP_FOOD - Food Manufacturing employment (NAICS 31) |
| emp_oth | Other? | EMP_OTHER - Other Services (except Public Administration) Religious employment (NAICS 81) & EMP_INFO - Information employment (NAICS 51) |
| emp_non_ws_wfh | guessing these are not captured within insured employment - work from home | populate with zero |
| emp_non_ws_oth | guessing these are not captured within insured employment - other | populate with zero |
| emp_total | Total employment | Total of all Employment |
| enrollgradekto8 | Grade School K-8 enrollment | “ENROLLK_8” from CT-RAMP MAZ inputs |
| enrollgrade9to12 | Grade School 9-12 enrollment | “ENROLL9_12” from CT-RAMP MAZ inputs |
| collegeenroll | Major College enrollment | “ENROLLCOLL” from CT-RAMP MAZ inputs, Major College enrollment (example SOU, attracts younger students) |
| majorcollege_pt_Undergrad, majorcollege_ft_Undergrad, majorcollege_All_Undergrad, major_All_Graduate | not well documented, nor clear that these are needed | All undergrad and all graduate should sum to college enroll. Part-time and Full-time undergrad should sum to All Undergrad |
| othercollegeenroll | Other College enrollment | "ENROLLCOOT" from CT-RAMP MAZ inputs, Other College enrollment (Community College, attracts older students) |
| othercollege_pt_Undergrad, othercollege_ft_Undergrad, othercollege_All_Undergrad, other_All_Graduate | not well documented, nor clear that these are needed | All undergrad and all graduate should sum to other college enroll. Part-time and Full-time undergrad should sum to All Undergrad |
| adultschenrl | Adult School enrollment | "ENROLLADSC" from CT-RAMP MAZ inputs, Adult School enrollment (Trade School, attracts older students) |
| ech_dist | Elementary school district | "ECH_DIST" from CT-RAMP inputs, Elementary school district. Used to constrain school location choice for K-8 students. Must have at least 1 MAZ with K-8 enrollment in each district. Numbers do not need to be sequential. |
| hch_dist | High school district | "HCH_DIST" from CT-RAMP MAZ inputs, High school district. Used to constrain school location choice for 9-12 students. Must have at least 1 MAZ with 9-12 enrollment in each district. Numbers do not need to be sequential. |
| pseudomsa | Pseudo MSA -1: Downtown2: Central3: North City4: South Suburban5: East Suburban6: North County West7: North County East8: East County | DISTID (District ID) from CT-RAMP MAZ inputs |
| parking_type | Category determining functionality of parking models –parkarea field codes1: Trips with destinations in this MGRA may choose to park in a different MGRA, parking charges apply (downtown)2: Trips with destinations in parkarea 1 may choose to park in this MGRA, parking charges might apply (quarter mile buffer around downtown) 3: Only trips with destinations in this MGRA may park here, parking charges apply (outside downtown paid parking, only show cost no capacity issue) 4: Only trips with destinations in this MGRA may park here, parking charges do not apply (outside downtown, free parking) | PARKAREA from CT-RAMP MAZ inputs, which follows the same definition |
| parking_spaces | not documented | number of parking spaces - can approximate - suggest using the sum of the stalls fields below |
| hstallsoth | Number of stalls allowing hourly parking for trips with destinations in other MGRAs | from CT-RAMP - Number of stalls allowing hourly parking for trips with destinations in other MAZs. Note that number of stalls is used to calculate an average distance-weighted parking cost for each MAZ in mode choice, since the actual parking location is unknown when the choice of mode is made. Lots with more spaces will affect the weighted parking cost more than a lot with few spaces. |
| hstallssam | Number of stalls allowing hourly parking for trips with destinations in the same MGRA | from CT-RAMP - Number of stalls allowing hourly parking for trips with destinations in the same MAZ |
| hparkcost | Average cost of parking for one hour in hourly stalls in this MGRA, dollars | from CT-RAMP - Average cost of parking for one hour in hourly stalls in this MAZ, $2010 dollars |
| numfreehrs | Number of hours of free parking allowed before parking charges begin in hourly stalls | from CT-RAMP - Number of hours of free parking allowed before parking charges begin in hourly stalls. A 0 indicates that parking charges begin immediately (most common). |
| dstallsoth | Stalls allowing daily parking for trips with destinations in other MGRAs | from CT-RAMP - Stalls allowing daily parking for trips with destinations in other MAZs. |
| dstallssam | Stalls allowing daily parking for trips with destinations in the same MGRA | from CT-RAMP - Stalls allowing daily parking for trips with destinations in the same MAZ |
| dparkcost | Average cost of parking for one day in daily stalls, dollars | from CT-RAMP - Average cost of parking for one day in daily stalls, $2010 dollars |
| mstallsoth | Stalls allowing monthly parking for trips with destinations in other MGRAs | from CT-RAMP - Stalls allowing monthly parking for trips with destinations in other MAZs |
| mstallssam | Stalls allowing monthly parking for trips with destinations in the same MGRA | from CT-RAMP - Stalls allowing monthly parking for trips with destinations in the same MAZ |
| mparkcost | Average cost of parking for one day in monthly stalls, amortized over 22 workdays, dollars | from CT-RAMP - Average cost of parking for one day in monthly stalls, amortized over 22 workdays, $2010 dollars. |
| zip09 | 2009 Zip Code | zip code that the MAZ centroid falls in |
| parkactive | Acres of Active Park | PARKACRES from CT-RAMP MAZ inputs, Park acres (active acres of park). |
| openspaceparkpreserve | Acres of Open Park or Preserve | ideally this would be split out from PARKACRES above. Currently, Park Acres includes all rec space. But the BAYDAG example seems to break out park space, versus open space which would be good to capture if possible. A quick way to test, might be to assume 40/60 or 30/70 or some percentage to move some of the PARKACRES into open space, or maybe known open space zones are shifted over by hand. |
| beachactive | Acres of Active Beach | the example dataset has zero - Oregon models should default with 0 |
| budgetroom | Number of budget hotel rooms | doesn't seem to be required for testing - populating with zero seems to be an option |
| economyroom | Number of economy hotel rooms | doesn't seem to be required for testing - populating with zero seems to be an option |
| luxuryroom | Number of luxury hotel rooms | doesn't seem to be required for testing - populating with zero seems to be an option |
| midpriceroom | Number of midprice rooms | doesn't seem to be required for testing - populating with zero seems to be an option |
| upscaleroom | Number of upscale rooms | doesn't seem to be required for testing - populating with zero seems to be an option |
| hotelroomtotal | Total number of hotel rooms | HOTELRMTOT from CT-RAMP MAZ inputs, but note that we haven't been populating this very well in CT-RAMP models |
| luzid | looks to be a larger land use zone ID | I would consider this as a census tract or similar numeric code (keep the numbers integers - not names (long) |
| truckregiontype | no good documentation | example data is either 1 or 0. Just set as all 1. |
| district27 | no good documentation | Values seem to max out at 27. Values seem to be largely 8, 15, 27. Maybe try and get the model running by setting all values to 27. |
| milestocoast | Distance (miles) to the nearest coast | Mile to coast: how zone is close to the beach. We are uniformly far away from beach. We just put 20 mile form coast. If we put too much like 100, it may blow up the utility. |
| acres | Total acres in the mgra (used in CTM) | Total Acres in the zone. |
| effective_acres | Effective acres in the mgra (used in CTM) | Total Acres minus any acres that can't be used for development. |
| land_acres | Acres of land in the mgra (used in CTM) | Total Acres minus water or anything that wouldn't count as land. |
| MicroAccessTime | Micro-mobility access time (mins) | typlically 5 or 10. Recommend setting all to 10. If fully not available, set at 1200. |
| remoteAVParking | Remote AV parking available at MGRA:0 = Not available1 = Available | choose a zone which is close to PARK and Ride set as 1, everything else set to zero. |
| refueling_stations | Number of refueling stations at MGRA | approximate some gas station zones (count of gas stations in each MAZ |
| totInt | Total intersections | taken from pre-processor output from CT-RAMP ABM runs |
| duden | Dwelling unit density | taken from pre-processor output from CT-RAMP ABM runs |
| empden | Employment density | taken from pre-processor output from CT-RAMP ABM runs |
| popden | Population density | taken from pre-processor output from CT-RAMP ABM runs |
| retempden | Retail employment density | taken from pre-processor output from CT-RAMP ABM runs |
| totintbin | Total intersection bin | Total intersection 0 = 0; 1-79 = 1; 80-129 = 2; >130 = 3 |
| empdenbin | Employment density bin | empden 0 = 0; 0.1-10 = 1; 10-30 = 2; >30 = 3 |
| dudenbin | Dwelling unit density bin | duden 0 = 0; 0.1-5 = 1; 5-10 = 2; >10 = 3 |
| PopEmpDenPerMi | Population and employment density per mile | PopEmpDenPerMi is a floating calculation of population plus employment divided by miles and calculated on a ‘floating’ basis for all MAZs within 0.5 miles of the MAZ. It is calculated in a script (run4d) as: (totEmp+totPop)/(totAcres/640. (Empden+ popden)*640= PopEmpDenPerMi |
| poe_id | not documented | An external station flag; all internal zones left blank, all external = -1 |
| external_work; external_nonwork | not documented | Can be approximated by the number of trips entering at each external station. User can approximate the percentage of trips that are work related or non. Suggest having the two values sum to the total daily vehicle demand at the external station. Internal zones get a 0 value |
| external_TAZ; external_MAZ | not documented | All internals are blank, external zones have a value of 1. |
| walk_dist_local_bus | not documented | suggest using MAZ centriods and GTFS stop points to find the distance |
| walk_dist_premium_transit | not documented | suggest using MAZ centriods and GTFS stop points to find the distance |
| ML_DIST | not documented | ML_DIST is the distance on managed lanes from the MAZ to the nearest of several key MAZs in San Diego. It was used in the initial transponder ownership model but it is not used in the current one and can be dropped from the Oregon implementations. For Oregon populate this zone input with zeros. |
| AVGTTS | not documented | one of the input of Temporary Static Transponder Model Input |
| PCTDETOUR | not documented | This appears to be the percentage of travel at the external station that's coming from a detour. Assume zero for all zones. |
| terminal_time | not documented | Recommended to assume a value of 1 for all zones. |
| mgra | not documented | same as the MAZ - not sure if this needs to be sequential - doesn't seem to need to be sequential. |
| exp_hourly; exp_daily; exp_monthly | not documented | "exp" stands for "expected parking costs". These are distance and quantity averaged-parking for each zone. In the case of Oregon, these values should match the cost parking cost; hparkcost; dparkcost; mparkcost. |
The BAYDAG model has ~1800 skims currently which are summarized as follows. All of the skims are repeated for 5 time periods and will therefore not be repeated here. Each time period has 352 skims (352 x 5 = 1760). The 360 are summarized as follows:
- 30 SOV matrices = 5 skim types (Distance, Reliability, Time, Toll Cost, Distance w/Tolls) x 3 Income VOT sensitivity (High, Medium, Low) x 2 Yes/No Toll Transponder
- 36 HOV matrices = 6 skim types (Distance, Reliability, Time, Toll Cost, Distance w/Tolls, Distance w/ HOV lanes) x 3 Income VOT sensitivity (High, Medium, Low) x 2 Yes/No Toll Transponder
- 9 Truck Matrices = 3 skim types (Distance, Time, Toll Cost) x 3 Income VOT sensitivity (High, Medium, Low)
- 4 Active Matrices = Bike Logsum, Bike Time, Bike Distance, Walk Time
- 39 Transit Matrices = 3 vehicle types (Bus, Mix, Premium ~Light Rail) x 14 skim types (Fare, Access, Egress, First Wait Time, Dwell Time, Number of Transfers, Bus In-Vehicle Travel Time (IVTT), Total IVTT, Transfer Wait Time, Transfer Walk Time, Total Walk Time ), where (3 skim types don't apply to Bus, LR IVTT, Exp IVTT, CMR IVTT)) (( 3x14 ) - 3)
- 78 Park and Ride Matrices = 3 vehicle types (Bus, Mix, Premium ~Light Rail) x 2 directions of travel (inbound / outbound) x 14 skim types (Fare, Access, Egress, First Wait Time, Dwell Time, Number of Transfers, Bus In-Vehicle Travel Time (IVTT), Total IVTT, Transfer Wait Time, Transfer Walk Time, Total Walk Time ), where (3 skim types don't apply to Bus, LR IVTT, Exp IVTT, CMR IVTT)) (( 3x14 ) - 3)
- 78 Kiss and Ride Matrices = 3 vehicle types (Bus, Mix, Premium ~Light Rail) x 2 directions of travel (inbound / outbound) x 14 skim types (Fare, Access, Egress, First Wait Time, Dwell Time, Number of Transfers, Bus In-Vehicle Travel Time (IVTT), Total IVTT, Transfer Wait Time, Transfer Walk Time, Total Walk Time ), where (3 skim types don't apply to Bus, LR IVTT, Exp IVTT, CMR IVTT)) (( 3x14 ) - 3)
- 78 Transportation Network Company (TNC) Skims = 3 vehicle types (Bus, Mix, Premium ~Light Rail) x 2 directions of travel (inbound / outbound) x 14 skim types (Fare, Access, Egress, First Wait Time, Dwell Time, Number of Transfers, Bus In-Vehicle Travel Time (IVTT), Total IVTT, Transfer Wait Time, Transfer Walk Time, Total Walk Time ), where (3 skim types don't apply to Bus, LR IVTT, Exp IVTT, CMR IVTT)) (( 3x14 ) - 3)
352 = 30+36+9+4+39+78+78+78
1760 = 352 x 5 times of day (EA, AM, MD, PM, EV)
For this first phase, we don't really know what BAYDAG network inputs looked like to generate the skims, nor do we need to know. On the next phase where we propose new skims for use in Oregon estimation / development, we will associate the skim instruction with specific network need inventory / coding needs.