(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-07
(45)【発行日】2023-11-15
(54)【発明の名称】自動運転制御装置、自動運転制御方法、及び自動運転制御プログラム
(51)【国際特許分類】
G08G 1/00 20060101AFI20231108BHJP
B60W 50/04 20060101ALI20231108BHJP
B60W 50/02 20120101ALI20231108BHJP
G16Y 10/40 20200101ALI20231108BHJP
G16Y 20/20 20200101ALI20231108BHJP
G16Y 40/20 20200101ALI20231108BHJP
【FI】
G08G1/00 D
B60W50/04
B60W50/02
G16Y10/40
G16Y20/20
G16Y40/20
(21)【出願番号】P 2021035460
(22)【出願日】2021-03-05
【審査請求日】2022-12-23
(73)【特許権者】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】三澤 秀明
【審査官】増子 真
(56)【参考文献】
【文献】特開2020-64611(JP,A)
【文献】特開2017-91370(JP,A)
【文献】特開2017-142679(JP,A)
【文献】特開2010-3174(JP,A)
【文献】特開2019-185280(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 1/00 - 99/00
B60W 10/00 - 10/30
B60W 30/00 - 60/00
G16Y 10/40
G16Y 20/20
G16Y 40/20
(57)【特許請求の範囲】
【請求項1】
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部(21A)と、
前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部(21B)と、
前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部(21C)と、
前記判定部により前記異常度が異常を示すと判定された場合に、オペレータに対して、前記異常度を判定したときの画像データを提示し、前記オペレータから異常の有無及び要因の入力を受け付ける提示部(21E)と、
前記オペレータから入力を受け付けた前記異常の有無及び要因を含むレポートデータを出力する出力部(21F)と、
を備えた自動運転制御装置(20、20A)。
【請求項2】
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部(21A)と、
前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部(21B)と、
前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部(21C)と、
前記判定部により前記異常度が異常を示すと判定された場合に、前記異常度を判定したときの画像データ、並びに、オペレータから入力を受け付けた異常の有無及び要因を含むデータセットを学習用データとして、機械学習により学習された人工知能を用いて、前記異常の有無及び要因を推測する推測部(21H)と、
前記推測部により推測された前記異常の有無及び要因を含むレポートデータを出力する出力部(21F)と、
を備え
た自動運転制御装置。
【請求項3】
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部(21A)と、
前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部(21B)と、
前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部(21C)と、
前記判定部により前記異常度が異常を示すと判定された場合に、前記異常度を判定したときの画像データ、並びに、オペレータから入力を受け付けた異常の有無及び要因を含むデータセットからユーザが定義したルールベースを用いて、前記異常の有無及び要因を推測する推測部(21H)と、
前記推測部により推測された前記異常の有無及び要因を含むレポートデータを出力する出力部(21F)と、
を備え
た自動運転制御装置。
【請求項4】
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部(21A)と、
前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部(21B)と、
前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部(21C)と、
前記判定部により前記異常度が異常を示すと判定された場合に、オペレータに対して、前記異常度を判定したときの画像データを提示し、前記オペレータから異常の有無及び要因の入力を受け付ける提示部(21E)と、
前記オペレータから入力を受け付けた前記要因をラベルとして、前記評価対象運転軌道の分類を機械学習して得られた学習器を用いて、前記要因として示される重要な異常を検出する検出部(21J)と、
を備え
た自動運転制御装置。
【請求項5】
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部(21A)と、
前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部(21B)と、
前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部(21C)と、
前記判定部により前記異常度が異常を示すと判定された場合に、前記異常度を判定したときの画像データ、並びに、オペレータから入力を受け付けた異常の有無及び要因を含むデータセットを学習用データとして、機械学習により学習された人工知能を用いて、前記異常の有無及び要因を推測する推測部(21H)と、
前記推測部により推測された前記要因をラベルとして、前記評価対象運転軌道の分類を機械学習して得られた学習器を用いて、前記要因として示される重要な異常を検出する検出部(21J)と、
を備え
た自動運転制御装置。
【請求項6】
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部(21A)と、
前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部(21B)と、
前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部(21C)と、
前記判定部により前記異常度が異常を示すと判定された場合に、前記異常度を判定したときの画像データ、並びに、オペレータから入力を受け付けた異常の有無及び要因を含むデータセットからユーザが定義したルールベースを用いて、前記異常の有無及び要因を推測する推測部(21H)と、
前記推測部により推測された前記要因をラベルとして、前記評価対象運転軌道の分類を機械学習して得られた学習器を用いて、前記要因として示される重要な異常を検出する検出部(21J)と、
を備え
た自動運転制御装置。
【請求項7】
前記異常度は、前記基準運転軌道と前記評価対象運転軌道との間の類似度により表される
請求項1
~請求項6の何れか1項に記載の自動運転制御装置。
【請求項8】
前記基準運転軌道は、前記運転軌道モデルから場所毎に抽出された運転軌道の分布として表される
請求項
7に記載の自動運転制御装置。
【請求項9】
前記生成部は、前記自己状態量の特定の値として、予め計画された地図上の参照軌道に対する、候補とされた走行軌道又は実際の走行軌道の時系列のずれを表すオフセット値を求め、求めたオフセット値を所定の領域内で集計することにより前記自己状態量の代表値を算出する
請求項1~請求項
8の何れか1項に記載の自動運転制御装置。
【請求項10】
前記生成部は、前記運転軌道モデルを、前記自動運転車両の車両別に生成する
請求項1~請求項
9の何れか1項に記載の自動運転制御装置。
【請求項11】
前記生成部は、前記運転軌道モデルを、前記自動運転車両の自動運転を制御するプログラムのバージョン別に生成する
請求項1~請求項
9の何れか1項に記載の自動運転制御装置。
【請求項12】
自動運転制御装置が、
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集し、
前記収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成し、
前記生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定
し、
前記異常度が異常を示すと判定された場合に、オペレータに対して、前記異常度を判定したときの画像データを提示し、前記オペレータから異常の有無及び要因の入力を受け付け、
前記オペレータから入力を受け付けた前記異常の有無及び要因を含むレポートデータを出力する、
自動運転制御方法。
【請求項13】
コンピュータを、
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部、
前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部
、
前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部、
前記判定部により前記異常度が異常を示すと判定された場合に、オペレータに対して、前記異常度を判定したときの画像データを提示し、前記オペレータから異常の有無及び要因の入力を受け付ける提示部、及び、
前記オペレータから入力を受け付けた前記異常の有無及び要因を含むレポートデータを出力する出力部、
として機能させるための自動運転制御プログラム(25A)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、自動運転制御装置、自動運転制御方法、及び自動運転制御プログラムに関する。
【背景技術】
【0002】
自動運転システムでは、運転者(ドライバ)がいない場合があるため、自動走行が行われた区間での走行が適切に自動運転制御プログラムによって行われたかを運転者に代わって監視する必要がある。
【0003】
例えば、特許文献1には、自動運転の制御プログラムの改善の契機となる情報を生成する情報処理装置が記載されている。この情報処理装置は、自動運転車両のプローブ情報と道路地図データに基づいて、自動走行が行われた走行区間における異常走行の有無と、異常走行の要因となり得る特徴量の有無又は値とを含む走行リスクデータを生成するデータ生成処理と、生成された複数の走行リスクデータに基づいて、特徴量の有無又は値ごとの異常走行の発生確率を含むリスク判定モデルを生成するモデル化処理と、を行う。この特徴量には、道路側の事象である外部要因のみが含まれる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、自動運転において、明らかな異常走行がなかったからといって自動運転制御プログラムに異常がなかったとは言えない。例えば、いつもよりも車線左側に寄って走行している場合、上記特許文献1に記載の技術によれば、特定の走行のみを異常と判定するため、異常走行とは判定されない。しかしながら、この運転軌道が意図しない自動運転制御プログラムに起因したものであれば、将来的な事故原因となりかねない。このような明らかな異常ではないが、自動運転車両の計画された走行又は最適な走行と異なる走行(つまり、いつもと異なる走行)を検出することが出来れば、問題の早期改善を図ることが可能となり、望ましい。
【0006】
本開示は、自動運転において明らかな異常ではないが、計画された走行又は最適な走行からずれた走行を判定することができる自動運転制御装置、自動運転制御方法、及び自動運転制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本開示の第1態様に係る自動運転制御装置は、予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部と、前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部と、前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部と、を備えている。
【0008】
本開示の第2態様に係る自動運転制御方法は、予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集し、前記収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成し、前記生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する。
【0009】
本開示の第3態様に係る自動運転制御プログラムは、コンピュータを、予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部、前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部、及び、前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部、として機能させる。
【発明の効果】
【0010】
開示の技術によれば、自動運転において明らかな異常ではないが、計画された走行又は最適な走行からずれた走行を判定することができる、という効果を有する。
【図面の簡単な説明】
【0011】
【
図1】第1の実施形態に係る自動運転システムの構成の一例を示す図である。
【
図2】第1の実施形態に係る車載装置及び自動運転制御装置の機能的な構成の一例を示すブロック図である。
【
図3】実施形態に係るプランニング結果代表値算出処理の説明に供する図である。
【
図4】自動運転の速度と手動運転の速度との比較例を示す図である。
【
図5】実施形態に係る異常度判定処理の説明に供する図である。
【
図6】実施形態に係る別の異常度判定処理の説明に供する図である。
【
図7】第1の実施形態に係る自動運転制御装置による異常度判定処理の全体像の説明に供する図である。
【
図8】第1の実施形態に係る自動運転制御プログラムによる異常度判定処理の流れの一例を示すフローチャートである。
【
図9】第1の実施形態に係る自動運転制御プログラムによるレポート出力処理の流れの一例を示すフローチャートである。
【
図10】実施形態に係るオペレータ判定処理の説明に供する図である。
【
図11】実施形態に係る別のオペレータ判定処理の説明に供する図である。
【
図12】実施形態に係る更に別のオペレータ判定処理の説明に供する図である。
【
図13】第2の実施形態に係る自動運転制御装置及び車載装置の機能的な構成の一例を示すブロック図である。
【
図14】実施形態に係るクラスタリング処理の説明に供する図である。
【
図15】実施形態に係るオペレータ判定処理の説明に供する図である。
【
図16】実施形態に係る別のオペレータ判定処理の説明に供する図である。
【
図17】第2の実施形態に係る自動運転制御プログラムによる学習器生成処理の流れの一例を示すフローチャートである。
【
図18】第2の実施形態に係る自動運転制御プログラムによる即時通知処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、図面を参照して、本開示の技術を実施するための形態の一例について詳細に説明する。
【0013】
[第1の実施形態]
図1は、第1の実施形態に係る自動運転システム100の構成の一例を示す図である。
【0014】
図1に示すように、本実施形態に係る自動運転システム100は、自動運転車両に搭載された車載装置10と、自動運転支援センタに設けられた自動運転制御装置20と、を備えている。
【0015】
自動運転制御装置20は、自動運転支援センタによる管理対象領域内の自動運転車両に対して遠隔支援を行う。なお、本実施形態では、自動運転車両として自家用の乗用車を例示して説明するが、例えば、トラック、バス、タクシー等の他の車両に適用してもよい。また、自動運転車両は、車両の制御や非常時に車両の制御を代替するために乗車する有人の場合も含む。さらに、車両の操舵の一部が自動で行われる車両も含む。
【0016】
車載装置10及び自動運転制御装置20は、ネットワークNを介して通信可能に接続されている。ネットワークNには、一例として、インターネット、WAN(Wide Area Network)等が適用される。
【0017】
自動運転車両は、所定の条件下において運転者の操作によらず自動走行が可能な車両である。自動運転車両は、走行中に路上駐車、渋滞、工事等の何らかの異常事象が発生すると、追い越し又は待機という動作を行う。自動運転車両は、異常発生時等のように状況に応じて自動運転支援センタによって走行支援が行われる。
【0018】
車載装置10は、住所又は緯度経度等の目的地の情報に基づいて、目的地までの走行ルートを含む走行計画を生成する機能、及び、自車両の自動運転を制御する機能を備えている。車載装置10は、CPU(Central Processing Unit)11と、メモリ12と、表示部13と、記憶部14と、センサ群15と、カメラ16と、通信部17と、を備えている。
【0019】
CPU11は、プロセッサの一例である。ここでいうプロセッサとは、広義的なプロセッサを指し、汎用的なプロセッサ(例えば、CPU)や、専用のプロセッサ(例えば、GPU: Graphics Processing Unit、ASIC: Application Specific Integrated Circuit、FPGA: Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。メモリ12は、ROM(Read Only Memory)、RAM(Random Access Memory)等により構成されている。
【0020】
表示部13には、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL(Electro Luminescence)ディスプレイ等が用いられる。表示部13は、タッチパネルを一体的に有していてもよい。
【0021】
記憶部14には、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等が用いられる。記憶部14には、自動運転の制御を行うための制御プログラム(図示省略)が記憶されている。
【0022】
センサ群15は、自車両の周囲の状況を把握するための各種のセンサにより構成されている。センサ群15は、車両外部の所定範囲に探査波を送信するミリ波レーダと、少なくとも車両前方の所定範囲をスキャンするLIDAR(Light Detection and Ranging/Laser Imaging Detection and Ranging)と、を含んでいる。また、センサ群15には、自車両に搭載されるGNSS(Global Navigation Satellite System)受信機が含まれていてもよい。このGNSS受信機により、自車両の現在位置及び現在時刻等の情報が取得される。
【0023】
カメラ16は、自車両の所定方向の所定範囲を撮影する。具体的に、カメラ16は、自車両の全周囲に設けられており、自車両の全周囲領域を撮影する。カメラ16は、1台でもよいが、より多くの情報を得るために複数個所に複数台設けられていてもよい。
【0024】
通信部17は、インターネット、WAN等のネットワークNに接続し、自動運転制御装置20と通信を行うための通信インターフェースである。
【0025】
なお、車載装置10は、自動運転に必要な走行装置(図示省略)と接続されており、この走行装置を制御することで自動運転を行う。この走行装置には、一例として、電動パワーステアリング、電子制御ブレーキ、電子制御スロットル等が含まれる。
【0026】
車載装置10は、自車両の走行計画に従って自動運転するように自車両の駆動、操舵、及び制動を制御することで自動運転を行う。なお、自動運転の方法自体には、様々な公知の方法が存在し、本実施形態では特に限定されるものではない。
【0027】
一方、自動運転制御装置20は、自動運転車両の車載装置10と定期的に通信することにより自動運転車両の車両状態を監視する。自動運転制御装置20には、一例として、サーバコンピュータ、パーソナルコンピュータ(PC:Personal Computer)等の汎用的なコンピュータ装置が適用される。自動運転制御装置20は、CPU21と、メモリ22と、操作部23と、表示部24と、記憶部25と、通信部26と、を備えている。
【0028】
CPU21は、プロセッサの一例である。ここでいうプロセッサとは、上述したように、広義的なプロセッサを指し、汎用的なプロセッサや、専用のプロセッサを含むものである。メモリ22は、ROM、RAM等により構成されている。
【0029】
操作部23は、自動運転制御装置20への操作入力を受け付けるためのインターフェースとして構成されている。表示部24には、例えば、液晶ディスプレイ(LCD)、有機ELディスプレイ等が用いられる。表示部24は、タッチパネルを一体的に有していてもよい。
【0030】
記憶部25には、例えば、HDD、SSD、フラッシュメモリ等が用いられる。記憶部25には、本実施形態に係る自動運転制御プログラム25Aが記憶されている。自動運転制御プログラム25Aは、例えば、自動運転制御装置20に予めインストールされていてもよい。自動運転制御プログラム25Aは、不揮発性の非遷移的(non-transitory)記録媒体に記憶して、又はネットワークNを介して配布して、自動運転制御装置20に適宜インストールすることで実現してもよい。なお、不揮発性の非遷移的記録媒体の例としては、CD-ROM(Compact Disc Read Only Memory)、光磁気ディスク、HDD、DVD-ROM(Digital Versatile Disc Read Only Memory)、フラッシュメモリ、メモリカード等が想定される。
【0031】
通信部26は、インターネット、WAN等のネットワークNに接続し、車載装置10と通信を行うための通信インターフェースである。
【0032】
ところで、上述したように、明らかな異常ではないが、自動運転車両の計画された走行又は最適な走行と異なる走行(つまり、いつもと異なる走行)を検出することが出来れば、自動運転制御プログラムの不具合等の問題の早期改善を図ることが可能となり、望ましい。
【0033】
このため、本実施形態に係る車載装置10のCPU11は、記憶部14に記憶されている制御プログラムをRAMに書き込んで実行することにより、
図2に示す各部として機能する。また、本実施形態に係る自動運転制御装置20のCPU21は、記憶部25に記憶されている自動運転制御プログラム25AをRAMに書き込んで実行することにより、
図2に示す各部として機能する。
【0034】
図2は、第1の実施形態に係る車載装置10及び自動運転制御装置20の機能的な構成の一例を示すブロック図である。
【0035】
図2に示すように、本実施形態に係る車載装置10のCPU11は、動作制御部11A、データ送信部11B、及びデータ受信部11Cとして機能する。
【0036】
動作制御部11Aは、センサ群15及びカメラ16の各々の動作を制御する。動作制御部11Aは、センサ群15から取得された時系列のセンサデータを記憶部14に蓄積し、カメラ16によって撮影して得られた時系列の画像データを記憶部14に蓄積する。また、動作制御部11Aは、自己状態量を含む運転データを記憶部14に蓄積する。自己状態量とは、自車両の状態を表すデータ群であり、例えば、アクセル、ステア、ブレーキ、加速度、速度、ヨーレート等の車両挙動、緯度・経度(位置情報)、時刻情報、車両角度、目標速度、プランニング結果等が含まれる。プランニング結果には、例えば、ミドル・レベル・プランナ(Middle Level Planner)の有限オートマトンの状態、ミドル・レベル・プランナ、ロー・レベル・プランナ(Low Level Planner)の候補軌道等が含まれる。また、動作制御部11Aは、カメラ16によって撮影して得られた時系列の画像データ、又は、画像データ及びセンサデータから、障害物等を認識する認識部としても機能する。
【0037】
データ送信部11Bは、記憶部14に蓄積された運転データを自動運転制御装置20に通信部17を介して送信する制御を行う。また、データ送信部11Bは、記憶部14に蓄積された画像データ、センサデータ、及び認識結果を自動運転制御装置20に通信部17を介して送信する制御を行う。
【0038】
データ受信部11Cは、自動運転制御装置20からの運転データ、画像データ、センサデータ、及び認識結果等の送信の指示を、通信部17を介して受信する制御を行う。
【0039】
また、
図2に示すように、本実施形態に係る自動運転制御装置20のCPU21は、運転データ収集部21A、運転軌道モデル生成部21B、異常度判定部21C、詳細データ収集部21D、オペレータ提示部21E、走行結果出力部21F、学習部21G、及び推測部21Hとして機能する。
【0040】
運転データ収集部21Aは、自動運転車両の車載装置10から、自己状態量を含む運転データを定期的に収集し、収集した運転データをデータ・モデル蓄積データベース(以下、「データ・モデル蓄積DB」という。)25Bに蓄積する。なお、このデータ・モデル蓄積DB25Bは、一例として、記憶部25に記憶されているが、外部の記憶装置に記憶されていてもよい。運転データ収集部21Aは、収集部の一例である。
【0041】
運転軌道モデル生成部21Bは、データ・モデル蓄積DB25Bに蓄積された運転データに基づいて、自己状態量の特定の値を時系列で表す運転軌道モデルを生成する。具体的に、運転軌道モデル生成部21Bは、期間(例えば、Nヶ月分)別又は区間(グリッド又はノード)別に自己状態量(例えば、アクセル、ステア、ブレーキ、加速度、速度、ヨーレート等の車両挙動、緯度・経度、時刻情報、車両角度、目標速度、プランニング結果等)を集計し、集計した自己状態量の代表値(例えば、平均、最大値、最小値、分散等)を算出する。なお、グリッドには、例えば、ジオハッシュ(geohash)が用いられる。代表値の算出は、例えば、グリッド内でトリップ毎に自己状態量に対して実施する。これを1サンプルとする。なお、トリップとは、例えば、1台の自動運転車両のイグニッションONからイグニッションOFFまでの一連の走行を1トリップとする。また、トリップは、指定されたコースの1周を1トリップとしてもよい。自己状態量には、予め定められた方法(例えば、事前に収集した各挙動の最大値、最小値、あるいは平均、分散を利用する。)で正規化処理、主成分分析による白色化処理を行う。運転軌道モデル生成部21Bは、生成部の一例である。
【0042】
具体的に、運転軌道モデル生成部21Bは、自己状態量の特定の値として、予め計画されたデジタル地図上の参照軌道に対する、候補とされた走行軌道又は実際の走行軌道の時系列のずれを表すオフセット値を求め、求めたオフセット値を所定の領域(例えば、グリッド)内で集計することにより自己状態量の代表値を算出する。
【0043】
図3を参照して、プランニング結果(すなわち、自己状態量)の代表値を算出する処理について具体的に説明する。
【0044】
図3は、本実施形態に係るプランニング結果代表値算出処理の説明に供する図である。
【0045】
図3に示すように、プランニング結果代表値算出処理の一例としては、プランナが参照するデジタル地図上の参照軌道(例えば、走行車線の中心位置等)と、過去の候補軌道、検出対象の候補軌道(総称して「候補軌道」という。)又は実際の走行軌道(実軌道)とを用いて時刻tにおける車線中心位置からの時系列的なオフセット値d(t)を求める。求めたオフセット値d(t)に基づいて、各グリッド内で集計し代表値x
dを算出する。時系列的なオフセット値を算出する方法としては、グリッド内での参照軌道と、候補軌道又は実軌道との距離をDTW(Dynamic Time Warping)等を用いて算出し、算出した距離を用いても良い。また、角度を用いる場合は、実際の車両角度とプランナの角度の偏差θ(t)についても同様に求めて利用しても良い。このようにして得られた自己状態量に基づく代表値x
dを並べたものを、下記に示すように、特徴ベクトルxとして表現する。但し、Tは転置行列を示す。
【0046】
x=(x1、x2、x3、・・・、xd)T
【0047】
プランナは、同一環境下では安定した運転軌道を計画するため、プランニング結果(自己状態量)を場所ごとに運転軌道モデル化することにより、いつもと異なる運転軌道を抽出し易くなる。
【0048】
運転軌道モデル生成部21Bは、運転軌道モデルを、自動運転車両の車両別に生成してもよいし、自動運転車両の自動運転を制御するプログラムのバージョン別に生成してもよい。例えば、同一種類の自動運転車両であっても車両本体、センサの特性等が車両間で異なる場合があり、車両別に運転軌道モデルを生成しておけば、経年劣化、故障等を検知し易くなる。また、プログラム(ソフトウェア)のバージョン別に運転軌道モデルを生成しておけば、プログラムの改変によって生じた運転軌道の変化を検知し易くなる。
【0049】
図4は、自動運転の速度と手動運転の速度との比較例を示す図である。
図4において、横軸は時間を示し、縦軸は速度を示す。
【0050】
図4に示すように、自動運転では目標速度に対して安定した出力を示すのに対して、手動運転では出力のばらつきが大きい。このことから、自動運転では、目標速度に合った運転であるいつもの運転からずれた運転を容易に抽出することができる。
【0051】
異常度判定部21Cは、運転軌道モデル生成部21Bにより生成された運転軌道モデルから得られる基準運転軌道と、自動運転車両についての評価対象運転軌道とを比較し、これら基準運転軌道と評価対象運転軌道とのずれの度合いとして表される異常度を判定する。基準運転軌道は、基準となる運転軌道を表し、評価対象運転軌道は、評価対象とする運転軌道を表す。具体的に、異常度判定部21Cは、グリッド別に作成したいつもの運転軌道(基準運転軌道)を示す特徴量と、評価対象運転軌道を示す特徴量とを比較し、これらの類似度を算出する。評価対象運転軌道を示す特徴量は、例えば、1日の走行終了後の1トリップについての特徴量でも良いし、現在の走行についての特徴量でも良い。
【0052】
基準運転軌道と評価対象運転軌道との比較には、一例として、
図5に示すユークリッド距離が用いられる。この場合、ユークリッド距離が短いほど、類似度が高くなる、つまり、異常度は低くなる。
【0053】
図5は、本実施形態に係る異常度判定処理の説明に供する図である。
【0054】
図5に示すように、ユークリッド距離を用いて、過去の運転軌道集合と、評価対象運転軌道との間の類似度を算出し、異常度(つまり、ずれの度合い)を判定する。例えば、予め異常のない運転軌道集合間で作成した類似度の平均距離を閾値として設定し、設定した閾値を超えたものを、ずれの度合いが大きい、すなわち、異常と判定する。
【0055】
なお、類似度を算出する方法は、上記ユークリッド距離に限定されるものではない。例えば、k近傍法、MMD(Maximum Mean Discrepancy)、KL距離等を用いて比較してもよい。例えば、k近傍法は、データの分布が複雑でも適切に評価できる等の特徴がある。基準運転軌道は、運転軌道モデルから場所(例えば、グリッド)毎に抽出された運転軌道の分布として表してもよい。MMDは、基準となる運転軌道群から計算された場所毎の分布と比較する方法の一例である。MMDを用いて、場所毎に抽出された基準運転軌道の分布に対する評価対象運転軌道のずれの度合いとして異常度を判定してもよい。MMDは、他の分布間距離尺度と比べ、任意の分布形状を考慮できる、計算が容易である等の特徴がある。また、例えば、特開2013-250663号公報等に記載の運転データの記号化技術を採用し、特開2014-235605号公報等に記載の運転トピック割合をグリッド別に抽出し、代表値の代わりにその運転トピック割合を用いて類似度の算出を行っても良い。
【0056】
MMDで異常を検出する場合、代表値を算出せずに各時刻tにおける自己状態量の各変数を特徴ベクトル(=1サンプル)として用いても良い。例えば、自己状態量の変数を、lat、lon、velocityとした場合、特徴ベクトルf(t)は、下記のように表される。
【0057】
f(t)=[lat(t)、lon(t)、velocity(t)]
【0058】
その他の手法として、局所区間gにおける自己状態量の標準偏差(sigma(g))と平均(mean(g))の各々の代表値を抽出しておく。局所区間gには、例えば、ジオハッシュの桁数10等、なるべく細かい局所区間を利用することが望ましい。一例として、速度の場合はVsigma(g)、Vmean(g)となる。具体的には、時刻tにおける局所区間gを特定し、自己状態量の代表値と比較する。一例として、
図6に示すように、3σより大きい地点において、速度の時系列データをV(t)とした場合、下記の関係を満たす場合に、異常と判定する。
【0059】
V(t)-Vmean(g)>3Vsigma(g)
【0060】
図6は、本実施形態に係る別の異常度判定処理の説明に供する図である。
図6において、横軸は時間を示し、縦軸は速度を示す。
【0061】
図6に示すように、分布30は1σの分布を示し、曲線31は実際に観測されたV(t)の時系列データを示し、点32は3σより大きい点、つまり、閾値を超えた点を示す。
【0062】
詳細データ収集部21Dは、異常度判定部21Cにより異常度が異常を示すと判定された場合、車載装置10から画像データ、センサデータ、及び認識結果を詳細データとして収集する。具体的には、異常度を判定したときの自動運転車両、場所、時刻が特定できるため、該当する自動運転車両の車載装置10に対して、関連するグリッド内の詳細データをアップロードするように指示を出す。これにより全ての時刻の詳細データを収集する必要がなく、該当する時刻の詳細データのみを選択的に収集することができる。
【0063】
オペレータ提示部21Eは、異常度判定部21Cにより異常度が異常を示すと判定された場合に、オペレータに対して、異常度を判定したときの画像データを提示し、オペレータから異常の有無及び要因を含む判定結果の入力を受け付ける。なお、オペレータに対して、画像データに加えてセンサデータ及び認識結果を提示してもよい。判定結果には、発生事象を含んでもよい。オペレータ提示部21Eは、オペレータから入力された異常の有無及び要因を含む判定結果をラベル(正解ラベル)として運転データに対応付けてデータ・モデル蓄積DB25Bに蓄積する。データ・モデル蓄積DB25Bには、例えば、運転データ、詳細データ、異常度、及びラベル等を登録しておく。
【0064】
走行結果出力部21Fは、オペレータから入力を受け付けた異常の有無及び要因を含むレポートデータを出力する。レポートデータは、例えば、日毎、月毎のように定期的に出力される。レポートデータの出力先は、例えば、運行事業者、開発者、又は道路管理者等とされる。走行結果出力部21Fは、出力部の一例である。
【0065】
ここで、学習用データが十分蓄積されれば、オペレータによる確認ではなく、人工知能(AI:Artificial Intelligence)を用いて、異常の有無及び要因を推測してもよい。学習部21Gは、異常度判定部21Cにより異常度が異常を示すと判定された場合に、異常度を判定したときの画像データ、並びに、オペレータから入力を受け付けた異常の有無及び要因を含むデータセットを学習用データとして、機械学習により学習された人工知能を生成する。なお、機械学習の手法は、特に限定されるものではないが、例えば、ニューラルネットワーク、ランダムフォレスト、サポートベクタマシン等が挙げられる。
【0066】
推測部21Hは、学習部21Gにより生成された人工知能を用いて、異常の有無及び要因を推測する。この場合、走行結果出力部21Fは、推測部21Hにより推測された異常の有無及び要因を含むレポートデータを出力する。
【0067】
また、データセットが十分蓄積されれば、オペレータによる確認ではなく、ユーザが定義したルールベースを用いて、異常の有無及び要因を推測してもよい。この場合、推測部21Hは、異常度判定部21Cにより異常度が異常を示すと判定された場合に、異常度を判定したときの画像データ、並びに、オペレータから入力を受け付けた異常の有無及び要因を含むデータセットからユーザが定義したルールベースを用いて、異常の有無及び要因を推測する。走行結果出力部21Fは、上記と同様に、推測部21Hにより推測された異常の有無及び要因を含むレポートデータを出力する。
【0068】
次に、
図7を参照して、第1の実施形態に係る自動運転制御装置20による異常度判定処理の全体像について説明する。
【0069】
図7は、第1の実施形態に係る自動運転制御装置20による異常度判定処理の全体像の説明に供する図である。
【0070】
本実施形態では、上述したように、自動運転車両の運転軌道を決定するプランナが同じ環境下(場所又は区間)では、同じ運転軌道を計画することを利用する。
【0071】
図7に示すように、ある区間(例えば、グリッド)について、自動運転車両(例えば、車両ID=1)の運転軌道モデル(=過去の運転軌道集合)から得られる基準運転軌道と、自動運転車両(例えば、車両ID=1)の評価対象運転軌道とを比較し、基準運転軌道、つまり、いつもの運転軌道とのずれの度合いを表す異常度を、類似度を用いて判定する。異常度の判定結果は、例えば、基準運転軌道及び評価対象運転軌道を鳥観図で可視化して表現してもよい。
図7の例では、評価対象運転軌道が走行方向に向かって基準運転軌道よりも左側によっており、いつもより左側によって走行していることが分かる。
【0072】
次に、
図8及び
図9を参照して、第1の実施形態に係る自動運転制御装置20の作用を説明する。
【0073】
図8は、第1の実施形態に係る自動運転制御プログラム25Aによる異常度判定処理の流れの一例を示すフローチャートである。
【0074】
まず、自動運転制御装置20に対して異常度判定処理の実行が指示されると、自動運転制御プログラム25Aが起動され、以下の各ステップを実行する。
【0075】
図8のステップS101では、CPU21が、評価対象車両及び時刻範囲(例えば、1日前~7日前)をキーとしてトリップを抽出する。なお、トリップは、例えば、1台の車両のイグニッションONからイグニッションOFFまでの一連の走行を1トリップとする。
【0076】
ステップS102では、CPU21が、ステップS101で抽出したトリップからグリッド(場所又は区間)を抽出する。なお、グリッドには、上述したように、例えば、ジオハッシュが用いられる。
【0077】
ステップS103では、CPU21が、ステップS102で抽出したグリッド及び時刻範囲をキーとして過去の運転データを抽出する。なお、過去の運転データには、自動運転車両の自己状態量が含まれる。自己状態量には、上述したように、一例として、アクセル、ステア、ブレーキ、加速度、速度、ヨーレート等の車両挙動、緯度・経度(位置情報)、時刻情報、車両角度、目標速度、プランニング結果等が含まれる。
【0078】
ステップS104では、CPU21が、グリッド内のトリップ毎に自己状態量の項目別に代表値を時系列で算出する。なお、代表値には、上述したように、一例として、平均、分散、最大値、最小値等が用いられる。
【0079】
ステップS105では、CPU21が、トリップ毎に抽出された自己状態量の代表値の時系列データをベクトル化する。これにより、運転軌道を表すベクトル(特徴量)が生成される。なお、トリップ毎に抽出されたベクトルを1サンプルとする。
【0080】
ステップS106では、CPU21が、評価対象サンプル(i=1;i<サンプル数;i++)を設定する。
【0081】
ステップS107では、CPU21が、評価対象サンプルについて、i=1をセットする。
【0082】
ステップS108では、CPU21が、評価対象の運転軌道のベクトルと、過去の運転軌道のベクトルとで距離を計算する。
【0083】
ステップS109では、CPU21が、評価対象サンプルについて、iをインクリメントする。
【0084】
ステップS110では、CPU21が、終了条件(i=I(I:対象サンプル数))を満たすか否かを判定する。終了条件を満たすと判定した場合(肯定判定の場合)、ステップS111に移行し、終了条件を満たさないと判定した場合(否定判定の場合)、ステップS108に戻り処理を繰り返す。
【0085】
ステップS111では、CPU21が、評価対象サンプルの距離計算結果の平均を算出する。
【0086】
一方、ステップS112では、CPU21が、過去のサンプル(j=1;j<サンプル数;j++)を設定する。
【0087】
ステップS113では、CPU21が、過去のサンプルについて、j=1をセットする。
【0088】
ステップS114では、CPU21が、過去の運転軌道のベクトル同士で距離を計算する。
【0089】
ステップS115では、CPU21が、過去のサンプルについて、jをインクリメントする。
【0090】
ステップS116では、CPU21が、終了条件(j=J(J:対象サンプル数))を満たすか否かを判定する。終了条件を満たすと判定した場合(肯定判定の場合)、ステップS117に移行し、終了条件を満たさないと判定した場合(否定判定の場合)、ステップS114に戻り処理を繰り返す。
【0091】
ステップS117では、CPU21が、距離計算結果の平均を算出し、これを閾値とする。
【0092】
ステップS118では、CPU21が、ステップS111で算出した、評価対象サンプルの距離計算平均が、ステップS117で算出した閾値よりも大きいか否かを判定する。評価対象サンプルの距離計算平均が閾値よりも大きいと判定した場合(肯定判定の場合)、ステップS119に移行し、評価対象サンプルの距離計算平均が閾値以下であると判定した場合(否定判定の場合)、本自動運転制御プログラム25Aによる異常度判定処理を終了する。
【0093】
ステップS119では、CPU21が、ステップS118で比較した結果が異常を示すと判定し、本自動運転制御プログラム25Aによる異常度判定処理を終了する。
【0094】
図9は、第1の実施形態に係る自動運転制御プログラム25Aによるレポート出力処理の流れの一例を示すフローチャートである。
【0095】
まず、自動運転制御装置20に対してレポート出力処理の実行が指示されると、自動運転制御プログラム25Aが起動され、以下の各ステップを実行する。なお、レポート出力処理は、
図8で説明した異常度判定処理から連続的に実行されてもよい。
【0096】
図9のステップS121では、CPU21が、上述の
図8で説明した異常度判定処理の結果が異常であるか否かを判定する。異常であると判定した場合(肯定判定の場合)、ステップS122に移行し、異常ではないと判定した場合(否定判定の場合)、ステップS121で待機となる。
【0097】
ステップS122では、CPU21が、異常と判定された自動運転車両から画像データ、センサデータ、及び認識結果を含む詳細データを収集し、オペレータに対して、収集した詳細データを提示する。
【0098】
ステップS123では、CPU21が、オペレータから異常の有無及び要因の入力を受け付ける。なお、学習用データが十分に蓄積されていれば、異常の有無及び要因は、上述した人工知能を用いて推測してもよいし、データセットが十分に蓄積されていれば、異常の有無及び要因は、上述したルールベースを用いて推測してもよい。
【0099】
ステップS124では、CPU21が、ステップS123でオペレータから入力を受け付けた、異常の有無及び要因を含む入力結果を、データ・モデル蓄積DB25Bに蓄積する。
【0100】
ステップS125では、CPU21が、オペレータから入力を受け付けた異常の有無及び要因を含むレポートデータを出力し、本自動運転制御プログラム25Aによるレポート出力処理を終了する。なお、レポートデータは、例えば、日毎、月毎のように定期的に出力される。レポートデータの出力先は、例えば、運行事業者、開発者、又は道路管理者等とされる。
【0101】
次に、
図10~
図12を参照して、オペレータによる異常の有無及び要否の判定処理(以下、「オペレータ判定処理」という。)について具体的に説明する。
【0102】
図10は、本実施形態に係るオペレータ判定処理の説明に供する図である。
【0103】
(S1)では、自動運転車両が、自動運転支援センタの自動運転制御装置20に対して、運転データを定期的に送信する。
【0104】
(S2)では、自動運転制御装置20のCPU21が、自動運転車両からの運転データに基づいて、運転軌道の異常を検知し、検知結果をデータ・モデル蓄積DB25Bに蓄積する。
【0105】
(S3)では、自動運転制御装置20のCPU21が、オペレータに対して、複数の異常データをリスト化した異常リストを提示し、オペレータから異常データの選択を受け付ける。
【0106】
(S4)では、自動運転制御装置20のCPU21が、オペレータに対して、上記(S3)で選択を受け付けた異常データについての実際の運転軌道及び認識結果を重畳して表示する制御を行う。つまり、全ての認識結果を確認するのは困難であるため、運転軌道に異変があったシーンに注目して認識結果を確認することができる。
【0107】
(S5)では、自動運転制御装置20のCPU21が、オペレータから異常の確認及び確認結果の選択を受け付ける。
【0108】
(S6)では、自動運転制御装置20のCPU21が、開発者へ不具合事例を通知する。
【0109】
(S7)では、自動運転制御装置20のCPU21が、該当データをデータ・モデル蓄積DB25Bに保存する。
【0110】
図10に示すように、収集した詳細データとして、車載カメラ映像(画像データ)及び認識結果を重畳して表示することにより種々の異常を検知することが出来る。例えば、映像中で歩行者が飛び出していないにもかかわらず、その時点で歩行者がいると認識されていれば認識プログラムの誤検知による運転軌道と判断することが出来る。自動運転車両の自身の認識結果を全て確認することは困難であるが、このように挙動に異変があったシーンに着目することで特に致命的な誤検知、未検知、あるいは、センサ故障を検出することが出来る。
【0111】
図11は、本実施形態に係る別のオペレータ判定処理の説明に供する図である。
【0112】
(S11)では、自動運転車両が、自動運転支援センタの自動運転制御装置20に対して、運転データを定期的に送信する。
【0113】
(S12)では、自動運転制御装置20のCPU21が、自動運転車両からの運転データに基づいて、運転軌道の異常を検知し、検知結果をデータ・モデル蓄積DB25Bに蓄積する。
【0114】
(S13)では、自動運転制御装置20のCPU21が、オペレータに対して、複数の異常データをリスト化した異常リストを提示し、オペレータから異常データの選択を受け付ける。
【0115】
(S14)では、自動運転制御装置20のCPU21が、オペレータに対して、上記(S13)で選択を受け付けた異常データについての実際の運転軌道及び認識結果を重畳して表示する制御を行う。つまり、全ての認識結果を確認するのは困難であるため、運転軌道に異変があったシーンに注目して認識結果を確認することができる。
【0116】
(S15)では、自動運転制御装置20のCPU21が、オペレータから異常の確認及び確認結果の選択を受け付ける。
【0117】
(S16)では、自動運転制御装置20のCPU21が、開発者へ不具合事例を通知する。
【0118】
(S17)では、自動運転制御装置20のCPU21が、該当データをデータ・モデル蓄積DB25Bに保存する。
【0119】
図11に示すように、実際の運転軌道と計画軌道とを重畳して表示することで、自動運転車両自体の不具合の疑いを検出することが出来る。例えば、タイヤがパンクしていた場合、計画軌道に対して実際の運転軌道が正しく追従できない可能性がある。
【0120】
図12は、本実施形態に係る更に別のオペレータ判定処理の説明に供する図である。
【0121】
(S21)では、自動運転車両が、自動運転支援センタの自動運転制御装置20に対して、運転データを定期的に送信する。
【0122】
(S22)では、自動運転制御装置20のCPU21が、自動運転車両からの運転データに基づいて、運転軌道の異常を検知し、検知結果をデータ・モデル蓄積DB25Bに蓄積する。
【0123】
(S23)では、自動運転制御装置20のCPU21が、オペレータに対して、複数の異常データをリスト化した異常リストを提示し、オペレータから異常データの選択を受け付ける。
【0124】
(S24)では、自動運転制御装置20のCPU21が、オペレータに対して、上記(S23)で選択を受け付けた異常データについての実際の運転軌道及び認識結果を重畳して表示する制御を行う。つまり、全ての認識結果を確認するのは困難であるため、運転軌道に異変があったシーンに注目して認識結果を確認することができる。
【0125】
(S25)では、自動運転制御装置20のCPU21が、オペレータから異常の確認及び確認結果の選択を受け付ける。
【0126】
(S26)では、自動運転制御装置20のCPU21が、開発者へ不具合事例を通知する。
【0127】
(S27)では、自動運転制御装置20のCPU21が、該当データをデータ・モデル蓄積DB25Bに保存する。
【0128】
図12に示すように、カメラ映像と共に、認識結果及び運転軌道を鳥観図として表示することで、想定していない物標の影響による運転軌道を抽出することが出来る。
図12の例では、路側帯に植木がはみ出ており、車線中央を走れないことが重畳結果とカメラ映像を見ることによって把握される。
【0129】
このように本実施形態によれば、基準運転軌道と評価対象運転軌道とのずれの度合いとして表される異常度が判定される。これにより、自動運転において明らかな異常ではないが、計画された走行又は最適な走行からずれた走行が判定される。
【0130】
また、異常の有無及び要因を含むレポートが開発者等の関係者に提供されるため、自動運転車両自身では気づかなかった不具合事例を改善することができる。
【0131】
また、不具合ではなくとも、いつもと異なる複雑な運転操作が必要なシーン(例えば、飛び出した歩行者の緊急回避等)を検出し、適切に環境を認識し適切なマージンを取った走行ができていることのエビデンスを示すことができる。
【0132】
[第2の実施形態]
上記第1の実施形態では、基準運転軌道と評価対象運転軌道とのずれの度合いとして表される異常度を判定する形態について説明した。第2の実施形態では、基準運転軌道と評価対象運転軌道とのずれの度合いとして表される異常度を判定し、更に、異常度が異常を示す運転軌道に対して学習器を適用し、重要な異常を判定する形態について説明する。
【0133】
図13は、第2の実施形態に係る自動運転制御装置20A及び車載装置10の機能的な構成の一例を示すブロック図である。これら自動運転制御装置20A及び車載装置10により自動運転システム100Aが構成される。
【0134】
本実施形態に係る自動運転制御装置20AのCPU21は、記憶部25に記憶されている自動運転制御プログラム25AをRAMに書き込んで実行することにより、
図13に示す各部として機能する。また、本実施形態に係る車載装置10のCPU11は、記憶部14に記憶されている制御プログラムをRAMに書き込んで実行することにより、
図13に示す各部として機能する。
【0135】
図13に示すように、本実施形態に係る自動運転制御装置20AのCPU21は、運転データ収集部21A、運転軌道モデル生成部21B、異常度判定部21C、詳細データ収集部21D、オペレータ提示部21E、走行結果出力部21F、推測部21H、検出部21J、及び学習部21Kとして機能する。なお、本実施形態に係る自動運転制御装置20Aでは、上記第1の実施形態で説明した自動運転制御装置20が有する構成要素と同じ構成要素には同じ符号を付し、その繰り返しの説明は省略する。
【0136】
また、本実施形態に係る車載装置10のCPU11は、動作制御部11A、データ送信部11B、及びデータ受信部11Cとして機能する。なお、本実施形態に係る車載装置10では、上記第1の実施形態で説明した車載装置10が有する構成要素と同じ構成要素を有しているため、その繰り返しの説明は省略する。
【0137】
オペレータ提示部21Eは、異常度判定部21Cにより異常度が異常を示すと判定された場合に、オペレータに対して、異常度を判定したときの画像データを提示し、オペレータから異常の有無及び要因の入力を受け付ける。この場合、学習部21Kは、オペレータから入力を受け付けた要因をラベルとして、評価対象運転軌道の分類を機械学習して学習器を生成する。具体的に、データ・モデル蓄積DB25Bに蓄積された詳細データ、運転データ、及びラベルに基づいて、重要な異常(例えば、車両妨害等)を識別するための学習器を生成する。
【0138】
図14は、本実施形態に係るクラスタリング処理の説明に供する図である。
【0139】
図14の例は、上記第1の実施形態で説明した異常度判定処理における評価対象運転軌道の自己状態量を表す特徴量を2次元に写像し、可視化、クラスタリングした例を示している。これによれば、特定の動作がクラスタとなって現れることが分かる。学習部21Kでは、評価対象とされる運転軌道の自己状態量を表す特徴量、発生事象、及びその要因ラベルを組として学習器を構築する。学習器の機械学習には、例えば、ニューラルネットワーク等を用いれば良い。こうすることで、運転データに含まれる自己状態量を表す特徴量を分類することが可能になる。
【0140】
検出部21Jは、学習部21Kにより得られた学習器を用いて、要因として示される重要な異常を検出する。すなわち、上記第1の実施形態で説明した異常度判定処理で異常を示す運転軌道をフィルタリングする。その後、異常を示す運転軌道に絞って学習器を適用する。このとき、事前に学習器で判定するラベルに対して、オペレータへの即時通知が必要か否かを登録しておく。これにより、登録されたラベルの運転軌跡が識別された場合に即時に通知し注意を促すことが出来る。また、このように構成することでオペレータの判断を不要とし、自動で異常要因の推定が行えるようになる。
【0141】
また、推測部21Hは、異常度判定部21Cにより異常度が異常を示すと判定された場合に、異常度を判定したときの画像データ、並びに、オペレータから入力を受け付けた異常の有無及び要因を含むデータセットを学習用データとして、機械学習により学習された人工知能を用いて、異常の有無及び要因を推測してもよい。この場合、検出部21Jは、推測部21Hにより推測された要因をラベルとして、評価対象運転軌道の分類を機械学習して得られた学習器を用いて、要因として示される重要な異常を検出する。
【0142】
また、推測部21Hは、異常度判定部21Cにより異常度が異常を示すと判定された場合に、異常度を判定したときの画像データ、並びに、オペレータから入力を受け付けた異常の有無及び要因を含むデータセットからユーザが定義したルールベースを用いて、異常の有無及び要因を推測してもよい。この場合、検出部21Jは、推測部21Hにより推測された要因をラベルとして、評価対象運転軌道の分類を機械学習して得られた学習器を用いて、要因として示される重要な異常を検出する。具体的に、学習器を用いて、評価対象運転軌道の自己状態量を表す特徴量を分類し、上述の
図14に示すように、分類に対応する要因として示される重要な異常を検出する。
【0143】
ここで、詳細データ収集部21Dは、検出部21Jにより特定の異常事象が検出された場合、オペレータが映像を確認するために、自動運転車両に対して、圧縮済みのカメラ映像を送信するように要求する。これにより、即時に認識結果とカメラ映像との対比確認が可能となる。
【0144】
オペレータ提示部21Eは、一例として、
図15に示すように、検出部21Jにより検出された特定の異常事象、及び、詳細データ収集部21Dにより収集されたカメラ映像をオペレータに提示する。
【0145】
図15は、本実施形態に係るオペレータ判定処理の説明に供する図である。
【0146】
(S31)では、自動運転車両が、自動運転支援センタの自動運転制御装置20Aに対して、運転データを定期的に送信する。また、自動運転車両は、自動運転制御装置20Aで異常が検知された場合に、自動運転制御装置20Aからの要求に応じて、圧縮済みカメラ映像を送信する。
【0147】
(S32)では、自動運転制御装置20AのCPU21が、自動運転車両からの運転データに基づいて、運転軌道の異常を検知し、検知結果をデータ・モデル蓄積DB25Bに蓄積する。
【0148】
(S33)では、自動運転制御装置20AのCPU21が、自動運転支援センタのオペレータに対して、カメラ映像と共に異常を通知する。
【0149】
(S34)では、自動運転制御装置20AのCPU21が、オペレータに対して、上記(S33)で通知した異常についての実際の運転軌道及び認識結果を重畳して表示する制御を行う。
【0150】
(S35)では、自動運転制御装置20AのCPU21が、オペレータから異常の確認及び確認結果の選択を受け付ける。
【0151】
(S36)では、自動運転制御装置20AのCPU21が、開発者、道路管理者へ不具合事例を通知する。
【0152】
(S37)では、自動運転制御装置20AのCPU21が、該当データをデータ・モデル蓄積DB25Bに保存する。
【0153】
図15に示すように、オペレータは実際の運転軌道、認識結果、及びカメラ映像を確認することによって現在どのような異常が発生しているかを判定することが出来る。これにより、例えば、ハッキング、車両妨害等の走行に影響を及ぼす重要な事象の発見と対応が可能になる。
【0154】
図16は、本実施形態に係る別のオペレータ判定処理の説明に供する図である。
【0155】
(S41)では、自動運転車両が、自動運転支援センタの自動運転制御装置20Aに対して、運転データを定期的に送信する。また、自動運転車両は、自動運転制御装置20Aで異常が検知された場合に、自動運転制御装置20Aからの要求に応じて、圧縮済みカメラ映像を送信する。
【0156】
(S42)では、自動運転制御装置20AのCPU21が、自動運転車両からの運転データに基づいて、運転軌道の異常を検知する。
【0157】
(S43)では、自動運転制御装置20AのCPU21が、自動運転支援センタのオペレータに対して、異常を通知する。
【0158】
(S44)では、自動運転制御装置20AのCPU21が、オペレータに対して、上記(S43)で通知した異常についての実際の運転軌道及び認識結果を重畳して表示する制御を行う。
【0159】
(S45)では、自動運転制御装置20AのCPU21が、オペレータから異常の確認及び確認結果の選択を受け付ける。
【0160】
(S46)では、自動運転制御装置20AのCPU21が、道路管理者へ不具合事例を通知する。
【0161】
(S47)では、自動運転制御装置20AのCPU21が、該当データをデータ・モデル蓄積DB25Bに保存する。
【0162】
図16に示すように、オペレータによって重要な異常と判定された事象が即時に開発者、道路事業者、あるいは警察などへ通知される。
図16の例は、走行妨害、例えば、歩行者と認識して減速したが実際は歩行者ではなかった(例えば、マネキン等の落下物であった)場合の例である。
【0163】
図17は、第2の実施形態に係る自動運転制御プログラム25Aによる学習器生成処理の流れの一例を示すフローチャートである。
【0164】
まず、自動運転制御装置20Aに対して学習器生成処理の実行が指示されると、自動運転制御プログラム25Aが起動され、以下の各ステップを実行する。なお、学習器生成処理は、上述の
図8で説明した異常度判定処理から連続的に実行されてもよい。
【0165】
図17のステップS131では、CPU21が、上述の
図8で説明した異常度判定処理の結果が異常であるか否かを判定する。異常であると判定した場合(肯定判定の場合)、ステップS132に移行し、異常ではないと判定した場合(否定判定の場合)、ステップS131で待機となる。
【0166】
ステップS132では、CPU21が、異常と判定された自動運転車両から画像データ、センサデータ、及び認識結果を含む詳細データを収集し、オペレータに対して、収集した詳細データを提示する。
【0167】
ステップS133では、CPU21が、オペレータから異常の有無及び要因の入力を受け付ける。なお、学習用データが十分に蓄積されていれば、異常の有無及び要因は、上述した人工知能を用いて推測してもよいし、データセットが十分に蓄積されていれば、異常の有無及び要因は、上述したルールベースを用いて推測してもよい。
【0168】
ステップS134では、CPU21が、ステップS133でオペレータから入力を受け付けた、異常の有無及び要因を含む入力結果を、データ・モデル蓄積DB25Bに蓄積する。
【0169】
ステップS135では、CPU21が、オペレータから入力を受け付けた要因をラベルとして、評価対象運転軌道の分類を機械学習して学習器を生成する。具体的に、データ・モデル蓄積DB25Bに蓄積された詳細データ、運転データ、及びラベルに基づいて、重要な異常を識別するための学習器を生成する。
【0170】
ステップS136では、CPU21が、学習器のラベルに即時通知の要否を登録し、本自動運転制御プログラム25Aによる学習器生成処理を終了する。
【0171】
図18は、第2の実施形態に係る自動運転制御プログラム25Aによる即時通知処理の流れの一例を示すフローチャートである。
【0172】
まず、自動運転制御装置20Aに対して即時通知処理の実行が指示されると、自動運転制御プログラム25Aが起動され、以下の各ステップを実行する。
【0173】
図18のステップS141では、CPU21が、上述の
図8で説明した異常度判定処理の結果が異常であるか否かを判定する。異常であると判定した場合(肯定判定の場合)、ステップS142に移行し、異常ではないと判定した場合(否定判定の場合)、ステップS141で待機となる。
【0174】
ステップS142では、CPU21が、上述の学習器を用いて、評価対象運転軌道の自己状態量を表す特徴量を分類し、分類に対応する要因として示される重要な異常を検出する。
【0175】
ステップS143では、CPU21が、上記要因に即時通知が必要か否かを判定する。即時通知が必要と判定した場合(肯定判定の場合)、ステップS144に移行し、即時通知が必要ではないと判定した場合(否定判定の場合)、本自動運転制御プログラム25Aによる即時通知処理を終了する。
【0176】
ステップS144では、CPU21が、異常と判定された自動運転車両から画像データ、センサデータ、及び認識結果を含む詳細データを収集し、オペレータに対して、収集した詳細データを提示する。
【0177】
ステップS145では、CPU21が、オペレータから判定結果の入力を受け付ける。
【0178】
ステップS146では、CPU21が、オペレータからの判定結果に応じて、開発者。道路事業者、又は警察等に即時通知を行い、本自動運転制御プログラム25Aによる即時通知処理を終了する。
【0179】
このように本実施形態によれば、基準運転軌道と評価対象運転軌道とのずれの度合いとして表される異常度が判定され、更に、異常度が異常を示す評価対象運転軌道に対して学習器が適用される。学習器を用いて重要な異常が検出された場合に、開発者、道路事業者等に即時に通知することができる。
【0180】
以上の実施形態に関し、更に以下の付記を開示する。
【0181】
(付記項1)
メモリと、
少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集し、
前記収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成し、
前記生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する、
ように構成されている自動運転制御装置。
【0182】
(付記項2)
コンピュータを、
予め運転軌道が計画された自動運転車両から、自車両の状態を表す自己状態量を含む運転データを収集する収集部、
前記収集部により収集された運転データに基づいて、前記自己状態量の特定の値を時系列で表す運転軌道モデルを生成する生成部、及び、
前記生成部により生成された運転軌道モデルから得られる基準となる運転軌道を表す基準運転軌道と、自動運転車両について評価対象とする運転軌道を表す評価対象運転軌道とを比較し、前記基準運転軌道と前記評価対象運転軌道とのずれの度合いとして表される異常度を判定する判定部、
として機能させるための自動運転制御プログラムを記憶した非遷移的記録媒体。
【0183】
以上、実施形態に係る自動運転制御装置を例示して説明した。実施形態は、自動運転制御装置が備える各部の機能をコンピュータに実行させるためのプログラムの形態としてもよい。実施形態は、これらのプログラムを記憶したコンピュータが読み取り可能な非遷移的記録媒体の形態としてもよい。
【0184】
その他、上記実施形態で説明した自動運転制御装置の構成は、一例であり、主旨を逸脱しない範囲内において状況に応じて変更してもよい。
【0185】
また、上記実施形態で説明したプログラムの処理の流れも、一例であり、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよい。
【0186】
また、上記実施形態では、プログラムを実行することにより、実施形態に係る処理がコンピュータを利用してソフトウェア構成により実現される場合について説明したが、これに限らない。実施形態は、例えば、ハードウェア構成や、ハードウェア構成とソフトウェア構成との組み合わせによって実現してもよい。
【符号の説明】
【0187】
10 車載装置、11、21 CPU、11A 動作制御部、11B データ送信部、11C データ受信部、12、22 メモリ、13、24 表示部、14、25 記憶部、15 センサ群、16 カメラ、17、26 通信部、20、20A 自動運転制御装置、21A 運転データ収集部、21B 運転軌道モデル生成部、21C 異常度判定部、21D 詳細データ収集部、21E オペレータ提示部、21F 走行結果出力部、21G、21K 学習部、21H 推測部、21J 検出部、25A 自動運転制御プログラム、25B データ・モデル蓄積DB、100、100A 自動運転システム