(57)【要約】【課題】より多様な走行場に対応できるように、車両の遭遇している走行場を的確に推定することができる車両用制御装置の提供。【解決手段】検出部１０によって検出された状態データに基づいて、車両が遭遇している走行場を推定する推定部２０を有し、推定部２０は、ニューラルネットワークの恒等写像モデル２１と、ニューラルネットワークの非線形の階層型モデル２２とを有し、恒等写像モデル２１の入力層及び出力層の各ユニットに、状態データがパラメータとして入力され、恒等写像モデル２１の中間層の各ユニットのパラメータが、階層型モデル２２の入力層の各ユニットにそれぞれ入力され、階層型モデル２２の出力層の各ユニットは、複数の走行場にそれぞれ対応し、階層型モデル２２の出力層に出力されたパラメータに基づいて、複数の走行場の一つとして、車両が遭遇している走行場が推定される。【選択図】図２
2014046889.tif 000002
【特許請求の範囲】
【請求項１】
車両を運転するドライバの状態、車外環境状態、及び車両状態の少なくとも一つの状態データを検出する検出手段と、
上記検出手段によって検出された状態データに基づいて、車両が遭遇している走行場を推定する推定手段と、
を有し、
上記推定手段は、恒等写像モデルと、非線形の階層型モデルとを有し、
上記恒等写像モデルの入力層及び出力層の各ユニットに、上記状態データがパラメータとして入力され、
上記恒等写像モデルの中間層の各ユニットのパラメータが、上記階層型モデルの入力層の各ユニットにそれぞれ入力され、上記階層型モデルの出力層の各ユニットは、複数の走行場にそれぞれ対応し、
上記推定手段は、上記階層型モデルの出力層に出力されたパラメータに基づいて、上記複数の走行場の一つとして、車両が遭遇している走行場を推定する
ことを特徴とする車両用制御装置。
【請求項２】
評価学習手段を更に有し、上記評価学習手段は、
上記恒等写像モデルの上記中間層に出力されるパラメータに基づいて進化的アルゴリズムによって生成された制御アルゴリズムをモニタし、
上記制御アルゴリズムにおいて、同じノードを有する新たな制御アルゴリズムが繰り返し出現した場合に、上記新たな制御アルゴリズムに対応する走行場を新たな走行場として認識し、
上記階層型モデルの出力層に、上記新たな走行場に対応する新たな出力ユニットを追加した学習用階層型モデルを生成して、上記学習用階層型モデルで学習を行い、
上記推定手段は、上記階層型モデルを上記学習用階層型モデルに更新する
ことを特徴とする請求項１記載の車両用制御装置。
【請求項３】
走行場と車両の制御アルゴリズムとが互いに対応付けて記憶された記憶手段と、
前記記憶手段に記憶された制御アルゴリズムから、上記推定手段によって推定された走行場に対応する制御アルゴリズムを選択する選択手段と、
選択された制御アルゴリズムを車両の制御パラメータに変換する変換手段と、
を更に有し、
上記階層型モデルが更新された場合に、上記新たな制御アルゴリズムを上記新たな走行場と対応付けて上記記憶手段に記憶する
ことを特徴とする請求項２記載の車両用制御装置。
【請求項４】
車両を運転するドライバを識別するドライバ識別手段を更に有し、
上記推定手段は、ドライバごとに個別に設けられている
ことを特徴とする請求項１〜３の何れか一項に記載の車両用制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は車両用制御装置に係り、より詳細には、車両状態、車外状態及び乗員状態に応じて車両の制御アルゴリズムを動的に変化させ得る車両用制御装置に関する。
【背景技術】
【０００２】
下記の特許文献１には、条件により目的関数が変化する最適化対象の決定変数を短時間で効率良く最適化する方法が記載されている。また、下記の特許文献２には、ドライバの運転操作と外部環境との関連性を随時学習して、ドライバの普段の内部状態からの逸脱を認識する方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−９９０５１号公報
【特許文献２】特開２００９−７３４６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記特許文献１に記載の技術では、条件により目的変数が変化する最適化対称の決定変数を短時間で効率よく最適化する方法が提案されているが、目的関数を運転行動から推定し自律的に変化させることは困難である。
【０００５】
また、上記特許文献２に記載の技術では、ドライバによる運転操作と外部環境との関連性を随時学習し、ドライバの普段の内部状態からの逸脱を認識する方法が提案されているが、プログラムやモデル構造を動的に変更することは困難である。
【０００６】
このように、従来の車両用制御装置では、制御アルゴリズムの設計段階で設定されていなかった状況に車両が遭遇したときに、その状況に対応して車両制御を行うことは困難であった。
【０００７】
そこで、本発明は、より多様な走行場に対応できるように、車両の遭遇している走行場を的確に推定することができる車両用制御装置の提供を目的としている。
【課題を解決するための手段】
【０００８】
上記の目的を達成するため、本発明の車両用制御装置は、車両を運転するドライバの状態、車外環境状態、及び車両状態の少なくとも一つの状態データを検出する検出手段と、上記検出手段によって検出された状態データに基づいて、車両が遭遇している走行場を推定する推定手段とを有し、上記推定手段は、恒等写像モデルと、非線形の階層型モデルとを有し、上記恒等写像モデルの入力層及び出力層の各ユニットに、上記状態データがパラメータとして入力され、上記恒等写像モデルの中間層の各ユニットのパラメータが、上記階層型モデルの入力層の各ユニットにそれぞれ入力され、上記階層型モデルの出力層の各ユニットは、複数の走行場にそれぞれ対応し、上記推定手段は、上記階層型モデルの出力層に出力されたパラメータに基づいて、上記複数の走行場の一つとして、車両が遭遇している走行場を推定することを特徴としている。
【０００９】
このように構成された本発明によれば、検出手段によって検出された状態のデータの情報は、恒等写像モデルの中間層の出力として圧縮抽出される。
なお、恒等写像モデルは、入力層と出力層に同一データを提示して、恒等写像としての中間層出力を学習させる階層型モデルである。恒等写像モデルでは、曖昧で不完全な多種多様な情報を入力及び出力とし、問題解決に必要な縮約された情報を自動的に抽出することができる。特に、恒等写像モデルでは、教師信号を必要としないため、未知の予め想定されていなかった未知の走行場を推定するのに用いて好適である。
さらに、本発明では、恒等写像モデルで圧縮抽出された情報に基づいて、階層型モデルの出力層の各ユニットに対応する複数の走行場の一つとして、車両が遭遇している走行場が推定される。これにより、より多様な走行場に対応できるように、車両の遭遇している走行場を的確に推定することができる。
【００１０】
恒等写像モデルとしては、ニューラルネットワークの恒等写像モデルをはじめ、自己組織化写像（ＳＯＭ）やサポートベクターマシン（ＳＶＭ）といった種々のモデルを使用することができる。
また、非線形の階層型モデルも、ニューラルネットワークの階層型モデルをはじめ、種々のモデルを使用することができる。
【００１１】
また、本発明において好ましくは、評価学習手段を更に有し、上記評価学習手段は、上記恒等写像モデルの上記中間層に出力されるパラメータに基づいて進化的アルゴリズムによって生成された制御アルゴリズムをモニタし、上記制御アルゴリズムにおいて、同じノードを有する新たな制御アルゴリズムが繰り返し出現した場合に、上記新たな制御アルゴリズムに対応する走行場を新たな走行場として認識し、上記階層型モデルの出力層に、上記新たな走行場に対応する新たな出力ユニットを追加した学習用階層型モデルを生成して、上記学習用階層型モデルで学習を行い、上記推定手段は、上記階層型モデルを上記学習用階層型モデルに更新する。
【００１２】
このように、同じノードを有する新たな制御アルゴリズムが繰り返し出現した場合に、新たな制御アルゴリズムに対応する走行場を新たな走行場として認識することにより、車両が、予め設定されていなかった新たな走行場に遭遇したときに、その新たな走行場に対応することが可能となる。
【００１３】
なお、進化的アルゴリズムとしては、遺伝的ネットワークプログラミングをはじめとして、遺伝的アルゴリズム、遺伝的プログラミング、進化的プログラミングといった種々のアルゴリズムを使用することができる。
特に、遺伝的ネットワークプログラミングでは、有向グラフ（ネットワーク）を用いて制御アルゴリズムの遺伝子型が表現されるため、従来の遺伝的アルゴリズムでは表現が困難であった数式やプログラムのコードなど、構造を有するデータを表現することができる。このため、遺伝的ネットワークプログラミングは、新たな走行場に対する適切な制御アルゴリズムを生成するのに用いて好適である。
【００１４】
また、本発明において好ましくは、走行場と車両の制御アルゴリズムとが互いに対応付けて記憶された記憶手段と、前記記憶手段に記憶された制御アルゴリズムから、上記推定手段によって推定された走行場に対応する制御アルゴリズムを選択する選択手段と、選択された制御アルゴリズムを車両の制御パラメータに変換する変換手段とを更に有し、上記階層型モデルが更新された場合に、上記新たな制御アルゴリズムを上記新たな走行場と対応付けて上記記憶手段に記憶する。
【００１５】
これにより、予め設定されていなかった新たな走行場を含む、より多様な走行場に対応することができる。
【００１６】
また、本発明において好ましくは、車両を運転するドライバを識別するドライバ識別手段を更に有し、上記推定手段は、ドライバごとに個別に設けられている。
【００１７】
このように、ドライバごとに推定手段を個別に設けることにより、個々のドライバの運転傾向に合わせて、走行場を的確に推定することができる。
【発明の効果】
【００１８】
本発明の車両用制御装置によれば、より多様な走行場に対応できるように、車両の遭遇している走行場を的確に推定することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施形態による車両用制御装置の構成を示すブロック図である。
【図２】本発明の実施形態による車両用制御装置の接続関係を示すブロック図である。
【図３】判定部の恒等写像モデル及び非線形階層型モデルの模式図である。
【図４】遺伝的アルゴリズム（ＧＡ）の基本的なアルゴリズムの流れを示すフローチャートである。
【図５】遺伝的ネットワークプログラミング（ＧＮＰ）における集団と、その集団を構成する一つの個体の有向グラフの模式図である。
【図６】遺伝的ネットワークプログラミング（ＧＮＰ）の一個体の遺伝子の表現型、遺伝子型及びノードライブラリの一例を示す図表である。
【図７】遺伝的ネットワークプログラミング（ＧＮＰ）の交叉の例を示す模式図である。
【図８】遺伝的ネットワークプログラミング（ＧＮＰ）の突然変異の例を示す模式図である。
【図９】本発明の実施形態による車両用制御装置の作動を示すフローチャートである。
【図１０】（１）〜（９）は、遺伝的ネットワークプログラミング（ＧＮＰ）の有向グラフ構造の模式図である。
【図１１】（Ａ）は、更新前の学習用の非線形階層型モデルの模式図であり、（Ｂ）は、更新後の学習用非線形階層型モデルの模式図である。
【図１２】（Ａ）は、更新前の非線形階層型モデルの出力パラメータによる走行場のマッピング例であり、（Ｂ）は、更新後の非線形階層型モデルの出力パラメータによる走行場のマッピング例である。
【発明を実施するための形態】
【００２０】
以下、添付の図面を参照して、本発明の車両用制御装置の実施形態を説明する。
まず、図１及び図２を参照して、本発明の実施形態による車両用制御装置の構成について説明する。図１は、実施形態による車両用制御装置の接続関係を示すブロック図であり、図２は、車両用制御装置の構成を示すブロック図である。
【００２１】
図１において、実施形態による車両用制御装置の主要部は、コアモジュールＥＣＵ（electric control unit：電子制御装置）１００における処理機能に相当する。コアモジュールＥＣＵ１００は、車内ＬＡＮ７０を介して、検出部１０及び種々のアクチュエータとしてのＥＣＵに接続されている。種々のＥＣＵには、エンジン８１を制御するパワートレーン制御モジュール７１、モータ／発電機８２を制御するモータ制御ユニット７２、高圧バッテリ８３を制御するバッテリ制御モジュール７３及びブレーキ８４を制御するブレーキ制御モジュール７４が含まれる。
【００２２】
図２に、検出部１０及びコアモジュールＥＣＵ１００の構成を示す。図２に示すように、検出部１０は、車両を運転するドライバの状態を検出するドライバ状態モニタ１１、車外環境状態を検出する車外環境モニタ１２及び車両状態を検出する車両状態モニタ１３を含む。
【００２３】
検出部１０を構成するドライバ状態モニタ１１の例としては、車室内に配置されてドライバの視線や、顔の動きを撮像するモニタカメラ及び画像処理システムや、ドライバのブレーキの踏込量を検出するセンサが挙げられる。また、車外環境モニタ１２の例としては、先行車両を含む障害物までの距離や相対速度を検出する車両前方に向けたレーダや、車両の側方又は後方に向けたレーダや、車外に向けたモニタカメラ及び画像処理システムが挙げられる。また、車両状態モニタ１３の例としては、車速センサ、加速度センサ、ブレーキ踏込量センサ、アクセル踏込量センサ、及び操舵角センサが挙げられる。
【００２４】
なお、検出部１０は、ドライバ状態モニタ１１、車外環境モニタ１２及び車両状態モニタ１３の３つを常に設ける必要はなく、これらのうちの１つ又は２つだけを設けたものであってもよい。
【００２５】
また、コアモジュールＥＣＵ１００は、同期処理モジュール１１０と非同期処理モジュール１２０とを含む。同期処理モジュール１１０は、車両の走行中に、逐次、車両の遭遇する走行場を推定する処理を行う。これに対し、非同期処理モジュール１２０は、車両のショートトリップごと、或いは、所定の日数ごとなど、より長いタイムスケールにおいて、車両の遭遇した走行場のデータを蓄積し、走行場に適した車両制御アルゴリズムを遺伝的ネットワークプログラミング（ＧＮＰ）によって学習評価する。
【００２６】
なお、車両の遭遇する「走行場（走行シーン）」とは、車両の遭遇している状況、状態、事態又は場面を含み、停止状態を含む車両の走行状態、車外環境の状況、及び車両のドライバの挙動、認識（例えば危機感）及び意図をも含む。
【００２７】
まず、同期処理モジュール１１０を説明する。同期処理モジュール１１０は、検出部１０によって検出された状態データに基づいて、車両が遭遇している走行場を推定する推定部２０と、走行場と車両の制御アルゴリズムとが互いに対応付けて記憶されたメモリ３０と、メモリ３０に記憶された制御アルゴリズムから、推定部２０によって推定された走行場に対応する制御アルゴリズムを選択する選択部４０と、選択された制御アルゴリズムを車両の制御パラメータに変換する変換部５０とを有する。例えば、変換部５０が、制御アルゴリズムに基づいてスロットルの開度のパラメータ信号を生成し、これを、車内ＬＡＮ７０を介して、パワートレーン制御モジュール７１に送ることによって、エンジン８１の回転数が制御される。
【００２８】
推定部２０は、ニューラルネットワークの恒等写像モデル２１と、ニューラルネットワークの非線形の階層型モデル２２とを有する。恒等写像モデルは、入力層と出力層に同一データを提示して、恒等写像としての中間層出力を学習させる階層型ニューラルネットワークである。恒等写像モデルでは、曖昧で不完全な多種多様な情報を入力及び出力とし、問題解決に必要な縮約された情報を自動的に抽出することができる。特に、恒等写像モデルでは、教師信号を必要としないため、未知の予め想定されていなかった未知の走行場を推定するのに用いて好適である。
【００２９】
ここでは、恒等写像モデル２１の入力層及び出力層の各ユニットには、検出部１０によって検出された状態データがパラメータとして入力される。図３に示す例では、恒等写像モデル２１の入力層及び出力層の両方に、「アクセル」、「ブレーキ」、「車間距離」、「車間距離微分」、「車速」及び「加速度」のパラメータが入力される。そして、恒等写像モデルの中間層の出力として、これらの状態データが圧縮抽出される。
【００３０】
上記恒等写像モデル２１の中間層の各ユニットから圧縮抽出されたパラメータは、非線形の階層型モデル２２の入力層の各ユニットにそれぞれ入力される。この階層型モデル２２の出力層の各ユニットは、複数の走行場にそれぞれ対応している。図３に示す例では、階層型モデル２２の出力層の各ユニットは、「渋滞」、「平坦」、「上り」及び「下り」の４つの走行場に対応している。そして、推定部２０は、階層型モデル２２の出力層に出力されたパラメータに基づいて、４つの走行場の一つとして、車両が遭遇している走行場を推定する。
【００３１】
このように、検出部１０によって検出された状態のデータの情報は、恒等写像モデル２１の中間層の出力として圧縮抽出される。さらに、恒等写像モデル２１で圧縮抽出された情報に基づいて、階層型モデル２２の出力層の各ユニットに対応する複数の走行場の一つとして、車両が遭遇している走行場が推定される。これにより、より多様な走行場に対応できるように、車両の遭遇している走行場を的確に推定することができる。
【００３２】
メモリ３０には、これら４つの走行場それぞれについて、最適な制御アルゴリズムが記憶されている。選択部４０は、これら４つの走行場の中から推定部２０が推定した走行場に対応する制御アルゴリズムを選択して読み出す。例えば、推定部２０が、車両が遭遇している走行場が「平坦」の走行場であると推定した場合、選択部４０は、メモリ３０から、「平坦」に対応する制御アルゴリズムを選択して読み出す。
【００３３】
そして、変換部５０は、走行路が「平坦」であるときの制御アルゴリズムに基づいて、例えばスロットルの開度の制御パラメータを生成する。この制御パラメータの信号が、車内ＬＡＮ７０を介して、パワートレーン制御モジュール７１に送られることによって、エンジン８１の回転数が制御される。
【００３４】
また、制御パラメータに従って、エンジン及びモータ以外に、ハンドルやブレーキといったアクチュエータを制御してもよい。例えば、制御アルゴリズムから変換された舵角に従って、ハンドルを自動操作するようにしてもよいし、制御アルゴリズムから変換された車速に従って、ブレーキを自動的に作動させてもよい。
【００３５】
また、制御パラメータに従って、スピーカやディスプレイ等のヒューマン・マシン・インターフェイス（human machine interface：ＨＭＩ）を制御してもよい。例えば、制御アルゴリズムから変換された舵角や車速に従って車両が走行するように、ドライバを音声で誘導するようにしてもよい。
【００３６】
次に、非同期処理モジュール１２０を説明する。
非同期処理モジュール１２０は、学習評価部６０を有する。学習評価部６０は、恒等写像モデル２１の中間層に出力されるパラメータを入力して、制御アルゴリズムを学習評価する遺伝的ネットワークプログラミング（ＧＮＰ）６１と、ニューラルネットワークの学習用の非線形の階層型モデル６２とを有する。
【００３７】
学習評価部６０は、このＧＮＰ６１によって生成された制御アルゴリズムをモニタし、その制御アルゴリズムにおいて、同じノードを有する新たな制御アルゴリズムが繰り返し出現した場合に、その新たな制御アルゴリズムに対応する走行場を新たな走行場として認識する。そして、学習用の階層型モデル６２の出力層に、その新たな走行場に対応する新たな出力ユニットを追加した新たな学習用階層型モデルを生成し、その学習用階層型モデルで学習を行う。
【００３８】
さらに、推定部２０の階層型モデル２２を、新しい学習用階層型モデルに更新する。この更新により、例えば、階層型モデル２２の出力層のユニットが１つ増加するとともに、出力層の各ユニットのパラメータの閾値が変更される。すなわち、新たな走行場が単に追加されるだけでなく、更新前の出力層の各ユニットに対応する各走行場の閾値もそれぞれ変化することがある。
【００３９】
さらに、階層型モデル２２が更新された場合に、同じノードを有する新たな制御アルゴリズムを新たな走行場と対応付けてメモリ３０に記憶する。
【００４０】
ここで、遺伝的ネットワークプログラミング（ＧＮＰ：Genetic Network Programming）６１について説明する。
【００４１】
遺伝的ネットワークプログラミングは、生物の進化過程を模倣して最適解又は準最適解を求める進化論的計算手法の一つであって、遺伝的アルゴリズム（ＧＡ：Genetic Algorithm）を拡張した遺伝的プログラミング（ＧＰ：Genetic Programming ）を更に拡張したものである。
【００４２】
（遺伝的アルゴリズム（ＧＡ））
遺伝的アルゴリズム（ＧＡ）は、生物の進化過程において見られる、染色体の選択、交差及び突然変異を模倣し、工学的に応用した計算手法である。遺伝的アルゴリズムでは、設計変数を遺伝子とみなし、遺伝子をビット列構造で表現する。
【００４３】
ここで、図４のフローチャートを参照して、遺伝的アルゴリズムの基本的なアルゴリズムの流れを説明する。
先ず、初期集団を作成する（Ｓ４１）。初期集団は、個体の集合であり、各個体は、解候補を記号化したものであって、それぞれが一つの遺伝子を有する。
【００４４】
次いで、各個体における評価値を計算する（Ｓ４２）。
評価値とは、各個体の有効性を定量的に示す指標をいい、例えば、燃費の良さを評価値とすることができる。
【００４５】
次いで、評価値に基づいて個体を選択する（Ｓ４３）。
個体の選択とは、次世代に残す個体を選出することをいう。
【００４６】
次いで、選択された個体の交叉及び突然変異を行う（Ｓ４４）。
交叉とは、親世代の遺伝子を交換し、子世代として新しい遺伝子を作成することをいう。また、突然変異とは、親世代に遺伝子の一部をランダムに書き換え、子世代とすることをいう。
【００４７】
次いで、最終世代の判定を行う（Ｓ４５）。
最終世代になるまで、上記のＳ４２〜Ｓ４４のステップを繰り返す。
このようにして、最適解又は準最適解を探索する。
【００４８】
（遺伝的プログラミング（ＧＰ））
遺伝的プログラミング（ＧＰ）のアルゴリズムの流れも、図４に示したものと基本的に同じであるが、遺伝的プログラミング（ＧＰ）では、遺伝子を、ノード関数を用いた木構造で表現する。そして、ノード関数を用いてｉｆ−ｔｈｅｎ文による条件判断を行い、処理を実行する。これにより、遺伝的プログラミングでは（ＧＰ）では、遺伝的アルゴリズム（ＧＡ）のビット列構造では扱えなかった構造的なシステムを扱うことができる。
【００４９】
（遺伝的ネットワークプログラミング（ＧＮＰ））
遺伝的ネットワークプログラミング（ＧＮＰ）のアルゴリズムの流れも、図４に示したものと基本的に同じであるが、遺伝的ネットワークプログラミング（ＧＮＰ）では、図５に示すように、集団を構成する各個体が、ノード関数が有向枝によって相互に接続された有向グラフ（ネットワーク）構造を有する。ノード関数は、判定ノードと処理ノードの二種類のノードから構成される。判定ノードは、ｉｆ−ｔｈｅｎ文による条件判断及び分岐を担う。一方、処理ノードは、定められた処理（行動）を実行する役割を有する。また、判定ノードからは、分岐の数だけ有向枝が伸びる。一方、処理ノードからは、一本の有向枝のみが伸びる。
なお、遺伝的ネットワークプログラミング（ＧＮＰ）では、どの個体でもノード数が一定であるため、ブロート（解の膨張）が発生しない。
【００５０】
さらに、図６に、遺伝的ネットワークプログラミング（ＧＮＰ）の一個体の遺伝子の一例を示す。遺伝子は、図６に示す表現型のようにネットワーク状に表現され、プログラム上では、図６に示す遺伝子型のように記述される。遺伝子型の「ＮＩＤｉ」は、ノードｉのＩＤであり、設定したノードの数だけ存在する。また、遺伝子型の「ＮＴｉ」は、ノード関数を表し、「ＮＴｉ＝１」ならば判定ノードを表し、「ＮＴｉ＝２」ならば処理ノードを表す。遺伝子型の「ＩＤｉ」は、ノード関数ＩＤを表し、判定ノード及び処理ノード内容を記述したノートライブラリのラベルを示す。そして、「ＮＴｉ」と「ＩＤｉ」によって、ノートライブラリに記述されたノード内容のうち、実行されるノード内容が決定される。遺伝子型の「Ｃｉ１」及び「Ｃｉ２」は、ノードｉから伸びる有向枝の接続先情報であり、接続するノードＩＤが記載される。なお、処理ノードは、接続先が一つしかないため、処理ノードにＣｉ２は存在しない。
【００５１】
このような各個体の評価値は、個体の達成度や有効性を数値化したものであり、その値は、評価換算によって求められる。評価関数の計算式は、問題に依存して設計者によって設定される。そして、個体の評価値に基づいて遺伝子操作が行われるので、遺伝的ネットワークプログラミング（ＧＮＰ）の最適化は、評価値の最適化に対応する。
【００５２】
そして、交叉や突然変異を実行する前に、選択により、評価値の高い個体を優先的に選出する。これにより、評価値の高い個体の遺伝子が次世代へ受け継がれる。選択方式の例として、ルーレット選択、トーナメント選択及びエリート保存選択が挙げられる。
【００５３】
ルーレット選択では、交叉及び突然変異操作を加える個体を選出するため、各個体の子孫は、その評価値に比例した確率で選ばれる。ｉ番目の個体の評価値をｆｉとすると、下記の（１）式により、ｉ番目の個体が選ばれる確率ｐｉが求まる。
ｐｉ＝ｆｉ／Σｆ    ・・・（１）
【００５４】
トーナメント選択では、交叉及び突然変異操作を加える個体を選出するため、予め設計者によって決められた数だけ個体集団の中からランダムで個体を取り出し、その中で最も適応度の高い個体を選択する。これを必要な個体数が得られるまで繰り返す。
【００５５】
エリート保存選択では、その世代における評価値の高い個体を一定数そのまま次世代へ残す操作を行う。これにより、最適個体の評価が悪化することを防ぐことができる。
【００５６】
交叉は、選択された２個の個体間で行われ、２個の子個体を生成する。このとき、交叉するノードどうしの遺伝子情報は全て交換される。ここで、図７を参照して、交叉の手順について説明する。
【００５７】
先ず、親個体の集団から２個の親個体を任意に選択する。図７では、「親１」及び「親２」が選択される。次いで、選択した親個体の一方「親１」において、設定した交叉確率に基づいて、交叉すべきノードを選択する。図７では、「親１」のノード「Ｐ１」が選択される。次いで、一方の親個体「親１」で選択されたノード「Ｐ１」と、他方の親個体「親２」における「Ｐ１」と同一識別番号のノード「Ｐ２」との間で、全ての遺伝子を交換する。このようにして生成された２個の個体「子１」及び「子２」が、次世代の個体となる。
【００５８】
突然変異は、１個の親個体内で行われ、１個の子個体が生成される。突然変異には、接続先ノードを変更するものと、ノード内容を変更するものとの２種類がある。ここで、図８を参照して、突然変異について説明する。
まず、接続先ノードを変更する突然変異（突然変異Ａ）では、１個体を任意に選択し、設定した突然変異確率に基づき、突然変異させるべきノードを選択する。そして、選択されたノードの接続先をランダムに変更する。図８では、突然変異Ａにおいて、ノードＰ１の接続先ノードが、右上の処理ノードから、左上の判断ノードへ切り替えられている。
【００５９】
また、ノード内容を変更する突然変異（突然変異Ｂ）では、１個体を任意に選択し、設定した突然変異確率に基づき、突然変異させるべきノードを選択する。そして、選択されたノードのラベルをランダムに変更する。図８では、突然変異Ｂにおいて、選択されたノードＰ１がノードＰ２に変更されている。このようにして、次世代の個体が生成される。
【００６０】
次に、図９のフローチャートを参照して、本実施形態による車両用制御装置の動作について説明する。
なお、図９のフローチャートの左側部分は、同期処理モジュール１１０に処理に対応し、右側部分は、非同期処理モジュール１２０の処理に対応する。
【００６１】
まず、同期処理モジュール１１０の処理に対応する処理を説明する。図９に示すように、まず検出手段１０によって検出された、車両を運転するドライバの状態、車外環境状態、及び車両状態車両状況の状況データが、恒等写像モデル２１の入力層及び出力層の各ユニットにパラメータとして入力される（Ｓ９１）。
【００６２】
続いて、恒等写像モデル２１の中間層から、状況データを圧縮したパラメータが抽出される（Ｓ９２）。
【００６３】
まず、非線形型階層モデルの閾値が更新されていない場合（Ｓ９３で「ｎｏ」の場合）を説明する。
この場合、恒等写像モデル２１の中間層から出力されたパラメータを、ニューラルネットワークの非線形階層型モデルの入力層に入力して、走行場を推定する（Ｓ９５）。その結果、図３の示す非線形階層型モデル２２では、出力層の「渋滞」、「平坦」、「上り」及び「下り」の４つユニットの何れかに対応する走行場が推定される。
【００６４】
続いて、メモリ３０から、推定された走行場に対応する制御アルゴリズムが読み出される。車両が遭遇している走行場が「平坦」の走行場であると推定された場合には、メモリ３０から、「平坦」の走行場に対応する制御アルゴリズムが読み出される。そして、この制御アルゴリズムに基づいて、車両が制御される。
【００６５】
次に、非同期処理モジュール１２０の処理に対応する処理を説明する。非同期処理モジュール１２０の学習評価部６０では、ステップＳ９２で恒等写像モデル２１の中間層から出力されたパラメータを入力して、遺伝的ネットワークプログラミング（ＧＮＰ）６１により、制御アルゴリズムを学習評価する（Ｓ９７）。
【００６６】
このＧＮＰ６１によって生成された制御アルゴリズムにおいて、同じノードを有する新たな制御アルゴリズムが繰り返し出現した場合（Ｓ９８で「ｙｅｓ」の場合）に、その新たな制御アルゴリズムに対応する走行場を新たな走行場として認識する（Ｓ９９）。
【００６７】
ここで、図１０に、ＧＮＰ６１によって生成された制御アルゴリズムの有向グラフ構造例を示す。図１０の（１）〜（４）の有向グラフ構造は、それぞれ、「渋滞」、「平坦」、「上り」及び「下り」の走行場に対応する制御アルゴリズムを表している。これに対して、図１０の（５）〜（９）の有向グラフ構造は、走行場として想定されていないものに対応する制御アルゴリズムを表している。
【００６８】
そして、図１０の（５）〜（９）の有向グラフ構造のうち、図１０の（８）に示す有向グラフ構造と同じノードを有するものが、繰り返し出現した場合に、その有向グラフ構造で表される新たな制御アルゴリズムに対応する走行場が新たな走行場として認識される。
なお、新たな走行場を認識するための、同じノードを有する有向グラフ構造の出現の繰り返し回数は、経験的に任意の回数を設定するとよい。
【００６９】
続いて、学習用の非線形階層型モデル６２の出力層に、その新たな走行場に対応する新たな出力ユニットを追加した新たな学習用階層型モデルを生成し、その学習用の非線形型階層型モデルで学習を行う（Ｓ１００）。図１１（Ａ）に示す古い学習用の非線形階層型モデル６２では、出力層は、「渋滞」、「平坦」、「上り」及び「下り」の走行場に対応する４つのユニットを有していた。これに対して、図１１（Ｂ）に示す新しい学習用の非線形階層型モデル６２では、出力層は、「渋滞」、「平坦」、「上り」及び「下り」の走行場に加えて、「新たな走行場」に対応する５つのユニットを有している。
【００７０】
そして、新たな学習用の非線形階層型モデル６２で学習することにより、出力層の各ユニットのパラメータの閾値が変更される。
ここで、図１２に、非線形階層型モデルの出力層のパラメータの閾値を模式的に示す。なお、図１２では、便宜的に、縦軸と横軸で表された２つのパラメータの組合せで閾値を示しているが、一般に、パラメータの数は３以上である。
【００７１】
図１２（Ａ）は、非線形階層型モデルの出力層が４つのユニットを有するときの４つの走行場それぞれのパラメータの閾値を示す模式図である。これに対し、図１２（Ｂ）は、非線形階層型モデルの出力層が、５つのユニットを有するときの５つの走行場それぞれのパラメータの閾値を示す模式図である。図１２（Ａ）及び（Ｂ）から分かるように、「新たな走行場」が追加されたことにより、残りの「渋滞」、「平坦」、「上り」及び「下り」の４つの走行場のパラメータの閾値も更新される。
【００７２】
そして、非線形階層型モデルの出力層のパラメータの閾値が更新された場合（Ｓ９３で「ｙｅｓ」の場合）、非線形階層型モデル２２も図１１（Ｂ）に示すものに更新される。
これにより、予め設定されていなかった新たな走行場を含む、より多様な走行場に対応することが可能となる。
【００７３】
以下、本発明の第２実施形態を説明する。第２実施形態による車両用制御装置では、車両を運転するドライバを識別するドライバ識別部（図示せず）を更に有し、推定部２０は、ドライバごとに個別に設けられている。
【００７４】
一般に、車両の運転特性の傾向はドライバごとに異なっている。このため、同じ「渋滞」や「平坦」といった走行場であっても、ドライバによって、検出されるデータの内容の傾向が異なることがある。
そこで、第２実施形態では、登録されたドライバごとに推定部２０をそれぞれ設けている。また、ドライバごとに走行場を推定する以外は、上記第１実施形態による処理を同じ処理を行う。
【００７５】
なお、ドライバ識別部によるドライバの識別にあたっては、例えば、車内カメラにより撮像されたドライバの頭部の画像を画像認識してドライバを識別してもよいし、また、車両のキーにドライバごとの識別信号を付与して、ドライバを識別してもよいし、また、検出部１０によって検出された車両の運転特性からドライバを識別してもよい。
【００７６】
このように、ドライバごとに推定手段を個別に設けることにより、個々のドライバの運転特性の傾向に合わせて、走行場を的確に推定することができる。
【００７７】
上述の実施形態においては、本発明を特定の条件で構成した例について説明したが、本発明は種々の変更及び組み合わせを行うことができ、これに限定されるものではない。例えば、ニューラルネットワークの降等写像モデル及び非線形階層型モデルのユニット数及び層数は、実施例のものに限定されない。
【符号の説明】
【００７８】
１０  検出部
１１  ドライバ状態モニタ
１２  車外環境モニタ
１３  車両状態モニタ
２０  推定部
３０  選択部
４０  変換部
５０  メモリ
６０  学習評価部
６１  遺伝的ネットワークプログラミング（ＧＮＰ）
６２  学習用階層型モデル
７０  車内ＬＡＮ
７１  パワートレーン制御モジュールＥＣＵ
７２  モータ制御ユニットＥＣＵ
７３  バッテリ制御モジュールＥＣＵ
７４  ブレーキ制御モジュールＥＣＵ
８１  エンジン
８２  モータ／発電機
８３  高圧バッテリ
８４  ブレーキ
１００  コアモジュールＥＣＵ
１１０  同期処理モジュール
１２０  非同期処理モジュール
【図１】
2014046889.tif 000003
【図２】
2014046889.tif 000004
【図３】
2014046889.tif 000005
【図４】
2014046889.tif 000006
【図５】
2014046889.tif 000007
【図６】
2014046889.tif 000008
【図７】
2014046889.tif 000009
【図８】
2014046889.tif 000010
【図９】
2014046889.tif 000011
【図１０】
2014046889.tif 000012
【図１１】
2014046889.tif 000013
【図１２】
2014046889.tif 000014