BART Passenger Experience Survey

2027 · 2027 Competition

School: School of Computer and Information Sciences
Category: Corporate SponsoredPrimary

Project Overview

One Liner: The BART Passenger Experience Survey

Abstract

Introduction to BART

BART is still primarily a commuter rail line that takes people from the suburbs into San Francisco. Similar to the Long Island Railroad or many other commuter rail lines that means ridership is extremely skewed towards commute hours and drops off before and after rush hour and on weekends. The 4 downtown San Francisco stations still dwarf all others in terms of the number of riders exiting those stations in the morning and then boarding there in the afternoon/evening. Special events create little spikes in ridership at odd times and/or at less typical stations: e.g. a 7PM Warriors game on a Tuesday night, a big concert in Oakland on a Thursday evening, tourism from SFO to San Francisco during the summer or for big events like the Super Bowl, NBA all-star game, etc. But being built around the core of San Francisco you can imagine what ridership looks like. Morning ridership from the east builds as it approaches San Francisco and then quickly drops as it passes through downtown towards the airport. Or, if coming from the SFO, ridership builds as it heads north towards San Francsico with the trains becoming less and less crowded as they get further into the East Bay. Evenings would be the opposite. Trains quickly fill in downtown and then continue to add people for 4 or 5 stations either direction. After that, it’s mostly people getting off when they reach the station they started at that morning.



Background: The BART Passenger Experience Survey

My strange little world is one in which we have 2 teams of 2 people who work part-time (25 hours per week) and who board trains with the goal of getting riders to complete a satisfaction survey. The survey can be completed by the rider scanning a QR code with their mobile device. The survey should be completed while they are on the train since it is primarily about their onboard experience (i.e. how solid are their ratings of a car on cleanliness if they rate it several hours later?). Ideally, we can get a good cross-section of ridership throughout the system. We would want a good read of riders across all lines (Red, Yellow, Blue, Green, Orange), weekdays versus weekends and all dayparts. Of course, since the survey is relatively short and there are no real screening questions, success is really a numbers game. The more people you get in front of, the more take the survey. And overall, as long as the team is out there hustling we have no shortage of surveys each quarter. Currently, shifts are about 6-7 hours each depending on what they are trying to do.



I built the current shifts manually by looking at traffic patterns and also wait times between trains. I just needed to get something worked out but I am confident a better analysis could get us to a better place. And I’m in big trouble if the schedules change!



The other factor is, for shifts of 6 or more hours the team needs to have 2 15-minute breaks and one 45-minute break. But we then need to tack on another 5-7 minutes per break to let the teams get to and from the break rooms. The actual schedule means the “buffer” varies a bit (e.g. we may give them slightly less than 5 minutes to get to the break room if that would mean missing the next train since the distance really isn’t that great).



Possible Challenges: Generating and updating optimized shifts

Optimizing shifts that cover peak times – as soon as the team is unable to walk through a car the productivity of that train drops dramatically (let’s say more than 50 people- which is about how many seats there are per car). At peak times, they often are shoulder-to-shoulder with riders and can only (in theory) reach the 4 or 5 people immediately around them. By the time they can move around and by the time they make it through the train the last cars are probably close to empty and/or the team find themselves very far out in the system with a long wait and then long ride back to where the people are. This doesn’t mean we don’t get surveys but we are not very efficiently reaching the people at peak times. We are probably doing a good job of reaching those who happen to live far enough out for us to get to them before it gets crowded in the morning or after it empties out in the afternoon (essentially the same people). Reaching people in crowded trains may not be possible but then are you really reflecting the views of most riders if the vast majority cannot have an opportunity to take the survey?
Optimizing shifts – we may not be able to solve #1 but we still would benefit from the creation of shifts that are relatively unique (unique meaning we are not covering the same line over and over again in a short period) and cover the system effectively each quarter while minimizing wait times for the teams between trains. There is probably a better way to determine where a team should turn around on a line so they get enough reach but don’t wind up too far out or waiting too long for the next train. It may be best to not even try to reach every car on a train if it either has the team packed in, unable to reach anyone on the car, or finding nearly empty cars by the time they reach them. Things also get more complicated early in the morning and late in the evening because certain lines just stop running.

No video available.

Screenshots

0 image(s)

No screenshots uploaded yet.

Team Members

Steven Wu
Lead
Zhixian Li
Steven Song
Sunny Liu

Advisors

Jeff Salvage
Jeff Salvage

Stakeholders

Will Hecht