MULTISOUP

MULTISOUP

MULTISOUP

マルティスープ
Staff Blog

Introduction example

2016.12.22

未来の交通状況を考慮したルート検索

blog2

みなさん、こんにちは。

 

Google Maps API では、指定した日時の交通状況を予測したかたちでルート検索を行なうことができます。

例えば「12月24日 10:00」にA地点からB地点に移動するときのルートと「12月26日 02:00」に移動するときのルートでは、交通状況が異なるため、移動の所要時間は違った結果になるはずです。

 

Google では過去の交通情報を蓄積した結果から、未来の予測を立ててルート検索を実行することができます。

 

対象のAPIは、Google Maps Directions API、および Google Maps DistanceMatrix API ですが、今回は、Google Maps JavaScript API の「DirectionService」を使用して説明します。

// ルート表示するためのオブジェクトを生成
var _directionsService = new google.maps.DirectionsService;
var _directionsRenderer = new google.maps.DirectionsRenderer;

// ルート結果を地図に表示するための設定
_directionsRenderer.setMap(_map);

// ルート結果のテキスト情報を表示するための設定
_directionsRenderer.setPanel(document.getElementById('route-result'));

// ルート検索を実行
_directionsService.route({
	// 出発地点
	origin: start,
	// 到着地点
	destination: end,
	// トラベルモード(自動車)
	travelMode: google.maps.TravelMode.DRIVING,
	drivingOptions: {
		 // 出発予定時間 (未来の時間を指定)
		departureTime: new Date('2016/12/24 09:00:00'),
		// 交通状況モデル
		trafficModel: google.maps.TrafficModel.BEST_GUESS
	}
}, function(response, status) {
	if (status === google.maps.DirectionsStatus.OK) {
		// 結果を地図に表示
		_directionsRenderer.setDirections(response);
		// 通常の時間
		var time1 = response.routes[0].legs[0].duration.value;
		// 交通状況を考慮した時間
		var time2 = response.routes[0].legs[0].duration_in_traffic.value;
	}
});

 

今回のポイントは「drivingOptions」のパラメータです。

departureTime: ルート検索を予測する時間(現在日時以降の未来の日時)を指定
trafficModel: 交通状況を予測する方法を指定

交通状況を予測する方法は、下記3つから選択します。

google.maps.TrafficModel.BEST_GUESS: 正確に予測
google.maps.TrafficModel.OPTIMISTIC: 楽観的に予測
google.maps.TrafficModel.PESSIMISTIC: 悲観的に予測

 

ルート検索実行後の結果は、以下のように取得ができます。

// 通常の時間
var time1 = response.routes[0].legs[0].duration.value;
// 交通状況を考慮した時間
var time2 = response.routes[0].legs[0].duration_in_traffic.value;

 

以下の例では、東京を午前8時に出発し、大阪までのルートを検索した結果です。

予測日時通常正確に予測楽観的に予測悲観的に予測
2016年12月24 08:005時間58分5時間55分5時間23分7時間04分
2017年01月05 08:005時間58分5時間50分5時間19分6時間59分
2017年05月03 08:005時間58分5時間47分5時間15分6時間55分
2017年08月15 08:005時間58分5時間48分5時間18分6時間55分
2016年12月24 00:005時間58分5時間47分5時間25分6時間40分

 

以下は0時出発の場合です。

予測日時通常正確に予測楽観的に予測悲観的に予測
2016年12月24 00:005時間58分5時間47分5時間25分6時間40分
2017年01月05 00:005時間55分5時間50分5時間34分6時間45分
2017年05月03 00:005時間58分5時間56分5時間37分6時間45分
2017年08月15 08:005時間58分5時間48分5時間39分6時間53分

 

上記のとおり同じ時間に出発したとしても、予測する日時によって到着時間が異なることがわかりました。また、朝8時に出発する場合と、夜中0時に出発する場合でも到着時間はかなり異なります。

 

この機能を使用することにより、未来の交通状況を考慮したルート検索が可能となり、配達計画や旅行の計画などに役立てることができるのではないでしょうか?

また、到着までの時間も「おおよそ○分~○分の間に到着する」という表現が可能ですね。

詳細のサンプルはこちらです。

Full Screen

 

 

普段何となく使ってしまうルート検索ですが、このような進化が行われていたとは私もビックリです。

Google では、このようなビッグデータを活用した機能が今後も開発されていくと思われます。

期待して待ちましょう!

 

地図や位置情報を用いたシステムのご提案・開発ならマルティスープへ

マルティスープは、創業以来のGISとモバイル開発の実績と技術力で、営業支援システムやリサーチ・公共インフラ・工事・警備業界の現場を支援するシステム開発など、地図や位置情報を使った業務システムの導入のご提案や開発をいたします。

現場をつなぐコミュニケーションが屋内外業務のパフォーマンスを最大限に。マルティスープのiField(アイ・フィールド)®シリーズは、屋内外業務の現場の実力を減少させるコミュニケーション障壁を除き、使い慣れたスマートデバイスを使って 現場の実力をリアルに伝えるサービス。

位置・空間情報のエキスパート集団として一緒に働きませんか?

マルティスープは地図情報をはじめとする位置・空間情報技術のエキスパート集団です。当社で日々研究している地図や位置情報といった技術は、災害支援など貢献度の高いシステムとして使用されることもあれば、スマートフォンアプリのゲームとして使われることもあり、その利用用途・価値は、今後もますます広がっていっています。
私たちの企業理念は、「創る喜び、使う喜び」です。
今後の開発体制をより強化するために、新卒・中途問わず、当社の未来を共に創っていただける新メンバーを募集します!

【関連記事】こんな記事も読まれています

2017.11.25

Google Maps API 用 JAVAライブラリ

みなさん、こんにちは。

Google Maps Geocodeing API や Directions API  などを JAVAで利用す・・・

続きを読む

2017.04.15

JavaScript API でよく使う地図オプション

みなさん、こんにちは!

今回は、「JavaScript・・・

続きを読む

2017.12.17

マーカーにスタイルを適用してラベルを描画する

みなさん、こんにちは。

今回は Google Map JavaScript API でマーカーを描画する際に、スタイルを適用したラベルの描・・・

続きを読む

 - Google Maps APIs, Google Maps Directions API, Google Maps DistanceMatrix API, スタッフ日記, プレミアムプラン