以下に添付図面を参照して、情報処理装置、情報処理方法、情報処理プログラム、および移動体を詳細に説明する。
図1は、本実施の形態の移動体10の一例を示す図である。
移動体10は、情報処理装置20と、センサ10Aと、出力部10Nと、駆動制御部10Iと駆動部10Mと、を備える。
情報処理装置20は、例えば、専用または汎用コンピュータである。本実施の形態では、情報処理装置20が、移動体10に搭載されている場合を一例として説明する。
移動体10とは、移動可能な物である。移動体10は、例えば、車両、台車、飛行可能な物体(有人飛行機、無人飛行機(例えば、UAV(Unmanned Aerial Vehicle)、ドローン)、ロボット、パーソナルモビリティ、などである。また、移動体10は、例えば、人による運転操作を介して走行する移動体や、人による運転操作を介さずに自動的に走行(自動運転)可能な移動体である。本実施の形態では、移動体10が車両である場合を一例として説明する。車両は、例えば、二輪自動車、三輪自動車、四輪自動車などである。本実施の形態では、車両が、自動運転可能な四輪自動車である場合を一例として説明する。
なお、情報処理装置20は、移動体10に搭載された形態に限定されない。情報処理装置20は、静止物に搭載されていてもよい。静止物は、地面に固定された物である。静止物は、移動不可能な物や、地面に対して静止した状態の物である。静止物は、例えば、ガードレール、ポール、駐車車両、道路標識、などである。また、情報処理装置20は、クラウド上で処理を実行するクラウドサーバに搭載されていてもよい。
駆動部10Mは、移動体10に搭載された、駆動デバイスである。駆動部10Mは、例えば、エンジン、ブレーキの駆動部、ステアリングの駆動部、アクセルの駆動部、などである。
駆動制御部10Iは、駆動部10Mを制御する。駆動制御部10Iの制御によって駆動部10Mが駆動する。例えば、駆動制御部10Iは、移動体10を自動運転するために、センサ10Aから出力された出力情報や、出力情報から導出された導出情報(詳細後述)などに基づいて、駆動部10Mを制御する。駆動部10Mの制御によって、移動体10のステアリング量、ブレーキ量、アクセル量、などが制御される。例えば、駆動制御部10Iは、障害物などの物体を避けて現在走行中の車線を保ち、かつ前方車両との車間距離を所定距離以上保つように車両の制御を行う。
出力部10Nは、各種情報を出力する。出力部10Nは、例えば、各種情報を外部装置と通信する通信機能、各種情報を表示する表示機能、各種情報を示す音を出力する音出力機能、などを備える。例えば、出力部10Nは、通信部、ディスプレイ、および、スピーカ、の少なくとも1つを含む。
センサ10Aは、対象の物理現象や対象の物理状態の変化などを検知し、信号やデータに変換して出力する装置や機器である。本実施の形態では、センサ10Aは、移動体10の内界や外界の状況をセンシングするために用いられる。本実施の形態では、センサ10Aは、外界センサ10Bと、内界センサ10Cと、を含む。
外界センサ10Bは、移動体10の周辺の外界をセンシングするセンサ10Aである。外界センサ10Bは、移動体10に搭載されていてもよいし、該移動体10の外部に搭載されていてもよい。移動体10の外部とは、例えば、他の移動体や外部装置などを示す。
移動体10の周辺とは、該移動体10から予め定めた範囲内の領域である。この範囲は、外界センサ10Bの観測可能な範囲である。この範囲は、予め設定すればよい。
外界センサ10Bは、外界をセンシングし、センシング結果を出力情報として出力する。
外界センサ10Bは、例えば、カメラ(撮影装置)、距離センサ(ミリ波レーダ、レーザセンサ)、音波によって物体を探知するソナーセンサ、超音波センサ、外部装置との通信装置、などである。レーザセンサは、例えば、水平面に対して平行に設置された二次元LIDAR(Laser Imaging Detection and Ranging)センサや、三次元LIDARセンサである。
移動体10には、これらの複数種類の外界センサ10Bの内、少なくとも1種を、複数搭載した形態であってもよい。また、移動体10は、1種類の外界センサ10Bを搭載した形態であってもよいし、複数種類の外界センサ10Bを搭載した形態であってもよい。
本実施の形態では、外界センサ10Bは、カメラ10Eと、LIDAR10Fと、ミリ波レーダ10Gと、超音波センサ10Hと、V2Xモジュール10Dと、を含む場合を説明する。
カメラ10Eは、撮影によって撮影画像データ(以下、撮影画像と称する)を得る。撮影装置は、単眼カメラ、ステレオカメラ、位置特定用カメラ、カラー開口カメラセンサ、などである。撮影画像は、画素ごとに画素値を規定したデジタル画像データや、画素毎にカメラ10Eからの距離を規定したデプスマップなどである。
本実施の形態では、移動体10には、複数のカメラ10E(カメラ10E1、カメラ10E2)が搭載されている場合を、一例として説明する。これらの複数のカメラ10Eは、互いに、撮影画角の少なくとも一部が異なるように配置されている。これによって、カメラ10Eが、移動体10の周辺を撮影可能としてもよい。本実施の形態では、カメラ10E1は、移動体10の前方(すなわち、移動体10の進行方向の下流側)を撮影可能な位置に設置されている。カメラ10E2は、移動体10の後方(すなわち、移動体10の進行方向の上流側)を撮影可能な位置に設置されている。
カメラ10Eは、予め定めた撮影間隔毎(例えば、10msec毎)に周辺を撮影し、撮影画像を出力情報として情報処理装置20へ送信する。なお、カメラ10Eの撮影間隔は、周辺環境などに応じて変更可能としてもよい。
なお、カメラ10Eの撮影方向(撮影画角)は、移動体10の周辺に限定されない。例えば、カメラ10Eは、移動体10の内部を撮影可能な方向に、設置されていてもよい。この場合、例えば、複数のカメラ10Eの内の一部を、移動体10のドライバや同乗者を撮影可能な位置に設置すればよい。
LIDAR10Fは、パルス状にレーザーを照射して反射光を測定し、反射光が到着するまでの時間を計測することで、対象までの距離を測定するセンサである。
本実施の形態では、移動体10には、複数のLIDAR10F(LIDAR10F1、LIDAR10F2)が設けられている場合を、一例として説明する。LIDAR10F1は、移動体10の前方(すなわち、移動体10の進行方向の下流側)を測定可能な位置に設置されている。LIDAR10F2は、移動体10の後方(すなわち、移動体10の進行方向の上流側)を測定可能な位置に設置されている。
LIDAR10Fは、予め定めた間隔毎(例えば、10msec毎)に周辺を測定し、対象までの距離の測定結果(以下、LIDAR情報と称する)を出力情報として、情報処理装置20へ送信する。なお、LIDAR10Fの測定間隔は、周辺環境などに応じて変更可能としてもよい。
ミリ波レーダ10Gは、ミリ波帯の波長の電波を用いて、周囲の対象との距離を測定するセンサである。超音波センサ10Hは、超音波を発信し、その反射波を受波器で受信する。これによって、超音波センサ10Hは、対象の有無や対象までの距離を検出する。なお、移動体10は、ミリ波レーダ10Gおよび超音波センサ10Hについても、複数搭載した構成であってもよい。
ミリ波レーダ10Gは、予め定めた間隔毎(例えば、10msec毎)に周辺を測定し、対象までの距離の測定結果(以下、ミリ波レーダ情報と称する)を出力情報として、情報処理装置20へ送信する。なお、ミリ波レーダ10Gの測定間隔は、周辺環境などに応じて変更可能としてもよい。
V2Xモジュール10Dは、通信インフラを介さずに、他の情報処理装置や外部装置と直接無線通信するための通信モジュールである。このような直接無線通信には、例えば、車車間・路車間通信(V2X:Vehicle−to−Everything)を用いる。
V2X通信は、IEEE802.11pを用いた自動車間の通信(V2V)、自動車と通信装置間の通信(V2I)、自動車と歩行者間の通信(V2P)、自動車と住宅間の通信(V2H)などを含む。V2X通信では、ワイルドカードBSSID(Basic Service Set IDentification)を用いて、BSSを確立せずに直接無線通信を行う。なお、V2X通信は、C2X(Car−to−X)通信と称される場合もある。
V2Xモジュール10Dは、他の情報処理装置や外部装置との間で、直接無線通信により、通信メッセージを通信する。
通信メッセージは、例えば、移動体10の位置情報(緯度、経度、高度、位置情報の精度など)、移動体10の大きさ情報(縦の長さ、横の長さなど)、移動体10の動き情報(速度、向き、進行方向の加速度、横方向の加速度、ヨー角度など)、移動体10の運転状態を示す情報(ブレーキ、アクセル、ステアリングの操作量、変速機の状態、補助ブレーキの状態、ABSの状態など)、信号機の状態に関する情報(信号機の示す色など)、道路標識に関する情報(制限速度)などを含む。
具体的には、例えば、通信メッセージは、NHTSA(National Highway Traffic Safety Administration)によって発行された“Vehicle−to−Vehicle Communications: Readiness of V2V Technology for Application”に記載されている、BSM(Basic Safety Message)などである。
V2Xモジュール10Dは、他の情報処理装置や外部装置から通信メッセージを受信または送信するごとに、受信または送信した通信メッセージを出力情報として、情報処理装置20へ出力する。
例えば、V2Xモジュール10Dは、予め定めた周波数帯域(例えば、5.9GHz帯、700MHz帯)で無線通信などを行い、通信メッセージを通信する。なお、V2Xモジュール10Dによる通信の間隔は、予め定めてもよく、可変としてもよい。V2Xモジュール10Dによる通信の間隔は、例えば、100msecである。
次に、内界センサ10Cについて説明する。内界センサ10Cは、移動体10自体をセンシングするセンサである。内界センサ10Cは、移動体10の位置情報や、移動体10の姿勢を示す姿勢情報などを取得する。内界センサ10Cは、例えば、GNSS(Global Navigation Satellite System)モジュール、慣性計測装置(IMU:Inertial Measurement Unit)、速度センサ、GPS(Global Positioning System)等である。IMUは、移動体10の三軸加速度および三軸角速度などを得る。なお、移動体10の位置情報は、ワールド座標(世界座標)によって表されるものとする。
本実施の形態では、移動体10は、内界センサ10Cとして、GNSSモジュール10Pを備える場合を、一例として説明する。GNSSモジュール10Pは、移動体10の位置情報および現在時刻(以下、単に位置情報と称する)を測定する。位置情報は、例えば、緯度および経度で表される。そして、GNSSモジュール10Pは、測定した位置情報を出力情報として、情報処理装置20へ出力する。
次に、移動体10のハードウェア構成を説明する。
図2は、移動体10のハードウェア構成の一例を示す模式図である。図2に示すように、移動体10は、センサ10Aと、駆動制御部10Iと、情報処理装置20と、が電気的に接続されている。
情報処理装置20は、ECU(Engine Control Unit)22と、記憶装置24と、を電気的に接続した構成である。
記憶装置24は、各種データを記憶するための記憶装置である。記憶装置24は、例えば、HDD(ハードディスクドライブ)、SSD, eMMCなどのストレージデバイス、RAM(Random Access Memory)、MRAM(MagnetoresistiveRAM)、PCM(Phase Change Memory)、ReRAM(Resistance RAM)、FeRAM(Ferroelectric RAM))、外部メモリ(USB(Universal Serial Bus)メモリ)、フラッシュメモリ等の半導体メモリ素子(NOR Flash、NANDFlash)、SDカード、光ディスク等である。
記憶装置24のインタフェースは限定されない。記憶装置24のインタフェースは、例えば、SATA,SAS,PCIe,NVMeなどのストレージデバイスの共通インタフェースや、DIMMなどのメインメモリ用インタフェース、SPI(Serial Peripheral Interface)やI2C(Inter−Integrated Circuit)などがある。
なお、記憶装置24は、情報処理装置20の外部に設けられた記憶装置であってもよい。また、記憶装置24は、記憶媒体であってもよい。また、記憶装置24を、複数の記憶装置から構成してもよい。
本実施の形態では、記憶装置24は、複数の記憶装置24から構成される場合を、一例として説明する。具体的には、本実施の形態では、記憶装置24は、記憶装置24Aと、記憶装置24Bと、記憶装置24Cと、記憶装置24Dと、から構成される場合を、一例として説明する。
ECU22は、情報処理装置20を制御するマイクロコントローラである。ECU22は、1つのECU22から構成してもよいし、複数のECUから構成してもよい。本実施の形態では、ECU22は、認識ECU22Aと、判断ECU22Bと、V2X ECU22Cと、ゲートウェイECU22Dと、を含む場合を、一例として説明する。
V2X ECU22Cは、V2Xモジュール10Dに接続されている。また、V2X ECU22Cには、記憶装置24Cが接続されている。V2X ECU22Cは、V2Xモジュール10Dを制御する。例えば、V2X ECU22Cは、V2Xモジュール10Dを介して他の装置へ通信メッセージを送信する。また、V2X ECU22Cは、V2Xモジュール10Dを介して他の装置から受信した通信メッセージを、他のECU22(例えば、認識ECU22A)へ出力する。また、V2X ECU22Cは、通信メッセージを記憶装置24Cへ記憶する。
ゲートウェイECU22Dは、移動体10に搭載された複数のサブネットワークN間を繋ぐECU22である。
移動体10に搭載されたサブネットワークNは、有線および無線の何れであってもよい。有線のサブネットワークNは、例えば、CAN(Controller Area Network)、CAN FD、LIN(Local Interconnect Network)、FlexRay、MOST(media oriented systems transport)、Ethernetなどである。また無線のサブネットワークNには、802.11a、802.11b、802.11g、802.11n、802.11ac、などの伝送規格の無線LANデバイス、近距離無線通信のBluetooth(登録商標)、ZigBee,TransferJetなどの無線通信方式が用いられる。
ゲートウェイECU22Dは、移動体10における複数のサブネットワークNによるドメインを分割する。そして、ゲートウェイECU22Dは、これらのドメインをまたぐ通信のルーティングや、通信のフィルタリングを行う。
本実施の形態では、ゲートウェイECU22Dには、GNSSモジュール10Pおよび記憶装置24Dが接続されている。ゲートウェイECU22Dは、該ゲートウェイECU22Dを通過した各種情報を記憶装置24Dへ記憶する。
また、ゲートウェイECU22Dは、サブネットワークN1、サブネットワークN2、サブネットワークN3の各々に接続されている。
サブネットワークN1には、認識ECU22Aおよび判断ECU22Bが接続されている。サブネットワークN2には、駆動制御部10Iが接続されている。サブネットワークN3には、V2X ECU22Cが接続されている。本実施の形態では、ゲートウェイECU22Dは、これらの複数のサブネットワークN(サブネットワークN1、N2、N3)に接続されている。このため、各サブネットワークNに接続されたECU22(認識ECU22A、判断ECU22B、V2X ECU22C)および駆動制御部10Iは、ゲートウェイECU22Dを介して通信可能に構成されている。
認識ECU22Aは、外界センサ10Bに接続されている。認識ECU22Aは、外界センサ10Bから受付けた出力情報の認識や、出力情報から導出情報を導出する(詳細後述)、認識ECU22Aには、記憶装置24Aが接続されている。認識ECU22Aは、認識結果や導出情報を記憶装置24Aへ記憶する。
判断ECU22Bは、認識ECU22Aによる認識結果などを用いて、移動体10の走行予定経路などを生成する。記憶装置24Bは、判断ECU22Bで生成された走行予定経路などを記憶する。
駆動制御部10Iは、上述したように、駆動部10Mを制御する。本実施の形態では、駆動制御部10Iは、ステアリング制御ECU10Jと、ブレーキ制御ECU10Kと、アクセル制御ECU10Lと、を含む。ステアリング制御ECU10Jは、情報処理装置20で導出されたステアリング量に応じて、駆動部10Mを制御することで、移動体10の操舵角を制御する。ブレーキ制御ECU10Kは、情報処理装置20で導出されたブレーキ量に応じて、駆動部10Mを制御することで、移動体10のブレーキ量を制御する。アクセル制御ECU10Lは、情報処理装置20で導出されたアクセル量に応じて、駆動部10M、を制御することで、移動体10のアクセル量を制御する。
なお、移動体10のハードウェア構成は、図2に示す形態に限定されない。
例えば、複数のECU22(認識ECU22A、判断ECU22B、V2X ECU22C、ゲートウェイECU22D)の内の少なくとも2つを、まとめて、1つのECU22として構成してもよい。例えば、認識ECU22Aの処理を実行する認識用Coreと、判断ECU22Bの処理を実行する生成用Coreと、を内蔵した1つのECU22を、認識ECU22Aおよび判断ECU22Bに代えて用いてもよい。また、1つのECU22内に、汎用的な処理を行う汎用Coreを複数搭載し、各汎用Coreで、認識ECU22A、判断ECU22B、V2X ECU22C、およびゲートウェイECU22Dなどの処理を統合して実行する構成としてもよい。
また、例えば、複数のECU22(認識ECU22A、判断ECU22B、V2X ECU22C、ゲートウェイECU22D)の内の少なくとも2つを、PCIeなどを用いて直接接続してもよい。
また、複数の記憶装置24(記憶装置24A、記憶装置24B、記憶装置24C、記憶装置24D)の内の少なくとも2つを、まとめて、1つの記憶装置24として構成してもよい。
また、各センサ10A、ECU22(認識ECU22A、判断ECU22B、V2X ECU22C、ゲートウェイECU22D)、記憶装置24、の接続形態は、図2に示す例に限定されない。また、移動体10のサブネットワークNの構成は、図2に示す形態に限定されない。
例えば、図2には、情報処理装置20における全てのサブネットワークNが、ゲートウェイECU22Dに接続されている場合を示した。しかし、サブネットワークNごとに、各サブネットワークNの専用のゲートウェイ(例えば、DCU(Domain Control Unit))を接続してもよい。このように、DCUを用いて、多段のゲートウェイを構成してもよい。また、各DCUに、更に、記憶装置24を接続してもよい。また、例えば、駆動制御部10Iに、更に、記憶装置24を接続してもよい。
また、例えば、各センサ10A、ECU22(認識ECU22A、判断ECU22B、V2X ECU22C、ゲートウェイECU22D)、記憶装置24、の少なくとも1つを、図2に示す例とは異なるサブネットワークNや異なるECU22などへ接続した形態であってもよい。
また、センサ10Aの各々に、記憶装置24を搭載した形態であってもよい。
また、センサ10Aの内の少なくとも一部を、ゲートウェイECU22D、サブネットワークN1、または、ゲートウェイECU22Dに接続された新たなサブネットワーク(図示省略)、の何れかに接続した形態であってもよい。
例えば、カメラ10E1、カメラ10E2を、ゲートウェイECU22D、サブネットワークN1、または、ゲートウェイECU22Dに接続された新たなサブネットワーク(図示省略)、の何れかに接続した形態であってもよい。
また、各センサ10Aの各々に記憶装置24を接続した構成であってもよい。また、各センサ10Aの各々が、記憶装置24を含む構成であってもよい。また、各センサ10Aの各々に接続された記憶装置24に、各センサ10Aから出力された出力情報を記憶し、情報処理装置20は、該記憶装置24から出力情報を取得してもよい。
また、複数のECU22の少なくとも1つが、記憶装置24を内蔵した構成であってもよい。
また、各記憶装置24に記憶される情報は上記に限定されない。例えば、記憶装置24Aに記憶される情報の一部を記憶装置24Bに記憶してもよい。また、駆動制御部10Iに更に記憶装置を接続した構成とし、駆動制御部10Iの制御に用いる情報(例えば、アクセル量など)を、記憶装置に記憶してもよいし、記憶装置24Aに記憶してもよい。
次に、移動体10の機能的構成について詳細に説明する。図3は、移動体10の機能的構成の一例を示すブロック図である。
移動体10は、情報処理装置20と、出力部10Nと、センサ10Aと、駆動制御部10Iと、を備える。情報処理装置20、出力部10N、センサ10A、および、駆動制御部10Iは、バス26などを介して接続されている。
情報処理装置20は、記憶装置24と、処理部30と、を備える。
なお、記憶装置24、出力部10N、センサ10A(外界センサ10B(カメラ10E(カメラ10E1、カメラ10E2)、LIDAR10F(LIDAR10F1、LIDAR10F2)、ミリ波レーダ10G、超音波センサ10H、V2Xモジュール10D)、内界センサ10C(GNSSモジュール10P))、および駆動制御部10I、の少なくとも1つは、有線または無線で処理部30に接続すればよい。また、記憶装置24、出力部10N、センサ10A(外界センサ10B(カメラ10E(カメラ10E1、カメラ10E2)、LIDAR10F(LIDAR10F1、LIDAR10F2)、ミリ波レーダ10G、超音波センサ10H、V2Xモジュール10D)、内界センサ10C(GNSSモジュール10P))、および駆動制御部10I、の少なくとも1つと、処理部30と、を、ネットワークを介して接続してもよい。
記憶装置24は、上述したため、ここでは説明を省略する。
処理部30は、情報処理装置20における各種処理を実行する。処理部30は、取得部30Aと、導出部30Bと、算出部30Cと、設定部30Dと、記録制御部30Eと、を備える。導出部30Bは、センサ異常検出部30Fと、周辺状況認識部30Gと、経路生成部30Hと、駆動量生成部30Iと、を含む。周辺状況認識部30Gは、走行レーン検出部30Jと、障害物検出部30Kと、標識認識部30Lと、走行可能領域検出部30Mと、自己位置推定部30Nと、V2X通信情報解析部30Oと、ドライバ状態認識部30Pと、グリッドマップ生成部30Qと、を含む。経路生成部30Hは、走行予定経路生成部30Rと、走行方針・難易度決定部30Sと、推奨レーン生成部30Tと、を含む。
処理部30における各機能部(取得部30A、導出部30B、算出部30C、設定部30D、記録制御部30E、センサ異常検出部30F、周辺状況認識部30G、経路生成部30H、駆動量生成部30I、走行レーン検出部30J、障害物検出部30K、標識認識部30L、走行可能領域検出部30M、自己位置推定部30N、V2X通信情報解析部30O、ドライバ状態認識部30P、グリッドマップ生成部30Q、走行予定経路生成部30R、走行方針・難易度決定部30S、推奨レーン生成部30T)は、例えば、1または複数のプロセッサにより実現される。
例えば、上記各部は、ECU22やCPU(Central Processing Unit)などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各機能部は、専用のIC(Integrated Circuit)などのプロセッサ、すなわちハードウェアにより実現してもよい。また、上記各機能部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2以上を実現してもよい。
なお、本実施の形態において用いる「プロセッサ」との文言は、例えば、ECU22、CPU、GPU(Graphical Processing Unit)或いは、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、プログラマブル論理デバイス(例えば、単純プログラマブル論理デバイス(Simple Programmable Logic Device:SPLD)、複合プログラマブル論理デバイス(Complex Programmable Logic Device:CPLD)、およびフィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA))の回路を意味する。
プロセッサは、記憶装置24などの記憶部に保存されたプログラムを読み出し実行することで、上記各機能部を実現する。なお、記憶部にプログラムを保存する代わりに、プロセッサの回路内にプログラムを直接組み込むよう構成してもよい。この場合、プロセッサは回路内に組み込まれたプログラムを読み出し実行することで、上記各機能部を実現する。
まず、取得部30Aについて説明する。取得部30Aは、センサ10Aから出力情報を取得する。
出力情報は、センサ10Aの各々でセンシングされたセンシング結果を示す情報である。言い換えると、出力情報は、センサ10Aから出力された情報である。出力情報は、例えば、カメラ10Eで撮影された撮影画像、LIDAR10Fで測定されたLIDAR情報、ミリ波レーダ10Gで測定されたミリ波レーダ情報、V2Xモジュール10Dで通信した通信メッセージ、GNSSモジュール10Pで取得した位置情報、などである。
なお、出力情報は、情報処理装置20に接続されたセンサ10Aでセンシングされたセンシング結果を示す情報であればよく、上記に限定されない。
取得部30Aは、取得した出力情報を、導出部30Bへ出力する。
導出部30Bは、取得部30Aで取得した出力情報から、導出情報を導出する。
導出情報は、出力情報に対して各種処理を実行することによって導出される情報である。このため、導出情報は、出力情報とは異なる情報である。
導出情報は、例えば、センサ異常情報、矛盾情報、ドライバ状態情報、走行予定経路情報、走行難易度情報、推奨レーン情報、周辺状況解析結果情報、移動体10の駆動量、の少なくとも1つを含む。
これらの導出情報は、導出部30Bによって導出される。導出部30Bは、センサ異常検出部30Fと、周辺状況認識部30Gと、経路生成部30Hと、駆動量生成部30Iと、を含む。
センサ異常検出部30Fは、導出情報として、センサ異常情報を導出する。センサ異常情報は、センサ10Aの異常を示す情報である。センサ10Aの異常とは、センサ10Aが出力情報を出力することの不可能な状態であることや、異常値を出力する状態であることを示す。
センサ異常検出部30Fは、センサ10Aの各々の異常を検出する。センサ異常検出部30Fは、センサ10Aの各々から、取得部30Aを介して出力情報を受付ける。そして、センサ異常検出部30Fは、受付けた出力情報を用いて、各出力情報を出力したセンサ10Aの異常を検出する。
センサ異常検出部30Fは、公知の方法により、出力情報から、センサ10Aの異常を検出すればよい。例えば、センサ異常検出部30Fは、センサ10Aに設けられたウォッチドック機能を用いてセンサ異常を検出する。また、センサ異常検出部30Fは、所定時間以上、出力情報の出力されないセンサ10Aを、異常と検出してもよい。また、例えば、センサ異常検出部30Fは、センサ10Aごとに、正常とする範囲の正常値を予め設定する。そして、センサ異常検出部30Fは、各センサ10Aからの出力値が、対応する正常値の範囲外である場合、異常値を出力する状態であると検出してもよい。
具体的には、例えば、カメラ10Eから得られた撮影画像に、閾値の回数以上、同じ測定結果を示す画素領域が含まれ、且つ、該画素領域が閾値以上の面積であったと仮定する。この場合、センサ異常検出部30Fは、該撮影画像を撮影したカメラ10Eの異常を検出する。
また、例えば、LIDAR10Fから得られたLIDAR情報に、閾値の回数以上、同じ距離を示す領域が含まれ、且つ、該領域が閾値以上の面積であったと仮定する。この場合、センサ異常検出部30Fは、該LIDAR情報を測定したLIDAR10Fの故障を検出する。
なお、センサ異常検出部30Fは、他の方法を用いて、センサ10Aの異常を検出してもよい。例えば、センサ異常検出部30Fは、センサ10Aの管理するレジスタを読み込むことで、センサ10Aの異常を検出してもよい。
そして、センサ異常検出部30Fは、異常を検出した場合、異常を検出したセンサ10Aと、該センサ10Aの異常を示す情報と、をセンサ異常情報として導出する。
次に、周辺状況認識部30Gについて説明する。周辺状況認識部30Gは、センサ10Aから取得部30Aを介して受付けた出力情報を用いて、導出情報として、周辺状況情報を導出する。
周辺状況情報は、出力情報から導出される導出情報であって、移動体10の周辺状況を示す情報である。周辺状況情報は、センサ10Aでセンシングされた出力情報そのものでは無く、出力情報に何等かの処理を行うことによって導出された情報である。
周辺状況情報は、矛盾情報、ドライバ状態情報、周辺状況解析結果情報、の少なくとも1つを含む。
矛盾情報は、複数のセンサ10Aの各々から出力された出力情報が、互いに矛盾することを示す情報である。ドライバ状態情報は、移動体10のドライバの状態を示す情報である。
周辺状況解析結果情報は、出力情報の解析によって導出された、移動体10の周辺の解析結果を示す情報である。周辺状況解析結果情報は、例えば、移動体10の周辺に位置する、対象の有無、対象の種類、対象の存在確率、対象の占有率、などの解析結果を示す情報である。対象は、測定対象の物である。対象は、例えば、現在走行中の走行レーン、障害物、標識、走行可能領域、などである。また、周辺状況解析結果情報は、地図上における移動体10の位置を示す自己位置情報や、通信メッセージの解析結果情報を含んでいてもよい。本実施の形態では、周辺状況解析結果情報は、現在走行中の走行レーン、移動体10の周辺の障害物、標識、走行可能領域、自己位置情報、通信メッセージの解析結果情報、周辺状況情報、の少なくとも1つを含む。
なお、周辺状況解析結果情報は、移動体10の周辺の解析結果を示す情報であればよく、上記以外にも他の情報を含んでいてもよい。例えば、周辺状況解析結果情報は、道路形状(曲率、幅、車線数など)、道路構造(分岐、交差点など)、路面状況などの走行路に関する情報、他の移動体10に関する情報(例えば、位置、速度、移動体10の種類など)、交通渋滞情報、天候や気温などの気象に関する情報、などの少なくとも1つを更に含んでいてもよい。
周辺状況認識部30Gは、走行レーン検出部30Jと、障害物検出部30Kと、標識認識部30Lと、走行可能領域検出部30Mと、自己位置推定部30Nと、V2X通信情報解析部30Oと、ドライバ状態認識部30Pと、グリッドマップ生成部30Qと、を含む。
走行レーン検出部30Jは、センサ10Aから出力された出力情報を用いて、移動体10の現在走行中の走行レーンを検出する。例えば、走行レーン検出部30Jは、カメラ10Eから出力された撮影画像を画像解析し、道路に形成された白線やガードレールを特定することで、現在走行中の走行レーンを検出する。
そして、走行レーン検出部30Jは、検出した走行レーンを示す情報を、導出情報として、算出部30Cへ出力する。なお、走行レーン検出部30Jは、走行レーンを検出できなかった場合には、走行レーンの検出エラーを示す情報を、導出情報として、算出部30Cへ出力してもよい。
障害物検出部30Kは、センサ10Aから出力された出力情報を用いて、移動体10の周辺の障害物を検出する。
例えば、障害物検出部30Kは、カメラ10Eから出力された撮影画像を画像解析し、撮影画像に含まれる障害物(自動車、自転車、歩行者、ガードレール、建物など)を認識する。そして、障害物検出部30Kは、ステレオマッチングなどの公知の方法を用いて、移動体10から認識した障害物までの距離を算出することで、障害物を検出する。
また、障害物検出部30Kは、LIDAR10Fから出力されたLIDAR情報を用いて、公知の方法により、障害物を検出してもよい。
また、障害物検出部30Kは、複数のセンサ10A(例えば、カメラ10EとLIDAR10F)間で、移動体10から同じ方向に存在する対象までの距離が閾値以上異なることを検出したとする。この場合、障害物検出部30Kは、これらの異なる出力情報を示す複数のセンサ10Aの各々から出力された出力情報が、互いに矛盾することを示す矛盾情報を導出する。
そして、障害物検出部30Kは、障害物を示す情報や、矛盾情報を、導出情報として、算出部30Cへ出力する。なお、障害物検出部30Kは、障害物を検出できなかった場合や、異常な障害物を検出した場合には、これらの情報を、導出情報として、更に、算出部30Cへ出力してもよい。
標識認識部30Lは、センサ10Aから出力された出力情報を用いて、標識を認識する。例えば、標識認識部30Lは、カメラ10Eから出力された撮影画像を解析し、撮影画像に含まれる、標識を認識する。また、標識認識部30Lは、認識した標識によって示される交通規則を特定してもよい。
そして、標識認識部30Lは、検出した標識や交通規則を示す情報を、導出情報として、算出部30Cへ出力する。なお、標識認識部30Lは、標識を認識できなかった場合や、路面に記載された路面ルールなどを検出した場合には、これらの情報を、更に、導出情報として、算出部30Cへ出力してもよい。
走行可能領域検出部30Mは、センサ10Aから出力された出力情報を用いて、移動体10の周囲の走行可能な領域を検出する。例えば、走行可能領域検出部30Mは、カメラ10Eから出力された撮影画像を解析し、移動体10の走行可能な領域を検出する。例えば、走行可能領域検出部30Mは、DNN(Deep Neural Network)などを用いて、撮影画像の画素ごとに走行可能な領域を検出する。
具体的には、走行可能領域検出部30Mは、DNNにおける、J.Long,et.al,“Fully Convolutional Networks for Semantic Segmentation”,CVPR2015やV.Badrinarayanan,et.al,“SegNet:A Deep Convolutional Encoder−Decoder Architecture for Robust Semantic Pixel−Wise Labelling”などの方式を用いることで、画素毎に走行可能な領域を検出する。
そして、走行可能領域検出部30Mは、検出した走行可能領域を示す情報を、導出情報として、算出部30Cへ出力する。なお、走行可能領域検出部30Mは、走行可能領域を検出できなかった場合や、道路を走行する状況としては異常な状況を検出した場合には、これらを示す情報を、導出情報として、更に、算出部30Cへ出力してもよい。
自己位置推定部30Nは、地図上における移動体10の位置(自己位置情報)を推定する。例えば、自己位置推定部30Nは、V2Xモジュール10Dで外部から受信した地図情報の地図を用いる。そして、自己位置推定部30Nは、地図上における、GNSSモジュール10Pから取得した位置情報によって示される位置を、移動体10の位置として推定する。このとき、自己位置推定部30Nは、該地図に記載されている車線や信号機等の交通インフラの位置情報と、走行レーン検出部30Jで検出された走行レーンの位置と、標識認識部30Lで認識した標識の位置と、を用いて、地図上における移動体10の位置を示す、自己位置情報を正確に推定する。
なお、自己位置推定部30Nは、移動体10の速度情報を併せて推定してもよい。例えば、自己位置推定部30Nは、カメラ10EやLIDAR10Fから取得した出力情報を用いて、移動体10の現在の速度を示す速度情報を導出してもよい。
そして、自己位置推定部30Nは、推定した自己位置情報を、導出情報として、算出部30Cへ出力する。なお、自己位置推定部30Nは、自己位置情報を推定できなかった場合には、推定エラーを示す情報を、導出情報として、更に、算出部30Cへ出力してもよい。
V2X通信情報解析部30Oは、出力情報の内、通信メッセージを解析する。V2X通信情報解析部30Oは、V2Xモジュール10Dから取得した通信メッセージを解析する。例えば、V2X通信情報解析部30Oは、通信メッセージを解析することで、該通信メッセージの送信元の他の装置の、位置情報、大きさ情報、動き情報(速度、向き、進行方向の加速度、横方向の加速度、ヨー角度など)、運転状態(ブレーキ、アクセル、ステアリングの操作量、変速機の状態、補助ブレーキの状態、ABSの状態など)などを解析する。また、V2X通信情報解析部30Oは、通信メッセージを解析することで、移動体10の周辺の信号機の状態(現在の信号機の色など)や、移動体10の周辺の標識に関する情報(制限速度など)を解析する。
これによって、V2X通信情報解析部30Oは、通信メッセージの解析結果情報を導出する。そして、V2X通信情報解析部30Oは、通信メッセージの解析結果情報を、導出情報として、算出部30Cへ出力する。
すなわち、走行レーン検出部30J、障害物検出部30K、標識認識部30L、走行可能領域検出部30M、自己位置推定部30N、およびV2X通信情報解析部30Oによって、矛盾情報、および、周辺状況解析結果情報、が導出される。
次に、ドライバ状態認識部30Pについて説明する。ドライバ状態認識部30Pは、センサ10Aから受付けた出力情報を用いて、ドライバ状態情報を導出する。ドライバ状態情報は、移動体10のドライバの状態を示す情報である。
例えば、移動体10を運転するドライバの顔を撮影するカメラ10Eを移動体10に搭載する。そして、ドライバ状態認識部30Pは、該カメラ10Eで撮影された撮影画像に含まれる顔を解析することで、移動体10のドライバの状態を示すドライバ状態情報を導出する。この解析には、公知の顔解析技術を用いればよい。例えば、ドライバ状態情報は、ドライバが瞼を閾値以上の時間閉じていることを示す情報、閾値以上の時間、ドライバが視線を進行方向以外へ向けている時間を示す情報、ドライバが不在であることを示す情報、ドライバの体調を示す情報、ドライバの覚醒度を示す情報、ドライバの視線方向を示す情報、などである。
そして、ドライバ状態認識部30Pは、ドライバの状態を示す情報を、導出情報として、算出部30Cへ出力する。
グリッドマップ生成部30Qは、周辺状況認識部30Gに含まれる他の各機能部で導出された導出情報をまとめることで、周辺状況情報を生成する。
図4および図5は、周辺状況情報42の一例を示す模式図である。周辺状況情報42は、走行レーン検出部30J、障害物検出部30K、標識認識部30L、走行可能領域検出部30M、自己位置推定部30N、V2X通信情報解析部30O、およびドライバ状態認識部30Pで導出された導出情報(周辺状況情報(矛盾情報、ドライバ状態情報、周辺状況解析結果情報(現在走行中の走行レーン、障害物、標識、走行可能領域、地図上における移動体10の位置を示す自己位置情報、通信メッセージの解析結果情報)))を、同じセンシングのタイミングごとに纏めて示した、情報である。
図4は、周辺状況情報42を、グリッドマップで示した周辺状況情報44の一例である。
周辺状況情報44は、移動体10の周辺の空間を格子状に区切ることで、複数のグリッドGに分割し、各グリッドGに、各グリッドGに対応する位置の周辺状況情報44に関する情報を規定したものである。グリッドGで表した周辺状況情報44は、OGM(Occupancy Grid Map)と称される場合もある。
例えば、図4に示す例では、周辺状況情報44は、移動体10の周辺の空間Sを複数のグリッドGに分割した構成である。周辺状況情報44は、ローカルマップと称される場合もある。
例えば、グリッドマップ生成部30Qは、周辺状況情報44における、自己位置推定部30Nによって推定された自己位置に対応するグリッドGである領域42Aに、移動体10の位置情報を規定する。また、グリッドマップ生成部30Qは、周辺状況情報44における、走行レーン検出部30Jによって検出された走行レーンに対応する領域42Bに、走行レーンを示す情報を規定する。また、グリッドマップ生成部30Qは、周辺状況情報44における、障害物検出部30Kによって検出された障害物に対応する領域42Dに、障害物を示す情報を規定する。また、グリッドマップ生成部30Qは、周辺状況情報44における、V2X通信情報解析部30Oによって解析された他の移動体等に対応する領域42Eに、他の移動体を示す情報を規定する。また、グリッドマップ生成部30Qは、周辺状況情報44における、走行可能領域検出部30Mによって検出された走行可能領域に対応する領域42Cに、走行可能領域であることを示す情報を規定する。
また、更に、グリッドマップ生成部30Qは、移動体10の周辺の障害物の存在確率を示す情報を、各グリッドGに割当てた、周辺状況情報44を生成してもよい。図4に示す例では、障害物の存在確率の高いグリッドGほど、濃い色で示した。なお、周辺状況情報44は、障害物の存在確率を、グリッドGごとに数値で表したものであってもよい。
このようにして、グリッドマップ生成部30Qは、周辺状況情報44を生成する。
なお、周辺状況情報42のデータ構成は、図4に示すグリッドマップの形式の周辺状況情報44に限定されない。例えば、周辺状況情報42のデータ構成は、図5に示す構成の周辺状況情報46であってもよい。周辺状況情報46は、移動体10の周辺の対象物ごとに、位置情報や速度情報などを対応付けて表した、データ構成である。
そして、グリッドマップ生成部30Qは、周辺状況情報42(周辺状況情報44、周辺状況情報46)を、導出情報として、算出部30Cへ出力する。
なお、各機能部(走行レーン検出部30J、障害物検出部30K、標識認識部30L、走行可能領域検出部30M、自己位置推定部30N、V2X通信情報解析部30O)から受け付けた、同じ位置のグリッドGに対する導出情報に矛盾が生じる場合がある。例えば、走行レーン検出部30Jで検出された走行レーンと、走行可能領域検出部30Mで検出した走行可能領域と、が閾値以上の面積、非重複である場合、などである。このような場合には、グリッドマップ生成部30Qは、この矛盾を示す情報についても、導出結果として、算出部30Cへ出力する。
図3に戻り、説明を続ける。次に、経路生成部30Hについて説明する。経路生成部30Hは、移動体10の走行予定経路に関する情報を、導出情報として生成する。経路生成部30Hは、例えば、公知のReference Path方式などを用いて、走行予定経路に関する情報を生成する。
本実施の形態では、経路生成部30Hは、走行予定経路生成部30Rと、走行方針・難易度決定部30Sと、推奨レーン生成部30Tと、を含む。走行予定経路生成部30R、走行方針・難易度決定部30S、および推奨レーン生成部30Tは、それぞれ、ハイレベルプランナ、ミドルレベルプランナ、ローレベルプランナと称される場合がある。
走行予定経路生成部30Rは、取得部30Aを介してセンサ10Aから取得した出力情報を用いて、移動体10の走行予定経路情報を生成する。走行予定経路情報は、移動体10の走行予定の経路を示す情報である。
例えば、走行予定経路生成部30Rは、グリッドマップ生成部30Qで生成された周辺状況情報44(図4参照)を用いて、移動体10が目的地に到るまでに走行する予定経路を示す、走行予定経路情報を生成する。なお、走行予定経路生成部30Rは、公知の方法を用いて、移動体10の現在位置から目的地までの走行予定経路情報を生成してもよい。
走行方針・難易度決定部30Sは、走行方針情報、および、走行難易度情報を生成する。走行方針情報は、走行予定経路情報によって示される走行予定経路を走行するときの、走行方針を示す情報である。走行難易度情報は、走行予定経路情報によって示される走行予定経路の、走行難易度を示す情報である。
走行方針・難易度決定部30Sは、判定基準に対応する、走行方針および走行難易度を予め規定する。例えば、走行方針・難易度決定部30Sは、基準管理テーブルを予め記憶する。
図6は、基準管理テーブル40の一例を示す模式図である。基準管理テーブル40は、判定基準情報と、走行方針情報と、走行難易度情報と、を対応づけたものである。
判定基準情報は、走行予定経路情報によって示される走行予定経路に対する、走行方針情報および走行難易度情報の、判定基準を示す情報である。走行方針・難易度決定部30Sは、予め基準管理テーブル40を生成し、記憶しておけばよい。また、基準管理テーブル40は、適宜、変更可能としてもよい。なお、走行難易度情報によって示される走行難易度の値が大きいほど、より走行し難い事を示す。
走行方針・難易度決定部30Sは、走行予定経路生成部30Rによって生成された走行予定経路情報によって示される走行予定経路に対応する、基準管理テーブル40に示される判定基準情報を特定する。そして、走行方針・難易度決定部30Sは、基準管理テーブル40における、特定した判定基準情報に対応する、走行方針情報および走行難易度情報を読取る。これによって、走行方針・難易度決定部30Sは、走行予定経路生成部30Rで生成された走行予定経路情報に対する、走行方針情報および走行難易度情報を決定する。
なお、走行方針・難易度決定部30Sは、基準管理テーブル40を用いて走行方針情報および走行難易度情報を決定する方式に限定されない。例えば、走行方針・難易度決定部30Sは、DNN(Deep Neural Network)の仕組みを用いて、現在の交通シチュエーションを認識し、認識結果に応じて、走行方針情報および走行難易度情報を決定してもよい。
推奨レーン生成部30Tは、推奨レーン情報を生成する。推奨レーン情報は、走行予定経路情報によって示される走行予定経路について、走行レーン(車線)、右折レーン、左折レーン、などの詳細レーンを示す情報である。
詳細には、推奨レーン生成部30Tは、走行予定経路生成部30Rで生成した走行予定経路情報によって示される走行予定経路について、走行方針・難易度決定部30Sで決定した走行方針情報および走行難易度情報を考慮し、全ての障害物との衝突を回避するように、推奨レーン情報を生成する。このとき、推奨レーン生成部30Tは、安全度や快適度を更に考慮した、推奨レーン情報を生成してもよい。安全度は、移動体10と障害物との距離や、移動体10の速度などから算出すればよい。快適度は、移動体10の加速度から算出すればよい。
図3に戻り説明を続ける。駆動量生成部30Iは、導出情報として、移動体10の駆動量を生成する。移動体10の駆動量は、移動体10の駆動部10Mを制御するための情報である。移動体10の駆動量は、具体的には、ステアリング量、ブレーキ量、アクセル量、などである。
本実施の形態では、駆動量生成部30Iは、走行予定経路生成部30Rで生成された走行予定経路情報における、推奨レーン生成部30Tで生成された推奨レーン情報によって示される推奨レーンに沿って走行するための、駆動量(ステアリング量、ブレーキ量、アクセル量)を生成する。
このようにして、導出部30Bに含まれる各機能部は、センサ10Aの出力情報から、導出情報を導出する。すなわち、本実施の形態では、導出部30Bは、センサ10Aの出力情報から、センサ異常情報、矛盾情報、ドライバ状態情報、走行予定経路情報、走行方針情報、走行難易度情報、推奨レーン情報、周辺状況解析結果情報、移動体10の駆動量、の少なくとも1つを含む、導出情報を導出する。また、本実施の形態では、周辺状況解析結果情報は、現在走行中の走行レーン、移動体10の周辺の障害物、標識、走行可能領域、自己位置情報、速度情報、通信メッセージの解析結果情報、周辺状況情報42、の少なくとも1つを含む。
次に、算出部30Cについて説明する。
算出部30Cは、導出情報に応じた、信頼度を算出する。信頼度は、導出情報に対する信頼の度合いを示す。
例えば、算出部30Cは、導出情報が、移動体10の自動走行に支障を生じさせる状態を示す情報であるほど、該導出情報に対して、低い信頼度を算出する。なお、“低い信頼度”とは、予め定めた基準の信頼度より低いことを意味する。
自動走行に支障を生じさせる状態、とは、例えば、事故の生じる確率が高い状態である。例えば、自動走行に支障を生じさせる状態とは、移動体10からの距離が閾値以下の範囲に障害物がある状態である。また、例えば、自動走行に支障を生じさせる状態とは、移動体10が自動走行する経路の閾値以下の範囲に、障害物が存在する状態である。自動走行に支障が生じさせることを示す状態のレベルは、導出情報の内容に応じて予め設定すればよい。そして、算出部30Cは、導出情報の内容に対応する、自動走行に支障が生じさせることを示す状態のレベルが高いほど、該導出情報に対して、低い信頼度を算出すればよい。
自動走行に支障が生じさせることを示す状態のレベルは、例えば、移動体10と障害物との距離が近いほど、進行方向に存在する障害物との距離が近いほど、または、閾値以下の距離に存在する障害物の数が多いほど、高いレベルとなる。
また、例えば、算出部30Cは、導出情報が異常な状態を示す情報であるほど、低い信頼度を算出する。異常な状態とは、センサ10Aの異常や、通常状態として予め定めた状態とは異なる状態を示す。例えば、異常な状態は、センサ10Aから出力された出力情報や、出力情報から導出された導出情報が、センサ10Aの異常を示す場合である。また、例えば、異常な状態は、移動体10のドライバの状態を示すドライバ状態情報が、ドライバの運転困難な状態を示す場合である。異常な状態のレベルは、導出情報内容に応じて、予め設定すればよい。そして、算出部30Cは、導出情報の内容に対応する、異常な状態のレベルが高いほど、該導出情報に対して、低い信頼度を算出すればよい。
異常な状態のレベルは、例えば、センサ10Aからの出力情報が得られないほど、または、センサ10Aからの出力情報の少なくとも一部が異常な情報であるほど、高いレベルとなる。
センサ10Aからの出力情報の少なくとも一部が異常な情報、とは、カラーの撮影画像の一部が常に単色になる事を示す情報や、LIDAR10Fによる出力情報における特定方向の距離情報が常に一定となる事を示す情報や、ウォッチドックの検出エラー、などである。また、センサ10Aからの出力情報の少なくとも一部が異常な情報、とは、カラー撮影画像における白色領域(白トビした領域)が閾値以上であることを示す情報や、黒色領域が閾値以上であることを示す情報や、LIDAR10Fが対象を検出しなかったことを示す情報、などである。
なお、算出部30Cは、導出情報と、移動体10の運転モードと、に応じて、信頼度を算出してもよい。運転モードとは、移動体10の自動運転のレベルを示す。例えば、日本政府や米国運輸省道路交通安全局(NHTSA)では自動運転のレベルを、レベル0〜レベル4の4段階で示している。レベル0は、ドライバが常に全ての制御系統の操作を行う。このため、レベル0は、非自動運転のモードであるともいえる。そして、自動運転のレベルは、レベル1〜レベル4に向かって、段階的に、よりドライバの操作を介さない完全自動化へ推移する。
例えば、算出部30Cは、移動体10の運転モードを、駆動制御部10Iから取得する。そして、算出部30Cは、導出情報から算出した記録レベルを、運転モードによって示される自動運転のレベルが高いほど、更に高い記録レベルとなるように、補正する。これによって、算出部30Cは、導出情報と、移動体10の運転モードと、に応じて、信頼度を算出してもよい。
また、上述したように、レベル0は、非自動運転のモードである。このため、レベル0である非自動運転のモードと、レベル0以外の他のレベルである自動運転モード(レベル1〜レベル4)と、の切替え時には、算出部30Cは、導出情報から算出した記録レベルを、最も高い記録レベルとなるように補正してもよい。この補正により、自動運転モードと非自動運転モードの切り替え時に事故が生じた際に、自動車製造者側とドライバ側のどちらに事故の責任の所在があるか、より明確に解析できるだけの履歴情報を得ることができる。
このように、算出部30Cは、上記の、信頼度の算出条件に沿って、導出情報の信頼度を算出する。信頼度の算出条件とは、上述した、導出情報が移動体10の自動走行に支障を生じさせることを示す情報であるほど、または、異常な状態を示す情報であるほど、低い信頼度の算出、あるいは、導出情報および移動体10の運転モードに応じた信頼度の算出、である。
なお、算出部30Cは、導出部30Bで導出された複数の導出情報に対して、同じ記録レベルを算出してもよい。すなわち、算出部30Cは、導出部30Bで導出された複数の導出情報に対して、1つの記録レベルを算出してもよい。
また、算出部30Cは、導出部30Bで導出された複数の導出情報のそれぞれごとに、各導出情報に応じた記録レベルを算出してもよい。すなわち、導出部30Bで導出される導出情報は、項目に応じた、複数の項目導出情報を含む。項目とは、導出情報の種類を示す。
ここで、上述したように、本実施の形態では、導出部30Bは、センサ10Aの出力情報から、センサ異常情報、矛盾情報、ドライバ状態情報、走行予定経路情報、走行方針情報、走行難易度情報、推奨レーン情報、周辺状況解析結果情報、移動体10の駆動量、の少なくとも1つを含む、導出情報を導出する。また、本実施の形態では、周辺状況解析結果情報は、現在走行中の走行レーン、移動体10の周辺の障害物、標識、走行可能領域、自己位置情報、速度情報、通信メッセージの解析結果情報、周辺状況情報42、の少なくとも1つを含む。
このため、項目導出情報は、具体的には、センサ異常情報、矛盾情報、ドライバ状態情報、走行予定経路情報、走行方針情報、走行難易度情報、推奨レーン情報、移動体10の駆動量、現在走行中の走行レーン、移動体10の周辺の障害物、標識、走行可能領域、自己位置情報、通信メッセージの解析結果情報、および、周辺状況情報42、の各々を示す。
そして、算出部30Cは、項目導出情報ごとに、項目導出情報の信頼度を算出する。
算出部30Cは、上記の信頼度の算出条件に沿って、項目導出情報ごとに、項目導出情報の信頼度を算出すればよい。すなわち、例えば、算出部30Cは、項目導出情報が、移動体10の自動走行に支障を生じさせることを示す情報であるほど、または、異常な状態を示す情報であるほど、該項目導出情報に対して、低い信頼度を算出する。また、算出部30Cは、項目導出情報および移動体10の運転モードに応じて、該項目導出情報に対する信頼度を算出する。
項目導出情報に対する信頼度の算出について、具体的な例を挙げて説明する。
例えば、算出部30Cは、走行レーン検出部30Jで検出された走行レーンと、移動体10の自己位置情報によって示される自己位置と、の距離が近いほど、該走行レーンを示す情報に対して、低い信頼度を算出する。
また、算出部30Cは、障害物検出部30Kで検出された障害物との距離が近いほど、または、障害物の種類が特定出来ない確率が高いほど、該障害物の検出結果を示す情報に対して、低い信頼度を算出する。
また、算出部30Cは、標識認識部30Lで認識された標識、および、標識によって示される交通規則が、注意警告を示す情報であるほど、低い信頼度を算出する。例えば、算出部30Cは、注意警告や路肩注意などを示す標識である場合、該標識を示す情報に対して、低い信頼度を算出する。また、算出部30Cは、移動体10が交差点を走行中であるときに、標識認識部30Lで信号色の変化が認識された場合についても、該標識を示す情報に対して、低い信頼度を算出する。
また、算出部30Cは、走行可能領域検出部30Mで検出された走行可能領域に対して、移動体10の自己位置情報によって示される自己位置が近いほど、低い信頼度を算出する。
また、算出部30Cは、自己位置情報を推定するための地図情報が存在しない場合には、自己位置推定部30Nによって導出される自己位置情報に対して、低い信頼度を算出する。
また、算出部30Cは、V2X通信情報解析部30Oによる通信メッセージの解析結果情報が、事故などの走行支障の生じる可能性の高い情報であるほど、該通信メッセージに対して、低い信頼度を算出する。
また、算出部30Cは、V2X通信情報解析部30Oによる通信メッセージの解析結果情報が、過去の事故多発ポイントに近づいたことを示す情報であるほど、該通信メッセージに対して、低い信頼度を算出する。
また、例えば、算出部30Cは、通信メッセージの解析結果情報が、不正パケットを示す情報など、セキュリティの危険性の高い情報であるほど、該通信メッセージに対して、低い信頼度を算出する。
また、例えば、算出部30Cは、ドライバ状態情報が、異常な状態を示す情報であるほど、該ドライバ状態情報に対して、低い信頼度を算出する。また、例えば、算出部30Cは、走行予定経路情報によって示される走行予定経路が障害物と閾値以内の距離となる領域を含む場合、低い信頼度を算出する。
また、例えば、算出部30Cは、走行難易度情報が閾値以上の高い難易度を示すほど、該走行難易度情報に対して、低い信頼度を算出する。また、例えば、算出部30Cは、推奨レーン情報によって示される推奨レーンが障害物と閾値以内の距離となる領域を含む場合、該推奨レーン情報に対して、低い信頼度を算出する。
また、例えば、算出部30Cは、センサ異常情報が異常な値を示すほど、該センサ異常情報に対して、低い信頼度を算出する。
また、算出部30Cは、矛盾情報に対して、低い信頼度を算出する。また、算出部30Cは、矛盾情報によって示される矛盾が大きいほど、より低い信頼度を算出する。
具体的には、移動体10の周辺の同じ方向または位置について、LIDAR10Fからの出力情報では障害物が検出されなかったが、カメラ10Eからの出力情報では障害物が検出される場合がある。また、複数のカメラ10Eの各々から得られた撮影画像に、外界における同じ撮影領域に対して、異なる対象が撮影されている場合がある。また、移動体10の周辺の同じ方向または位置について、超音波センサ10Hからの出力情報と、LIDAR10Fやカメラ10Eの出力情報と、に矛盾が生じる場合がある。また、走行レーン検出部30Jが検出した走行レーンと、走行可能領域検出部30Mが検出した走行可能領域と、に閾値以上のずれが生じている場合がある。また、V2X通信情報解析部30Oで得られた通信メッセージの解析結果情報に示される障害物と、障害物検出部30Kで検出した障害物と、が不一致となる場合がある。
このような場合、導出部30Bによって、矛盾情報が導出情報として導出される。算出部30Cは、このような矛盾情報に対して、低い信頼度を算出する。
なお、算出部30Cは、予め基準となる基準信頼度を設定し、項目導出情報に応じて、該基準信頼度に所定の変更値を加算または減算することで、該項目導出情報に対する信頼度を算出してもよい。
また、算出部30Cは、項目導出情報の示す内容に対応する、信頼度の変更値を予め設定し、該設定した変更値に応じて、信頼度を算出してもよい。
この場合、算出部30Cは、項目導出情報と、信頼度の変更値と、を予め対応づけて記憶する。算出部30Cは、信頼度の変更値として、上記の信頼度の算出条件に沿った値を予め設定すればよい。
図7は、信頼性対応DB50の一例を示す模式図である。信頼性対応DB50は、出力情報と、導出情報と、に対応する、信頼度の変更値を規定したデータベースである。図7には、信頼度の変更値を、プラスの値またはマイナスの値で示した。マイナスの変更値は、信頼度が低くなるように変更することを示す。プラスの変更値は、信頼度が高くなるように変更することを示す。なお、信頼性対応DB50のデータ構成は、データベースに限定されない。
例えば、算出部30Cは、信頼性対応DB50を予め記憶する。そして、算出部30Cは、項目導出情報に対応する信頼度の変更値を信頼性対応DB50から読取る。そして、算出部30Cは、読取った信頼度の変更値を基準信頼度に加算することで、該項目導出情報に対応する信頼度を算出すればよい。
図3に戻り、説明を続ける。次に、設定部30Dについて説明する。
設定部30Dは、センサ10Aの出力情報から導出された導出情報の信頼度に応じて、履歴情報の記録レベルを設定する。
履歴情報とは、センサ10Aの出力情報、および、導出情報、の少なくとも一方を含む。
記録レベルとは、履歴情報を記憶装置24へ記録するときのレベルを示す。また、記録レベルは、単位時間あたりに記録されるデータ量を示す。このため、記録レベルが高いほど、単位時間あたりに記憶装置24へ記録される、導出情報のデータ量が多くなる。また、記録レベルが低いほど、単位時間あたりに記憶装置24へ記録される、導出情報のデータ量が少なくなる。
本実施の形態では、記録レベルは、記録対象か否かを示す記録対象情報、記録詳細度、記録間隔、記憶期間、の少なくとも1つによって表される。
記録詳細度とは、対応する導出情報(または項目導出情報)を記憶装置24へ記録するときの、記録内容の詳細度を示す。記録詳細度は、例えば、解像度や、データ量で表される。
記録間隔とは、対応する導出情報(または項目導出情報)を記憶装置24へ記録するときの、記録間隔を示す。記録間隔は、記録間隔を時間で表したものであってもよいし、基準の記録間隔(記録間隔“中”)に対して、長い、または、短い、を示す情報で表したものであってもよい。
記憶期間とは、対応する導出情報(または項目導出情報)を記憶装置24へ記録してから削除するまでの期間を示す。
例えば、設定部30Dは、算出部30Cから、導出情報に対する信頼度を取得する。そして、設定部30Dは、信頼度が低いほど、高い記録レベルを設定する。すなわち、設定部30Dは、信頼度が低いほど、記録対象であることを示す記録対象情報、より高い記録詳細度、より短い記録間隔、および、より長い記憶期間、の少なくとも1つを満たすように、記録レベルを設定する。
本実施の形態では、設定部30Dは、複数の項目の各々に対応する項目導出情報ごとに、項目導出情報の信頼度に応じた記録レベルを設定する。
例えば、設定部30Dは、信頼度に対応する記録レベルを予め記憶する。図8は、記録レベル対応DB52のデータ構成の一例を示す模式図である。記録レベル対応DB52は、信頼度と、記録レベルと、を対応づけたものである。記録レベル対応DB52には、予め、信頼度が高いほど、低い記録レベルを示すように、信頼度に対する記録レベルを予め登録すればよい。
そして、設定部30Dは、算出部30Cにおいて、項目導出情報ごとに算出された信頼度について、対応する記録レベルを記録レベル対応DB52から読取る。これによって、設定部30Dは、項目導出情報ごとに、記録レベルを設定する。
なお、設定部30Dは、信頼度から記録レベルを導出するための関数を予め設定し、該関数を用いて、記録レベルを設定してもよい。
また、設定部30Dは、項目導出情報ごとに、現在の信頼度と、現在の記録レベルと、を対応づけて記憶しておいてもよい。そして、設定部30Dは、新たに記録レベルを設定するごとに、新たに設定した記録レベルと、該記録レベルに対応する信頼度と、を項目導出情報に対応づけて記憶してもよい。これによって、設定部30Dは、項目導出情報ごとに、“現在の信頼度”および“現在の記録レベル”を上書きして記憶してもよい。
上述のようにして、設定部30Dは、項目導出情報に対して記録レベルを設定する。
なお、設定部30Dは、項目導出情報の導出に用いた出力情報に対しても、記録レベルを設定してもよい。
この場合、設定部30Dは、項目導出情報に対して設定した記録レベルを、該項目導出情報の導出に用いた出力情報に対して設定すればよい。
また、設定部30Dは、項目導出情報に対して設定した記録レベルとは異なる記録レベルと、該項目導出情報の導出に用いた出力情報に対して、設定してもよい。この場合、例えば、設定部30Dは、項目導出情報の内容と、該項目導出情報の導出に用いた出力情報の種類や該出力情報の内容と、に応じて、該出力情報の記録レベルを設定してもよい。また、設定部30Dは、項目導出情報に対して設定した記録レベルを、該項目導出情報の内容、および、該項目導出情報の導出に用いた出力情報の内容と種類に応じて、補正した値を、該出力情報の記録レベルとして設定してもよい。
この場合、例えば、設定部30Dは、導出情報と、出力情報と、に対応する記録レベルを、予め設定すればよい。図9は、出力情報対応DB54の一例を示す模式図である。出力情報対応DB54は、導出情報と、出力情報と、に対応する記録レベルを規定したものである。
例えば、項目“推奨レーン情報”の項目導出情報“前進”の導出に用いた出力情報が、移動体10の前方をセンシングするセンサ10A(例えば、カメラ10E1、LIDAR10F1)と、後方をセンシングするセンサ10A(カメラ10E2、LIDAR10F2)であったとする。この場合、設定部30Dは、前方をセンシングするセンサ10A(カメラ10E1、LIDAR10F1)からの出力情報について、記録詳細度“高解像度”、記録間隔“短”を示す記録レベルを設定する。また、設定部30Dは、後方をセンシングするセンサ10A(カメラ10E2、LIDAR10F2)からの出力情報について、記録詳細度“低解像度”、記録間隔“長”を示す記録レベルを設定する。
また、例えば、項目“推奨レーン情報”の項目導出情報“後進”の導出に用いた出力情報が、移動体10の前方をセンシングするセンサ10A(例えば、カメラ10E1、LIDAR10F1)と、後方をセンシングするセンサ10A(カメラ10E2、LIDAR10F2)であったとする。この場合、設定部30Dは、前方をセンシングするセンサ10A(カメラ10E1、LIDAR10F1)からの出力情報について、記録詳細度“低解像度”、記録間隔“長”を示す記録レベルを設定する。また、設定部30Dは、後方をセンシングするセンサ10A(カメラ10E2、LIDAR10F2)からの出力情報について、記録詳細度“高解像度”、記録間隔“短”を示す記録レベルを設定する。
また、例えば、項目“推奨レーン情報”の項目導出情報“右折レーン”の導出に用いた出力情報が、移動体10の前方をセンシングするセンサ10A(例えば、カメラ10E1、LIDAR10F1)であったとする。この場合、設定部30Dは、前方をセンシングするセンサ10A(カメラ10E1、LIDAR10F1)からの出力情報について、記録詳細度“高解像度(右側領域)”、記録間隔“短”を示す記録レベルを設定する。なお、高解像度(右側領域)とは、センサ10Aから出力情報(例えば、撮影画像)における、画角の右側に相当する領域について、基準より高い解像度で記録することを意味する。
また、例えば、項目“推奨レーン情報”の項目導出情報“左折レーン”の導出に用いた出力情報が、移動体10の前方をセンシングするセンサ10A(例えば、カメラ10E1、LIDAR10F1)であったとする。この場合、設定部30Dは、前方をセンシングするセンサ10A(カメラ10E1、LIDAR10F1)からの出力情報について、記録詳細度“高解像度(左側領域)”、記録間隔“短”を示す記録レベルを設定する。なお、高解像度(左側領域)とは、センサ10Aから出力情報(例えば、撮影画像)における、画角の左側に相当する領域について、基準より高い解像度で記録することを意味する。
このように、設定部30Dは、各センサ10Aから得られる出力情報によって示される画角おける、特定の領域についてのみ、記録詳細度を高くまたは低くなるように、記録レベルを設定してもよい。
また、例えば、項目“走行レーン”の項目導出情報“高速道路”の導出に用いた出力情報が、移動体10の前方をセンシングするセンサ10A(例えば、カメラ10E1、LIDAR10F1)と、後方をセンシングするセンサ10A(カメラ10E2、LIDAR10F2)であったとする。この場合、設定部30Dは、前方をセンシングするセンサ10A(カメラ10E1、LIDAR10F1)からの出力情報について、記録詳細度“高解像度”、記録間隔“短”を示す記録レベルを設定する。また、設定部30Dは、後方をセンシングするセンサ10A(カメラ10E2、LIDAR10F2)からの出力情報について、記録詳細度“基準解像度”、記録間隔“中”を示す記録レベルを設定する。基準解像度は、高解像度より低く、且つ、低解像度より高い、解像度である。
また、例えば、項目“走行レーン”の項目導出情報“一般道”の導出に用いた出力情報が、移動体10の前方をセンシングするセンサ10A(例えば、カメラ10E1、LIDAR10F1)と、後方をセンシングするセンサ10A(カメラ10E2、LIDAR10F2)であったとする。この場合、設定部30Dは、前方をセンシングするセンサ10A(カメラ10E1、LIDAR10F1)と後方をセンシングするセンサ10A(カメラ10E2、LIDAR10F2)からの出力情報について、記録詳細度“閾値以下の距離の検知点のみ”、記録間隔“中”を示す記録レベルを設定する。記録詳細度“閾値以下の距離の検知点のみ”とは、出力情報(撮影画像やLIDAR情報)の内、センサ10Aからの距離が閾値以下の距離のセンシング結果のみを抽出して記録することを示す。
また、例えば、項目“速度情報”の項目導出情報“高速”の導出に用いた出力情報が、カメラ10EおよびLIDAR10Fであったと仮定する。この場合、設定部30Dは、これらのカメラ10EおよびLIDAR10Fからの出力情報について、記録詳細度“高解像度”、記録間隔“短”を示す記録レベルを設定する。
また、例えば、項目“速度情報”の項目導出情報“低速”の導出に用いた出力情報が、カメラ10EおよびLIDAR10Fであったと仮定する。この場合、設定部30Dは、これらのカメラ10EおよびLIDAR10Fからの出力情報について、記録詳細度“閾値以下の距離の検知点のみ”を設定する。
このように、設定部30Dは、項目導出情報の内容と、該項目導出情報の導出に用いた出力情報の種類や該出力情報の内容と、に応じて、該出力情報の記録レベルを設定してもよい。また、設定部30Dは、記録詳細度として、センサ10Aの測定範囲(例えば画角)内の特定の領域についてのみ、高解像度または低解像度とする設定を行ってもよい。
図3に戻り説明を続ける。次に、記録制御部30Eについて説明する。
記録制御部30Eは、設定部30Dで設定された記録レベルに応じて、履歴情報を記憶装置24へ記憶する制御を行う。
本実施の形態では、記録制御部30Eは、項目導出情報の信頼度に応じて設定された記録レベルに応じて、該項目導出情報、該項目導出情報および該項目導出情報の導出に用いた出力情報、または、該項目導出情報の導出に用いた出力情報を、記憶装置24へ記憶する制御を行う。
例えば、設定部30Dが、記録レベルとして、記録対象か否かを示す記録対象情報、記録詳細度、記録間隔、および、記憶期間、を設定したと仮定する。
この場合、記録制御部30Eは、設定された記録レベルに対応する項目導出情報について、記録レベルに基づいて、記録対象であるか否かを判断する。そして、記録制御部30Eは、記録対象である場合、記録レベルに示される記録詳細度の該項目導出情報を、該記録レベルに示される記録間隔で、記憶装置24へ記憶するように制御する。
また、記録制御部30Eは、記憶装置24へ記憶した項目導出情報について、該項目導出情報に設定された記録レベルに示される記憶期間を経過したときに、記憶装置24から削除する。
なお、記録制御部30Eは、項目導出情報の信頼度に応じて設定された記録レベルに応じて、出力情報を記憶装置24へ記憶する場合、以下の制御を行えばよい。記録制御部30Eは、設定された記録レベルに対応する項目導出情報の導出に用いた出力情報について、記録レベルに基づいて、記録対象であるか否かを判断する。そして、記録制御部30Eは、記録対象である場合、記録レベルに示される記録詳細度の該出力情報を、該記録レベルに示される記録間隔で、記憶装置24へ記憶するように制御する。
また、記録制御部30Eは、記憶装置24へ記憶した出力情報について、該出力情報から導出された項目導出情報に設定された、記録レベルに示される記憶期間を経過したときに、記憶装置24から削除する。
なお、図2に示すように、情報処理装置20が、複数の記憶装置24(例えば、記憶装置24A、記憶装置24B、記憶装置24Cなど)を含む場合がある。この場合、記録制御部30Eは、記録対象の項目導出情報および記録対象の出力情報を記憶する記憶装置24(例えば、記憶装置24A、記憶装置24B、または記憶装置24C)について、記録レベルに応じて、上記記憶制御を行えばよい。
次に、本実施の形態の情報処理装置20で実行する、情報処理の手順の一例を説明する。
図10は、本実施の形態の情報処理装置20で実行する、情報処理の手順の一例を示すフローチャートである。情報処理装置20の処理部30は、予め定めた時間ごとに、図10に示す手順を繰り返し実行する。例えば、処理部30は、センサ10Aのセンシング間隔の最小値以下の間隔で、図10に示す情報処理の手順を繰り返し実行する。
まず、取得部30Aがセンサ10Aから出力情報を取得する(ステップS100)。次に、導出部30Bが、ステップS100で取得した出力情報から、導出情報を導出する(ステップS102)。
次に、算出部30Cが、ステップS102で導出された導出情報に対する、信頼度を算出する(ステップS104)。上述したように、例えば、算出部30Cは、導出情報に含まれる項目導出情報の各々に対する、信頼度を算出する。
次に、設定部30Dが、ステップS104で算出された導出情報の信頼度に応じて、該導出情報の記録レベルを設定する(ステップS106)。上述したように、例えば、設定部30Dは、項目導出情報の信頼度に応じて、項目導出情報の記録レベルを設定する。
次に、記録制御部30Eが、ステップS106で設定された記録レベルに応じて、履歴情報を記憶装置24へ記録する、記録制御処理を行う(ステップS108)。ステップS108の処理の詳細は、後述する。そして、本ルーチンを終了する。
次に、図10のステップS108における記録制御処理について説明する。図11は、記録制御部30Eが実行する記憶制御処理の手順の一例を示す、フローチャートである。また、図11には、記録制御部30Eが、項目導出情報を記憶装置24へ記憶する場合の手順を示した。
記録制御部30Eは、導出部30Bで導出された項目導出情報の各々について、図11に示す記憶制御処理を実行する。詳細には、まず、記録制御部30Eは、項目導出情報が、記録対象であるか否かを判断する(ステップS200)。記録制御部30Eは、項目導出情報に設定された記録レベルに示される、記録対象か否かを示す情報を読取ることで、ステップS200の判断を行う。ステップS200で否定判断すると(ステップS200:No)、本ルーチンを終了する。ステップS200で肯定判断すると(ステップS200:Yes)、ステップS202へ進む。
ステップS202では、記録制御部30Eは、項目導出情報について、記憶装置24へ前回記録した記録時刻と、現在時刻との差分を計算する(ステップS202)。そして、記録制御部30Eは、計算した差分が、項目導出情報に設定された記録レベルに示される記録間隔以上であるか否かを判断する(ステップS204)。ステップS204で否定判断すると(ステップS204:No)、本ルーチンを終了する。ステップS204で肯定判断すると(ステップS204:Yes)、ステップS206へ進む。
ステップS206では、記録制御部30Eは、項目導出情報を、該項目導出情報に設定された記録レベルに示される記録詳細度で、記憶装置24へ記憶する(ステップS206)。そして、本ルーチンを終了する。
なお、記録制御部30Eは、所定時間毎に、割込み処理を実行してもよい。図12は、記録制御部30Eが実行する割込み処理の手順の一例を示す、フローチャートである。
記録制御部30Eは、導出部30Bで導出された項目導出情報の各々ごとに、図12に示す割込み処理を実行する。
まず、記録制御部30Eは、記憶装置24に記憶された項目導出情報について、項目導出情報に設定された記憶期間を経過したか否かを判断する(ステップS300)。ステップS300で否定判断すると(ステップS300:No)、本ルーチンを終了する。ステップS300で肯定判断すると(ステップS300:Yes)、ステップS302へ進む。
ステップS302では、記録制御部30Eは、ステップS300で肯定判断した項目導出情報を、記憶装置24から削除する(ステップS302)。これによって、記録制御部30Eは、記憶装置24に記録された項目導出情報の内、記録レベルにおける記憶期間を経過した項目導出情報を、記憶装置24から削除することができる。そして、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置20の設定部30Dは、センサ10Aの出力情報から導出された導出情報の信頼度に応じて、履歴情報の記録レベルを設定する。
従って、本実施の形態の情報処理装置20は、履歴情報の適切な記録を行うことができる。
本実施の形態の情報処理装置20は、特に、自動運転を行う移動体10に、好適に適用可能である。自動運転を行う移動体10では、自律走行を行うために、様々な導出情報の導出を行っている。本実施の形態の情報処理装置20では、センサ10Aからの出力情報ではなく、出力情報から導出された導出情報の信頼度に応じて、導出情報や出力情報など履歴情報の記録レベルを設定する。
このように、本実施の形態の情報処理装置20では、センサ10Aから直接得られる情報である出力情報ではなく、出力情報から導出された導出情報を用いて、履歴情報に対して記録レベルを設定することができる。
従って、本実施の形態の情報処理装置20は、履歴情報の適切な記録を行うことができる。
上記実施の形態の情報処理装置20は、CPUなどの制御装置と、ROM(Read Only Memory)やRAM(Random Access Memory)やHDD(ハードディスクドライブ)などの記憶装置と、各種機器とのインタフェースであるI/F部と、出力情報などの各種情報を出力する出力部と、ユーザによる操作を受付ける入力部と、各部を接続するバスとを備えており、通常のコンピュータを利用したハードウェア構成となっている。
上記実施の形態の情報処理装置20では、ECU22などのプロセッサが、ROMからプログラムをRAM上に読み出して実行することにより、上記各機能部がコンピュータ上で実現される。
なお、上記実施の形態の情報処理装置20で実行される上記各処理を実行するためのプログラムは、HDDなどに記憶されていてもよい。また、上記実施の形態の情報処理装置20で実行される上記各処理を実行するためのプログラムは、ROMに予め組み込まれて提供されていてもよい。
また、上記実施の形態の情報処理装置20で実行される上記処理を実行するためのプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、CD−R、メモリカード、DVD(Digital Versatile Disk)、フレキシブルディスク(FD)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されるようにしてもよい。また、上記実施の形態の情報処理装置20で実行される上記処理を実行するためのプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記実施の形態の情報処理装置20で実行される上記処理を実行するためのプログラムを、インターネットなどのネットワーク経由で提供または配布するようにしてもよい。
なお、上記には、本発明の実施の形態を説明したが、上記実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。この実施の形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。