Skip to content

Add occupancy_percentage - #213

Merged
barbeau merged 3 commits into
google:masterfrom
TransitApp:occupancy_percentage
Apr 28, 2020
Merged

Add occupancy_percentage#213
barbeau merged 3 commits into
google:masterfrom
TransitApp:occupancy_percentage

Conversation

@gcamp

@gcamp gcamp commented Apr 9, 2020

Copy link
Copy Markdown
Contributor

The current enum for occupancy doesn't provide enough granularity, for this reason I would suggest adding occupancy_percentage.

It would be percentage value representing the degree of passenger occupancy of the vehicle. The values are represented as an integer without decimals. 0 means 0% and 100 means 100%. The value 100 should represent the total maximum occupancy the vehicle was designed for, including both seated and standing capacity. It is possible that the value goes over 100 if there are currently more passengers than what the vehicle was designed for.

This field is experimental at the moment.

@gcamp gcamp mentioned this pull request Apr 9, 2020
@skinkie

skinkie commented Apr 9, 2020

Copy link
Copy Markdown
Contributor

I like the approach where over 100% is exceeding the designed safety limit.

+1

@stevenmwhite

Copy link
Copy Markdown
Contributor

All for this -- exactly as described.

+1

Comment thread gtfs-realtime/proto/gtfs-realtime.proto Outdated
@lauramatson

Copy link
Copy Markdown

We are interested in making this information available in light of COVID and asking customers to wait for less crowded vehicles. If the current "safe" capacity of a bus is 10 passengers to allow for social distancing, would having 10 passengers mean occupancy_status = 100? Or would it be tied to the physical seating/standing capacity of the vehicle so occupancy_status = 20?

@barbeau

barbeau commented Apr 9, 2020

Copy link
Copy Markdown
Contributor

@lauramatson That's a great question. I would say if the "safe" capacity is 10, meaning that drivers are instructed to only allow 10 riders board, then 10 passengers would be occupancy_status = 100.

We might have to tweak the language in the description just a bit for this - maybe instead of:

The value 100 should represent the total maximum occupancy the vehicle was designed for

...it could be:

The value 100 should represent the total maximum occupancy the vehicle was designed for and current operating regulations allow

Or something similar. Suggestions for better text welcome.

@barbeau barbeau added the GTFS Realtime Issues and Pull Requests that focus on GTFS Realtime label Apr 9, 2020
@mike-swiftly

Copy link
Copy Markdown

This will be great addition.
+1

Co-Authored-By: Sean Barbeau <sjbarbeau@gmail.com>
@nighthawk

Copy link
Copy Markdown

I would say if the "safe" capacity is 10, meaning that drivers are instructed to only allow 10 riders board, then 10 passengers would be occupancy_status = 100.

This would be problematic for data consumers. If you get the data for two operators, one using the vehicle's actual capacity and one using the currently recommended capacity, then how do you know which is which and what to show to users in light of @lauramatson's use case? In the first case a value of 50 might mean "This is pretty fully, so maybe consider taking another bus" and in the second case it would mean "All good, plenty of space".

@barbeau

barbeau commented Apr 10, 2020

Copy link
Copy Markdown
Contributor

I would think that in both cases you would want a user to look at it as "This is pretty full, so maybe consider taking another bus". But I'd certainly welcome other perspectives on this.

@gcamp

gcamp commented Apr 10, 2020

Copy link
Copy Markdown
Contributor Author

@nighthawk It's true that it's not a perfect solution but I way prefer agencies adjusting their percentage to reflect possible load. It's way better for an agency to put 100% if they don't accept passengers even if in practice there's "plenty of space".

@paulswartz

Copy link
Copy Markdown
Contributor

For producers: are you planning to report an exact percentage, or some amount of bucketing? We're currently looking at 20% buckets, so reporting 0/20/40/60/80/100%.

@stevenmwhite

Copy link
Copy Markdown
Contributor

For producers: are you planning to report an exact percentage, or some amount of bucketing? We're currently looking at 20% buckets, so reporting 0/20/40/60/80/100%.

While our internal APIs report an exact percentage, we generalize it to those same buckets when putting the information into our white labeled rider-facing smartphone apps. We show it visually (rather than the numbers), but we use a 5-step visualization for capacity.
image

To make it sufficiently "fuzzy" I think it's likely we'd report the same buckets out on GTFS-RT feeds.

@gcamp

gcamp commented Apr 17, 2020

Copy link
Copy Markdown
Contributor Author

This has been open for over a week and seems there's a consensus, so per the official process I'm calling for a vote. Reminder that this is an experimental field.

Vote will be closed Monday April 27, 23:59:59 UTC.

@skinkie

skinkie commented Apr 17, 2020

Copy link
Copy Markdown
Contributor

+1 OpenGeo

@paulswartz

Copy link
Copy Markdown
Contributor

+1

@barbeau

barbeau commented Apr 17, 2020

Copy link
Copy Markdown
Contributor

+1 USF

@stevenmwhite

Copy link
Copy Markdown
Contributor

+1 GMV Syncromatics

@drewda

drewda commented Apr 17, 2020

Copy link
Copy Markdown

@mike-swiftly

Copy link
Copy Markdown

+1 for Swiftly as consumer and producer

@abyrd

abyrd commented Apr 22, 2020

Copy link
Copy Markdown

+1 Conveyal

@Bertware

Copy link
Copy Markdown

+1 for Trafiklab as a producer

@gcamp

gcamp commented Apr 28, 2020

Copy link
Copy Markdown
Contributor Author

Hi all, the voting has concluded. The result is 8 votes for the proposal and 0 against. The proposition is accepted!

@barbeau
barbeau merged commit 270830c into google:master Apr 28, 2020
@barbeau

barbeau commented May 6, 2020

Copy link
Copy Markdown
Contributor

Hi all! For everyone that participated in this discussion for occupancy_percentage - could you please take a look at #223?

Please comment there for which you prefer - OccupancyStatus vs. occupancy_percentage.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

GTFS Realtime Issues and Pull Requests that focus on GTFS Realtime

Projects

None yet

Development

Successfully merging this pull request may close these issues.