Repurposing OpenTripPlanner for Ride Sharing

Video in TIB AV-Portal: Repurposing OpenTripPlanner for Ride Sharing

Formal Metadata

Repurposing OpenTripPlanner for Ride Sharing
Title of Series
CC Attribution 3.0 Germany:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date
Open Source Geospatial Foundation (OSGeo)
Production Year
Production Place
Portland, Oregon, United States of America

Content Metadata

Subject Area
OpenTripPlanner is an open source application for building multi-modal itineraries using OpenStreetMap data about walking and driving routes and General Transit Feed Specification (GTFS) data for public transit data. With some creative adjustments, OpenTripPlanner can also be used to generate itineraries for ride sharing based on a pool of existing rides.This talk will demonstrate taking advantage of OpenTripPlanner's flexibility in this fashion. The example of repurposing OpenTripPlanner will serve as the basis for a more general discussion of ways that functionality relating to geospatial data can be reused in unanticipated ways.
Keywords opentripplanner osm ride sharing routing java java spring http api
Computer animation Computing platform Library (computing)
Area Presentation of a group Multiplication sign Set (mathematics) Open set 10 (number) Film editing Computer animation Spherical cap Lecture/Conference Computer configuration Software framework Right angle Mathematical optimization Physical system
Point (geometry) Implementation Matching (graph theory) Multiplication sign Set (mathematics) Open set Line (geometry) Canonical ensemble Number Product (business) Exterior algebra Computer animation Lecture/Conference Authorization Right angle Bimodal distribution Quicksort Routing Computing platform Mathematical optimization
Pairwise comparison Group action Transportation theory (mathematics) Mapping Shared memory Limit (category theory) Type theory Computer animation Software Different (Kate Ryan album) Bimodal distribution Quicksort Abstraction Asynchronous Transfer Mode
Point (geometry) Service (economics) Observational study 1 (number) Set (mathematics) Real-time operating system Open set Parameter (computer programming) Thresholding (image processing) Number Goodness of fit Mathematics Computer configuration Representation (politics) Endliche Modelltheorie Extension (kinesiology) Metropolitan area network Physical system Pairwise comparison Weight Shared memory Thermal expansion Bit Line (geometry) Lattice (order) Cartesian coordinate system Computer animation Order (biology) Formal grammar Right angle Quicksort Routing
Group action Implementation Concurrency (computer science) Open source Code Java applet Multiplication sign Virtual machine Real-time operating system Primitive (album) Open set Mereology Twitter Formal language Power (physics) Bit rate Bridging (networking) Computer configuration Semiconductor memory Bus (computing) Endliche Modelltheorie Extension (kinesiology) Innere Energie Compilation album Social class Graphics tablet Addition Programming language Matching (graph theory) Projective plane Process (computing) Computer animation Software Integrated development environment Password Quicksort Abstraction Library (computing)
Group action Standard deviation Graph (mathematics) Service (economics) Mapping Information Computer file File format Real-time operating system Open set Cartesian coordinate system Fluid statics Type theory Mathematics Computer animation Software Quicksort Extension (kinesiology) Routing Position operator
Computer animation Lecture/Conference Limit (category theory) Abstraction
Group action Game controller Service (economics) Open source Transportation theory (mathematics) Divisor Code Multiplication sign Decision theory Direction (geometry) Connectivity (graph theory) Adaptive behavior Open set Mereology Event horizon Perspective (visual) Lecture/Conference Different (Kate Ryan album) Term (mathematics) Automation Endliche Modelltheorie Data conversion Information security Mathematical optimization Position operator Physical system Area Pairwise comparison Matching (graph theory) Graph (mathematics) Channel capacity Plastikkarte Basis <Mathematik> System call Vector potential Word Uniform resource locator Software Personal digital assistant Order (biology) Right angle Quicksort Reading (process) Spacetime
hello everyone thank you for coming from my name is Daniel Luxemburg and the city of a company called bandwagon were from Brooklyn were working on putting people in cabs together to make driving more efficient and I'm excited to be talking to you about 1 of the ways we're trying to do that using a library of platform called open triplet so there's been no shortage of work
done on the question of how to optimize cab rides particularly in large urban areas like in York city just the week before last there was a major paper at MIT that said that right Sheng could cut cabs road time by 30 % it describes itself as a new analytic framework to impose on tens of millions of recorded of GPS data recorded from York City caps I the problem with this is that while it's easy to take it's not easy well it's 1 thing to take an enormous dataset and apply heuristic to see which rights can be shared or which can't at a different thing to try to do this in practice of 1 of the researchers describe the research as shown would happen if people have and have sharing as an option the and so what I like to look at is how we can use tools like open trip planner which helps present people with options for how to get from 1 place to another to that promote sharing as an option for travel so what are we trying to do we wanna create shared
itineraries based on requests as they come in and not from some pre-existing set but as people decide they need to get from 1 place to another now that is a potential shared ride in a system that can be matched with another incoming requests that comes in at a later time not a bunch of data that we have all at once and we want to propose the itineraries the passengers are likely to accept in a theoretical world where we can
say here all the shared right can generate years the optimal set of matches that we don't need to worry about whether people are going to tolerate delays potentially having tried with with a pat on the other party all any number of things that might affect whether or not we can actually shared rights so why try open put trip planner to do this open trip planner is a platform for multimodal trip planning all of you probably use something along these lines before whether it's backed by open trip planner this sort of canonical implementation is actually for time at the local and authority that something like Google or Apple Maps allows you to search and presents multiple alternatives from how to get from point a to point B there's companies like cops
stop that do this exclusive that inferred from this is the main product and so there was an existing codebase was focused not just on routing which is you know something 20 people work on but on comparing routs and comparing different types of
rocks and ride sharing is an example of multimodal transportation there are different modes of different ways to get from 1 place to another via transit walking car a cab cab sharing more ride-sharing can be another 1 of those types and so if we have software that is designed to make those comparisons it makes sense to try to leverage and most importantly or at least most importantly for why I want an excited to give this talk it's an opportunity to push the limits of our abstractions around the idea of transit when we think about friends it we did that we think about the established tools that we have for travel busses trains Pearson boats occasionally trams large vessels moving large numbers of
people according to set timetables and behaving expected ways not transient opportunities for sharing resources and so what would it look like if we did expand our concept of trended to include the sort of opportunities so hopefully that was not to light and this is a map of a handful of rides from places in Brooklyn and Manhattan toward airport they'll start different places there is
actually 2 along the school for there are at the bottom right there will be important later on all taking separate cars even know for most around they'll be overlap so the modifications open trip planner that at we build at bandwagon we used to combine these routs based on a number of parameters to going to talk about today released described are sharing ratio threshold and a trip extension of threshold so for the sharing ratio we say this is the amount of a trip that has to be shared for us to consider it worthwhile to try to propose this shared a people for a trip expansion threshold we say here is the amount world willing to force ask people to go out of their way up in order to make this trip work and so they're getting into the details of how these weights are applied this is the 1 ride the we get out of the 5 to 1 man and kind of so and so on the based on the the set of parameters if we loosen them if we check if we say we can have less of a right the shared we had another 1 now we have what was once for rides is now to we've you know done better than the 30 per cent decrease that the study found in a big big
exciting when when we can tighten the other grammar as well and say we don't want to extend strips beyond a very little bit and now the only right we generate is the 1 where it's essentially in on the way pick up up from the bottom right that's why mentioned that that those there the point of this is to demonstrate that it is not only 1 dimension of good possible shared rides too bad possible shared rides or convenient ones too inconvenient ones but that there are multiple ways to consider but what counts as a good opportunity or bad opportunity to put people in the same car is also indicates 1 of the challenges of doing real time matching which is the requires persisting a representation of demand for share rides not just supply because there is not a static set of here are the possible rights to join those change when people make requests of request to the system changes what is available because when sharing supply and demand have a bi-directional relationship so this is the sort of mental model that we use them to think about this relationship we say there's a request I ask our application our are modified open trip planner I want to go from South Brooklyn to LaGuardia service OK have a look at the available data here you could walk it would take a while but there's invented options are very good but there's someone coming your way in 10 minutes and you could join the ride and and I think that's the best 1 multimodal for comparison including shared cab ride now I have this proposal that I can choose to opt into or to ignore the ones I do and if the other person sort of agreement advanced or double opsin we have a we refer to as a successful manifest this is a trip planned that we've sort of locked in and it's 1 of those red lines were good to go whether or not those proposals are good or will be accepted hinges on a lot of questions and a lot of them a variable from day to day or from trip to trip how long does it take for someone to get in or out of a car this is depend on whether the traveling with children does depend on whether it's snowing was the viability of having passengers be picked up or wrapped up at a shared stops the vehicle needs to stop once up by having them walk to a meeting point of party size baggage the
presence of young children pads all these can influence whether or not someone actually agrees to take a short ride when they are when the vehicle comes to pick them up tolerances for not just initial wait times that additional wait times if we know that someone is going to run off if they are made to wait for the vehicle promised for more than a few minutes and we know that the other party the 1st pick up is liable to be late based on their previous behavior or maybe we are smart enough not to try to put that match together and that would our match rate increase the extent to which were able to save the CEO to the road time all the benefits that people have been looking for looking to capture and consolidation to achieve so this is the 1 little piece of code will look at but it's sort of just
very truncated that Ruby code and it does what I think is 1 of the neatest things which is that it uses Jay Ruby which is an implementation of the Ruby programming language on top of the Java Virtual machine which is what's used to compile run jobs are run compiled java and imports the whole open Trip Planner class system everything up from that project which is written in Java into the a Ruby environment which something else might have been written and allows us in an environment to modify and adapt all those classes for something like generating proposals that we just discussed it allows us to use the routing work that was done modify it specifically because Ruby has opened classes which means that we can take the work done by open trip planner and extend and modify in way in in creative ways without having to do too much dissecting in rewired the so I think this is a really great and celebration were the example of what we're talk about our open source software for geospatial analyzes the bridge an existing codebase that deals with things like users in their propensity to be late and all these sorts of things with something like a bunch of planets written in other languages is very domain-specific that we don't wanna contaminate with all the nonsense about passwords and finance and etc. and it gives us a method have talk to each other and leverage both of their respective strengths and but to be specifically combine of provides for really powerful concurrency on over Jeremy specifically extends rubies concurrency primitives to make them more powerful by leveraging job is particular strengths up with handlingconcurrency and their libraries and Ruby like 1 called celluloid it introduces more higher abstractions of 1st handlingconcurrency like an actor model Milea from things like Erlang were small talk but that we can use to start thinking about comparing right request and trying to match them together in memory in real time so not just having them saved and then searching for them which is what we have to do in the currently so how can we think this further so part of open trip planner that I didn't mention is yeah that's which is the general trend of the specification it's the way data about the transit options get into open for planners so that knows to offer you this train ride this bus ride etc. is
the format along with Open Street Map data that comprises the graph that the open for planner software uses to generate rats it also was not really conducive to what I described earlier is sort of a transient transit opportunities and it's also why
is a mention . txt files seems like that might the change sometimes but I can make certain assumptions about the way in which the offerings are structured static route static timetables certain types of information about fares about the entities that are providing this information things that might not necessarily be true for parking that ad hoc opportunities to share vehicles there is an extension to Judea at best called as real time but unfortunately but it's only for trip update service lots and vehicle positions sort of new information about existing routing opportunities not adding new information to the data available the there might be other or new standards there are plenty of people working on the correlated applications these days and some of them might some of opening API is some of them might start promoting standards for exchange of information they can be used to find possible shared grouts but maybe there's even room for an extension to something like
best or or something inspired by it they could be used for the purposes of I was discussed I'm
and all of these fall more generally under the heading of what I described before is pushing the limits around the abstraction we have around friends if we can think about
transportation and transit not just as the infrastructure we have but as repurposing infrastructure that but we think of differently such as cab rides we can start to think about our software tools and are open source resources but in different ways and find different ways to use and take advantage of them and I think that's really exciting and looking for to continue to continue to pursue pushing open for planner further into the area of individual vehicles and they give I think the time for questions so it I have a question
I'm wondering what of the of Goober might her services like that may have held on what you're doing so that is a question is often asked the they recently announced the carpooling system as part of their service but it's a little bit different than what we imagine as being possible because it assumes that people have already booked in reserve right in that someone else asks for 1 and then is picked up on the way which means that the 1st party has to agree to an unshared right 1st which is a little confusing and I but makes sense when coming from the perspective of their original model in terms of an evolution on on but they also and this is what I was sort of alluding to when I mentioned that existing companies in this space are opening API is the recently did as well which opens the possibility of you know they might have a coupling system but they also have an interest in constraining those couples to their own vehicles someone else might have a pool of potential trips that's comes from and an event spaces calendar of a when events and and so we can anticipate the demand for taxis someone in the middle could find ways to combine that data efficiently to create shared rights need using open for planner maybe using something inspired by an adaptation of the on so I think that there is even in a world of many many cab companies offering many different carpooling systems of their own but also their own API city with availability in requests there were always be opportunities to improve upon the way we coordinate those are the were specifically have you the was specifically have you been attested like our new attacks he's using and allowing users of guessing what I as I observed in 1 make this all about bandwagon the yes Men lighting is operational in New York and you can order cars with that and hopefully will be put in a call with another person and we're working on sort of making the feature viable even in places where we do not have cards to pick you up but you can find your own car with the person that we have parity with on until we get our own cars there have you done any discussion they're thinking uh with your colleagues about the not terribly distant future of automated vehicles the yes and it seems like the it seems like the challenge of coordinating them to be efficient won't go away and this things like a b a whole bunch of new we're opportunities for them to turn into slight said he do something that or other optimizations that we can talk about when that time comes on but the area where people going when they're going there when we can most efficiently moving at the same time can be nudged in what direction about what we have to take into account in order to do that effectively those things seem like they would be remain concerns even if the cars or funny little things the drive themselves but might be it might be it might even make those optimizations they're more concerned with the with the passengers behavior more realistic to implement because we could have more fight because the be presumably more finely grained control of the vehicles and their knowledge of their positions and such and come true of interplanetary was is supported by conveyor 1 Brennaman innocence onset what did you guys mention them from that I will arrange them are you merging onto the code base of we had conversations with them when they were the Open Bank Project and top to peace and we're not actively contributing and would like to this is sort of a 1 of the ways we are tackling the problem of but a centers sort of know and we would really like to right now a sort of working out how we think this is best done this is not necessarily that the answer yes so on the open coplanar graph you build using any of the printed data or secures pretty much vehicles in walking or biking more so we don't we don't need the transit data further actually providing a service on I ideas we could but then we would be telling people to do other stuff which we really don't do but we have put it in to see what comes out relative to what we think is possible sort of the basis for comparison and because it's also because it's formatted correctly on it's very helpful to have the feeds from the agencies as the basis to try to figure out what the best way to get the data into the system is so it in those 2 capacities the this model yeah have you had of use case in people using this we had a situation where the spending of particular I you the rush hour spike in usage words particular location of like a sporting event her cultures something so people going to the airport is a good 1 for us because it's something people sometimes when they're more responsible than I am plan for like further in advance and so are more likely to be the flexible at the time at which they're making the decision that they need a cab on whereas if you're on the street particularly in somewhere like New York you can just sort of get 1 so things were people planning also we we have a another a whole other being you about events and airport departures and trying to put people missing cab when they're leaving from the same place as opposed to going to the same place which is a slightly different problem because it's more about arranging their underground departure do you have a human components a like ranking a reading passengers Selena Yelp stolidly I can imagine there being a situation where certain passengers are 2 peoples other passengers want to write with yes there are stars on in the future will be interesting to see if it can be a system more finely grained than stars I mentioned a high but I mention a hypothetical where people's propensity to be let on time or not that could be an independently considered factor in their desirability using match partner on even if they had like good stars otherwise ch that thank you thank you