1万の停留所には1億の移動パターン!Google、乗換案内の最適化方法を解説
これらの移動パターンは事前に計算して保持しているが、問題は対応する国々の拡大に伴って、計算量が増えてしまう点だ。例えば1万の停留所に対しては1億の移動パターンが必要になるため、拡張性がある移動パターンアルゴリズムを導入することで改善している。下図は公式ブログに掲載されたドイツのバス路線図をクラスター化し、境界駅(異なるエリア間の境界となるバスの停留所)をハイライトしたものだ。
まずは各クラスター内の最適な接続の移動パターンを計算し、次に任意のクラスターペアの移動パターンを計算。そして本当に必要な境界駅へのアクセスを導き出している。これらの結果を保存し、クエリに応じて我々ユーザーに移動方法を提示するのがGoogleマップの乗り換え案内機能だ。
Googleマップの乗り換え案内機能は、2005年12月の開始時点でオレゴン州ポートランドに留まっていたが、2010年の検索速度向上を経て、現在では日本を含めた世界70カ国2万以上の都市に対応している。
阿久津良和(Cactus)