(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024174765
(43)【公開日】2024-12-17
(54)【発明の名称】機械学習プログラム、方法、及び装置
(51)【国際特許分類】
G06N 20/00 20190101AFI20241210BHJP
G08G 1/01 20060101ALI20241210BHJP
【FI】
G06N20/00 130
G08G1/01 E
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023092781
(22)【出願日】2023-06-05
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和3年度、国立研究開発法人科学技術振興機構、戦略的創造研究推進事業「機械学習と社会科学の融合による社会シミュレーションの革新」委託研究、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(71)【出願人】
【識別番号】504145342
【氏名又は名称】国立大学法人九州大学
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】山田 広明
(72)【発明者】
【氏名】山根 昇平
(72)【発明者】
【氏名】神山 直之
【テーマコード(参考)】
5H181
【Fターム(参考)】
5H181AA01
5H181BB04
5H181BB13
5H181BB20
5H181DD04
5H181FF10
5H181FF13
5H181FF27
5H181FF33
5H181MC14
5H181MC27
(57)【要約】 (修正有)
【課題】多様な交通状態を区別可能な交通需要の表現方法を用いて、高精度な交通シミュレーションの機械学習モデルを構築するプログラム、方法及び装置を提供する。
【解決手段】機械学習装置10において、機械学習部20は、所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、複数の時点毎の所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成する第1生成部22と、生成された交通流情報を入力特徴量とし、交通流情報に対応する時点における所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する訓練部24と、を備える。
【選択図】
図6
【特許請求の範囲】
【請求項1】
所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、前記複数の時点毎の前記所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成し、
前記交通流情報を入力特徴量とし、前記交通流情報に対応する時点における前記所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する、
ことを含む処理をコンピュータに実行させるための機械学習プログラム。
【請求項2】
前記交通流情報を生成することは、前記経路情報に含まれる各時点の前記移動体の位置情報を、前記経路情報に含まれる出発点に対応する時点の位置情報とし、前記出発点に対応する時点が同一の1以上の前記経路情報に基づいて、同一の前記経路区間に対応する位置情報を含む前記経路情報の数を前記経路区間毎に集計することを含む請求項1に記載の機械学習プログラム。
【請求項3】
訓練済みの機械学習モデルに推論対象の交通流情報を入力して、前記推論対象の交通流情報に応じた交通の混み具合を推論することをさらに含む処理を前記コンピュータに実行させるための請求項1又は請求項2に記載の機械学習プログラム。
【請求項4】
出発点と到着点との複数の組み合わせのそれぞれについての交通需要が与えられた場合に、前記複数の組み合わせのそれぞれを複数の経路に配分することで生成される経路情報に基づいて生成した交通流情報を前記推論対象の交通流情報として前記訓練済みの機械学習モデルへ入力する請求項3に記載の機械学習プログラム。
【請求項5】
部分的な経路区間の交通流、及び移動体の移動状況に関するドメイン知識の少なくとも一方である補足情報に基づいて、前記複数の組み合わせのそれぞれを前記複数の経路に配分する請求項4に記載の機械学習プログラム。
【請求項6】
所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、前記複数の時点毎の前記所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成し、
前記交通流情報を入力特徴量とし、前記交通流情報に対応する時点における前記所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する、
ことを含む処理をコンピュータが実行する機械学習方法。
【請求項7】
所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、前記複数の時点毎の前記所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成する第1生成部と、
前記交通流情報を入力特徴量とし、前記交通流情報に対応する時点における前記所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する訓練部と、
を含む機械学習装置。
【発明の詳細な説明】
【技術分野】
【0001】
開示の技術は、機械学習プログラム、機械学習方法、及び機械学習装置に関する。
【背景技術】
【0002】
従来、交通シミュレーションを用いて、公共交通のスケジュール等を最適化する技術が存在する。例えば、イベント開催時の特別バスの運行スケジュールを決定する場合、交通状況に合わせて特別バスの発着時間を設定して、混雑の発生及び拡大を回避する必要がある。このような場合に、交通シミュレーションを使って混雑を起こさない最適なスケジュールを探索する。
【0003】
交通シミュレーション装置の構築は大変な手間がかかる。また、シミュレーション実行時の計算負荷も高い。一方で、プローブデータから交通需要及び交通密度を抽出し、両者の関係をニューラルネットワーク等の機械学習モデルを用いて学習することで、高精度なシミュレーションの代替モデル(サロゲートモデル)を構築することができる。サロゲートモデルは計算負荷が低いため、シミュレーションによるタスクの最適化の応用範囲を広げることができる。例えば、日々のスケジュールの最適化にも適用可能になる。
【0004】
サロゲートモデルによる交通シミュレーションに関する技術として、人流や交通流の推定を効率的に行う機械学習装置が提案されている。この装置は、環境を表す第1のパラメータと複数の移動体のそれぞれの環境における移動の属性を表す第2のパラメータとを取得し、第2のパラメータに基づいて、複数の移動体を複数のグループに分類する。また、この装置は、複数のグループのそれぞれに分類された移動体の数を示す第3のパラメータを生成し、第1のパラメータと第3のパラメータとを機械学習モデルに入力し、複数の移動体の環境における移動に関する推定情報を生成する。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
交通シミュレーションのサロゲートモデルを訓練する場合、一般的には、OD(Origin-Destination)表で表現された交通需要を特徴量とし、交通密度を正解ラベルとした訓練データが用いられる。しかし、OD表で表現された特徴量では、多様な交通状態を適切に区別できない状況が発生し、サロゲートモデルの訓練が上手く進まない場合がある。
【0007】
一つの側面として、開示の技術は、多様な交通状態を区別可能な交通需要の表現方法を用いて、高精度な交通シミュレーションの機械学習モデルを構築することを目的とする。
【課題を解決するための手段】
【0008】
一つの態様として、開示の技術は、所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、前記複数の時点毎の前記所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成する。そして、開示の技術は、前記交通流情報を入力特徴量とし、前記交通流情報に対応する時点における前記所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する。
【発明の効果】
【0009】
一つの側面として、多様な交通状態を区別可能な交通需要の表現方法を用いて、高精度な交通シミュレーションの機械学習モデルを構築することができる、という効果を有する。
【図面の簡単な説明】
【0010】
【
図1】交通シミュレーションを説明するための図である。
【
図2】道路ネットワークの一例を示す概略図である。
【
図3】サロゲートモデルの機械学習フェーズを説明するための図である。
【
図4】サロゲートモデルを用いた最適化フェーズを説明するための図である。
【
図5】OD表表現の特徴量を用いる場合の課題を説明するための図である。
【
図6】本実施形態に係る機械学習装置の機能ブロック図である。
【
図7】交通流情報の生成を説明するための図である。
【
図8】プローブデータのリンク系列への変換を説明するための図である。
【
図9】リンク系列を時刻毎に集約した交通流情報の一例を示す図である。
【
図10】リンク系列を出発時刻で集約した交通流情報の一例を示す図である。
【
図11】OD表表現の場合の特徴量を説明するための図である。
【
図12】本実施形態の特徴量を説明するための図である。
【
図13】OD予報値及び補足情報に基づく経路情報の生成を説明するための図である。
【
図14】機械学習装置として機能するコンピュータの概略構成を示すブロック図である。
【
図15】機械学習処理の一例を示すフローチャートである。
【
図16】最適化処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、図面を参照して、開示の技術に係る実施形態の一例を説明する。
【0012】
<交通シミュレーション及びサロゲートモデルの概要及び課題>
実施形態の詳細を説明する前に、一般的な交通シミュレーション及びサロゲートモデルの概要及び課題について説明する。
【0013】
図1に示すように、交通シミュレーションとは、交通需要を入力とし、その交通需要に応じた交通状態をシミュレーションして出力するものである。例えば、
図2に示すように、複数のノードと、ノード間を接続するリンクとで表される道路ネットワークを用いて交通シミュレーションを行うとする。
図2の例では、黒丸がノード、ノード間を接続する接続線がリンクを表している。また、ノードに併記した「ni(i=1,2,・・・)」はノードの識別番号、リンクに併記した「ej(j=1,2,・・・)」はリンクの識別番号である。以下では、識別番号niのノードを「ノードni」、識別番号ejのリンクを「リンクej」と表記する。また、リンクについては、リンクの両端のノードのノード番号を接続して表記する場合もある。例えば、リンクe1は、「n1-n2」である。なお、リンクは、開示の技術の「経路区間」の一例である。
【0014】
交通需要は、例えば、各地点(ノード)間を移動した移動体(人、車両等)の数を示すOD表で表される。OD表は、出発点(Origin)となるノードと到着点(Destination)となるノードとのマトリクスで表され、マトリクスの各マスに対応する出発点から到着点まで移動する移動体の数が、そのマスに格納された表である。また、時間帯別のODを用いて、
図1に示すような3次元のテンソルを交通需要としてもよい。また、交通状態は、例えば、リンク毎の交通量で表される交通密度である。
【0015】
交通シミュレーションの機械学習モデル(サロゲートモデル)は、
図1に示すような交通シミュレーションの入出力関係を再現する軽量な代替モデルである。
図3に示すように、機械学習モデルの機械学習フェーズでは、情報処理装置が、地理データ及び複数のプローブデータから、特徴量となる交通需要及び道路ネットワークを抽出すると共に、正解ラベルとなる交通密度を抽出する。プローブデータとは、各移動体の位置情報(緯度、経度等)がタイムスタンプと共に記録されたデータである。プローブデータは、スマートフォン、各種センサ等により取得され、ネットワークを介して収集される。地理データとは、道路ネットワークの情報を含む様々な地理情報が記録されたデータである。
【0016】
そして、情報処理装置は、抽出した交通需要及び道路ネットワークを特徴量として、ニューラルネットワーク等で構成された機械学習モデルに入力し、機械学習モデルで推論される交通密度を取得する。そして、情報処理装置は、取得した交通密度と、正解ラベルである交通密度との誤差を最小化するように、機械学習モデルのパラメータを更新することで、機械学習モデルを訓練する。
【0017】
訓練済みの機械学習モデルを用いた最適化フェーズでは、
図4に示すように、情報処理装置は、道路ネットワーク及び交通需要を機械学習モデルに入力し、目的関数である交通密度を取得する。
図4では、イベント開催時のバスの運行スケジュールを最適化する例を示している。
図4の例では、情報処理装置は、道路ネットワーク及び日常の交通需要の予報値を定数として、バスの運行スケジュールの案毎のイベント交通需要を決定変数として機械学習モデルへ入力している。なお、道路ネットワークも決定変数として扱ってもよい。そして、情報処理装置は、案毎に得られる交通密度を比較し、交通密度(混雑)が最小となる案を最適な案として選択して出力する。なお、最適化は、遺伝的アルゴリズム等の既存の手法で実行してよい。
【0018】
交通シミュレーションの機械学習モデル(サロゲートモデル)の訓練に用いる特徴量として、上記のように、OD表で表現された特徴量を用いる場合、多様な交通状態を適切に区別できない状況が発生し、機械学習モデルの訓練が上手く進まない場合がある。
【0019】
例えば、
図5に示すような状況1及び状況2を考える。状況1では、ノードn1→n2→n3→n4→n8→n9の経路1(
図5中の破線矢印)を示すプローブデータが100件、ノードn1→n2→n3→n4→n5→n7の経路2(
図5中の一点鎖線矢印)を示すプローブデータが50件有ったとする。また、状況2では、状況1と同様の経路1を示すプローブデータが100件、ノードn1→n2→n6→n5→n7の経路3(
図5中の二点鎖線矢印)を示すプローブデータが50件有ったとする。このように、状況1と状況2とは異なる状況であるにもかかわらず、
図5の下図に示すように、これらの状況をそれぞれOD表で表現した場合には、同じOD表となってしまう。すなわち、このOD表を特徴量として用いて機械学習モデルを訓練した場合、2つの状況を区別することができず、高精度な機械学習モデルを構築することができない。
【0020】
そこで、経路情報を利用することで、より多くの状況を区別することが考えられる。しかし、各移動体の経路情報をそのまま特徴量とすると、特徴量の次元数が多くなり過ぎてしまう。各移動体の経路情報とは、上述のn1→n2→・・・、のような、移動体の移動経路を示すノードの系列データである。経路情報は、ノードの系列データの場合に限定されず、リンクの系列データであってもよいし、位置情報(緯度及び経度)の系列データであってもよい。経路情報をそのまま特徴量とした場合、特徴量の次元数は、例えば、経路情報に含まれるノード数(数百)×移動体の数(数万~数百万)という膨大な次元数となる。
【0021】
そこで、本実施形態では、各移動体の経路情報を要約した情報、具体的には各リンクを通る移動体の数の情報(リンク交通流)を用いて、多様な交通状態を区別可能な表現方法で交通需要を特徴量化する。この場合の特徴量の次元数は、例えば、リンク数(数千)×時間刻み(数十)程度である。本実施形態では、多様な交通状態を区別可能な交通需要の表現方法を用いて、高精度な交通シミュレーションの機械学習モデルを構築する。
【0022】
<本実施形態に係る機械学習装置>
図6に示すように、本実施形態に係る機械学習装置10は、機械学習部20と、推論部40とを含む。また、機械学習装置10の所定の記憶領域には、交通シミュレーションのサロゲートモデルである機械学習モデル30が記憶される。機械学習モデル30は、例えばニューラルネットワーク等で構成される。
【0023】
機械学習部20は、機械学習フェーズで機能する機能部である。機械学習フェーズでは、機械学習装置10に、複数のプローブデータ及び地理データが入力される。機械学習部20は、第1生成部22と訓練部24とを含む。
【0024】
第1生成部22は、機械学習装置10に入力された複数のプローブデータ及び地理データを取得する。第1生成部22は、所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、複数の時点毎の所定の地理範囲内にあるリンクそれぞれに位置する移動体の数を示す交通流情報を生成する。所定の地理範囲とは、地理データに含まれる道路ネットワークで示されるエリアである。
【0025】
具体的には、第1生成部22は、
図7に示すように、複数のプローブデータのそれぞれが示す経路情報に基づいて、道路ネットワークの各リンクの交通流を集計し、交通流情報を生成する。これにより、
図5に示す状況1及び状況2のように、OD表表現では特徴量が同一になってしまう状況でも、それぞれの状況を区別した特徴量を生成することができる。
【0026】
より具体的には、第1生成部22は、プローブデータを成形する。例えば、第1生成部22は、
図8上図に示すように、{ID(移動体の識別情報),時刻,緯度,経度}のデータ形式で表されるプローブデータの計測間隔(「時刻」項目の間隔)が一定でない場合は、時間間隔が一定になるように補間してもよい。例えば、第1生成部22は、プローブデータが1分おきのデータとなるように補間してもよい。
【0027】
第1生成部22は、成形後のプローブデータを、道路ネットワークに対応付けて、移動体の位置情報(緯度及び経度)と各リンクの位置情報とを比較する。そして、第1生成部22は、
図8下図に示すように、プローブデータを、各時刻に移動体が存在するリンクの系列データ(以下、「リンク系列」という)に変換する。第1生成部22は、プローブデータから変換した各移動体のリンク系列に基づいて、各時刻において、各リンクに存在する移動体の数を集約することで、交通流情報を生成する。
図9に、
図8下図に示すリンク系列を集約した交通流情報を示す。
【0028】
ここで、プローブデータには、例えば、信号による遅延、混雑による遅延等の影響が含まれる。機械学習モデル30を訓練するための特徴量としては、これらの影響を除いたものであることが望ましい。なぜなら、推論時において、信号による遅延、混雑による遅延等の影響、すなわち移動体間の相互作用又は道路ネットワークとの相互作用の影響を含む交通需要が与えられることはあり得ないからである。そもそも、交通シミュレーションでは、これらの遅延等の影響を除いた、事前に計画された経路相当の交通需要から、遅延等の影響を考慮した交通状態をシミュレーションすることが目的である。そのため、上述の通り、機械学習モデル30の訓練に用いる特徴量には、遅延等の影響が含まれないことが望ましい。
【0029】
そこで、第1生成部22は、移動中の時間の情報を削除した交通流情報を作成してもよい。具体的には、第1生成部22は、
図10上図に示すように、各移動体のリンク系列を、そのリンク系列の出発点に対応する時刻に対応付ける。そして、第1生成部22は、
図10下図に示すように、リンク系列を出発点に対応する時刻に対応付けて集約した交通流情報を生成する。これにより、信号による遅延、混雑による遅延等の影響を除外した、事前に計画された経路相当の交通流情報が生成される。
【0030】
このように、第1生成部22で生成される特徴量である交通流情報は、道路ネットワークを構成するリンクの特徴量となる。例えば、OD表表現の特徴量の場合、
図11に示すように、各ノードについて、そのノードを出発点とし、他のノードのそれぞれを到着点とする経路情報の数の情報を各ノードが保持することになる。すなわち、各ノードが、道路ネットワークに含まれるノード数-1個分の情報を保持する。一方、本実施形態の特徴量は、
図12に示すように、各リンクがそのリンクの交通流の情報1つを保持するものとなる。
【0031】
また、第1生成部22は、プローブデータに基づいて、交通流情報に対応する時点における所定の地理範囲の交通の混み具合を示す情報を、交通密度の正解ラベルとして生成する。例えば、第1生成部22は、各時刻における各リンクに存在する移動体の数で表されるリンク交通流を交通密度の正解ラベルとして生成する。
【0032】
訓練部24は、第1生成部22により生成された交通流情報を入力特徴量とし、入力特徴量と、交通密度の正解ラベルとを含む訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデル30を訓練する。具体的には、訓練部24は、生成された交通流情報を特徴量として機械学習モデル30に入力し、機械学習モデル30で推論される交通密度を取得する。そして、訓練部24は、取得した交通密度と、正解ラベルとして生成された交通密度との誤差を最小化するように、機械学習モデル30のパラメータを更新することで、機械学習モデル30を訓練する。
【0033】
推論部40は、最適化フェーズで機能する機能部である。最適化フェーズでは、機械学習装置10に、交通需要、及び部分的な経路区間の交通流、及び移動体の移動状況に関するドメイン知識の少なくとも一方である補足情報(詳細は後述)が入力される。推論部40は、前処理部42と、第2生成部44と、最適化部46とを含む。
【0034】
ここで、本実施形態において、機械学習モデル30へ入力する特徴量は、
図9又は
図10下図に示すような交通流情報である。この交通流情報は、移動体の経路情報を集約することにより生成される。しかし、最適化フェーズにおいては、機械学習フェーズのようなプローブデータは得られず、多くの場合、交通需要として、OD予報値のみしか得られない。また、場合によっては、部分的なリンク交通流の予測値が与えられる場合もある。さらに、経路選択についての基本原理として、道路距離情報、ODの種類情報、通行料情報、ドライバの行動傾向についての情報等、移動体の移動状況に関するドメイン知識が利用可能な場合もある。このような、部分的なリンク交通流の予測値及びドメイン知識をまとめて「補足情報」という。
【0035】
そこで、前処理部42は、出発点と到着点との複数の組み合わせのそれぞれについての交通需要、すなわちOD予報値が与えられた場合に、複数の組み合わせのそれぞれを複数の経路に配分することで経路情報を生成する。また、OD予報値に加え、補足情報が与えられている場合、前処理部42は、補足情報に基づいて、複数の組み合わせのそれぞれを複数の経路に配分する。
【0036】
例えば、
図13上図に示すように、出発点をノードn1、到着点をノードn7とする経路のOD予報値と、リンクn2-n3及びn2-n6のリンク交通流とが与えられているとする。さらに、このODを満たす経路として、
図13下図に示すように、n1→n2→n3→n4→n5→n7の経路1(一点鎖線矢印)と、n1→n2→n6→n5→n7の経路2(二点鎖線矢印)とがあるとする。この場合、前処理部42は、2つの経路が分岐するリンク同士のリンク交通流の比率に基づいて、OD予報値を経路1と経路2とに配分する。
図13の例では、前処理部42は、リンクn2-n3とリンクn2-n6とのリンク交通流の比率(5:20)に基づいて、n1→n7のOD予報値100を、経路1:経路2=20件:80件と配分する。このように、前処理部42は、OD予報値及び部分的なリンク交通流の予測値から経路情報を生成する。
【0037】
なお、部分的なリンク交通流の予測値が得られていない場合には、ODを満たす経路にOD予報値を均等又はランダムに配分することにより経路情報を生成してもよい。また、ドメイン知識を用いて配分してもよい。例えば、「人々は旅行時間が最小になる経路を選ぶ」というドメイン知識に基づいて、ODを満たす経路のうち、旅行時間が最小になる経路にそのOD予報値を配分して経路情報を生成してもよい。また、例えば、OD予報値が深夜の時間帯のものである場合、そのODを輸送トラックのODであるとみなし、「輸送トラックは多少料金がかかっても時間短縮を優先する傾向がある。」とのドメイン知識を利用してもよい。また、OD予報値が昼間の時間帯のものである場合、そのODを乗用車のODであるとみなし、「乗用車は時間短縮よりも低料金を優先する傾向がある。」とのドメイン知識を利用してもよい。
【0038】
利用できるドメイン知識が複数ある場合、これらのドメイン知識を適宜組み合わせて、各経路への配分を決定してもよい。利用できるドメイン知識が多いほど、与えられたOD予報値から、より実態に即した経路情報を生成することができる。すなわち、利用できるドメイン知識が増えるほど、区別可能な交通状態が増え、機械学習モデル30による推論精度も向上する。
【0039】
第2生成部44は、前処理部42で生成された経路情報を用いて、第1生成部22と同様に、経路情報からリンク系列を生成し、リンク系列を時刻毎又は出発時刻でリンク毎に集約して、機械学習モデル30へ入力する特徴量となる交通流情報を生成する。
【0040】
最適化部46は、第2生成部44により生成された交通流情報を機械学習モデル30に入力することにより、交通密度を予測する。最適化部46は、シミュレーションしたいスケジュール等の案に応じた交通需要のそれぞれについて交通密度を予測し、交通密度が最小となる案を最適な案として選択して出力する。
【0041】
機械学習装置10は、例えば
図14に示すコンピュータ50で実現されてよい。コンピュータ50は、CPU(Central Processing Unit)51と、GPU(Graphics Processing Unit)52と、一時記憶領域としてのメモリ53と、不揮発性の記憶装置54とを備える。また、コンピュータ50は、入力装置、表示装置等の入出力装置55と、記憶媒体59に対するデータの読み込み及び書き込みを制御するR/W(Read/Write)装置56とを備える。また、コンピュータ50は、インターネット等のネットワークに接続される通信I/F(Interface)57を備える。CPU51、GPU52、メモリ53、記憶装置54、入出力装置55、R/W装置56、及び通信I/F57は、バス58を介して互いに接続される。
【0042】
記憶装置54は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等である。記憶媒体としての記憶装置54には、コンピュータ50を、機械学習部20として機能させるための機械学習プログラム60と、推論部40として機能させるための推論プログラム70とが記憶される。機械学習プログラム60は、第1生成プロセス制御命令62と、訓練プロセス制御命令64とを有する。推論プログラム70は、前処理プロセス制御命令72と、第2生成プロセス制御命令74と、最適化プロセス制御命令76とを有する。また、記憶装置54は、機械学習モデル30を構成する情報が記憶される情報記憶領域80を有する。
【0043】
CPU51は、機械学習プログラム60を記憶装置54から読み出してメモリ53に展開し、機械学習プログラム60が有する制御命令を順次実行する。CPU51は、第1生成プロセス制御命令62を実行することで、
図6に示す第1生成部22として動作する。また、CPU51は、訓練プロセス制御命令64を実行することで、
図6に示す訓練部24として動作する。また、CPU51は、情報記憶領域80から情報を読み出して、機械学習モデル30をメモリ53に展開する。これにより、機械学習プログラム60を実行したコンピュータ50が、機械学習装置10の機械学習部20として機能することになる。
【0044】
CPU51は、推論プログラム70を記憶装置54から読み出してメモリ53に展開し、推論プログラム70が有する制御命令を順次実行する。CPU51は、前処理プロセス制御命令72を実行することで、
図6に示す前処理部42として動作する。また、CPU51は、第2生成プロセス制御命令74を実行することで、
図6に示す第2生成部44として動作する。また、CPU51は、最適化プロセス制御命令76を実行することで、
図6に示す最適化部46として動作する。また、CPU51は、情報記憶領域80から情報を読み出して、機械学習モデル30をメモリ53に展開する。これにより、推論プログラム70を実行したコンピュータ50が、機械学習装置10の推論部40として機能することになる。
【0045】
なお、プログラムを実行するCPU51はハードウェアである。また、プログラムの一部は、GPU52により実行されてもよい。
【0046】
また、機械学習プログラム60及び推論プログラム70により実現される機能は、例えば半導体集積回路、より詳しくはASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)等で実現されてもよい。
【0047】
次に、本実施形態に係る機械学習装置10の動作について説明する。機械学習フェーズにおいて、機械学習装置10に複数のプローブデータ及び地理データが入力されると、機械学習装置10において、
図15に示す機械学習処理が実行される。また、最適化フェーズにおいて、機械学習装置10に交通需要及び補足情報が入力されると、機械学習装置10において、
図16に示す最適化処理が実行される。なお、機械学習処理は、開示の技術の機械学習方法の一例である。以下、機械学習処理及び最適化処理の各々について詳述する。
【0048】
【0049】
ステップS10で、第1生成部22が、機械学習装置10に入力された複数のプローブデータ及び地理データを取得する。次に、ステップS12で、第1生成部22が、プローブデータを道路ネットワークに対応付けて、プローブデータをリンク系列に変換する。
【0050】
次に、ステップS14で、第1生成部22が、各移動体のリンク系列に含まれる全てのリンクを、そのリンク系列の出発点に対応する時刻で集約し、集約した各時刻に各リンクに存在する移動体をカウントすることで、交通流情報を生成する。次に、ステップS16で、第1生成部22が、プローブデータから、各時刻における各リンクに存在する移動体の数で表されるリンク交通流を交通密度の正解ラベルとして生成する。
【0051】
次に、ステップS18で、訓練部24が、上記ステップS14で生成された交通流情報を特徴量とし、上記ステップS16で生成された正解ラベルと共に訓練データとして用いて、機械学習モデル30を訓練する。そして、訓練部24が、訓練済みの機械学習モデル30を所定の記憶領域に記憶し、機械学習処理は終了する。
【0052】
【0053】
交通シミュレーションを実行したいスケジュール等の各案について、ステップS20のループ処理が実行される。具体的には、ステップS22で、前処理部42が、機械学習装置10に入力された交通需要であるOD予報値及び補足情報を取得する。次に、ステップS24で、前処理部42が、OD予報値を、補足情報に基づいて、そのODに該当する経路の各々に配分することで経路情報を生成する。
【0054】
次に、ステップS26で、第2生成部44が、経路情報をリンク系列に変換する。次に、ステップS28で、第2生成部44が、各移動体のリンク系列に含まれる全てのリンクを、そのリンク系列の出発点に対応する時刻で集約し、集約した各時刻に各リンクに存在する移動体をカウントすることで、交通流情報を生成する。
【0055】
次に、ステップS30で、最適化部46が、上記ステップS28で生成された交通流情報を機械学習モデル30に入力することにより、交通密度を予測する。全ての案について、上記ステップS22~S30の処理が終了すると、ステップS20のループ処理を終了し、ステップS32へ移行する。
【0056】
ステップS32では、最適化部46が、各案のうち、予測された交通密度が最小となる案を最適な案として選択して出力し、最適化処理は終了する。
【0057】
以上説明したように、本実施形態に係る機械学習装置は、所定の地理範囲における複数の移動体それぞれのプローブデータに基づいて、複数の時点毎の道路ネットワーク内のリンクそれぞれに位置する移動体の数を示す交通流情報を生成する。そして、機械学習装置は、交通流情報を入力特徴量とし、交通流情報に対応する時点における交通密度をラベル情報とした訓練データを用いて、交通流情報に応じた交通密度を導出する機械学習モデルを訓練する。これにより、多様な交通状態を区別可能な交通需要の表現方法を用いて、高精度な交通シミュレーションの機械学習モデルを構築することができる。
【0058】
なお、上記機械学習処理及び最適化処理では、出発時刻で集約したリンク系列から生成した交通流情報を特徴量として用いる場合について説明したが、
図9に示すような、時刻毎にリンク系列を集約した交通流情報を特徴量として用いてもよい。
【0059】
また、上記実施形態では、機械学習部と推論部とが同一のコンピュータで構成される場合について説明したが、それぞれを別のコンピュータで構成してもよい。
【0060】
また、上記実施形態では、機械学習プログラム及び推論プログラムが記憶装置に予め記憶(インストール)されているが、これに限定されない。開示の技術に係るプログラムは、CD-ROM、DVD-ROM、USBメモリ等の記憶媒体に記憶された形態で提供されてもよい。
【0061】
以上の実施形態に関し、さらに以下の付記を開示する。
【0062】
(付記1)
所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、前記複数の時点毎の前記所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成し、
前記交通流情報を入力特徴量とし、前記交通流情報に対応する時点における前記所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する、
ことを含む処理をコンピュータに実行させるための機械学習プログラム。
【0063】
(付記2)
前記交通流情報を生成することは、前記経路情報に含まれる各時点の前記移動体の位置情報を、前記経路情報に含まれる出発点に対応する時点の位置情報とし、前記出発点に対応する時点が同一の1以上の前記経路情報に基づいて、同一の前記経路区間に対応する位置情報を含む前記経路情報の数を前記経路区間毎に集計することを含む付記1に記載の機械学習プログラム。
【0064】
(付記3)
訓練済みの機械学習モデルに推論対象の交通流情報を入力して、前記推論対象の交通流情報に応じた交通の混み具合を推論することをさらに含む処理を前記コンピュータに実行させるための付記1又は付記2に記載の機械学習プログラム。
【0065】
(付記4)
出発点と到着点との複数の組み合わせのそれぞれについての交通需要が与えられた場合に、前記複数の組み合わせのそれぞれを複数の経路に配分することで生成される経路情報に基づいて生成した交通流情報を前記推論対象の交通流情報として前記訓練済みの機械学習モデルへ入力する付記3に記載の機械学習プログラム。
【0066】
(付記5)
部分的な経路区間の交通流、及び移動体の移動状況に関するドメイン知識の少なくとも一方である補足情報に基づいて、前記複数の組み合わせのそれぞれを前記複数の経路に配分する付記4に記載の機械学習プログラム。
【0067】
(付記6)
所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、前記複数の時点毎の前記所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成し、
前記交通流情報を入力特徴量とし、前記交通流情報に対応する時点における前記所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する、
ことを含む処理をコンピュータが実行する機械学習方法。
【0068】
(付記7)
前記交通流情報を生成することは、前記経路情報に含まれる各時点の前記移動体の位置情報を、前記経路情報に含まれる出発点に対応する時点の位置情報とし、前記出発点に対応する時点が同一の1以上の前記経路情報に基づいて、同一の前記経路区間に対応する位置情報を含む前記経路情報の数を前記経路区間毎に集計することを含む付記6に記載の機械学習方法。
【0069】
(付記8)
訓練済みの機械学習モデルに推論対象の交通流情報を入力して、前記推論対象の交通流情報に応じた交通の混み具合を推論することをさらに含む処理を前記コンピュータが実行する付記6又は付記7に記載の機械学習方法。
【0070】
(付記9)
出発点と到着点との複数の組み合わせのそれぞれについての交通需要が与えられた場合に、前記複数の組み合わせのそれぞれを複数の経路に配分することで生成される経路情報に基づいて生成した交通流情報を前記推論対象の交通流情報として前記訓練済みの機械学習モデルへ入力する付記8に記載の機械学習方法。
【0071】
(付記10)
部分的な経路区間の交通流、及び移動体の移動状況に関するドメイン知識の少なくとも一方である補足情報に基づいて、前記複数の組み合わせのそれぞれを前記複数の経路に配分する付記9に記載の機械学習方法。
【0072】
(付記11)
所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、前記複数の時点毎の前記所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成する第1生成部と、
前記交通流情報を入力特徴量とし、前記交通流情報に対応する時点における前記所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する訓練部と、
を含む機械学習装置。
【0073】
(付記12)
前記第1生成部は、前記経路情報に含まれる各時点の前記移動体の位置情報を、前記経路情報に含まれる出発点に対応する時点の位置情報とし、前記出発点に対応する時点が同一の1以上の前記経路情報に基づいて、同一の前記経路区間に対応する位置情報を含む前記経路情報の数を前記経路区間毎に集計する付記11に記載の機械学習装置。
【0074】
(付記13)
訓練済みの機械学習モデルに推論対象の交通流情報を入力して、前記推論対象の交通流情報に応じた交通の混み具合を推論する推論部をさらに含む付記11又は付記12に記載の機械学習装置。
【0075】
(付記14)
前記推論部は、出発点と到着点との複数の組み合わせのそれぞれについての交通需要が与えられた場合に、前記複数の組み合わせのそれぞれを複数の経路に配分することで生成される経路情報に基づいて生成した交通流情報を前記推論対象の交通流情報として前記訓練済みの機械学習モデルへ入力する付記13に記載の機械学習装置。
【0076】
(付記15)
前記推論部は、部分的な経路区間の交通流、及び移動体の移動状況に関するドメイン知識の少なくとも一方である補足情報に基づいて、前記複数の組み合わせのそれぞれを前記複数の経路に配分する付記14に記載の機械学習装置。
【0077】
(付記16)
所定の地理範囲における複数の移動体それぞれの移動状況を複数の時点毎に示した経路情報に基づいて、前記複数の時点毎の前記所定の地理範囲内にある経路区間それぞれに位置する移動体の数を示す交通流情報を生成し、
前記交通流情報を入力特徴量とし、前記交通流情報に対応する時点における前記所定の地理範囲の交通の混み具合を示す情報をラベル情報とした訓練データを用いて、交通流情報に応じた交通の混み具合を導出する機械学習モデルを訓練する、
ことを含む処理をコンピュータに実行させるための機械学習プログラムを記憶した非一時的記憶媒体。
【符号の説明】
【0078】
10 機械学習装置
20 機械学習部
22 第1生成部
24 訓練部
30 機械学習モデル
40 推論部
42 前処理部
44 第2生成部
46 最適化部
50 コンピュータ
51 CPU
52 GPU
53 メモリ
54 記憶装置
55 入出力装置
56 R/W装置
57 通信I/F
58 バス
59 記憶媒体
60 機械学習プログラム
62 第1生成プロセス制御命令
64 訓練プロセス制御命令
70 推論プログラム
72 前処理プロセス制御命令
74 第2生成プロセス制御命令
76 最適化プロセス制御命令
80 情報記憶領域