5:舵角センサ、10:レーザレーダ、15:前方カメラ、30:車速センサ、35:加速度センサ、50:ナビゲーションシステム、55:アクセルペダル開度センサ、60:ブレーキペダルストロークセンサ、65:ウィンカスイッチ、100,200,250,300,350,400:コントローラ、130:スピーカ、180:表示ユニット
《第1の実施の形態》
本発明の第1の実施の形態による車両用運転支援装置について、図面を用いて説明する。図1は、本発明の第1の実施の形態による車両用運転支援装置1の構成を示すシステム図であり、図2は、車両用運転支援装置1を搭載した車両の構成図である。
まず、車両用運転支援装置1の構成を説明する。
レーザレーダ10は、車両の前方グリル部もしくはバンパ部等に取り付けられ、水平方向に赤外光パルスを照射して自車両の前方領域を走査する。レーザレーダ10は、前方にある複数の反射物(通常、先行車の後端)で反射された赤外光パルスの反射波を計測し、反射波の到達時間より、複数の障害物までの車間距離と相対速度をそれぞれ検出する。検出した車間距離及び相対速度はコントローラ100へ出力される。レーザレーダ10によりスキャンされる前方の領域は、自車正面に対して±6deg 程度であり、この範囲内に存在する前方物体が検出される。
車速センサ30は、車輪の回転数や変速機の出力側の回転数を計測することにより自車両の車速を検出し、検出した自車速をコントローラ100に出力する。
ナビゲーションシステム50は、GPS受信機、地図データベース、および表示モニタ等を備えており、経路探索および経路案内等を行うシステムである。ナビゲーションシステム50は、GPS受信機から得られる自車両の現在位置と地図データベースに格納された道路情報に基づいて、自車両が走行する道路の種別や道路幅員等の情報を取得することができる。
ブレーキペダルストロークセンサ60は、運転者がブレーキペダルを踏み込み操作した際の踏み込み量(ブレーキペダル操作量)を検出する。ブレーキペダルストロークセンサ60は、検出したブレーキペダル操作量をコントローラ100に出力する。ウィンカスイッチ65は、運転者によるウィンカレバー操作の有無を検出して、検出信号をコントローラ100に出力する。
コントローラ100は、CPUと、ROMおよびRAM等のCPU周辺部品とから構成され、車両用運転支援装置1全体の制御を行う。コントローラ100は、レーザレーダ10、車速センサ30、ブレーキペダルストロークセンサ60、およびウィンカスイッチ65等から入力される信号に基づいて運転者の運転特性を分析し、運転診断を行う。そして、運転診断結果に基づいて、運転者への情報提供を行う。運転者への情報提供としては、運転者への警報や、運転操作の改善示唆等を行う。コントローラ100における具体的な制御内容は、後述する。
スピーカ130は、コントローラ100からの信号に応じてブザー音や音声により運転者への情報提供を行う。表示ユニット180は、コントローラ100からの信号に応じて運転者への運転に対する警報や改善示唆を与えるような表示を行う。表示ユニット180は、例えばナビゲーションシステム50の表示モニタやコンビメータ等を利用することができる。
次に、第1の実施の形態による車両用運転支援装置1の動作を説明する。まず、その概要を説明する。
コントローラ100は、自車両の走行状態と運転者の運転操作に基づいて、運転者の運転診断を行い、運転診断結果に応じて運転者への警報や運転操作の改善示唆を行う。具体的には、自車両が先行車に追従して走行している場合の運転特性を検出し、検出した運転特性を指標として運転診断を行う。そして、運転診断結果から運転者が普段の運転よりもリスクが高まるような運転を行っている場合、すなわち運転者の運転がハイリスク方向に逸脱している場合には、警報を与えてハイリスクな状態に陥る前に運転者に報知する。一方、運転診断結果から運転者の運転が世間一般の基準と比べて良ければ、安全運転意識をより向上させるように運転者の運転を褒めるような内容の情報提示、すなわち改善示唆を行う。
このように、第1の実施の形態における車両用運転支援装置1は、運転診断により運転者の運転を検出する機能と、検出結果に応じて運転者に警報を与える機能と、検出結果に応じて運転者に改善示唆を与える機能という3つの機能を備え、自己の運転特性を客観的に知ることで運転者に内省を促すとともに、運転特性に応じた助言を呈示することで運転者にとってはリスクをより低くする運転方法を学ぶことができる。
第1の実施の形態による車両用運転支援装置1の動作を、図3を用いて詳細に説明する。図3は、第1の実施の形態のコントローラ100における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS400で、自車両の走行状態を検出する。ここで、自車両の走行状態として、車速センサ30によって検出される自車速Vと、レーザレーダ10によって検出される自車両と先行車との車間距離Dおよび相対速度Vrを取得する。ステップS405では、運転者の操作状態を検出する。ここで、運転者の操作状態として、ブレーキペダルストロークセンサ60によって検出されるブレーキペダル操作量、およびウィンカスイッチ65によって検出されるウィンカレバー操作の有無を取得する。
ステップS407では、後述する自車両の走行シーン判断のために、自車両と先行車との余裕時間TTCおよび車間時間THWを算出する。余裕時間TTCは、先行車に対する現在の自車両の接近度合を示す物理量である。余裕時間TTCは、現在の走行状況が継続した場合、つまり自車速Vおよび相対車速Vrが一定の場合に、何秒後に、車間距離Dがゼロとなり自車両と先行車とが接触するかを示す値であり、以下の(式1)により求められる。
TTC=D/Vr ・・・(式1)
車間時間THWは、自車両が先行車に追従走行している場合に、想定される将来の先行車の車速変化による余裕時間TTCへの影響度合、つまり相対車速Vrが変化すると仮定したときの影響度合を示す物理量である。車間時間THWは、車間距離Dを自車速Vで除したものであり、先行車の現在位置に自車両が到達するまでの時間を示す。車間時間THWは以下の(式2)から求められる。
THW=D/V ・・・(式2)
ステップS410では、自車両の走行シーン判断を行う。車両走行状態や運転者の操作状態といった条件を限定して運転診断の精度向上を図るとともに、運転診断結果に応じて情報提供を行う際に運転者に与える違和感を軽減するために、自車両の走行シーンを判断し、特定の走行シーンである場合のみ、運転診断を行うようにする。具体的には、自車両が同一の先行車に安定して追従している走行シーンに限定して、運転診断を行う。
安定した追従走行シーンの条件の一例は、以下の通りである。
(a)同一の先行車に追従している(例えば、車間距離が前回測定値から4m以上変化していない)
(b)急な接近状態でない(例えば、余裕時間TTCが10秒を上回る)
(c)車間時間THWが所定値以内(例えば、車間時間THWが4秒未満)
(d)運転者によるブレーキ操作がない(例えば、ブレーキペダル操作量が実質的に0)
(e)運転者によるウィンカレバー操作がない(例えば、ウィンカスイッチ65からのオン信号の入力がない)
(f)上記(a)〜(e)の状態が継続している(例えば、5秒以上継続中)
これら(a)〜(f)の条件が全て満たされると、自車両の走行シーンが安定した追従走行シーンであると判断し、運転診断を行うためにステップS412へ進む。一方、(a)〜(f)のいずれかの条件が満たされない場合は、特定の走行シーンに該当しないと判断し、運転診断は行わずにこの処理を終了する。なお、安定した追従走行シーンであるか否かを判断するための条件は、上記(a)〜(f)には限定されず、また、ブレーキ操作の有無やウィンカレバー操作の有無を別の検出手段により検出することも可能である。
ステップS412では、走行場所の判断を行う。具体的には、ナビゲーションシステム50の地図情報に記述されたリンクIDに、データベースに基づいてインデックス番号をラベリングする。リンクIDは、道路属性の変化する属性変化点であるノード同士を接続するリンクに割り付けられたIDであり、各リンクは、道路種別やリンクの長さ(ノード間の距離)等のデータを保有している。ステップS414では、現在時刻の記録を行う。
ステップS416では、ステップS412およびS414のラベリング結果に基づいて、運転者の運転診断を行うために用いるデータを保存する。ここでは、例えば、図4に示すように、リンクIDごとに現在時刻、すなわちそのリンクを走行した時刻、走行距離、リンク内の追従特性指標、そのリンクの走行回数等を構造体形式に書き込み、走行道路データベースを構築する。第1の実施の形態では、運転者の追従特性を表す物理量として、車間時間THWを用いる。追従特性および追従特性指標の算出方法については、運転診断処理において詳細に説明する。
つづくステップS420では、ステップS416で保存したデータを用いて運転者の運転診断を行う。運転診断は、自車両が安定して先行車に追従する走行シーンにおける運転者の運転特性に基づいて行う。追従走行時の運転特性としては、例えば自車両と先行車との車間時間THW、車間時間THWの逆数、車間距離、および車間距離の逆数等があるが、第1の実施の形態では、車間時間THWを用いる場合を例として説明する。
図5に、車両用運転支援装置1のデータ構造を示す。A層は、運転者の現在の運転状態を示す比較的短時間の「このとき」のデータ量を表す。B層は、「このとき」よりも長時間の、運転者のその日の運転状態を示す「この日」のデータ量を表す。C層は、「この日」よりもさらに長時間の、運転者の普段の運転状態、すなわち個人特性を示す「普段」のデータ量を表す。D層は、各運転者の運転を一般的な運転者と比較して診断するための「世間一般」の運転特性を示すデータ量を表す。
A層からD層へと下位の層へ進むほど、データ量は多くなる。各層に含まれるデータ量は、「このとき」「この日」「普段」における車間時間THWの平均値を算出する際の標本数に対応し、標本数を変えることによって、図5に示すようなデータ構造を実現している。各層に含まれるデータの数値は、以下に説明するリアルタイムの計算によって随時更新される。
運転診断処理では、A層〜D層のそれぞれのデータを用いて、異なるタイムスパンでの運転、すなわち、「このとき」「この日」「普段」の運転者の運転を検出する。ステップS420で実行される運転診断処理を、図6のフローチャートを用いて詳細に説明する。
ステップS422では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の追従特性値を算出する。運転者の追従特性値として、「このとき」を定義する所定時間内の車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「このとき」を定義する所定時間は、例えば60秒とし、ステップS410で判断した安定した追従走行シーンで検出された過去から現在までの60秒分のデータを用いて車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。平均値Mean_x(n)と標準偏差Stdev_x(n)を算出するために、以下のパラメータを用いる。
x(n):今回取得したデータ、すなわちステップS407で算出した車間時間THW
K:所定時間内に算出されたTHWのデータ個数
M1(n):今回計算する所定時間内のTHWの合計値
M2(n):今回計算する所定時間内のTHWの自乗和
M1(n-1):前回計算した所定時間内のTHWの合計値
M2(n-1):前回計算した所定時間内のTHWの自乗和
Mean_x(n):今回のデータの平均値、すなわちTHWの平均値
Var_x(n):今回のデータの分散、すなわちTHWの分散
Stdev_x(n):今回のデータの標準偏差、すなわちTHWの標準偏差
ここで、データ個数Kは、所定時間×1秒間当たりのサンプリング(標本)数で決定する。すなわち、「このとき」の所定時間を60秒とし、サンプリング数を5Hzとすると、データ個数K=300となる。
合計値M1(n)と自乗和M2(n)は、これらのパラメータを用いて以下の(式3)(式4)からそれぞれ算出することができる。
M1(n)=M1(n−1)+x(n)−M1(n−1)/K ・・・(式3)
M2(n)=M2(n−1)+(x(n))2−M2(n−1)/K ・・・(式4)
「このとき」における車間時間THWの平均値Mean_x(n)、分散Var_x(n)、および標準偏差Stdev_x(n)は、それぞれ以下の(式5)(式6)(式7)から算出することができる。
Mean_x(n)=M1(n)/K ・・・(式5)
Var_x(n)=M2(n)/K−(M1(n))2/K2 ・・・(式6)
Stdev_x(n)=√(Var_x(n)) ・・・(式7)
ステップS424では、運転者の「この日」の運転診断を行うために、「この日」の運転者の追従特性値、すなわち、「この日」を定義する所定時間内の車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「この日」を定義する所定時間は、例えば360秒とし、ステップS410で判断した安定した追従走行シーンで検出された過去から現在までの360秒分のデータを用いて車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式5)および(式7)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「この日」の所定時間を360秒とし、サンプリング数を5Hzとすると、データ個数K=1800となる。
ステップS426では、運転者の「普段」の運転診断を行うために、「普段」の運転者の追従特性値、すなわち、「普段」を定義する所定時間内の車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「普段」を定義する所定時間は、例えば2160秒とし、ステップS410で判断した安定した追従走行シーンで検出された過去から現在までの2160秒分のデータを用いて車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式5)および(式7)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「普段」の所定時間を2160秒とし、サンプリング数を5Hzとすると、データ個数K=10800となる。
続くステップS428以降の処理では、ステップS422,S424,S426で算出した追従特性値を用いて運転者の運転診断を行う。ここでは、異なるタイムスパンで得られたデータに基づく運転者の追従特性をそれぞれ比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図5に示すデータ構造において、上位層(例えばA層)を下位層(例えばB層)と比較することで、運転診断を行う。
まず、ステップS428では、「この日」の運転者の追従特性に対して「このとき」の運転者の追従特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、「この日」に対する「このとき」の逸脱度は、「この日」の車間時間THWの分布と、「このとき」の車間時間THWの分布の差異を示すものである。「この日」に対する「このとき」の逸脱度を算出するために、「この日」の車間時間THWの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の車間時間THWの分布を短時間の行動分布を表す比較対象の分布として用いる。
逸脱度の算出方法として、ここでは、長時間(例えば「この日」)の行動分布の「平均値−標準偏差」の位置(比較値xstdとする)で、短時間(例えば「このとき」)と長時間(例えば「この日」)の分布関数を比較するという手法を用いる。
逸脱度算出のために、ステップS422、S424で算出した車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を用いて、車間時間THWを正規分布と仮定して確率密度関数を算出する。図7(a)に、実際に算出された車間時間THWの度数分布と正規分布で近似した車間時間THWの確率密度分布(実線で表す)を示し、図7(b)にこれらの累積分布を示す。図7(a)(b)に示すように、車間時間THWを正規分布と仮定した場合の分布と実際の分布がよく合致することがわかる。
そこで、図8(a)(b)に示すように、所定値(比較値xstd)に基づいて設定される比較対象の領域において、基準となる長時間の正規分布に対して比較対象の短時間の正規分布がどれほど逸脱しているかを、逸脱度Distdiffとして算出する。具体的には、比較値xstdよりも車間時間THWの短い領域における比較分布と基準分布との差(図8(a)においてハッチングを施した部分の面積、図8(b)における矢印の長さ)が、逸脱度Distdiffに相当する。図8(c)(d)に示す算出方法については、後述する。
図9(a)(b)に、実際の公道実験から得られた結果をもとに算出した確率密度分布と累積分布を示す。図9(a)において、「このとき」の平均値Mean_x(n)と標準偏差Stdev_x(n)を用いて車間時間THWを正規分布で近似した場合の確率密度分布を一点鎖線で示し、「この日」の平均値Mean_x(n)と標準偏差Stdev_x(n)を用いて車間時間THWを正規分布で近似した場合の確率密度分布を実線で示す。図9(b)において、「このとき」の累積分布を一点鎖線で示し、「この日」の累積分布を実線で示す。図9(a)(b)において、「このとき」の車間時間THWの平均値Mean_x(n)=1.22、標準偏差Stdev_x(n)=0.80であり、「この日」の車間時間THWの平均値Mean_x(n)=1.63、標準偏差Stdev_x(n)=1.00である。
まず、基準分布の平均値Mean_stdと標準偏差Stdev_stdとから、以下の(式8)より比較値xstdを算出する。
xstd=Mean_std−Stdev_std ・・・(式8)
比較値xstdは、基準分布と比較分布とをどの位置で比較するかを表す車間時間THWの値であり、図8(a)(b)においては破線で示す位置に相当する。
次に、基準分布の比較値x
stdにおける累積分布の値を算出する。正規分布の確率密度関数f(x)は、平均値をμ、標準偏差をσとすると、以下の(式9)から算出できる(図8(a)参照)。
(式9)で算出した確率密度関数f(x)を積分すると、以下の(式10)で示すように累積分布関数F(x)が得られる(図8(b)参照)。
基準分布の平均値をμ
std、標準偏差をσ
stdと置くと、比較値x
stdにおける累積分布の確率F
std(x)は、以下の(式11)で算出される。
次に、比較分布の比較値x
stdにおける累積分布の値を算出する。比較分布の平均値をμ
comp、標準偏差をσ
compと置くと、比較値x
stdにおける累積分布の確率F
comp(x)は、以下の(式12)で算出される。
基準の累積分布の確率Fstd(x)と比較対象の累積分布の確率Fcomp(x)との差を、「この日」に対する「このとき」の逸脱度Distdiffとして、以下の(式13)から算出する。
Distdiff=Fcomp(x)−Fstd(x) ・・・(式13)
逸脱度Distdiffがプラス方向に大きくなるほど、「このとき」の運転者の運転が「この日」の運転よりも車間時間THWが短くなる方向、すなわちハイリスク方向に偏っていることを表す。逸脱度Distdiffがマイナス方向に大きくなるほど、「このとき」の運転者の運転が「この日」の運転よりも車間時間THWが長くなる傾向、すなわちリスクの低下する傾向にあることを表す。運転者が常に同じ追従特性で運転を行う場合には逸脱度Distdiffは0となる。
また、ステップS428では、「普段」に対する「このとき」の逸脱度Dsitdiffも算出する。この場合は、「普段」の車間時間THWの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の車間時間THWの分布を短時間の行動分布を表す比較対象の分布として用いる。そして、「普段」の累積分布の確率Fstd(x)と「このとき」の累積分布の確率Fcomp(x)とを用いて、上述した(式13)から「普段」に対する「このとき」の逸脱度Distdiffを算出する。
このように、ステップS428で「この日」に対する「このとき」、および「普段」に対する「このとき」の逸脱度Distdiffをそれぞれ算出した後、ステップS430へ進む。ステップS430では、ステップS428での処理と同様に、「普段」に対する「この日」の逸脱度Distdiffを算出する。なお、ここでは、「普段」の車間時間THWの分布を長時間の行動分布を表す基準の分布として用い、「この日」の車間時間THWの分布を短時間の行動分布を表す比較対象の分布として用いる。
つづくステップS432では、ステップS428での処理と同様に、「世間一般」に対する「普段」の逸脱度Distdiffを算出する。なお、ここでは、「世間一般」の車間時間THWの分布を長時間の行動分布を表す基準の分布として用い、「普段」の車間時間THWの分布を短時間の行動分布を表す比較対象の分布として用いる。「世間一般」の追従特性値、すなわち車間時間THWの平均値および標準偏差は、固定値として予め適切な値を設定しておく。
このように、ステップS420で異なる複数のタイムスパンで得られたデータを用いて運転者の運転診断を行った後、ステップS440へ進む。なお、以降では説明の便宜上、「普段」に対する「このとき」の逸脱度DistdiffをDist_1a、「この日」に対する「このとき」の逸脱度DistdiffをDist_1b、「普段」に対する「この日」の逸脱度DistdiffをDist_2、「世間一般」に対する「普段」の逸脱度DistdiffをDist_3とする。
ステップS440では、ステップS420の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS428で算出した「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1b、またはステップS430で算出した「普段」に対する「この日」の逸脱度Dist_2が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_1a、Dist_1b、またはDist_2が閾値よりも大きい場合は、ステップS450へ進み、運転者への警報呈示を行う。警報呈示を行った後、この処理を終了する。
例えば、「普段」に対する「この日」の逸脱度Dist_2が閾値よりも大きい場合には、スピーカ130によってブザー音とともに「今日は車間距離がいつもよりも短めです。余裕をもって運転しましょう」という音声を出力する。音声情報は、現在、運転者が普段よりも短めの車間距離をとる傾向にあることを知らせるように、あるいは、現在の車間距離よりも長めの車間距離をとるように促す内容を設定する。「普段」に対する「このとき」の逸脱度Dist_1aが閾値よりも大きい場合には、スピーカ130によってブザー音とともに、例えば「お急ぎですか?余裕をもって運転しましょう」という音声を出力する。なお、具体的な音声情報は、これらには限定されない。「この日」に対する「このとき」の逸脱度Dist_1bが閾値より大きい場合にも、予め設定された適切な音声情報を出力する。
ステップS440が否定判定され、警報呈示を行わない場合は、ステップS460へ進み、ステップS420の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS432で算出した「世間一般」に対する「普段」の逸脱度Dist_3が、指導(改善示唆)呈示を行うか否かを判断するための閾値(例えば0.07)よりも小さいか否かを判定する。ここで、指導呈示を行うかを判断するための閾値は、同一の運転者であればほぼ常に逸脱度がその範囲内に収まるような値として予め適切に設定しておく。上述した「0.07」という値は、被験者15人による実車実験の結果に基づいて設定されたものである。この実験結果によると、同一被験者ごとに算出された逸脱度は、常に0.07以内に収まった。
Dist_3が閾値よりも小さい場合は、ステップS470へ進み、運転者への指導呈示を行う。指導呈示を行った後、この処理を終了する。
例えば、指導呈示内容として、運転者の運転を褒める内容の表示および音声を出力する。例えば、「普段」の逸脱度Dist_3を点数に換算して表示する。具体的には、逸脱度Dist_3の符号を反転させた後、50を加算した値を、運転者の普段の運転操作の点数として表示ユニット180に表示する。つまり、リスクが高くなる傾向にある運転者の点数は50点以下、安全運転を心掛ける優良な運転者の点数は50点以上となる。なお、点数は、0〜100の範囲内で表示し、逸脱度Dist_3を換算した点数が100以上の場合は、100点、0以下の場合は0点とする。
また、図10に示すように、世間一般の車間距離の分布を模式的に表示ユニット180に表示し、運転者の「普段」の車間距離が世間一般に対してどの程度であるかがわかるように表示を行う。図10では、世間一般の車間距離の平均値に対して、運転者の車間距離が2段階分長いことを示しており、世間一般に比べてより余裕を持った追従特性を有していることを視覚情報として運転者に提供している。
また、世間一般の運転者に比べて運転者の普段の車間距離が長い傾向にあり、余裕をもった追従走行を行う優良ドライバであることをスピーカ130から出力する音声で運転者に知らせる。例えば、「安全運転を心掛けていますね。この調子でがんばりましょう」という音声を出力する。このように、世間一般の運転者に対して運転者個人の追従運転特性が優れていることを運転者に知らせ、良好な運転を維持するように、あるいはより向上させるように促すための表示や音声の出力を行う。
なお、表示や音声出力を行う場合に、運転者に馴染みの深い「車間距離」ということばを用いる例を説明したが、「車間時間」ということばを用いて表示や音声出力を行うことももちろん可能である。表示内容や音声情報の内容は、運転の傾向を運転者にわかりやすく効果的に伝え、ハイリスクな状態に至らないように警報を行ったり、良好な運転をより改善していくように改善示唆を行ったりすることができれば、上述した例には限定されない。
運転診断結果に基づく表示の別の例を図11に示す。図11において、縦軸は世間一般の追従特性に対する運転者個人の特性を示し、横軸は運転者の普段の追従特性に対する現在の状態を示す。追従特性は、例えば上述したように車間時間THWや車間距離を用いることができる。ステップS430で算出した「普段」に対する「この日」の逸脱度が大きいほど、図中のマーカMを右方向、すなわちハイリスク方向に移動する。また、ステップS432で算出した「世間一般」に対する「普段」の逸脱度が大きいほど、図中のマーカMを上方向、すなわちハイリスク方向に移動する。
このように、図11に示す表示例では、「世間一般」を基準とした運転診断結果と、「普段」、すなわち運転者の個人特性を基準とした運転診断結果とを、2軸から設定される二次元的なマップ上に表示した。なお、横軸は、「この日」に対する「このとき」の逸脱度や、「普段」に対する「このとき」の逸脱度を設定するようにすることもできる。また、縦軸と横軸とを入れ替えて表示することも可能である。
また、図11に示すように二次元マップを複数のブロックに分割し、運転者の追従特性がどの辺りにあるのかを分かりやすくするように各ブロックを色分けすることもできる。例えば、図11の最も右上のブロックを赤で表示し、左下に移動するほど色を薄くして、最も左下のブロックを水色で表示するように設定することもできる。
このように以上説明した第1の実施の形態においては、以下のような作用効果を奏することができる。
(1)車両用運転支援装置1は、車両の走行状態と運転者による運転操作をそれぞれ検出し、走行状態と運転操作から運転者の運転特性を推定する。そして、推定した運転特性に基づいて運転者の運転を診断する。運転者が実際に行う運転操作は、運転者の個人特性と、走行状態等の環境に左右されるので、運転操作と走行状態から運転特性を検出することにより、運転診断を精度よく行うことができる。
(2)車両用運転操作補助装置1は、検出された走行状態と運転操作のデータを蓄積し、蓄積したデータのうち、時間的位置と範囲を限定したデータを用いて運転診断を行う。ここで、時間的位置とは、データが、時間軸上のどの時点(例えば現在、1日前、10日前等)で検出されたかを示し、時間的範囲とは、データが検出された期間/時間帯(例えば1分、10分、1日等)を示す。これにより、運転者の運転がどのような時間変化を示すかを把握して精度よく運転診断を行うことができる。
(3)コントローラ100は、走行状態と運転操作のデータが所定量以上蓄積されると、蓄積されたデータを用いて運転診断を行う。すなわち、運転者の運転特性を判断するために十分な量のデータを用いて運転診断を行うので、精度よい運転診断を行うことができる。
(4)コントローラ100は、検出された走行状態と運転操作について、時間的範囲を複数個設定し、それぞれの時間的範囲で得られるデータをリアルタイムに更新し、複数のデータ間で比較することにより、運転診断を行う。例えば、長期間にわたって取得されたデータと、短期間で取得されたデータとをそれぞれリアルタイムに更新し、データ間で比較を行う。これにより、運転者自身の運転操作がどのような時間変化を示しているかを検出して精度よい運転診断を行うことができる。
(5)現在の走行状態と運転操作を示す第1の時間帯のデータ(短時間のデータ)と、その日の走行状態と運転操作を示し、第1の時間帯よりも長い第2の時間帯のデータ(中時間のデータ)を取得し、第1の時間帯のデータと第2の時間帯のデータとを比較することにより、運転診断を行う。これにより、その日1日の運転と比較して運転者の現在の運転がどのように変化しているかを検出し、現在の運転が良好であるかを精度良く診断することができる。
(6)運転者の普段の走行状態と運転操作を示すデータ(長時間のデータ)を取得し、このデータを取得した時間的範囲以外の時間的範囲で得られた別のデータと比較することにより、運転診断を行う。具体的には、長時間のデータを、世間一般の運転者のデータや、短時間のデータ等と比較することにより、運転診断を行う。これにより、運転者の普段の運転が、世間一般に対して良好であるか、あるいは現在の運転が普段に対してどう変化しているかといった観点から、運転診断を精度よく行うことができる。
(7)コントローラ100は、時間的範囲の異なる複数のデータについて、データ間の所定範囲の値の差分から、運転診断を行う。例えば、図8(a)(b)に示したように、2つの車間時間分布のデータについて、比較値xstd以下の領域における確率の差分を算出する。これにより、車間時間THWの小さいリスクの高まる領域において運転特性のずれを把握し、的確な運転診断を行うことができる。
(8)コントローラ100は、時間的範囲の異なる複数のデータの分布をそれぞれ所定の形状であると仮定し、その分布パラメータを求めることにより複数のデータ分布を算出する。具体的には、データ分布を正規分布と仮定し、データ分布の平均値と標準偏差を求めることにより複数のデータ分布を算出する。図7(a)(b)に示したように、実際のデータは正規分布とよく合致するので、正規分布に近似することで、データの比較を効果的に行うことができる。
(9)コントローラ100は、複数のデータのそれぞれについてデータ分布を算出し、算出した複数のデータ分布のうちの基準となるデータ分布から所定範囲を設定し、設定した所定範囲における複数のデータ間の値の差分により、運転診断を行う。具体的には、基準となる分布の平均値と標準偏差から比較値xstdを算出する。これにより、基準となるデータ分布に対して、比較対象のデータ分布がどれほどずれているかを的確に算出することができる。なお、図8(a)(b)に示した例では、比較値xstd以下の領域を所定範囲として設定しているが、比較値xstdよりも大きな領域を所定範囲として設定したり、比較値xstdを車間時間THWの大きな領域について設定することもできる。
(10)コントローラ100は、複数のデータのうち、時間的範囲が最も広いデータから算出されたデータ分布を基準となるデータ分布として用いる。例えば、運転者の普段のデータと、このときのデータとが取得された場合、普段のデータから得られるデータ分布を基準として利用する。このように、時間的範囲がより広いデータを基準として利用することにより、比較対象のデータを客観的に判断して的確な運転診断を行うことができる。
(11)運転者の運転特性を表す指標として、自車両が先行車に追従して走行する場合の自車両と先行車との車間時間THWを算出する。車間時間THWは、自車両が先行車の現在位置に到達するまでの時間を表すので、自車両が先行車に追従して走行するときの運転者の特性を表す指標として利用することにより、追従走行シーンにおいて的確な運転診断を行うことができる。
−第1の実施の形態の変形例−
以下に、逸脱度Distdiffの別の算出方法について説明する。ここでは、長時間(例えば「この日」)の行動分布と短時間(例えば「このとき」)の行動分布をそれぞれ正規分布で近似し、2つの正規分布が重ならない領域の面積の大きさを逸脱度Distdiffとして算出する。
具体的には、図8(c)(d)に示すように、基準分布と比較分布との交点αよりも車間時間THWの短い領域における比較分布と基準分布との差、すなわち基準分布よりもはみ出した部分の比較分布の面積の大きさを、逸脱度Distdiffとして算出する。
上述した(式9)に基準分布の平均値μ
stdと標準偏差σ
std、および比較分布の平均値μ
compと標準偏差σ
compとを代入して計算すると、基準分布の確率密度関数f
std(x)と比較分布の確率密度関数f
comp(x)は、それぞれ以下の(式14)(式15)で表される。
これらの(式14)(式15)の連立方程式を求めると、2点α、β(α<β)においてそれぞれの分布の頻度が一致する。交点αより車間時間THWが短い領域において2つの正規分布が重ならない範囲の面積を求めるためには、基準分布の累積分布関数を求める上記(式11)、および比較分布の累積分布関数を求める上記(式12)に交点αを代入する。そして、交点αにおける比較分布の累積分布の確率Fcomp(α)から、基準分布の累積分布の確率Fstd(α)を減算する。
逸脱度Distdiffは、以下の(式16)で算出できる。
-Distdiff=Fcomp(α)−Fstd(α) ・・・(式16)
なお、2つの正規分布の重なっている面積Distcorrは、以下の(式17)で求められる。
-Distcorr=1−-Distdiff ・・・(式17)
このように、時間的範囲の異なる複数のデータの分布を比較し、分布の一致度合、すなわち分布の重なり面積を算出し、運転診断を行うこともできる。
《第2の実施の形態》
以下に、本発明の第2の実施の形態による車両用運転支援装置について説明する。第2の実施の形態による車両用運転支援装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第2の実施の形態による車両用運転支援装置1では、1日のうちの時間帯や場所といった走行条件が合致する場合に、過去の走行データと現在の走行データとを比較して運転者の運転診断を行う。
第2の実施の形態による車両用運転支援装置1の動作を、図12を用いて詳細に説明する。図12は、第2の実施の形態のコントローラ100における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS500で、自車両の走行状態として、車速センサ30によって検出される自車速Vと、レーザレーダ10によって検出される自車両と先行車との車間距離Dおよび相対速度Vrを取得する。ステップS502では、運転者の操作状態として、ブレーキペダルストロークセンサ60によって検出されるブレーキペダル操作量、およびウィンカスイッチ65によって検出されるウィンカレバー操作の有無を取得する。ステップS503では、後述する自車両の走行シーン判断のために、自車両と先行車との余裕時間TTCおよび車間時間THWを算出する。
ステップS504では、走行場所の判断を行い、ステップS506では、走行時間の記録を行う。そして、ステップS508でステップS504およびS506のラベリング結果に基づいて、運転者の運転診断を行うために用いるデータを保存する。データ保存までの処理は、上述した第1の実施の形態と基本的に同じである。ただし、走行シーンの判断を、走行履歴の判断後に行う。
続くステップS510では、ステップS508で作成した走行道路データベースより、自車両が現在走行している道路のデータベースがあるか否かを判断する。すなわち、現在走行中の道路を自車両が以前にも走行したことがあり、自車両の現在位置に対応する空間的位置および範囲が一致する過去のデータが保存されているか否かを判断する。データベースがある場合は、ステップS515へ進み、データベースがない場合は、この処理を終了する。
ステップS515では、自車両の走行シーン判断を行う。上述した(a)〜(f)の条件が全て満たされると、自車両の走行シーンが安定した追従走行シーンであると判断し、運転診断を行うためにステップS520へ進む。一方、(a)〜(f)のいずれかの条件が満たされない場合は、特定の走行シーンに該当しないと判断し、運転診断は行わずにこの処理を終了する。
つづくステップS520では、ステップS508で保存したデータを用いて運転者の運転診断を行う。運転診断は、同一の走行条件、すなわち同一の空間的位置および範囲において自車両が安定して先行車に追従する走行シーンにおける運転者の運転特性に基づいて行う。追従走行時の運転特性としては、例えば自車両と先行車との車間時間THW、車間時間THWの逆数、車間距離、および車間距離の逆数等があるが、第2の実施の形態では、車間時間THWを用いる場合を例として説明する。
図13に、第2の実施の形態における車両用運転支援装置1のデータ構造を示す。A層は、運転者の現在の運転状態を示す比較的短時間の「このとき」のデータ量を表す。B層は、「このとき」よりも長時間の、運転者のその日の運転状態を示す「この日」のデータ量を表す。C層は、「この日」よりもさらに長時間の、運転者の普段の運転状態、すなわち個人特性を示す「普段」のデータ量を表す。D層は、各運転者の運転を一般的な運転者と比較して診断するための「世間一般」の運転特性を示すデータ量を表す。
A層からD層へと下位の層へ進むほど、データ量は多くなる。各層に含まれるデータ量は、「このとき」「この日」「普段」における車間時間THWの平均値を算出する際の標本数に対応し、標本数を変えることによって、図13に示すようなデータ構造を実現している。各層に含まれるデータの数値は、第1の実施の形態で説明したリアルタイムの計算によって随時更新される。
第2の実施の形態では、同一道路を過去に走行した際の追従特性に関するデータが保存されており、前回走行時のデータ、または過去に走行した際の全てのデータと、今回のデータとを比較することによって、「このとき」「この日」の運転者の運転を見極める。ステップS520で実行される運転診断処理を、図14のフローチャートを用いて詳細に説明する。
ステップS522では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の追従特性値、すなわち「このとき」を定義する所定時間内の車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を、上述した(式5)(式7)を用いて算出する。ステップS524では、運転者の「この日」の運転診断を行うために、「この日」の運転者の追従特性値、すなわち、「この日」を定義する所定時間内の車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を、上記(式5)および(式7)を用いて算出する。
ステップS526では、現在の追従特性と比較するための基準となる過去のデータの読み込みを行う。ここでは、同一道路の前回走行時の追従特性値のデータ、具体的には車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)をデータベースから読み込む。
つづくステップS528,S530の処理では、ステップS522,S524で算出した追従特性値を用いて運転者の運転診断を行う。ここでは、現在の運転者の追従特性を同一道路を前回走行した時に得られたデータに基づく運転者の追従特性と比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図13に示すデータ構造において、例えば、今回のA層を前回のA層と比較することで、運転診断を行う。
まず、ステップS528では、前回走行時の「このとき」の運転者の追従特性に対して今回の「このとき」の運転者の追従特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、前回走行時の「このとき」に対する今回の「このとき」の逸脱度は、前回走行時時の「このとき」の車間時間THWの分布と、今回の「このとき」の車間時間THWの分布の差異を示すものである。前回走行時の「このとき」の車間時間THWの分布を基準分布として用い、今回の「このとき」の車間時間THWの分布を比較対象の分布として用いる。
具体的には、第1の実施の形態で説明した図8(a)(b)に示す算出方法、もしくは図8(c)(d)に示す算出方法を用いて、上述した(式13)もしくは(式16)から、前回走行時の「このとき」に対する今回の「このとき」の逸脱度Distdiffを算出する。
ステップS530では、ステップS528と同様に、前回走行時の「この日」に対する今回の「この日」の逸脱度Distdiffを算出する。なお、ここでは、同一道路を前回走行した時の「この日」の車間時間THWの分布を基準の分布として用い、今回の「この日」の車間時間THWの分布を比較対象の分布として用いる。
このように、同一道路を過去に走行した際のデータと今回走行時のデータとを用いて運転者の運転診断を行った後、ステップS540へ進む。なお、以降では説明の便宜上、前回走行時の「このとき」に対する今回の「このとき」の逸脱度DistdiffをDist_10、前回走行時の「この日」に対する今回の「この日」の逸脱度DistdiffをDist_20とする。
ステップS540では、ステップS520の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS528で算出した前回の「このとき」に対する今回の「このとき」の逸脱度Dist_10、またはステップS530で算出した前回の「この日」に対する今回の「この日」の逸脱度Dist_20が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_10またはDist_20が閾値よりも大きい場合は、ステップS550へ進み、運転者への警報呈示を行う。警報呈示を行った後、この処理を終了する。
例えば、前回よりも「この日」の逸脱度Dist_20が閾値よりも大きい場合には、スピーカ130によってブザー音とともに「今日は、車間距離がいつもより短めです。余裕をもって運転しましょう」という音声を出力する。音声情報は、現在、前回よりも短めの車間距離をとる傾向にあることを知らせるように、あるいは、現在の車間距離よりも長めの車間距離をとるように促す内容を設定する。なお、前回に対する「この日」の逸脱度Dist_20が閾値よりも大きい場合と、前回に対する「このとき」の逸脱度Dist_10が閾値よりも大きい場合と、両方の逸脱度Dist_10、Dist_20が閾値よりも大きい場合とで、それぞれ音声情報の内容を変更することもできる。
さらに、図15に示すように、現在の車間距離の傾向を表示ユニット180に表示する視覚情報として運転者に提供することもできる。図15に示す表示例では、基準の分布(例えば、前回走行時の車間距離の分布や世間一般の車間距離の分布等)を模式的に表示し、運転者の今回の車間距離がどの程度であるかがわかるように表示を行う。図15では、基準の分布における平均値に対して、運転者の車間距離が2段階分短いことを示しており、現在の運転者の車間距離の取り方が短い傾向にあることを視覚情報として運転者に呈示している。
ステップS540が否定判定され、警報呈示を行わない場合は、ステップS560へ進み、ステップS520の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS528で算出した前回の「このとき」に対する今回の「このとき」の逸脱度Dist_10、またはステップS530で算出した前回の「この日」に対する今回の「この日」の逸脱度Dist_20が、負の値であるか否かを判定する。
Dist_10またはDist_20が負の値で、前回よりも運転者の運転操作が改善されている場合は、ステップS570へ進み、運転者への指導呈示を行う。指導呈示を行った後、この処理を終了する。例えば、指導呈示内容として、運転者の運転を褒める内容の表示および音声を出力する。例えば、「安全運転を心掛けていますね。この調子でがんばりましょう」という音声を出力する。
なお、表示や音声出力を行う場合に、運転者に馴染みの深い「車間距離」ということばを用いる例を説明したが、「車間時間」ということばを用いて表示や音声出力を行うことももちろん可能である。また、上述した第1の実施の形態と同様の表示や音声出力を行うように構成することもできる。
上記第2の実施の形態では、走行条件として、同一の道路を走行している場合に、運転者の運転診断を行うように構成した。すなわち、走行条件として、運転者の運転操作に関して空間的な範囲が合致するかを判断した。ここで、走行条件として、走行時間帯等、運転操作に関して時間的な範囲が合致するか否かを判断することもできる。また、同一道路を同じ時間帯に走行しているかといった、運転操作の空間的な範囲および時間的な範囲が合致するかを、走行条件として判断することもできる。
このように以上説明した第2の実施の形態においては、上述した第1の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
(1)検出した走行状態と運転操作のうち、自車両が走行する空間的位置と範囲を限定したデータを用いて運転診断を行うことにより、走行場所を限定して精度良く運転診断を行うことができる。
(2)具体的には、自車両が現在走行中の空間的範囲において走行状態と運転操作のデータを取得し、同じ空間的範囲で過去に取得・記録したデータと比較することにより運転診断を行う。これにより、運転者の運転が過去と比べてどのように変化しているかを、走行場所を限定して精度良く判断することができる。
−第2の実施の形態の変形例−
現在の追従特性と比較するための基準となる過去のデータとして、過去に同一の道路を走行した際に算出/蓄積した複数のデータを用いることもできる。具体的には、データベースに記憶された同一道路走行時の過去の全ての追従特性値のデータを読み込んで用いる。
複数個の追従特性値のデータを取り扱う場合は、これらのデータをその代表値に置き換える。例えば、追従特性値として車間時間THWの平均値Mean_x(n)と標準偏差Stdev_x(n)を用いる場合は、加法定理を使って代表値を算出する。例えば、過去に取得した2組のデータを用いる場合、分布をN、平均値をμ、標準偏差をσと表すと、N1(μ1、σ1 2)とN2(μ2、σ2 2)の代表値は、N(μ1+μ2,σ1 2+σ2 2)となる。
《第3の実施の形態》
以下に、本発明の第3の実施の形態による車両用運転支援装置について説明する。第3の実施の形態による車両用運転支援装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第3の実施の形態による車両用運転支援装置1では、上述した第1の実施の形態と同様に、先行車に追従走行する際の運転者の追従特性を確率密度関数として算出し、異なるタイムスパンで取得された複数の確率密度分布の差異を表す逸脱度Distdiffを算出して運転診断を行う。ここで、第3の実施の形態においては、追従走行する際の車両の走行状態のデータおよび運転者の操作状態のデータを用いて、追従特性を表す確率密度関数を再帰的(Recursive)に算出する。
第3の実施の形態による車両用運転支援装置1の動作を、図16を用いて詳細に説明する。図16は、第3の実施の形態のコントローラ100における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。ステップS600〜S616での処理は、図3に示したフローチャートのステップS400〜S416での処理と同様であるので説明を省略する。
ステップS620では、ステップS616で保存したデータを用いて運転者の運転診断を行う。運転診断は、自車両が安定して先行車に追従する走行シーンにおける運転者の運転特性に基づいて行う。追従走行時の運転特性としては、例えば自車両と先行車との車間時間THW、車間時間THWの逆数、車間距離、および車間距離の逆数等があるが、第3の実施の形態では、車間時間THWを用いる場合を例として説明する。
車両用運転支援装置1のデータ構造は、図5に示した第1の実施の形態と同様である。A層は、運転者の現在の運転状態を示す比較的短時間の「このとき」のデータ量を、B層は、「このとき」よりも長時間の、運転者のその日の運転状態を示す「この日」のデータ量を表す。C層は、「この日」よりもさらに長時間の、運転者の普段の運転状態、すなわち個人特性を示す「普段」のデータ量を表し、D層は、各運転者の運転を一般的な運転者と比較して診断するための「世間一般」の運転特性を示すデータ量を表す。
A層からD層へと下位の層へ進むほど、データ量は多くなる。各層に含まれるデータ量は、「このとき」「この日」「普段」における車間時間THWの平均値を算出する際の標本数に対応し、標本数を変えることによって、図5に示すようなデータ構造を実現している。各層に含まれるデータの数値は、以下に説明するリアルタイムの計算によって随時更新される。
運転診断処理では、A層〜D層のそれぞれのデータを用いて、異なるタイムスパンでの運転、すなわち、「このとき」「この日」「普段」の運転者の運転を見極める。ステップS620で実行される運転診断処理を、図17のフローチャートを用いて詳細に説明する。
ステップS622では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の追従特性値を算出する。運転者の追従特性値として、「このとき」を定義する所定時間内の車間時間THWの分布を算出する。ここで、「このとき」を定義する所定時間(タイムウィンドウ)は、例えば60秒とし、ステップS610で判断した安定した追従走行シーンで検出された過去から現在までの60秒分のデータを用いて車間時間THWの分布を算出する。
具体的に、車間時間THWの分布を算出するために、「このとき」を定義する所定時間内の車間時間THWの確率密度を再帰的(Recursive)に算出する。そこで、まず、図18に示すように車間時間THWのデータをいれる複数のビンを用意する。各ビンはTHW=0からTHW=4まで、0.2刻みで設定され、合計21個のビンBin(配列)が用意される。図18に示す例では、THW0.0(Bin_1)という左端のビンに0.0から0.1のTHWのデータを入れるように設定し、THW0.2(Bin_2)という左から2番目のビンに0.1から0.3のデータを入れるように設定している。
次に、それぞれのビンBin_1〜Bin_21に初期値として所定値を入れる。
所定値は、全部のビンに入れられた所定値の総和が1になるような値を設定する。例えば、図19(a)に示すように、全てのビンBin_1〜Bin_21に同じ値(1/21)を入れるように所定値(=1/ビンの総数)を設定することができる。ただし、ある値を中央に持つつりがね状の分布を示すような車間時間THWなどの場合は、図19(b)に示すように、前回算出した分布を所定値にすることが望ましい。すなわち、前回算出した分布の確率密度を各ビンBin_1〜Bin_21のそれぞれの初期値として設定する。これにより、より精度よく分布を算出することができる。なお、図19(a)(b)の横軸は車間時間THW(s)、縦軸は確率密度をそれぞれ示している。
「このとき」を定義する所定時間(タイムウィンドウ)は、上述したように例えば60秒とする。設定したタイムウィンドウ内のデータ個数をNと定義する。
次に、確率密度をリアルタイムに計算する。
車間時間THWの新しいデータを取得するたびに、新しい車間時間THWがどのビンに該当するかを判断する。新しいデータが入るビンと入らないビンと確率密度の計算方法が異なる。新しいデータが入るビンの確率密度Bin_x(n)は、以下の(式18)を用いて算出する。
Bin_x(n)={Bin_x(n−1)+1/N}÷(1+1/N) ・・・(式18)
新しいデータが入らないビンの確率密度Bin_x(n)は、以下の(式19)を用いて算出する。
Bin_x(n)={Bin_x(n−1)}÷(1+1/N) ・・・(式19)
このように、「このとき」の車間時間THWの確率密度をリアルタイムで算出することにより、実際の分布によく合致した車間時間THWの分布を得ることができる。図20に、車間時間THWの分布の一例を示す。図20に示す分布は、Bin_5でモード値(最頻値)が現れている。なお、見やすくするためにBin_1〜Bin_10の10個のビンのみを示している。
ステップS624では、運転者の「この日」の運転診断を行うために、「この日」の運転者の追従特性値、すなわち、「この日」を定義する所定時間内の車間時間THWの分布を算出する。ここで、「この日」を定義する所定時間(タイムウィンドウ)は、例えば360秒とし、ステップS610で判断した安定した追従走行シーンで検出された過去から現在までの360秒分のデータを用いて、上述した「このとき」と同様に車間時間THWの分布を算出する。
ステップS626では、運転者の「普段」の運転診断を行うために、「普段」の運転者の追従特性値、すなわち、「普段」を定義する所定時間内の車間時間THWの分布を算出する。ここで、「普段」を定義する所定時間(タイムウィンドウ)は、例えば2160秒とし、ステップS610で判断した安定した追従走行シーンで検出された過去から現在までの2160秒分のデータを用いて、上述した「このとき」と同様に車間時間THWの分布を算出する。
続くステップS628以降の処理では、ステップS622,S624,S626で算出した異なるタイムスパンで得られたデータに基づく運転者の追従特性をそれぞれ比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図5に示すデータ構造において、上位層(例えばA層)を下位層(例えばB層)と比較することで、運転診断を行う。
まず、ステップS628では、「この日」の運転者の追従特性に対して「このとき」の運転者の追従特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、「この日」に対する「このとき」の逸脱度は、「この日」の車間時間THWの分布と、「このとき」の車間時間THWの分布の差異を示すものである。
そこで、基準の分布である「この日」の車間時間THWの分布のモード値、および比較対象の分布である「このとき」の車間時間THWの分布のモード値をそれぞれ算出する。そして、それぞれのモード値よりも車間時間THWが短い側、すなわちハイリスクな方向に分布する車間時間THWの確率を求める。ハイリスク側の基準分布の確率F
std、および比較分布の確率F
compは、それぞれ以下の(式20)(式21)から算出できる。
「この日」に対する「このとき」の逸脱度Distdiffは、以下の(式22)から算出することができる。
Distdiff=Fcomp−Fstd ・・・(式22)
逸脱度Distdiffがプラス方向に大きくなるほど、「このとき」の運転者の運転が「この日」の運転よりも車間時間THWが短くなる方向、すなわちハイリスク方向に偏っていることを表す。逸脱度Distdiffがマイナス方向に大きくなるほど、「このとき」の運転者の運転が「この日」の運転よりも車間時間THWが長くなる傾向、すなわちリスクの低下する傾向にあることを表す。運転者が常に同じ追従特性で運転を行う場合には逸脱度Distdiffは0となる。
また、ステップS628では、「普段」に対する「このとき」の逸脱度Dsitdiffも算出する。この場合は、「普段」の車間時間THWの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の車間時間THWの分布を短時間の行動分布を表す比較対象の分布として用いる。そして、ハイリスク側の「普段」の確率Fstdと「このとき」の確率Fcompとを用いて、上述した(式22)から「普段」に対する「このとき」の逸脱度Distdiffを算出する。
このように、ステップS628で「この日」に対する「このとき」の逸脱度Distdiffを算出した後、ステップS630へ進む。ステップS630では、ステップS628での処理と同様に、「普段」に対する「この日」の逸脱度Distdiffを算出する。なお、ここでは、「普段」の車間時間THWの分布を基準の分布として用い、「この日」の車間時間THWの分布を比較対象の分布として用いる。
つづくステップS632では、ステップS628での処理と同様に、「世間一般」に対する「普段」の逸脱度Distdiffを算出する。なお、ここでは、「世間一般」の車間時間THWの分布を基準の分布として用い、「普段」の車間時間THWの分布を比較対象の分布として用いる。「世間一般」の追従特性値、すなわちモード値よりもハイリスク側の確率Fstdは、固定値として予め適切な値を設定しておく。
このように、ステップS620で異なる複数のタイムスパンで得られたデータを用いて運転者の運転診断を行った後、ステップS640へ進む。なお、以降では説明の便宜上、「普段」に対する「このとき」の逸脱度DistdiffをDist_1a、「この日」に対する「このとき」の逸脱度DistdiffをDist_1b、「普段」に対する「この日」の逸脱度DistdiffをDist_2、「世間一般」に対する「普段」の逸脱度DistdiffをDist_3とする。
ステップS640では、ステップS620の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS628で算出した「普段」に対する「このとき」の逸脱度DistdiffをDist_1a、「この日」に対する「このとき」の逸脱度DistdiffをDist_1b、またはステップS630で算出した「普段」に対する「この日」の逸脱度Dist_2が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_1a、Dist_1b、またはDist_2が閾値よりも大きい場合は、ステップS650へ進み、運転者への警報呈示を行う。警報呈示の内容は、上述した第1の実施の形態と同様である。警報呈示を行った後、この処理を終了する。
ステップS640が否定判定され、警報呈示を行わない場合は、ステップS660へ進み、ステップS620の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS632で算出した「世間一般」に対する「普段」の逸脱度Dist_3が、指導(改善示唆)呈示を行うか否かを判断するための閾値(例えば0.07)よりも小さいか否かを判定する。ここで、指導呈示を行うかを判断するための閾値は、同一の運転者であればほぼ常に逸脱度がその範囲内に収まるような値として予め適切に設定しておく。
Dist_3が閾値よりも小さい場合は、ステップS670へ進み、運転者への指導呈示を行う。指導呈示の内容は、上述した第1の実施の形態と同様である。指導呈示を行った後、この処理を終了する。
このように、以上説明した第3の実施の形態においては、上述した第1〜2の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
(1)走行状態と運転操作のデータから、運転特性を表す確率密度関数を再帰的に算出する。これにより、データ分布をリアルタイムに判定することができ、実際の分布により近いデータ分布を得ることができる。また、再帰的に算出することにより、データ蓄積に要するメモリ容量を少なくすることができ、効率的である。
(2)異なる時定数をもつ複数の確率密度関数をそれぞれ再帰的に算出することにより、過去の長期間のデータに基づく確率密度関数を算出する場合でも、より実際に近いデータ分布を取得することができるとともに、データ蓄積のためのメモリ容量を少なくすることができる。
《第4の実施の形態》
以下に、本発明の第4の実施の形態による車両用運転支援装置について説明する。図21に、第4の実施の形態による車両用運転支援装置2の構成を示すシステム図を示す。
まず、車両用運転支援装置2の構成を説明する。
舵角センサ5は、例えばステアリングコラムもしくはステアリングホイール(不図示)付近に取り付けられた角度センサであり、ステアリングシャフトの回転からドライバの転舵による操舵角を検出する。検出した操舵角は、コントローラ200に出力される。
前方カメラ15は、フロントウィンドウ上部に取り付けられた小型のCCDカメラ、またはCMOSカメラ等であり、前方道路の状況を画像として検出する。コントローラ200は、前方カメラ15からの画像信号に画像処理を施し、自車両前方領域に存在するレーンマーカ等を検出する。なお、前方カメラ15による検知領域は車両の前後方向中心線に対して水平方向に±30deg程度であり、この領域に含まれる前方道路風景が画像として取り込まれる。
車速センサ30は、車輪の回転数や変速機の出力側の回転数を計測することにより自車両の車速を検出し、検出した自車速をコントローラ200に出力する。
ナビゲーションシステム50は、GPS受信機、地図データベース、および表示モニタ等を備えており、経路探索および経路案内等を行うシステムである。ナビゲーションシステム50は、GPS受信機から得られる自車両の現在位置と地図データベースに格納された道路情報に基づいて、自車両が走行する道路の種別や道路幅員等の情報を取得することができる。
コントローラ200は、CPUと、ROMおよびRAM等のCPU周辺部品とから構成される電子制御ユニットであり、車両用運転支援装置2全体の制御を行う。コントローラ200は、舵角センサ5、前方カメラ15、車速センサ30、ナビゲーションシステム50等から入力される信号に基づいて運転者の運転特性を分析し、運転診断を行う。そして、運転診断結果に基づいて、運転者への情報提供を行う。運転者への情報提供としては、運転者への警報や、運転操作の改善示唆等を行う。コントローラ200における具体的な制御内容は、後述する。
スピーカ130は、コントローラ200からの信号に応じてブザー音や音声により運転者への情報提供を行う。表示ユニット180は、コントローラ200からの信号に応じて運転者への運転に対する警報や改善示唆を与えるような表示を行う。表示ユニット180は、例えばナビゲーションシステム50の表示モニタやコンビメータ等を利用することができる。
次に、第4の実施の形態による車両用運転支援装置2の動作を説明する。まず、その概要を説明する。
車両用運転支援装置2のコントローラ200は、自車両の走行状態と運転者の運転操作に基づいて、運転者の運転診断を行い、運転診断結果に応じて運転者への警報や運転操作の改善示唆を行う。具体的には、操舵角信号を用いて運転操作の不安定な状態を検出し、運転者の運転診断を行う。運転操作の不安定な状態を検出するために、第4の実施の形態においては、ステアリングエントロピー法を用いる。これは、ステアリング操作(操舵角)の滑らかさから運転者の運転操作の不安定度を算出する手法である。
そして、運転診断結果から運転者が普段の運転よりもリスクが高まるような運転を行っている場合、すなわち運転者の運転がハイリスク方向に逸脱している場合には、警報を与えてハイリスクな状態に陥る前に運転者に報知する。一方、運転診断結果から運転者の運転が世間一般の基準と比べて良ければ、安全運転意識をより向上させるように運転者の運転を褒めるような内容の情報提示、すなわち改善示唆を行う。
このように、第4の実施の形態における車両用運転支援装置1は、運転診断により運転者の運転を検出する機能と、検出結果に応じて運転者に警報を与える機能と、検出結果に応じて運転者に改善示唆を与える機能という3つの機能を備え、自己の運転特性を客観的に知ることで運転者に内省を促すとともに、運転特性に応じた助言を呈示することで運転者にとってはリスクをより低くする運転方法を学ぶことができる。
ここで、ステアリングエントロピー法について説明する。
一般的に、運転者の注意が運転に集中していない状態では、操舵が行われない時間が運転に集中した正常運転時よりも長くなり、大きな操舵角の誤差が蓄積される。したがって、運転者の注意が運転に戻ったときの修正操舵量が大きくなる。ステアリングエントロピー法は、この特性に着目したものであり、特性値としてα値と、α値を基準に算出された操舵角エントロピーHpを用いる。基準となる操舵角エントロピーと、計測された操舵角に基づいて算出された操舵角エントロピーとを比較することにより、基準に対する運転操作の不安定な状態を検出する。
なお、α値は、操舵角の時系列データに基づいて一定時間内の操舵誤差、すなわちステアリングが滑らかに操作されたと仮定した場合の操舵角の推定値と実際の操舵角との差を求め、操舵誤差の分布(ばらつき)を測定して90パーセントタイル値(操舵誤差の90%が含まれる分布の範囲)を算出したものである。
ステアリングエントロピー値、すなわちHp値は、操舵誤差分布のあいまいさ(不確実性)を表す。Hp値は、α値と同様に、ステアリング操作が滑らかで安定している場合は小さくなり、ガクガクと不安定な場合は大きくなる。Hp値はα値によって補正され、運転者の技量や癖により影響を受けない運転者不安定度として用いることができる。
第4の実施の形態においては、一般運転者群の操舵誤差分布を用いて算出した操舵エントロピーを基準状態とする。そして、計測された運転者の操舵誤差分布を用いて操舵角エントロピーを算出し、運転者が基本的に有する運転操作の不安定な状態を検出することにより、運転診断を行う。
なお、操舵誤差は、道路線形や運転者の負荷の状態に影響を受けるため、運転者が無負荷の状態で、基準となる操舵誤差分布を計測する必要がある。そこで、第4の実施の形態においては、これらの影響を受けにくくするために、直線路とみなせる道路線形走行時の操舵角データを用いるとともに、長時間計測した操舵角データに基づいて操舵誤差分布を求める。
第4の実施の形態による車両用運転支援装置2の動作を、図22を用いて詳細に説明する。図22は、第4の実施の形態のコントローラ200における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
ステップS1011では、舵角センサ5で検出された操舵角信号θを読み込む。ステップS1013では、自車両が走行する道路の道路曲率信号ρを読み込む。ここで、自車両の走行道路の道路曲率信号ρは、例えば、ナビゲーションシステム50の道路地図データベースに含まれる道路曲率データや道路線形情報を利用して取得することができる。あるいは、前方カメラ15で撮影された自車両前方画像に画像処理を施してレーンマーカを検出し、検出したレーンマーカから道路曲率を算出することもできる。ステップS1015で、車速センサ30によって検出された自車両の車速信号Vを読み込む。
つづくステップS1017およびS1019で、操舵角エントロピーの算出を行うか否かを判定する。具体的には、ステップS1017で、ステップS1013で読み込んだ道路曲率信号ρが直線路走行中と判定するための道路曲率所定値ρoより小さいか否かを判定する。道路曲率信号ρが所定値ρo以下の場合は自車両が直線路を走行中であると判断して、ステップS1019へ進む。ρ>ρoの場合は、この処理を終了する。
ステップS1019では、ステップS1015で読み込んだ車速信号Vが所定値Voより大きいか否かを判定する。所定値Voは、障害物の多い市街路等以外の道路を自車両が安定した車速で走行しているか否かを判断するためのしきい値であり、例えばVo=60km/h程度に設定する。車速信号Vが所定値Voよりも大きい場合は、ステップS1011へ進み、所定Vo以下の場合は、この処理を終了する。
ステップS1021では、道路曲率信号ρが所定値ρo以下、かつ自車速Vが所定値Voより大きいという条件の下で計測された操舵角信号θのサンプル数nが、所定値N1よりも大きいか否かを判定する。ここで、所定値N1は、運転者の負荷の状態の影響を受けにくくするために十分な長期間のデータを取得したかを判断するためのしきい値であり、例えばN1=100000個とする。なお、100000個のデータは、3週間程度の走行期間で得られると予測される。サンプル数nが所定値N1よりも多い場合は、ステップS1023へ進み、所定値N1以下の場合は、この処理を終了する。
ステップS1023では、長期間に計測された操舵角信号θを用いて操舵角エントロピーHp1(以降、長期間操舵角エントロピーと呼ぶ)を算出する。長期間操舵角エントロピーHp1は、運転者が基本的に有する運転操作の不安定な状態を表す値であり、運転者の普段の不安定度であるといえる。
ここで、図23に、操舵角エントロピーを算出するために用いる特殊記号とその名称を示す。操舵角円滑値θn-tildeは、量子化ノイズの影響を低減した操舵角である。操舵角の推定値θn-hatは、ステアリングが滑らかに操作されたと仮定してサンプリング時点における操舵角を推定した値である。操舵角推定値θn-hatは、以下の(式23)に示すように、操舵角円滑値θn-tildeに対して二次のテイラー展開を施して得られる。
(式23)において、tnは操舵角θnのサンプリング時刻である。
操舵角円滑値θn-tildeは、量子化ノイズの影響を低減するために、3個の隣接操舵角θnの平均値として以下の(式24)から算出される。
(式24)において、lは、操舵角円滑値θn-tildeの算出時間間隔を150msec、すなわち手動操作において人間が断続的に操作可能な最小時間間隔とした場合に、150msec内に含まれる操舵角θnのサンプル数を表す。
操舵角θnのサンプリング間隔をTsとすると、サンプル数lは、以下の(式25)で表される。
l=round(0.15/Ts) ・・・(式25)
(式24)において、k=1,2,3の値をとり、(k*1)により150msec間隔の操舵角とそれに隣接する合計3個の操舵角θnに基づいて、円滑値θn-tildeを求めることができる。したがって、このような円滑値θn-tildeに基づいて算出される推定値θn-hatは、実質的に150msec間隔で得られた操舵角θにより算出されたことになる。
サンプリング時点における操舵誤差enは、ステアリング操作が滑らかに行われたと仮定した場合の操舵角推定値θn-hatと実際の操舵角θnとの差として、以下の(式26)から算出できる。
ただし、操舵誤差enは、人間が断続的に操作可能な最小時間間隔、150msecごとの操舵角θnに対してのみ算出するものとする。
これらの用語を参照して、長期間操舵角エントロピーHp1の算出処理を、図24のフローチャートを用いて説明する。
ステップS1031で、上述した道路曲率および車速の条件下でサンプリング間隔Tsで計測されたn個の操舵角信号θnの時系列データを収集する。サンプリング間隔Tsは、例えば50msecとする。
ステップS1032では、150msec間隔の隣接する3個の操舵角θnを用いて、上記(式24)から3個の操舵角円滑値θn-tildeを算出する。3個の操舵角円滑値θn-tildeは、以下の(式27)で表される。
ステップS1033では、ステップ1032で算出した3個の操舵角円滑値θn-tildeを用いて、上記(式23)から操舵角の推定値θn-hatを算出する。推定値θn-hatは、以下の(式28)で表される。
ステップS1034では、ステップS1033で算出した操舵角推定値θn-hatと実際の操舵角信号θnとを用いて、上記(式26)から操舵誤差enを算出する。
ステップS1035では、ステップS1034で算出された操舵誤差enを、図25に示すように、基準状態のα値(=αo)による9区分b1〜b9に分類し、各区分biに含まれる操舵誤差enの度数の全度数に対する確率Piを求める。ここで、基準状態のα値(=αo)は、一般運転者群(世間一般の運転者)の操舵角信号に基づいて予め設定し、コントローラ200のメモリに格納しておく。そして、図22に示すプログラム実行時に区分biを設定しておく。
つづくステップS1036では、ステップS1035で算出した確率Piを用いて、以下の(式29)から長期間操舵角エントロピーHp1を算出する。
なお、長期間操舵角エントロピーHp1の「p」は、操舵角エントロピーが確率分布P={Pi}に従うことを示す。
長期間操舵角エントロピーHp1値は、操舵誤差enの分布の峻険度を表し、操舵誤差enが各区分biに等分に含まれる場合に、Hp1値が1となるように、底が9の対数により演算する。なお、操舵誤差enの分布の中心の3区分b4〜b6に全度数の90%が含まれるように区分を設定しているので、基準状態ではHp1値が1になることはない。
長期間操舵角エントロピーHp1が小さいほど操舵誤差enの分布の峻険度が大きく、操舵誤差enの分布が一定の範囲に収まっている。すなわち、ステアリング操作が滑らかに行われ、運転が安定な状態にあることを示す。反対に、長期間操舵角エントロピーHp1値が大きいほど操舵誤差enの分布の峻険度が小さく、操舵誤差enの分布がばらついている。すなわち、ステアリング操作がガクガクしており、運転が不安定な状態にあることを示す。
このように、ステップS1023で長期間操舵角エントロピーHp1を算出した後、ステップS1025へ進む。ステップS1025では、長期間操舵角エントロピーHp1に応じて運転者に警報あるいは指導(改善示唆)の呈示を行う。長期間操舵角エントロピーHp1が大きいほど、一般運転者群(世間一般)の平均的な操舵角エントロピーと比較して運転操作の不安定度が大きいと考えることができる。
そこで、例えば図26に示すように、長期間操舵角エントロピーHp1の大きさを5段階のレベル(SSS,SS,SM,SL,SLL)に分類し、算出された長期間操舵角エントロピーHp1のレベルを運転者に知らせる。なお、図26に示す分類において、一般運転者群(世間一般)の平均的な操舵角エントロピーが中央のレベルSMに入るように、5段階のレベルを適切に設定しておく。
図27に、長期間操舵角エントロピーHp1の分類結果に応じた報知内容の一例を示す。長期間操舵角エントロピーHp1の分類結果がレベルSLLの場合には、「運転の不安定度が大きいタイプです」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果がレベルSLの場合は、「運転の不安定度がやや大きいタイプです」という内容のテキストを表示する。分類結果がレベルSMで、一般運転者群の平均的な操舵角エントロピーと同等の場合には、「運転の不安定度は普通です」という内容のテキストを表示する。分類結果がレベルSSの場合は、「運転の不安定度がやや小さいタイプです」という内容のテキストを表示する。分類結果がレベルSSSの場合は、「運転の不安定度が小さいタイプです」という内容のテキストを表示する。なお、図27に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
このように、以上説明した第4の実施の形態においては、上述した第1〜3の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
運転操作として操舵角θを検出し、運転特性を表す指標として、操舵角を用いて運転者による操舵操作の不安定度を表す操舵角エントロピーHpを算出する。これにより、自車両の左右方向に関する運転操作について、精度良く運転診断を行うことができる。
−第4の実施の形態の変形例1−
ここでは、長期間に計測された運転者の操舵角誤差分布を用いて算出した長期間操舵角エントロピーHp1を基準状態とする。そして、中期間に計測された運転者の操舵誤差分布を用いて操舵角エントロピーを算出し、運転者が基本的に有する運転操作の不安定な状態からの逸脱を検出することにより、運転診断を行う。
第4の実施の形態の変形例1による車両用運転支援装置2の動作を、図28,29を用いて詳細に説明する。図28,29は、第4の実施の形態の変形例1のコントローラ200における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。ステップS1041〜S1053での処理は、図22に示したフローチャートのステップS1011〜S1023での処理と同様であるので説明を省略する。ただし、ステップS1051でサンプル数nが所定値N1以下であると判定された場合は、処理を終了せずに、図29のステップS1057へ進む。
ステップS1053で基準状態を表す長期間操舵角エントロピーHp1を算出した後、ステップS1055では、中期間の操舵角エントロピーを算出するために用いるα値を算出する。ここでは、長期間に計測された操舵角信号θを用いて、運転者個人のα値(以降、α1値とする)を算出する。ここでの処理を、図30のフローチャートを用いて説明する。
ステップS1081では、上述した道路曲率および車速の条件下でサンプリング間隔Tsで計測されたn個の操舵角信号θnの時系列データを収集する。サンプリング間隔Tsは、例えば50msecとする。ステップS1082では、150msec間隔の隣接する3個の操舵角θnを用いて、上記(式24)から3個の操舵角円滑値θn-tildeを算出する。
ステップS1083では、ステップ1082で算出した3個の操舵角円滑値θn-tildeを用いて、上記(式23)から操舵角の推定値θn-hatを算出する。ステップS1084では、ステップS1083で算出した操舵角推定値θn-hatと実際の操舵角信号θnとを用いて、上記(式26)から操舵誤差enを算出する。
続くステップS1085では、所定の操舵誤差ごとに操舵誤差enの度数を数える。ここで、所定の操舵誤差は、舵角センサ5の分解能を考慮して決定する。ここでは、例えば図31に示すように、0.001radごとに操舵誤差enを分類する。図32に、操舵誤差enの度数の分布の一例を示す。ステップS1086では、操舵誤差の区分を示すiに0を設定する。
ステップS1087では、全ての操舵誤差の全度数に対して、操舵誤差en=0.000radにおける度数T0.000の確率Pが90%以上であるか否かを判定する。度数T0.000の確率Pが90%以上の場合は、ステップS1090へ進む。この場合、i=0であるので、α1値は、α1=0.000radとなる。ステップS1087が否定判定されると、ステップS1088へ進む。ステップS1088では、iを1インクリメントして(i+1)に設定する。
ステップS1089では、操舵誤差の区分を広げて、−0.001radから+0.001radまでの操舵誤差enの度数(T0.000+T0.001+T−0.001)の、全ての操舵誤差の全度数に対する確率Pが90%以上か否かを判定する。確率Pが90%以上の場合は、ステップS1090へ進む。この場合、i=1であるので、α1値は、α1=0.001となる。ステップS1089が否定判定されると、ステップS1088へ戻り、再びiをインクリメントしてステップS1089の判定を繰り返す。
このようにステップS1055でα1値を算出した後、図29のステップS1057へ進む。ステップS1057では、道路曲率信号ρが所定値ρo以下、かつ自車速Vが所定値Voより大きいという条件の下で計測された操舵角信号θのサンプル数nが、所定値N2よりも大きいか否かを判定する。ここで、所定値N2は、運転者の普段の運転操作からの逸脱を判定するために十分な中期間(例えば1日程度の走行期間)のデータを取得したかを判断するためのしきい値であり、例えばN2=7200個とする。サンプル数nが所定値N2よりも多い場合は、ステップS1059へ進み、所定値N2以下の場合は、この処理を終了する。
ステップS1059では、中期間に計測された操舵角信号θを用いて中期間操舵角エントロピーHp2を算出する。中期間操舵角エントロピーHp2は、長期間に計測された操舵角信号θを基準状態として中期間計測された操舵角信号θを用いて算出される値であり、運転者が基本的に有する運転操作の不安定な状態からの逸脱(ずれ)を表す値であるといえる。中期間操舵角エントロピーHp2の算出方法は、図24のフローチャートを用いて説明した長期間操舵角エントロピーHp1と同様である。ただし、ステップS1055で算出した運転者個人のα1値をα値として利用する。
ステップS1061では、ステップS1053で算出した長期間操舵角エントロピーHp1と、ステップS1059で算出した中期間操舵角エントロピーHp2との差分ΔHp2(=Hp2−Hp1)を算出する。そして、算出した差分ΔHp2を用いて運転操作不安定状態の判定を行う。中期間操舵角エントロピーHp2が長期間操舵角エントロピーHp1に対して大きいほど、運転者が基本的に有する運転の不安定度と比較して運転操作の不安定度が大きくなっていると考えることができる。そこで、例えば操舵角エントロピーの差分ΔHp2が所定値TH2よりも大きい場合は、運転操作が不安定な状態にあると判定し、ステップS1063へ進む。
ステップS1063では、運転者の運転操作が不安定状態にあることを報知する。ここでは、例えば図33に示すように、所定値TH2以上の領域において、操舵角エントロピーの差分ΔHp2の大きさに応じて2段階のレベル(D2P,D2PP)に分類する。そして、ステップS1061で算出された操舵角エントロピーの差分ΔHp2が該当するレベルを運転者に知らせる。
図34に、操舵角エントロピーの差分ΔHp2の分類結果に応じた報知内容の一例を示す。差分ΔHp2の分類結果が所定値TH2L(>TH2)よりも大きいレベルD2PPの場合には、「普段より運転の不安定度が大きくなっています」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果が所定値TH2よりも大きいレベルD2Pの場合は、「普段より運転の不安定度がやや大きくなっています」という内容のテキストを表示する。なお、図34に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
ステップS1061が否定判定されると、ステップS1063における不安定状態の報知処理はスキップする。このように、普段の運転操作の不安定状態からの逸脱を検出して運転者に報知した後、ステップS1065以降の処理で、過去と現在の中期間操舵角エントロピーの比較結果に基づく運転者への報知を行う。具体的には、過去に算出された中期間操舵角エントロピー(以降、Hp2pと表す)と、最新の中期間操舵角エントロピーHp2を比較することで、中期間の運転操作の不安定度の変化を検出して運転者に報知する。
まず、ステップS1065では、同一の運転者について過去に算出され、記憶されていた過去の中期間操舵角エントロピーHp2pと、ステップS1059で算出された最新の中期間操舵角エントロピーHp2の差分ΔHp2pを算出する。そして、算出した差分ΔHp2pを用いて運転操作の不安定度の変化を判定する。過去の中期間操舵角エントロピーHp2pに対して最新の中期間操舵角エントロピーHp2が小さいほど、すなわち、差分ΔHp2pの符号が負で、値が大きいほど、以前と比較して運転操作の不安定度が小さくなる方向に変化したと考えることができる。そこで、例えば操舵角エントロピーの差分ΔHp2pが所定値TH2pよりも小さい場合は、運転操作の不安定度が小さくなっていると判定し、ステップS1067へ進む。
ステップS1067では、運転者の運転操作の不安定度が小さくなって操舵操作が滑らかになってきていることを報知する(運転改善示唆)。ここでは、例えば図35に示すように、所定値TH2Pより小さい領域において、操舵角エントロピーの差分ΔHp2pの大きさに応じて2段階のレベル(D2PM,D2PMM)に分類する。そして、ステップS1065で算出された操舵角エントロピーの差分ΔHp2pが該当するレベルを運転者に知らせる。
図36に、操舵角エントロピーの差分ΔHp2pの分類結果に応じた報知内容の一例を示す。差分ΔHp2pの分類結果が所定値TH2Pよりも小さいレベルD2PMの場合には、「以前より運転の不安定度がやや小さくなっています」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果が所定値TH2PL(<TH2P)よりも小さいレベルD2PMMの場合は、「以前より運転の不安定度が小さくなっています」という内容のテキストを表示する。なお、図36に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
ステップS1065が否定判定されると、ステップS1067における運転改善示唆処理をスキップしてステップS1069へ進む。ステップS1069では、次回の処理に備えて、ステップS1059で算出した中期間操舵角エントロピーHp2を、過去の中期間操舵角エントロピーHp2pとしてセットする。
ステップS1071以降の処理では、運転者の長期間の操舵角信号θに基づいて算出された運転者個人のα1値を用いて、運転者に対する運転改善示唆を行う。α1値は、上述したように、運転者の長期間の操舵角信号データに基づいて算出された操舵誤差の分布における90%タイル値を算出したものである。したがって、α1値は、運転者の長期間の操舵誤差の分布を表すファクターであるといえる。
ステップS1071では、ステップS1055で算出したα1値を所定値THα1と比較する。運転者の長期間のα1値が所定値THα1よりも小さい場合は、運転者の運転操作の不安定度が小さいと考えることができる。そこで、α1値が所定値THα1よりも小さい場合は、ステップS1073へ進む。
ステップS1073では、運転者の運転操作の不安定度が小さく操舵操作が滑らかであることを報知する(運転改善示唆)。ここでは、例えば図37に示すように、所定値THα1より小さい領域において、α1値に応じて2段階のレベル(α1S,α1SS)に分類する。そして、ステップS1055で算出されたα1値が該当するレベルを運転者に知らせる。
図38に、α1値の分類結果に応じた報知内容の一例を示す。α1値の分類結果が所定値THα1よりも小さいレベルα1Sの場合には、「運転の不安定度がやや小さいです」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果が所定値THα1S(<THα1)よりも小さいレベルα1SSの場合は、「運転の不安定度が小さいです」という内容のテキストを表示する。なお、図38に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
これにより、今回の処理を終了する。なお、ステップS1071が否定判定されると、ステップS1073における運転改善示唆の処理をスキップして今回の処理を終了する。
−第4の実施の形態の変形例2−
ここでは、長期間に計測された運転者の操舵角誤差分布を用いて算出した長期間操舵角エントロピーHp1を基準状態とする。そして、短期間に計測された運転者の操舵誤差分布を用いて操舵角エントロピーを算出し、運転者が基本的に有する運転操作の不安定な状態からの短期間の逸脱を検出することにより、運転診断を行う。
第4の実施の形態の変形例2による車両用運転支援装置2の動作を、図39を用いて詳細に説明する。図39は、第4の実施の形態の変形例2のコントローラ200における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。ステップS1111〜S1125での処理は、図28に示したフローチャートのステップS1041〜S1055での処理と同様であるので説明を省略する。
ステップS1125でα1値を算出した後、ステップS1127へ進む。ステップS1127では、道路曲率信号ρが所定値ρo以下、かつ自車速Vが所定値Voより大きいという条件の下で計測された操舵角信号θのサンプル数nが、所定値N3よりも大きいか否かを判定する。ここで、所定値N3は、運転者の普段の運転操作からの短期的な逸脱を判定するための短期間(例えば5分程度の走行期間)のデータを取得したかを判断するためのしきい値であり、例えばN3=1200個とする。サンプル数nが所定値N3よりも多い場合は、ステップS1129へ進み、所定値N3以下の場合は、この処理を終了する。
ステップS1129では、短期間に計測された操舵角信号θを用いて短期間操舵角エントロピーHp3を算出する。短期間操舵角エントロピーHp3は、長期間に計測された操舵角信号θを基準状態として短期間計測された操舵角信号θを用いて算出される値であり、運転者が基本的に有する運転操作の不安定な状態からの短期的な逸脱(ずれ)を表す値であるといえる。短期間操舵角エントロピーHp3の算出方法は、図24のフローチャートを用いて説明した長期間操舵角エントロピーHp1と同様である。ただし、ステップS1125で算出した運転者個人のα1値をα値として利用する。
ステップS1131では、ステップS1123で算出した長期間操舵角エントロピーHp1と、ステップS1129で算出した短期間操舵角エントロピーHp3との差分ΔHp3(=Hp3−Hp1)を算出する。そして、算出した差分ΔHp3を用いて運転操作不安定状態の判定を行う。短期間操舵角エントロピーHp3が長期間操舵角エントロピーHp1に対して大きいほど、運転者が基本的に有する運転の不安定度と比較して現在の運転操作の不安定度が大きくなっていると考えることができる。そこで、例えば操舵角エントロピーの差分ΔHp3が所定値TH3よりも大きい場合は、運転操作が不安定な状態にあると判定し、ステップS1133へ進む。
ステップS1133では、運転者の現在の運転操作が不安定状態にあることを報知する。ここでは、例えば図40に示すように、所定値TH3以上の領域において、操舵角エントロピーの差分ΔHp3の大きさに応じて2段階のレベル(D3P,D3PP)に分類する。そして、ステップS1131で算出された操舵角エントロピーの差分ΔHp3が該当するレベルを運転者に知らせる。
図41に、操舵角エントロピーの差分ΔHp3の分類結果に応じた報知内容の一例を示す。差分ΔHp3の分類結果が所定値TH3L(>TH3)よりも大きいレベルD3PPの場合には、「運転の不安定度が大きい状態です」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果が所定値TH3よりも大きいレベルD3Pの場合は、「運転の不安定度がやや大きい状態です」という内容のテキストを表示する。なお、図41に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
これにより、今回の処理を終了する。なお、ステップS1131が否定判定されると、ステップS1133における不安定状態の報知処理をスキップして、今回の処理を終了する。
《第5の実施の形態》
以下に、本発明の第5の実施の形態による車両用運転支援装置について説明する。第5の実施の形態による車両用運転支援装置の基本構成は、図21に示した第4の実施の形態と同様である。ここでは、上述した第4の実施の形態およびその変形例1,2との相違点を主に説明する。
第5の実施の形態による車両用運転支援装置2では、上述した第4の実施の形態と同様に、操舵角信号を用いて操舵角エントロピーを算出することにより運転操作の不安定な状態を検出し、運転者の運転診断を行う。そして、運転診断結果から運転者が普段の運転よりもリスクが高まるような運転を行っている場合、すなわち運転者の運転がハイリスク方向に逸脱している場合には、警報を与えてハイリスクな状態に陥る前に運転者に報知する。一方、運転診断結果から運転者の運転が世間一般の基準と比べて良ければ、安全運転意識をより向上させるように運転者の運転を褒めるような内容の情報提示、すなわち運転改善示唆を行う。
ここで、操舵角エントロピーを求める際には、操舵角の推定誤差が9分割された基準分布のどの区分に属するかを判定し、各区分の確率を計算する必要がある。また、α値(上述したα1)を求めるために、操舵誤差の度数分布を求める必要がある。これらの処理は、サンプル数の全データに対して行うため、予めデータ個数分のバッファメモリを用意しておく必要がある。
そこで、第5の実施の形態においては、長期間の直近の操舵角データを一時的に保存する必要がある場合でも、少量のメモリで各区分の確率の計算が可能となるように、再帰的(Recursive)に各区分の確率を計算する。
以下に、第5の実施の形態による車両用運転支援装置2における長期間操舵角エントロピーHp1の算出処理の処理手順を、図42のフローチャートを用いて説明する。この処理は、第4の実施の形態で説明した図22のフローチャートのステップS1023で実行される。ステップS1231〜S1234での処理は、図24のステップS1031〜S1034での処理と同様であるので説明を省略する。
ステップS1235では、ステップS1234で算出された操舵誤差enを、図25に示すように、基準状態のα値(=αo)による9区分b1〜b9に分類し、各区分biに含まれる操舵誤差enの度数の全度数に対する確率Piを再帰的に求める。ここで、基準状態のα値(=αo)は、一般運転者群(世間一般の運転者)の操舵角信号に基づいて予め設定し、コントローラ200のメモリに格納しておく。操舵誤差enが配分される区分の判定と、各区分の確率Piを再帰的に求める方法を、図43のフローチャートを用いて説明する。
まず、ステップS1241では、操舵誤差の区分を示すiに1を設定する。ステップS1242では、iが9よりも大きいか否かを判定する。i>9の場合は、9区分のそれぞれの確率Piの算出が終了していると判断して、この処理を終了する。i≦9の場合は、各区分における確率Piを算出するために、ステップS1243へ進む。
ステップS1243では、ステップS1234で算出した操舵誤差enがターゲットの区分biに該当するか否かを判定する。操舵誤差が区分biに該当する場合は、ステップS1244へ進む。ステップS1244では、以下の(式30)から区分biに含まれる操舵誤差enの確率Pi(n)を算出する。ここで、データ個数をNとする。
Pi(n)={Pi(n−1)+1/N}÷(1+1/N) ・・・(式30)
一方、操舵誤差が区分biに該当しない場合は、ステップS1245へ進み、その区分biに含まれる操舵誤差enの確率Pi(n)を、以下の(式31)から算出する。
Pi(n)={Pi(n−1)}÷(1+1/N) ・・・(式31)
ステップS1246では、iとして(i+1)をセットする。その後、ステップS1242へ戻り、全9区分の確率Piを算出するまで、ステップS1243〜S1246の処理を繰り返す。
このように、ステップS1235で各区分biに含まれる操舵誤差enの確率Piを再帰的に算出した後、ステップS1236へ進む。ステップS1236では、ステップS1235で算出した確率Piを用いて、上述した(式29)から長期間操舵角エントロピーHp1を算出する。これにより、長期間操舵角エントロピーHp1の算出処理を終了する。
次に、第4の実施の形態の変形例1で説明したα1値を算出するために、再帰的に度数計算を行う方法を説明する。以下に、第5の実施の形態による車両用運転支援装置2におけるα1値の算出処理の処理手順を、図44のフローチャートを用いて説明する。この処理は、第4の実施の形態の変形例1で説明した図28のフローチャートのステップS1055で実行される。ステップS1251〜S1254での処理は、図30のステップS1081〜S1084での処理と同様であるので説明を省略する。
ステップS1255では、所定の操舵誤差ごとの操舵誤差enの度数を再帰的に計算する。ここでの処理を、図45のフローチャートを用いて説明する。
まず、ステップS1271では、操舵誤差の度数分布の区分を示すTに1を設定する。ステップS1272では、Tが全区分数Tnよりも大きいか否かを判定する。全区分数Tnは、例えば40とし、各区分の刻みを0.001に設定する。T>Tnで、全区分にいおいて度数計算が終了した場合は、この処理を終了する。T≦Tnの場合は、各区分の度数Ti(n)を算出するために、ステップS1273へ進む。
ステップS1273では、ステップS1254で算出した操舵誤差enがターゲットの区分Tiに該当するか否かを判定する。操舵誤差が区分Tiに該当する場合は、ステップS1274へ進む。ステップS1274では、以下の(式32)から区分Tiに含まれる操舵誤差enの度数Ti(n)を算出する。ここで、データ個数をNとする。
Ti(n)={Ti(n−1)+1/N}÷(1+1/N) ・・・(式32)
一方、操舵誤差が区分Tiに該当しない場合は、ステップS1275へ進み、その区分Tiに含まれる操舵誤差enの度数Ti(n)を、以下の(式33)から算出する。
Ti(n)={Ti(n−1)}÷(1+1/N) ・・・(式33)
ステップS1276では、iとして(i+1)をセットする。その後、ステップS1272へ戻り、全区分Tnの度数Tiを算出するまで、ステップS1273〜S1276の処理を繰り返す。
このように、ステップS1255で度数分布を再帰的に計算した後、ステップS1256へ進む。ステップS1256以降の処理では、上述した第4の実施の形態の変形例1と同様に、ステップS1255で算出した度数分布を用いてα1値を算出する。
以上説明したように、操舵角エントロピーHpを再帰的に求めることにより、データ蓄積のためのメモリ容量を少なくすることができるとともに、算出ステップが少なくなるため算出処理を簡素化することができる。また、操舵角エントロピーHpをリアルタイムに算出することができる。
《第6の実施の形態》
以下に、本発明の第6の実施の形態による車両用運転支援装置について説明する。図46に、第6の実施の形態による車両用運転支援装置3の構成を示すシステム図を示す。第6の実施の形態においては、上述した第4の実施の形態と同様の機能を有する箇所には同一の符号を付して説明を省略する。ここでは、第4の実施の形態との相違点を主に説明する。
車両用運転支援装置3は、レーザレーダ10、前方カメラ15、車速センサ30、加速度センサ35、ナビゲーションシステム50、アクセルペダル開度センサ55、コントローラ250、スピーカ130、および表示ユニット180を備えている。
レーザレーダ10は、車両の前方グリル部もしくはバンパ部等に取り付けられ、水平方向に赤外光パルスを照射して自車両の前方領域を走査する。レーザレーダ10は、前方にある複数の反射物(通常、先行車の後端)で反射された赤外光パルスの反射波を計測し、反射波の到達時間より、複数の障害物までの車間距離と相対速度をそれぞれ検出する。検出した車間距離及び相対速度はコントローラ250へ出力される。レーザレーダ10によりスキャンされる前方の領域は、自車正面に対して±6deg 程度であり、この範囲内に存在する前方物体が検出される。
加速度センサ35は、自車両の前後方向の加速度を検出するセンサであり、検出した前後加速度をコントローラ250へ出力する。アクセルペダル開度センサ55は、アクセルペダル(不図示)の踏み込み操作量(アクセルペダル開度)を検出するセンサである。アクセルペダル開度センサ55は、例えば、リンク機構を介してサーボモータの回転角に変換されたアクセルペダル開度を検出して、コントローラ250へ出力する。
コントローラ250は、CPUと、ROMおよびRAM等のCPU周辺部品とから構成される電子制御ユニットであり、車両用運転支援装置3全体の制御を行う。コントローラ250は、レーザレーダ10、前方カメラ15、車速センサ30、加速度センサ35、ナビゲーションシステム50、およびアクセルペダル開度センサ55等から入力される信号に基づいて運転者の運転特性を分析し、運転診断を行う。そして、運転診断結果に基づいて、運転者への情報提供を行う。運転者への情報提供としては、運転者への警報や、運転操作の改善示唆等を行う。コントローラ250における具体的な制御内容は、後述する。
次に、第6の実施の形態による車両用運転支援装置3の動作を説明する。まず、その概要を説明する。
車両用運転支援装置3のコントローラ250は、自車両の走行状態と運転者の運転操作に基づいて、運転者の運転診断を行い、運転診断結果に応じて運転者への警報や運転操作の改善示唆を行う。具体的には、アクセルペダル開度信号を用いて運転操作の不安定な状態を検出し、運転者の運転診断を行う。運転操作の不安定な状態を検出するために、第6の実施の形態においては、上述した第4および第5の実施の形態で用いたステアリングエントロピー法をアクセルペダル操作に応用する。ステアリングエントロピー法は自車両の横方向の制御に関連する操舵角を用いた手法であるが、第6の実施の形態では、自車両の前後方向の制御に関連するアクセルペダル開度信号を用いて、自車両の前後方向の運転操作の不安定な状態を検出する。
そして、運転診断結果から運転者が普段の運転よりもリスクが高まるような運転を行っている場合、すなわち運転者の運転がハイリスク方向に逸脱している場合には、警報を与えてハイリスクな状態に陥る前に運転者に報知する。一方、運転診断結果から運転者の運転が世間一般の基準と比べて良ければ、安全運転意識をより向上させるように運転者の運転を褒めるような内容の情報提示、すなわち改善示唆を行う。
第6の実施の形態で用いるα値(以降、αap値とする)は、アクセルペダル開度の時系列データに基づいて一定時間内のペダル操作誤差、すなわちアクセルペダルが滑らかに操作されたと仮定した場合のアクセルペダル開度の推定値と実際のアクセルペダル開度との差を求め、アクセルペダル開度誤差の分布(ばらつき)を測定して90パーセントタイル値(アクセルペダル開度誤差の90%が含まれる分布の範囲)を算出したものである。
アクセルペダル開度エントロピー値(以降、Hp_apとする)は、アクセルペダル開度誤差分布のあいまいさ(不確実性)を表す。Hp_ap値は、αap値と同様に、アクセルペダル操作が滑らかで安定している場合は小さくなり、ガクガクと不安定な場合は大きくなる。Hp_ap値はαap値によって補正され、運転者の技量や癖により影響を受けない運転者不安定度として用いることができる。
第6の実施の形態においては、一般運転者群のアクセルペダル開度誤差分布を用いて算出したアクセルペダル開度エントロピーを基準状態とする。そして、計測された運転者のアクセルペダル開度誤差分布を用いてアクセルペダル開度エントロピーを算出し、運転者が基本的に有する運転操作の不安定な状態を検出することにより、運転診断を行う。
なお、アクセルペダル開度誤差は、道路線形、先行車との関係、および運転者の負荷の状態等に影響を受けるため、運転者が無負荷の状態で、基準となるアクセルペダル開度誤差分布を計測する必要がある。そこで、第6の実施の形態においては、これらの影響を受けにくくするために、直線路とみなせる道路線形走行時で、かつ一定車速で走行可能な場面におけるアクセルペダル開度データを用いるとともに、長時間計測したアクセルペダル開度データに基づいてアクセルペダル開度分布を求める。
第6の実施の形態による車両用運転支援装置3の動作を、図47を用いて詳細に説明する。図47は、第6の実施の形態のコントローラ250における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
ステップS1331では、アクセルペダル開度センサ55で検出されたアクセルペダル開度信号dapを読み込む。ステップS1333では、自車両が走行する道路の道路曲率信号ρを読み込む。ステップS1335で、車速センサ30によって検出された自車両の車速信号Vapを読み込む。ステップS1337では、レーザレーダ10によって検出される自車両前方の障害物、具体的には先行車との車間距離ddおよび相対速度vrを読み込む。ステップS1339では、加速度センサ35によって検出される自車両の前後加速度xgを読み込む。
つづくステップS1341〜S1349で、アクセルペダル開度エントロピーの算出を行うか否かを判定する。具体的には、ステップ1341で、ステップS1333で読み込んだ道路曲率信号ρが直線路走行中と判定するための道路曲率所定値ρapoより小さいか否かを判定する。道路曲率信号ρが所定値ρapo以下の場合は自車両が直線路を走行中であると判断して、ステップS1343へ進む。ρ>ρapoの場合は、この処理を終了する。
ステップS1343では、ステップS1335で読み込んだ車速信号Vapが所定値Vapoより大きいか否かを判定する。所定値Vapoは、例えば高速道路等、自車両が一定車速で走行可能な場面を走行しているかを判断するためのしきい値であり、例えばVapo=60km/h程度に設定する。車速信号Vapが所定値Vapoよりも大きい場合は、ステップS1345へ進み、所定Vapo以下の場合は、この処理を終了する。
ステップS1345では、まず、ステップS1337で読み込んだ車間距離ddと相対速度vrを用いて、先行車に対する自車両の余裕時間ttcを算出する。余裕時間ttcは、自車速Vapおよび相対車速vrが一定の場合に自車両と先行車とが接触するまでの余裕時間を表し、以下の(式34)から算出する。
ttc=dd/vr ・・・(式34)
そして、(式34)から算出した余裕時間ttcを所定値ttcapoと比較する。所定値ttcapoは、自車両が十分な余裕時間ttcを保って先行車に追従しているかを判断するためのしきい値である。余裕時間ttcが所定値ttcapoより大きく、自車両が先行車に追従している場合は、ステップS1347へ進む。ttc≦ttcapの場合は、この処理を終了する。
ステップS1347では、ステップS1339で算出した前後加速度xgを所定値xg_apoと比較する。所定値xg_apoは、自車両が略一定車速で走行中であるか否かを判定するためのしきい値である。xg<xg_apoで自車両が略一定車速で走行中と判断されると、ステップS1349へ進み、xg≧xg_apoの場合は、この処理を終了する。
ステップS1349では、ステップS1331で算出したアクセルペダル開度dapを所定値dapoと比較する。所定値dapoは、運転者がアクセルペダルを踏み込み操作中であるかを判断するためのしきい値である。dap>dapoでアクセルペダル操作中であると判断されると、ステップ1351へ進み、dap≦dapoの場合は、この処理を終了する。
ステップS1351では、上述した条件の下で計測されたアクセルペダル開度信号dapのサンプル数nが、所定値Nap1よりも大きいか否かを判定する。ここで、所定値Nap1は、運転者の負荷の状態の影響を受けにくくするために十分な長期間のデータを取得したかを判断するためのしきい値であり、例えばNap1=100000個とする。なお、100000個のデータは、3週間程度の走行期間で得られると予測される。サンプル数nが所定値Nap1よりも多い場合は、ステップS1353へ進み、所定値Nap1以下の場合は、この処理を終了する。
ステップS1353では、長期間に計測されたアクセルペダル開度信号dapを用いてアクセルペダル開度エントロピーHp_ap1(以降、長期間アクセルペダル開度エントロピーと呼ぶ)を算出する。長期間アクセルペダル開度エントロピーHp_ap1は、運転者が基本的に有する運転操作の不安定な状態を表す値であり、運転者の普段の不安定度であるといえる。なお、アクセルペダル開度エントロピーHp_ap1の算出方法は、基本的に上述した操舵角エントロピーHpと同様である。ただし、以降の説明において、アクセルペダル開度の円滑値をdapn-tildeと表し、アクセルペダル開度の推定値をdapn-hatと表し、アクセルペダル開度誤差をe_apnと表す。
長期間アクセルペダル開度エントロピーHp_ap1の算出処理を、図48のフローチャートを用いて説明する。ステップS1361で、上述した条件下でサンプリング間隔Tsで計測されたn個のアクセルペダル開度信号dapnの時系列データを収集する。サンプリング間隔Tsは、例えば50msecとする。
ステップS1362では、150msec間隔の隣接する3個のアクセルペダル開度dapnを用いて、上記(式24)に従って3個のアクセルペダル開度円滑値dapn-tildeを算出する。ステップS1363では、ステップ1362で算出した3個のアクセルペダル開度円滑値dapn-tildeを用いて、上記(式23)に従ってアクセルペダル開度の推定値dapn-hatを算出する。ステップS1364では、ステップS1363で算出したアクセルペダル開度推定値dapn-hatと実際のアクセルペダル開度信号dapnとを用いて、上記(式26)に従ってアクセルペダル開度誤差e_apnを算出する。
ステップS1365では、ステップS1364で算出されたアクセルペダル開度誤差e_apnを、図25に示すような基準状態のα値(=αo_ap)による9区分b1〜b9に分類し、各区分biに含まれるアクセルペダル開度誤差e_apnの度数の全度数に対する確率Piを求める。ここで、基準状態のα値(=αo_ap)は、一般運転者群(世間一般の運転者)のアクセルペダル開度信号に基づいて予め設定し、コントローラ250のメモリに格納しておく。そして、図47に示すプログラム実行時に区分biを設定しておく。
つづくステップS1366では、ステップS1365で算出した確率Piを用いて、上記(式29)に従って長期間アクセルペダル開度エントロピーHp_ap1を算出する。
長期間アクセルペダル開度エントロピーHp_ap1が小さいほどアクセルペダル開度誤差e_apnの分布の峻険度が大きく、アクセルペダル開度誤差e_apnの分布が一定の範囲に収まっている。すなわち、アクセルペダル操作が滑らかに行われ、運転が安定な状態にあることを示す。反対に、長期間アクセルペダル開度エントロピーHp_ap1値が大きいほどアクセルペダル開度誤差e_apnの分布の峻険度が小さく、アクセルペダル開度誤差e_apnの分布がばらついている。すなわち、アクセルペダル操作がガクガクしており、運転が不安定な状態にあることを示す。
このように、ステップS1353で長期間アクセルペダル開度エントロピーHp_ap1を算出した後、ステップS1355へ進む。ステップS1355では、長期間アクセルペダル開度エントロピーHp_ap1に応じて運転者に警報あるいは指導(改善示唆)の呈示を行う。長期間アクセルペダル開度エントロピーHp_ap1が大きいほど、一般運転者群(世間一般)の平均的なアクセルペダル開度エントロピーと比較して運転操作の不安定度が大きいと考えることができる。
そこで、例えば図49に示すように、長期間アクセルペダル開度エントロピーHp_ap1の大きさを5段階のレベル(SSS,SS,SM,SL,SLL)に分類し、算出された長期間アクセルペダル開度エントロピーHp_ap1のレベルを運転者に知らせる。なお、図49に示す分類において、一般運転者群(世間一般)の平均的なアクセルペダル開度エントロピーが中央のレベルSMに入るように、5段階のレベルを適切に設定しておく。
図50に、長期間アクセルペダル開度エントロピーHp_ap1の分類結果に応じた報知内容の一例を示す。長期間アクセルペダル開度エントロピーHp_ap1の分類結果がレベルSLLの場合には、「運転の不安定度が大きいタイプです」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果がレベルSLの場合は、「運転の不安定度がやや大きいタイプです」という内容のテキストを表示する。分類結果がレベルSMで、一般運転者群の平均的なアクセルペダル開度エントロピーと同等の場合には、「運転の不安定度は普通です」という内容のテキストを表示する。分類結果がレベルSSの場合は、「運転の不安定度がやや小さいタイプです」という内容のテキストを表示する。分類結果がレベルSSSの場合は、「運転の不安定度が小さいタイプです」という内容のテキストを表示する。なお、図50に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
このように、以上説明した第6の実施の形態においては、上述した第1〜5の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
運転操作としてアクセルペダル操作量を検出し、運転者の運転特性を表す指標として、アクセルペダル操作量を用いて、運転者によるアクセルペダル操作の不安定度を表すアクセルペダル開度エントロピーHp_apを算出する。これにより、自車両の前後方向に関する運転操作について、精度良く運転診断を行うことができる。
−第6の実施の形態の変形例1−
ここでは、長期間に計測された運転者のアクセルペダル開度誤差分布を用いて算出した長期間アクセルペダル開度エントロピーHp_ap1を基準状態とする。そして、中期間に計測された運転者のアクセルペダル開度誤差分布を用いてアクセルペダル開度エントロピーを算出し、運転者が基本的に有する運転操作の不安定な状態からの逸脱を検出することにより、運転診断を行う。
第6の実施の形態の変形例1による車両用運転支援装置3の動作を、図51,52を用いて詳細に説明する。図51,52は、第6の実施の形態の変形例1のコントローラ250における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。ステップS1371〜S1393での処理は、図47に示したフローチャートのステップS1331〜S1353での処理と同様であるので説明を省略する。ただし、ステップS139でサンプル数nが所定値Nap1以下であると判定された場合は、処理を終了せずに、図52のステップS1397へ進む。
ステップS1393で基準状態を表す長期間アクセルペダル開度エントロピーHp_ap1を算出した後、ステップS1395では、中期間のアクセルペダル開度エントロピーを算出するために用いるα値を算出する。ここでは、長期間に計測されたアクセルペダル開度dapを用いて、運転者個人のα値(以降、αap1値とする)を算出する。ここでの処理を、図53のフローチャートを用いて説明する。
ステップS1421では、上述した条件下でサンプリング間隔Tsで計測されたn個のアクセルペダル開度dapnの時系列データを収集する。サンプリング間隔Tsは、例えば50msecとする。ステップS1422では、150msec間隔の隣接する3個のアクセルペダル開度dapnを用いて、上記(式24)に従って3個のアクセルペダル開度円滑値dapn-tildeを算出する。
ステップS1423では、ステップ1422で算出した3個のアクセルペダル開度円滑値dapn-tildeを用いて、上記(式23)に従ってアクセルペダル開度の推定値dapn-hatを算出する。ステップS1424では、ステップS1423で算出したアクセルペダル開度推定値dapn-hatと実際のアクセルペダル開度信号dapnとを用いて、上記(式26)に従ってアクセルペダル開度誤差e_apnを算出する。
続くステップS1425では、所定のアクセルペダル開度誤差ごとにアクセルペダル開度誤差e_apnの度数を数える。ここで、所定のアクセルペダル開度誤差は、アクセルペダル開度センサ55の分解能を考慮して決定する。ここでは、例えば操舵誤差分布の算出に用いた図31の表に示したように、0.001ごとにアクセルペダル開度誤差e_apnを分類する。ステップS1426では、アクセルペダル開度誤差の区分を示すi_apに0を設定する。
ステップS1427では、全てのアクセルペダル開度誤差の全度数に対して、アクセルペダル開度誤差e_apn=0.000における度数Tap0.000の確率Papが90%以上であるか否かを判定する。度数Tap0.000の確率Papが90%以上の場合は、ステップS1430へ進む。この場合、i_ap=0であるので、αap1値は、αap1=0.000となる。ステップS1427が否定判定されると、ステップS1428へ進む。ステップS1428では、i_apを1インクリメントして(i_ap+1)に設定する。
ステップS1429では、アクセルペダル開度誤差の区分を広げて、−0.001から+0.001までのアクセルペダル開度誤差e_apnの度数(Tap0.000+Tap0.001+Tap−0.001)の、全てのアクセルペダル開度誤差の全度数に対する確率Papが90%以上か否かを判定する。確率Papが90%以上の場合は、ステップS1430へ進む。この場合、i_ap=1であるので、αap1値は、αap1=0.001となる。ステップS1429が否定判定されると、ステップS1428へ戻り、再びi_apをインクリメントしてステップS1429の判定を繰り返す。
このようにステップS1395でα_ap1値を算出した後、図52のステップS1397へ進む。ステップS1397では、上記条件の下で計測されたアクセルペダル開度dapのサンプル数nが、所定値Nap2よりも大きいか否かを判定する。ここで、所定値Nap2は、運転者の普段の運転操作からの逸脱を判定するために十分な中期間(例えば1日程度の走行期間)のデータを取得したかを判断するためのしきい値であり、例えばNap2=7200個とする。サンプル数nが所定値Nap2よりも多い場合は、ステップS1399へ進み、所定値Nap2以下の場合は、この処理を終了する。
ステップS1399では、中期間に計測されたアクセルペダル開度信号dapを用いて中期間操舵角エントロピーHp_ap2を算出する。中期間アクセルペダル開度エントロピーHp_ap2は、長期間に計測されたアクセルペダル開度信号dapを用いた長期間アクセルペダル開度エントロピーHp_ap1を基準状態として、中期間計測されたアクセルペダル開度信号dapを用いて算出される値であり、運転者が基本的に有する運転操作の不安定な状態からの逸脱(ずれ)を表す値であるといえる。中期間アクセルペダル開度エントロピーHp_ap2の算出方法は、図48のフローチャートを用いて説明した長期間アクセルペダル開度エントロピーHp_ap1と同様である。ただし、ステップS1395で算出した運転者個人のαap1値をα値として利用する。
ステップS1401では、ステップS1393で算出した長期間アクセルペダル開度エントロピーHp_ap1と、ステップS1399で算出した中期間アクセルペダル開度エントロピーHp_ap2との差分ΔHp_ap2(=Hp_ap2−Hp_ap1)を算出する。そして、算出した差分ΔHp_ap2を用いて運転操作不安定状態の判定を行う。中期間アクセルペダル開度エントロピーHp_ap2が長期間アクセルペダル開度エントロピーHp_ap1に対して大きいほど、運転者が基本的に有する運転の不安定度と比較して運転操作の不安定度が大きくなっていると考えることができる。そこで、例えばアクセルペダル開度エントロピーの差分ΔHp_ap2が所定値THap2よりも大きい場合は、運転操作が不安定な状態にあると判定し、ステップS1403へ進む。
ステップS1403では、運転者の運転操作が不安定状態にあることを報知する。ここでは、例えば図54に示すように、所定値THap2以上の領域において、アクセルペダル開度エントロピーの差分ΔHp_ap2の大きさに応じて2段階のレベル(D2Pap,D2PPap)に分類する。そして、ステップS1401で算出されたアクセルペダル開度エントロピーの差分ΔHp_ap2が該当するレベルを運転者に知らせる。
図55に、アクセルペダル開度エントロピーの差分ΔHp2の分類結果に応じた報知内容の一例を示す。差分ΔHp2の分類結果が所定値THap2L(>THap2)よりも大きいレベルD2PPapの場合には、「普段より運転の不安定度が大きくなっています」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果が所定値THap2よりも大きいレベルD2Papの場合は、「普段より運転の不安定度がやや大きくなっています」という内容のテキストを表示する。なお、図55に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
ステップS1401が否定判定されると、ステップS1403における不安定状態の報知処理はスキップする。このように、普段の運転操作の不安定状態からの逸脱を検出して運転者に報知した後、ステップS1405以降の処理で、過去と現在の中期間アクセルペダル開度エントロピーの比較結果に基づく運転者への報知を行う。具体的には、過去に算出された中期間アクセルペダル開度エントロピー(以降、Hp_ap2pと表す)と、最新の中期間アクセルペダル開度エントロピーHp_ap2を比較することで、中期間の運転操作の不安定度の変化を検出して運転者に報知する。
まず、ステップS1405では、同一の運転者について過去に算出され、記憶されていた過去の中期間アクセルペダル開度エントロピーHp_ap2pと、ステップS1399で算出された最新の中期間アクセルペダル開度エントロピーHp_ap2の差分ΔHp_ap2pを算出する。そして、算出した差分ΔHp_ap2pを用いて運転操作の不安定度の変化を判定する。過去の中期間アクセルペダル開度エントロピーHp_ap2pに対して最新の中期間アクセルペダル開度エントロピーHp_ap2が小さいほど、すなわち、差分ΔHp_ap2pの符号が負で、値が大きいほど、以前と比較して運転操作の不安定度が小さくなる方向に変化したと考えることができる。そこで、例えばアクセルペダル開度エントロピーの差分ΔHp_ap2pが所定値THap2Pよりも小さい場合は、運転操作の不安定度が小さくなっていると判定し、ステップS1407へ進む。
ステップS1407では、運転者の運転操作の不安定度が小さくなってアクセルペダル操作が滑らかになってきていることを報知する(運転改善示唆)。ここでは、例えば図56に示すように、所定値THap2Pより小さい領域において、アクセルペダル開度エントロピーの差分ΔHp_ap2pの大きさに応じて2段階のレベル(D2PMap,D2PMMap)に分類する。そして、ステップS1405で算出されたアクセルペダル開度エントロピーの差分ΔHp_ap2pが該当するレベルを運転者に知らせる。
図57に、アクセルペダル開度エントロピーの差分ΔHp_ap2pの分類結果に応じた報知内容の一例を示す。差分ΔHp_ap2pの分類結果が所定値THap2Pよりも小さいレベルD2PMapの場合には、「以前より運転の不安定度がやや小さくなっています」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果が所定値THap2PL(<THap2P)よりも小さいレベルD2PMMapの場合は、「以前より運転の不安定度が小さくなっています」という内容のテキストを表示する。なお、図57に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
ステップS1405が否定判定されると、ステップS1407における運転改善示唆処理をスキップしてステップS1409へ進む。ステップS1409では、次回の処理に備えて、ステップS1399で算出した中期間アクセルペダル開度エントロピーHp_ap2を、過去の中期間アクセルペダル開度エントロピーHp_ap2pとしてセットする。
ステップS1411以降の処理では、運転者の長期間のアクセルペダル開度信号dapに基づいて算出された運転者個人のαap1値を用いて、運転者に対する運転改善示唆を行う。αap1値は、上述したように、運転者の長期間のアクセルペダル開度信号データに基づいて算出されたアクセルペダル開度誤差の分布における90%タイル値を算出したものである。したがって、αap1値は、運転者の長期間のアクセルペダル開度誤差の分布を表すファクターであるといえる。
ステップS1411では、ステップS1430で算出したαap1値を所定値THαap1と比較する。運転者の長期間のαap1値が所定値THαap1よりも小さい場合は、運転者の運転操作の不安定度が小さいと考えることができる。そこで、αap1値が所定値THαap1よりも小さい場合は、ステップS1413へ進む。
ステップS1413では、運転者の運転操作の不安定度が小さくアクセルペダル操作が滑らかであることを報知する(運転改善示唆)。ここでは、例えば図58に示すように、所定値THαap1より小さい領域において、αap1値に応じて2段階のレベル(α1apS,α1apSS)に分類する。そして、ステップS1430で算出されたαap1値が該当するレベルを運転者に知らせる。
図59に、αap1値の分類結果に応じた報知内容の一例を示す。αap1値の分類結果が所定値THαap1よりも小さいレベルα1apSの場合には、「運転の不安定度がやや小さいです」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果が所定値THαap1S(<THαap1)よりも小さいレベルα1apSSの場合は、「運転の不安定度が小さいです」という内容のテキストを表示する。なお、図59に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
これにより、今回の処理を終了する。なお、ステップS1411が否定判定されると、ステップS1413における運転改善示唆の処理をスキップして今回の処理を終了する。
−第6の実施の形態の変形例2−
ここでは、長期間に計測された運転者のアクセルペダル開度誤差分布を用いて算出した長期間アクセルペダル開度エントロピーHp_ap1を基準状態とする。そして、短期間に計測された運転者のアクセルペダル開度誤差分布を用いてアクセルペダル開度エントロピーを算出し、運転者が基本的に有する運転操作の不安定な状態からの短期間の逸脱を検出することにより、運転診断を行う。
第6の実施の形態の変形例2による車両用運転支援装置3の動作を、図60を用いて詳細に説明する。図60は、第6の実施の形態の変形例2のコントローラ250における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。ステップS1141〜S1465での処理は、図51に示したフローチャートのステップS1371〜S1395での処理と同様であるので説明を省略する。
ステップS1395でαap1値を算出した後、ステップS1467へ進む。ステップS1467では、上記条件の下で計測されたアクセルペダル開度信号dapのサンプル数nが、所定値Nap3よりも大きいか否かを判定する。ここで、所定値Nap3は、運転者の普段の運転操作からの短期的な逸脱を判定するための短期間(例えば5分程度の走行期間)のデータを取得したかを判断するためのしきい値であり、例えばNap3=1200個とする。サンプル数nが所定値Nap3よりも多い場合は、ステップS1469へ進み、所定値Nap3以下の場合は、この処理を終了する。
ステップS1469では、短期間に計測されたアクセルペダル開度信号dapを用いて短期間アクセルペダル開度エントロピーHp_ap3を算出する。短期間アクセルペダル開度エントロピーHp_ap3は、長期間に計測されたアクセルペダル開度信号dapを用いたアクセルペダル開度誤差分布を基準状態として、短期間計測されたアクセルペダル開度信号dapを用いて算出される値であり、運転者が基本的に有する運転操作の不安定な状態からの短期的な逸脱(ずれ)を表す値であるといえる。短期間アクセルペダル開度エントロピーHp_ap3の算出方法は、図48のフローチャートを用いて説明した長期間アクセルペダル開度エントロピーHp_ap1と同様である。ただし、ステップS1465で算出した運転者個人のαap1値をα値として利用する。
ステップS1471では、ステップS1463で算出した長期間アクセルペダル開度エントロピーHp_ap1と、ステップS1469で算出した短期間アクセルペダル開度エントロピーHp_ap3との差分ΔHp_ap3(=Hp_ap3−Hp_ap1)を算出する。そして、算出した差分ΔHp_ap3を用いて運転操作不安定状態の判定を行う。短期間アクセルペダル開度エントロピーHp_ap3が長期間アクセルペダル開度エントロピーHp_ap1に対して大きいほど、運転者が基本的に有する運転の不安定度と比較して現在の運転操作の不安定度が大きくなっていると考えることができる。そこで、例えばアクセルペダル開度エントロピーの差分ΔHp_ap3が所定値THap3よりも大きい場合は、運転操作が不安定な状態にあると判定し、ステップS1473へ進む。
ステップS1473では、運転者の現在の運転操作が不安定状態にあることを報知する。ここでは、例えば図61に示すように、所定値THap3以上の領域において、アクセルペダル開度エントロピーの差分ΔHp_ap3の大きさに応じて2段階のレベル(D3Pap,D3PPap)に分類する。そして、ステップS1471で算出されたアクセルペダル開度エントロピーの差分ΔHp_ap3が該当するレベルを運転者に知らせる。
図62に、アクセルペダル開度エントロピーの差分ΔHp_ap3の分類結果に応じた報知内容の一例を示す。差分ΔHp_ap3の分類結果が所定値THap3L(>THap3)よりも大きいレベルD3PPapの場合には、「運転の不安定度が大きい状態です」という内容のテキストを、表示ユニット180の表示モニタに表示する。分類結果が所定値THap3よりも大きいレベルD3Papの場合は、「運転の不安定度がやや大きい状態です」という内容のテキストを表示する。なお、図62に示した報知内容を、スピーカ130からの音声出力により運転者に提供することもできる。
これにより、今回の処理を終了する。なお、ステップS1471が否定判定されると、ステップS1473における不安定状態の報知処理をスキップして、今回の処理を終了する。
《第7の実施の形態》
以下に、本発明の第7の実施の形態による車両用運転支援装置について説明する。図63に、第7の実施の形態による車両用運転支援装置4の構成を示すシステム図であり、図64は、車両用運転支援装置4を搭載した車両の構成図である。
まず、車両用運転支援装置4の構成を説明する。
レーザレーダ10は、車両の前方グリル部もしくはバンパ部等に取り付けられ、水平方向に赤外光パルスを照射して自車両の前方領域を走査する。レーザレーダ10は、前方にある複数の反射物(通常、先行車の後端)で反射された赤外光パルスの反射波を計測し、反射波の到達時間より、複数の障害物までの車間距離と相対速度をそれぞれ検出する。検出した車間距離及び相対速度はコントローラ300へ出力される。レーザレーダ10によりスキャンされる前方の領域は、自車正面に対して±6deg 程度であり、この範囲内に存在する前方物体が検出される。
車速センサ30は、車輪の回転数や変速機の出力側の回転数を計測することにより自車両の車速を検出し、検出した自車速をコントローラ300に出力する。
ナビゲーションシステム50は、GPS受信機、地図データベース、および表示モニタ等を備えており、経路探索および経路案内等を行うシステムである。ナビゲーションシステム50は、GPS受信機から得られる自車両の現在位置と地図データベースに格納された道路情報に基づいて、自車両が走行する道路の種別や道路幅員等の情報を取得することができる。
アクセルペダルストロークセンサ55は、例えば、リンク機構を介してサーボモータの回転角に変換されたアクセルペダルのストローク量(アクセルペダル操作量)を検出して、コントローラ300へ出力する。ブレーキペダルストロークセンサ60は、運転者がブレーキペダルを踏み込み操作した際の踏み込み量(ブレーキペダル操作量)を検出する。ブレーキペダルストロークセンサ60は、検出したブレーキペダル操作量をコントローラ300に出力する。ウィンカスイッチ65は、運転者によるウィンカレバー操作の有無を検出して、検出信号をコントローラ300に出力する。
コントローラ300は、CPUと、ROMおよびRAM等のCPU周辺部品とから構成される電子制御ユニットであり、車両用運転支援装置4全体の制御を行う。コントローラ300は、レーザレーダ10、車速センサ30、ナビゲーションシステム50、アクセルペダルストロークセンサ55、ブレーキペダルストロークセンサ60、およびウィンカスイッチ65等から入力される信号に基づいて運転者の運転特性を分析し、運転診断を行う。そして、運転診断結果に基づいて、運転者への情報提供を行う。運転者への情報提供としては、運転者への警報や、運転操作の改善示唆等を行う。コントローラ300における具体的な制御内容は、後述する。
スピーカ130は、コントローラ300からの信号に応じてブザー音や音声により運転者への情報提供を行う。表示ユニット180は、コントローラ300からの信号に応じて運転者への運転に対する警報や改善示唆を与えるような表示を行う。表示ユニット180は、例えばナビゲーションシステム50の表示モニタやコンビメータ等を利用することができる。
次に、第7の実施の形態による車両用運転支援装置4の動作を説明する。まず、その概要を説明する。
コントローラ300は、自車両の走行状態と運転者の運転操作に基づいて、運転者の運転診断を行い、運転診断結果に応じて運転者への警報や運転操作の改善示唆を行う。具体的には、自車両が先行車に追従して走行している状態からアクセルペダルを離したときの運転特性を検出し、検出した運転特性を指標として運転診断を行う。そして、運転診断結果から運転者が普段の運転よりもリスクが高まるような運転を行っている場合、すなわち運転者の運転がハイリスク方向に逸脱している場合には、警報を与えてハイリスクな状態に陥る前に運転者に報知する。一方、運転診断結果から運転者の運転が世間一般の基準と比べて良ければ、安全運転意識をより向上させるように運転者の運転を褒めるような内容の情報提示、すなわち改善示唆を行う。
このように、第7の実施の形態における車両用運転支援装置4は、運転診断により運転者の運転を検出する機能と、検出結果に応じて運転者に警報を与える機能と、検出結果に応じて運転者に改善示唆を与える機能という3つの機能を備え、自己の運転特性を客観的に知ることで運転者に内省を促すとともに、運転特性に応じた助言を呈示することで運転者にとってはリスクをより低くする運転方法を学ぶことができる。第7の実施の形態では、とくに、運転者の前後方向の運転操作に関する運転診断を行う。
第7の実施の形態による車両用運転支援装置4の動作を、図65を用いて詳細に説明する。図65は、第7の実施の形態のコントローラ300における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS100で、自車両の走行状態を検出する。ここで、自車両の走行状態として、車速センサ30によって検出される自車速Vと、レーザレーダ10によって検出される自車両と先行車との車間距離Dおよび相対速度Vrを取得する。ステップS102では、運転者の操作状態を検出する。ここで、運転者の操作状態として、アクセルペダルストロークセンサ55によって検出されるアクセルペダル操作量、ブレーキペダルストロークセンサ60によって検出されるブレーキペダル操作量、およびウィンカスイッチ65によって検出されるウィンカレバー操作の有無を取得する。
ステップS104では、後述する自車両の走行シーン判断のために、自車両と先行車との余裕時間TTCおよび車間時間THWを算出する。余裕時間TTCは、先行車に対する現在の自車両の接近度合を示す物理量である。余裕時間TTCは、現在の走行状況が継続した場合、つまり自車速Vおよび相対車速Vrが一定の場合に、何秒後に、車間距離Dがゼロとなり自車両と先行車とが接触するかを示す値であり、以下の(式35)により求められる。
TTC=D/Vr ・・・(式35)
車間時間THWは、自車両が先行車に追従走行している場合に、想定される将来の先行車の車速変化による余裕時間TTCへの影響度合、つまり相対車速Vrが変化すると仮定したときの影響度合を示す物理量である。車間時間THWは、車間距離Dを自車速Vで除したものであり、先行車の現在位置に自車両が到達するまでの時間を示す。車間時間THWは以下の(式36)から求められる。
THW=D/V ・・・(式36)
ステップS106では、アクセルペダルオフ操作が行われたか否かを判定する。例えば、ステップS102で検出された今回のアクセルペダル操作量が実質的に0になり、アクセルペダルが踏み込まれていた状態から解放されたことが検出されると、ステップS110へ進む。アクセルペダルが踏み込まれている場合は、この処理を終了する。なお、以降の説明では、踏み込んでいたアクセルペダルを離す操作をアクセルペダルオフ操作とし、アクセルペダルが離された時点をアクセルペダルオフ時とする。
ステップS110では、自車両の走行シーン判断を行う。車両走行状態や運転者の操作状態といった条件を限定して運転診断の精度向上を図るとともに、運転診断結果に応じて情報提供を行う際に運転者に与える違和感を軽減するために、自車両の走行シーンを判断し、特定の走行シーンである場合のみ、運転診断を行うようにする。具体的には、自車両が同一の先行車に安定して追従している状態からアクセルペダルを解放したという走行シーンに限定して、運転診断を行う。
安定した追従走行シーンの条件の一例は、以下の通りである。
(a)同一の先行車に追従している(例えば、車間距離が前回測定値から4m以上変化していない)
(b)急な接近状態でない(例えば、余裕時間TTCが10秒を上回る)
(c)車間時間THWが所定値以内(例えば、車間時間THWが4秒未満)
(d)運転者によるブレーキ操作がない(例えば、ブレーキペダル操作量が実質的に0)
(e)運転者によるウィンカレバー操作がない(例えば、ウィンカスイッチ65からのオン信号の入力がない)
(f)上記(a)〜(e)の状態が継続している(例えば、5秒以上継続中)
これら(a)〜(f)の条件が全て満たされると、自車両の走行シーンが安定した追従走行シーンであると判断し、運転診断を行うためにステップS112へ進む。一方、(a)〜(f)のいずれかの条件が満たされない場合は、特定の走行シーンに該当しないと判断し、運転診断は行わずにこの処理を終了する。なお、安定した追従走行シーンであるか否かを判断するための条件は、上記(a)〜(f)には限定されず、また、ブレーキ操作の有無やウィンカレバー操作の有無を別の検出手段により検出することも可能である。
ステップS112では、走行場所の判断を行う。具体的には、ナビゲーションシステム50の地図情報に記述されたリンクIDに、データベースに基づいてインデックス番号をラベリングする。リンクIDは、道路属性の変化する属性変化点であるノード同士を接続するリンクに割り付けられたIDであり、各リンクは、道路種別やリンクの長さ(ノード間の距離)等のデータを保有している。ステップS114では、現在時刻の記録を行う。
ステップS116では、ステップS112およびS114のラベリング結果に基づいて、運転者の運転診断を行うために用いるデータを保存する。ここでは、例えば、リンクIDごとに現在時刻、すなわちそのリンクを走行した時刻、走行距離、リンク内の運転特性指標、そのリンクの走行回数等を構造体形式に書き込み、走行道路データベースを構築する。第7の実施の形態では、運転者の運転特性を表す物理量として、アクセルペダル解放時の余裕時間TTCを用いる。運転特性および運転特性指標の算出方法については、運転診断処理において詳細に説明する。
つづくステップS120では、ステップS116で保存したデータを用いて運転者の運転診断を行う。運転診断は、自車両が安定して先行車に追従している状態からアクセルペダルを解放したときの運転者の運転特性に基づいて行う。追従走行時の運転特性としては、例えば自車両と先行車との車間時間THW、車間時間THWの逆数、自車両と先行車との余裕時間TTC,車間距離、および車間距離の逆数等があるが、第7の実施の形態では、アクセルペダルを解放した時点での余裕時間TTCを用いる場合を例として説明する。
なお、アクセルペダル解放時の余裕時間TTCは、アクセルペダルのオフ操作時点前後の車間距離Dおよび相対速度Vrのデータから、前後両方向のフィルタ等を利用してロバストに算出する。
図66に、車両用運転支援装置4のデータ構造を示す。A層は、運転者の現在の運転状態を示す比較的短時間の「このとき」のデータ量を表す。B層は、「このとき」よりも長時間の、運転者のその日の運転状態を示す「この日」のデータ量を表す。C層は、「この日」よりもさらに長時間の、運転者の普段の運転状態、すなわち個人特性を示す「普段」のデータ量を表す。D層は、各運転者の運転を一般的な運転者と比較して診断するための「世間一般」の運転特性を示すデータ量を表す。
A層からD層へと下位の層へ進むほど、データ量は多くなる。各層に含まれるデータ量は、「このとき」「この日」「普段」における車間時間THWの平均値を算出する際の標本数に対応し、標本数を変えることによって、図66に示すようなデータ構造を実現している。各層に含まれるデータの数値は、以下に説明するリアルタイムの計算によって随時更新される。
運転診断処理では、A層〜D層のそれぞれのデータを用いて、異なるタイムスパンでの運転、すなわち、「このとき」「この日」「普段」の運転者の運転を検出する。ステップS120で実行される運転診断処理を、図67のフローチャートを用いて詳細に説明する。
ステップS122では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の運転特性値を算出する。運転者の運転特性値として、「このとき」を定義する所定時間内のアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「このとき」を定義する所定時間は、例えば60秒とし、ステップS110で判断した安定した追従走行シーンにおいてアクセルペダルオフ時に検出された過去から現在までの60秒分のデータを用いて余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。平均値Mean_x(n)と標準偏差Stdev_x(n)を算出するために、以下のパラメータを用いる。
x(n):今回取得したデータ、すなわちステップS106で算出したアクセルペダルオフ時の余裕時間TTC
K:所定時間内に算出されたTTCのデータ個数
M1(n):今回計算する所定時間内のTTCの合計値
M2(n):今回計算する所定時間内のTTCの自乗和
M1(n-1):前回計算した所定時間内のTTCの合計値
M2(n-1):前回計算した所定時間内のTTCの自乗和
Mean_x(n):今回のデータの平均値、すなわちTTCの平均値
Var_x(n):今回のデータの分散、すなわちTTCの分散
Stdev_x(n):今回のデータの標準偏差、すなわちTTCの標準偏差
ここで、データ個数Kは、所定時間×1秒間当たりのサンプリング(標本)数で決定する。すなわち、「このとき」の所定時間を60秒とし、サンプリング数を5Hzとすると、データ個数K=300となる。
合計値M1(n)と自乗和M2(n)は、これらのパラメータを用いて以下の(式37)(式38)からそれぞれ算出することができる。
M1(n)=M1(n−1)+x(n)−M1(n−1)/K ・・・(式37)
M2(n)=M2(n−1)+(x(n))2−M2(n−1)/K ・・・(式38)
「このとき」におけるアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)、分散Var_x(n)、および標準偏差Stdev_x(n)は、それぞれ以下の(式39)(式40)(式41)から算出することができる。
Mean_x(n)=M1(n)/K ・・・(式39)
Var_x(n)=M2(n)/K−(M1(n))2/K2 ・・・(式40)
Stdev_x(n)=√(Var_x(n)) ・・・(式41)
ステップS124では、運転者の「この日」の運転診断を行うために、「この日」の運転者の追従特性値、すなわち、「この日」を定義する所定時間内のアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「この日」を定義する所定時間は、例えば360秒とし、ステップS110で判断した安定した追従走行シーンにおいてアクセルペダルオフ時に検出された過去から現在までの360秒分のデータを用いてアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「この日」の所定時間を360秒とし、サンプリング数を5Hzとすると、データ個数K=1800となる。
ステップS126では、運転者の「普段」の運転診断を行うために、「普段」の運転者の追従特性値、すなわち、「普段」を定義する所定時間内のアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「普段」を定義する所定時間は、例えば2160秒とし、ステップS110で判断した安定した追従走行シーンにおけるアクセルペダルオフ時に検出された過去から現在までの2160秒分のデータを用いてアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「普段」の所定時間を2160秒とし、サンプリング数を5Hzとすると、データ個数K=10800となる。
続くステップS128以降の処理では、ステップS122,S124,S126で算出した運転特性値を用いて運転者の運転診断を行う。ここでは、異なるタイムスパンで得られたデータに基づく運転者の運転特性をそれぞれ比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図66に示すデータ構造において、上位層(例えばA層)を下位層(例えばB層)と比較することで、運転診断を行う。
まず、ステップS128では、「この日」の運転者の運転特性に対して「このとき」の運転者の運転特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、「この日」に対する「このとき」の逸脱度は、「この日」のアクセルペダルオフ時の余裕時間TTCの分布と、「このとき」のアクセルペダルオフ時の余裕時間TTCの分布の差異を示すものである。「この日」に対する「このとき」の逸脱度を算出するために、「この日」のアクセルペダルオフ時の余裕時間TTCの分布を長時間の行動分布を表す基準の分布として用い、「このとき」のアクセルペダルオフ時の余裕時間TTCの分布を短時間の行動分布を表す比較対象の分布として用いる。
逸脱度の算出方法として、ここでは、長時間(例えば「この日」)の行動分布の「平均値−標準偏差」の位置(比較値xstdとする)で、短時間(例えば「このとき」)と長時間(例えば「この日」)の分布関数を比較するという手法を用いる。
逸脱度算出のために、ステップS122、S124で算出したアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を用いて、アクセルペダルオフ時の余裕時間TTCを正規分布と仮定して確率密度関数を算出する。
そこで、図68(a)(b)に示すように、所定値(比較値xstd)に基づいて設定される比較対象の領域において、基準となる長時間の正規分布に対して比較対象の短時間の正規分布がどれほど逸脱しているかを、逸脱度Distdiffとして算出する。具体的には、比較値xstdよりも余裕時間TTCの短い領域における比較分布と基準分布との差(図68(a)においてハッチングを施した部分の面積、図68(b)における矢印の長さ)が、逸脱度Distdiffに相当する。図68(c)(d)に示す算出方法については、後述する。
図69(a)(b)に、実際の公道実験から得られた結果をもとに算出した確率密度分布と累積分布を示す。図69(a)において、「このとき」の平均値Mean_x(n)と標準偏差Stdev_x(n)を用いてアクセルペダルオフ時の余裕時間TTCを正規分布で近似した場合の確率密度分布を一点鎖線で示し、「この日」の平均値Mean_x(n)と標準偏差Stdev_x(n)を用いてアクセルペダルオフ時の余裕時間TTCを正規分布で近似した場合の確率密度分布を実線で示す。図69(b)において、「このとき」の累積分布を一点鎖線で示し、「この日」の累積分布を実線で示す。図69(a)(b)において、「このとき」のアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)=1.22、標準偏差Stdev_x(n)=0.80であり、「この日」のアクセルペダルオフ時の余裕時間TTCの平均値Mean_x(n)=1.63、標準偏差Stdev_x(n)=1.00である。
まず、基準分布の平均値Mean_stdと標準偏差Stdev_stdとから、以下の(式42)より比較値xstdを算出する。
xstd=Mean_std−Stdev_std ・・・(式42)
比較値xstdは、基準分布と比較分布とをどの位置で比較するかを表す余裕時間TTCの値であり、図69(a)(b)においては破線で示す位置に相当する。
次に、基準分布の比較値x
stdにおける累積分布の値を算出する。正規分布の確率密度関数f(x)は、平均値をμ、標準偏差をσとすると、以下の(式43)から算出できる(図69(a)参照)。
(式43)で算出した確率密度関数f(x)を積分すると、以下の(式44)で示すように累積分布関数F(x)が得られる(図69(b)参照)。
基準分布の平均値をμ
std、標準偏差をσ
stdと置くと、比較値x
stdにおける累積分布の確率F
std(x)は、以下の(式45)で算出される。
次に、比較分布の比較値x
stdにおける累積分布の値を算出する。比較分布の平均値をμ
comp、標準偏差をσ
compと置くと、比較値x
stdにおける累積分布の確率F
comp(x)は、以下の(式46)で算出される。
基準の累積分布の確率Fstd(x)と比較対象の累積分布の確率Fcomp(x)との差を、「この日」に対する「このとき」の逸脱度Distdiffとして、以下の(式47)から算出する。
Distdiff=Fcomp(x)−Fstd(x) ・・・(式47)
逸脱度Distdiffがプラス方向に大きくなるほど、「このとき」の運転者の運転が「この日」の運転よりも余裕時間TTCが短くなる方向、すなわちハイリスク方向に偏っていることを表す。逸脱度Distdiffがマイナス方向に大きくなるほど、「このとき」の運転者の運転が「この日」の運転よりも余裕時間TTCが長くなる傾向、すなわちリスクの低下する傾向にあることを表す。運転者が常に同じ運転特性で運転を行う場合には逸脱度Distdiffは0となる。
また、ステップS128では、「普段」に対する「このとき」の逸脱度Dsitdiffも算出する。この場合は、「普段」のアクセルペダルオフ時のTTCの分布を長時間の行動分布を表す基準の分布として用い、「このとき」のアクセルペダルオフ時の余裕時間TTCの分布を短時間の行動分布を表す比較対象の分布として用いる。そして、「普段」の累積分布の確率Fstd(x)と「このとき」の累積分布の確率Fcomp(x)とを用いて、上述した(式47)から「普段」に対する「このとき」の逸脱度Distdiffを算出する。
このように、ステップS128で「この日」に対する「このとき」、および「普段」に対する「このとき」の逸脱度Distdiffをそれぞれ算出した後、ステップS130へ進む。ステップS130では、ステップS128での処理と同様に、「普段」に対する「この日」の逸脱度Distdiffを算出する。なお、ここでは、「普段」のアクセルペダルオフ時の余裕時間TTCの分布を長時間の行動分布を表す基準の分布として用い、「この日」のアクセルペダルオフ時の余裕時間TTCの分布を短時間の行動分布を表す比較対象の分布として用いる。
つづくステップS132では、ステップS128での処理と同様に、「世間一般」に対する「普段」の逸脱度Distdiffを算出する。なお、ここでは、「世間一般」のアクセルペダルオフ時の余裕時間TTCの分布を長時間の行動分布を表す基準の分布として用い、「普段」のアクセルペダルオフ時の余裕時間TTCの分布を短時間の行動分布を表す比較対象の分布として用いる。「世間一般」の運転特性値、すなわちアクセルペダルオフ時の余裕時間TTCの平均値および標準偏差は、固定値として予め適切な値を設定しておく。
このように、ステップS120で異なる複数のタイムスパンで得られたデータを用いて運転者の運転診断を行った後、ステップS140へ進む。なお、以降では説明の便宜上、「普段」に対する「このとき」の逸脱度DistdiffをDist_1a、「この日」に対する「このとき」の逸脱度DistdiffをDist_1b、「普段」に対する「この日」の逸脱度DistdiffをDist_2、「世間一般」に対する「普段」の逸脱度DistdiffをDist_3とする。
ステップS140では、ステップS120の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS128で算出した「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1b、またはステップS130で算出した「普段」に対する「この日」の逸脱度Dist_2が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_1a、Dist_1b、またはDist_2が閾値よりも大きい場合は、ステップS150へ進み、運転者への警報呈示を行う。警報呈示を行った後、この処理を終了する。
例えば、「普段」に対する「この日」の逸脱度Dist_2が閾値よりも大きい場合には、スピーカ130によってブザー音とともに「前方車に近づきすぎる傾向にあります」という音声を出力する。音声情報は、現在、運転者が普段よりも短めの車間距離をとる傾向にあることを知らせるように、あるいは、現在の車間距離よりも長めの車間距離をとるように促す内容を設定する。なお、具体的な音声情報は、これには限定されない。「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1bが閾値より大きい場合にも、予め設定された適切な音声情報を出力する。
ステップS140が否定判定され、警報呈示を行わない場合は、ステップS160へ進み、ステップS120の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS132で算出した「世間一般」に対する「普段」の逸脱度Dist_3が、指導(改善示唆)呈示を行うか否かを判断するための閾値(例えば0.07)よりも小さいか否かを判定する。ここで、指導呈示を行うかを判断するための閾値は、同一の運転者であればほぼ常に逸脱度がその範囲内に収まるような値として予め適切に設定しておく。上述した「0.07」という値は、被験者15人による実車実験の結果に基づいて設定されたものである。この実験結果によると、同一被験者ごとに算出された逸脱度は、常に0.07以内に収まった。
Dist_3が閾値よりも小さい場合は、ステップS170へ進み、運転者への指導呈示を行う。指導呈示を行った後、この処理を終了する。
例えば、指導呈示内容として、運転者の運転を褒める内容の表示および音声を出力する。例えば、「普段」の逸脱度Dist_3を点数に換算して表示する。具体的には、逸脱度Dist_3の符号を反転させた後、50を加算した値を、運転者の普段の運転操作の点数として表示ユニット180に表示する。つまり、リスクが高くなる傾向にある運転者の点数は50点以下、安全運転を心掛ける優良な運転者の点数は50点以上となる。なお、点数は、0〜100の範囲内で表示し、逸脱度Dist_3を換算した点数が100以上の場合は、100点、0以下の場合は0点とする。
また、図70に示すように、世間一般の車間距離の分布を模式的に表示ユニット180に表示し、運転者の「普段」の車間距離が世間一般に対してどの程度であるかがわかるように表示を行う。図70では、世間一般の車間距離の平均値に対して、運転者の車間距離が2段階分長いことを示しており、世間一般に比べてより余裕を持った運転特性を有していることを視覚情報として運転者に提供している。
また、世間一般の運転者に比べて運転者の普段の車間距離が長い傾向にあり、余裕をもった追従走行を行う優良ドライバであることをスピーカ130から出力する音声で運転者に知らせる。例えば、「安全運転を心掛けていますね。この調子でがんばりましょう」という音声を出力する。このように、世間一般の運転者に対して運転者個人の追従運転特性が優れていることを運転者に知らせ、良好な運転を維持するように、あるいはより向上させるように促すための表示や音声の出力を行う。
なお、表示や音声出力を行う場合に、運転者に馴染みの深い「車間距離」ということばを用いる例を説明したが、「車間時間」ということばを用いて表示や音声出力を行うことももちろん可能である。表示内容や音声情報の内容は、運転の傾向を運転者にわかりやすく効果的に伝え、ハイリスクな状態に至らないように警報を行ったり、良好な運転をより改善していくように改善示唆を行ったりすることができれば、上述した例には限定されない。
運転診断結果に基づく表示の別の例を図71に示す。図71において、縦軸は世間一般の運転特性に対する運転者個人の特性を示し、横軸は運転者の普段の運転特性に対する現在の状態を示す。ここでは、上述したように追従走行からアクセルペダルオフ操作した時点の余裕時間TTCを運転特性として用いることができる。ステップS130で算出した「普段」に対する「この日」の逸脱度が大きいほど、図中のマーカMを右方向、すなわちハイリスク方向に移動する。また、ステップS132で算出した「世間一般」に対する「普段」の逸脱度が大きいほど、図中のマーカMを上方向、すなわちハイリスク方向に移動する。
このように、図71に示す表示例では、「世間一般」を基準とした運転診断結果と、「普段」、すなわち運転者の個人特性を基準として運転診断結果とを、2軸から設定される二次元的なマップ上に表示した。なお、横軸は、「この日」に対する「このとき」の逸脱度や、「普段」に対する「このとき」の逸脱度を設定するようにすることもできる。また、縦軸と横軸とを入れ替えて表示することも可能である。
また、図71に示すように二次元マップを複数のブロックに分割し、運転者の運転特性がどの辺りにあるのかを分かりやすくするように各ブロックを色分けすることもできる。例えば、図71の最も右上のブロックを赤で表示し、左下に移動するほど色を薄くして、最も左下のブロックを水色で表示するように設定することもできる。
このように以上説明した第7の実施の形態においては、上述した第1〜6の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
運転特性を表す指標として、アクセルペダルが解放されたときの自車両と先行車との余裕時間TTCを算出する。余裕時間TTCは、自車速Vおよび相対車速Vrが一定の場合に、自車両と先行車とが接触するまでの時間を表すので、自車両が先行車に追従して走行するときの運転者の特性を表す指標として利用することにより、追従走行シーンにおいて的確な運転診断を行うことができる。
−第7の実施の形態の変形例−
以下に、逸脱度Distdiffの別の算出方法について説明する。ここでは、長時間(例えば「この日」)の行動分布と短時間(例えば「このとき」)の行動分布をそれぞれ正規分布で近似し、2つの正規分布が重ならない領域の面積の大きさを逸脱度Distdiffとして算出する。
具体的には、図68(c)(d)に示すように、基準分布と比較分布との交点αよりも余裕時間TTCの短い領域における比較分布と基準分布との差、すなわち基準分布よりもはみ出した部分の比較分布の面積の大きさを、逸脱度Distdiffとして算出する。
上述した(式44)に基準分布の平均値μ
stdと標準偏差σ
std、および比較分布の平均値μ
compと標準偏差σ
compとを代入して計算すると、基準分布の確率密度関数f
std(x)と比較分布の確率密度関数f
comp(x)は、それぞれ以下の(式48)(式49)で表される。
これらの(式48)(式49)の連立方程式を求めると、2点α、β(α<β)においてそれぞれの分布の頻度が一致する。交点αより余裕時間TTCが短い領域において2つの正規分布が重ならない範囲の面積を求めるためには、基準分布の累積分布関数を求める上記(式45)、および比較分布の累積分布関数を求める上記(式46)に交点αを代入する。そして、交点αにおける比較分布の累積分布の確率Fcomp(α)から、基準分布の累積分布の確率Fstd(α)を減算する。
逸脱度Distdiffは、以下の(式50)で算出できる。
-Distdiff=Fcomp(α)−Fstd(α) ・・・(式50)
なお、2つの正規分布の重なっている面積Distcorrは、以下の(式51)で求められる。
-Distcorr=1−-Distdiff ・・・(式51)
《第8の実施の形態》
以下に、本発明の第8の実施の形態による車両用運転支援装置について説明する。図72に、第8の実施の形態による車両用運転支援装置5の構成を示すシステム図を示す。第8の実施の形態においては、上述した第7の実施の形態と同様の機能を有する箇所には同一の符号を付して説明を省略する。ここでは、第7の実施の形態との相違点を主に説明する。
図72に示すように、車両用運転支援装置5は、舵角センサ5、レーザレーダ10、前方カメラ15、車速センサ30、ナビゲーションシステム50、ブレーキペダルストロークセンサ60、ウィンカスイッチ65、コントローラ350、スピーカ130、および表示ユニット180を備えている。
舵角センサ5は、例えばステアリングコラムもしくはステアリングホイール(不図示)付近に取り付けられた角度センサであり、ステアリングシャフトの回転からドライバの転舵による操舵角を検出する。検出した操舵角は、コントローラ350に出力される。
前方カメラ15は、フロントウィンドウ上部に取り付けられた小型のCCDカメラ、またはCMOSカメラ等であり、前方道路の状況を画像として検出する。コントローラ350は、前方カメラ15からの画像信号に画像処理を施し、自車両前方領域に存在するレーンマーカ等を検出する。なお、前方カメラ15による検知領域は車両の前後方向中心線に対して水平方向に±30deg程度であり、この領域に含まれる前方道路風景が画像として取り込まれる。
コントローラ350は、CPUと、ROMおよびRAM等のCPU周辺部品とから構成される電子制御ユニットであり、車両用運転支援装置5全体の制御を行う。コントローラ350は、舵角センサ5、レーザレーダ10、前方カメラ15、車速センサ30、ナビゲーションシステム50、ブレーキペダルストロークセンサ60およびウィンカスイッチ65等から入力される信号に基づいて運転者の運転特性を分析し、運転診断を行う。そして、運転診断結果に基づいて、運転者への情報提供を行う。運転者への情報提供としては、運転者への警報や、運転操作の改善示唆等を行う。コントローラ350における具体的な制御内容は、後述する。
第8の実施の形態においては、自車両の走行状態と運転者の運転操作に基づいて、運転者の運転診断を行い、運転診断結果に応じて運転者への警報や運転操作の改善示唆を行う。具体的には、運転者の運転特性として自車両が走行中の走行レーンから逸脱するまでの時間(レーン逸脱時間)を検出し、検出した運転特性を指標として運転診断を行う。すなわち、運転者の左右方向の運転操作に関する運転診断を行う。
第8の実施の形態による車両用運転支援装置5の動作を、図73を用いて詳細に説明する。図73は、第8の実施の形態のコントローラ350における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS200で、自車両の走行状態を検出する。ここで、自車両の走行状態として、車速センサ30によって検出される自車速Vと、レーザレーダ10によって検出される自車両と先行車との車間距離Dおよび相対速度Vrを取得する。さらに、前方カメラ15によって撮像される自車両前方領域の撮像画像に画像処理を施し、自車両の走行レーンを検出する。
ステップS202では、運転者の操作状態を検出する。ここで、運転者の操作状態として、ブレーキペダルストロークセンサ60によって検出されるブレーキペダル操作量、およびウィンカスイッチ65によって検出されるウィンカレバー操作の有無を取得する。さらに、舵角センサ5によって検出される操舵角θを取得する。
ステップS204では、後述する運転診断において、運転者の自車両の左右方向の運転特性として用いるレーン逸脱時間(Time to Lace Crossing)TLCを算出する。レーン逸脱時間TLCは、自車両が走行中の走行レーンから逸脱するまでの時間を表す物理量であり、自車両の現在位置からレーンマーカまでの左右方向距離DLと自車速Vとを用いて、以下の(式52)から算出できる。
TLC=DL/V ・・・(式52)
ステップS206では、修正操舵が行われたか否かを判定する。具体的には、ほぼ一定の操舵角で保たれていたステアリング操作状態から、所定値以上の操舵角でステアリング操作が行われた場合に、修正操舵が行われたと判断する。ここで、修正操舵の有無を判断するための閾値は、道路の車幅や車線数等に応じて予め設定されている。修正操舵の有無を判断する際は、ナビゲーションシステム50や前方カメラ15から得られる自車両の走行レーンの車幅や車線数等に応じて閾値を選択する。修正操舵ありと判定されると、ステップS210へ進み、修正操舵がない場合は、この処理を終了する。
ステップS210では、自車両の走行シーン判断を行う。車両走行状態や運転者の操作状態といった条件を限定して運転診断の精度向上を図るとともに、運転診断結果に応じて情報提供を行う際に運転者に与える違和感を軽減するために、自車両の走行シーンを判断し、特定の走行シーンである場合のみ、運転診断を行うようにする。具体的には、自車両が安定して走行している状態から修正操舵を行ったという走行シーンに限定して、運転診断を行う。
安定した走行状態の条件の一例は、以下の通りである。
(a)運転者によるブレーキ操作がない(例えば、ブレーキペダル操作量が実質的に0)
(b)運転者によるウィンカレバー操作がない(例えば、ウィンカスイッチ65からのオン信号の入力がない)
(c)車速変動が少ない(例えば、自車速Vの変化が±10km/h以下)
(d)上記(a)〜(c)の状態が継続している(例えば、5秒以上継続中)
これら(a)〜(d)の条件が全て満たされると、自車両が安定した走行状態にあると判断し、運転診断を行うためにステップS212へ進む。一方、(a)〜(d)のいずれかの条件が満たされない場合は、特定の走行シーンに該当しないと判断し、運転診断は行わずにこの処理を終了する。なお、安定した走行状態であるか否かを判断するための条件は、上記(a)〜(d)には限定されず、また、ブレーキ操作の有無やウィンカレバー操作の有無を別の検出手段により検出することも可能である。
ステップS212では、走行場所の判断を行う。ステップS214では、現在時刻の記録を行う。ステップS216では、ステップS212およびS214のラベリング結果に基づいて、運転者の運転診断を行うために用いるデータを保存する。ここでは、例えば、リンクIDごとに現在時刻、すなわちそのリンクを走行した時刻、走行距離、リンク内の運転特性指標、そのリンクの走行回数等を構造体形式に書き込み、走行道路データベースを構築する。
第8の実施の形態では、運転者の運転特性を表す物理量として、修正操舵が行われたときのレーン逸脱時間TLCを用いる。具体的には、操舵方向に存在するレーンマーカから自車両が逸脱するまでの時間を用いる。運転特性および運転特性指標の算出方法については、運転診断処理において詳細に説明する。
つづくステップS220では、ステップS216で保存したデータを用いて運転者の運転診断を行う。運転診断は、安定した走行状態から運転者が修正操舵を行ったときの運転者の運転特性に基づいて行う。修正操舵時の運転特性として、ここでは、修正操舵を行ったときのレーン逸脱時間TLCを用いる場合を例として説明する。
図74に、レーン逸脱時間TLCの時間変化の一例を示し、図75に、レーン逸脱時間TLCの頻度分布の一例を示す。図75に示すように、自車両が安定した走行状態にあるとき、通常、レーン逸脱時間TLCの分布は2.0秒程度でピークとなる。図76は、修正操舵時のレーン逸脱時間TLCの変化の一例を示す。図76に示すように、運転者が漫然と運転操作を行っている場合は、修正操舵が遅くなるためレーン逸脱時間TLCが短くなる傾向にあり、緊張して運転操作を行っている場合は、早いタイミングで修正操舵を行うためレーン逸脱時間TLCが長くなる傾向にある。
運転診断処理では、図66に示すデータ構造のA層〜D層のそれぞれのデータを用いて、異なるタイムスパンでの運転、すなわち、「このとき」「この日」「普段」の運転者の運転を見極める。ステップS220で実行される運転診断処理を、図77のフローチャートを用いて詳細に説明する。
ステップS222では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の運転特性値を算出する。運転者の運転特性値として、「このとき」を定義する所定時間内の修正操舵時のレーン逸脱時間TLCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「このとき」を定義する所定時間は、例えば60秒とし、ステップS210で判断した安定した走行シーンにおいて修正操舵時に検出された過去から現在までの60秒分のデータを用いて、レーン逸脱時間TLCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。平均値Mean_x(n)と標準偏差Stdev_x(n)は、第7の実施の形態と同様に、(式39)(式41)を利用してそれぞれ算出することができる。
ステップS224では、運転者の「この日」の運転診断を行うために、「この日」の運転者の追従特性値、すなわち、「この日」を定義する所定時間内の修正操舵時のレーン逸脱時間TLCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「この日」を定義する所定時間は、例えば360秒とし、ステップS210で判断した安定した走行状態において修正操舵時に検出された過去から現在までの360秒分のデータを用いて、レーン逸脱時間TLCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「この日」の所定時間を360秒とし、サンプリング数を5Hzとすると、データ個数K=1800となる。
ステップS226では、運転者の「普段」の運転診断を行うために、「普段」の運転者の追従特性値、すなわち、「普段」を定義する所定時間内の修正操舵時のレーン逸脱時間TLCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「普段」を定義する所定時間は、例えば2160秒とし、ステップS210で判断した安定した走行シーンにおける修正操舵時に検出された過去から現在までの2160秒分のデータを用いてレーン逸脱時間TLCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「普段」の所定時間を2160秒とし、サンプリング数を5Hzとすると、データ個数K=10800となる。
続くステップS228以降の処理では、ステップS222,S224,S226で算出した運転特性値を用いて運転者の運転診断を行う。ここでは、異なるタイムスパンで得られたデータに基づく運転者の運転特性をそれぞれ比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図66に示すデータ構造において、上位層(例えばA層)を下位層(例えばB層)と比較することで、運転診断を行う。
まず、ステップS228では、「この日」の運転者の運転特性に対して「このとき」の運転者の運転特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、「この日」に対する「このとき」の逸脱度は、「この日」の修正操舵時のレーン逸脱時間TLCの分布と、「このとき」の修正操舵時の逸脱時間TLCの分布の差異を示すものである。「この日」に対する「このとき」の逸脱度を算出するために、「この日」の修正操舵時のレーン逸脱時間TLCの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の修正操舵時のレーン逸脱時間TLCの分布を短時間の行動分布を表す比較対象の分布として用いる。
ここでは、第7の実施の形態と同様に、上述した(式47)もしくは(式50)を利用して逸脱度Distdiffを算出する。また、「普段」に対する「このとき」の逸脱度Dsitdiffも算出する。この場合は、「普段」の修正操舵時のTLCの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の修正操舵時のTLCの分布を短時間の行動分布を表す比較対象の分布として用いる。そして、「普段」の累積分布の確率Fstd(x)と「このとき」の累積分布の確率Fcomp(x)とを用いて、上述した(式47)もしくは(式50)から「普段」に対する「このとき」の逸脱度Distdiffを算出する。
このように、ステップS228で「この日」に対する「このとき」、および「普段」に対する「このとき」の逸脱度Distdiffをそれぞれ算出した後、ステップS230へ進む。ステップS230では、ステップS228での処理と同様に、「普段」に対する「この日」の逸脱度Distdiffを算出する。なお、ここでは、「普段」の修正操舵時のレーン逸脱時間TLCの分布を長時間の行動分布を表す基準の分布として用い、「この日」の修正操舵時のレーン逸脱時間TLCの分布を短時間の行動分布を表す比較対象の分布として用いる。
つづくステップS232では、ステップS228での処理と同様に、「世間一般」に対する「普段」の逸脱度Distdiffを算出する。なお、ここでは、「世間一般」の修正操舵時のレーン逸脱時間TLCの分布を長時間の行動分布を表す基準の分布として用い、「普段」の修正操舵時のレーン逸脱時間TLCの分布を短時間の行動分布を表す比較対象の分布として用いる。「世間一般」の運転特性値、すなわち修正操舵時のレーン逸脱時間TLCの平均値および標準偏差は、固定値として予め適切な値を設定しておく。
このように、ステップS220で異なる複数のタイムスパンで得られたデータを用いて運転者の運転診断を行った後、ステップS240へ進む。なお、以降では説明の便宜上、「普段」に対する「このとき」の逸脱度DistdiffをDist_1a、「この日」に対する「このとき」の逸脱度DistdiffをDist_1b、「普段」に対する「この日」の逸脱度DistdiffをDist_2、「世間一般」に対する「普段」の逸脱度DistdiffをDist_3とする。
ステップS240では、ステップS220の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS228で算出した「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1b、またはステップS230で算出した「普段」に対する「この日」の逸脱度Dist_2が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_1a、Dist_1b、またはDist_2が閾値よりも大きい場合は、ステップS250へ進み、運転者への警報呈示を行う。警報呈示を行った後、この処理を終了する。
例えば、「普段」に対する「この日」の逸脱度Dist_2が閾値よりも大きい場合には、スピーカ130によってブザー音とともに「レーン超えに注意が必要です」という音声を出力する。音声情報は、現在、運転者の修正操舵の開始が遅い傾向にあることを知らせるように、あるいは、ステアリング操作の安定を促す内容を設定する。なお、具体的な音声情報は、これには限定されない。「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1bが閾値より大きい場合にも、予め設定された適切な音声情報を出力する。
ステップS240が否定判定され、警報呈示を行わない場合は、ステップS260へ進み、ステップS220の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS232で算出した「世間一般」に対する「普段」の逸脱度Dist_3が、指導(改善示唆)呈示を行うか否かを判断するための閾値(例えば0.07)よりも小さいか否かを判定する。ここで、指導呈示を行うかを判断するための閾値は、同一の運転者であればほぼ常に逸脱度がその範囲内に収まるような値として予め適切に設定しておく。上述した「0.07」という値は、被験者15人による実車実験の結果に基づいて設定されたものである。この実験結果によると、同一被験者ごとに算出された逸脱度は、常に0.07以内に収まった。
Dist_3が閾値よりも小さい場合は、ステップS270へ進み、運転者への指導呈示を行う。指導呈示を行った後、この処理を終了する。
例えば、指導呈示内容として、運転者の運転を褒める内容の表示および音声を出力する。例えば、「普段」の逸脱度Dist_3を点数に換算して表示する。具体的には、逸脱度Dist_3の符号を反転させた後、50を加算した値を、運転者の普段の運転操作の点数として表示ユニット180に表示する。つまり、修正操舵が遅い傾向にある運転者の点数は50点以下、早めの安定したステアリング操作を行う優良な運転者の点数は50点以上となる。なお、点数は、0〜100の範囲内で表示し、逸脱度Dist_3を換算した点数が100以上の場合は、100点、0以下の場合は0点とする。
なお、音声により改善示唆を行うこともできる。このように、世間一般の運転者に対して運転者個人の追従運転特性が優れていることを運転者に知らせ、良好な運転を維持するように、あるいはより向上させるように促すための表示や音声の出力を行う。また、図71に示したような二次元マップを用いて運転診断結果を表示することもできる。
このように以上説明した第8の実施の形態においては、上述した第1〜7の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
運転特性を表す指標として、修正操舵が行われたときの、自車両が走行レーンから逸脱するまでのレーン逸脱時間TLCを算出する。レーン逸脱時間TLCは、自車両がレーン境界に到達し自車線から逸脱するまでの時間を表すので、運転者の特性を表す指標として利用することにより、運転者が漫然と運転しているか、緊張して運転しているかといった観点から、的確な運転診断を行うことができる。
《第9の実施の形態》
以下に、本発明の第9の実施の形態による車両用運転支援装置について説明する。第9の実施の形態による車両用運転支援装置の基本構成は、図63に示した第7の実施の形態と同様である。ここでは、第7の実施の形態との相違点を主に説明する。なお、第9の実施の形態の車両用運転支援装置においては、アクセルペダルストロークセンサ55を省略することもできる。
第9の実施の形態では、自車両が先行車に追従して走行している状態からブレーキペダルを踏み込み操作したときの運転特性を検出し、検出した運転特性を指標として運転診断を行う。
第9の実施の形態による車両用運転支援装置4の動作を、図78を用いて詳細に説明する。図78は、第9の実施の形態のコントローラ300における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS800で、自車両の走行状態を検出する。ここで、自車両の走行状態として、車速センサ30によって検出される自車速Vと、レーザレーダ10によって検出される自車両と先行車との車間距離Dおよび相対速度Vrを取得する。ステップS802では、運転者の操作状態を検出する。ここで、運転者の操作状態として、ブレーキペダルストロークセンサ60によって検出されるブレーキペダル操作量、およびウィンカスイッチ65によって検出されるウィンカレバー操作の有無を取得する。ステップS804では、後述する自車両の走行シーン判断のために、上述した(式35)(式36)を用いて、自車両と先行車との余裕時間TTCおよび車間時間THWを算出する。
ステップS806では、ブレーキペダルが踏み込まれているか否かを判定する。例えば、ブレーキペダル操作量が0よりも大きい場合に、ブレーキペダルが踏み込まれていると判定する。ブレーキペダルが踏み込まれている場合は、ステップS810へ進み、ブレーキペダルが踏み込まれていない場合は、この処理を終了する。なお、以降の説明では、ブレーキペダルが踏み込み操作されている状態を、ブレーキ操作時とする。
ステップS810では、自車両の走行シーン判断を行う。車両走行状態や運転者の操作状態といった条件を限定して運転診断の精度向上を図るとともに、運転診断結果に応じて情報提供を行う際に運転者に与える違和感を軽減するために、自車両の走行シーンを判断し、特定の走行シーンである場合のみ、運転診断を行うようにする。具体的には、自車両が同一の先行車に安定して追従している状態においてブレーキペダルを操作しているという走行シーンに限定して、運転診断を行う。
安定した追従走行シーンの条件の一例は、以下の通りである。
(a)同一の先行車に追従している(例えば、車間距離が前回測定値から4m以上変化していない)
(b)急な接近状態でない(例えば、余裕時間TTCが10秒を上回る)
(c)車間時間THWが所定値以内(例えば、車間時間THWが4秒未満)
(d)運転者によるウィンカレバー操作がない(例えば、ウィンカスイッチ65からのオン信号の入力がない)
(e)上記(a)〜(d)の状態が継続している(例えば、5秒以上継続中)
これら(a)〜(e)の条件が全て満たされると、自車両の走行シーンが安定した追従走行シーンであると判断し、運転診断を行うためにステップS812へ進む。一方、(a)〜(e)のいずれかの条件が満たされない場合は、特定の走行シーンに該当しないと判断し、運転診断は行わずにこの処理を終了する。なお、安定した追従走行シーンであるか否かを判断するための条件は、上記(a)〜(e)には限定されず、また、ブレーキ操作の有無やウィンカレバー操作の有無を別の検出手段により検出することも可能である。
ステップS812では、走行場所の判断を行う。ステップS814では、現在時刻の記録を行う。ステップS816では、ステップS812およびS814のラベリング結果に基づいて、運転者の運転診断を行うために用いるデータを保存する。ここでは、例えば、リンクIDごとに現在時刻、すなわちそのリンクを走行した時刻、走行距離、リンク内の運転特性指標、そのリンクの走行回数等を構造体形式に書き込み、走行道路データベースを構築する。第9の実施の形態では、運転者の運転特性を表す物理量として、ブレーキ操作時に算出される余裕時間TTCの最低値(最低余裕時間)を用いる。
つづくステップS820では、ステップS816で保存したデータを用いて運転者の運転診断を行う。運転診断は、安定した追従走行において運転者がブレーキペダルを踏み込んでいる場合の運転者の運転特性に基づいて行う。ブレーキ操作時の運転特性としては、自車両と先行車との車間時間THW,車間時間の逆数1/THW,車間距離D、車間距離の逆数等が挙げられるが、ここでは、ブレーキペダルを踏み込んでいる場合の最低余裕時間TTCを用いる場合を例として説明する。
運転診断処理では、図66に示すデータ構造のA層〜D層のそれぞれのデータを用いて、異なるタイムスパンでの運転、すなわち、「このとき」「この日」「普段」の運転者の運転を見極める。ステップS820で実行される運転診断処理を、図79のフローチャートを用いて詳細に説明する。
ステップS822では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の運転特性値を算出する。運転者の運転特性値として、「このとき」を定義する所定時間内のブレーキ操作時の最低余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「このとき」を定義する所定時間は、例えば60秒とし、ステップS810で判断した安定した追従走行状態においてブレーキ操作時に検出された過去から現在までの60秒分のデータを用いて、最低余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。平均値Mean_x(n)と標準偏差Stdev_x(n)は、第7の実施の形態と同様に、(式39)(式41)を利用してそれぞれ算出することができる。
ステップS824では、運転者の「この日」の運転診断を行うために、「この日」の運転者の運転特性値、すなわち、「この日」を定義する所定時間内のブレーキ操作時の最低余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「この日」を定義する所定時間は、例えば360秒とし、ステップS810で判断した安定した追従走行状態においてブレーキ操作時に検出された過去から現在までの360秒分のデータを用いて、最低余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「この日」の所定時間を360秒とし、サンプリング数を5Hzとすると、データ個数K=1800となる。
ステップS826では、運転者の「普段」の運転診断を行うために、「普段」の運転者の追従特性値、すなわち、「普段」を定義する所定時間内のブレーキ操作時の最低余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「普段」を定義する所定時間は、例えば2160秒とし、ステップS810で判断した安定した追従走行シーンにおけるブレーキ操作時に検出された過去から現在までの2160秒分のデータを用いて最低余裕時間TTCの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「普段」の所定時間を2160秒とし、サンプリング数を5Hzとすると、データ個数K=10800となる。
続くステップS828以降の処理では、ステップS822,S824,S826で算出した運転特性値を用いて運転者の運転診断を行う。ここでは、異なるタイムスパンで得られたデータに基づく運転者の運転特性をそれぞれ比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図66に示すデータ構造において、上位層(例えばA層)を下位層(例えばB層)と比較することで、運転診断を行う。
まず、ステップS828では、「この日」の運転者の運転特性に対して「このとき」の運転者の運転特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、「この日」に対する「このとき」の逸脱度は、「この日」のブレーキ操作時の最低余裕時間TTCの分布と、「このとき」のブレーキ操作時の最低余裕時間TTCの分布の差異を示すものである。「この日」に対する「このとき」の逸脱度を算出するために、「この日」のブレーキ操作時の最低余裕時間TTCの分布を長時間の行動分布を表す基準の分布として用い、「このとき」のブレーキ操作時の最低余裕時間TTCの分布を短時間の行動分布を表す比較対象の分布として用いる。
ここでは、第7の実施の形態と同様に、上述した(式47)もしくは(式50)を利用して逸脱度Distdiffを算出する。また、「普段」に対する「このとき」の逸脱度Dsitdiffも算出する。この場合は、「普段」のブレーキ操作時の最低余裕時間TTCの分布を長時間の行動分布を表す基準の分布として用い、「このとき」のブレーキ操作時の最低余裕時間TTCの分布を短時間の行動分布を表す比較対象の分布として用いる。そして、「普段」の累積分布の確率Fstd(x)と「このとき」の累積分布の確率Fcomp(x)とを用いて、上述した(式47)もしくは(式50)から「普段」に対する「このとき」の逸脱度Distdiffを算出する。
このように、ステップS828で「この日」に対する「このとき」、および「普段」に対する「このとき」の逸脱度Distdiffをそれぞれ算出した後、ステップS830へ進む。ステップS830では、ステップS828での処理と同様に、「普段」に対する「この日」の逸脱度Distdiffを算出する。なお、ここでは、「普段」のブレーキ操作時の最低余裕時間TTCの分布を長時間の行動分布を表す基準の分布として用い、「この日」のブレーキ操作時の最低余裕時間TTCの分布を短時間の行動分布を表す比較対象の分布として用いる。
つづくステップS832では、ステップS828での処理と同様に、「世間一般」に対する「普段」の逸脱度Distdiffを算出する。なお、ここでは、「世間一般」のブレーキ操作時の最低余裕時間TTCの分布を長時間の行動分布を表す基準の分布として用い、「普段」のブレーキ操作時の最低余裕時間TTCの分布を短時間の行動分布を表す比較対象の分布として用いる。「世間一般」の運転特性値、すなわちブレーキ操作時の最低余裕時間TTCの平均値および標準偏差は、固定値として予め適切な値を設定しておく。
このように、ステップS820で異なる複数のタイムスパンで得られたデータを用いて運転者の運転診断を行った後、ステップS840へ進む。なお、以降では説明の便宜上、「普段」に対する「このとき」の逸脱度DistdiffをDist_1a、「この日」に対する「このとき」の逸脱度DistdiffをDist_1b、「普段」に対する「この日」の逸脱度DistdiffをDist_2、「世間一般」に対する「普段」の逸脱度DistdiffをDist_3とする。
ステップS840では、ステップS820の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS828で算出した「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1b、またはステップS830で算出した「普段」に対する「この日」の逸脱度Dist_2が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_1またはDist_2が閾値よりも大きい場合は、ステップS850へ進み、運転者への警報呈示を行う。警報呈示を行った後、この処理を終了する。
例えば、「普段」に対する「この日」の逸脱度Dist_2が閾値よりも大きい場合には、スピーカ130によってブザー音とともに「ブレーキ操作が遅い傾向があります」という音声を出力する。音声情報は、現在、運転者のブレーキペダル操作が遅い傾向にあることを知らせるように、あるいは、早めのブレーキ操作を促す内容を設定する。なお、具体的な音声情報は、これには限定されない。「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1bが閾値より大きい場合にも、予め設定された適切な音声情報を出力する。
ステップS840が否定判定され、警報呈示を行わない場合は、ステップS860へ進み、ステップS820の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS832で算出した「世間一般」に対する「普段」の逸脱度Dist_3が、指導(改善示唆)呈示を行うか否かを判断するための閾値(例えば0.07)よりも小さいか否かを判定する。
Dist_3が閾値よりも小さい場合は、ステップS870へ進み、運転者への指導呈示を行う。指導呈示を行った後、この処理を終了する。例えば、指導呈示内容として、運転者の運転を褒める内容の表示および音声を出力する。例えば、「普段」の逸脱度Dist_3を点数に換算して表示する。具体的には、逸脱度Dist_3の符号を反転させた後、50を加算した値を、運転者の普段の運転操作の点数として表示ユニット180に表示する。つまり、ブレーキ操作が遅い傾向にある運転者の点数は50点以下、早めの安定したブレーキ操作を行う優良な運転者の点数は50点以上となる。なお、点数は、0〜100の範囲内で表示し、逸脱度Dist_3を換算した点数が100以上の場合は、100点、0以下の場合は0点とする。
なお、音声により改善示唆を行うこともできる。このように、世間一般の運転者に対して運転者個人の追従運転特性が優れていることを運転者に知らせ、良好な運転を維持するように、あるいはより向上させるように促すための表示や音声の出力を行う。また、図71に示したような二次元マップを用いて運転診断結果を表示することもできる。
このように以上説明した第9の実施の形態においては、上述した第1〜8の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
運転特性を表す指標として、ブレーキ操作が行われたときの自車両と先行車との余裕時間TTCの最低値を利用する。余裕時間TTCは、自車速Vおよび相対車速Vrが一定の場合に、自車両と先行車とが接触するまでの時間を表す。自車両が先行車に追従走行している状態からブレーキ操作を行った場合に、余裕時間TTCがどの程度まで低下するかを把握して運転者の特性を表す指標として利用することにより、追従走行シーンにおいてブレーキ操作を行う場合について的確な運転診断を行うことができる。
《第10の実施の形態》
以下に、本発明の第10の実施の形態による車両用運転支援装置について説明する。第10の実施の形態による車両用運転支援装置の基本構成は、図63に示した第7の実施の形態と同様である。ここでは、第7の実施の形態との相違点を主に説明する。なお、第10の実施の形態の車両用運転支援装置においては、アクセルペダルストロークセンサ55を省略することもできる。
第10の実施の形態では、自車両が先行車を追い越す場合の運転特性を検出し、検出した運転特性を指標として運転診断を行う。
第10の実施の形態による車両用運転支援装置4の動作を、図80を用いて詳細に説明する。図80は、第10の実施の形態のコントローラ300における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS900で、自車両の走行状態を検出する。ここで、自車両の走行状態として、車速センサ30によって検出される自車速Vと、レーザレーダ10によって検出される自車両と先行車との車間距離Dおよび相対速度Vrを取得する。また、ナビゲーションシステム50から自車両が走行する道路の情報を取得する。ステップS902では、運転者の操作状態を検出する。ここで、運転者の操作状態として、ブレーキペダルストロークセンサ60によって検出されるブレーキペダル操作量、およびウィンカスイッチ65によって検出されるウィンカレバー操作の有無を取得する。ステップS904では、後述する自車両の走行シーン判断のために、上述した(式35)(式36)を用いて、自車両と先行車との余裕時間TTCおよび車間時間THWを算出する。
ステップS906では、自車両が追越動作を行っているか否かを判定する。具体的には、自車両が片側2車線以上の道路を走行中に、ウィンカレバーを操作して加速しながら前方障害物を追い越している状態であるか否かを判定する。例えば、ナビゲーションシステム50から取得された道路情報から片側2車線以上の道路を走行中であることが検出され、ウィンカレバーが操作されている場合に、追越動作中であると判定する。追越動作中である場合は、ステップS910へ進み、追越動作中でない場合は、この処理を終了する。
ステップS910では、自車両の走行シーン判断を行う。車両走行状態や運転者の操作状態といった条件を限定して運転診断の精度向上を図るとともに、運転診断結果に応じて情報提供を行う際に運転者に与える違和感を軽減するために、自車両の走行シーンを判断し、特定の走行シーンである場合のみ、運転診断を行うようにする。具体的には、自車両が同一の先行車に安定して追従している状態から追越動作を行う走行シーンに限定して、運転診断を行う。
安定した追従走行シーンの条件の一例は、以下の通りである。
(a)同一の先行車に追従している(例えば、車間距離が前回測定値から4m以上変化していない)
(b)急な接近状態でない(例えば、余裕時間TTCが10秒を上回る)
(c)車間時間THWが所定値以内(例えば、車間時間THWが4秒未満)
(d)運転者によるブレーキペダル操作がない(例えば、ブレーキペダル操作量が0)
(e)上記(a)〜(d)の状態が継続している(例えば、5秒以上継続中)
これら(a)〜(e)の条件が全て満たされると、自車両の走行シーンが安定した追従走行シーンであると判断し、運転診断を行うためにステップS912へ進む。一方、(a)〜(e)のいずれかの条件が満たされない場合は、特定の走行シーンに該当しないと判断し、運転診断は行わずにこの処理を終了する。なお、安定した追従走行シーンであるか否かを判断するための条件は、上記(a)〜(e)には限定されず、また、ブレーキ操作の有無やウィンカレバー操作の有無を別の検出手段により検出することも可能である。
ステップS912では、走行場所の判断を行う。ステップS914では、現在時刻の記録を行う。ステップS916では、ステップS912およびS914のラベリング結果に基づいて、運転者の運転診断を行うために用いるデータを保存する。ここでは、例えば、リンクIDごとに現在時刻、すなわちそのリンクを走行した時刻、走行距離、リンク内の運転特性指標、そのリンクの走行回数等を構造体形式に書き込み、走行道路データベースを構築する。第10の実施の形態では、運転者の運転特性を表す物理量として、追越動作時に検出される車間距離Dの最低値(最低車間距離)を用いる。
つづくステップS920では、ステップS916で保存したデータを用いて運転者の運転診断を行う。運転診断は、安定した追従走行において運転者が先行車を追い越す場合の運転者の運転特性に基づいて行う。追越時の運転特性としては、自車両と先行車との車間時間THW,車間時間の逆数1/THW,余裕時間TTC、車間距離の逆数等が挙げられるが、ここでは、追越時の最低車間距離Dを用いる場合を例として説明する。具体的には、自車両が車線変更を行う前の走行車線に存在する先行車と自車両との車間距離を利用する。なお、車線変更後の走行車線において自車両前方を走行する車両と自車両との車間距離を利用することも可能である。
運転診断処理では、図66に示すデータ構造のA層〜D層のそれぞれのデータを用いて、異なるタイムスパンでの運転、すなわち、「このとき」「この日」「普段」の運転者の運転を見極める。ステップS920で実行される運転診断処理を、図81のフローチャートを用いて詳細に説明する。
ステップS922では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の運転特性値を算出する。運転者の運転特性値として、「このとき」を定義する所定時間内の追越時の最低車間距離Dの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「このとき」を定義する所定時間は、例えば60秒とし、ステップS910で判断した安定した追従走行状態において追越時に検出された過去から現在までの60秒分のデータを用いて、最低車間距離Dの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。平均値Mean_x(n)と標準偏差Stdev_x(n)は、第7の実施の形態と同様に、(式39)(式41)を利用してそれぞれ算出することができる。
ステップS924では、運転者の「この日」の運転診断を行うために、「この日」の運転者の運転特性値、すなわち、「この日」を定義する所定時間内の追越時の最低車間距離Dの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「この日」を定義する所定時間は、例えば360秒とし、ステップS910で判断した安定した追従走行状態において追越時に検出された過去から現在までの360秒分のデータを用いて、最低車間距離Dの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「この日」の所定時間を360秒とし、サンプリング数を5Hzとすると、データ個数K=1800となる。
ステップS926では、運転者の「普段」の運転診断を行うために、「普段」の運転者の追従特性値、すなわち、「普段」を定義する所定時間内の追越時の最低車間距離Dの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「普段」を定義する所定時間は、例えば2160秒とし、ステップS910で判断した安定した追従走行シーンにおける追越時に検出された過去から現在までの2160秒分のデータを用いて最低車間距離Dの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「普段」の所定時間を2160秒とし、サンプリング数を5Hzとすると、データ個数K=10800となる。
続くステップS928以降の処理では、ステップS922,S924,S926で算出した運転特性値を用いて運転者の運転診断を行う。ここでは、異なるタイムスパンで得られたデータに基づく運転者の運転特性をそれぞれ比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図66に示すデータ構造において、上位層(例えばA層)を下位層(例えばB層)と比較することで、運転診断を行う。
まず、ステップS928では、「この日」の運転者の運転特性に対して「このとき」の運転者の運転特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、「この日」に対する「このとき」の逸脱度は、「この日」の追越時の最低車間距離Dの分布と、「このとき」の追越時の最低車間距離Dの分布の差異を示すものである。「この日」に対する「このとき」の逸脱度を算出するために、「この日」の追越時の最低車間距離Dの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の追越時の最低車間距離Dの分布を短時間の行動分布を表す比較対象の分布として用いる。
ここでは、第7の実施の形態と同様に、上述した(式47)もしくは(式50)を利用して逸脱度Distdiffを算出する。また、「普段」に対する「このとき」の逸脱度Dsitdiffも算出する。この場合は、「普段」の追越時の最低車間距離Dの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の追越時の最低車間距離Dの分布を短時間の行動分布を表す比較対象の分布として用いる。そして、「普段」の累積分布の確率Fstd(x)と「このとき」の累積分布の確率Fcomp(x)とを用いて、上述した(式47)もしくは(式50)から「普段」に対する「このとき」の逸脱度Distdiffを算出する。
このように、ステップS928で「この日」に対する「このとき」、および「普段」に対する「このとき」の逸脱度Distdiffをそれぞれ算出した後、ステップS930へ進む。ステップS930では、ステップS928での処理と同様に、「普段」に対する「この日」の逸脱度Distdiffを算出する。なお、ここでは、「普段」の追越時の最低車間距離Dの分布を長時間の行動分布を表す基準の分布として用い、「この日」の追越時の最低車間距離Dの分布を短時間の行動分布を表す比較対象の分布として用いる。
つづくステップS932では、ステップS928での処理と同様に、「世間一般」に対する「普段」の逸脱度Distdiffを算出する。なお、ここでは、「世間一般」の追越時の最低車間距離Dの分布を長時間の行動分布を表す基準の分布として用い、「普段」の追越時の最低車間距離Dの分布を短時間の行動分布を表す比較対象の分布として用いる。「世間一般」の運転特性値、すなわち追越時の最低車間距離Dの平均値および標準偏差は、固定値として予め適切な値を設定しておく。
このように、ステップS920で異なる複数のタイムスパンで得られたデータを用いて運転者の運転診断を行った後、ステップS940へ進む。なお、以降では説明の便宜上、「普段」に対する「このとき」の逸脱度DistdiffをDist_1a、「この日」に対する「このとき」の逸脱度DistdiffをDist_1b、「普段」に対する「この日」の逸脱度DistdiffをDist_2、「世間一般」に対する「普段」の逸脱度DistdiffをDist_3とする。
ステップS940では、ステップS920の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS928で算出した「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1b、またはステップS930で算出した「普段」に対する「この日」の逸脱度Dist_2が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_1a、Dist_1b、またはDist_2が閾値よりも大きい場合は、ステップS950へ進み、運転者への警報呈示を行う。警報呈示を行った後、この処理を終了する。
例えば、「普段」に対する「この日」の逸脱度Dist_2が閾値よりも大きい場合には、スピーカ130によってブザー音とともに「追越時に前方車へ近づきすぎる傾向があります」という音声を出力する。音声情報は、前方車両を追い越す際に近づきすぎる傾向があることを知らせ、追越時により長い車間距離をとるよう促す内容を設定する。なお、具体的な音声情報は、これには限定されない。「普段」に対する「このとき」の逸脱度Dist_1a、「この日」に対する「このとき」の逸脱度Dist_1bが閾値より大きい場合にも、予め設定された適切な音声情報を出力する。
ステップS940が否定判定され、警報呈示を行わない場合は、ステップS960へ進み、ステップS920の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS932で算出した「世間一般」に対する「普段」の逸脱度Dist_3が、指導(改善示唆)呈示を行うか否かを判断するための閾値(例えば0.07)よりも小さいか否かを判定する。
Dist_3が閾値よりも小さい場合は、ステップS970へ進み、運転者への指導呈示を行う。指導呈示を行った後、この処理を終了する。例えば、指導呈示内容として、運転者の運転を褒める内容の表示および音声を出力する。例えば、「普段」の逸脱度Dist_3を点数に換算して表示する。具体的には、逸脱度Dist_3の符号を反転させた後、50を加算した値を、運転者の普段の運転操作の点数として表示ユニット180に表示する。つまり、追越時に前方車に近づきすぎる傾向にある運転者の点数は50点以下、余裕を持って追い越しを行う優良な運転者の点数は50点以上となる。なお、点数は、0〜100の範囲内で表示し、逸脱度Dist_3を換算した点数が100以上の場合は、100点、0以下の場合は0点とする。
なお、音声により改善示唆を行うこともできる。このように、世間一般の運転者に対して運転者個人の追従運転特性が優れていることを運転者に知らせ、良好な運転を維持するように、あるいはより向上させるように促すための表示や音声の出力を行う。また、図71に示したような二次元マップを用いて運転診断結果を表示することもできる。
このように以上説明した第10の実施の形態においては、上述した第1〜9の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
運転特性を表す指標として、追越中の自車両と先行車との車間距離Dの最低値を利用する。ウィンカ操作をして運転者が意図的に先行車を追い越していく場合に先行車にどの程度まで接近しているかを運転者の特性を表す指標として利用することにより、追越シーンにおいて的確な運転診断を行うことができる。
《第11の実施の形態》
以下に、本発明の第11の実施の形態による車両用運転支援装置について説明する。第11の実施の形態による車両用運転支援装置の基本構成は、図63に示した第7の実施の形態と同様である。ここでは、第7の実施の形態との相違点を主に説明する。
第11の実施の形態では、自車両が安定した単独走行を行っている状態での運転特性を検出し、検出した運転特性を指標として運転診断を行う。
第11の実施の形態による車両用運転支援装置4の動作を、図82を用いて詳細に説明する。図82は、第11の実施の形態のコントローラ300における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS300で、自車両の走行状態を検出する。ここで、自車両の走行状態として、車速センサ30によって検出される自車速Vと、レーザレーダ10によって検出される先行車の有無を取得する。ステップS305では、運転者の操作状態を検出する。ここで、運転者の操作状態として、アクセルペダルストロークセンサ55によって検出されるアクセルペダル操作量、ブレーキペダルストロークセンサ60によって検出されるブレーキペダル操作量、およびウィンカスイッチ65によって検出されるウィンカレバー操作の有無を取得する。
ステップS306では、自車両が走行する道路の状態を取得する。具体的には、走行路状態を示すパラメータとして、自車両が走行する道路の道路種別(高規格幹線道路または一般道路であるか)、現在の走行路の制限車速等の情報を、ナビゲーションシステム50から取得する。
ステップS310では、自車両の走行シーン判断を行う。車両走行状態や運転者の操作状態といった条件を限定して運転診断の精度向上を図るとともに、運転診断結果に応じて情報提供を行う際に運転者に与える違和感を軽減するために、自車両の走行シーンを判断し、特定の走行シーンである場合のみ、運転診断を行うようにする。具体的には、自車両が安定して単独走行を行っている走行シーンに限定して、運転診断を行う。
安定した単独走行状態の条件の一例は、以下の通りである。
(a)レーザレーダ10の検知領域内に先行車が存在しないこと
(b)同一種別の道路を走行中
(c)同一制限車速の下で走行中
(d)運転者による大きなアクセルペダル操作もブレーキペダル操作もないこと(例えば、全操作量に対して30%未満の操作量であること)
(e)運転者によるウィンカレバー操作がないこと(例えば、ウィンカスイッチ65からのオン信号入力がない)
(f)上記(a)〜(e)の状態が継続している(例えば、5秒以上継続中)
これら(a)〜(f)の条件が全て満たされると、自車両が安定した単独走行状態であると判断し、運転診断を行うためにステップS312へ進む。一方、(a)〜(f)のいずれかの条件が満たされない場合は、特定の走行シーンに該当しないと判断し、運転診断は行わずにこの処理を終了する。なお、安定した単独走行状態であるか否かを判断するための条件は、上記(a)〜(f)には限定されず、また、ブレーキ操作の有無やウィンカレバー操作の有無を別の検出手段により検出することも可能である。
ステップS312では、走行場所の判断を行う。ステップS314では、現在時刻の記録を行う。ステップS316では、ステップS312およびS314のラベリング結果に基づいて、運転者の運転診断を行うために用いるデータを保存する。ここでは、例えば、リンクIDごとに現在時刻、すなわちそのリンクを走行した時刻、走行距離、リンク内の運転特性指標、そのリンクの走行回数等を構造体形式に書き込み、走行道路データベースを構築する。第11の実施の形態では、運転者の運転特性を表す物理量として、単独走行時に検出される自車速Vを用いる。
つづくステップS320では、ステップS316で保存したデータを用いて運転者の運転診断を行う。運転診断は、安定した単独走行状態における車速特性に基づいて行う。運転診断処理では、図66に示すデータ構造のA層〜D層のそれぞれのデータを用いて、異なるタイムスパンでの運転、すなわち、「このとき」「この日」「普段」の運転者の運転を見極める。ステップS320で実行される運転診断処理を、図83のフローチャートを用いて詳細に説明する。
ステップS322では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の単独走行車速特性値を算出する。運転者の車速特性値として、「このとき」を定義する所定時間内の自車速Vの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「このとき」を定義する所定時間は、例えば60秒とし、ステップS310で判断した安定した単独走行状態において検出された過去から現在までの60秒分のデータを用いて、自車速Vの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。平均値Mean_x(n)と標準偏差Stdev_x(n)は、第7の実施の形態と同様に、(式39)(式41)を利用してそれぞれ算出することができる。
ステップS324では、運転者の「この日」の運転診断を行うために、「この日」の運転者の単独走行車速特性値、すなわち、「この日」を定義する所定時間内の自車速Vの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「この日」を定義する所定時間は、例えば360秒とし、ステップS310で判断した安定した単独走行状態において検出された過去から現在までの360秒分のデータを用いて、自車速Vの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「この日」の所定時間を360秒とし、サンプリング数を5Hzとすると、データ個数K=1800となる。
ステップS326では、運転者の「普段」の運転診断を行うために、「普段」の運転者の単独走行車速特性値、すなわち、「普段」を定義する所定時間内の自車速Vの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「普段」を定義する所定時間は、例えば2160秒とし、ステップS310で判断した安定した単独走行状態において検出された過去から現在までの2160秒分のデータを用いて自車速Vの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、データ個数Kは、「普段」の所定時間を2160秒とし、サンプリング数を5Hzとすると、データ個数K=10800となる。
続くステップS328以降の処理では、ステップS322,S324,S326で算出した運転特性値を用いて運転者の運転診断を行う。ここでは、異なるタイムスパンで得られたデータに基づく運転者の運転特性をそれぞれ比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図66に示すデータ構造において、上位層(例えばA層)を下位層(例えばB層)と比較することで、運転診断を行う。
まず、ステップS328では、「この日」の運転者の運転特性に対して「このとき」の運転者の運転特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、「この日」に対する「このとき」の逸脱度は、「この日」の自車速Vの分布と、「このとき」の自車速Vの分布の差異を示すものである。「この日」に対する「このとき」の逸脱度を算出するために、「この日」の自車速Vの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の自車速Vの分布を短時間の行動分布を表す比較対象の分布として用いる。ここでは、第7の実施の形態と同様に、上述した(式47)もしくは(式50)を利用して逸脱度Distdiffを算出する。
このように、ステップS328で「この日」に対する「このとき」、および「普段」に対する「このとき」の逸脱度Distdiffをそれぞれ算出した後、ステップS330へ進む。ステップS330では、ステップS328での処理と同様に、「普段」に対する「この日」の逸脱度Distdiffを算出する。なお、ここでは、「普段」の自車速Vの分布を長時間の行動分布を表す基準の分布として用い、「この日」の自車速Vの分布を短時間の行動分布を表す比較対象の分布として用いる。
つづくステップS332では、ステップS328での処理と同様に、「世間一般」に対する「普段」の逸脱度Distdiffを算出する。なお、ここでは、「世間一般」の自車速Vの分布を長時間の行動分布を表す基準の分布として用い、「普段」の自車速Vの分布を短時間の行動分布を表す比較対象の分布として用いる。「世間一般」の単独走行車速特性値、すなわち単独走行時の自車速Vの平均値および標準偏差は、固定値として予め適切な値を設定しておく。
ステップS333では、過去に検出した「この日」の単独車速特性と、今回の「この日」の単独車速特性とを比較して、「過去」に対する「今回」の逸脱度Distdiffを算出する。具体的には、前回周期(例えば前日)で検出した「この日」の自車速Vの分布を長時間の行動分布を表す基準の分布として用い、今回検出した「この日」の自車速Vの分布を短時間の行動分布を表す比較対象の分布として、上述した(式47)もしくは(式50)を利用して逸脱度Distdiffを算出する。
このように、ステップS320で異なる複数のタイムスパンで得られたデータを用いて運転者の運転診断を行った後、ステップS340へ進む。なお、以降では説明の便宜上、「この日」に対する「このとき」の逸脱度DistdiffをDist_1、「普段」に対する「この日」の逸脱度DistdiffをDist_2、「世間一般」に対する「普段」の逸脱度DistdiffをDist_3、「過去のこの日」に対する「今回のこの日」の逸脱度DistdiffをDist_4とする。
ステップS340では、ステップS320の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS328で算出した「この日」に対する「このとき」の逸脱度Dist_1、ステップS330で算出した「普段」に対する「この日」の逸脱度Dist_2、またはステップS333で算出した「過去のこの日」に対する「今回のこの日」の逸脱度Dist_4が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_1、Dist_2、またはDist_4が閾値よりも大きい場合は、ステップS350へ進み、運転者への警報呈示を行う。警報呈示を行った後、この処理を終了する。
図84に、視覚情報により警報呈示を行う場合の表示例を示す。この日の単独走行車速の傾向(中期間の取得データ結果)を普段の単独走行車速の傾向(長期間の取得データ結果)と比較できるような表示とする。図84においては、普段に対して今日の車速が高い傾向にあることが示されている。
聴覚情報により警報呈示を行う場合は、逸脱度に応じた音声情報をスピーカ130から出力する。例えば、「普段」に対する「この日」の逸脱度Dist_2が閾値よりも大きい場合には、「走行車速が普段より高めです」という音声を出力する。「この日」に対する「このとき」の逸脱度Dist_1が閾値よりも大きい場合は、「走行車速が高めです」という音声を出力する。「過去のこの日」に対する「今回のこの日」の逸脱とDist_4が閾値よりも大きい場合は、「走行車速が以前より高めです」という音声を出力する。
ステップS340が否定判定され、警報呈示を行わない場合は、ステップS360へ進み、ステップS320の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS332で算出した「世間一般」に対する「普段」の逸脱度Dist_3が、指導(改善示唆)呈示を行うか否かを判断するための閾値(例えば0.07)よりも小さいか否かを判定する。
Dist_3が閾値よりも小さい場合は、ステップS370へ進み、運転者への指導呈示を行う(改善示唆)。指導呈示を行った後、この処理を終了する。図85に、視覚情報により指導呈示を行う場合の表示例を示す。運転者の普段の単独走行の車速特性を世間一般の単独走行の車速特性と比較できるような表示とする。図85においては、世間一般に対して運転者の車速が低い特性にあることが示されている。また、「普段」の逸脱度Dist_3を点数に換算して表示することもできる。具体的には、逸脱度Dist_3の符号を反転させた後、50を加算した値を、運転者の普段の運転操作の点数として表示ユニット180に表示する。
聴覚情報により指導呈示を行う場合は、例えば、「あなたの運転を分析した結果、世間一般の車速より低めです」という音声を出力し、運転者が日ごろから低い車速で走行する傾向にあり、運転者の運転を褒める内容の音声を出力する。また、図71に示したような二次元マップを用いて運転診断結果を表示することもできる。
このように以上説明した第11の実施の形態においては、上述した第1〜10の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
運転特性を表す指標として、単独走行時の自車速Vを利用するので、先行車が存在せず、運転者の意志により車速を設定できる走行シーンにおいて的確な運転診断を行うことができる。
−第11の実施の形態の変形例−
以下に、逸脱度Distdiffの別の算出方法について説明する。ここでは、基準分布の「制限車速」の位置における比較対象の分布との差分を、逸脱度Distdiffとして算出する。具体的には、図86(a)(b)に示すように、制限車速Vlmtよりも車速Vの低い領域における比較分布と基準分布との差を、逸脱度Distdiffとして算出する。
基準分布の平均値をμ
std、標準偏差をσ
stdと置くと、制限車速Vlmtにおける累積分布の確率F
std(x)は、以下の(式53)で算出される。
次に、比較分布の制限車速Vlmtにおける累積分布の値を算出する。比較分布の平均値をμ
comp、標準偏差をσ
compと置くと、制限車速Vlmtにおける累積分布の確率F
comp(x)は、以下の(式54)で算出される。
基準の累積分布の確率Fstd(vlmt)と比較対象の累積分布の確率Fcomp(vlmt)との差を、逸脱度Distdiffとして、以下の(式55)から算出する。
Distdiff=Fcomp(vlmt )−Fstd(vlmt ) ・・・(式55)
《第12の実施の形態》
以下に、本発明の第12の実施の形態による車両用運転支援装置について説明する。図87に、第12の実施の形態による車両用運転支援装置6のシステム図を示す。図87において、図63に示した第7の実施の形態と同様の機能を有する箇所には同一の符号を付して説明を省略する。ここでは、第7の実施の形態との相違点を主に説明する。
第12の実施の形態による車両用運転支援装置6は、レーザレーダ10、前方カメラ15、車速センサ30、加速度センサ35、ナビゲーションシステム50、アクセルペダルストロークセンサ55、コントローラ400、スピーカ130、および表示ユニット180等を備えている。
前方カメラ15は、フロントウィンドウ上部に取り付けられた小型のCCDカメラ、またはCMOSカメラ等であり、前方道路の状況を画像として検出する。コントローラ400は、前方カメラ15からの画像信号に画像処理を施し、自車両前方領域に存在するレーンマーカ等を検出する。なお、前方カメラ15による検知領域は車両の前後方向中心線に対して水平方向に±30deg程度であり、この領域に含まれる前方道路風景が画像として取り込まれる。加速度センサ35は、自車両の前後方向の加速度を検出するセンサであり、検出した前後加速度をコントローラ400へ出力する。
第12の実施の形態では、自車両発進時の運転特性を検出し、検出した運転特性を指標として運転診断を行う。
第12の実施の形態による車両用運転支援装置6の動作を、図88を用いて詳細に説明する。図88は、第12の実施の形態のコントローラ400における運転支援制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS700で、自車両の走行状態を検出する。ここで、自車両の走行状態として、車速センサ30によって検出される自車速V、レーザレーダ10によって検出される先行車の有無、加速度センサ35によって検出される前後加速度xgを取得する。さらに、前後加速度xgを9.8m/s2で除算することにより、G値を算出する。また、前後加速度xgを時間微分することにより、ジャーク値を算出する。前後加速度xgやジャーク値は、車両発進時の乗りごごちや不快感を表す主な指標である。
ステップS705では、運転者の操作状態を検出する。ここで、運転者の操作状態として、アクセルペダルストロークセンサ55によって検出されるアクセルペダル操作量を取得する。さらに、アクセルペダル操作量を時間微分することにより、アクセルペダル操作速度を算出する。
ステップS706では、自車両が存在する道路の状態を取得する。具体的には、自車両が存在する道路の形状を、ナビゲーションシステム50や前方カメラ15の撮像画像から取得する。
ステップS710では、自車両の走行シーン判断を行う。車両走行状態や運転者の操作状態といった条件を限定して運転診断の精度向上を図るとともに、運転診断結果に応じて情報提供を行う際に運転者に与える違和感を軽減するために、自車両の走行シーンを判断し、特定の走行シーンである場合のみ、運転診断を行うようにする。具体的には、前方に障害物の存在しない状態で停車から発進を行う走行シーンに限定して、運転診断を行う。
単独発進の走行シーンの条件の一例は、以下の通りである。
(a)レーザレーダ10の検知領域内に先行車が存在しないこと
(b)自車両の存在する道路がほぼ直線路(R≧800m)であること
(c)停車状態(自車速0km/h)からの発進直後であること(例えば発進後、10秒以内)
これら(a)〜(c)の条件が全て満たされると、自車両が単独で発進する走行シーンであると判断し、運転診断を行うためにステップS712へ進む。一方、(a)〜(c)のいずれかの条件が満たされない場合は、特定の走行シーンに該当しないと判断し、運転診断は行わずにこの処理を終了する。
ステップS712では、走行場所の判断を行う。ステップS714では、現在時刻の記録を行う。ステップS715では、停車状態から発進して10秒以内における、発進時加速特性指標の最大値を算出する。発進時加速特性を表す指標としては、例えば前後加速度xg、G値、ジャーク値、アクセルペダル操作量、およびアクセルペダル操作速度等が挙げられるが、ここでは、前後加速度xgを用いる場合を例として説明する。
ステップS716では、ステップS712およびS714のラベリング結果に基づいて、運転者の運転診断を行うために用いるデータを保存する。ここでは、例えば、リンクIDごとに現在時刻、すなわちそのリンクを走行した時刻、走行距離、リンク内の発進時加速特性指標、そのリンクの走行回数等を構造体形式に書き込み、走行道路データベースを構築する。
つづくステップS720では、ステップS716で保存したデータを用いて運転者の運転診断を行う。運転診断は、単独発進の走行シーンにおける加速特性に基づいて行う。運転診断処理では、図66に示すデータ構造のA層〜D層のそれぞれのデータを用いて、異なるタイムスパンでの運転、すなわち、「このとき」「この日」「普段」の運転者の運転を見極める。ステップS720で実行される運転診断処理を、図89のフローチャートを用いて詳細に説明する。
ステップS722では、運転者の「このとき」の運転診断を行うために、「このとき」の運転者の発進時加速特性値を算出する。運転者の発進時加速特性値として、「このとき」を定義する所定期間内の前後加速度xgの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「このとき」を定義する所定期間は、例えば直近3回の発進時とし、直近3回の発進時に検出されたデータを用いて(データ個数K=3)、前後加速度xgの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。平均値Mean_x(n)と標準偏差Stdev_x(n)は、第7の実施の形態と同様に、(式39)(式41)を利用してそれぞれ算出することができる。
ステップS724では、運転者の「この日」の運転診断を行うために、「この日」の運転者の発進時加速特性値、すなわち、「この日」を定義する所定期間内の前後加速度xgの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「この日」を定義する所定期間は、例えば直近18回とし、直近18回の発進時に検出されたデータを用いて(データ個数K=18)、前後加速度xgの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
ステップS726では、運転者の「普段」の運転診断を行うために、「普段」の運転者の発進時加速特性値、すなわち、「普段」を定義する所定期間内の前後加速度xgの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。ここで、「普段」を定義する所定期間は、例えば直近108回とし、直近108回の発進時に検出されたデータを用いて(データ個数K=108)、前後加速度xgの平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
具体的には、「このとき」と同じように、上記(式39)および(式41)を用いて平均値Mean_x(n)と標準偏差Stdev_x(n)を算出する。
続くステップS728以降の処理では、ステップS722,S724,S726で算出した運転特性値を用いて運転者の運転診断を行う。ここでは、異なるタイムスパンで得られたデータに基づく運転者の運転特性をそれぞれ比較し、両者がどの程度乖離しているかに基づいて運転者の運転を診断する。すなわち、図66に示すデータ構造において、上位層(例えばA層)を下位層(例えばB層)と比較することで、運転診断を行う。
まず、ステップS728では、「この日」の運転者の運転特性に対して「このとき」の運転者の運転特性がどの程度乖離しているかを表す逸脱度を算出する。ここで、「この日」に対する「このとき」の逸脱度は、「この日」の加速度xgの分布と、「このとき」の加速度xgの分布の差異を示すものである。「この日」に対する「このとき」の逸脱度を算出するために、「この日」の加速度xgの分布を長時間の行動分布を表す基準の分布として用い、「このとき」の加速度xgの分布を短時間の行動分布を表す比較対象の分布として用いる。ここでは、第7の実施の形態と同様に、上述した(式47)もしくは(式50)を利用して逸脱度Distdiffを算出する。
このように、ステップS728で「この日」に対する「このとき」、および「普段」に対する「このとき」の逸脱度Distdiffをそれぞれ算出した後、ステップS730へ進む。ステップS730では、ステップS728での処理と同様に、「普段」に対する「この日」の逸脱度Distdiffを算出する。なお、ここでは、「普段」の加速度xgの分布を長時間の行動分布を表す基準の分布として用い、「この日」の加速度xgの分布を短時間の行動分布を表す比較対象の分布として用いる。
つづくステップS732では、ステップS728での処理と同様に、「世間一般」に対する「普段」の逸脱度Distdiffを算出する。なお、ここでは、「世間一般」の加速度xgの分布を長時間の行動分布を表す基準の分布として用い、「普段」の加速度xgの分布を短時間の行動分布を表す比較対象の分布として用いる。「世間一般」の発進時加速特性値、すなわち単独発進時の加速度xgの平均値および標準偏差は、固定値として予め適切な値を設定しておく。
ステップS733では、過去に検出した「この日」の発進時加速特性と、今回の「この日」の発進時加速特性とを比較して、「過去」に対する「今回」の逸脱度Distdiffを算出する。具体的には、前回周期(例えば前日)で検出した「この日」の加速度xgの分布を長時間の行動分布を表す基準の分布として用い、今回検出した「この日」の加速度xgの分布を短時間の行動分布を表す比較対象の分布として、上述した(式47)もしくは(式50)を利用して逸脱度Distdiffを算出する。
このように、ステップS720で異なる複数のタイムスパンで得られたデータを用いて運転者の運転診断を行った後、ステップS740へ進む。なお、以降では説明の便宜上、「この日」に対する「このとき」の逸脱度DistdiffをDist_1、「普段」に対する「この日」の逸脱度DistdiffをDist_2、「世間一般」に対する「普段」の逸脱度DistdiffをDist_3、「過去のこの日」に対する「今回のこの日」の逸脱度DistdiffをDist_4とする。
ステップS740では、ステップS720の運転診断結果に基づいて警報呈示処理を実行するか否かを判断する。ここでは、ステップS728で算出した「この日」に対する「このとき」の逸脱度Dist_1、ステップS730で算出した「普段」に対する「この日」の逸脱度Dist_2、またはステップS733で算出した「過去のこの日」に対する「今回のこの日」の逸脱度Dist_4が、警報呈示を行うか否かを判断するための閾値(たとえば0.30)よりも大きいか否かを判定する。逸脱度Dist_1、Dist_2、またはDist_4が閾値よりも大きい場合は、ステップS750へ進み、運転者への警報呈示を行う。警報呈示を行った後、この処理を終了する。
図90に、視覚情報により警報呈示を行う場合の表示例を示す。この日の発進時加速度の傾向(中期間の取得データ結果)を普段の発進時加速度の傾向(長期間の取得データ結果)と比較できるような表示とする。図90においては、普段に対して今日の加速度が高い傾向にあることが示されている。
聴覚情報により警報呈示を行う場合は、逸脱度に応じた音声情報をスピーカ130から出力する。例えば、「普段」に対する「この日」の逸脱度Dist_2が閾値よりも大きい場合には、「発進加速度が普段より高めです」という音声を出力する。「この日」に対する「このとき」の逸脱度Dist_1が閾値よりも大きい場合は、「発進加速度が高めです」という音声を出力する。「過去のこの日」に対する「今回のこの日」の逸脱度Dist_4が閾値よりも大きい場合は、「発進加速度が以前より高めです」という音声を出力する。
ステップS740が否定判定され、警報呈示を行わない場合は、ステップS760へ進み、ステップS720の運転診断結果に基づいて指導呈示処理を実行するか否かを判断する。ここでは、ステップS732で算出した「世間一般」に対する「普段」の逸脱度Dist_3が、指導(改善示唆)呈示を行うか否かを判断するための閾値(例えば0.07)よりも小さいか否かを判定する。
Dist_3が閾値よりも小さい場合は、ステップS770へ進み、運転者への指導呈示を行う。指導呈示を行った後、この処理を終了する。図91に、視覚情報により指導呈示を行う場合の表示例を示す。運転者の普段の発進時加速度を世間一般の発進時加速度と比較できるような表示とする。図91においては、世間一般に対して運転者の発進時加速度が低い特性にあることが示されている。また、「普段」の逸脱度Dist_3を点数に換算して表示することもできる。具体的には、逸脱度Dist_3の符号を反転させた後、50を加算した値を、運転者の普段の運転操作の点数として表示ユニット180に表示する。
聴覚情報により指導呈示を行う場合は、例えば、「あなたの運転を分析した結果、世間一般の発進加速度より低めです」という音声を出力し、運転者が日ごろから低い車速で発進する傾向にあり、運転者の運転を褒める内容の音声を出力する。また、図71に示したような二次元マップを用いて運転診断結果を表示することもできる。
このように以上説明した第12の実施の形態においては、上述した第1〜11の実施の形態による効果に加えて、以下のような作用効果を奏することができる。
運転特性を表す指標として、車両発進時の前後加速度xgの最大値を利用するので、先行車が存在せず、車両発進時において的確な運転診断を行うことができる。
なお、以上説明した第1〜第12の実施の形態においては、運転診断を行った後、運転診断結果に応じて警報呈示処理または改善示唆処理を行うように構成した。ただし、これには限定されず、車両用運転支援装置として、走行状態と運転操作から運転診断のみを行うように構成することもできる。この場合、運転診断結果は例えば運転者が所望するときのみ提示したり、データを収集する基地局等へ運転診断結果を送信するように構成することも可能である。
以上説明した第1〜第12の実施の形態において、レーザレーダ10、前方カメラ15、車速センサ30、加速度センサ35、およびナビゲーションシステム50が走行状態検出手段として機能し、舵角センサ5、アクセルペダルストロークセンサ55、ブレーキペダルストロークセンサ60、およびウィンカスイッチ65が運転操作検出手段として機能し、コントローラ100,200,250,300,350,400が運転診断手段として機能することができる。なお、走行状態検出手段および運転操作検出手段は、これらには限定されず、例えばレーザレーダ10の代わりに別方式のレーダを利用することもできる。なお、以上の説明はあくまで一例であり、発明を解釈する際、上記の実施形態の記載事項と特許請求の範囲の記載事項の対応関係になんら限定も拘束もされない。