時系列に基づく地図システム「TimeLineMap」

加藤大騎

背景
2005年に米 Google 社が公開した GoogleMaps に端を発する電子マップの機能向上がここ数年目覚ましい。Ajaxと呼ばれる動的コンテンツ表示機能を地図に組み合わせることは当時としては画期的で、また同年に公開されたGoogleMapsの機能をプログラムから利用するためのGoogleMaps APIは世界中の多くのIT技術者の注目を集めた。その中で、上野研究室の松村飛志はKsGMapwikiと呼ばれるシステムを開発した。これは、 Googleマイマップに似た機能を、同サービス開始前に既に実現していたものであった。また、これはサーバーに設置するローカルコミュニティ向けのシステムであり、渋谷グラフィティマップ(古沢)、ライブハウスマップ(澤田)などの事例で実際に用いられ、研究室内のコミュニティにおける電子マップの基盤として活用された。また、本プロジェクトの活動の成果として、土橋研究室の瀧本はGPS携帯から電子マップに情報を送信できるGoovieを開発した。こちらは前述のKsGMapwikiと対照的である公開型サービスの形態を取るシステムで、継続的にサービスを提供できる特徴を活かし、現在でもフィールドワークに用いられている。
以上のように、これまでの電子マップは空間的関係を視覚化する道具として用いられてきた。今回、これに時間的距離を可視化するため、時間軸の部品を電子マップに加える事を試みた。また、本プロジェクトでは、多数のコミュニティに使用してもらう都合上、ローカルコミュニティでの管理が容易なサーバー設置型のKsGMapwikiをベースとした。
開発
図1 : システム画面図-1
システム画面

本研究ではKsGMapというGoogleMapsのフレームワークを利用している。また、時系列を扱うインターフェイスとして米マサチューセッツ工科大学が提供するTimeline APIを採用した。以上のようなAPIは、これまで単独で利用されてきたが、両者の機能を統合し、KsGMapwiki由来の書き込み機能を加える事で、図-1に示すシステムを作成した。

運用

本プロジェクトにおいて開発したシステムを、研究室のネットワークを活かして研究室の活動や外部の団体などに実際に使用してもらった。その上で、機能の使い勝手などをフィードバックしてもらい、画面の表示手順や機能について必要な改善を行った。加えて、ソースコードのいたる所に散在していた各種設定を一つにまとめる事で、システムを設置する際の手順の簡易化も実現した。
機能
図2 : GPSユニット GPS-CS1K図-2
GPSユニット GPS-CS1K

本システムでは地点情報に時間の情報を持たせ、XML形式で保持されるデータベースをTimeline APIからも併用することにより、地理的な距離を表現するだけだった従来の地図システムに、同時に時間的距離という新しい関係性を示す方法を実現した。地図と時系列のこれまで独立していたシステムのインターフェイスを相互連動させ、一つのシステムへ統合した。また、上野研究室の小西・宮本が開発した LOCO MAPというシステムがある。これは、GoogleMapsを利用できない携帯電話端末上において、Flash Liteを用いる事により動的な地図閲覧を実現したものである。このシステムと連携し、携帯電話からもアクセスできる機能を実現した。また、本システムは GPSユニットにも対応している。(図-2)これは、フィールドワークを支援する機能として実装したもので、一般的なデジタルカメラまたは携帯電話で撮影したJPEGファイルとGPSユニットが記録したログファイルを一括してサーバーに送信し、解析プログラムを実行する事で利用できる機能である。
図3 : 経路表示機能の動作イメージ図-3
経路表示機能の動作イメージ

また、前述のGPSユニットを用いた機能の実装による副次的成果として、経路表示機能も開発した。一括登録機能を利用した際にログ情報を変換し、サーバー上にファイルを残すことで、写真を取り歩いた自身の移動経路を地図上に合成する事ができる。この機能は通常使用する地図のレイヤーに線を被せる事で実現している。しかし、線を表示する機能は処理のウエイトが大きく、一つのファイルで数時間続くような巨大なログを用いるとブラウザがフリーズしてしまうため、指定ステップ毎にログを読み飛ばす事によりその問題を解消している。動作のイメージを示すと図-3のようになる。
今後の課題
今後の課題としては、特にタイムラインのバンド周りの設計に重点的に取り組みたい。現時点では目盛りの単位を動的に変更できないという問題もあり、また、バンドの幅を変更できるようにしたいという要望も多く寄せられているため、JavaScript部分の処理でこれを実現したい。また、開発を短期化するために採用したフレームワークの仕様から競合やレイアウト崩れなどの問題が生じつつあるため、KsGMapを取り除いたバージョンの作成を進めて行きたい。
参考文献
・瀧本晋也,2007,「空間的ライフログ共有システムの開発と実装」,平成19年度卒業研究概要集・滑川海彦,2007,技術評論社,ソーシャル・ウェブ入門・藤沢市‐緑の交流ネット

注釈
GoogleMaps API・・・Google Maps APIとは、自分のサイトに地図を掲載することができる仕組み
KsGMap・・・Google Maps API を用いた地図を簡単に設置することができる汎用スクリプト。JavaScript を知らない場合でも、簡単に高機能な地図を自分のサイトに組み入れることができる
XML・・・文書やデータの意味や構造を記述するためのマークアップ言語の一つ。マークアップ言語とは、「タグ」と呼ばれる特定の文字列で地の文に情報の意味や構造、装飾などを埋め込んでいく言語のことで、XMLはユーザが独自のタグを指定できることから、マークアップ言語を作成するためのメタ言語とも言われる
Flash Lite・・・Flashを元にして、携帯電話専用に開発されたものである。パソコンで使われているFlashの機能を全てサポートするには、携帯電話のCPUパワーやメモリなどのリソースは十分ではないこと、携帯電話にしかない機能をサポートすることなどを考慮して開発された