以下、添付図面を参照して、本発明の実施形態による車両運転支援システムについて説明する。まず、図1〜図3を参照して、車両運転支援システムの構成について説明する。図1は車両運転支援システムの構成図、図2は車両運転支援システムの各構成要素の機能ブロック図、図3は車両内の車両制御ブロック内の機能ブロック図である。
図1に示すように、車両運転支援システムSは、共有サーバ1と、個人サーバ3と、車両A内の車載コントローラ(ECU)5を備えている。これらは、無線又は有線の通信回線Nによって互いに通信可能に接続されている。
共有サーバ1及び個人サーバ3は、人工知能を構成するコンピュータシステムであり、それぞれ一般ドライバモデル,個人ドライバモデルを学習し逐次更新する。共有サーバ1は、演算部1a,記憶部1b,通信部1c等を有する。同様に、個人サーバ3は、演算部3a,記憶部3b,通信部3c等を有する。
車載コントローラ5も同様に演算部5a(プロセッサ),記憶部5b,通信部5c等を有する。この車載コントローラ5は、車両Aの車両制御処理を実行する。車両制御処理は、運転制御処理に加えて、運転支援処理を含む。
図2に示すように、共有サーバ1では、複数の個人サーバ3から受け取った運転データ,外部情報システム(情報提供サービスセンタ等)7aから受け取った一般データを人工知能からなる学習エンジン11(演算部1a)が学習することにより、一般ドライバモデルMaが構築される。この一般ドライバモデルMaは、新たな運転データ,一般データが学習されることにより、逐次更新される。運転データ,一般データは、記憶部1bに蓄積データDaとして蓄積される。
一般データは、例えば、人間(運転者)の音声データ,行動データ,画像データ等である。一般データは、主に一般ドライバモデルMaの一部を構成する感情推定モデルを構築するために用いられる。なお、一般ドライバモデルMaの更新には、複数の個人サーバ3からの運転データ及び外部情報源からの一般データからなるビッグデータの学習が要求される。このため、一般ドライバモデルMaの処理速度(更新間隔)は非常に遅い(例えば、1時間以上)。
一般ドライバモデルMaは、車両Aを運転する特定運転者ではなく一般運転者に対して適用するためのモデルである。そのため、特定運転者以外の複数の運転者についての運転データ、及び、一般的な人間の特性を表す感情推定用データ(一般データ)が用いられる。一般ドライバモデルMaは、複数のサブモデルを含む。学習エンジン11は、与えられた又は新規に見出された各サブモデルのテーマに対して、運転データや一般データから一般運転者の行動や状態の時間的な変化を学習し、サブモデルを作成及び更新する。サブモデルには、種々の状況における運転者の行動傾向モデル,走行判断基準モデル,感情推定モデル等が含まれる。更に、一般ドライバモデルMaは、一般知識データを有する。一般知識データは、運転データや一般データから取得された種々の一般的な情報であり、例えば特定の道路箇所の注意点,娯楽場所情報(レストラン情報等)である。
一般ドライバモデルMaのサブモデルの例を示す。一般運転者の各種感情(喜怒哀楽、特に楽しさを感じているとき)における音声モデル。楽しさの状態モデル(各種状態(運転者,周囲環境,車両)と楽しさとの間の関連性モデル)。地図データや運転者表情データ等に基づいて生成される、わき見や居眠りの発生に関するサブモデル(例えば、発生し易い特定の地点や運転者状態(例えば、走行時間)等を特定)。走行履歴データや操作履歴データ等に基づいて生成される、運転操作特性モデル(例えば、障害物の回避行動開始位置)。
学習エンジン11は、アクセル及びブレーキの操作モデルを学習する場合、運転データに含まれる、運転者,走行場所,周辺環境,時間帯,アクセル開度,ブレーキセンサデータ等に関するデータを一群のデータとして用いて、前方車両や歩行者の位置,速度,数等に応じて、どのようにアクセル及びブレーキの操作が行われるのかを学習しモデルを作成する。
また、学習エンジン11は、感情推定モデルに含まれる笑顔判定モデルを学習する場合、一般運転者又は一般人の音声データ及び音声データに関連した画像データを分析し、一般運転者が楽しさを感じているときの顔の表情の特徴を分析する。これにより、外観(即ち、顔の表情)から抽出した特徴部分の変化(口角の角度,目尻の角度等)と笑顔の関連性を示す笑顔判定モデルが生成及び更新される。笑顔判定モデルを用いることにより、特徴部分の情報(口角の角度等)から運転者が笑顔であるか否か(又は楽しいと感じていか否か)を推定することができる。特徴部分は、予め指定された部分であってもよいし、学習エンジン11が新たに検出した部分であってもよい。
また、一般ドライバモデルMaは、車両状態と運転者の感情状態との間の関連性モデル(感情生起モデル)を含む。感情状態は、運転者状態データから分析される。学習エンジン11は、感情状態の遷移を分析し、感情状態に影響を及ぼした車両状態(運動状態:車速,横加速度,前後加速度等、車載機器作動状態:空調温度,シート位置,音楽等)を分析し、どのような車両状態が感情状態に影響を与えるのかについて、車両状態と感情状態との間の関連性について学習する。感情状態に影響を与える車両状態(制御因子)は、予め設定されていてもよいし、人工知能が分析により新たな制御因子を見出して追加設定してもよい。
感情状態の分析に用いられる運転者状態データは、音声データ,画像データ,脳波データ等である。感情分析のため、例えば、音声データ(発話音声)を解析して、声帯の不随意運動に基づく音の波の周波数分析が行われる。また、画像データに基づく顔表情分析や、血流の変化のための顔色分析が行われる。また、自律神経系の交感神経/副交感神経の割合分析が行われる。これらの分析の1つ又は複数を用いることにより、例えば、喜怒哀楽を座標上に表現した感情マップやラッセル円環モデル上で感情状態を特定することができる。学習エンジン11は、感情状態の変化(即ち、感情マップや円環モデル上での移動)と車両状態の変化を分析する。
学習エンジン11は、例えば、温度環境と感情状態との間の関連性モデルを学習する場合、運転データに含まれる、運転者,感情状態,走行場所,時間帯,車内外温度,天候等に関するデータを一群のデータとして用いて、例えば、車内温度と車外温度の差,天候等の温度環境が感情状態にもたらす影響を学習し当該関連性モデルを更新する。
また、既存の関連性モデルに含まれない新たな制御因子が、感情状態に変化を及ぼすことが学習されると(例えば、車両状態の複数項目が組み合わされたときに楽しく感じる等)、新たな制御因子に基づく新規の関連性モデルが生成される。このようにして、学習エンジン11は、ビッグデータから運転者の感情状態に影響を及ぼす制御因子を検出してモデルを構築する。
個人サーバ3では、車両Aから受け取った運転データ(音声データ含む),外部情報システム7bから取得した一般データ,特定運転者の携帯情報端末装置7cから取得した通信データ(通話音声データ,メールテキストデータ,機器設定情報等)を人工知能からなる学習エンジン31(演算部3a)が学習することにより、個人ドライバモデルMbが構築される。この個人ドライバモデルMbも逐次更新される。個人サーバ3は、運転データ等を用いて、運転者の行動,車両挙動,車両性能等の時間的な変化又は履歴を学習する。このため、車両Aでの各種制御処理よりも個人ドライバモデルMbの処理速度は低速である(例えば、1秒以上)。
なお、個人サーバ3が取得する一般データは、運転傾向が共通すると考えられる運転者集団(例えば、同じ車種の車両を有する運転者の集団)に含まれる複数の運転者の音声データ,行動データ,画像データである。また、機器設定情報は、例えば、携帯情報端末装置のインターネットブラウザアプリに登録されたブックマーク情報等である。
また、車両Aのマイクで取得された音声データは、車載コントローラ5の第2同期エンジン60を介して取得される運転データにも含まれるが、通信機器を介して実時間で個人サーバ3へ直接出力される。個人サーバ3では、この音声データが音声認識される。運転データ,一般データ,音声データは、記憶部3bに蓄積データDbとして蓄積される。
また、個人サーバ3の第1同期エンジン40は、記憶部3bに記憶された蓄積データをデータ変換し、共有サーバ1へ送信する。
個人ドライバモデルMbは、特定運転者に対して適用するためのモデルである。そのため、車両Aを運転する特定運転者の運転データ、及び、この特定運転者に比較的近い運転特性を有すると考えられる他の運転者の一般データが用いられる。個人ドライバモデルMbも一般ドライバモデルMaと同様に複数のサブモデルを含む。また、個人ドライバモデルMbは、取得した運転データから抽出された周辺環境状態データや車両状態データを有する。学習エンジン31も学習エンジン11と同様の複数のサブモデルを学習する(個人ドライバモデルMbのサブモデルの例は、一般ドライバモデルMaのサブモデルの例を参照)。また、学習エンジン31は、学習エンジン11と同様に運転者の感情状態に影響を及ぼす制御因子を検出してモデルを更新し、また、新たなモデルを構築する。
車載コントローラ5では、車両センサ8のセンサデータに基づいて、車両制御ブロック(演算部)51により所定の車両制御処理が実行される。車両制御ブロック51は、車両制御処理を規定する車両制御アルゴリズム(車両制御プログラム)50を用いて、ルールベースで車両Aの各種車載機器及びシステムを制御する。即ち、センサデータに基づき、予め決められたルール(アルゴリズム)に従って各種制御が実行される(ルールベース処理)。このため、車載コントローラ5による車両制御処理では、速い処理速度が達成される(例えば、10m秒以下)。
車両制御処理は、運転制御処理に加えて、運転支援処理を含む。運転支援処理には、自動運転支援処理,支援情報提示処理,車載機器制御処理を含む。
自動運転支援処理では、車両制御システム9d(エンジン,ブレーキ,ステアリング)に指令信号が出力され、アクセル,ブレーキ,ステアリング駆動装置が自動操作される。
支援情報提示処理では、車内の情報提示装置9a(ナビゲーション装置、メータ、スピーカ等)を介して、運転者の運転操作を支援するための各種の支援情報が提供され、また、情報通信装置9c(車載通信部,携帯情報端末装置等)を介して、外部の情報システム,情報端末装置,家電製品等へ情報が提供される。
車載機器制御処理では、運転環境を改善するため、車載機器9b(空調装置、窓、ライト、ドア等)が自動的に作動される。例えば、空調装置の温度設定やオンオフが自動的に行われ、窓の開閉が自動的に行われる。
車両センサ8には、車内カメラ,生体センサ,マイク,車外カメラ,レーダ,ナビゲーション装置,車両挙動センサ,運転者操作検知センサ,車車間通信器,車両−インフラ間通信器,リモート制御器等が含まれる。
車内カメラは、車両A内の運転者や他の乗員を撮像し、車内画像データを出力する。
生体センサは、運転者の心拍,脈拍,発汗,脳波等を計測し、生体データを出力する。
マイクは、運転者や他の乗員の音声を取集し、音声データを出力する。
車外カメラは、車両Aの前方,側方,後方の画像を撮像し、車外画像データを出力する。
レーダは、車両Aの前方,側方,後方に向けて電波,音波又はレーザ光を照射し、車両Aの周囲の車外物体(先行車,他車両,歩行者,地上固定物,障害物等)からの反射波を受信し、物体の相対位置,相対速度等(例えば、先行車位置,先行車相対速度等)の車外物体データを出力する。
ナビゲーション装置は、車両位置情報を取得し、内部地図情報,外部から取得した交通渋滞情報,入力情報(目的地,経由地等)と組み合わせて、ナビゲーションデータ(複数のルート情報,運転者により選択されたルート情報等)を出力する。
車両挙動センサ及び運転者操作検知センサには、速度センサ,前後加速度センサ,横加速度センサ,ヨーレートセンサ,アクセル開度センサ,エンジン回転数センサ,ATギアポジションセンサ,ブレーキスイッチセンサ,ブレーキ油圧センサ,ステアリング角センサ,ステアリングトルクセンサ,ウインカースイッチ位置センサ,ワイパースイッチ位置センサ,ライトスイッチ位置センサ,車内外温度センサ等が含まれる。
車車間通信器,車両−インフラ間通信器,リモート制御器は、それぞれ他車両からの通信データ,交通インフラからの交通データ(交通渋滞情報,制限速度情報等),外部からのリモート操作データを取得し、これらを出力する。
車両センサ8からの出力データは、運転データとして車両制御ブロック51に入力される。また、出力データは、所定の装置(図示せず)により、又は、車載コントローラ5内のデータ処理ブロックにより、車両制御ブロック51での処理の実行に適した種々の物理量を表す運転データにデータ変換された後、車両制御ブロック51に入力される。データ変換により、1つの出力データが1又は複数の情報を表す運転データに変換される。データ変換は、出力データを変換処理しないことも含む。
例えば、車外カメラの車外画像データは、先行車や車線の位置データ,基準ライン(車線中央や設定経路)からのオフセット(ずれ)データ等にデータ変換される。また、ステアリング角センサの操舵角データは、変動データ(ステアリング角のふらつきデータ;変動幅,変動周期等)等にデータ変換される。また、車内カメラの画像データは、個人特定データ(予め登録されていた運転者画像に基づく運転者認証の結果、及び、認証された運転者を特定する個人データ),運転者の笑顔判断等のための表情データ(口角角度,目尻角度等)等にデータ変換される。
運転データは、運転者,周辺環境,車両に関する種々のデータであり、運転者状態データ,周辺環境データ,車両状態データを含む。これらデータは、それぞれ複数の個別データからなる。
運転者状態データは、運転者の身体状態を示すデータであり、車内画像データ(運転者の撮像データを含む),音声データ,生体データ(心拍データを含む)等を含む。
周辺環境データは、車両Aの周辺の他車両,歩行者,障害物や、道路形状や、交通状況等の車外物体の状況を示すデータであり、車外画像データ,車外物体データ,ナビゲーションデータ,車車間データ,車インフラ間データ等を含む。
車両状態データは、車両運動状態や車載機器の作動状態を表すデータであり、車両挙動センサによる測定データ,運転者操作検知センサによる車載機器のスイッチ位置等を表す運転者操作データ,及び個人特定データを含む。具体的には、車両状態データには、一例として、車速,前後加速度,横加速度,ヨーレート,アクセル開度,エンジン回転数,ATギアポジション,ブレーキスイッチ位置,ブレーキ油圧,前方車間距離,先行車との相対速度,ステアリング角,ステアリングトルク,ウインカースイッチ位置,ワイパースイッチ位置,ライトスイッチ位置,車内外温度,個人特定情報等が含まれる。
車載コントローラ5の第2同期エンジン60は、記憶部5bに一旦記憶された運転データをデータ変換し、個人サーバ3へ送信する。
図3に示すように、車両制御ブロック51は、現状状態分析ブロック51a,理想状態分析ブロック51b,差分算出ブロック51c,エンターテイメント(エンタメ)制御ブロック52a,セーフティ制御ブロック52bを有する。
現状状態分析ブロック51a、及び、理想状態分析ブロック51bには、運転データが入力される。現状状態分析ブロック51aでは、運転データから現状運転者状態,現状機器操作状態,現状周辺環境状態,現状車両状態が取り出される。一方、理想状態分析ブロック51bでは、多数の制御パラメータPで規定された車両制御モデル(理想モデル)に基づいて、運転データから理想運転者状態,理想機器操作状態,理想周辺環境状態,理想車両状態が計算される。
運転者状態は、例えば、運転者の心拍データ,ふらつき分析データ等により特定される。周辺環境状態は、例えば、カメラ画像データ,レーダ測定データ等により特定される。車両状態は、例えば、横加速度データ,エンジンパワーデータ,ブレーキ摩耗量データ等から特定される。
差分算出ブロック51cでは、現状状態分析ブロック51aと理想状態分析ブロック51bから出力された現状状態と理想状態(運転者状態,機器操作状態,周辺環境状態,車両状態)の種々の項目について差分を算出し、差分データとして出力する。
エンタメ制御ブロック52a、及び、セーフティ制御ブロック52bは、この差分データに基づいて各種の処理を実行する。
セーフティ制御ブロック52bは、車両制御システム9dの作動を伴うセーフティ制御処理を制御し、また、情報提示装置9a,車載機器9b,情報通信装置9cの作動を伴う支援情報提示処理も制御する。一方、エンタメ制御ブロック52aは、情報提示装置9a,車載機器9b,情報通信装置9cの作動を伴うエンタメ制御処理を制御するが、車両制御システム9dの作動を伴う制御処理は実行しない。
エンタメ制御ブロック52a、及び、セーフティ制御ブロック52bは、差分データに基づいて、情報提示装置9a,車載機器9b,情報通信装置9cへ作動指示を出力する。また、セーフティ制御ブロック52bは、車両制御システム9dへも作動指示を出力する。なお、情報通信装置9cを介して外部の情報システム7bへ送信されるデータは、情報システム7bにて蓄積され、さらに個人サーバ3へ提供可能である。
例えば、現状状態分析ブロック51aが、意識レベルが高い正常な状態で運転者が車両Aを60kmで走行させていると分析したとする。一方、理想状態分析ブロック51bは、この状態で運転者が30m先のカーブを曲がる際の予定走行経路(位置及び速度含む)を車両制御アルゴリズム50の理想モデルに基づいて計算(予想)する。また、現状状態分析ブロック51aは、引き続き状態分析を行うため、車両Aが実際に走行した走行経路を分析結果として出力する。
差分算出ブロック51cは、理想状態分析ブロック51bによる予定走行経路と、現状状態分析ブロック51aによる実際の走行経路との差分を算出する。そして、例えば、セーフティ制御ブロック52bは、予定速度と実速度とがほぼ等しい場合は特段の処理を実行せず、予定速度と実速度との速度差が小さい場合はブレーキ操作警報を発生させる処理を実行し、速度差が大きい場合は自動ブレーキを作動させる処理を実行する。
また、予定走行経路で規定されるステアリング操作タイミングよりも、実際のステアリング操作タイミングの方が所定時間以上遅い場合に、ステアリング操作タイミングを早めるように促すメッセージが表示される。
また、所定状況において、理想モデルによる予測心拍数が実際の心拍数よりも所定値以上大きいとき(興奮状態と推定)、エンタメ制御ブロック52aは、休憩を促すメッセージや気分を落ち着かせる音楽を流すことを促すメッセージを表示させる処理を実行する。
次に、図4及び図5を参照して、個人サーバ3の第1同期エンジン40及び車載コントローラ5の第2同期エンジン60について説明する。図4は共有サーバ,個人サーバ,車載コントローラにおけるデータの流れの説明図、図5は同期エンジンの動作の説明図である。
図4に示すように、車載コントローラ5は、運転データ(情報量「中」)に基づいてルールベースで認知,判断,行動決定を実行する。このため、車載コントローラ5で目標とされる情報速度は速い(<10m秒)。更に、車両制御システム9dや車載機器9b等は、車載コントローラ5から作動指令(情報量「小」)を受けると、行動決定の指令に従い作動する。このため、情報速度はとても速い(<1m秒)。
一方、個人サーバ3は、車載コントローラ5からの運転データと外部の情報システム7b等からのデータ(情報量「大」)に基づいて学習,成長する。このため、個人サーバ3での情報速度は遅い(>1秒)。更に、共有サーバ1は、複数の個人サーバ3からの運転データと外部の情報システム7a等からのビッグデータ(情報量「極大」)に基づいて学習,成長する。このため、共有サーバ1での情報速度はとても遅い(>1時間)。即ち、下位層よりも上位層の方が、扱う情報量は大きいが、情報速度は遅くなる。共有サーバ1が最も上位であり、車載コントローラ5が最も下位である。
このため、各階層においてデータ処理がスムーズに行われるように(即ち、いずれかの階層でデータ処理の流れが悪くならないように)、本実施形態では、情報エントロピーの均一化が図られている。概略的には、各階層で実行される処理の演算負荷(処理プログラムの全ステップ数)及び全処理ステップを実行する際の目標応答時間を既知として、各階層において単位時間当たりに処理されるデータ量を調整することにより、各瞬間(単位時間当たり)における処理負荷の均一化が図られている。
本実施形態では、情報エントロピーは、「単位時間当たりのデータ量×処理速度」で定義される。処理速度は、「処理プログラムの全ステップ数(全プログラム行数)×目標応答時間」で定義される。
情報エントロピー=データ量×全ステップ数×目標応答時間
例えば、車載コントローラ5において、データ量が10MB,ステップ数が1000行,目標応答時間が10m秒である場合、個人サーバ3ではそれぞれ100KB,10000行,1秒に設定され、共有サーバ1ではそれぞれ10B,100000行,1000秒に設定される。
このように各階層におけるデータ量を調整するため、下位層から上位層へ運転データを送信する際に、上位層で運転データを処理し易くするように下位層の同期エンジンにより運転データのデータ変換が行われる。このデータ変換により、運転データが量,質,時間に関して変換される。車載コントローラ5は第2同期エンジン60を有し、個人サーバ3は第1同期エンジン40を有する。
図5に示すように、車載コントローラ5は、逐次、車両センサ8の出力データに基づく運転データを受け取り、車両制御処理を実行する。一方、第2同期エンジン60は、運転データに対して第2データ変換処理(量,質,時間)を実行し、データ変換された運転データを個人サーバ3へ送信する。個人サーバ3では、受け取った運転データを運転者の行動履歴データ及び状態履歴データとして記憶部3bに蓄積すると共に、所定の処理に用いる。そして、第1同期エンジン40は、受け取った運転データに対して第1データ変換処理(量,質,時間)を実行し、データ変換された運転データを共有サーバ1へ送信する。共有サーバ1では、受け取った運転データを運転者の行動履歴データ及び状態履歴データとして記憶部1bに蓄積すると共に、所定の処理に用いる。
上位層の同期要求ブロック21,41は、上位層の処理で要求される方式に応じて、下位層の同期エンジン40,60に対して、必要な情報属性の運転データの送信を要求する取得要求指令を出す。この指令を受けて下位層の同期エンジンは、要求される情報属性に応じたデータ変換処理を実行する。下位層の同期エンジンは、同じ下位層の他のデータ処理ブロック(図示せず)へデータ変換指示を出して、データ変換させ、データ変換後の運転データを上位層へ出力する。また、下位層は、上位層を監視する。同期要求ブロック21,41は、それぞれ第1同期エンジン40,第2同期エンジン60に対して、例えば、データ量低減方式,個別データの関連付け及び切り離し方式(複数の個別データの指定),時間軸設定方式(抽出方式,統計処理方式)を規定する取得要求指令を出力する。
データの量に関するデータ変換処理では、運転データのデータ量が低減される。例えば、特徴量の抽出,情報量の変換等によるデータ量低減処理が行われる。第1同期エンジン40,第2同期エンジン60において、それぞれ第1データ量低減処理,第2データ量低減処理が実行される。
特徴量の抽出では、上位層の処理での必要最小限の情報を含むようにデータサイズが低減される。例えば、画像データは、この画像データから抽出された特徴量のデータに変換される(口角の角度,車線の情報等)。
情報量の変換では、運転データが要約統計量(平均化,時間軸フィルタ等)に変換される。例えば、センタラインからのずれ量(10m秒毎のずれ量データ)が、100秒間隔の平均ずれ量データに変換される。また、10m秒毎の操舵角データが、5秒単位のふらつき度判定データに変換される。
特徴量の抽出や情報量の変換は、同期エンジンが他の処理ブロックに実行させることができる。
データの質に関するデータ変換処理では、運転データに含まれる複数項目の情報間の関連性を変換するデータ関連性変換処理が行われる。第1同期エンジン40,第2同期エンジン60において、それぞれ第1データ関連性変換処理,第2データ関連性変換処理が実行される。
関連性の変換では、選択的に複数の個別データが紐付けされる。例えば、個人特定データと心拍データ,時間データと心拍データ,位置データと心拍データがそれぞれ関連付けられる。個人特定データ,心拍データ,時間データ,位置データを1つに関連付けてもよい。関連付けにより、ある目的の処理において関連付けデータを一体のデータとして処理することが可能となるので、上位層における処理が軽減される。例えば、笑顔判定モデルの学習用に、口角の角度データ(データ量低減処理により得られた特徴量データ),音声データ,運転操作データ,車内環境データ(空調,音響等)を関連付けることができる。
また、関連性の変換では、関連付けられた複数の情報から特定情報の削除が行われる。例えば、個人特定データが切り離される。個人サーバ3では、特定の個別データと個人特定データが関連付けられた複合データが用いられるが、共有サーバ1では、この複合データの匿名性を確保するため、複合データから個人特定データが切り離された複合データが用いられる。また、個人特定データが、姓名,年齢,性別,住所等を含む場合、特定項目(姓名,性別)のみを切り離してもよい。
データの時間に関するデータ変換処理では、運転データの時間軸加工を行う時間軸変更処理が行われる。第1同期エンジン40,第2同期エンジン60において、それぞれ第1時間軸変更処理,第2時間軸変更処理が実行される。
時間軸加工では、所定の時間変化データが時間軸上で選択的に抽出(サンプリング)される。例えば、データの質が同じ場合は、時間軸方向に情報が間引かれる。例えば、10m秒間隔の心拍データが、100m秒間隔の心拍データに間引かれる。また、例えば、不整脈を検出するために心拍データが用いられる場合、時間軸加工により、有意な数値を示す(所定の閾値を超える)心拍データのみが選択的に抽出される。また、時間軸加工では、統計処理により、運転データの要約統計量への変換(平均化,時間軸フィルタ)や、統計情報(例えば、度数分布等)への変換が行われる。時間軸加工では、時間軸上での選択的な抽出時間間隔(一定又は不定)や統計処理時間間隔が、一般ドライバモデルMa,個人ドライバモデルMbの更新処理時間(目標応答時間)に応じて設定される。したがって、目標応答時間が長いほど、時間軸加工により出力される運転データのデータ間隔が長くなる。
なお、本実施形態では、階層間(共有サーバ1,個人サーバ3,車載コントローラ5)においてデータ量の調整が行われるが、これに限らず、各階層内の機能ブロック(例えば、個人サーバ3の学習エンジン31,パラメータ更新エンジン32,リコメンドエンジン33,差分分析エンジン34,結果検証エンジン35をそれぞれ構成するコンピュータ)間においてもデータ量の調整を同様に行ってもよい。
次に、図6を参照して、パラメータ更新処理について説明する。図6は、パラメータ更新処理の説明図である。個人サーバ3は、パラメータ更新エンジン32を有する。
パラメータ更新エンジン32は、共有サーバ1から一般ドライバモデルMaを取得し、車載コントローラ5から車両制御処理を規定する各種の制御パラメータP,運転データ(音声データ,車両状態データを含む)を取得し、個人ドライバモデルMbを参照して、制御パラメータPを更新する。
パラメータ更新エンジン32は、原則的に学習エンジン31によって行われる個人ドライバモデルMbの更新を判断し、この更新に応じて、更新部分に関連した車両制御アルゴリズム50を更新する。具体的には、車両制御アルゴリズム50に含まれる制御パラメータP(制御パラメータの値、制御パラメータの種類を含む)が変更される。
このためパラメータ更新エンジン32は、更新前の個人ドライバモデルMbと最新の個人ドライバモデルMbを比較し、更新部分を抽出する。そして、パラメータ更新エンジン32は、車両Aから取得した各種の制御パラメータPから、更新部分に対応する制御パラメータPを抽出する。また、パラメータ更新エンジン32は、この制御パラメータPに対応する、個人ドライバモデルMbのドライバモデルパラメータを取得する。
そして、取得されたドライバモデルパラメータと、対応する制御パラメータPとが比較される(差分分析)。なお、ドライバモデルパラメータが制御パラメータPに関連するが直接は対応しない場合は、これらが直接対応するようにドライバモデルパラメータが変換され、この変換値と制御パラメータPとが比較される。
差分分析の結果、差分が制御パラメータPの種類に応じて設定された閾値を超える場合、ドライバモデルパラメータ(又は、変換値)が更新パラメータに設定される。更に、パラメータ更新エンジン32は、所定の更新条件が満足されたか否かを判定する。更新条件が満足されると、パラメータ更新エンジン32は、その制御パラメータPを更新パラメータに更新するため、制御パラメータ更新指令を出力する。車載コントローラ5は、この制御パラメータ更新指令を受信すると、これに対応する制御パラメータPを新たな更新パラメータに更新する。
本実施形態では、所定の更新条件として、更新内容と更新時期が規定されている。更新内容については、更新しようとする制御パラメータPが、走る,止まる,及び曲がることに関連する走行安全に関わる車両制御処理(車両走行安全制御処理)の制御パラメータPである場合は、更新が禁止される。車両安全に関わる制御処理の制御パラメータPは、変更されると運転操作時に運転者へ違和感を与えるおそれがあるため更新されない。車両走行安全制御処理は、具体的には、自動アクセル制御,自動ブレーキ制御,自動操舵制御を伴う制御処理である。例えば、車両走行安全制御処理には、障害物との衝突又は走行路逸脱を防止するための危険回避制御処理が含まれる。更に、ふらつき判定処理も走行安全に関わる車両制御処理に含まれる。
なお、更新可能な更新内容であった場合、パラメータ更新エンジン32は、運転データ(車両状態データ)から更新時期(停止時、IGオフ時)を判断し、更新時期条件が満足されると制御パラメータ更新指令を送信する。また、なお、本実施形態では、パラメータ更新エンジン32が更新条件の判断を行っているが、制御パラメータ更新指令を受信した車載コントローラ5が、更新条件の判断を行ってもよい。
また、更新時期は、更新内容に応じて規定されている。更新時期には、即時(個人ドライバモデルMbの更新時),車両停止時,イグニッションオフ時(IGオフ時)が含まれる。走行中における変更が許容されている制御パラメータPの更新時期は、「即時」に設定されている。「即時」の例は、例えば、笑顔判定処理における笑顔判定パラメータ(口角の角度),空調装置設定温度,事故情報等である。
また、車両停止時における更新が適切な制御パラメータの更新時期は、「車両停止時」に設定されている。「車両停止時」の例は、例えば、デッドマン判定処理におけるデッドマン判定パラメータ(運転者画像データにおける運転者の身体の角度等),車両シート位置,ミラー角度である。
また、IGオフ時における更新が適切な制御パラメータの更新時期は、「IGオフ時」に設定されている。「IGオフ時」の例は、例えば、一般地図情報である。
また、更新された個人ドライバモデルMbが新たなサブモデルを生成した場合や、学習エンジン31により既存のサブモデルよりも別のサブモデルの方が所定の処理に対応してより効果的であると判断された場合、これらのサブモデルに対応して新たな制御パラメータPを追加してもよい。例えば、学習の結果、口角の角度よりも目尻の角度の方が運転者の笑顔判定に有効であると分析され、目尻の角度に基づく新たな笑顔判定モデルが生成されたとする。この場合、既存の口角の角度に基づくサブモデルに代えて、又は追加して、制御パラメータPが設定される。具体的には、車両制御処理に含まれる笑顔判定処理における笑顔判定ロジックに用いられる制御パラメータPの種類が、口角の角度から目尻の角度に代えられ、制御パラメータPの値が口角の角度閾値から目尻の角度閾値に変更される。
また、車両制御処理において、運転者が眠気を有すると判定された場合に所定の処理(走行ルート提案順の変更,ステアリング振動,スピーカ音量アップ等)が実行される例について説明する。学習エンジン31は、眠気判定モデルとして、ステアリングのふらつき角度の大きさに基づくサブモデルを学習している。これに対応して、車両Aにおける眠気判定処理では、ステアリングのふらつき角度(変動幅)が判断閾値を超えると眠気が大きいと判断される。学習エンジン31が、普段でも車両Aはふらつき角度が大きいと学習するとサブモデルが更新され、これに伴い判断閾値(制御パラメータの値)が大きな値に更新されていく。
一方、学習エンジン31が、ステアリングのふらつき角度の大きさよりも変動周期の方が、眠気の判定に有効であると学習した場合、眠気判定モデルとして、ステアリングのふらつき角度の変動周期に基づくサブモデルを追加する。これに伴い、車両Aにおける眠気判定処理において、制御パラメータの種類がふらつき角度の変動周期に変更され、制御パラメータの値(判断閾値;変動周期)も変更される。
また、画像データに基づく眠気判定サブモデルが追加されると、これに伴い、車両Aにおいて制御パラメータの種類が画像データのある特徴量に変更され、制御パラメータの値(判断閾値)も変更される。
また、パラメータ更新処理において、一般ドライバモデルMaが考慮される場合の処理について説明する。即ち、車両Aの特定運転者が通常とは異なる極端な運転操作を繰り返すと、個人ドライバモデルMb及び車両制御処理(制御パラメータP)が、これらの安全性が低下するように更新されるおそれがある。このため、個人ドライバモデルMbが一般ドライバモデルMaから大きく乖離する場合は、安全性を担保するため、一般ドライバモデルMaに基づいて制御パラメータPが更新される。
パラメータ更新エンジン32は、一般ドライバモデルMa,制御パラメータPを取得する。また、個人ドライバモデルMbが更新されると、更新部分を抽出する。そして、この更新部分に対応する制御パラメータPが取得される。さらに、この更新部分における(又は取得した制御パラメータPに対応する)個人ドライバモデルMbの個人ドライバモデルパラメータと、一般ドライバモデルMaの一般ドライバモデルパラメータが取得される。
次に、パラメータ更新エンジン32は、取得した個人ドライバモデルパラメータと一般ドライバモデルパラメータとを比較し、差分を算出する。そして、差分が所定値以下の場合、個人ドライバモデルパラメータに基づいて、制御パラメータPを更新するための更新パラメータが演算される。一方、差分が所定値よりも大きい場合、一般ドライバモデルパラメータに基づいて、制御パラメータPを更新するための更新パラメータが演算される。更新パラメータの演算は、上述の実施形態と同様である。
このようにして更新パラメータが演算されると、上述の実施形態と同様に、所定の更新条件が満たされた場合に、制御パラメータPを更新パラメータに更新するための制御パラメータ更新指令が出力される。
また、パラメータ更新処理において、個人ドライバモデルMbに基づいて更新された後、所定条件に応じて、一般ドライバモデルMaに基づいて再更新される場合の処理について説明する。即ち、個人ドライバモデルMbにより制御パラメータPが更新されたが、車両制御処理に改善が認められない場合、更新された制御パラメータPが一般ドライバモデルMaに基づいて再び更新される。
再更新のための所定条件は、更新前後において、運転者の感情状態が改善したか否かである。運転者の感情状態が改善しなかった場合には、制御パラメータPの再更新が行われる。このため、パラメータ更新エンジン32は、運転データ(音声データ)に基づく運転者の感情分析データから、運転者の感情状態を分析する。
なお、感情分析は、パラメータ更新エンジン32が逐次実行してもよいし、他の機能ブロック(運転者状態分析部)が継続的に実行し、感情分析履歴として記憶してもよい。なお、感情状態の改善とは、不快な負の感情(悲しみ,嫌悪,怒り,不安,緊張,不満等)から快い正の感情(喜び,楽しさ,安心,リラックス,満足等)へ感情状態が移動することである。
パラメータ更新エンジン32は、制御パラメータPを取得する。また、個人ドライバモデルMbが更新されると、更新部分を抽出する。そして、この更新部分に対応する制御パラメータPが抽出される。さらに、この更新部分における(又は取得した制御パラメータPに対応する)個人ドライバモデルMbの個人ドライバモデルパラメータが取得される。そして、この個人ドライバモデルパラメータに基づいて、制御パラメータPを更新するための更新パラメータが演算される。
所定の更新条件が満たされた場合に、制御パラメータPを更新パラメータに更新するための制御パラメータ更新指令が出力される。更に、車載コントローラ5は、この制御パラメータ更新指令を受信すると、これに対応する制御パラメータPを新たな更新パラメータに更新する。
パラメータ更新エンジン32は、個人ドライバモデルMbの更新に起因した制御パラメータPの更新の前後において、運転者の感情状態が改善したか否かを判定する。運転者の感情状態が改善していると判定される場合は、制御パラメータPの更新処理を終了する。一方、運転者の感情状態が改善していないと判定される場合は、パラメータ更新エンジン32は、制御パラメータPに対応する一般ドライバモデルMaの一般ドライバモデルパラメータを取得する。
そして、この一般ドライバモデルパラメータに基づいて、制御パラメータPを更新するための新たな更新パラメータが演算される。所定の更新条件が満たされた場合に、制御パラメータPを新たな更新パラメータに更新するための制御パラメータ更新指令が出力される。更に、車載コントローラ5は、この制御パラメータ更新指令を受信すると、これに対応する制御パラメータPを新たな更新パラメータに更新する。
例えば、カーブ路走行時におけるステアリング操作タイミングのサブモデルに関し、個人ドライバモデルMbに基づいて車両Aの対応する制御パラメータP(運転支援におけるステアリング操作案内タイミング等)が更新された後、カーブ路を走行した際のストレス(心拍,音声分析等に基づく)が更新前と比べて下がっていない場合には、一般ドライバモデルMaに基づいて同じ制御パラメータPが更新される。
次に、図7を参照して、リコメンド処理(制御推奨処理)について説明する。図7は、制御推奨処理の説明図である。個人サーバ3は、リコメンドエンジン(車両制御推奨部)33を有する。
リコメンドエンジン33は、共有サーバ1から取得した一般ドライバモデルMa,車両Aから取得した運転データ(音声データ含む),及び個人ドライバモデルMbを用いて、車載コントローラ5へ推奨処理の実行を指示又は提案する。車載コントローラ5は、所定の条件が満足される場合に推奨処理を実行する。
リコメンドエンジン33は、状態分析ブロック33aとリコメンドブロック33bとを有する。
状態分析ブロック33aは、運転データ(音声データ含む),一般ドライバモデルMa,個人ドライバモデルMbに基づいて、運転者状態,周辺環境状態,車両状態を分析する。分析には、現在の状態の分析と、近い将来(例えば、30分後、1時間後)の状態の分析が含まれる。
リコメンドブロック33bは、状態分析ブロック33aの分析出力,運転データ,一般ドライバモデルMa,個人ドライバモデルMbに基づいて、運転者に適合した最適な働きかけ(推奨処理)を導出及び出力する。なお、リコメンドエンジン33は、多くの蓄積データを用いた高度な状態分析を行うため、運転者が車両Aから離れている間においても作動し、推奨処理を適宜に導出する。
運転者状態は、運転者の心,体,行動の状態を含む。心(感情)状態には、注意状態,覚醒度,感情,ストレス度,運転負荷,運転モチベーション,感動,緊張度,文脈等が含まれる。体(身体)状態には、疲労度,健康状態,温冷感,機器視認性,機器操作性,乗り心地,座り心地,身体情報等が含まれる。行動状態には、注視位置/対象,注意状態,ジェスチャ,機器操作,運転行動/操作/姿勢,対話,癖,生活行動,行動意図等が含まれる。
心状態(特に感情状態)は、音声データ(例えば、内分泌モデルを用いた感情分析),運転者の画像データ,心拍データから直接分析してもよいし、他の運転データ(運転者の撮像データ,心拍データ含む)から個人ドライバモデルMbを用いて推定してもよい。
周辺環境状態は、車両Aの周辺の環境であり、交通/走行環境,リスク事前把握(渋滞,路面凍結等),通信環境等を含む。
車両状態は、車両Aの走行状態であり、運転難易度,ふらつき等を含む。
リコメンドブロックは、推奨制御として、少なくとも車室空間リコメンド,走行リコメンド,情報提示リコメンドを行う。
車室空間リコメンドは、運転者に適した車室環境を提供しようとする推奨制御であり、シート/ミラー位置・角度,空調,音楽,ウェルカム演出等の提供を含む。
走行リコメンドは、運転者に適した走行ルートを提供しようとする推奨制御であり、推奨ルート,気持ちのいいルート,運転難易度が高いチャレンジルート,危険回避ルート等の提示を含む。
情報提示リコメンドは、適切なタイミングと適切な提示方法による、運転者に役立つ情報の提示,高度な状態推定結果の提示を含む。運転者に役立つ情報の提示には、ルート上の見どころ情報(景色,レストラン,景勝等),道路交通/天気/ニュース,注意喚起(忘れ物,遅刻防止),ToDoリスト,思い出の画像等の情報提示が含まれる。高度な状態推定結果の提示には、高度なデッドマン判定,高度な笑顔判定の情報提示が含まれる。
リコメンドブロック33bは、状態分析ブロック33aによる分析状態と所定の推奨処理との間の関連性を記述する基本的な関連テーブルを用いて、適切な推奨制御を導出することができる。また、この関連テーブルを個人ドライバモデルMaや一般ドライバモデルMbにより学習し、更新していくこともできる。
車載コントローラ5は、リコメンド信号に応じて、情報提示装置9a,車載機器9b,情報通信装置9c,車両制御システム9dへ指令を出力する。このため、車載コントローラ5は、各リコメンド信号を受けた場合に実行する処理プログラムを記憶していてもよい。
本実施形態では、例えば、状態分析ブロック33aが分析した各運転者状態(疲労度,感情,ストレス,注意状態,覚醒度等)に応じて、周辺環境状態や車両状態を考慮して、リコメンドブロック33bが実現可能で適切な推奨処理を導出し、リコメンド信号を出力する。
例えば、状態分析ブロック33aが、体の状態を推定する。ここでは、運転者が疲労度を感じていると分析されたとする。これに応じて、リコメンドブロック33bは、車室空間リコメンド信号,走行ルートリコメンド信号,情報提示リコメンド信号の中から状況に応じて適宜なリコメンド信号を選択して出力する。
車室空間リコメンド信号は、例えば、空調装置を作動させる処理,空調温度を再設定(低下)させる処理,所定の音楽チャンネル放送をスピーカから出力させる処理,音楽チャンネルを変更する処理,疲労度に応じたシート位置及びミラー角度に変更させる処理等を指示する信号である。走行ルートリコメンド信号は、例えば、難易度の高い(例えばカーブの多い)現在の設定ルートから難易度の低い(直線道路が多い)新たなルートへの変更を促す処理等を指示する信号である。情報提示リコメンド信号は、休憩や速度低下を勧める所定のメッセージを表示画面に表示させる表示処理等を指示する信号である。また、所定の体の状態,所定の心(感情)の状態が分析されたときに、適宜なリコメンド信号が選択される。
また、個人ドライバモデルMbは、車載機器の設定に対する運転者の好み(空調温度,放送チャンネル,シート位置,ミラー角度等)を表すサブモデルを含む。例えば、運転者が運転を開始したときや、所定の体の状態又は所定の心(感情)の状態が分析されたときに、状態分析ブロック33aが、車載機器の設定が運転者の好みの設定とは異なると分析すると、リコメンドブロック33bは、好みの設定に変更するように指示する車室空間リコメンド信号を出力する。この指示には、作動パラメータ値(好みの設定値)として空調温度,放送チャンネル,シート位置,ミラー角度等が指定される。
情報提示リコメンドの例を説明する。状態分析ブロック33aにより、個人ドライバモデルMbを参照して、車両Aがわき見や眠気を誘発し易い特定場所に接近している(周辺環境状態)と分析されたとする。これに応じて、リコメンドブロック33bは、特定場所の所定距離手前の地点で(適切なタイミングで)音声等による注意喚起処理を実行するようにリコメンド信号を出力する。
更に、状態分析ブロック33aは、一般ドライバモデルMaを参照して、上記特定場所が一般運転者にとってもわき見や眠気を誘発し易い場所であると分析すると、リコメンドブロック33bは、特定場所よりも更に手前の地点で(適切なタイミングで)早期の注意喚起処理を実行するようにリコメンド信号を出力する。
また、個人ドライバモデルMbは、携帯情報端末装置7cから取得した通信データ(通話音声データ,メールテキストデータ,機器設定情報等)に基づいて構築された、運転者の好み(食べ物,趣味,スポーツ等)を表すサブモデルを含む。例えば、「食べ物」の好みのサブモデルでは、機器設定情報であるブックマーク等に基づいて、好きな料理の種類(日本料理,仏料理,伊料理等)がランク付けされている。
このサブモデルに基づいて、状態分析ブロック33aは、運転者が空腹を感じ始める予想時間を分析すると、リコメンドブロック33bは、その予想時間に合わせて(適切なタイミング)、好きな料理の種類のレストラン情報(料理種類,レストラン名)をナビゲーション地図上に表示させるリコメンド信号を出力する。なお、空腹度に限らず、所定の体の状態が分析されたとき,所定の心(感情)の状態が分析されたときに上記リコメンド信号を選択するように構成することができる。
また、走行ルートリコメンドの例を説明する。状態分析ブロック33aが、個人ドライバモデルMbや一般ドライバモデルMaを参照して、運転データから、運転者の感情状態又は体の状態を推定する。ここでは、運転者が感じている楽しさが低いと推定した場合を仮定する(又は、運転モチベーションの低下に伴い、1時間以内に退屈さを感じることを予測する)。
この推定(予測)を表す分析出力を受けて、リコメンドブロック33bは、楽しさを感じさせるための(又は、退屈さを生じさせないための)推奨処理を導出する。例えば、個人ドライバモデルMbや一般ドライバモデルMaに基づいて、現在位置から所定距離範囲内において、一般的な運転者又は車両Aの運転者が楽しさを感じる場所として登録されている場所(海岸線の道路,ビュースポット等)が探索され、この場所を経由地としたルートに変更を促すリコメンド信号が出力される。車載コントローラ5は、このリコメンド信号を受け取ると、リコメンド信号に含まれる経由地をナビゲーション装置に入力する。これにより、ナビゲーション装置が新たなルート計算を行うことにより、表示画面に新たな推奨ルートが表示される。
また、状態分析ブロック33aが、外気温,天候等から路面凍結を推定すると、リコメンドブロック33bは、路面凍結が推定される場所を回避するようなルートを指示するリコメンド信号を出力する。
車載コントローラ5は、リコメンド信号に基づく推奨処理を実行するか否かを判定するリコメンド判定ブロック53を有する。リコメンド判定ブロック53は、推奨処理がエンタメ制御処理である場合には実行を許可し、推奨処理がセーフティ制御処理である場合には実行を拒否する。車載コントローラ5では、リコメンド判定ブロック53により実行が許可された場合、エンタメ制御ブロック52aがリコメンド信号に応じて推奨処理を実行する。
なお、本実施形態では、推奨処理がエンタメ制御処理とセーフティ制御処理のいずれであるかに応じて、推奨処理の実行の可否が判断されている。しかしながら、これに限らず、推奨処理がエンタメ制御処理であっても、車両運転が不安全になるおそれがある場合には、推奨処理の実行が拒否されるように構成してもよい。例えば、推奨処理が、ブレーキ操作タイミングが遅れた場合の警報発生タイミングを遅くする処理であった場合には不安全性が増すため拒否されるが、警報発生タイミングを早める処理であった場合には逆に安全性が増すため許可される。
また、リコメンド判定ブロック53は、推奨処理が、車載コントローラ5による車両制御処理と矛盾する又は無効にする処理である場合にも推奨処理の実行を拒否する。例えば、車両制御処理では、天候(雨天や視界低下時)に起因して、ブレーキ操作遅れに対する警報発生タイミングを早める処理を実行するが、推奨処理が、警報発生タイミングを遅くする処理であった場合には天候起因の上記処理と矛盾又は無効にすることになるため拒否されるが、警報発生タイミングを早める処理であった場合には天候起因の上記処理と矛盾せず、無効にもしないので許可される。
次に、一般ドライバモデルによる個人ドライバモデルの補充処理について説明する。車両Aは、特定の地域や特定の走行動作による走行に限定されるため、個人ドライバモデルMbに用いられる基準データ(運転データ,一般データ)は、一般ドライバモデルMaに用いられる基準データよりも大幅に少ない。このため、このようなデータ量の差に応じて、個人ドライバモデルMbと一般ドライバモデルMaとの間には差が生じる。
リコメンドエンジン33内の比較ブロック(図示せず)は、個人ドライバモデルMbと一般ドライバモデルMaを取得し、比較処理を行う。この比較処理により、一般ドライバモデルMaには存在するが、個人ドライバモデルMbには存在しないサブモデルや一般知識等が抽出される。抽出された差分データ(サブモデルや一般知識等)は、結果検証エンジン35を経由して、蓄積データとして記憶され、学習エンジン31により学習される。これにより、車両Aに適合可能なサブモデルや一般知識等が個人ドライバモデルMbに付加される。
次に、図2を参照して、リコメンド指示の検証処理について説明する。個人サーバ3は、理想ドライバモデルMi,差分分析エンジン34,結果検証エンジン35を更に有する。
理想ドライバモデルMiは、エキスパート運転者の運転操作に基づいて作成されており、運転者が有する運転技術と走行難易度とが釣り合った状態で、運転者が運転操作に集中しつつ楽しんでいる状態を表す理想状態のモデルである。
差分分析エンジン34は、この理想ドライバモデルMiにおける運転者状態と、運転者の音声データに基づいて分析された実際の運転者状態とを比較する。
結果検証エンジン35は、差分分析エンジン34からの差分データを分析することにより、リコメンド信号による推奨処理の実行により、運転者状態がどのような影響を受けたのかを検証し、検証結果を記憶部3bに蓄積する。検証結果は、推奨処理の実行によって、差分がどの程度縮小したのか(理想状態に近づいた)、又は、差分がどの程度増大したのか(理想状態から遠のいた)の評価である。この検証結果を学習エンジン31が学習することにより、特定運転者により適するように個人ドライバモデルMbが更新される。
次に、図8を参照して、改変例に係る車両運転支援システムについて説明する。図8は改変例に係る車両運転システムの構成図である。
改変例に係る車両運転支援システムS2は、上記実施形態の車両運転支援システムSとは異なり、個人サーバ3が車両Aに搭載されている。即ち、車両Aには車載コントローラ5と個人サーバ3とが通信可能に搭載されている。データの流れは、車両運転支援システムSと同様である。
この車両運転支援システムS2では、車載コントローラ5と個人サーバ3がセキュリティ機能を持ったゲートウェイを介して分割された状態で接続されている。このため、車載コントローラ5と個人サーバ3とは、別体のユニットとして構成されている。
車載コントローラ5と個人サーバ3を一体のユニットとして構成した場合、高度な処理が要求される個人ドライバモデルの学習処理のために一時的に演算能力が不足して、車両制御処理が遅れてしまうおそれがある。しかしながら、本改変例では、これらを別体のユニットで構成しているため、車載コントローラ5は、上記実施形態と同様に、車両制御処理のみを実行すればよいため、車両制御処理の遅れは生じない。
また、人工知能技術は現在開発が進められている段階であり、進歩の度合いが速い。このため、本改変例では、別体に構成した個人サーバ3を、より高性能なものに容易に更新することができる。
次に、本実施形態の車両運転支援システムの作用について説明する。
本実施形態の車両運転支援システムは、運転者の運転データに基づいて運転者に固有の個人ドライバモデルMbを学習する個人サーバ3(個人ドライバモデル学習部)と、運転者の車両Aに設けられ、所定の車両制御処理を実行する車載コントローラ5と、を備え、個人サーバ3は、車載コントローラ5に推奨処理の実行を指示するリコメンドエンジン33(車両制御推奨部)を備え、リコメンドエンジン33は、運転データに基づいて現在の運転者の身体状態を分析し、個人ドライバモデルMbに基づいて、分析された身体状態に応じた推奨処理を判断する。
これにより、本実施形態では、車載コントローラ5が所定の車両制御処理を実行しているとき、個人ドライバモデルMbに基づいて、運転者の現在の身体状態に応じた推奨処理が車両Aへ指示される。これにより、車両Aにおいて通常の車両制御処理以外にも運転者の身体状態に応じた推奨制御が実行されることによって、運転者に対するより適切な運転支援が実行可能となる。
また、本実施形態では、車載コントローラ5は、指示による推奨処理の内容に応じて実行の可否を判断する。これにより、本実施形態では、実行が不要又は不適切な推奨処理が指示された場合には、このような推奨処理の実行を拒否することができる。
推奨処理は、具体的には、車両の車室空間環境状態に変化を与える所定の車載機器9b(空調,音楽,シート,ミラー等)を作動させる処理,車両の走行ルートに関する情報を所定の情報提示装置9aに表示させる処理である。
また、個人ドライバモデルMbには、所定の車載機器の作動パラメータ値(空調温度,放送チャンネル,シート位置,ミラー角度等)に関する運転者の好みを表すデータが含まれており、推奨処理は、所定の車載機器の作動パラメータ値を運転者の好みの作動パラメータ値に変更する処理である。
また、個人ドライバモデルMbには、運転者の好みを表すデータが含まれており、推奨処理は、運転者の好みに関する情報を情報提示装置9aに表示させる処理である。
また、本実施形態では、車載コントローラ5は、推奨処理が所定の車両制御処理を無効にする処理の場合、推奨処理を実行しない。これにより、本実施形態では、所定の車両制御処理と矛盾又は否定するような推奨処理は好ましくないため、このような推奨処理の実行は拒否される。
また、本実施形態は、運転者の運転データに基づいて運転者に固有の個人ドライバモデルMbを学習する個人サーバ3(個人ドライバモデル学習部)と、運転者の車両Aに設けられ、所定の車両制御処理を実行する車載コントローラ5と、を備えた車両運転支援システムにおける車両運転支援方法であって、個人サーバ3が、個人ドライバモデルMbを学習するステップと、個人サーバ3が、運転データに基づいて現在の運転者の身体状態を分析するステップと、個人サーバ3が、個人ドライバモデルMbに基づいて、分析された身体状態に応じた推奨処理を判断し、車載コントローラ5に推奨処理の実行を指示するステップと、車載コントローラ5が、指示による推奨処理の内容に応じて実行の可否を判断するステップと、を備えている。