(57)【特許請求の範囲】
【請求項１】
車両を運転するドライバの状態、車外環境状態、及び車両状態の少なくとも一つを検出する検出手段と、
上記検出手段によって検出された検出状態に基づいて、車両が遭遇している走行場を、恒等写像モデルを利用して推定する推定手段と、
既知の走行場と車両の制御アルゴリズムとを互いに対応付けて記憶した第１記憶手段と、
上記推定手段によって推定された推定走行場が、上記第１記憶手段に記憶された既知の走行場であるか、上記第１記憶手段に記憶されていない未知の走行場であるかを判定する判定手段と、
上記判定手段によって推定走行場が未知の走行場であると判定された場合に、遺伝的ネットワークプログラミングを利用して、推定走行場に対応する新たな制御アルゴリズムを創発する創発手段と、
上記判定手段によって推定走行場が既知の走行場であると判定された場合に、上記第１記憶手段から獲得した推定走行場に対応する制御アルゴリズムを車両の制御パラメータに変換し、推定走行場が未知の走行場であると判定された場合に、上記創発手段によって創発された新たな制御アルゴリズムを車両の制御パラメータに変換する変換手段と、
を有することを特徴とする車両用制御装置。
【請求項２】
上記第１記憶手段に格納された、既知の走行場に対する制御アルゴリズムは、遺伝的ネットワークプログラミングを利用して創発したものである
ことを特徴とする請求項１記載の車両用制御装置。
【請求項３】
更に、前記創発手段によって創発された新たな制御アルゴリズムを記憶する第３記憶手段を有することを特徴とする請求項１又は２記載の車両用制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は車両用制御装置に係り、より詳細には、車両状態、車外状態及び乗員状態に応じて車両の制御アルゴリズムを動的に変化させる車両用制御装置に関する。
【背景技術】
【０００２】
下記の特許文献１には、条件により目的関数が変化する最適化対象の決定変数を短時間で効率良く最適化する方法が記載されている。また、下記の特許文献２には、ドライバの運転操作と外部環境との関連性を随時学習して、ドライバの普段の内部状態からの逸脱を認識する方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−９９０５１号公報
【特許文献２】特開２００９−７３４６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記特許文献１に記載の技術では、条件により目的変数が変化する最適化対称の決定変数を短時間で効率よく最適化する方法が提案されているが、目的関数を運転行動から推定し自律的に変化させることは困難である。
【０００５】
また、上記特許文献２に記載の技術では、ドライバによる運転操作と外部環境との関連性を随時学習し、ドライバの普段の内部状態からの逸脱を認識する方法が提案されているが、プログラムやモデル構造を動的に変更することは困難である。
【０００６】
このように、従来の車両用制御装置では、制御アルゴリズムの設計段階で想定されていなかった状況に車両が遭遇したときに、その状況に対応して車両制御を行うことは困難であった。
【０００７】
そこで、本発明は、車両が、想定されていなかった走行場に遭遇したときに、その走行場に対応した新たな制御アルゴリズムを自律的に創発することができる車両用制御装置を提供することを目的としている。
【０００８】
なお、車両の「走行場」とは、車両の遭遇している状況、状態、事態又は場面を含み、停止状態を含む車両の走行状態、車外環境の状況、及び車両のドライバの挙動、認識（例えば危機感）及び意図をも含む。また、制御アルゴリズムの「創発」とは、新しい制御アルゴリズムを生成することを含む。創発に当たっては、部分の性質の単純な総和にとどまらない性質が、全体として現れることがある。例えば、局所的な複数の相互作用が複雑に組織化することで、個別の要素の振る舞いからは予測できないようなシステムが構成されることもある。
【課題を解決するための手段】
【０００９】
上記の目的を達成するため、本発明の車両用制御装置は、車両を運転するドライバの状態、車外環境状態、及び車両状態の少なくとも一つを検出する検出手段と、上記検出手段によって検出された検出状態に基づいて、車両が遭遇している走行場を、恒等写像モデルを利用して推定する推定手段と、既知の走行場と車両の制御アルゴリズムとを互いに対応付けて記憶した第１記憶手段と、上記推定手段によって推定された推定走行場が、上記第１記憶手段に記憶された既知の走行場であるか、上記第１記憶手段に記憶されていない未知の走行場であるかを判定する判定手段と、上記判定手段によって推定走行場が未知の走行場であると判定された場合に、遺伝的ネットワークプログラミングを利用して、推定走行場に対応する新たな制御アルゴリズムを創発する創発手段と、上記判定手段によって推定走行場が既知の走行場であると判定された場合に、上記第１記憶手段から獲得した推定走行場に対応する制御アルゴリズムを車両の制御パラメータに変換し、推定走行場が未知の走行場であると判定された場合に、上記創発手段によって創発された新たな制御アルゴリズムを車両の制御パラメータに変換する変換手段と、を有することを特徴としている。
【００１０】
このように構成された本発明によれば、車両が、想定されていなかった走行場に遭遇したときに、その走行場に対応した新たな制御アルゴリズムを自律的に創発することができる車両用制御装置を提供することができる。
また、遺伝的ネットワークプログラミングでは、有向グラフ（ネットワーク）を用いて遺伝子型が表現されるため、従来の遺伝的アルゴリズムでは表現が困難であった数式やプログラムのコードなど、構造を有するデータを表現することができる。このため、遺伝的ネットワークプログラミングは、未知の走行場に対する新たな制御アルゴリズムを創発するのに用いて好適である。
また、恒等写像モデルは、入力層と出力層に同一データを提示して、恒等写像としての中間層出力を学習させる階層型ニューラルネットワークである。恒等写像モデルでは、曖昧で不完全な多種多様な情報を入力及び出力とし、問題解決に必要な縮約された情報を自動的に抽出することができる。特に、恒等写像モデルでは、教師信号を必要としないため、未知の予め想定されていなかった未知の走行場を推定するのに用いて好適である。
【００１３】
また、本発明において、好ましくは、上記第１記憶手段に格納された、既知の走行場に対する制御アルゴリズムは、遺伝的ネットワークプログラミングを利用して創発したものである。
遺伝的ネットワークプログラミングでは、有向グラフ（ネットワーク）を用いて遺伝子型が表現されるため、従来の遺伝的アルゴリズムでは表現が困難であった数式やプログラムのコードなど、構造を有するデータを表現することができる。このため、遺伝的ネットワークプログラミングは、既知の走行場に対する適切な制御アルゴリズムを創発するのに用いて好適である。
【００１５】
また、本発明において、好ましくは、更に、前記創発手段によって創発された新たな制御アルゴリズムを記憶する第３記憶手段を有する。
想定外の走行場に対応した新たな制御アルゴリズムを蓄積することによって、より多様な走行場に対応して車両制御を行うことが可能となる。
【発明の効果】
【００１６】
本発明の車両用制御装置によれば、車両が、想定されていなかった走行場に遭遇したときに、その走行場に対応した新たな制御アルゴリズムを自律的に創発することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態による車両用制御装置の構成を示すブロック図である。
【図２】本発明の実施形態による車両用制御装置の作動を示すフローチャートである。
【図３】自車挙動の走行場を推定するアルゴリズムのフローチャートである。
【図４】自車挙動の走行場を推定した結果を示すグラフであり、（Ａ）は車速の時間変化を示し、（Ｂ）は加速度の時間変化を示す。
【図５】相対距離及び相対速度と推定された車両関係の走行場との関係を示すグラフである。
【図６】ドライバの危機感の走行場を推定するアルゴリズムのフローチャートである。
【図７】ドライバの危機感の走行場を推定した結果を示すグラフであり、（Ａ）はブレーキ踏込角の時間変化を示し、（Ｂ）はブレーキ微分値の時間変化を示す。
【図８】遺伝的アルゴリズム（ＧＡ）の基本的なアルゴリズムの流れを示すフローチャートである。
【図９】遺伝的ネットワークプログラミング（ＧＮＰ）における集団と、その集団を構成する一つの個体の有向グラフの模式図である。
【図１０】遺伝的ネットワークプログラミング（ＧＮＰ）の一個体の遺伝子の表現型、遺伝子型及びノードライブラリの一例を示す図表である。
【図１１】遺伝的ネットワークプログラミング（ＧＮＰ）の交叉の例を示す模式図である。
【図１２】遺伝的ネットワークプログラミング（ＧＮＰ）の突然変異の例を示す模式図である。
【図１３】シリーズ方式ハイブリッド電気自動車の車両システムの模式図である。
【図１４】車両諸元のパラメータの図表である。
【図１５】エンジン出力と燃料消費率との関係を示すグラフである。
【図１６】バッテリ構成の模式図である。
【図１７】遺伝的ネットワークプログラミング（ＧＮＰ）の流れを示すフローチャートである。
【図１８】対応テーブルを用いた制御アルゴリズムの創発処理を示すフローチャートである。
【図１９】走行場の模式図である。
【図２０】推定された走行場と、対応テーブルとの関係を示す模式図である。
【図２１】想定外の走行場に対する制御アルゴリズムの創発処理を示すフローチャートである。
【図２２】遺伝的ネットワークプログラミング（ＧＮＰ）の有向グラフ構造の模式図である。
【図２３】第２実施形態における走行場の推定に用いる恒等写像モデルの模式図である。
【図２４】第２実施形態における恒等写像モデルの中間層出力の模式図である。
【図２５】（Ａ）は、第２実施形態における想定範囲の模式図であり、（Ｂ）は、想定範囲と対応テーブルとの関係を示す模式図である。
【発明を実施するための形態】
【００１８】
（１．第１実施形態）
以下、添付の図面を参照して、本発明の車両用制御装置の実施形態を説明する。
まず、図１を参照して、本発明の第１実施形態による車両用制御装置の構成について説明する。図１は、実施形態による車両用制御装置の構成を示すブロック図である。
【００１９】
図１に示すように、実施形態による車両用制御装置は、車両を運転するドライバの状態を検出するドライバ状態モニタ１１、車外環境状態を検出する車外環境モニタ１２及び車両状態を検出する車両状態モニタ１３を含む検出手段１０と、この検出手段１０によって検出された検出状態に基づいて、車両が遭遇している走行場を推定する推定部２０と、過去の経験に基づく既知の走行場と車両の制御アルゴリズムとを互いに対応付けて記憶した第１記憶部３０と、推定部１１によって推定された推定走行場が、第１記憶部３０に記憶された既知の走行場から想定される想定内の走行場であるか、想定外の走行場であるかを判定する判定部４０と、この判定部４０によって推定走行場が想定外の走行場であると判定された場合に、推定走行場に対応する制御アルゴリズムを創発する創発部５０と、判定部手段によって推定走行場が想定内の走行場であると判定された場合に、上記第１記憶手段から獲得した推定走行場に対応する制御アルゴリズムを車両の制御パラメータに変換し、推定走行場が想定外の走行場であると判定された場合に、上記創発手段によって創発された制御アルゴリズムを車両の制御パラメータに変換する変換部６０とを有している。
【００２０】
さらに、本実施形態では、過去の経験に基づかない走行場と車両の制御アルゴリズムとを互いに対応付けた対応テーブルを記憶した第２記憶部７０と、創発部５０によって創発された新たな制御アルゴリズムを記憶する第３記憶部８０とを有している。
【００２１】
なお、推定部２０，判定部４０、創発部５０及び変換部６０は、例えば車載ＥＣＵ（electric control unit：電子制御装置）における処理機能に相当する。これらの処理機能は、コンピュータにおいて所定のプログラムを実行することによって実現してもよいし、マイクロチップによって実現してもよい。また、第１記憶部３０、第２記憶部７０及び第３記憶部８０は、半導体メモリチップやハードディスクといった記憶装置で構成するとよい。
【００２２】
ここで、図２のフローチャートを参照して、第１実施形態による車両用制御装置の動作について説明する。
（１−１．状態検出）
まず、検出手段１０が、車両を運転するドライバの状態、車外環境状態、及び車両状態車両状況を検出する（Ｓ２１）。
【００２３】
検出部１０を構成するドライバ状態モニタ１１の例としては、車室内に配置されてドライバの視線や、顔の動きを撮像するモニタカメラ及び画像処理システムや、ドライバのブレーキの踏込量を検出するセンサが挙げられる。また、車外環境モニタ１２の例としては、先行車両を含む障害物までの距離や相対速度を検出する車両前方に向けたレーダや、車両の側方又は後方に向けたレーダや、車外に向けたモニタカメラ及び画像処理システムが挙げられる。また、車両状態モニタ１３の例としては、車速センサ、加速度センサ、ブレーキ踏込量センサ、アクセル踏込量センサ、及び操舵角センサが挙げられる。
【００２４】
なお、検出部１０は、ドライバ状態モニタ１１、車外環境モニタ１２及び車両状態モニタ１３の三つを常に設ける必要はなく、これらのうちの一つだけ又は二つだけを設けたものであってもよい。
【００２５】
（１−２．走行場の推定）
次に、推定部２０が、検出手段１０によって検出された検出状態に基づいて、車両が遭遇している走行場を推定する（Ｓ２２）。
【００２６】
以下、車両状況に基づいて自車の挙動を推定し、車外環境状況に基づいて、先行車両と自車両との車両関係を推定し、さらに、ドライバ状態に基づいてドライバの危機感を推定する例について説明する。
【００２７】
（１−２−１．自車挙動の走行場の推定）
一般に、車両は、停止した状態から発進し、走行する。そして、加速及び減速を繰り返して最終的に停止する。このように、車両の挙動は、「停止」、「発進」及び「走行」というサイクルを繰り返す。このため、自車挙動についての走行場として、下記の表１に示すように、「発進」、「走行」及び「停止」の３つの走行場を推定する。
【００２８】
【表１】
0005665400.tif 000002
【００２９】
自車挙動の走行場を推定するにあたり、車速Ｖ、及びその時間微分である加速度αに着目すると、自車両は、車速Ｖ＝０で「停止」している状態から動き始め、加速度α＞０となって「発進」へ移行する。さらに、「発進」後に車速が極大値をとり、加速度α＜０となって「走行」へ移行する。そして、「走行」から減速し、車速Ｖ＝０となって「停止」へ移行する。このため、車速Ｖ及び加速度αは、自車挙動の走行場を推定するためのパラメータとして使用することができる。
【００３０】
図３に、車速Ｖ及び加速度αから自車挙動の走行場を推定するアルゴリズムのフローチャートを示す。入力される車速Ｖ＞０となるまで（Ｓ３２で「ｎｏ」の場合）、走行場は「停止」と推定される（Ｓ３１）。次いで、車速Ｖ＞０となると（Ｓ３２で「ｙｅｓ」の場合）、入力される加速度α＜０となるまで（Ｓ３４で「ｎｏ」の場合）、走行場は「発進」と推定される（Ｓ３３）。次いで、加速度＜０となると（Ｓ３４で「ｙｅｓ」の場合）、入力される車速Ｖ＝０となるまで（Ｓ３６で「ｎｏ」の場合）、走行場は「走行」と推定される（Ｓ３５）。そして、車速Ｖ＝０となると（Ｓ３６で「ｙｅｓ」の場合）、フローチャートはスタートへ戻り、走行場は「停止」と推定される。
【００３１】
図４に、車速Ｖ及び加速度αで表された車両の走行パターンに対して、図３に示した推定アルゴリズムを適用して自車挙動の走行場を推定した結果を示す。図４の（Ａ）のグラフ中の線Ｉは、車速Ｖの時間変化を示し、図４（Ｂ）のグラフ中の線IIは、加速度αの時間変化を示す。
【００３２】
図４に示す例では、時刻ｔ０までは車速Ｖ＝０であるため、走行場は「停止」と推定される。そして、時刻ｔ０に車速Ｖ＞０となってから時刻ｔ１に加速度α＜０となるまで、走行場は「発進」と推定される。さらに、時刻ｔ１に加速度α＜０となってから時刻ｔ２に車速Ｖ＝０となるまで、走行場は「走行」と推定される。そして、時刻ｔ２以降、車速Ｖ＝０となり、走行場は「停止」と推定される。このようにして、車速Ｖ及び加速度αに基づいて、自車挙動の走行場を推定することができる。
【００３３】
（１−２−２．車両間系の走行場の推定）
自車両と先行車両との車両関係についての走行場として、下記の表２に示すように、「追従」、「自由」、「縮まる」、「拡がる」、「接近」及び「衝突」の６つの走行場を推定する。
【００３４】
【表２】
0005665400.tif 000003
【００３５】
ここでは、自車両と先行車両との車間距離Ｌ、及び、自車両に対する先行車両の相対速度Ｖｒを、車両関係の走行場を推定するためのパラメータとして使用する。具体的には、図５に示すように、車間距離Ｌが所定範囲内（Ｌ１≦Ｌ≦Ｌ２）であり、かつ、相対速度ＶｒがＶｒ＝０を挟んだ所定範囲内（−Ｖ１≦Ｖｒ≦＋Ｖ１）であるとき、走行場を「追従」と推定する。また、車間距離Ｌが「追従」の上限車間距離より長いとき（Ｌ２＜Ｌ）、走行場を「自由」と推定する。また、車間距離Ｌは「追従」の所定範囲内（Ｌ１≦Ｌ≦Ｌ２）であるが、相対速度Ｖｒが「追従」の下限値未満であるとき（Ｖｒ＜−Ｖ１）、走行場を「縮まる」と推定する。また、車間距離Ｌは「追従」の所定範囲内（Ｌ１≦Ｌ≦Ｌ２）であるが、相対速度Ｖｒが「追従」の上限値を超えるとき（＋Ｖ１＜Ｖｒ）、走行場を「拡がる」と推定する。また、車間距離Ｌが、「追従」の下限値未満であり、かつ０以上であるとき（０≦Ｌ＜Ｌ１）、走行場を「接近」と推定する。そして、車間距離Ｌが０未満であるとき（Ｌ＜０）、「衝突」と推定する。
【００３６】
図５に、相対距離Ｌ及び相対速度Ｖｒと、推定された車両関係の走行場との関係を示す。図５のグラフの横軸は先行車両と自車両との車間距離Ｌを表し、縦軸は自車両の速度に対する先行車両の相対速度Ｖｒを表す。図５に示すように、相対距離Ｌ及び相対速度Ｖｒによって、車両関係の走行場が推定される。
【００３７】
（１−２−３．ドライバ危機感の走行場の推定）
ドライバの危機感についての走行場として、下記の表３に示すように、「通常」、「前兆」及び「ヒヤリハット」の３つの走行場を推定する。一般に、ドライバは、飛び出しや急な割り込みといった緊急事態に遭遇した場合に、急ブレーキをかける。そこで、ブレーキ踏込角（ブレーキ踏込量）Ｂ、及びブレーキ踏込角の時間微分値（以下、「ブレーキ微分値」ともいう。）βをドライバの危機感についての走行場を推定するためのパラメータとして使用する。
【００３８】
【表３】
0005665400.tif 000004
【００３９】
図６に、ブレーキ踏込角Ｂ及びブレーキ微分値βからドライバの危機感の走行場を推定するアルゴリズムのフローチャートを示す。入力されるブレーキ微分βが所定の閾値βＴを超えてβ＞βＴとなるまで（Ｓ６２で「ｎｏ」の場合）、走行場は「通常」と推定される（Ｓ６１）。次いで、ブレーキ微分値β＞βＴとなると（Ｓ６２で「ｙｅｓ」の場合）、入力されるブレーキ踏込角Ｂが所定の閾値ＢＴを超えてＢ＞ＢＴとなるまで（Ｓ６５４で「ｎｏ」の場合）、走行場は「前兆」と推定される（Ｓ６３）。
【００４０】
なお、ブレーキ踏込角Ｂ＝０となると（Ｓ６４で「ｙｅｓ」の場合）、フローチャートはスタートへ戻り、走行場は「停止」と推定される。すなわち、全ての「前兆」が「ヒヤリハット」へ移行するわけではない。これは、ブレーキ踏込量Ｂが小さくても、ブレーキ踏込量の時間微分値βだけが大きな値となることがあるためである。
【００４１】
次いで、ブレーキ踏込角Ｂ＞ＢＴとなると（Ｓ６５で「ｙｅｓ」の場合）、入力されるブレーキ踏込角Ｂ＜ＢＴとなるまで（Ｓ６７で「ｙｅｓ」の場合）、走行場は「ヒヤリハット」即ちドライバが危機感を感じている状態と推定される。次いで、入力されるブレーキ踏込角Ｂ＜ＢＴとなると（Ｓ６７で「ｎｏ」の場合）、走行場は再び「前兆」と推定される（Ｓ６３）。
【００４２】
図７に、ブレーキ踏込角Ｂ及びブレーキ微分値βで表された走行パターンに対して、図６に示したドライバの危機感の推定アルゴリズムを適用して走行場を推定した結果を示す。図７（Ａ）のグラフ中の線Ｉは、ブレーキ踏込角Ｂの時間変化を示し、図７（Ｂ）のグラフ中の線IIは、ブレーキ微分値βの時間変化を示す。
【００４３】
図７に示す例では、時刻ｔ０まではブレーキ微分値β＜βＴであるため、走行場は「通常」と推定される。そして、時刻ｔ０にブレーキ微分値β＞βＴとなってから時刻ｔ１にブレーキ踏込角Ｂ＞ＢＴとなるまで、走行場は「前兆」と推定される。さらに、時刻ｔ１にブレーキ踏込角Ｂ＞ＢＴとなってから時刻ｔ２にブレーキ踏込角Ｂ＜ＢＴとなるまで、走行場は「ヒヤリハット」と推定される。さらに、時刻ｔ２にブレーキ踏込角Ｂ＜ＢＴとなってから時刻ｔ３にブレーキ踏込角Ｂ＝０となるまで、走行場は「前兆」と推定される。そして、時刻ｔ３にブレーキ踏込角Ｂ＝０となってから時刻ｔ４に再びブレーキ微分値β＞βＴとなるまで、走行場は「通常」と推定される。
【００４４】
また、時刻ｔ４に再びブレーキ微分値β＞βとなってから、時刻ｔ５にブレーキ踏込量Ｂ＝０となるまで、走行場は「前兆」と推定される。そして、時刻ｔ５にブレーキ踏込量Ｂ＝０となり、走行場は「通常」と推定される。このようにして、ブレーキ踏込角Ｂ及びブレーキ微分値βに基づいて、ドライバの危機感の走行場を推定することができる。
【００４５】
なお、上記の自車挙動、車両関係及びドライバの危機感についての走行場の他に、道路形状に関する走行場を推定してもよい。一般に、道路形状は、道路の曲率及び勾配によって表される。このため、道路形状に関する走行場として、曲率について「直線」、「右カーブ」及び「左カーブ」の３つの走行場を推定し、勾配について「平坦」、「上り坂」及び「下り坂」の３つの走行場を推定する。
【００４６】
道路形状に関する走行場は、全地球測位システム（ＧＰＳ：Global Positioning System）を利用して得た自車両の現在位置と、カーナビゲーションシステムの地図データベースとの照合によって推定するとよい。また、道路形状の走行場は、例えば、所定の走行区間における勾配、勾配の組合せ、又は勾配と曲率の組合せとして推定するとよい。さらに、例えば、自車挙動、車両関係、ドライバの危機感、及び道路形状についての走行場の打ちの任意の２つ以上を組み合わせて、走行場として推定するようにしてもよい。
【００４７】
（１−３．走行場の判定）
次に、判定部４０が、推定部１１によって推定された推定走行場が、第１記憶部３０に記憶された既知の走行場から想定される想定内の走行場であるか、想定外の走行場であるかを判定する（図２のＳ２３）。
【００４８】
（１−３−１．制御アルゴリズム）
第１記憶部３０には、過去の経験に基づく既知の走行場と車両の制御アルゴリズムとが互いに対応付けて記憶されている。本実施形態では、第１記憶部３０に格納された、既知の走行場に対する制御アルゴリズムは、遺伝的ネットワークプログラミング（ＧＮＰ：Genetic Network Programming）を利用して創発されたものである。
【００４９】
以下、まず、遺伝的ネットワークプログラミングについて説明し、次いで、その遺伝的ネットワークプログラミングによって創発された制御アルゴリズムの例を説明する。
【００５０】
遺伝的ネットワークプログラミングは、生物の進化過程を模倣して最適解又は準最適解を求める進化論的計算手法の一つであって、遺伝的アルゴリズム（ＧＡ：Genetic Algorithm）を拡張した遺伝的プログラミング（ＧＰ：Genetic Programming ）を更に拡張したものである。
【００５１】
（１−３−１−１．遺伝的アルゴリズム（ＧＡ））
遺伝的アルゴリズム（ＧＡ）は、生物の進化過程において見られる、染色体の選択、交差及び突然変異を模倣し、工学的に応用した計算手法である。遺伝的アルゴリズムでは、設計変数を遺伝子とみなし、遺伝子をビット列構造で表現する。
【００５２】
ここで、図８のフローチャートを参照して、遺伝的アルゴリズムの基本的なアルゴリズムの流れを説明する。
先ず、初期集団を作成する（Ｓ８１）。初期集団は、個体の集合であり、各個体は、解候補を記号化したものであって、それぞれが一つの遺伝子を有する。
【００５３】
次いで、各個体における評価値を計算する（Ｓ８２）。
評価値とは、各個体の有効性を定量的に示す指標をいい、例えば、燃費の良さを評価値とすることができる。
【００５４】
次いで、評価値に基づいて個体を選択する（Ｓ８３）。
個体の選択とは、次世代に残す個体を選出することをいう。
【００５５】
次いで、選択された個体の交叉及び突然変異を行う（Ｓ８４）。
交叉とは、親世代の遺伝子を交換し、子世代として新しい遺伝子を作成することをいう。また、突然変異とは、親世代に遺伝子の一部をランダムに書き換え、子世代とすることをいう。
【００５６】
次いで、最終世代の判定を行う（Ｓ８５）。
最終世代になるまで、上記のＳ８２〜Ｓ８４のステップを繰り返す。
このようにして、最適解又は準最適解を探索する。
【００５７】
（１−３−１−２．遺伝的プログラミング（ＧＰ））
遺伝的プログラミング（ＧＰ）のアルゴリズムの流れも、図８に示したものと基本的に同じであるが、遺伝的プログラミング（ＧＰ）では、遺伝子を、ノード関数を用いた木構造で表現する。そして、ノード関数を用いてｉｆ−ｔｈｅｎ文による条件判断を行い、処理を実行する。これにより、遺伝的プログラミングでは（ＧＰ）では、遺伝的アルゴリズム（ＧＡ）のビット列構造では扱えなかった構造的なシステムを扱うことができる。
【００５８】
（１−３−１−３．遺伝的ネットワークプログラミング（ＧＮＰ））
遺伝的ネットワークプログラミング（ＧＮＰ）のアルゴリズムの流れも、図８に示したものと基本的に同じであるが、遺伝的ネットワークプログラミング（ＧＮＰ）では、図９に示すように、集団を構成する各個体が、ノード関数が有向枝によって相互に接続された有向グラフ（ネットワーク）構造を有する。ノード関数は、判定ノードと処理ノードの二種類のノードから構成される。判定ノードは、ｉｆ−ｔｈｅｎ文による条件判断及び分岐を担う。一方、処理ノードは、定められた処理（行動）を実行する役割を有する。また、判定ノードからは、分岐の数だけ有向枝が伸びる。一方、処理ノードからは、一本の有向枝のみが伸びる。
なお、遺伝的ネットワークプログラミング（ＧＮＰ）では、どの個体でもノード数が一定であるため、ブロート（解の膨張）が発生しない。
【００５９】
さらに、図１０に、遺伝的ネットワークプログラミング（ＧＮＰ）の一個体の遺伝子の一例を示す。遺伝子は、図１０に示す表現型のようにネットワーク状に表現され、プログラム上では、図１０に示す遺伝子型のように記述される。遺伝子型の「ＮＩＤｉ」は、ノードｉのＩＤであり、設定したノードの数だけ存在する。また、遺伝子型の「ＮＴｉ」は、ノード関数を表し、「ＮＴｉ＝１」ならば判定ノードを表し、「ＮＴｉ＝２」ならば処理ノードを表す。遺伝子型の「ＩＤｉ」は、ノード関数ＩＤを表し、判定ノード及び処理ノード内容を記述したノートライブラリのラベルを示す。そして、「ＮＴｉ」と「ＩＤｉ」によって、ノートライブラリに記述されたノード内容のうち、実行されるノード内容が決定される。遺伝子型の「Ｃｉ１」及び「Ｃｉ２」は、ノードｉから伸びる有向枝の接続先情報であり、接続するノードＩＤが記載される。なお、処理ノードは、接続先が一つしかないため、処理ノードにＣｉ２は存在しない。
【００６０】
このような各個体の評価値は、個体の達成度や有効性を数値化したものであり、その値は、評価換算によって求められる。評価関数の計算式は、問題に依存して設計者によって設定される。そして、個体の評価値に基づいて遺伝子操作が行われるので、遺伝的ネットワークプログラミング（ＧＮＰ）の最適化は、評価値の最適化に対応する。
【００６１】
そして、交叉や突然変異を実行する前に、選択により、評価値の高い個体を優先的に選出する。これにより、評価値の高い個体の遺伝子が次世代へ受け継がれる。選択方式の例として、ルーレット選択、トーナメント選択及びエリート保存選択が挙げられる。
【００６２】
ルーレット選択では、交叉及び突然変異操作を加える個体を選出するため、各個体の子孫は、その評価値に比例した確率で選ばれる。ｉ番目の個体の評価値をｆｉとすると、下記の（１）式により、ｉ番目の個体が選ばれる確率ｐｉが求まる。
ｐｉ＝ｆｉ／Σｆ    ・・・（１）
【００６３】
トーナメント選択では、交叉及び突然変異操作を加える個体を選出するため、予め設計者によって決められた数だけ個体集団の中からランダムで個体を取り出し、その中で最も適応度の高い個体を選択する。これを必要な個体数が得られるまで繰り返す。
【００６４】
エリート保存選択では、その世代における評価値の高い個体を一定数そのまま次世代へ残す操作を行う。これにより、最適個体の評価が悪化することを防ぐことができる。
【００６５】
交叉は、選択された２個の個体間で行われ、２個の子個体を生成する。このとき、交叉するノードどうしの遺伝子情報は全て交換される。ここで、図１１を参照して、交叉の手順について説明する。
【００６６】
先ず、親個体の集団から２個の親個体を任意に選択する。図１１では、「親１」及び「親２」が選択される。次いで、選択した親個体の一方「親１」において、設定した交叉確率に基づいて、交叉すべきノードを選択する。図１１では、「親１」のノード「Ｐ１」が選択される。次いで、一方の親個体「親１」で選択されたノード「Ｐ１」と、他方の親個体「親２」における「Ｐ１」と同一識別番号のノード「Ｐ２」との間で、全ての遺伝子を交換する。このようにして生成された２個の個体「子１」及び「子２」が、次世代の個体となる。
【００６７】
突然変異は、１個の親個体内で行われ、１個の子個体が生成される。突然変異には、接続先ノードを変更するものと、ノード内容を変更するものとの２種類がある。ここで、図１２を参照して、突然変異について説明する。
まず、接続先ノードを変更する突然変異（突然変異Ａ）では、１個体を任意に選択し、設定した突然変異確率に基づき、突然変異させるべきノードを選択する。そして、選択されたノードの接続先をランダムに変更する。図１２では、突然変異Ａにおいて、ノードＰ１の接続先ノードが、右上の処理ノードから、左上の判断ノードへ切り替えられている。
【００６８】
また、ノード内容を変更する突然変異（突然変異Ｂ）では、１個体を任意に選択し、設定した突然変異確率に基づき、突然変異させるべきノードを選択する。そして、選択されたノードのラベルをランダムに変更する。図１２では、突然変異Ｂにおいて、選択されたノードＰ１がノードＰ２に変更されている。
このようにして、次世代の個体が生成される。
【００６９】
（１−３−１−４．遺伝的ネットワークプログラミング（ＧＮＰ）の利用例）
以下に、遺伝子ネットワークプログラミング（ＧＮＰ）を利用して、ハイブリッド電気自動車におけるエンジンとモータの分担に関する車両制御アルゴリズムを創発する例を示す。ここでは、走行場に応じて燃費が改善される車両制御アルゴリズムを創発する。
【００７０】
まず、制御アルゴリズムの前提となる、シリーズ方式ハイブリッド電気自動車の車両システムを図１３に示す。また、車両諸元のパラメータを図１４に示す。
また、重力加速度ｇ＝９．８ｍ／ｓ2と設定し、空気密度ρ＝１．２９ｋｇ／ｍ3と設定する。
【００７１】
モータ出力ＷM（Ｗ）は、下記の式（２）により求める。
ＷM＝ＴM・（Ｖ／ｒD）ｉ    ・・・（２）
ここで、ＴM［Ｎｍ］は、モータトルクを表し、Ｖ［ｍ／ｓ］は車速を表す。モータの最大出力ＷMmaxとモータトルクＴMとの関係より、車速Ｖ＝１８．７５ｍ／ｓまでは最大トルクが４００Ｎｍであり、これ以上の速度では最大トルクは速度に反比例して低下していく。なお、モータトルクは最大トルクと正規化されたアクセル入力量との積から求める。
【００７２】
図１３に示すように、シリーズ方式のハイブリッド電気自動車において、エンジンの動力は発電機で電力に変換される。発電量ＷG［Ｗ］は、下記の（３）式より求める。
ＷG［Ｗ］＝ηGＷE    ・・・（３）
ただし、ＷE［Ｗ］は、エンジン出力である。また、燃料消費率ＦE［ｇ／ｋＷｈ］は、図１５のグラフにより求める。図１５のグラフは、エンジン出力と燃料消費率との関係を示す。さらに、１秒当たりの燃料消費量ＦC［ｇ／ｓ］は、下記の式（４）により求める。
ＦC＝ＷE・ＦE／１０００／３６００    ・・・（４）
【００７３】
また、バッテリ構成を図１６に示す。また、バッテリ内部電圧ＶB＝４００Ｖと設定し、バッテリ内部抵抗ＲB＝４００ｍＶと設定する。
【００７４】
バッテリ残容量ＥB［Ｗｈ］は、下記の式（５）より求める。
ｄＥB／ｄｔ＝ＷB−（ＷB／ＶB）2・ＲB
ＷB＝ＷG−ＷM−ＷA                      ・・・（５）
ただし、ＷBは、バッテリ入出力である。
【００７５】
また、等価燃料消費量ＦB（ｇ）は、下記の式（６）より求める。
ＦB＝ΔＳＯＣ・ＥBmaxＦE／ηM／１０００      ・・・（６）
等価燃料消費量とは、走行終了後にエンジンを稼働させて、バッテリ残量ＳＯＣを書おきの残量に戻すために必要とする燃料消費量である。その際、エンジンは最高効率点ＦE＝２５０ｇ／ｋＷｈで稼働させるものとする。
ただし、ΔＳＯＣ（％）は、走行終了時のバッテリ残量ＳＯＣと、走行開始時のバッテリ残量ＳＯＣとの差である。
【００７６】
また、ブレーキは、回生ブレーキ、油圧ブレーキ及びエンジンブレーキから構成される。回生ブレーキは、ドライバから要求される要求ブレーキトルクが最大モータトルクＴMmax以下、すなわち、４００Ｎｍ以下の場合に用いられる。回生ブレーキによって得られる回生エネルギーの大きさは、上記の式（２）より求まる。回生エネルギーとモータの発電効率ηMとの積がモータの発電量となる。このとき、上記の式（５）におけるモータ出力ＷMは負となる。
【００７７】
油圧ブレーキは、要求ブレーキトルクが回生ブレーキで得られるトルクを超過するとき、すなわち、４００Ｎｍ以上の場合に用いられ、最大モータトルクＴMmaxの超過分を補う。なお、要求ブレーキトルクは、最大ブレーキトルクと正規化されたブレーキ入力量との積から求める。
【００７８】
エンジンブレーキは、ブレーキとアクセルが共に入力されない場合に用いられる。シリーズ方式ハイブリッド電気自動車では、駆動軸とエンジンとが直接連結していないため、本来エンジンブレーキは存在しない。しかし、回生ブレーキトルク３５Ｎｍを与えることでそれを再現し、充電走行を行う。
【００７９】
また、車体の挙動は、下記の式（７）より求める。
ｍ（ｄＶ／ｄｔ）＝｛（ＴMｉηt−ＴB）／ｒD｝−Ｒ      ・・・（７）
Ｒ＝Ｒi＋Ｒr＋Ｒl
Ｒi＝ｍｇｓｉｎθ
Ｒr＝μrｍｇ
Ｒl＝（ρ／２）ＣDＡＶ2
【００８０】
ただし、また、ｍ［ｋｇ］は車体重量、ＴMはモータトルク［Ｎｍ］、ｉは減速比、ηtは伝達効率、ＴBはブレーキトルク［Ｎｍ］を表す。また、Ｒ（Ｎ）は走行抵抗、Ｒｉ［Ｎ］は勾配抵抗、Ｒｒ［Ｎ］は転がり抵抗、Ｒl［Ｎ］は空気抵抗、θ［ｒａｄ］は道路勾配を表す。また、μrは転がり摩擦係数、ＣDは抵抗係数、Ａは車両の前面投影面積を表す。
【００８１】
遺伝的ネットワークプログラミング（ＧＮＰ）の設定パラメータを下記の表４に示し、判定ノード及び処理ノードの設定を下記の表５に示す。判定ノード及び処理ノードは、入力値の範囲を任意の間隔で刻み、閾値の異なるノードを複数生成する。判定及び処理の債には、入力値のその閾値の範囲内か否かで「ｙｅｓ」又は「Ｎｏ」の二方向出力を行う。
【００８２】
【表４】
0005665400.tif 000005
【００８３】
【表５】
0005665400.tif 000006
【００８４】
次に、図１７のフローチャートを参照して、上述した前提の下での遺伝的ネットワークプログラミング（ＧＮＰ）の流れを説明する。
まず、ランダム初期集団として、判定ノード及び処理ノードがランダムに組み合わされたネットワークを個体の数だけ作成する（Ｓ１７１）。
【００８５】
次に、走行場ごとのアクセル踏込角及び勾配を入力する（Ｓ１７２）。アクセル踏込量及び勾配は、例えば、車両関係の走行場が「自由」であり、かつ、道路勾配の走行場が「平坦」、「上り坂」又は「下り坂」それぞれの場合についての入力データを使用するとよい。なお、道路勾配が「上り坂」又は「下り坂」の場合の勾配は、４．０％とする。
次に、アクセル踏込角の入力から、要求されるモータ出力及びブレーキトルクを計算する（Ｓ１７３）。
【００８６】
次に、バッテリ残量ＳＯＣを所定の範囲内（４０〜７０％）に維持するための条件判断を行う（Ｓ１７４）。バッテリ残量ＳＯＣが７０％を超過した場合（Ｓ１７４で「ｙｅｓ」の場合）に、エンジンを停止させ（Ｓ１７５）る。また、バッテリ残量ＳＯＣが４０％を下回った場合（Ｓ１７６で「ｙｅｓ」の場合）に、エンジンを稼働させる（Ｓ１７７）。エンジンを稼働させる際に、要求されるエンジン出力が、エンジンの最適出力３５ｋＷ以下であれば、３５ｋＷを出力し、３５ｋＷ以上であれば、要求通りの値を出力する（Ｓ１７７）。
【００８７】
また、バッテリ残量ＳＯＣが所定の範囲内（４０〜７０％）の場合（Ｓ１７４で「ｎｏ」かつＳ１７６で「ｎｏ」の場合）、遺伝的ネットワークプログラミング（ＧＮＰ）による制御アルゴリズムによってエンジン出力を決定する（Ｓ１７８）。
【００８８】
続いて、発電量を計算し、燃料消費量を計算する（Ｓ１７９）。さらに、バッテリ残量ＳＯＣを計算し（Ｓ１８０）、運動方程式を解く（Ｓ１８１）。そして、上記のステップＳ１７２〜Ｓ１８１のループを、所定の走行場における走行モードが終了するまで（Ｓ１８２で「ｎｏ」の間）繰り返す。
【００８９】
走行モードの終了後（Ｓ１８２で「ｙｅｓ」の場合）に、ネットワーク（１個体）の評価値を計算する（Ｓ１８３）。評価値は、燃料消費量と等価燃料消費量の和として表される。上記のステップＳ１７２〜Ｓ１８３のループを、個体の数繰り返す。
【００９０】
そして、全ての個体の評価値が求められた後（Ｓ１８４で「ｙｅｓ」の場合）、最終世代であるか否かの判断を行う（Ｓ１８５）。最終世代でない場合（Ｓ１８５で「ｎｏ」の場合）、個体集団に対して、表４に示した設定パラメータの確率に従って、選択、交叉、突然変異といった遺伝子操作を加えて進化を行う（Ｓ１８６）。また、最終世代である場合（Ｓ１８５で「ｙｅｓ」の場合）、最適個体のノード遷移ネットワークを保存して（Ｓ１８７）、終了する。
【００９１】
このような最適個体のノード遷移ネットワークによる制御アルゴリズムが、第１記憶部３０に走行場と対応付けて記憶されている。
【００９２】
（１−４．推定場が想定内の場合）
次に、判定部４０によって推定走行場が、第１記憶部３０に記憶された既知の走行場から想定される想定内の走行場であると判定された場合（図２のＳ２３で「ｙｅｓ」の場合）に、変換部６０が、上記第１記憶手段から推定走行場に対応する制御アルゴリズムを読み出し（Ｓ２４）、車両の制御パラメータに変換する（Ｓ２５）。
【００９３】
例えば、図１３に示したシステムのシリーズ方式ハイブリッド電気自動車について、車両関係の走行場が「自由」であり、かつ道路勾配の走行場が「平坦」であるように、想定範囲内の走行場である場合には、第１記憶部３０から、その走行場に対応する制御アルゴリズムが読み出される。そして、読み出された制御アルゴリズムに従って、車両の制御パラメータとして、エンジンとモータの分担出力が計算される。
【００９４】
また、制御パラメータにしたがって、エンジン及びモータ以外に、ハンドルやブレーキといったアクチュエータを制御してもよい。例えば、制御アルゴリズムから変換された舵角に従って、ハンドルを自動操作するようにしてもよいし、制御アルゴリズムから変換された車速に従って、ブレーキを自動的に作動させてもよい。
【００９５】
また、制御パラメータに従って、また、スピーカやディスプレイ等のヒューマン・マシン・インターフェイス（human machine interface：ＨＭＩ）を制御してもよい。例えば、制御アルゴリズムから変換された舵角や車速に従って車両が走行するように、ドライバを音声で誘導するようにしてもよい。
【００９６】
（１−５．推定場が想定外の場合）
一方、判定部４０によって推定走行場が、第１記憶部３０に記憶された既知の走行場から想定される想定内の走行場ではない、想定外の走行場であると判定された場合（図２のＳ２３で「ｎｏ」の場合）には、創発部５０が、推定走行場に対応する制御アルゴリズムを創発する（Ｓ２６）。
【００９７】
図１８のフローチャートを参照して、推定された走行場が想定外である場合の制御アルゴリズムの創発処理を説明する。図１８のフローチャートは、図２のフローチャートのステップＳ２３、Ｓ２６及びＳ２７の部分に相当する。ここでは、走行場として、図１９に示すように、自車両Ｃの進行方向前方に、障害物として事故車両Ｂが停車している場合について説明する。
【００９８】
先ず、推定部１１によって推定された走行場が、想定範囲内の走行場か否かが判定される（図１８のＳ２３）。
ここでは、走行場は、図２０に示すように、事故車両の側方に残された「幅員」と、自車両が事故車両の手前で停止するのに必要な「減速度」とに基づいて推定される。「幅員」は、車外環境モニタ１２により撮像された前方画像から求められる。また、「減速度」は、車外環境モニタ１２により撮像された前方画像から求めた自車両の現在位置から事故車両までの距離と、車両状態モニタ１０によって測定された現在の自車両の車速とから求められる。
【００９９】
一方、第１記憶部３０に記憶された既知の走行場も、「幅員」と「減速度」の２つのパラメータで特定されている。図２０に、既知の走行場の幾つかを白丸印で模式的に示す。図２０中の白丸Ａは、「幅員」が十分にあり、かつ、事故車までの距離が長いため「減速度」が小さいという走行場を表している。かかる走行場に対しては、ハンドル操作により事故車両を大きく回避するという制御アルゴリズムが記憶されている。また、図２０中の白丸Ｂは、「幅員」が十分に有り、かつ、事故車までの距離が短いため「減速度」が大きいという走行場を表している。かかる走行場に対しても、ハンドル操作による事故車を大きく回避するという制御アルゴリズムが記憶されている。また、図２０中の白丸Ｃは、「幅員」が十分に無く、かつ、「減速度」が白丸Ａと白丸Ｂとの中間の走行場を表している。かかる走行場に対しては、事故車の横を走行することができないため、ブレーキをかける制御アルゴリズムが記憶されている。この場合、更に、事故車との衝突に備えてハンドルをしっかり持って踏ん張るように音声でドライバに指示する制御アルゴリズムも記憶されているとよい。
【０１００】
また、図２０の全ての白丸印を囲む曲線Ｉは、想定内の走行場の範囲を表している。想定内の走行場の範囲には、各白丸印の既知の走行場そのものだけではなく、既知の走行場どうしの間の走行場、すなわち、既知の走行場どうしの間で内挿できる走行場も含まれる。したがって、推定された走行場が、第１記憶部３０に記憶された既知の走行場どうしの間で内挿できる場合は想定内の走行場と判定され、既知の走行場から外挿が必要な場合は想定外の走行場と判定される。
【０１０１】
さらに、図２０中に、推定部１１によって推定された走行場を黒丸印Ｄで示す。黒丸Ｄは、「幅員」が白丸Ａと白丸Ｃとの中間であり、かつ、「減速度」が大きい走行場を表している。図２０に示すように、推定された走行場は、曲線Ｉで囲まれた想定範囲内に含まれていない。このため、黒丸Ｄで示される推定走行場は、想定外の走行場であると判定される（図１８のＳ２３）。
【０１０２】
推定走行場が想定外であると判定された場合、第２記憶部７０から、対応テーブルを読み込む（Ｓ２６１）。対応テーブルには、過去の経験に基づかない走行場と車両の制御アルゴリズムとを互いに対応付けて記憶されている。
ここで、下記の表６に、対応テーブルの一例を示す。
【０１０３】
【表６】
0005665400.tif 000007
【０１０４】
次に、対応テーブルから、推定走行場に最も近似する近似走行場を選択し、この近似走行場に対応する制御アルゴリズムを読み出す（Ｓ２６２）。
ここでは、上記の表６に示す想定が対応テーブルから、「前方衝突防止距離」が「無し」であり、「後方衝突防止距離」が「有り」であり、かつ、「側方スペース」が「有り」の場合を架設外挿点とする（Ｓ２６２）。
【０１０５】
次に、第１記憶手段に記憶された既知の走行場の中から、黒丸Ｄで示した推定走行場に最も近似する近似走行場を選択し、この近似走行場に対応する制御アルゴリズムを読み出す（Ｓ２６３）。
ここでは、図２０に白丸Ｅで示す走行場を近似走行場として選択する。
【０１０６】
そして、想定内の走行場から選択した白丸Ｅの最近似の走行場と、対応テーブルから選択した最近似の走行場の中間の走行場を、推定場として選択し（Ｓ２６４）、白丸Ｅの走行場の制御アルゴリズムと対応テーブルから選択した走行場の制御アルゴリズムの中間の制御アルゴリズムを創発する（Ｓ２６５）。
【０１０７】
ここで、図２１を参照して、制御アルゴリズムの創発について説明する。
まず、幅員に余裕が有る場合（Ｓ２１１で「有り」の場合）、例えば、図２０で想定内の白丸Ｂの走行場の場合、ハンドル操作によって障害物を回避する制御アルゴリズムが読み出される（Ｓ２１２）。さらに、ドライバに対して、徐行運転が指示される（Ｓ２１３）。
【０１０８】
また、幅員に余裕が無い場合（Ｓ２１１で「無し」の場合）、例えば、図２０で想定内の白丸Ｃの走行場の場合、自車両が障害物と衝突することによって発生する被害を軽減するために、ブレーキを作動させる制御アルゴリズムが読み出され（Ｓ２１４）、さらに、エンジンを停止させる（Ｓ２１５）。
【０１０９】
そして、幅員の余裕が、「有り」と「無し」との中間である場合（Ｓ２１１で「中間」の場合）、例えば、図２０で想定外の黒丸Ｄの走行場である場合、例えば、遺伝的ネットワークプログラミングを利用して、新たな制御アルゴリズムが創発される（Ｓ２１６）。
【０１１０】
ここで、図２２に、新たな制御アルゴリズムを創発する際の、初期集団の個体の有向グラフ（ネットワーク）構造の一例を示す。初期集団の個体は、白丸Ｅの走行場のものと、対応テーブルから選択された走行場のものとするのがよい。ここでは、自車両が障害物と衝突することによって発生する被害の程度を最小にすることを目的として、被害度合で制御アルゴリズムが評価される。そして、白丸Ｅの走行場の有向グラフ構造と、対応テーブルから選択された走行場の有向グラフ構造について、交叉や突然変異といった遺伝子操作を繰り返して、新たな制御アルゴリズムを創発する。
【０１１１】
そして、例えば、障害物である事故車両の側面をこすりながら自車両を停止させるという制御アルゴリズムが創発される。
【０１１２】
そして、創発された制御アルゴリズムの良否をドライバの反応として学習させて（Ｓ２６６）、創発された制御アルゴリズムは第３記憶部８０に記憶される。このように、車両が遭遇している走行場が自動的に推定され、車両用制御装置の制御アルゴリズムの設計段階で想定されていなかった走行場に車両が遭遇したときに、その走行場に対応した新たな制御アルゴリズムが自動的に生成される。そして、既存の制御アルゴリズムに加えて、想定外の走行場に対応した新たな制御アルゴリズムを蓄積することによって、より多様な走行場に対応して車両制御を行うことが可能となる。
【０１１３】
（２．第２実施形態）
以下、本発明の第２実施形態を説明する。
第２実施形態による車両用制御装置の構成及び基本動作は、上述の第１実施形態のものと同じである。
ただし、第２実施形態では、推定部２０は、車両の遭遇している走行場を、恒等写像モデルを利用して推定する。
【０１１４】
図２３に、恒等写像モデルの模式図を示す。恒等写像モデルは、入力層と出力層に同一データを提示して、恒等写像としての中間層出力を学習させる階層型ニューラルネットワークである。図２３に示す例では、入力層及び出力層に、車外環境データとして、先行車両と自車両との車間距離を入力し、また、車両状態データとして、車速、ブレーキ踏込量、アクセル踏込量及び操舵角を入力している。
【０１１５】
図２３に示す例では、中間層として、自動車挙動（停止、発進、走行）、車両関係（追従、自由、縮まる、拡がる、接近、衝突）、ドライバ反応（通常、前兆、ヒヤリハット）、及び道路勾配（平坦、上り坂、下り坂）を走行場として出力する。
【０１１６】
図２４に、恒等写像モデルの中間層出力の模式図を示す。図２４の横軸ｘ１及び縦軸ｘ２は、それぞれ中間層の出力パラメータである。そして、図２４に示すように、中間層出力によって、走行場（例えば、追い越し、通中、縦列駐車、駐車、右折、交差点通過、左折）が特定される。
【０１１７】
また、第２実施形態では、第１記憶部３０に記憶されている走行場が中間層出力によって特定されている。図２５の（Ａ）及び（Ｂ）に、想定範囲の模式図を示す。図２５（Ａ）及び（Ｂ）の線IIは、第１記憶部３０に記憶されている想定場の想定範囲を模式的に示す。図２５の（Ａ）及び（Ｂ）の横軸及び縦軸は、いずれも中間層出力のパラメータである。そして、図２５（Ａ）では、破線で示す推定走行場ｅ１が、線IIで囲まれた想定範囲内に含まれている。したがって、この推定走行場ｅ１は、想定内の走行場であると判定される。
【０１１８】
一方、図２５（Ｂ）では、破線で示す推定走行場ｅ２は、線IIで囲まれた想定範囲内に含まれていない。したがって、この推定走行場ｅ２は、想定外の走行場であると判定される。また、図２５（Ｂ）には、想定内の走行場に対する、想定が対応テーブルに挙げられている、過去の経験に基づかない走行場の範囲Ｔが模式的に示されている。
【０１１９】
図２５（Ｂ）に示す例では、恒等写像モデルの中間層出力によって特定された想定外の推定走行場ｅ２に最も近似する対応テーブル中の走行場として、走行場ｔ１が選択され、一方、推定走行場ｅ２に最も近似する想定内の走行場として、走行場ｂが選択される。そして、上述した第１実施形態と同様にして、想定外の走行場に対応する新たな制御アルゴリズムが創発される。
【０１２０】
上述の実施形態においては、本発明を特定の条件で構成した例について説明したが、本発明は種々の変更及び組み合わせを行うことができ、これに限定されるものではない。
【符号の説明】
【０１２１】
１０  検出部
１１  ドライバ状態モニタ
１２  車外環境モニタ
１３  車両状態モニタ
２０  推定部
３０  第１記憶部
４０  判定部
５０  創発部
６０  変換部
１００  ＥＣＵ
【図１】
0005665400.tif 000008
【図２】
0005665400.tif 000009
【図３】
0005665400.tif 000010
【図４】
0005665400.tif 000011
【図５】
0005665400.tif 000012
【図６】
0005665400.tif 000013
【図７】
0005665400.tif 000014
【図８】
0005665400.tif 000015
【図９】
0005665400.tif 000016
【図１０】
0005665400.tif 000017
【図１１】
0005665400.tif 000018
【図１２】
0005665400.tif 000019
【図１３】
0005665400.tif 000020
【図１４】
0005665400.tif 000021
【図１５】
0005665400.tif 000022
【図１６】
0005665400.tif 000023
【図１７】
0005665400.tif 000024
【図１８】
0005665400.tif 000025
【図１９】
0005665400.tif 000026
【図２０】
0005665400.tif 000027
【図２１】
0005665400.tif 000028
【図２２】
0005665400.tif 000029
【図２３】
0005665400.tif 000030
【図２４】
0005665400.tif 000031
【図２５】
0005665400.tif 000032