Map interface for bus routes

Ever found yourself struggling to figure out the bus routes when you are planning to get from A to B?

Obscure bus stop names are almost a de-facto standard, at least in Norway – and quite often they do not have a name (or any other identifier) at all. Even if you know the bus stop name from where you are going to take the bus and the destination, you don’t always know where these stops are.

In Trondheim a natural language system has been developed called BussTUC (Buss The Understanding Computer) or more commonly “Bus Oracle”. Here you can write, in natural language, a question about bus routes. I.e. “When is the next bus from busStopA to busStopB?” and similar. The answer is quite good, and is correct according to the current routes.

However, the problem occurs when you don’t know the bus stop name – but you know where you want to travel, or approximately where you want to travel.

To better fit this Atle and I developed a prototype of a map interface to BussTUC. In essence it is a map where you can click where you are and where you want to go. The system then finds the nearest bus stops to this and suggest the closest, all represented visually in the map. While using the map interface to input where you want to go, suggestions of relevant query to BussTUC are suggested – and a link to submit the query is provided.

The system currently knows about almost all bus stops provided by Team Trafikk and works quite well.

Extensions to the system are:

  • Enable for mobile devices – primarily location-enabled devices
  • Add the spatial route-data suggested by BussTUC in the map (i.e. draw the actual route)
  • Speed up BussTUC or develop own route suggestion system based solely on spatial information

Suggested improvements (numbered for identification purposes only):

  1. Display all nearest markers regardless of selected (emphasize the one selected) [Thanks to anders]
  2. Enable user to define “near” using circle (or similar + visual representation
  3. On the fly display of near markers when hovering mouse (i.e. indicate what to expect from query)
  4. Enable user to config how many markers to display near a point
  5. Clustering/star-shaping overlapping markers (ClusterMarker)
  6. Visual-magnifier over selected areas (i.e. similar to: Map Magnifier)
  7. Retain simplicity of system, regardless of functionality (i.e. enable configuration)
  8. Release Open Source (CC, Public Domain, limited license?) [Atle, Magnus]

The system is developed in PHP, JavaScript with a PostGIS enabled database. Source code is available by contacting me or Atle. Give it a try and give some feedback!

Screenshot of BussTUC map interface
Screenshot of BussTUC map interface

The system is (unfortunately) not affiliated with Team Trafikk and is a prototype not designed to scale very good.

15 thoughts on “Map interface for bus routes”

  1. Dette her var jo veldig lovende. :D
    En liten ting jeg kom på når jeg prøvde det var at jeg synes ikke de nærmeste markørene burde forsvinne selv om man har valgt en rute. Ikke at det er noen stor sak. Jeg veit jo heller ikke så mye om hvordan det fungerer programmeringsmessig.

    Uansett var dette veldig enkelt og absolutt noe som burde vært på TT sine sider.

  2. This looks very promising. :D
    A little suggestion is to leave the makers even if you have chosen your route. This way it would be easier to change your mind.

    Still this should definetivly be on the TT site in addition to the “Oracle”.

    (Sorry about the comment in Norwegian. A little absent-minded today.)

  3. Set up a spatial index on the database, dunno if it helps in any way, but since the queries are of a spatial nature is it worth trying..

    The code should definetly be cleaned a bit too, and maybe a post describing the mechanisms at work should be written. Well, just gotta finish my thesis first ;)

    (BTW: Should we opensource this?)

    1. I’m in the process of restoring the data to this system. Hopefully it will be restored and the system will be back up. I’m glad you like the system! Are you working on a similar system?

  4. Actually I haven’t tried the Google Transit API. I’ve used Google Transit, but I wasn’t aware that they had an API. Is it possible to add your own transit data to Google? In Trondheim we already have a natural language machine (bussTUC) which is providing answer to route/transit queries. However, I think, as indicated, that a better/alternative interface could be better for it.

Leave a Reply

Your email address will not be published. Required fields are marked *