Open Source Multi-modal Transit planning offline software

swbluto

10 TW
Joined
May 30, 2008
Messages
9,430
Hello. I don't really know how many people actually use transit here, that including things like buses, trains, or other transport services that follow a fairly fixed route with a schedule, so I don't really know how relevant this is, but I find that transit can be a wonderful complement to the point-to-point nature of personal vehicles like electric bikes and scooter in bringing benefits like...

-Substantially Increased range
-Insignificant costs (Especially true since I get a bus pass through my university)
-Significant convenience - as fun as might think it is to bike for hours on end to go 20 miles, I honestly would prefer to use that time to do useful things on my laptop or read a book instead of risking my life as a land-pilot. Honestly, I see "land piloting" as a task that I would always want someone / something else to do as it's irrecoverable time that comes to no "super direct" benefit (That is, it isn't necessarily connected to the benefit it provides) to myself, so I still dislike "driving" and "scooting" when I have the convenience of some other entity doing it.

So, I found transit planners that help navigate and find the best routes within complex transit systems. This was great, however, it seemed to suppose all users were walking between bus routes so this had inherent limits on range and "timing" when it came to "practical buses" to switch to. If one were to increase the range and reduce the timing through faster methods as biking or scooting, this would enable more possible route combinations which would possibly drastically increase transport efficiency (minimizing time, minimizing transfer amounts, whatever preference the user haves - I personally like to minimize transfers), but transit planners don't take this into account. Furthermore, there seemed to be no extendable transit planners to add this functionality as all the ones existing were "proprietary", and it further had the disadvantage you had to have an internet connection. Without the $60/month wireless connection fee from cellular plans, you pretty much can't do "spur of the moment" planning in getting from point to point, that one can do with a car, without really significant effort and time in planning.

So, I'm starting an initiative, to make open source multi-modal transit planning software. I want to make it as convenient as possible to use the transit system in making efficient use out of it for all users, including those with scooters or bikes, without requiring an active internet connection. I think one should be able to plan whenever, where-ever, without being tied to an expensive cellular contract or relying on the divine luck of stumbling across a local unsecured network. With this convenience, I think it should incorporate a map unto which you can point and click where you want to begin and where you want to go, and then it'll automatically evaluate the route and show it graphically.

So, if anyone wants to contribute, either through feature requests, visions in how things should be done, things to consider, programming help, whatever, feel free to do so. Things are kind of at an amateur-ish state right now and I'm now right now just setting up an SDL window along with the wxWidgets backbone for the GUI user interface. I'm also curious what might anyone recommend for developing open-source software and what a good medium for putting short-term and long-term development goals are. I find that I usually require a goal-based path in order to complete significant projects in an optimally efficient manner. Otherwise, I just tend to dilly-dally. :)
 
By multi-modal, I meant multiple modes of transport. A person could walk to a bus or they could ride a bike or scoot, or they could transition from using the bus to using a train or whatever, or they could possibly just skip the bus altogether. I don't think people with wheels are fairly represented by transit planners, and there's probably a route that comes within a reasonable distance of the destination in far less amount of time then a route that combines more buses/modes-of-transit which entails transition costs that equals up to wasted time.

I also want to make this transit planning software be able to keep track of "custom information" and have possible down loadable information, like markers to denote particular businesses and land-marks. This way, when I'm in a foreign area, I could ask ... "Where's the nearest bank?", and in doing so, the transit software could also find the best route there.

It almost sounds like I'm describing many navigation systems, except with an emphasis on transit. If you had a GPS device that could communicate your location to the software, then it sounds possible to do some automatic position placement.

The hardest part, I think, will be finding minable data sources to semi-automatically integrate this kind of data, but that can be added over time.

Anyways, it sounds like you're talking about something fairly interesting... microcontrollers wouldn't immediately strike me as something that would support this kind of application, unless they're capable of running openGL and an operating systems capable of running wxWidgets (Most versions of Linux should work).
 
A transportation planner sounds like a very worthwhile project.

Mining for schedules from web pages or downloadable .pdf transit maps might be challenging. Users of MythTV and other open source PC TV recorders have to outsmart TV companies that seem to try to obstruct the automatic mining of their TV schedules.

I'm guessing there must be some agreed on format for schedules and geographic location of stops. For instance in Sweden one can get point-point routes combining both rail and bus, and it seems to work across different bus and rail companies. Now if the right higher up government official could make this data public your project might be much easier. Most transit is heavily tax subsidized, so your politician should have some leverage getting data from them.
 
jag said:
A transportation planner sounds like a very worthwhile project.

Mining for schedules from web pages or downloadable .pdf transit maps might be challenging. Users of MythTV and other open source PC TV recorders have to outsmart TV companies that seem to try to obstruct the automatic mining of their TV schedules.

What I'm hoping to do is to build the tools, and provide the guides, necessary to extract and add custom data with relative ease and then other users can extract and to create the data relevant to their locale. I'm not going to go on the crusade to digitize the entire United States (Although I would certainly like the entire United States to be digitized), I'm going to focus on my local area and provide that data online, and a few others in the area might find it of use. If it seems sufficiently contagious, then I can imagine other users in other areas might take the initiative to extract and create the data for their local area and it can all be shared online. I really want some of the tools to be easy to use (At least for changing or adding data to existing data), but some things like creating the initial data set will definitely involve significant effort. Eventually, some kind of "community-corrected and updated" map and data should be maintained online using some kind of wiki-like process, so that the maps and data can be updated without placing undue effort on any single person.

I found the maps at "Open Street Maps" to be interesting. I noticed that they allowed the creation of bicycling and walking pathways that you usually don't find on Google Maps, including "unofficial ones". I use "unofficial paths" quite a bit, so I know how useful that kind of data might be. One thing I don't like about Open Street Maps is that you have to be a registered user to add content. Registering is just a burden that many people don't like to do if they don't have to, and it deters people from contribution from a project from the very people who could most contribute to it. I think they should have mechanisms for unregistered users to add content and then for registered users have power to "accept" the changes or revert if necessary, kind of like wikipedia.
 
You might want to check with the BikeThere (for google maps, but not part of google) people to see who they have contact info for, of the ones already developing such software. I've seen several info bits in their mailings that have had groups already creating this.

It'd be a good head start.
 
amberwolf said:
You might want to check with the BikeThere (for google maps, but not part of google) people to see who they have contact info for, of the ones already developing such software. I've seen several info bits in their mailings that have had groups already creating this.

It'd be a good head start.

Interesting. I went to search google for "Bike there" and it seems to be an online initiative to add biking to the transport option for regular google maps (i.e., you currently have walking, bus, and car as available sole methods of transport. They want to add biking as an option. This still seems to be a single-mode transport initiative as opposed to intermixing transport, and still relies on an active internet connection through google maps. It'd be interesting, though, if there were a few with the same intermixing-type of transport planning as mine.)

Anyways, I found that SDL was inappropriate for my goals as it conflicted with wxWidgets (Two simultaneous event loops, wooo!) and I went on to OpenGL but I found that it was exceedingly difficult to get 2d images loaded and drawn (And just to do the general 2d graphics) and wxWidgets alone isn't good for 2d graphics so I'm now trying out QT, that has the integrated GUI builder aspect and some 2-dimensional graphics ability while retaining cross-compatibility. It appears it's also used for quite a bit of modern software, suggesting that it might have the versatility and "convenience" I desire.)
 
swbluto said:
Interesting. I went to search google for "Bike there" and it seems to be an online initiative to add biking to the transport option for regular google maps (i.e., you currently have walking, bus, and car as available sole methods of transport. They want to add biking as an option. This still seems to be a single-mode transport initiative as opposed to intermixing transport, and still relies on an active internet connection through google maps. It'd be interesting, though, if there were a few with the same intermixing-type of transport planning as mine.)
Some of the things they've posted about in the emails I've gotten *were* about intermixing like this.

If I have time I'll see if I can find the specific emails I got that had that info, but Gmail's search engine sucks pretty bad. Google apparently does not use the same search engine for their main Google.com as they do for Gmail, Blogger's custom site search, etc, because the latter two won't find hardly anything I search for within my own data, even though I know it exists in there, and can manually find it eventually. But when I search my blog using the main Google.com search engine with the "site" function, it does find many (but not all) of the things I'm looking for. It isn't that the pages it doesn't find aren't cached, either, because it will find things on the same page that things it can't find are on, sometimes even within the same *sentence*. :(
 
I guess I just want an offline version of google maps with advanced transport planning. I want to create markers and be able to create partially transparent circles to denote a wireless network I've successfully connected to. :)

For the longest time, I've just wanted an offline version of google maps for my local area, and I've done that by saving huge satellite images to my computer. But it'd be neat to annotate it in a flexible manner, and also have advanced transport planning. The annotation part could be easily achieved using web technologies, but the computationally intensive process of path-finding in a complex network is best suited to a native application. I've been thinking of using Java as an applet form so this technology could be easily ported to an online service if that might be desired, but I don't really like the performance characteristics of java. When I want to go somewhere, I want to go *now*, not now plus 30 seconds waiting for the program to load and potentially miss the bus in the process.

Anyways, do they have a mailing list available somewhere that one can just browse? Or is it strictly email only?
 
I only know of the site itself:
http://googlemapsbikethere.org/
which I *think* the mailing list is simply a copy sent whenever they post something new.

Does the Google Earth app show you maps, as well as imagery?
http://earth.google.com/
I've not tried it, but it seems to say that it would.
 
Back
Top