building and learning activity-based models
DESCRIPTION
Building and Learning Activity-Based Models. Erik Sabina Jennifer Malm Suzanne Childress John Bowman DeVon Culbertson. Erik’s recommendations (and the price you’ll have to pay). Get into the critical path Though it will put the hurt on schedule Software is the hardest part - PowerPoint PPT PresentationTRANSCRIPT
Building and Learning Activity-Based Models
Erik Sabina Jennifer Malm
Suzanne ChildressJohn Bowman
DeVon Culbertson
Erik’s recommendations (and the price you’ll have to pay)
• Get into the critical path– Though it will put the hurt on schedule
• Software is the hardest part – Steal someone else’s if you can– Modelers must program WELL!– The custom versus vendor conundrum
• Estimate a few models– Some basic skills are indispensible– Why let a few consultants have all the
fun?
Expertise we started with
• Discrete choice model estimation– Decent theory, limited practice
• Programming/software development– Very strong in IT, modelers good
programmers• Math, stats, econ, etc.
– Pretty strong across the board• Trip-based modeling
– Very strong
Levels of Knowledge
• Sensitivities• Limitations and approximations• Fix/update variables• Re-calibrate• Re-estimate some components• Re-design the theoretical structure• Re-design or extend sw structure
Model sensitivities
What (example) - non-motorized mode choice
• Blend point-based and skim distances
• Point locations for households and jobs
• Intersection, retail, mixed use densityHow – programmed all utility function
variablesWhy – can’t apply model without it!
Limitations and approximations
What (examples) -• Little: simpler logsums skims• Little: Twice O-D, rather than O-D +
D-O• Big: sequential TOD and mode choice• Big: Implicit intra-household
interactionsHow – programmed all utility function
variablesWhy – know what model can/can’t do
Fix/update variables
What (examples) – • Simple: changes to input data/ GISDK• Simple once you get used to it -
change SQL Server table / variables in C#
• Pretty hard - understand how component works (older sibling school, logit solver)
How – wrote GISDK/ C# model components
Why – changes to variables over time are very common
Variable example
//Additional created in code variable, Older Sibling's school district if (householdID != currentHouseholdID) { currentHouseholdID = householdID; //Clear Sibling's school zone variable foreach (string choice in OlderSiblingSchoolZoneChoice) { this.UtilityFunctionParameters.AlternativeSpecificVariables[choice]["OldSibSchZone"].Value = 0; } OlderSiblingSchoolZoneChoice.Clear(); } else { //take choice and add a 1 to the OldSibSchZone variable in the choosen zone. tempList = choosenAlternative.Split(' '); zoneID = int.Parse(tempList[1]); if (universityStudent != 1) //Doesn't matter where an older sib university student went to school { if (zoneID != 0) { this.UtilityFunctionParameters.AlternativeSpecificVariables[choosenAlternative]["OldSibSchZone"].Value =
1; } } }
Variable changes in Database
Recalibrate
What (example) - work location choice model calibrated five years ago is not matching new ACS journey to work data. Model has too few people working at home.
What knobs can you turn?Some Examples:1. Change coefficients to variables related to working at home.2. Trace back issues to the land use or economic forecasts.
How – checked model estimation reports, programmed variables and model input code
Why – frequent “tweaks” expected!
Recalibrate (2)
Another example -
Observed boardings on light rail are lower than modeled boardings.
What knobs can you turn?
Possibilities:1. Mode choice coefficients / alternative specific constants.2. Too few university students on light rail?
Trips too short, so walk/bike mode share too high.Adjust school location choice model: coefficients on the
distance to school variables.
Re-estimation
What (example) – added variables to school location choice:
• Zone in School District• Older Sibling’s School Zone
How – estimated several models ourselves:• Estimation software syntax• Various levels of theoretical knowledge• The “expert coach” approach
Why – expecting frequent “tweaks” again!
Re-estimate: data issuesOops! You need to re-estimate. The colors on the picture signify where education employment was geo-coded but there was no school enrollment geo-coded.
Re-estimateHigh School Location Choice
Row Parm ID Variable Student Grade HH Income Est. Std. error T-stat1 3 Zone in School District 9-12 1.513 0.156 9.72 12 Mode Choice Logsum 9-12 0.064 0.070 0.93 16 Sibling's School Zone 9-12 3.794 0.365 10.44 20 Piecewise Linear Distance <2 miles 9-12 -0.435 0.131 -3.35 21 Piecewise Linear Distance 2 - 6 miles 9-12 -0.702 0.044 -16.06 23 Piecewise Linear Distance >6 miles 9-12 -0.189 0.019 -10.0
Row Parm ID Est. Std. error T-stat4 0 SIZE MULTIPLIER 0.83 0.072 11.63Row Parm ID Student Type HH Income Est. Std. error T-stat
5 103 Zonal Education Employees 9-12 -3.978 0.573 -6.946 112 Number of Households in the Zone 9-12 -7.695 0.925 -8.317 150 Public High School Enrollment 9-12 <$75K 0.000 0.000 0.008 151 Public High School Enrollment 9-12 >$75K 0.000 0.000 0.009 152 Public High School Enrollment 9-12 Refused 0.000 0.000 0.00
10 153 Private High School Enrollment 9-12 <$75K 0.290 0.277 1.0511 154 Private High School Enrollment 9-12 >$75K 0.546 0.354 1.5412 155 Private High School Enrollment 9-12 Refused -5.000 0.000 0.0013 172 Service Employment 9-12 -8.451 1.392 -6.07
Summary StatisticsNumber of Observed Choices 603Number of Estimated Parameters 13Log Likelihood with Coeffs= 0 -4783Final Log likelihood -1238Rho-Squared 0.7411Adjusted Rho-Squared 0.7384
Size Variables
Non-Size Variables
Redesign model
What (examples) -• Swap out a component• Estimate joint models• Explicit joint tour formation• Daily schedule interaction• Activity generation and assignment
How – thorough study of your design (among other things!)
Why – next round of model upgrades
Redesign software
What (examples) – • Model component design• Upgrade key functions (e.g.
MakeChoice)• Enhance distributability
( modifications to“plumbing” code)How – designed/wrote most code- The “coach” modelWhy – open source versus vendor
again!
Redesign Software (example)
What we did: estimation
Component NameSynthetic Sample Generator Tour Primary Destination
ChoiceRegular Workplace Location
Regular School Location Tour Main Mode Choice
Auto Ownership
Area Type Tour Time of Day Choice
Parking Cost Intermediate Stop Generation
Daily Activity Pattern Intermediate Stop Location
Trip Mode ChoiceExact Number of Tours Trip Departure Time
Work Tour Destination Type
What we did: software
Wrote our own (bigtime!)• That coach model again
Had to learn a lot to do it:• Logit math• OO/C#/.Net programming• SQL-Server databaseWanted to use industry-standard toolsLed by strong IT department
Future training
• Explicit intra-hh interaction– Many flavors
• Selection of choice set from a larger set
• “Doubly constrained” location choice– Enforced quota– Shadow price
• Ties to DTA• Enhancements in population
synthesis
Authors
Erik Sabina, [email protected] Malm, [email protected] Childress, [email protected] Denver Regional Council of GovernmentsJohn Bowman, J
[email protected] Bowman Research and ConsultingDeVon Culbertson,
[email protected] DeVon Culbertson, LLC