ルート検索APIの提供について

 オークニーの森亮です。
このたび、「ルート検索APIサービス」の提供を開始しました。
このサービスの誕生までには紆余曲折がありました。

 話は2005年春に遡ります。
 当時、われわれはGRASSとMapServerの国際化実現の次のテーマを求めており、ルート検索エンジンをオープンソースプロジェクトとして開発するという目標を持ちました。その年の6月に、ミネアポリスで開催されたMapServerミーティングの展示会場で、偶然隣り合わせになったCamp2Camp(スイス)が、pgDijkstraというPostGISで動作するルート検索エンジンの発表をしていたのに出くわしました。そして、その場でわれわれは共同でそのプロジェクトを拡張することに合意し、pgRoutingプロジェクトへとつながったのです。後に社長のClaudeが語ったところによりますと、pgDijkstra自体は大学の研究プロジェクトとして資金提供されたのですが、その後が続かず、そのままでは塩漬けになってしまう寸前だったそうです。

 一方、オークニーは、運良く経産省系の団体からの助成金を獲得でき、本格的に開発を開始しました。新たに2つのアルゴリズムを実装し、機能も到達圏検索、巡回経路検索を加え、データベース上で動作する本格的なルート検索エンジンへと拡張させました。

 2006年、スイスのローザンヌでのFOSS4G2006で、pgRoutingが発表され、多くの参加者の関心を惹きました。オークニーでは、その後も機能安定化や高速化のための様々な努力を行い、開発コミュニティの運営も手がけてきました。2007年のカナダ、ビクトリアでのFOSS4Gでは、ワークショップを開催し、多数の参加者でにぎわいました。

 こうして、pgRouting自体は、海外のコミュニティにまず受け入れられ、「Orkney=pgRoutingの会社」として知られるまでになりました。一方、日本国内でのpgRoutingの普及は思うように進まず、会社の業績への貢献が無いままに時が過ぎていきました。

 その原因の1つは、オープンソースプロジェクトとしての成長を第一にしたため、サイト運営を英語で行っていることがあります。2008年春になって、日本ユニシス様からのコントリビューションで、ようやく日本語のサイトが立ち上がりました。
 次の原因ですが、pgRouting自体はライブラリであり、アプリケーションとしてすぐに動作させるには手間がかかることも普及に時間がかかる理由でもありました。

 ルート検索APIサービスの中身であるWeb Routing Serviceが考案されたのは、システム構築の手間を省き、誰でも手軽にルート検索機能を地図にマッシュアップできるようにしたい、という考えからです。これは、シリウスラボ様のご協力をいただいて、Orkney Web Routing Service APIとして20083月に実験的な公開が実現しました。約1年間の実験により、動作の安定性やパフォーマンスの検証を行い、ようやく今回の商用サービス化へと実現しました。

 ルート検索APIサービスは、仕組みとして2つの特長があります。一つめは、簡単にシステム連携が実現できるRESTfull APIで提供されていることで、二つめはコアエンジンにデータベース上で動作するpgRoutingが採用されていることです。前者については、そのメリットがすぐに理解できると思いますが、後者については、少し説明が必要です。

 データベース上でルート検索エンジンが動作する場合、バイナリー形式でネットワークデータが格納されたタイプのエンジンよりも動作速度面で劣ることがありますが、 PostgreSQLによる一般的な検索、PostGISによる空間検索とpgRoutingによるルート検索を同時に組み合わせた柔軟で高度な検索を SQL文により実行することができます。これ故に、「カスタマイズルートAPI」サービスが提供できるのです。

 このようなメリットを持ったルート検索APIサービスを、ぜひ皆様にご活用いただければと思います。

コメント

この記事へのコメントはまだありません。