ヤフー株式会社

Yahoo!乗換案内のデータで未来の混雑を予測する

こんにちは、「Yahoo! JAPANビッグデータレポート」チームです。

今回は、思いがけないデータを用いてどこがどれぐらい混雑するのかを事前に予知するという、少し変わった取り組みを紹介いたします。

さて、「混雑」とはいったいなんでしょうか? 辞書には「たくさんの人が集まって込み合うこと」とありますが、今回のレポートの中では「平時(通常時)よりも人が多く集まっている状態」を混雑(異常混雑)の定義としています。有名な展覧会や無料開放デー、花火大会などは過去の経験からある程度は予測することもできますが、実際にそれを具体的な数値として事前に把握することは難しく、これまで行われてきた手法では「例年から推測すると」などの過去実績に基づいた推測値によるものが主でした。
しかし、もしも「2週間後、武道館で有名歌手のコンサートがあって、2万人が訪れ混雑しそうだ」といったことが事前に、さらには過去のデータがない初開催イベントであったとしても把握できればすごいと思いませんか? そんな課題の解決を目指したのが今回の研究です。

人口の異常検知

予知の話をする前にぜひ知っておいていただきたいサービスがあります。皆さんはYahoo!地図の「混雑レーダー」という機能をご存知でしょうか? この機能は国内エリアの混雑状況をメッシュにて計算してヒートマップとして地図上に表示する機能です。この機能では各メッシュ当たりの推定人口を計算しそれを利用していますが、もちろん時系列データとしても蓄積もしています。この時系列データを長期間収集することで、平日や休日の1日の推定人口の変動推移が蓄積されます。そのデータを「平時の基準推定人口(定常人口)推移」とします。そして、もしその地点でイベントなどで急激に人が集まった場合、波形は平時と異なり大きく乖離します。この平時の人口推移波形との差分を検知することができれば「今、ここが混雑している」ということを知ることができます。

つまり、波形データを活用することで今の混雑を知ることができるのです。ただし、これでわかるのは"今"の状態です。つまり混雑の「検知」はできますが未来に起こる混雑の「予知」はできません。では、いったいどのようにすれば予知が可能になるのでしょうか?

異常混雑を予知するために

混雑を予知するには「未来の○月○日○時にある場所の推定人口が平時の波形から上に大きく乖離する」ということを事前に検知できればよい、ということになります。つまり平時人口推移(定常予測)とある未来の日付における人口推移波形(短期予測)がある程度乖離していることがわかればよい、ということになります。図1にこの考え方のイメージを示しました。

(図1)予知する方法

定常予測の波形に対して短期予測が大きく乖離している場合に混雑を計測することができることを説明する図

資料:
Yahoo!乗換案内

未来の推定人口を予測するためのデータが意外なヤフーサービスの中にありました。それが「Yahoo!乗換案内」(以下、乗換案内)です。乗換案内は、出発地と目的地を入力すれば、路線ルートや料金などを表示してくれる便利なサービスです。このサービスでは、出発地と目的地、および出発(到着)日時のデータがセットとなって蓄積されており、これが混雑を予知するためのキーとなるのです。

あなたがもしも、とあるイベントにいく予定があった場合に次の図2のような行動を取りませんか?

(図2)未来の予定のために乗換案内を使う

2週間後のコンサートのためにヤフー乗換案内をつかって何時に出ればよいかを調べるイラスト

上記イラストの例のように、乗換案内では現在時刻のルートを検索するデータだけでなく、将来の予定を先読みしたデータもたくさん集まっているのです。このデータを集めれば、○月○日に○駅に到着したいと考えている人はおおよそ○人いそうだ、とあらかじめ推測することが可能になります(図3参照)。その推測データを平常人口データと組み合わせることで、異常人口の予測が可能となり、混雑の予知につながるわけです。

(図3)異常予知検知波形の図

人は予定に従って行動するため、将来の異常な混雑も乗換案内の検索データを分析してみると予定内の行動であることがわかる。実例としてコミケイベントの混雑の推移波形を比較したところ2週間前も前日も同じような波形は類似していた

資料:
Yahoo!乗換案内

図3は、2016年8月14日に東京ビックサイトで開催されたコミックマーケットイベント(コミケ) についての実際の乗換案内検索数をプロットしたものです。赤線はコミケ開催日の前日までの検索数の波になります。始発の電車に乗り、当日の朝の行列に並ぶ人が多いことがわかります。青色は1週間前、黄色は2週間前までにあったコミケ当日を指定した検索数です。前日検索数(赤色)よりはだいぶ少ないものの、始発の検索数が特に多い傾向がこの時点で見て取れます。2週間前の時点で乗換案内を使ってコミケ当日の朝の電車のスケジュールを調べる人がいることがわかります。

その前提に基づき実際に検証してみたのが次のデータです。2016年8月14日に東京ビックサイトで開催されたコミックマーケットイベントについての乗換案内データを用いた近隣駅の人口予測波形と、当日の実際の人口波形です。

(図4)2016年8月14日コミックマーケットの混雑予測事例

2016年8月14日に開催されたコミックマーケットイベントの混雑予測データと当日の実データとの比較。非常に一致度が高いことがわかる

資料:
Yahoo!乗換案内

この例では1週間前の時点でほぼ正確に会場周辺の混雑を予測することができました。早朝が頂点となるかなり特徴的な波形ですが、コミケは始発で会場に来て並ばなければならないほどの人気イベントのため、このような波形になるのです。

次にエリアとしての予測でも見てみましょう。2017年8月20日の神宮外苑花火大会の打ち上げ会場周りの駅の予測と実際の検索数を円の大きさで表現して比較してみました。花火が打ち上がる数時間前から場所を確保するために早めに会場にやってくる人たちの混雑が予測で現れ、実際のデータもほぼ近い形で検索されていたことが比較することでわかりました。

(図5)2017年8月20日神宮外苑花火大会の混雑予測事例

2017年8月20日神宮外苑花火大会の混雑予測データと当日の実データとの比較。こちらは開場周辺駅をそれぞれ比較しているが、どれも一致度が高いことがわかる

資料:
Yahoo!乗換案内

この例でも事前の予測値と当日の実測地に大きな乖離が無いこと、また時系列として比較しても同様であることが見て取れます。この結果より、推定人口データと乗換案内の検索データを組み合わせることで、混雑の予知が可能になるといえそうです。

混雑予知のこれから

この混雑予知はさまざまな可能性を秘めています。使うユーザーにとっても便利なデータであることは間違いありませんが、イベント側・主催者側にとってもどれぐらいの人が訪れるのかを事前に推定できるということは、とても大きなメリットです。
実はこの研究の成果をいかした機能がYahoo!乗換案内にもまもなく搭載される予定です。また、精度向上に加えて平時の混雑可視化についても取り組んでいく予定ですのでそちらもあわせてご期待ください。

今回紹介した研究は平時との乖離を基準に異常混雑を検知しているため、当然とはいえ突発的な混雑(突然の鉄道運休など)や小規模イベントなどは予知が難しいなどの課題がありますが、このようなデータがこれまで解決できなかった課題を解決していくことを期待しています。

引き続き、Yahoo! JAPANビッグデータレポートをよろしくお願いいたします。