Jens von Bergmann

4 minute read

Two days ago we took a first look at motor vehicle traffic counts, now it is time to turn to pedestrian lights. Everyone knows the “beg buttons” that pedestrians need to push for the pedestrian signal to turn green. If you forget to push the pedestrian light might stay red even if parallel motor vehicle traffic has a green light, all in the name of efficiency of motor vehicle traffic.

Beg buttons

The only good thing about beg buttons is that they leave data traces, and we want to see if we can extract useful information from them. But there are some challenges. Unlike the traffic light induction loops, the beg buttons don’t count pedestrians. They count “begs”. So the kindergardener that really needs to use the bathroom and keeps “begging” in half-second intervals will easy register upward of 100 begs in the system, while the 50 zen-like people lining up at the light where only the first one registered a single beg counts as 1. Some of these issues could be resolved with fine temporal resolution of the data, but Surrey’s data comes aggregated to 15 minute intervals. That still gives us some way to account for the kindergardener hopping from one leg to the other by making some assumptions about signal cycle frequency and capping the counts. So let’s see where this gets us.


One good thing about blog posts is that more knowledgeable people than me add information. Chad Skelton added information about school start and end times, and the friendly folks at Surrey Open Data hooked me up with their traffic engineer in charge of the data who explained to me how to extract the beg button data. We will gloss over the details, if you need to know you are probably better served to look at the code than to read through my ramblings.

Using the same methods as in our previous post we take begs from Tue, Wed, Thu for three weeks prior and post school start this past summer.

The difference between the days before and after the start of school is quite pronounced, we average further over the three weekdays to get a cleaner picture.

The start of school stands out even more in pedestrian begs than in motor vehicle traffic, although the overall numbers are much smaller. The spikes around the school start time, which is between 8:30am to 9am depending on the school, as well as around pickup time, which varies between 2:30pm and 3pm, are very visible.


Just like before we want to refine this by adding in proximity to schools as another variable.

We divide beg buttons into two groups, one within 200m of a school and the other more than 200m away from schools.

Armed with this data we can run our analysis separately for the two types of beg buttons.

For all weekdays we see that the spike in begs is significantly more pronounced in proximity to schools.

Aggregating over all three workdays we also notice a another distinct peak between 11am and 12pm. It is less pronounced than the dropoff and pickup peaks and we have no intuition what might cause this, but maybe someone else knows.

Filtering out the urgency

So far we have only looked at the total number of begs, it’s time that we alleviate the problem of the kindergardener in need for a bathroom. The maximum begs in a 15 minute window in our dataset is 482 begs. We feel the pain of the kid that pushed that button and sincerely hope they reached the bathroom in time. The data mess this caused is fairly simple to deal with in comparison. NACTO pegs the ideal traffic cycle length in an urban setting at 60 to 90 seconds, so let’s just assume that the signal cycle length is 1 minute. That means if you just missed the green light, you will have to wait a minute for the next green. So our 15 minute window has at most 15 green phases. Then we can transform our unit of “begs” to an estimated number of “pedestrian crossing cycles”, that is cycles where at least one (and possibly more than one) pedestrian is crossing by capping the number of begs to 15. In other words, assuming a 1 minute signal length we are trying to count our 50 zen-like people the same way as the kindergardener in need of urgent relief.

So even just looking at (an estimate of) pedestrian cycles we notice an uptick during school days, that is more pronounced closer to schools.


The great news is that children still walk to school! The number might be lower than we would like, but it’s big enough to show up in data. And the relative effect is larger than the one in motor vehicle traffic, which probably means that generally we drive too much.

As always, the code to reproduce this analysis is available on GitHub for anyone interested in reproducing or refining the methods.

comments powered by Disqus