LA Grub Grabber (LAGG)
description
Transcript of LA Grub Grabber (LAGG)
LA Grub Grabber(LAGG)
Advanced GISUrban Planning
UCLA June 6 2011
David BenoffDavid Peterson
Contents
• Quick review of the “state of the art” • Website functionality: what it does • Live example • Behind the scenes: how we did it • Contribution to Transportation Planning • Questions
Go Metro
Go Metro
• Good:– Restaurants along bus and rail lines
• Not so Good:– Sparse– No real crowd sourcing – Static – updates made (if at all) by Metro staff– Limited dining selection
Google Search: Restaurant
Google Search: Restaurant
• Good:– For almost everything…
• Not so Good:– Finding restaurants within a radius– Can’t define walking radius– Transit options are decent, but what if I want to
know how the restaurants around each stop on my route? (can do it, but really clunky)
– No Parking information
Yelp
Yelp
• Good:– Walking distance, driving distance function– Integration with Google Maps– “select area” function with map is good
• Not so Good:– For “how to get there” (no transit options listsed
or driving directions , but this exists for the mobile app)
What’s different about LAGG?
LAGG
LAGG: Find Yourself
Enter your location or Click on the Map to find restaurants within a ¼ - Mile radius
LAGG: Go there - BUS
Find all bus routes within a ¼ - mile radius of your location
LAGG: Go there - BUS
Find other relevant restaurants on other bus route within a ¼ mile walking distance and 30 minute distance
LAGG: Go there - DRIVE
View all LA City – owned parking lots• Friends driving to meet you• You need to drive to get to a transit stop
LAGG: Be Choosy
Choose zip codes with high/low restaurant density
LAGG: Share
Share a restaurant you like via Google Forms
LAGG – Live!
Behind the Scenes – Metro Bus Network Algorithm (custom function)
• Transformed Metro GTFS data into the table structures we needed andcreated Fusion Tables services to provide trip planning functionality.
• We use lat/lon to look up stops within max walk distance
• Get departure times and trip IDs for nearby stops within time threshold
• Find arrival times and stop IDs within the time threshold for theassociated trip IDs
• This gives us a set of stops that are reachable within the max timethreshold, with a variable walk distance around each up to the maxtime, or max walk distance (whichever is lower). We add a marker foreach stop.
Behind the Scenes – Restaurant Finding Algorithm (custom function)
• Easy way: Do a radius search for each stop. But this is very slow.
• So we compute a bounding box for the stops and do a singlecategory/box search on CityGrid, giving us a large result set.
• We then iterate through each CityGrid result and see whether it iswithin the max walk radius of any of the stops. If so we find theshortest path (walk + bus) to the location and then check whether the total trip time is within the threshold.
• If the location is within the max trip time threshold and max walkdistance, we add it to the map.
Behind the Scenes – Google Fusion Tables (custom function)
• Restaurant density by zip code, number of restaurants by zip code, and LA City Parking Lots all hosted on Fusion Tables
• We query fusion tables and bring the various layers onto the map
Behind the Scenes – Google Forms
• We create a Google Form and embed it on the site.
• Once entered the form places a marker on the map
Contribution to Transportation Planning
More efficient trip-making– Destination Constraint:• Choosing the right mode for the destination• Example: Should I walk, drive, or take a bus?
– Modal Constraint:• Choosing the destination based on the mode available• Example: I don’t have a car, but is there a bus?
Contribution to Transportation Planning
More efficient trip-making– Choosing high/low density restaurant “zones”
(1/4-mile, or zip code)• Understanding the possibilities of the trip• Example: If I don’t like the restaurant I picked, do I have
to travel far to find another one, or are there many in the “zone”?
Happy Eating! Questions?
Appendix
Project: topic, description, and functionalities Who is it for, why is it useful, how are you implementing itRelevancy to planning or related field
Diagrams: flowcharts, sketches and/or wireframes that describe the site’s planning process and functional flowTeam: Description of roles and what each team member didEvaluation: what worked, what did not, what would you do if you had more time, what is the future of the project (if any)Documentation: define the technical requirements:
User interactionCustom functionsCustom layers