(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-09
(45)【発行日】2024-01-17
(54)【発明の名称】運転評価装置、運転評価システム、車載装置、車外評価装置、および運転評価プログラム
(51)【国際特許分類】
G08G 1/00 20060101AFI20240110BHJP
G08G 1/09 20060101ALI20240110BHJP
G07C 5/00 20060101ALI20240110BHJP
G09B 19/00 20060101ALI20240110BHJP
G09B 19/16 20060101ALI20240110BHJP
【FI】
G08G1/00 D
G08G1/09 F
G07C5/00 Z
G09B19/00 H
G09B19/16
(21)【出願番号】P 2019207796
(22)【出願日】2019-11-18
【審査請求日】2022-10-13
(73)【特許権者】
【識別番号】000001247
【氏名又は名称】株式会社ジェイテクト
(74)【代理人】
【識別番号】100105957
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】沼崎 和也
【審査官】貞光 大樹
(56)【参考文献】
【文献】特開2011-34430(JP,A)
【文献】特開2015-114860(JP,A)
【文献】特開2018-18204(JP,A)
【文献】特開2018-124439(JP,A)
【文献】特開2017-151694(JP,A)
【文献】特開2019-197463(JP,A)
【文献】特開2015-184811(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 1/00 - 1/16
G07C 5/00 - 5/12
G09B 19/00
G09B 19/16
(57)【特許請求の範囲】
【請求項1】
記憶装置と、実行装置と、を備え、
前記記憶装置は、車両の挙動を検出する挙動センサの検出値および該検出値に対応する運転者による操作部材の操作状態に基づく評価用入力データを入力とし前記運転者の評価値を出力する写像であって且つ走行シーンごとに各別の写像である評価写像を規定する評価写像データが記憶されており、
前記実行装置は、
前記検出値の時系列データおよび当該時系列データに対応する前記操作状態を取得する取得処理と、
前記取得処理によって取得した時系列データに基づく分割用入力データを、前記分割用入力データを入力として前記時系列データを互いに異なる走行シーンに分割する写像であるシーン分割写像に入力して前記検出値および該検出値に対応する前記操作状態を前記走行シーンに分割するシーン分割処理と、
前記シーン分割処理によって分割された走行シーン毎に、前記取得処理によって取得した前記検出値および当該検出値に対応する前記操作状態に基づく前記評価用入力データを前記評価写像に入力して前記評価値を算出することによって、前記運転者の運転を評価する評価処理と、を実行
するように構成され、
前記評価写像データは、複数の評価指標毎に各別の前記評価写像を規定するデータであり、
前記評価写像は、該当する前記評価指標に関する前記評価値を出力するものであり、
前記評価処理は、前記シーン分割処理によって分割された各走行シーン毎に、前記評価用入力データを前記複数の評価指標のそれぞれに関する前記評価写像に入力して前記複数の評価指標のそれぞれに
該当する確率である前記評価値を算出する評価値算出処理と、前記評価値算出処理の算出結果に基づき、前記複数の評価指標のうち
前記評価値が最大値となる前記評価指標を特定する特定処理と、を含
んで且つ、前記運転者の運転が前記複数の評価指標のいずれに該当するかを評価する処理であり、
所定のハードウェアを操作することによって、前記特定処理の特定結果を前記評価処理による評価結果として運転者に通知する通知処理を実行す
る運転評価装置。
【請求項2】
前記記憶装置には、前記複数の評価指標のそれぞれにおける前記評価用入力データと当該評価指標に該当する理由とを対応付けたデータである対応付けデータが記憶されており、
前記特定処理は、前記複数の評価指標のいずれに合致するかを特定する指標特定処理に加えて、特定された前記評価指標に対応する前記評価用入力データと前記対応付けデータとに基づき、特定された前記評価指標に該当する理由を特定する理由特定処理を含み、
前記通知処理は、前記指標特定処理による特定結果に基づき、前記複数の評価指標のいずれに合致するかの評価結果に加えて、前記理由特定処理による当該評価指標に該当する理由を出力する処理を含む請求項
1記載の運転評価装置。
【請求項3】
第1の走行シーンに対応した前記評価写像への前記評価用入力データと、第2の走行シーンに対応した前記評価写像への前記評価用入力データとが、互いに異なる変数を含む請求項1
または2記載の運転評価装置。
【請求項4】
前記複数の走行シーンのうちの所定の走行シーンにおいて、第1の評価指標に対応した前記評価写像への前記評価用入力データと、第2の評価指標に対応した前記評価写像への前記評価用入力データとが、互いに異なる変数を含む請求項
1または2記載の運転評価装置。
【請求項5】
前記取得処理は、前記検出値の時系列データと前記操作状態の時系列データとを取得する処理であり、
前記評価処理は、前記取得処理によって取得した前記検出値の時系列データと前記操作状態の時系列データとの2つの時系列データの少なくとも1つについて、それらの分散、平均、最大値、最小値の4つのうちの少なくとも1つを算出する加工処理を含み、前記加工処理の出力を前記評価用入力データの少なくとも一部として前記評価写像に入力することによって前記評価値を算出する処理である請求項1~
4のいずれか1項に記載の運転評価装置。
【請求項6】
前記分割用入力データにその検出値が利用される前記挙動センサと、前記評価用入力データにその検出値が利用される前記挙動センサとには、互いに異なるものが含まれる請求項1~
5のいずれか1項に記載の運転評価装置。
【請求項7】
請求項
1または2記載の前記実行装置および前記記憶装置を備え、
前記実行装置は、前記車両に搭載される第1実行装置と、車載装置とは別の第2実行装置と、を備え、
前記第1実行装置は、前記取得処理と、前記取得処理によって取得した前記検出値の時系列データおよび前記操作状態を車載装置の外部に送信する取得データ送信処理と、前記評価処理による評価結果を受信する評価結果受信処理と、前記通知処理と、を実行し、
前記第2実行装置は、前記取得データ送信処理によって送信されたデータを受信する取得データ受信処理と、前記シーン分割処理と、前記評価処理と、前記評価処理の評価結果を送信する評価結果送信処理と、を実行する運転評価システム。
【請求項8】
請求項
1または2記載の前記実行装置および前記記憶装置を備え、
前記実行装置は、前記車両に搭載される第1実行装置と、車載装置とは別の第2実行装置と、を備え、
前記第1実行装置は、前記取得処理と、前記取得処理によって取得した前記検出値の時系列データおよび前記操作状態を車載装置の外部に送信する取得データ送信処理と、を実行し、
前記第2実行装置は、前記取得データ送信処理によって送信されたデータを受信する取得データ受信処理と、前記シーン分割処理と、前記評価処理と、前記通知処理と、を実行する運転評価システム。
【請求項9】
請求項
7または8記載の前記第1実行装置を備える車載装置。
【請求項10】
請求項
7または8記載の前記第2実行装置および前記記憶装置を備える車外評価装置。
【請求項11】
請求項
1または2記載の前記取得処理、前記シーン分割処理、前記評価処理、および前記通知処理をコンピュータに実行させる運転評価プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、運転評価装置、運転評価システム、車載装置、車外評価装置、および運転評価プログラムに関する。
【背景技術】
【0002】
たとえば下記特許文献1には、自車両と前方の車両との相対距離が所定の距離よりも短い区間を特定し、その区間内における車両内の各種センサの検出値に基づき、危険運転を分類する装置が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、一般に、運転者の運転性向に関する情報は、自車両と前方の車両との相対距離が所定の距離よりも短い区間に限らず、様々な走行シーンに現れると考えられる。そのため、危険運転のみならず、一般に、運転者の運転を評価するうえでは、様々な走行シーンにおける情報を活用可能と考えられることから、上記装置では、運転者を評価するうえで有益な情報を十分に活用できないおそれがある。
【課題を解決するための手段】
【0005】
以下、上記課題を解決するための手段およびその作用効果について記載する。
1.記憶装置と、実行装置と、を備え、前記記憶装置は、車両の挙動を検出する挙動センサの検出値および該検出値に対応する運転者による操作部材の操作状態に基づく評価用入力データを入力とし前記運転者の評価値を出力する写像であって且つ走行シーンごとに各別の写像である評価写像を規定する評価写像データが記憶されており、前記実行装置は、前記検出値の時系列データおよび当該時系列データに対応する前記操作状態を取得する取得処理と、前記取得処理によって取得した時系列データに基づく分割用入力データを、前記分割用入力データを入力として前記時系列データを互いに異なる走行シーンに分割する写像であるシーン分割写像に入力して前記検出値および該検出値に対応する前記操作状態を前記走行シーンに分割するシーン分割処理と、前記シーン分割処理によって分割された走行シーン毎に、前記取得処理によって取得した前記検出値および当該検出値に対応する前記操作状態に基づく前記評価用入力データを前記評価写像に入力して前記評価値を算出することによって、前記運転者の運転を評価する評価処理と、を実行する運転評価装置である。
【0006】
上記構成では、車両の走行に伴う様々な走行シーンを予め定められた複数の走行シーンに分割し、それら走行シーン毎に、評価値を算出する。そのため、様々な走行シーンにおける情報を有効活用して運転者の運転を評価することができる。
【0007】
2.前記評価写像データは、複数の評価指標毎に各別の前記評価写像を規定するデータであり、前記評価写像は、該当する前記評価指標に関する前記評価値を出力するものであり、前記評価処理は、前記シーン分割処理によって分割された各走行シーン毎に、前記評価用入力データを前記複数の評価指標のそれぞれに関する前記評価写像に入力して前記複数の評価指標のそれぞれに関する前記評価値を算出する評価値算出処理と、前記評価値算出処理の算出結果に基づき、前記複数の評価指標のうちのいずれに合致するかを特定する特定処理と、を含み、所定のハードウェアを操作することによって、前記特定処理の特定結果を前記評価処理による評価結果として運転者に通知する通知処理を実行する上記1記載の運転評価装置である。
【0008】
上記構成では、複数の評価指標のいずれであるかを特定することにより、単一の評価指標に対する評価値を算出するのみの場合と比較して、運転者の運転がどのようなものであるかをより詳細に表現することができる。
【0009】
3.前記記憶装置には、前記複数の評価指標のそれぞれにおける前記評価用入力データと当該評価指標に該当する理由とを対応付けたデータである対応付けデータが記憶されており、前記特定処理は、前記複数の評価指標のいずれに合致するかを特定する指標特定処理に加えて、特定された前記評価指標に対応する前記評価用入力データと前記対応付けデータとに基づき、特定された前記評価指標に該当する理由を特定する理由特定処理を含み、前記通知処理は、前記指標特定処理による特定結果に基づき、前記複数の評価指標のいずれに合致するかの評価結果に加えて、前記理由特定処理による当該評価指標に該当する理由を出力する処理を含む上記2記載の運転評価装置である。
【0010】
上記構成では、対応付けデータを記憶しておくことにより、運転者にどうしてその評価結果となったのかを通知することができる。
4.前記記憶装置には、前記評価用入力データと、前記評価値に該当する理由とを対応付けたデータである対応付けデータが記憶されており、前記評価処理は、前記評価用入力データを前記評価写像に入力して前記評価値を算出する評価値算出処理と、前記評価用入力データと前記対応付けデータとに基づき、前記評価値算出処理の算出結果の理由を特定する理由特定処理と、を含み、前記通知処理は、前記評価結果として、前記算出結果に基づく情報に加えて前記理由特定処理による前記理由を出力する処理を含む上記1記載の運転評価装置である。
【0011】
上記構成では、対応付けデータを記憶しておくことにより、運転者にどうしてその評価結果となったのかを通知することができる。
5.第1の走行シーンに対応した前記評価写像への前記評価用入力データと、第2の走行シーンに対応した前記評価写像への前記評価用入力データとが、互いに異なる変数を含む上記1~4のいずれか1つに記載の運転評価装置である。
【0012】
走行シーンによって、運転者の運転を評価するうえで重要な要素が相違する。そのため、仮に、全ての走行シーンにおいて評価写像の入力を同一とする場合には、入力の次元数が過度に大きくなるおそれがある。これに対し、上記構成では、互いに異なる走行シーン同士で評価写像の入力を必ずしも同じとしないことにより、入力の次元数を極力低減しつつも、評価の精度を維持することができる。
【0013】
6.前記複数の走行シーンのうちの所定の走行シーンにおいて、第1の評価指標に対応した前記評価写像への前記評価用入力データと、第2の評価指標に対応した前記評価写像への前記評価用入力データとが、互いに異なる変数を含む上記2または3記載の運転評価装置である。
【0014】
同一の走行シーンであっても、複数の評価指標同士で、特徴的な操作状態の種類等が異なることがある。そのため、仮に、所定の走行シーンにおいて、全ての評価指標の評価写像の入力を同一とする場合には、入力の次元数が過度に大きくなるおそれがある。これに対し、上記構成では、互いに異なる評価指標同士で評価写像の入力を必ずしも同じとしないことにより、入力の次元数を極力低減しつつも、評価の精度を維持することができる。
【0015】
7.前記取得処理は、前記検出値の時系列データと前記操作状態の時系列データとを取得する処理であり、前記評価処理は、前記取得処理によって取得した前記検出値の時系列データと前記操作状態の時系列データとの2つの時系列データの少なくとも1つについて、それらの分散、平均、最大値、最小値の4つのうちの少なくとも1つを算出する加工処理を含み、前記加工処理の出力を前記評価用入力データの少なくとも一部として前記評価写像に入力することによって前記評価値を算出する処理である上記1~6のいずれか1つに記載の運転評価装置である。
【0016】
1つのタイミングにおける検出値や操作状態に含まれる情報は、運転者の運転を評価するうえでは必ずしも十分ではなく、検出値の時系列データや操作状態の時系列データに含まれる情報を用いることにより、運転者の運転を適切に評価できることがある。しかし、評価写像に時系列データを入力する場合には、1つのタイミングにおける検出値や操作状態を入力する場合と比較すると、入力の次元数が大きくなる。そこで上記構成では、分散、平均、最大値、最小値の4つのうちの少なくとも1つを用いることにより、1つのタイミングにおける検出値や操作状態からは読み取ることができない情報を評価写像に入力しつつも、入力の次元数が大きくなることを抑制できる。
【0017】
8.前記分割用入力データにその検出値が利用される前記挙動センサと、前記評価用入力データにその検出値が利用される前記挙動センサとには、互いに異なるものが含まれる上記1~7のいずれか1つに記載の運転評価装置である。
【0018】
運転者の運転を高精度に評価したり、きめ細かく評価したりする場合には、評価用入力データに利用される挙動センサの数が多くなる傾向がある。そしてその場合に、それら挙動センサの検出値を全て分割用入力データに利用する場合には、情報が過度に多くなり、走行シーンが細分化されすぎるおそれがある。これに対し、上記構成では、分割用入力データにその検出値が利用される挙動センサと、評価用入力データにその検出値が利用される挙動センサとを必ずしも同一としないことにより、評価写像による評価精度を高めたり評価をきめ細かく行ったりしつつも、走行シーンへの分割が過度に細分化されることを抑制できる。
【0019】
9.上記2~4のいずれか1つに記載の前記実行装置および前記記憶装置を備え、前記実行装置は、前記車両に搭載される第1実行装置と、車載装置とは別の第2実行装置と、を備え、前記第1実行装置は、前記取得処理と、前記取得処理によって取得した前記検出値の時系列データおよび前記操作状態を車載装置の外部に送信する取得データ送信処理と、前記評価処理による評価結果を受信する評価結果受信処理と、前記通知処理と、を実行し、前記第2実行装置は、前記取得データ送信処理によって送信されたデータを受信する取得データ受信処理と、前記シーン分割処理と、前記評価処理と、前記評価処理の評価結果を送信する評価結果送信処理と、を実行する運転評価システムである。
【0020】
上記構成では、シーン分割処理および評価処理を第2実行装置が実行することにより、車両に搭載される第1実行装置の演算負荷を軽減できる。
10.上記2~4のいずれか1つに記載の前記実行装置および前記記憶装置を備え、前記実行装置は、前記車両に搭載される第1実行装置と、車載装置とは別の第2実行装置と、を備え、前記第1実行装置は、前記取得処理と、前記取得処理によって取得した前記検出値の時系列データおよび前記操作状態を車載装置の外部に送信する取得データ送信処理と、を実行し、前記第2実行装置は、前記取得データ送信処理によって送信されたデータを受信する取得データ受信処理と、前記シーン分割処理と、前記評価処理と、前記通知処理と、を実行する運転評価システムである。
【0021】
上記構成では、シーン分割処理および評価処理を第2実行装置が実行することにより、車両に搭載される第1実行装置の演算負荷を軽減できる。
11.上記9または10記載の前記第1実行装置を備える車載装置である。
【0022】
12.上記9または10記載の前記第2実行装置および前記記憶装置を備える車外評価装置である。
13.上記2~4のいずれか1つに記載の前記取得処理、前記シーン分割処理、前記評価処理、および前記通知処理をコンピュータに実行させる運転評価プログラムである。
【0023】
14.上記1~8のいずれか1つに記載の前記評価写像データを生成する方法であって、前記走行シーン毎に、所定の評価指標に合致する運転者と合致しない運転者とのそれぞれが前記車両を運転する際の前記検出値の時系列データおよび前記操作状態に基づく入力候補データを取得する入力候補データ取得処理と、前記入力候補データ取得処理によって取得された前記入力候補データを識別モデルへの入力とし、前記識別モデルの出力値と正しい値との差の大きさを正則化項の存在の下で最小化することによって、前記識別モデルのパラメータの値を学習して当該学習済みのパラメータによって特定される前記識別モデルを学習する識別モデル学習処理と、をコンピュータによって実行させ、前記評価写像データは、前記識別モデル学習処理によって学習されたデータであり、前記正則化項には、L1正則化項が含まれる評価写像データの生成方法である。
【0024】
上記方法では、入力候補データ取得処理によって取得する検出値の種類や操作状態等をある程度多種類としておいたとしても、L1正則化項のために、それらのうち評価に寄与しないものについては、学習処理によってパラメータの値がゼロとなるなどして、それらを評価写像の入力とすることを抑制できる。そして、このように、入力候補データ取得処理によって比較的無作為にデータを取得させておくことにより、人間の経験則に基づくことなく統計的な機械学習手法を基に、運転者の運転技量の特徴を抽出することができる。しかも、学習処理によってゼロとならないパラメータに対応する特徴の中には、これまで人が注目してこなかった特徴を抽出させることも可能となり、ひいては、評価精度を向上させることができる。
【0025】
15.同一の走行パターンを走行シーンに分割する粒度が互いに異なる複数の前記シーン分割写像を準備する準備処理を前記コンピュータによって実行させ、
前記入力候補データ取得処理および前記識別モデル学習処理を、前記準備処理によって準備された前記シーン分割写像のそれぞれに基づき分割された前記走行シーン毎に前記コンピュータによって実行させ、前記準備処理によって準備された前記シーン分割写像のそれぞれに基づき分割された前記走行シーン毎に実行された前記識別モデル学習処理による前記識別モデルのうちの1つを、前記評価写像データとして選択するとともに、対応する前記シーン分割写像を前記シーン分割処理に利用する前記シーン分割写像として選択する選択処理をコンピュータに実行させる上記14記載の評価写像データの生成方法である。
【0026】
走行シーン毎に生成された評価写像データによる評価の精度は、走行パターンをいかにして走行シーンに分割するかに依存する。そこで上記方法では、分割された走行シーンの粒度が互いに異なる複数のシーン分割写像を準備し、それら各シーン分割写像によって分割された走行シーンについて識別モデルを学習する。これにより、評価精度が高い識別モデルを評価写像とすることが可能となる。
【図面の簡単な説明】
【0027】
【
図1】第1の実施形態にかかる運転評価装置を示す図。
【
図2】同実施形態にかかる制御装置が実行する処理を示すブロック図。
【
図3】同実施形態にかかる評価処理の手順を示す流れ図。
【
図4】同実施形態にかかる評価写像データを例示する図。
【
図5】同実施形態にかかる評価写像データを例示する図。
【
図6】同実施形態にかかる対応付けデータを示す図。
【
図7】同実施形態にかかる評価処理の手順を示す流れ図。
【
図8】同実施形態にかかる評価写像データの適合装置を示す図。
【
図9】同実施形態にかかる評価写像データの適合処理の手順を示す流れ図。
【
図10】上記評価写像データの適合処理の一部の詳細な手順を示す流れ図。
【
図11】第2の実施形態にかかる運転評価システムを示す図。
【
図12】(a)および(b)は、運転評価システムが実行する処理を示す流れ図。
【
図13】(a)および(b)は、運転評価システムが実行する処理を示す流れ図。
【発明を実施するための形態】
【0028】
<第1の実施形態>
以下、運転評価装置にかかる第1の実施形態について図面を参照しつつ説明する。
図1に示す制御装置10は、車両に搭載される。制御装置10は、CPU12、ROM14、電気的に書き換え可能な不揮発性メモリである記憶装置16、周辺回路17、通信機18を備え、それらがローカルネットワーク19を介して通信可能とされたものである。なお、周辺回路17は、内部の動作を規定するクロック信号を生成する回路や、電源回路、リセット回路等を含む。
【0029】
制御装置10には、車両の外部にレーダーを照射しその反射波を受信するレーダ装置20の受信結果信号SLや、ヨーレートセンサ22によって検出されるヨーレートYr、加速度センサ24によって検出される車両の前後方向の加速度である前後加速度Gxおよび横方向の加速度である横加速度Gyが入力される。また、制御装置10には、車速センサ26によって検出される車両の走行速度(車速V)や、舵角センサ28によって検出される操舵角θh、操舵トルクセンサ30によって検出されるステアリングホイールへの入力トルクである操舵トルクTh、ブレーキセンサ32によって検出されるブレーキ操作量Brkを参照する。また、制御装置10には、アクセルセンサ34によって検出されるアクセルペダルの操作量(アクセル操作量ACCP)や、制御装置10以外の車載制御装置である他ECU36から出力される車載内燃機関のトルク推定値Trqe、ウィンカー38から出力されるウィンカーの状態信号Winが入力される。また、制御装置10には、通信機18を介して、携帯端末60から、車両に関する、ロール角θroll、ピッチ角θpitch、ヨー角θyaw、ロール角速度ωroll、およびピッチ角速度ωpitchが入力される。
【0030】
なお、携帯端末60は、CPU62や、ROM64、電気的に書き換え可能な不揮発性メモリである記憶装置66、周辺回路67、通信機68を備え、それらがローカルネットワーク69を介して通信可能とされたものである。
【0031】
制御装置10の記憶装置16には、評価写像データ16c、および対応付けデータ16dが記憶されている。また、ROM14には、運転評価プログラム14aが記憶されている。
【0032】
図2に、制御装置10が実行する処理を示す。
図2に示す処理は、ROM14に記憶された運転評価プログラム14aをCPU12が実行することによって実現される。
取得処理(S1)は、制御装置10に入力される上述の各種信号を所定周期で取得する処理である。詳しくは、取得処理は、車速V、前後加速度Gx、横加速度Gy、および操舵角θhを取得する処理を含む。また、取得処理は、受信結果信号SLに基づく前方車両との相対距離RLおよび相対速度RV、ヨーレートYr、操舵トルクTh、ブレーキ操作量Brk、アクセル操作量ACCP、トルク推定値Trqe、状態信号Winを取得する処理を含む。また、取得処理は、ロール角θroll、ピッチ角θpitch、ヨー角θyaw、ロール角速度ωroll、およびピッチ角速度ωpitchを取得する処理を含む。なお、本実施形態では、それら各信号を、同一のサンプリング周期で取得する。ちなみに、前方車両が存在しない場合、相対距離RLや相対速度RVは、存在しない旨の特別の値をとるものとする。
【0033】
前処理(S2)は、取得処理によって所定周期で取得することによって生成される時系列データのうち、車速V、前後加速度Gx、横加速度Gy、および操舵角θhのそれぞれに関する時系列データを分割用データとして入力し、所定の処理を施して出力する処理である。本実施形態では、所定の処理として、ローパスフィルタ処理を例示する。
【0034】
時分割処理(S3)は、前処理の出力を入力として、車速V、前後加速度Gx、横加速度Gy、および操舵角θhのそれぞれの時系列データを、車両の走行シーンに分割された時系列データに分割する処理である。
【0035】
詳しくは、時分割処理は、たとえば、操舵角θhの大きさが所定値以下の場合、直進走行に関する走行シーンであるとしたうえで、直進走行に関する走行シーンを、車速Vによって低速走行に関する走行シーン、高速走行に関する走行シーン、およびそれ以外の走行シーンに分割する処理を含む。なお、時分割処理は、直進走行に関する走行シーンを、さらに、前後加速度Gxの大きさに基づき、加速時、減速時、およびそれ以外等に細分化する処理を含んでもよい。また、時分割処理は、たとえば、操舵角θhの大きさが所定値よりも大きい場合、旋回走行に関する走行シーンであるとしたうえで、旋回走行に関する走行シーンを、車速Vによって低速走行に関する走行シーン、高速走行に関する走行シーン、およびそれ以外の走行シーンに分割する処理を含む。なお、時分割処理は、旋回走行に関する走行シーンを、さらに、前後加速度Gxの大きさや横加速度Gyの大きさに基づき、加速時、減速時、およびそれ以外に細分化する処理を含んでもよい。
【0036】
時分割処理は、運転評価プログラム14aによって規定されたコマンドのうち前処理の出力を入力として同出力を複数の走行シーンに分割する分割写像によって、走行シーンへの分割結果を出力する処理である。
【0037】
分割後入力データ生成処理(S4)は、時分割処理によって分割された、車速V、前後加速度Gx、横加速度Gy、および操舵角θhのそれぞれに関する時系列データと、それらと取得タイミングが同期しているそれら以外のデータとを、分割後入力データとする処理である。すなわち、たとえば、車速V(1),V(2),…,V(10)、前後加速度Gx(1),Gx(2),…,Gx(10)等が特定の走行シーンに分割されたとすると、分割後入力データ生成処理(S4)では、それらとともに、相対距離RL(1),RL(2),…,RL(10)等を、1つの分割後入力データとして生成する。なお、車速V(1)と前後加速度Gx(1)等、カッコ内の数字が同一もの同士は、取得タイミングが同一であることを意味し、またカッコ内の数字同士が隣接するものは時系列的に隣り合うデータであることを意味する。
【0038】
上記1つの分割後入力データは、上記時系列データが走行シーンに分割された際の、同一の走行シーンである1度の期間におけるデータである。たとえば車速V(1),V(2),…,V(10)と、車速V(100),V(101),…,V(135)とが同一の走行シーンに属するとしても、車速V(11)等がそれとは異なる走行シーンに分割されている場合、車速V(1),…,V(10)と、車速V(100),…,V(135)とは、互いに異なる分割後入力データに属する。
【0039】
評価処理(S5)は、分割後入力データに基づき、運転者による運転を評価する処理である。
図3に、評価処理(S5)の手順の一部を示す。
図3に示す処理は、ROM14に記憶された運転評価プログラム14aをCPU12がたとえば所定周期で繰り返し実行することにより実現される。なお、以下では、先頭に「S」が付与された数字によって、各処理のステップ番号を表現する。
【0040】
図3に示す一連の処理において、CPU12は、まず、分割後入力データ生成処理(S4)によって生成された、1つの分割後入力データを取得する(S10)。
図3には、サンプリング数sn個ずつの時系列データの組によって、1つの分割後入力データが構成されていることを例示している。
【0041】
次に、CPU62は、S10の処理によって取得したデータに基づき、各物理量等の時系列データの情報を1次元に圧縮する加工処理を実行して、評価写像データ16cによって規定される評価写像への入力データである評価用入力データを生成する(S12)。すなわち、CPU12は、たとえば、分割後入力データを構成するトルク推定値Trqe(1)~Trqe(sn)に基づき、それらの分散Var[Trqe]を算出する。同様に、CPU12は、操舵角θhの分散Var[θh]や、相対速度RVの分散Var[RV]、相対距離RLの分散Var[RL]等を算出する。また、CPU12は、分割後入力データを構成する前後加速度Gx(1)~Gx(sn)に基づき、前後加速度Gxの最大値Max[Gx]を算出する。同様に、CPU12は、横加速度Gyの最大値Max[Gy]や、車速Vの最大値Max[V]、ロール角速度ωrollの最大値Max[ωroll]、ピッチ角速度ωpitchの最大値Max[ωpitch]、ヨーレートYrの最大値Max[Yr]等を算出する。またCPU12は、分割後入力データを構成する前後加速度Gx(1)~Gx(sn)に基づき、前後加速度Gxの最小値Min[Gx]を算出する。同様に、CPU12は、横加速度Gyの最小値Min[Gy]等を算出する。
【0042】
また、CPU12は、分割後入力データを構成する車速V(1)~V(sn)に基づき、車速Vの平均値Mean[V]を算出する。同様に、CPU12は、ロール角θrollの平均値Mean[θroll]、ピッチ角θpitchの平均値Mean[θpitch]、ヨー角θyawの平均値Mean[θyaw]等を算出する。また、CPU12は、分割後入力データを構成するブレーキ操作量Brk(1)~Brk(sn)に基づき、それらの最小値「Brkmin」と最大値「Brkmax」との時間間隔INT[Brkmax,Brkmin]を算出する。同様に、CPU12は、車速V(1)~V(sn)のうちの極小値となるタイミング間の時間間隔INT[Vmin、Vmin]等を算出する。
【0043】
次にCPU12は、S10の処理によって取得した分割後入力データが、走行シーン1のものであるか否かを判定する(S14(1))。そしてCPU12は、走行シーン1のものであると判定する場合(S14(1):YES)、評価写像データ16cのうち、走行シーン1のものを用いて、4つの評価指標A,B,C,Dのそれぞれに該当する確率を示す評価値y[1,A],y[1,B],y[1,C],y[1,D]を算出する(S16a~S16d)。
【0044】
ここで、評価写像データ16cによって規定される評価写像は、いずれも、識別関数である。詳しくは、評価指標A,B,C,Dを総括して評価指標#とする場合、入力変数x(0),x(1),x(2),x(3),…と係数w1#0,w1#1,w1#2,w1#3,…との内積値を独立変数とするロジスティックジグモイド関数である。ただし、x(0)=1であり、係数w1#0は、バイアスパラメータである。
【0045】
図3では、評価写像の入力変数x(1),x(2),x(3),…のそれぞれには、走行シーン1,2,3,…同士で、また、評価指標A,B,C,D同士で互いに異なる変数の値が代入されうる。これについて、
図4、および
図5に例示する。なお、
図4および
図5において、「0」と記載しているものは、係数が存在しないことを示す。換言すれば、当該係数に対応する変数が評価写像の入力とならないことを示す。
【0046】
図4は、評価指標Aの評価写像を規定する係数を例示する。
図4に示すように、走行シーン1では、操舵角θhの分散Var[θh]が評価写像の入力とならないが、走行シーン2においては、入力変数x(1)に、操舵角θhの分散Var[θh]が代入され、これに係数w2A1が乗算されることを例示している。
【0047】
図5は、「i=1,2,3,…」として、走行シーンiにおける評価指標A,B,C,Dの評価写像を規定する係数を例示する。
図5に示すように、走行シーンiにおいて、評価指標Aの評価写像には、操舵角θhの分散Var[θh]が入力されないが、評価指標Dの評価写像には、操舵角θhの分散Var[θh]が入力されること、および操舵角θhの分散Var[θh]には、係数wiD1が乗算されることを例示した。
【0048】
図3に戻り、CPU12は、S16a~S16dの処理が完了する場合、評価指標Aの評価値y[1,A]と、評価指標Bの評価値y[1,B]と、評価指標Cの評価値y[1,C]と、評価指標Dの評価値y[1,D]とのうちの最大値が評価指標Aの評価値y[1,A]であるか否かを判定する(S18a)。この処理は、S12の処理によって今回算出した評価用入力データに関する限り、運転者の運転が評価指標Aに合致するか否かを判定する処理である。
【0049】
そしてCPU12は、最大値が評価指標Aの評価値y[1,A]であると判定する場合(S18a:YES)、評価指標Aである旨の判定をする(S20)。そして、CPU12は、評価指標Aとした要因を特定する処理を実行する(S22)。この処理は、入力変数x(1),x(2),…のうち、評価値y[1,A]を大きくすることに最も大きく寄与したものを特定する処理となる。たとえば、係数w1A1,w1A2,w1A3,…の符号が全て正である場合には、「i=1,2,3,…」として、係数w1Aiと入力変数x(i)との積「w1Ai・x(i)」が最大となるものを特定すればよい。これに対し、係数w1A1,w1A2,w1A3,…のうち負となるものがある場合、負となる係数と対応する入力変数との積の絶対値が小さい場合に、評価値y[1,A]を大きくすることに最も大きく寄与することもありうる。そこで、本実施形態では、負となるものがある場合、負となる係数と対応する入力変数との積の絶対値と所定の判定値との大小比較処理や、正となるものと対応する入力変数との積と所定の判定値との大小比較処理によって、評価値y[1,A]を大きくすることに最も大きく寄与したものを特定する処理を構成している。
【0050】
次にCPU12は、S22の処理によって特定された要因に、対応付けデータ16dによって対応付けられた理由を選択する(S24)。
図6に、対応付けデータ16dを例示する。
図6には、走行シーンiの要因1の場合、「発進時に、アクセルペダルを強く踏み込んで加速したから、あなたはDである。」との理由が例示されている。対応付けデータ16dでは、こうした理由をテキストデータとして保持している。
【0051】
図3に戻り、CPU12は、S24の処理を完了する場合、
図3に示す一連の処理を一旦終了する。
なお、CPU12は、S18aの処理において否定判定する場合、評価指標Aの評価値y[1,A]と、評価指標Bの評価値y[1,B]と、評価指標Cの評価値y[1,C]と、評価指標Dの評価値y[1,D]とのうちの最大値が評価指標Bの評価値y[1,B]であるか否かを判定する(S18b)。そして、S18bの処理において、否定判定する場合には、評価指標Aの評価値y[1,A]と、評価指標Bの評価値y[1,B]と、評価指標Cの評価値y[1,C]と、評価指標Dの評価値y[1,D]とのうちの最大値が評価指標Cの評価値y[1,C]であるか否かを判定する。そして、それらの判定結果に応じて、S20~S24に準じた処理を実行する。また、CPU12は、S14(1)の処理において否定判定する場合、走行シーン2であるか否かを判定する(S14(2))等、いずれの走行シーンであるかを特定し、特定した走行シーンに応じてS16a~S16d,S18a,S18b,…,S20~S24に準じた処理を実行する。
【0052】
図7に、評価処理(S5)の手順の一部を示す。
図7に示す処理は、ROM14に記憶された運転評価プログラム14aをCPU12がたとえば所定周期で繰り返し実行することにより実現される。
【0053】
図7に示す一連の処理において、CPU12は、IG信号がオン状態からオフ状態に切り替えられたか否かを判定する(S30)。この処理は、トリップの終了時であるか否かを判定する処理である。ここで、トリップとは、車両の走行許可信号であるIG信号がオン状態となっている1つの期間のこととする。CPU12は、オフ状態に切り替えられたときであると判定する場合(S30:YES)、今終了したトリップ内における
図3の処理による、A評価とされた数(評価数NA)、B評価とされた数(評価数NB)、C評価とされた数(評価数NC)、およびD評価とされた数(評価数ND)を算出する(S32)。
【0054】
次にCPU12は、評価数NA、評価数NB、評価数NC、および評価数NDのうちの最大値となるものが、評価数NAであるか否かを判定する(S34a)。この処理は、このトリップにおける運転に関し、評価指標Aに合致するか否かを判定する処理である。そして、CPU12は、評価数NAであると判定する場合(S34a:YES)、評価指標Aである旨確定させる(S36)。そして、CPU12は、S24の処理によって取得された理由データのうち、A判定に関するものを選択する(S38)。
【0055】
一方、CPU12は、評価数NAではないと判定する場合(S34a:NO)、評価数NA、評価数NB、評価数NC、および評価数NDのうちの最大値となるものが、評価数NBであるか否か(S34b)、あるいは評価数NCであるか否かを判定する。そしてCPU12は、その判定結果に応じて、評価指標B~Dのいずれかである旨を確定させ、S38の処理において、確定した評価指標に対応する理由を選択する。
【0056】
なお、CPU12は、S30において否定判定する場合や、S38の処理が完了する場合には、
図6に示す一連の処理を一旦終了する。
図2に戻り、通知処理(S6)は、表示装置50を操作し、
図7の処理によって確定された評価指標と、その理由とを表示装置50に表示させる処理である。
【0057】
ここで、評価写像データ16cの生成処理について説明する。
図8に示す適合装置80は、評価写像データ16cを生成する装置である。適合装置80には、評価指標Aの運転者が車両VCを運転した際のデータと、評価指標Bの運転者が車両VCを運転した際のデータと、評価指標Cの運転者が車両VCを運転した際のデータと、評価指標Dの運転者が車両VCを運転した際のデータと、が入力される。
【0058】
図9に、適合装置80が実行する処理の手順を示す。この処理は、たとえば適合装置80を、CPUおよびROMを備えて構成し、ROMに記憶されたプログラムをCPUが実行することにより実現される。
【0059】
図9に示す一連の処理において、適合装置80は、まず走行シーンの複数の分割パターンを準備する(S40)。分割パターンは、いずれも同一の走行パターンを複数の走行シーンに分割するものであるが、互いに異なる分割パターンは、複数の走行シーンへの分割の粒度が異なるものである。本実施形態では、互いに粒度が異なる3つの分割パターンを例示する。詳しくは、第1の分割パターンと比較して第2の分割パターンは、より細分化された走行シーンへと分割するものであり、第2の分割パターンと比較して第3の分割パターンは、より細分化された走行シーンへと分割するものである。具体的には、たとえば第1の分割パターンが操舵角の大きさが所定値以下である場合に一律、直進に対応する走行シーンであるとするのに対し、第2の走行パターンは、直進に対応する走行シーンを、加速に対応する走行シーンと、減速に対応する走行シーンと、定速走行に対応する走行シーンとに細分化するものである。この例の場合、第3の分割パターンは、たとえば、直進かつ加速に対応する走行シーンを、アクセル操作量ACCPの変化速度に応じて細分化したり、アクセル操作量ACCPの大きさに応じて細分化したりしたものとすればよい。なお、S40の処理は、人が規定した分割パターンを適合装置80が取得する処理である。
【0060】
次に適合装置80は、S40の処理において準備した3つの分割パターンの中から1つの分割パターンを選択する(S42)。次に適合装置80は、選択した分割パターンに基づき分割した走行シーン毎に、評価写像データ16cの元となる識別モデルを学習する(S44)。なお、分割パターンに基づく走行シーンへの分割に際しては、車速V、前後加速度Gx、横加速度Gyおよび操舵角θhの時系列データに、
図2に示した前処理を施す。
【0061】
図10に、S44の処理の詳細を示す。なお、
図10においては、選択された分割パターンによって規定された走行シーンiにおける評価指標Aの識別モデルの学習処理を例示する。評価指標B,C,Dの識別モデルの学習処理も
図10に例示する処理と同様のため、その記載を省略する。
【0062】
図10に示す一連の処理において、適合装置80は、まず評価写像への入力候補となる入力候補データを取得する(S60)。本実施形態では、入力候補データを、車速V(1),V(2),…等の走行シーンiを構成する各センサの検出値等の時系列データ自体とするのではなく、それらの分散、平均、最大値、最小値、および検出値等がある条件に合致する時間間隔等とする。これは、評価写像の入力を簡素化するためのものである。ただし、本実施形態では、走行シーン1,2,3,…のそれぞれで予め人の知見によって特徴量となりうるものを選定することはしない。ここでは、トルク推定値Trqe、操舵角θh、相対距離RL、相対速度RV,…等、入手可能な変数について、網羅的に、分散、平均、最大値、最小値、および検出値等がある条件に合致する時間間隔等を生成する。なお、入力候補データは、上述の評価用入力データを包含している。
【0063】
適合装置80は、S60の処理における入力候補データを、評価指標A~Dのいずれかの運転者が車両VCを運転する際に走行シーンiとなっている期間にサンプリングされた変数に基づき生成する。
【0064】
次に適合装置80は、教師データyt[i,*]を取得する(S62)。教師データyt[i,*]は、S60の処理によって取得された入力候補データが、評価指標Aの運転者が車両VCを運転する際に走行シーンiとなっている期間にサンプリングされた変数に基づき生成されたものである場合に限って、「1」とされる。すなわち、評価指標B~Dのいずれかの運転者が車両VCを運転する際に走行シーンiとなっている期間にサンプリングされた変数に基づき生成されたものである場合、「0」とされる。
【0065】
次に適合装置80は、入力候補データの次元数mと等しい個数の係数wiA1,wiA2,wiA3,…,wiAmと入力候補データとの内積値と、係数wiA0との和を独立変数とするロジスティックジグモイド関数の出力値を評価値y[i,A]として算出する(S64)。次に適合装置80は、S64の処理によって算出された評価値y[i,A]の量(データ量)がN個となったか否かを判定する(S66)。ここで、N個は、評価写像データ16cの学習に十分な量とされている。そして、適合装置80は、N個に達していないと判定する場合(S66:NO)、S60の処理に戻る。なお、適合装置80は、S60の処理において、評価指標A~Dのそれぞれの運転者が車両VCを運転する際に走行シーンiとなっている期間にサンプリングされた入力候補データのいずれか1つが取得されることが過度に少なくならないようにする。
【0066】
一方、適合装置80は、N個に達したと判定する場合(S66:YES)、S64の処理によって算出された評価値y[i,A]のそれぞれと、対応するS62の処理によって取得した教師データyt[i,*]とに基づく、2乗和に正則化項を加えた誤差関数Eを算出する(S68)。本実施形態では、正則化項として、lassoを用いる。すなわち、パラメータλの「1/2」に、係数wiA1,wiA2,wiA3,…の絶対値の和を乗算した値を用いる。
【0067】
そして適合装置80は、誤差関数Eを最小化すべく、係数wiA1,wiA2,wiA3,…を更新する処理を実行する(S70)。そして、適合装置80は、更新された係数wiA1,wiA2,wiA3,…を学習済みのパラメータとして、記憶装置に記憶する(S72)。
【0068】
ちなみに、実際には、S68,S70の処理は、正則化項のパラメータλを固定して行うのではなく、パラメータλを変更しつつ変更したパラメータλ毎に、係数wiA1,wiA2,wiA3,…を更新し、最適な係数wiA1,wiA2,wiA3,…を選択する処理となる。なお、パラメータλは、2乗和を小さくしつつも、係数wiA1,wiA2,wiA3,…のうちのいくつかがゼロとなるように選択される。上記S72の処理において記憶される係数wiA1,wiA2,wiA3,…は、ゼロでないものに限られ、且つ、ラベルを変更したものである。すなわち、たとえばS64の処理において用いた係数wiA1がゼロ且つ係数wiA2がゼロではない場合、S72においては、S64の処理において用いた係数wiA2が、係数wiA1とされる。
【0069】
S70の処理において係数wiA1,wiA2,wiA3,…のうちゼロとなるものは、評価指標A~Dのそれぞれで互いに異なりえ、また、走行シーン毎に互いに異なる傾向がある。そのため、係数wiA1,wiA2,wiA3,…について、
図4および
図5に例示した特徴が生じる。
【0070】
適合装置80は、S72の処理を完了する場合、
図9のS44の処理を完了する。
次に適合装置80は、S40の処理において準備した全ての分割パターンについて、S44の処理が完了したか否かを判定する(S46)。そして適合装置80は、未だS44の処理が完了していない分割パターンがあると判定する場合(S46:NO)、S42の処理に戻ってその分割パターンを選択する。
【0071】
これに対し適合装置80は、全ての分割パターンについてS44の処理が完了したと判定する場合(S46:YES)、複数の分割パターンのうち、時分割処理S3を規定する分割パターンを選択するとともに、S44の処理によって学習された評価写像データを、評価写像データ16cとして選択する(S48)。ここで適合装置80は、
図3のS10~S20の処理や、
図7のS30~S36の処理と同様の処理を実行した際の評価結果の精度が最も高いものを選択する。
【0072】
なお、適合装置80は、S48の処理が完了する場合、
図9に示す一連の処理を一旦終了する。
なお、
図9の処理が完了し、評価写像データ16cが生成されると、評価指標A~Dのそれぞれについて、走行シーン毎に、入力変数に基づき、たとえば熟練者によって、評価値を高くする要因を特定し、対応付けデータ16dを生成する。
【0073】
ここで、本実施形態の作用および効果について説明する。
CPU12は、運転者が車両を運転する際に、車速V、前後加速度Gx、横加速度Gyおよび操舵角θhに基づき、都度の走行シーンを、複数の走行シーンに分割する。そして、CPU12は、分割した各走行シーンについて、運転者による操作状態に関する時系列データ等に基づき、評価指標A~Dのそれぞれに該当する確率である評価値y[i,A],y[i,B],y[i,C],y[i,D]を算出する。そして、CPU12は、評価値y[i,A],y[i,B],y[i,C],y[i,D]のうちの最大値に対応する評価指標が、その走行シーンiにおける運転者の評価指標であるとする。特に、CPU12は、分割された各走行シーン毎に、運転者の運転に関する評価指標を特定する。そのため、様々な走行シーンにおいて運転者の運転に関する情報を有効活用して、評価指標を決定することができる。
【0074】
以上説明した本実施形態によれば、さらに以下に記載する効果が得られる。
(1)CPU12は、評価指標を確定させると、その評価指標の評価値を大きくした要因と、対応付けデータ16dとに基づき、その評価指標とされる理由を特定し、表示装置50に表示した。これにより、運転者にどうしてその評価結果となったのかを通知することができる。
【0075】
(2)携帯端末60からロール角θrollや、ピッチ角θpitch、ヨー角θyaw、ロール角速度ωroll、ピッチ角速度ωpitchを取得し、それらに基づき評価写像データ16cによって規定される評価写像への入力を生成した。これにより、携帯端末60からの情報を用いない場合と比較して、運転者の運転をより詳細に評価することができる。
【0076】
(3)評価写像への入力を、センサの検出値の時系列データとする代わりに、時系列データに基づき生成した分散、平均、最大値、最小値、時間間隔とした。これにより、単一の検出値からは読み取ることができない情報を評価写像に入力しつつも、入力の次元数が大きくなることを抑制できる。
【0077】
(4)評価写像データ16cを生成する際、トルク推定値Trqe、操舵角θh、相対距離RL、相対速度RV,…等、入手可能な変数について、網羅的に、分散、平均、最大値、最小値、検出値等がある条件に合致する時間間隔等を入力候補データとした。そして、L1正則化最小二乗法を用いることにより、各走行シーンの各評価指標の評価にとって有効性の高い変数のみが自動的に抽出されるようにした。これにより、人の経験則に基づくことなく、統計的な機械学習手法によって、運転者の運転技量の差の特徴を抽出することができる。したがって、人の経験則によって運転者の運転モデルを作成する場合と比較して、工数を低減できるのみならず、人がそれまで注目してこなかった特徴量を抽出することができ、ひいては評価精度を高めることができる。
【0078】
(5)粒度が互いに異なる複数の分割パターンを準備し、それら各分割パターンのそれぞれによって分割された走行シーン毎に、識別モデルを学習し、評価精度が高い識別モデルを評価写像データ16cとした。これにより、任意に設定した分割パターンによって分割された走行シーン毎に識別モデルを学習し、これを評価写像データ16cとする場合と比較して、評価写像データ16cを用いた評価の精度を高めることが可能となる。
【0079】
<第2の実施形態>
以下、第2の実施形態について、第1の実施形態との相違点を中心に図面を参照しつつ説明する。
【0080】
図11に、本実施形態にかかる運転評価システムの構成を示す。
本実施形態では、制御装置10のROM14には、運転評価サブプログラム14cが記憶されており、携帯端末60のROM64には、運転評価メインプログラム64aが記憶されている。また、本実施形態では、携帯端末60の記憶装置66に、評価写像データ16c、および対応付けデータ16dが記憶されている。
【0081】
図12に、本実施形態にかかる運転評価システムが実行する処理の手順を示す。
図12(a)に示す処理は、ROM14に記憶された運転評価サブプログラム14cをCPU12がたとえば所定周期で繰り返し実行することにより実現される。
図12(b)に示す処理は、ROM64に記憶された運転評価メインプログラム64aをCPU62がたとえば所定周期で繰り返し実行することにより実現される。なお、以下では、運転評価処理の時系列にしたがって、
図12に示す処理を説明する。
【0082】
図12(a)に示す一連の処理において、CPU12は、まず、
図2に示した取得処理を実行する(S1)。そして、CPU12は、通信機18を操作して、S1の処理によって取得したデータを携帯端末60に送信する(S80)。
【0083】
これに対し、
図12(b)に示すように、CPU62は、S80の処理によって送信されたデータを受信する(S90)。そしてCPU62は、
図2に示した、前処理(S2)、時分割処理(S3)、分割後入力データ生成処理(S4)、および評価処理(S5)を実行する。そしてCPU62は、通信機68を操作して評価処理による評価結果を送信し(S92)、
図12(b)に示す一連の処理を一旦終了する。
【0084】
これに対し、
図12(a)に示すように、CPU12は、評価結果を受信し(S84)、表示装置50を操作することによって、
図2に示した処理である通知処理を実行し(S6)、
図12(a)に示す一連の処理を一旦終了する。
【0085】
このように、本実施形態によれば、前処理S2、時分割処理S3、分割後入力データ生成処理(S4)、および評価処理(S5)を携帯端末60において実行することにより、制御装置10の演算負荷を軽減できる。
【0086】
<第3の実施形態>
以下、第3の実施形態について、第2の実施形態との相違点を中心に図面を参照しつつ説明する。
【0087】
図13に、本実施形態にかかる運転評価システムが実行する処理の手順を示す。
図13(a)に示す処理は、ROM14に記憶された運転評価サブプログラム14cをCPU12がたとえば所定周期で繰り返し実行することにより実現される。
図13(b)に示す処理は、ROM64に記憶された運転評価メインプログラム64aをCPU62がたとえば所定周期で繰り返し実行することにより実現される。なお、
図13において、先の
図12に示した処理に対応する処理については、便宜上、同一のステップ番号を付与する。以下では、運転評価処理の時系列にしたがって、
図13に示す処理を説明する。
【0088】
図13(b)に示すように、本実施形態では、CPU62は、S5の処理を実行すると、
図11に示す表示部70を操作することによって、評価指標A~Dのいずれに該当するかと、その理由とを表示する(S94)。すなわち、本実施形態では、CPU62によって通知処理が実行される。なお、CPU62は、S94の処理が完了する場合、
図13(b)に示す一連の処理を一旦終了する。
【0089】
<対応関係>
上記実施形態における事項と、上記「課題を解決するための手段」の欄に記載した事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。[1]実行装置は、
図1のCPU12およびROM14に対応する。記憶装置は、記憶装置16に対応する。挙動センサは、レーダ装置20、ヨーレートセンサ22、加速度センサ24、車速センサ26、舵角センサ28等に対応する。操作状態は、操舵トルクThや、ブレーキ操作量Brk、アクセル操作量ACCP等に対応する。取得処理は、S1の処理に対応する。評価用入力データは、S12の処理によって生成されるデータに対応する。分割用入力データは、前処理S2への入力データに対応する。[2]評価指標は、A~Dの4つの指標に対応する。評価値算出処理は、S16a~S16dの処理に対応し、特定処理は、S18a,S18b,…,S20等の処理に対応する。[3]指標特定処理は、S18a,S18b,…,S20等の処理に対応する。理由特定処理は、S24の処理に対応する。[4]評価値算出処理は、S16a~S16dの処理に対応する。理由特定処理は、S24の処理に対応する。[5]
図4に例示されている。[6]
図5に例示されている。[7]加工処理は、S12の処理に対応する。[8]
図2において、前処理(S2)に車速V、前後加速度Gx、横加速度Gyおよび操舵角θhのみが入力されることに対応する。[9~12]第1実行装置は、CPU12およびROM14に対応し、第2実行装置は、CPU62およびROM64に対応する。記憶装置は、記憶装置66に対応する。取得データ送信処理は、S80の処理に対応する。取得データ受信処理は、S90の処理に対応する。評価結果送信処理は、S92の処理に対応する。評価結果受信処理は、S84の処理に対応する。[13]運転評価プログラムは、運転評価プログラム14aや運転評価メインプログラム64aに対応する。[14]入力候補データ取得処理は、S60の処理に対応する。識別モデル学習処理は、S64~S70の処理に対応する。[15]準備処理は、S40の処理に対応する。選択処理は、S48の処理に対応する。
【0090】
<その他の実施形態>
なお、本実施形態は、以下のように変更して実施することができる。本実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【0091】
・「評価写像について」
(a)評価指標の数について
上記実施形態では、評価指標として、A,B,C,Dの4個の評価指標を用いたが、これに限らず、2個、3個、または、5個以上であってもよい。
【0092】
もっとも評価指標の数が複数であることも必須ではない。たとえば安全運転の度合いを評価する単一の評価指標や、高齢者である確率を示す単一の評価指標であってもよい。後者の場合、高齢者に該当すると評価される場合、運転をすることについて以前よりもリスクが高まっているということを注意喚起することができる。このように、単一の評価指標を用いる場合であっても、走行シーン毎に、評価指標の評価値を算出することにより、その評価値となる要因を特定しやすい。
【0093】
(b)写像の種類について
評価値を示す写像としては、上記実施形態で例示したものに限らない。たとえば、サポートベクトルや関連ベクトルを1つの入力とし、評価写像の入力をもう1つの入力とするカーネル関数と上記係数wiA1,wiA2,…等との内積値とバイアスパラメータとの和を独立変数とし、出力値の符号によって評価指標に合致するか否かを定める識別モデルであってもよい。この場合、複数の指標に合致するとの結果が生じる場合、
図7の処理によって最終的な評価を定めればよい。またたとえば、ニューラルネットワークを用いてもよい。この場合、出力層の活性化関数をロジスティックジグモイド関数とするなら、その出力値を評価指標に合致する確率とすることができる。
【0094】
・「取得処理について」
上記実施形態では、車速Vや、前後加速度Gx等の、分割用入力データに用いられる検出値と、ヨーレートYrや、操舵トルクTh等の評価用入力データに用いられる検出値とを、互いに等しい個数ずつ取得したが、これに限らない。たとえば分割用入力データのサンプリング周期を、評価用入力データのサンプリング周期よりも長くしてもよい。その場合であっても、分割用入力データが複数の走行シーンに分割される場合、各走行シーンに同期した評価用入力データを特定することは可能である。
【0095】
・「評価用入力データについて」
評価写像への入力データである評価用入力データとしては、上記実施形態において例示したものに限らない。たとえば、推力生成装置が内燃機関に代えてモータジェネレータである車両の場合、トルク推定値Trqeに関する変数に代えて、モータジェネレータのトルクに関する変数を入力変数としてもよい。
【0096】
また、時系列データが示す波形の特徴量を示す変数としては、最大値や最小値に限らず、たとえば、最大値と最小値との差である波形の振幅や、時系列データのフーリエ変換による周波数成分のうちの強度が所定値以上の周波数成分、設定した閾値を所定時間内に超えた回数等であってもよい。
【0097】
また、評価写像への入力データとしては、分散、平均、時系列データが示す波形の特徴量を示す変数、および検出値が所定の条件を満たす時間間隔等、1つの物理量または複数の物理量を1次元等に圧縮したデータに限らない。たとえば、車速Vの時系列データ等、時系列データ自体を用いてもよい。
【0098】
上記実施形態では、評価用入力データを構成する変数としての車両の外部の環境の認識に関する変数として、相対距離RLや相対速度RVに関する変数を例示したが、これに限らない。たとえば、隣接する車線における車両の有無やその車両との距離、自転車の有無やその自転車との距離、信号の有無、標識の有無やその種類等に関する変数を含めてもよい。もっとも、車両の外部の環境の認識に関する変数を評価用入力データに含めることは必須ではない。
【0099】
・「評価処理について」
S10の処理においては、評価指標A~Dの少なくとも1つにおいて少なくとも1つの走行シーンにおける評価写像の入力変数となるものを全て取得したが、これに限らない。たとえば、評価指標A~D且つ走行シーン毎に互いに独立のロジックを構成し、実際に入力変数となるもののみを取得してもよい。
【0100】
図7には、シーンを区別することなく、評価数NA,NB,NC,NDのうちの最大となるものによって、評価指標A~Dのいずれに合致するかを判定したが、これに限らない。たとえば、走行シーンによって、評価数NA,NB,NC,NDのうちの最大となるものが異なる場合、走行シーン毎に評価指標A~Dのいずれに合致するかを判定してもよい。
【0101】
なお、分割された各走行シーンにおいて、必ず評価指標を算出することは必須ではない。たとえば、
図9の処理の実行時において、評価指標を高精度に特定することが困難な走行シーンが見つかった場合、その走行シーンについては、はじめから評価写像データ16cを定義しなくてもよい。こうした走行シーンとしては、たとえば交差点等における停車状態等が考えられる。
【0102】
・「前処理について」
上記実施形態では、前処理として、ローパスフィルタ処理を例示したが、これに限らない。たとえば、取得処理によって所定周期で取得することによって生成される時系列データのうち、分割用入力データである車速V、前後加速度Gx、横加速度Gy、および操舵角θhのそれぞれに関する時系列データを圧縮して出力する処理であってもよい。この処理は、たとえば、CNN(Convolutional Neural Network)オートエンコーダを用いて実現できる。その場合において、分割用入力データを構成する、車速V、前後加速度Gx、横加速度Gy、および操舵角θhの4つの互いに異なる物理量を結合して圧縮することにより、前処理S2の出力を、特定の物理量を有したデータではないものとしてもよい。
【0103】
なお、ここで用いるCNNオートエンコーダは、たとえば以下のニューラルネットワークについての、中間層のノードを出力値とするものとすればよい。すなわち、畳込み層とプーリング層とによって一旦入力される時系列データを圧縮した後、再度、次元を拡大して入力と同一の次元数を有する自己連想型のニューラルネットワークであって、出力を入力に近づけるように学習されたニューラルネットワークである。
【0104】
・「分割用入力データについて」
分割用入力データとしては、車速V、前後加速度Gx、横加速度Gyおよび操舵角θhの4つの検出値の時系列データに限らない。たとえば、それら4つに関しては、それらのうちの3つのみが含まれる時系列データであってもよく、またたとえばそれらのうちの2つのみが含まれる時系列データであってもよく、またたとえば、それらのうちの1つのみが含まれる時系列データであってもよい。
【0105】
・「時分割処理について」
時分割処理としては、上記実施形態において例示したものに限らない。たとえば、周知のクラスタリング手法を用いてもよい。またたとえば、隠れマルコフモデルを用いてもよい。具体的には、たとえば、「大規模時系列データからの特徴自動抽出:松原靖子、櫻井保志、ChristosFaloutsos」に記載されている多階層連鎖モデルの学習済みモデルを用いてもよい。これは、たとえば以下のようにして実現できる。
【0106】
すなわちたとえば、適合装置80によって、分割用データを複数のセグメントに分割し、それら各セグメントを複数の走行シーンに分類すべく、「r」個の走行シーンを、「r」個の隠れマルコフモデルのモデルパラメータ集合として表現するとともに、走行シーン間の遷移行列を設定する。そして適合装置80は、分割用入力データをセグメントに分割した際のセグメント数m、走行モデルの個数r、セグメントの集合、走行シーンのモデルパラメータ、遷移行列、およびセグメントのそれぞれに対応する走行シーンを示す変数を、符号化コストを示すコスト関数が最小となるように自動的に求める。
【0107】
具体的には、適合装置80は、まず走行シーンの個数を初期値として与えることによって、分割用入力データをセグメントに分割する。次に、適合装置80は、コスト関数を最小化する、走行シーンのモデルパラメータと遷移行列とを求める。ここでは、Baum-Welchアルゴリズム等を用いればよい。次に適合装置80は、貪欲法を用いて、コスト関数を最小化する、セグメント数および走行シーンの数を更新する。
【0108】
そして、適合装置80により走行シーンのモデルパラメータ、遷移行列、走行シーンの個数rを決定することによって多階層連鎖モデルの学習が完了されると、学習済みモデルを制御装置10に実装すればよい。すなわち、走行シーンのモデルパラメータ、遷移行列、走行シーンの個数rを、走行シーンを定義するデータとして制御装置10に実装するとともに、上記コスト関数の実行指令を含んだ運転評価プログラムを制御装置10に実装すればよい。これにより、時分割処理を、セグメントの集合と、セグメントのそれぞれに対応する走行シーンを示す変数の値とを、上記コスト関数が最小となるように求める処理とすることができる。
【0109】
なお、この際、学習済みモデルへの入力データを、分割用入力データとする代わりに、たとえば「前処理について」の欄に記載したように、CNNオートエンコーダの出力としてもよい。
【0110】
・「シーン分割処理について」
シーン分割処理としては、前処理および時分割処理にて構成されるものに限らず、たとえば、分割用入力データを時分割処理に直接入力してもよい。
【0111】
・「準備処理について」
図9においては、準備処理として、人が予め設定した分割パターンを取得する処理を例示したが、これに限らない。たとえば、「前処理について」の欄に記載したように、CNNエンコーダの出力を時分割処理の入力とする場合、CNNの互いに異なる層の値を時分割処理の入力とすることによって、互いに粒度が異なるデータを時分割処理の入力としてもよい。換言すれば、CNNの互いに異なる層の値を出力とするCNNエンコーダと時分割処理とによって、互いに異なる粒度の走行シーンを出力するシーン分割写像を準備すればよい。
【0112】
・「評価写像データの生成処理について」
上記実施形態では、L1正則化最小二乗法によって、係数wiAj,wiBj,wiCj,wiDjを更新したが、正則化最小二乗法としては、これに限らない。たとえば、L1正則化とL2正則化との双方を利用するいわゆるElasticNetを用いてもよい。
【0113】
また、正則化最小二乗法にも限らない。たとえば「評価写像について」の(b)に記載したカーネル関数を用いた識別モデルの場合、サポートベクトルマシンや関連ベクトルマシンによる周知の手法を用いることができる。
【0114】
またたとえば、係数wiDjの分布を仮定するハイパーパラメータをモデル化したうえで、評価値と教師データとの誤差の2乗和を最小化するようにしてもよい。この場合であっても、係数wiDjのうちのいくつかをゼロとしやすい。
【0115】
・「通知処理について」
上記実施形態では、表示装置を操作することによって、評価結果を視覚情報として通知したが、これに限らず、たとえばスピーカ等を操作して、評価結果を音声情報として通知してもよい。
【0116】
上記実施形態では、トリップの終了時に評価結果を通知したが、これに限らない。たとえば、評価結果を携帯端末60の記憶装置66に記憶しておき、運転者が携帯端末60を操作して評価結果を要求する場合に、表示部70を操作して評価結果を表示するようにしてもよい。なお、この際、トリップごとの評価結果を表示するものに限らず、たとえば、評価結果が要求された時点までの評価結果について
図7のS32~S38の処理を実行して、その期間における評価結果を表示するようにしてもよい。なお、こうした場合に「評価処理について」の欄に記載したように、走行シーン毎に評価指標A~Dのいずれに合致するかを判定する場合には、その結果を通知すればよい。
【0117】
またたとえば、トリップ中にある程度の評価結果が蓄積され、特定の評価指標に該当する確率が高まった時点で、その評価指標であることが最も顕著となる走行シーンにおいて、評価結果を音声等で通知してもよい。ここでその評価指標であることが最も顕著となる走行シーンは、その評価指標における評価値が最も大きくなる走行シーンとすればよい。
【0118】
・「評価結果の利用について」
評価結果の用途は、通知処理の対象とされるものに限らない。たとえば、自動運転を、運転者の運転性向に応じて実行する場合に、自動運転を運転者の運転性向に合わせるための情報として評価結果を利用してもよい。
【0119】
・「実行装置について」
実行装置としては、CPU12(62)とROM14(64)とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理する専用のハードウェア回路(たとえばASIC等)を備えてもよい。すなわち、実行装置は、以下の(a)~(c)のいずれかの構成であればよい。(a)上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するROM等のプログラム格納装置とを備える。(b)上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。(c)上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア実行装置や、専用のハードウェア回路は複数であってもよい。
【0120】
・「記憶装置について」
上記実施形態では、評価写像データ16cが記憶される記憶装置と、運転評価プログラム14aや、運転評価メインプログラム64aが記憶される記憶装置であるROM14,64とを別の記憶装置としたが、これに限らない。
【0121】
・「車外評価装置について」
車外評価装置としては、携帯端末60に限らない。たとえば、複数の車両のそれぞれから送信される様々なデータを受信して解析するデータ解析センターであってもよい。
【0122】
・「運転評価システムについて」
図11には、車両内の制御装置10と携帯端末60とによって、運転評価システムを構成したが、これに限らない。たとえば、車両内の制御装置と、携帯端末60と、複数の車両のそれぞれから送信される様々なデータを受信して解析するデータ解析センターとによって、運転評価システムを構成してもよい。これは、たとえば
図12(b)の処理をデータ解析センターが実行し、S84の処理および通知処理(S6)を携帯端末が実行することにより実現できる。
【符号の説明】
【0123】
10…制御装置
12…CPU
14…ROM
14a…運転評価プログラム
14…ROM
14b…運転評価サブプログラム
16…記憶装置
16d…対応付けデータ
17…周辺回路、
18…通信機、
19…ローカルネットワーク、
60…携帯端末、
62…CPU、
64…ROM、
64a…運転評価メインプログラム、
66…記憶装置、
67…周辺回路、
68…通信機、
69…ローカルネットワーク、
80…適合装置