(57)【要約】【課題】制御パラメータを精度良く最適化し、かつ、遺伝的アルゴリズムによる学習速度を向上させることが可能な車両制御における制御パラメータの自動調整装置を提供する。【解決手段】制御パラメータの自動調整装置１、５は、遺伝的アルゴリズムの手法を用いて制御パラメータＰ１〜Ｐｎの最適化を行って制御パラメータの最適値Ｐ１suit〜Ｐｎsuitを出力する処理部２、６を備え、処理部２、６は、制御パラメータＰ１〜Ｐｎを遺伝子として含む個体Ｉｋの適合度Ｑｋを算出する適合度算出手段２２、６２と、複数の個体Ｉｋからなる個体群の中から一部の個体Ｉｋを親個体Ｉａ、Ｉｂ、Ｉｃとして選択する親選択手段２４、６４と、選択された親個体Ｉａ、Ｉｂ、Ｉｃから遺伝的操作により子個体Ｉｋ＊を生成させる世代交代手段２５、６５とを有し、最良の適合度Ｑｋを有する個体Ｉｋに含まれる制御パラメータを最適値Ｐ１suit〜Ｐｎsuitとする。【選択図】図２
2008117059.tif 000002
【特許請求の範囲】
【請求項１】
車両制御における制御パラメータの自動調整装置であって、
遺伝的アルゴリズムの手法を用いて前記制御パラメータの最適化を行い、前記制御パラメータの最適値を出力する処理部を備え、
前記処理部は、
前記制御パラメータを遺伝子として含む個体の適合度を算出する適合度算出手段と、
複数の前記個体からなる個体群の中から一部の個体を親個体として選択する親選択手段と、
前記選択された親個体から遺伝的操作により子個体を生成させる世代交代手段と
を有し、
最良の適合度を有する個体に含まれる制御パラメータを前記最適値とすることを特徴とする制御パラメータの自動調整装置。
【請求項２】
前記世代交代手段は、ＭＧＧ（Minimal Generation Gap）の手法による遺伝的アルゴリズムの進化過程における学習後期において、学習初期に前記親個体から生成させる前記子個体の個体数よりも多くなるように前記生成させる子個体の個体数を増加させることを特徴とする請求項１に記載の制御パラメータの自動調整装置。
【請求項３】
前記処理部は、前記制御パラメータの最適化を多目的最適化手法により行い、
前記世代交代手段は、生成させる子個体を１個体とすることを特徴とする請求項１に記載の制御パラメータの自動調整装置。
【請求項４】
前記親選択手段は、遺伝的アルゴリズムの進化過程における前世代で生成した子個体がパレート最適解であった場合にはその子個体を次世代の親個体の１つとして選択することを特徴とする請求項３に記載の制御パラメータの自動調整装置。
【請求項５】
前記親選択手段は、遺伝的アルゴリズムの進化過程における前世代で生成した子個体がパレート最適解でなかった場合には前記個体群の中のパレート最適解である個体を次世代の親個体の１つとして選択することを特徴とする請求項３または請求項４に記載の制御パラメータの自動調整装置。
【請求項６】
前記適合度算出手段は、前記制御パラメータに関する制約条件についての適合度を含む適合度評価関数に基づいて前記個体の適合度を算出することを特徴とする請求項１から請求項５のいずれか一項に記載の制御パラメータの自動調整装置。
【請求項７】
前記処理部は、前記制御パラメータがマップ表現によるマップの各格子点として設定される場合には、前記制御パラメータを遺伝子とする代わりに、前記マップの各格子点を各座標とする多次元関数の各項の係数を遺伝子とすることを特徴とする請求項１から請求項６のいずれか一項に記載の制御パラメータの自動調整装置。
【請求項８】
前記処理部は、個体の遺伝子である前記各係数を有する前記多次元関数により前記マップの各格子点の値を再現した場合に前記値が適正な範囲内に収まらない格子点がある場合には、当該個体を破棄することを特徴とする請求項７に記載の制御パラメータの自動調整装置。
【請求項９】
前記処理部は、前記制御パラメータがマップ表現によるマップの各格子点として設定される場合に、前記マップの各格子点のうち予め設定された格子点の制御パラメータを遺伝子とする個体について処理を行い、他の格子点の制御パラメータについては補間により算出することを特徴とする請求項１から請求項６のいずれか一項に記載の制御パラメータの自動調整装置。
【請求項１０】
前記処理部は、前記格子点の各座標をも遺伝子とする個体について処理を行うことを特徴とする請求項７から請求項９のいずれか一項に記載の制御パラメータの自動調整装置。
【請求項１１】
前記処理部は、前記制御パラメータの値に大小関係の制約がある場合には、前記制御パラメータのうち値の大小の反転が許容されている制御パラメータ同士を同一のグループとし、グループ分けされた前記制御パラメータを遺伝子とする個体について処理を行うことを特徴とする請求項１から請求項１０のいずれか一項に記載の制御パラメータの自動調整装置。
【請求項１２】
前記処理部は、前記制御パラメータの値に大小関係の制約がある場合には、前記制御パラメータの最小値および最大値を決定するパラメータ、および最小値−最大値間において各値を振り分けるパラメータを遺伝子とする個体について処理を行うことを特徴とする請求項１から請求項１０のいずれか一項に記載の制御パラメータの自動調整装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御パラメータの自動調整装置に係り、特に、車両制御における制御パラメータを遺伝的アルゴリズムの手法を用いて最適化する制御パラメータの自動調整装置に関する。
【背景技術】
【０００２】
車両制御における最適制御の分野では、車両制御に係る制御パラメータの最適値を自動的に算出する手法として、近年、生物進化を模した遺伝的アルゴリズムを用いた学習手法が注目されている。最も基本的な遺伝的アルゴリズムでは、その進化過程において、初期化過程で車両制御に係る制御パラメータを遺伝子とする複数の個体を生成させた後、個体同士の交叉や各個体についての突然変異等の遺伝的操作を各世代ごとに繰り返し、最終的に最も適合度が良い個体或いは個体群に含まれる制御パラメータを制御パラメータの最適値として出力して制御パラメータの自動調整を行う。
【０００３】
一方、自動車業界では、近年、温室効果ガスに対する削減等の要請のため、ガソリンエンジンやディーゼルエンジン等と電気モータとを搭載したハイブリッド自動車の開発が進められ、また車両の高燃費化が求められるなどして、車両制御がより複雑化している。しかし、このように車両制御が複雑化してくると、従来のようなコンピュータ等を用いたいわゆるオフラインのシミュレーションのみでは制御パラメータの自動調整を行うことが困難になりつつあり、実際にエンジンや車両等の実機を用いて制御パラメータの自動調整を行うことが必要となる。
【０００４】
本出願人は、オンラインで制御パラメータの学習を行うために、エンジン実機またはエンジン実機とエンジンシミュレータとの組み合わせに対して制御パラメータを発生させてその動作を評価し、遺伝的アルゴリズムの手法を用いて制御パラメータを最適化させてエンジンの制御パラメータの最適値を高速かつ効率的に算出する制御パラメータの最適化システムを提案している（特許文献１参照）。
【特許文献１】特開２００４−１１６３５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、エンジンのみならず、発電やトルク分配、オートマチック制御におけるシフトスケジュールやロックアップ等の制御における制御パラメータをオンラインで総合的に自動調整しようとする場合、それらの制御の対象となる部品を例えば実験室内に持ち込んで試行や演算を繰り返すだけでは足りず、車両を実際にテストコース等で走行させて試行を行うことが必要となる。
【０００６】
従来の遺伝的アルゴリズムの手法を用いた自動調整では、学習速度が遅く、制御パラメータの最適値が出力されるまでに長時間を要する。しかし、前記のように実際に車両を走行させて行う自動調整では、このように長時間試行を行うことは事実上不可能である。そのため、制御パラメータを精度良く最適化しつつ遺伝的アルゴリズムによる学習速度を格段に向上させることが強く要請されている。
【０００７】
本発明は、前記事情に鑑みてなされたものであり、車両制御における制御パラメータの自動調整において、制御パラメータを精度良く最適化し、かつ、遺伝的アルゴリズムによる学習速度を向上させることが可能な制御パラメータの自動調整装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
前記の問題を解決するために、第１の発明は、
車両制御における制御パラメータの自動調整装置であって、
遺伝的アルゴリズムの手法を用いて前記制御パラメータの最適化を行い、前記制御パラメータの最適値を出力する処理部を備え、
前記処理部は、
前記制御パラメータを遺伝子として含む個体の適合度を算出する適合度算出手段と、
複数の前記個体からなる個体群の中から一部の個体を親個体として選択する親選択手段と、
前記選択された親個体から遺伝的操作により子個体を生成させる世代交代手段と
を有し、
最良の適合度を有する個体に含まれる制御パラメータを前記最適値とすることを特徴とする。
【０００９】
第２の発明は、第１の発明の制御パラメータの自動調整装置において、前記世代交代手段は、ＭＧＧ（Minimal Generation Gap）の手法による遺伝的アルゴリズムの進化過程における学習後期において、学習初期に前記親個体から生成させる前記子個体の個体数よりも多くなるように前記生成させる子個体の個体数を増加させることを特徴とする。
【００１０】
第３の発明は、第１の発明の制御パラメータの自動調整装置において、
前記処理部は、前記制御パラメータの最適化を多目的最適化手法により行い、
前記世代交代手段は、生成させる子個体を１個体とすることを特徴とする。
【００１１】
第４の発明は、第３の発明の制御パラメータの自動調整装置において、前記親選択手段は、遺伝的アルゴリズムの進化過程における前世代で生成した子個体がパレート最適解であった場合にはその子個体を次世代の親個体の１つとして選択することを特徴とする。
【００１２】
第５の発明は、第３または第４の発明の制御パラメータの自動調整装置において、前記親選択手段は、遺伝的アルゴリズムの進化過程における前世代で生成した子個体がパレート最適解でなかった場合には前記個体群の中のパレート最適解である個体を次世代の親個体の１つとして選択することを特徴とする。
【００１３】
第６の発明は、第１から第５の発明のいずれかの制御パラメータの自動調整装置において、前記適合度算出手段は、前記制御パラメータに関する制約条件についての適合度を含む適合度評価関数に基づいて前記個体の適合度を算出することを特徴とする。
【００１４】
第７の発明は、第１から第６の発明のいずれかの制御パラメータの自動調整装置において、前記処理部は、前記制御パラメータがマップ表現によるマップの各格子点として設定される場合には、前記制御パラメータを遺伝子とする代わりに、前記マップの各格子点を各座標とする多次元関数の各項の係数を遺伝子とすることを特徴とする。
【００１５】
第８の発明は、第７の発明の制御パラメータの自動調整装置において、前記処理部は、個体の遺伝子である前記各係数を有する前記多次元関数により前記マップの各格子点の値を再現した場合に前記値が適正な範囲内に収まらない格子点がある場合には、当該個体を破棄することを特徴とする。
【００１６】
第９の発明は、第１から第６の発明のいずれかの制御パラメータの自動調整装置において、前記処理部は、前記制御パラメータがマップ表現によるマップの各格子点として設定される場合に、前記マップの各格子点のうち予め設定された格子点の制御パラメータを遺伝子とする個体について処理を行い、他の格子点の制御パラメータについては補間により算出することを特徴とする。
【００１７】
第１０の発明は、第７から第９の発明のいずれかの制御パラメータの自動調整装置において、前記処理部は、前記格子点の各座標をも遺伝子とする個体について処理を行うことを特徴とする。
【００１８】
第１１の発明は、第１から第１０の発明のいずれかの制御パラメータの自動調整装置において、前記処理部は、前記制御パラメータの値に大小関係の制約がある場合には、前記制御パラメータのうち値の大小の反転が許容されている制御パラメータ同士を同一のグループとし、グループ分けされた前記制御パラメータを遺伝子とする個体について処理を行うことを特徴とする。
【００１９】
第１２の発明は、第１から第１０の発明のいずれかの制御パラメータの自動調整装置において、前記処理部は、前記制御パラメータの値に大小関係の制約がある場合には、前記制御パラメータの最小値および最大値を決定するパラメータ、および最小値−最大値間において各値を振り分けるパラメータを遺伝子とする個体について処理を行うことを特徴とする。
【発明の効果】
【００２０】
第１の発明によれば、各世代毎に個体群の中から一部の個体のみを選択し、選択された親個体から子個体を生成させるようにすることで、１世代あたりの学習速度が格段に向上することが可能となり、より高い適合度を有する個体の探索が可能となる。
【００２１】
そのため、車両制御における制御パラメータの自動調整に上記手法を用いることで、制御パラメータの最適値が求められるまでの時間が短縮され実用的な時間内で制御パラメータの調整を行うことが可能となり、車両を実際にテストコース等で走行させて試行を行うことが十分可能となる。また、それにより得られた制御パラメータの最適値は十分精度が高いものとなる。
【００２２】
第２の発明によれば、遺伝的アルゴリズムの手法としてＭＧＧの手法を用いて親個体の選択や子個体の生成、生存選択を行うことで、個体群から抽出される親個体の適合度と同じかより良い適合度を有する個体が個体群に戻されるから、個体群全体として確実に適合度が向上する方向に進化させることが可能となる。
【００２３】
その際、遺伝的アルゴリズムの進化過程における学習後期においては、学習初期に親個体から生成させる子個体の個体数よりも多くなるように生成させる子個体の個体数を増加させることで、学習初期においては抽出された親個体から生成させる子個体の数を少なくして１世代毎の学習速度を向上させることが可能となり、個体群の個体の適合度が全体的に急速に向上される。
【００２４】
また、学習後期において個体群の個体の適合度が全体的に向上した段階で、学習初期よりも抽出された親個体から生成させる子個体の数を増加させて多くすることで、今度はより的確に個体の適合度を向上させてより良い制御パラメータの最適値を算出することが可能となる。このようにして前記第１の発明の効果がより的確に発揮される。
【００２５】
第３の発明によれば、前記第１の発明の効果は、世代交代手段により生成された１個の子個体に対してのみ試行を行うように構成すれば１世代当たりの試行回数が格段に低減されるためさらに的確に発揮される。また、多目的最適化手法を用いて処理が行われることで、例えば燃費とバッテリ残存量というトレードオフの関係にあり１つの適合度評価関数では容易に表すことが難しい評価基準についてもパレート最適解という形で制御パラメータの最適値が容易かつ的確に算出される。
【００２６】
第４の発明によれば、前世代に世代交代手段で生成された子個体がパレート最適解であった場合にその子個体を次世代の親個体の１つとして選択することで、個体群中に属する個体の適合度の最良値をより高速にかつ確実に向上させることが可能となり、前記各発明の効果がより的確に発揮される。
【００２７】
第５の発明によれば、前世代に世代交代手段で生成された子個体がパレート最適解でなかった場合に個体群の中のパレート最適解である個体を次世代の親個体の１つとして選択することで、個体群中に属する個体の適合度の最良値をより高速にかつ確実に向上させることが可能となり、前記各発明の効果がより的確に発揮される。
【００２８】
第６の発明によれば、適合度の算出において、適合度の算出に用いられる適合度評価関数に制御パラメータに関する制約条件についての適合度を含ませることで、制約条件を満たす個体が良い適合度を獲得して生き残り易くさせることが可能となる。そのため、制約条件についての適合度を適切に設定することで、制約条件を満たす最適化された制御パラメータを的確に得ることが可能となり、前記各発明の効果がより的確に発揮される。
【００２９】
第７の発明によれば、制御パラメータの代わりに多次元関数の各項の係数を遺伝子とすることで、遺伝子の数を低減させることが可能となり、前記各発明の効果がより的確に発揮される。また、前記第６の発明のように、制御パラメータに関する制約条件についての適合度を含ませる場合に、制御パラメータに関する制約条件を多次元関数の形状や各項の係数に関する制約条件に還元することが可能であり、容易に制約条件を満たすか否かの判断を行うことが可能となる。
【００３０】
第８の発明によれば、不適切な個体を破棄することで、次世代に良好な遺伝子のみを残すようにすることが可能となり、前記発明の効果をより適切に発揮させることが可能となる。
【００３１】
第９の発明によれば、遺伝的操作を受ける遺伝子の数を減らすことができ、他の制御パラメータは自動的に補間により算出されるから、学習速度をより向上させることが可能となり、前記各発明の効果がより的確に発揮される。
【００３２】
第１０の発明によれば、格子点の各座標自体を遺伝子とすることで、等間隔の格子点では調整し切れない制御パラメータを、単純な多次元関数を用いたままより精密に調整することができるため、適合度評価関数が複雑化し特殊化することを防止することが可能となり、適合度評価関数の作成の手間が省ける。また、マップ中の重要な点で格子点の座標が精緻に変化しながら調整されるので、マップ中の重要な点を効果的に学習することが可能となり、前記各発明の効果がより的確に発揮される。
【００３３】
第１１および第１２の発明によれば、前記各発明の効果に加え、制御パラメータの値に大小関係の制約がある場合に、制御パラメータを適切にグループ分けしたり、制御パラメータに代わる変数やパラメータを適切に設定することで、前記制約が自動的に満たされた状態で制御パラメータを適切に振り分けて、データのソーティング等の処理を必要とすることなく、かつ、遺伝子の値自体に制限を加えることなく効率良く学習を行うことが可能となる。
【発明を実施するための最良の形態】
【００３４】
以下、本発明に係る制御パラメータの自動調整装置の実施の形態について、図面を参照して説明する。以下、制御パラメータの自動調整装置を単に自動調整装置という。
【００３５】
制御パラメータの自動調整においては、技量や疲労等により試行にばらつきが生じないように、例えば無人の状態或いは搭乗者がステアリングホイールの操作程度のみを行う状態でオートマチック式の変速機を備えた車両をテストコースで走行させて試行を行う。そのため、図１に示すように、アクセルペダルのスロットル弁の開度を電気的に制御する電子制御スロットル装置ＴＨからエンジン制御ユニットＥＣＵに制御信号を送る通信線に割り込み装置ＩＮを接続し、割り込み器ＩＮを介して自動調整装置１からアクセル開度に対応する制御信号を送信するようになっている。
【００３６】
また、ブレーキ制御については、自動調整装置１の指示に従って動作する電動式のアクチュエータＡＣをブレーキペダルＢＰの近傍に取り付け、それによりブレーキペダルＢＰを操作するようになっている。また、エンジン制御ユニットＥＣＵと自動調整装置１には、車速センサやトルクセンサ等のセンサ類Ｓから必要な情報がそれぞれ入力されるようになっている。
【００３７】
［第１の実施の形態］
第１の実施形態に係る自動調整装置１は、図示しないＣＰＵやＲＯＭ、ＲＡＭ等がバスに接続されたコンピュータにより構成されている。自動調整装置１は、図２に示すように、処理部２と、インターフェース３等を備えている。
【００３８】
なお、自動調整装置１には、図示しない入力手段が設けられており、制御パラメータの最適化処理に先立って、試行におけるアクセルおよびブレーキ操作についての情報や入力手段を介して最適化すべき制御パラメータの種類、処理部２で生成させる個体数、評価項目、適合度評価関数、終了条件、個体数の増加のさせ方等が入力されて設定されるようになっている。また、本実施形態では、各制御パラメータが取り得る上限値と下限値とは予め装置内に設定されている。
【００３９】
処理部２は、遺伝的アルゴリズムの手法を用いて車両制御における制御パラメータの最適化を行ってインターフェース３を介して制御パラメータの最適値を出力するようになっており、初期化手段２１と、適合度算出手段２２と、終了判定手段２３と、親選択手段２４と、世代交代手段２５とを備えている。
【００４０】
初期化手段２１は、図３に示すように、最適値算出の対象として設定された制御パラメータＰ１〜Ｐｎをそれぞれ遺伝子として含む例えば１００個に設定された所定個数の個体ＩｋをＲＡＭ上に生成させ、各個体Ｉｋの制御パラメータＰ１ｋ〜Ｐｎｋについてそれぞれその上限値と下限値との範囲内でランダムな値を発生させて各制御パラメータＰ１ｋ〜Ｐｎｋに割り当てるようになっている。個体Ｉｋは、図３に示したように、ｎ個の制御パラメータＰ１ｋ〜Ｐｎｋを含む数値列として表される。
【００４１】
適合度算出手段２２は、初期化手段２１で生成された個体Ｉｋについてそれぞれ適合度Ｑｋを算出するようになっている。具体的には、適合度算出手段２２は、初期化手段２１で生成された各個体の中から１つの個体Ｉｋを選択し、その個体Ｉｋに含まれる制御パラメータＰ１ｋ〜Ｐｎｋをエンジン制御ユニットＥＣＵに送信する。そして、設定されたアクセルおよびブレーキ操作についての情報に基づいて前記割り込み器Ｂを介してアクセル操作に関する制御信号をエンジン制御ユニットＥＣＵに送信し、またアクチュエータＣに信号を送信して動作させブレーキペダルＤを操作する。
【００４２】
そして、前記センサ類Ｅから送信されてくる測定結果やエンジン制御ユニットＥＣＵから出力される制御記録等のレスポンスＲｋを、設定された適合度評価関数に代入してその個体Ｉｋの適合度Ｑｋを算出するようになっている。本実施形態では、適合度Ｑｋが大きい値であるほど評価が高い。
【００４３】
本実施形態では、適合度評価関数F(k)は、例えば下記（１）式で示されるように、燃費やバッテリ残存量等の各評価項目ａ１〜ａｍについての各適合度q1(k)〜qm(k)が重みw1〜wmで重み付け加算された項に、制御パラメータに関する制約条件についての適合度Ｑres(k)がwresで重み付け加算された形となっている。
Ｑｋ＝F(k)＝w1・q1(k)＋…＋wm・qm(k)＋wres・Ｑres (k)    …（１）
【００４４】
制御パラメータに関する制約条件とは、例えば、制御パラメータＰ１〜Ｐｎを並べてそれをグラフ化した場合に、制御パラメータＰ１〜Ｐｎの値を結んだグラフが、
条件（Ａ−１）：極値をとらない、
条件（Ａ−２）：ある閾値以下である、
条件（Ａ−３）：単調増加である、
等の条件をいう。
【００４５】
そして、条件（Ａ−１）から条件（Ａ−３）にあてはまれば１、あてはまらなければ０をそれぞれ割り当てて予め各条件について設定された重みで重み付け加算して適合度Ｑres(k)を算出するようになっている。なお、条件および重みは予め入力手段から入力されて設定される。
【００４６】
例えば、前記条件（Ａ−１）から条件（Ａ−３）についてそれぞれ重みが１、３、２と設定された場合に、図４（Ａ）〜（Ｄ）に示すように個体Ｉ１〜Ｉ４の各制御パラメータＰ１ｋ〜Ｐｎｋを順番に並べた場合、個体Ｉ１は条件（Ａ−１）から条件（Ａ−３）のすべてを満たさないから、個体Ｉ１については、
Ｑres (I1)＝１・０＋３・０＋２・０＝０
と計算される。
【００４７】
また、個体Ｉ２は条件（Ａ−１）、条件（Ａ−３）は満たさないが条件（Ａ−２）は満たすから、
Ｑres (I2)＝１・０＋３・１＋２・０＝３
と計算され、同様に個体Ｉ３、Ｉ４については、それぞれ
Ｑres (I3)＝１・０＋３・０＋２・０＝０
Ｑres (I2)＝１・１＋３・１＋２・０＝４
と計算される。
【００４８】
適合度算出手段２２は、上記のような個体Ｉｋに含まれる制御パラメータＰ１〜Ｐｎのエンジン制御ユニットＥＣＵへの送信、試行、測定結果や制御記録等のレスポンスＲｋに基づく適合度Ｑｋの算出を、初期化手段２１で生成されたすべての個体Ｉｋについて行うようになっている。
【００４９】
終了判定手段２３は、適合度算出手段２２による適合度Ｑｋの算出が終了すると、設定された終了条件が満たされたか否かを判定するようになっている。そして、終了判定手段２３は、終了条件が満たされたと判定すると、その時点で最良の適合度Ｑｋを有する個体Ｉｋに含まれる制御パラメータＰ１ｋ〜Ｐｎｋを制御パラメータの最適値Ｐ１suit〜Ｐｎsuitとしてインターフェース３を介して出力するようになっている。
【００５０】
終了条件は、求められる制御パラメータの最適値の精度や処理時間等に応じて適宜設定される。例えば、
条件（Ｂ−１）：設定された適合度以上の適合度を有する個体が現れた、
条件（Ｂ−２）：全個体の適合度の平均値が設定された閾値を超えた、
条件（Ｂ−３）：世代数が設定された数に達した、
条件（Ｂ−４）：処理時間が設定された時間に達した、
等の条件が設定される。
【００５１】
親選択手段２４は、終了判定手段２３が設定された終了条件を満たしていないと判定した場合に、前記所定個数の個体Ｉｋからなる個体群の中から最も適合度Ｑｋが高い個体Ｉeliteを記憶手段２６に保存するようになっている。
【００５２】
また、親選択手段２４は、個体群の中から個体群中の個体Ｉｋの全体数より少ない一部の個体を親個体として選択するようになっている。本実施形態では、図５に示すようなＭＧＧと呼ばれる手法を用いて親個体の選択、子個体の生成、生存選択が行われて次世代の個体が生成されるようになっている。また、その際、後述する世代交代手段２５では単峰性正規分布交叉の手法を用いて子個体の生成が行われるようになっている。そのため、本実施形態では、親選択手段２４は、図５に示したように、個体群の中から単峰性正規分布交叉で用いられる３つの個体Ｉａ、Ｉｂ、Ｉｃを親個体としてランダムに選択して非復元抽出するようになっている。
【００５３】
世代交代手段２５は、親選択手段２４で選択された親個体から遺伝的操作により子個体を生成させるようになっている。本実施形態では、前述したように遺伝的操作として単峰性正規分布交叉が行われるようになっている。
【００５４】
単峰性正規分布交叉では、例えば最適値算出の対象として設定された制御パラメータがＰ１、Ｐ２の２つであるとして、図６に示すようにＰ１−Ｐ２平面上の２つの親個体Ｉａ、Ｉｂを配置した場合、親個体Ｉａ、Ｉｂを結ぶ線分の周辺に子個体Ｉａ＊、Ｉｂ＊が正規分布に従って正規乱数を用いて生成される。また、第３の親個体Ｉｃは、親個体Ｉａ、Ｉｂを結ぶ軸に直交する軸方向の標準偏差の成分を決めるために補助的に用いられる。
【００５５】
なお、単峰性正規分布交叉およびＭＧＧについては、例えば、北野宏明編、「遺伝的アルゴリズム４」、産業図書株式会社、p.232-235等を参照されたい。また、最適値算出の対象として設定される制御パラメータの個数は２つの場合に限定されない。
【００５６】
世代交代手段２５は、前記３つの親個体Ｉａ、Ｉｂ、Ｉｃに対してこの単峰性正規分布交叉を繰り返し適用して、図５に示したように、子個体Ｉｋ＊を所定個数生成させるようになっている。
【００５７】
本実施形態では、世代交代手段２５は、設定された個体数の増加のさせ方に従って、この遺伝的アルゴリズムの進化過程における学習後期では、学習初期に親個体Ｉａ、Ｉｂ、Ｉｃから生成させる子個体Ｉｋ＊の個体数よりも多くなるように生成させる子個体Ｉｋ＊の個体数を増加させるようになっている。
【００５８】
具体的には、個体数の増加のさせ方としては、例えば、
基準（Ｃ−１）：世代数が所定の世代数になった時点で増加させる、
基準（Ｃ−２）：所定の適合度以上の適合度Ｑｋを有する個体が現れた時点で増加させる、
基準（Ｃ−３）：所定の処理時間が経過した時点で増加させる、
基準（Ｃ−４）：世代数の増加に応じて順次増加させる、
等の基準が予め設定される。
【００５９】
また、例えば、学習初期では３つの親個体Ｉａ、Ｉｂ、Ｉｃから前記単峰性正規分布交叉により１０個の子個体Ｉｋ＊を生成するように設定し、前記基準に従って生成される子個体Ｉｋ＊の個体数を例えば１００個体に増加させるように構成する。
【００６０】
前述した適合度算出手段２２は、世代交代手段２５により生成された子個体Ｉｋ＊について前記と同様にして、それぞれ適合度Ｑｋを算出するようになっている。そして、図５に示したように、生成された所定個数の子個体Ｉｋ＊と前記３つの親個体Ｉａ、Ｉｂ、Ｉｃの中から、最良の適合度を有する個体Ｉbestを抽出し、さらにルーレット選択により２つの個体を抽出して、計３個の個体を生存選択して元の個体群に戻すようになっている。
【００６１】
すなわち、本実施形態では、このようにして形成された次世代の個体群は、当初、初期化手段２１で生成された個体Ｉｋが１００個であれば、１００個の個体Ｉｋの中から３個が抽出されて３個の個体が戻されるから個体数が１００個のまま変わらない。なお、適合度算出手段２２は、抽出されなかった９７個の個体Ｉｋについてはすでに適合度Ｑｋが算出されているから改めて適合度Ｑｋの算出は行わない。
【００６２】
終了判定手段２３は、このようにして形成された次世代の個体Ｉｋと記憶手段２６に隔離保存された前世代の最良の適合度を有する個体Ｉeliteとに対して設定された終了条件が満たされたか否かを判定する。
【００６３】
処理部２は、以上のようにして終了条件が満たされない限り上記の進化過程を繰り返すようになっている。そして、終了判定手段２３が設定された終了条件が満たされたと判定した時点で最良の適合度Ｑｋを有する個体Ｉｋに含まれる制御パラメータＰ１ｋ〜Ｐｎｋを制御パラメータの最適値Ｐ１suit〜Ｐｎsuitとしてインターフェース３を介して出力するようになっている。
【００６４】
次に、本実施形態に係る制御パラメータの自動調整装置１の作用について説明する。
【００６５】
自動調整装置１の処理部２では、前述したように、遺伝的アルゴリズムの進化過程の最初期、すなわち初期化手段２１により生成された所定個数の初期個体に対しては各個体Ｉｋに対してそれぞれ適合度Ｑｋを得るために個体数分の試行が行われるが、２世代目以降は世代交代手段２５により生成された子個体Ｉｋ＊に対してのみ試行が行われる。そのため、１世代当たりの試行回数が低減される。
【００６６】
また、本実施形態では、ＭＧＧの手法を用いて親個体の選択や子個体の生成、生存選択が行われる。このＭＧＧの手法では、多数の個体Ｉｋからなる個体群の中から３つの親個体Ｉａ、Ｉｂ、Ｉｃが抽出され、それらから子個体が複数生成され、その親個体と子個体の中から少なくとも１つの最良の適合度を有する個体Ｉbestが生存選択されて元の個体群に戻されるから、最初に抽出された親個体Ｉａ、Ｉｂ、Ｉｃの適合度Ｑａ、Ｑｂ、Ｑｃより小さくない、すなわち同じかより良い適合度Ｑbestを有する個体Ｉbestが必ず個体群に戻される。
【００６７】
しかも、他の個体Ｉｋは遺伝子すなわち制御パラメータＰ１〜Ｐｎが変化しないまま残される。そのため、１世代を経過するごとに個体群の中で適合度Ｑｋが維持され或いは向上される個体Ｉｋが現れると同時に、個体Ｉｋの多様性は維持される。
【００６８】
このように、ＭＧＧの手法を用いた場合、個体群の多様性が維持され個体Ｉｋが探索領域に広く分布した状態を維持した状態で、個体群に属する個体Ｉｋの最良の適合度Ｑｋが確実に向上される。
【００６９】
また、遺伝的アルゴリズムの進化過程における学習初期においては、個体群の中には適合度Ｑｋが高い個体Ｉｋと適合度Ｑｋが低い個体Ｉｋが混在しているから、学習初期においては、ＭＧＧの手法で個体群から選択されて抽出される親個体Ｉａ、Ｉｂ、Ｉｃの適合度Ｑａ、Ｑｂ、Ｑｃは必ずしも高いものとは限らない。
【００７０】
そこで、学習初期においては１世代あたりの学習速度を上げて個体群の個体Ｉｋの適合度Ｑｋを全体的に向上させた方がよい。本実施形態のように、学習初期において抽出された親個体Ｉａ、Ｉｂ、Ｉｃから生成させる子個体Ｉａ＊、Ｉｂ＊、…の数を少なくすれば、１世代毎の学習速度を向上させることが可能となる。
【００７１】
そして、学習後期において個体群が成熟し個体Ｉｋの適合度Ｑｋが全体的に向上した段階では、１世代あたりの学習速度の向上を図るよりも、より的確に個体Ｉｋの適合度Ｑｋを向上させてより良い制御パラメータの最適値が求められるべきである。そのため、学習後期においては、学習初期よりも抽出された親個体Ｉａ、Ｉｂ、Ｉｃから生成させる子個体Ｉａ＊、Ｉｂ＊、…の数を増加させて多くすることで、より的確に個体Ｉｋの適合度Ｑｋの向上を図ることが可能となり、良い制御パラメータの最適値が算出される可能性が高くなる。
【００７２】
以上のように、本実施形態に係る制御パラメータの自動調整装置１によれば、従来の遺伝的アルゴリズムの手法のように、進化過程の各世代毎に個体群中の全個体に対して試行を行い交叉や突然変異等を生じさせる代わりに、各世代毎に個体群の中から一部の個体のみを選択し、選択された親個体から子個体を生成させるようにすることで、１世代あたりの学習速度が格段に向上することが可能となり、より高い適合度を有する個体の探索が可能となる。
【００７３】
そのため、車両制御における制御パラメータの自動調整において上記手法を用いることで、制御パラメータの最適値が求められるまでの時間が短縮され実用的な時間内で制御パラメータの調整を行うことが可能となり、車両を実際にテストコース等で走行させて試行を行うことが十分可能となる。また、それにより得られた制御パラメータの最適値は十分精度が高いものとなる。
【００７４】
また、遺伝的アルゴリズムの手法としてＭＧＧの手法を用いて親個体の選択や子個体の生成、生存選択を行うことで、個体群から抽出される親個体の適合度と同じかより良い適合度を有する個体が個体群に戻されるから、個体群全体として確実に適合度が向上する方向に進化させることが可能となる。
【００７５】
その際、遺伝的アルゴリズムの進化過程における学習後期においては、学習初期に親個体から生成させる子個体の個体数よりも多くなるように生成させる子個体の個体数を増加させることで、学習初期においては抽出された親個体から生成させる子個体の数を少なくして１世代毎の学習速度を向上させることが可能となり、個体群の個体の適合度が全体的に急速に向上される。
【００７６】
また、学習後期において個体群の個体の適合度が全体的に向上した段階で、学習初期よりも抽出された親個体から生成させる子個体の数を増加させて多くすることで、今度はより的確に個体の適合度を向上させてより良い制御パラメータの最適値を算出することが可能となる。
【００７７】
一方、個体の適合度を計算するための適合度評価関数に制御パラメータに関する制約条件の適合度を含めることで、制約条件を満たさない個体の適合度を低いものとして淘汰することが可能となるとともに、遺伝子の設計段階でそのような制約条件を盛り込む必要がなくなり設計作業の負担を軽減することができる。また、個体における遺伝子表現が単純になり学習を効率的に行うことが可能となる。さらに、所望の制約条件を適切に適合度化し、例えば燃費の向上など所望の結果を伴う個体の適合度が高くなるように設定することで、所望の結果を得ることができる制御パラメータの最適値を獲得することが可能となる。
【００７８】
ここで、個体の遺伝子型の変形例について説明する。なお、以下に述べる変形例は、後述する第２の実施形態についても適用可能である。
【００７９】
［変形例１］
制御パラメータＰ１〜Ｐｎが例えば２つの変数ｘとｙの値の組み合わせとして与えられる場合がある。すなわち、図７に示すように、制御パラメータＰ１〜Ｐｎが変数ｘ、ｙのマップ表現によるマップの各格子点として設定される場合である。なお、以下の説明は変数が２つの場合に限定されない。
【００８０】
このような場合、本実施形態のように制御パラメータＰ１〜Ｐｎ自体を遺伝子とする代わりに、図８に示すように、マップの各格子点を各座標とする下記（２）式に示す多次元関数の各項の係数ａ〜ｊを各個体Ｉｋの遺伝子とすることが可能である。
ｚ＝ａｘ３＋ｂｘ２＋ｃｘ＋ｄｙ３＋ｅｙ２＋ｆｙ
＋ｇｘ２ｙ＋ｈｘｙ２＋ｉｘｙ＋ｊ    …（２）
【００８１】
適合度算出手段２２からエンジン制御ユニットＥＣＵに制御パラメータＰ１〜Ｐｎを送信して試行を行う際には、前記（２）式にｘ、ｙをそれぞれ代入し再変換して算出された各制御パラメータＰ１〜Ｐｎを送信する。
【００８２】
このように、制御パラメータＰ１〜Ｐｎ自体を遺伝子とする代わりに多次元関数の各項の係数ａ〜ｊを遺伝子とすることで、遺伝子の数を低減させることが可能となる。また、本実施形態の前記（１）式に示したように個体Ｉｋの適合度Ｑｋの計算において制御パラメータＰ１〜Ｐｎに関する制約条件についての適合度Ｑres(k)を加算する場合に、制御パラメータＰ１〜Ｐｎに関する制約条件を多次元関数の形状または各項の係数に関する制約条件に還元することが可能であり、容易に制約条件を満たすか否かの判断を行うことが可能となる。
【００８３】
そのため、前記遺伝的アルゴリズムの手法による学習速度をより向上させることが可能となり、制御パラメータの自動調整をより高速化させることが可能となる。
【００８４】
その際、図９の斜線部分のように、前記（２）式にｘ、ｙをそれぞれ代入して再現された制御パラメータＰ１〜Ｐｎの値が適正な範囲内に収まらない格子点がある場合には、そのような係数ａ〜ｊを遺伝子として有する個体を破棄して、再現された制御パラメータＰ１〜Ｐｎの値が適正な範囲内に収まるような係数ａ〜ｊを遺伝子として有する個体を新たに生成させるように構成することで、次世代に良好な遺伝子のみを残すようにすることが可能となる。
【００８５】
［変形例２］
前記変形例１と同様に、制御パラメータＰ１〜Ｐｎが変数ｘ、ｙのマップ表現によるマップの各格子点として設定される場合、マップの格子点のうち、予め設定された格子点の制御パラメータを遺伝子とする個体について処理を行い、他の格子点の制御パラメータについては補間により算出するように構成することが可能である。例えばスプライン補間により補間が行われる。
【００８６】
この場合、個体の遺伝子に含まれる制御パラメータとそれらの制御パラメータに基づいて補間により算出された他の制御パラメータとが適合度算出手段２２からエンジン制御ユニットＥＣＵに送られて試行が行われる。
【００８７】
このように構成すれば、本実施形態の場合よりも遺伝的アルゴリズムの手法による遺伝的操作を受ける遺伝子の数を減らすことができ、他の制御パラメータは自動的に補間により算出されるから、学習速度をより向上させることが可能となり、制御パラメータの自動調整をより高速化させることが可能となる。
【００８８】
［変形例３］
前記変形例１では、図８等のグラフの下面に格子状に示されるマップの格子点の各座標は等間隔であることを前提に説明した。しかし、この格子点の各座標自体をも遺伝子として学習の対象とすることが可能である。例えば、図１０（Ａ）に示すように学習初期には格子点（ｘ，ｙ）を等間隔に割り付けてその座標を遺伝子とした場合、進化過程が進むと図１０（Ｂ）に示すように座標自体が変化し、その位置変化した格子点の座標に基づき前記（２）式に従って制御パラメータＰ１〜Ｐｎが算出される。
【００８９】
このように格子点の各座標自体を遺伝子とすることで、等間隔の格子点に前記（２）式のような単純な多次元関数を適用しただけでは調整し切れない制御パラメータＰ１〜Ｐｎを、単純な多次元関数を用いたままより精密に調整することが可能となる。そのため、適合度評価関数が複雑化し特殊化することを防止することが可能となり、適合度評価関数の作成の手間が省けると同時に、マップ中の重要な点で格子点の座標が精緻に変化しながら調整されるので、マップ中の重要な点を効果的に学習することが可能となる。
【００９０】
［変形例４］
複数の制御パラメータＰ１〜Ｐｎ同士の大小関係として、制御パラメータ同士の間で値の大小の反転が許容されている関係とそのような反転が禁止されている関係が混在している場合がある。そのような場合、複数の制御パラメータＰ１〜Ｐｎのうち、値の大小の反転が許容されている制御パラメータ同士を同一のグループにまとめ、グループ間では値の反転を許さないような遺伝子構造として処理を行うことができる。
【００９１】
具体的には、例えば図１１に示すように、複数の制御パラメータのうち、互いに値の大小の反転が許容されている制御パラメータのグループが３つあり、グループＧａ、グループＧｂ、グループＧｃの順にその値が大きくなるように設定しなければならないとする。
【００９２】
この場合、個体の遺伝子構造としては、図１２に示すように、グループＧａに属する制御パラメータＰa_1〜Ｐa_sについてはそれらの値をそのまま遺伝子とする。そして、グループＧｂについては、制御パラメータＰb_1〜Ｐb_tの値を遺伝子とするのではなく、グループＧａの制御パラメータＰa_1〜Ｐa_s中の最大値を検索し、その最大値に対して制御パラメータＰb_1〜Ｐb_tを下記（３）式で与えるものとし、その変数B_1〜B_tを遺伝子とする。なお、βは設定された一定の定数である。
Ｐb_t＝（Ｐa_1〜Ｐa_s中の最大値）＋β・B_t    …（３）
【００９３】
グループＧｃについても同様に、制御パラメータＰc_1〜Ｐc_uの値を遺伝子とするのではなく、グループＧｂの制御パラメータＰb_1〜Ｐb_t中の最大値を検索し、その最大値に対して制御パラメータＰc_1〜Ｐc_uを下記（４）式で与えるものとし、その変数C_1〜C_uを遺伝子とする。なお、γは設定された一定の定数である。
Ｐc_u＝（Ｐb_1〜Ｐb_t中の最大値）＋γ・C_u    …（４）
【００９４】
その際、変数B_1〜B_t、C_1〜C_uを０または正の値、定数β、γを正の値に制限して処理を行うことで、値の大小の反転が許容されている制御パラメータ間では反転が許容された状態で学習が行われ、値の大小の反転が禁止されている制御パラメータ間では値の反転が生じないようにして学習を行うことが可能となる。
【００９５】
［変形例５］
また、制御パラメータＰ１〜Ｐｎの全体或いはグループについて、その最小値および最大値に制約があり、かつそれらの値の大小関係に制約がある場合がある。そのような場合には、制御パラメータの最小値および最大値を決定するパラメータ、および最小値−最大値間において各値を振り分けるパラメータを遺伝子として処理を行うことができる。
【００９６】
具体的には、例えば、制御パラメータＰａ〜Ｐｎについて、
制約（Ｄ−１）：Ｐａ＜Ｐｂ＜Ｐｃ＜…＜Ｐｍ＜Ｐｎ、
制約（Ｄ−１）：Ｐａ＜ｉ、ｊ＜Ｐｎ、
という制約があるとする。
【００９７】
この場合、個体の遺伝子構造としては、図１３に示すように、制御パラメータＰａ〜Ｐｎの代わりにいずれも正の値であるパラメータＡ〜Ｎを遺伝子とする。そして、制御パラメータの最小値Ｐａおよび最大値Ｐｎについては、下記（５）式および（６）式によって制御パラメータＰａ、ＰｎとパラメータＡ、Ｎとを対応させる。ここで、δは制約条件に応じて設定される一定の定数である。
Ｐａ＝ｉ−δ・Ａ    …（５）
Ｐｎ＝ｊ＋δ・Ｎ    …（６）
【００９８】
また、制御パラメータＰｂ、Ｐｃ、…、Ｐｍについては下記（７）式によってパラメータＢ、Ｃ、…、Ｍと対応させる。
Ｐx＝Ｐx-1＋Ｘ・（Ｐｎ−Ｐａ）／（Ａ＋…＋Ｎ）    …（７）
ここで、Ｐxは制御パラメータＰｂ、Ｐｃ、…、Ｐｍ、Ｐx-1はＰxより小さくＰxに最も近い値を有する制御パラメータＰａ、Ｐｂ、…、Ｐｌ、ＸはパラメータＢ、Ｃ、…、Ｍを表す。
【００９９】
このようにしてパラメータＡ〜Ｎと制御パラメータＰａ〜Ｐｎとを対応させ、パラメータＡ〜Ｎを遺伝子として処理を行うことで、前記制約が自動的に満たされた状態で制御パラメータＰａ〜Ｐｎが適切に振り分けられるから、データのソーティング等の処理を必要とせず、かつ、遺伝子の値自体に制限を加えることなく効率良く学習を行うことが可能となる。
【０１００】
［第２の実施の形態］
第２の実施形態に係る自動調整装置では、図１に示したものと同様の設定条件の下で、制御パラメータＰ１〜Ｐｎの最適化を行うために、多目的最適化手法の一種であるSPEA2（Strength Pareto Evolutionary Algorithm 2）の手法を用いる場合について説明する。SPEA2については、例えばE.Zitzler,M.Laumanns,L.Thiele:SPEA2:Improving the Performance of the Strength Pareto Evolutionary Algorithm,Technical Report 103,Computer Engineering and Communication Networks Lab(TIK),Swiss Federal Institute of Technology(ETH)Zurich(2001)等を参照されたい。
【０１０１】
本実施形態に係る自動調整装置５は、図１４に示すように、処理部６と、インターフェース７等を備えている。なお、自動調整装置５には、図示しない入力手段が設けられており、制御パラメータの最適化処理に先立って種々の設定を行うことができるようになっている。
【０１０２】
処理部６は、遺伝的アルゴリズムの手法を用いて車両制御における制御パラメータの最適化を行ってインターフェース７を介して制御パラメータの最適値を出力するようになっており、初期化手段６１と、適合度算出手段６２と、終了判定手段６３と、親選択手段６４と、世代交代手段６５とを備えている。
【０１０３】
初期化手段６１は、前記第１の実施形態の初期化手段２１と同様に、最適値算出の対象として設定された制御パラメータＰ１〜Ｐｎをそれぞれ遺伝子として含む例えば１００個に設定された所定個数の個体ＩｋをＲＡＭ上に生成させ、各個体Ｉｋの各制御パラメータＰ１ｋ〜Ｐｎｋについてそれぞれその上限値と下限値との範囲内でランダムな値を発生させて各制御パラメータＰ１ｋ〜Ｐｎｋに割り当てるようになっている。
【０１０４】
適合度算出手段６２は、初期化手段６１で生成された個体Ｉｋについてそれぞれ適合度Ｑｋを算出するようになっている。前記第１の実施形態では、各個体Ｉｋについて例えば前記（１）式により複数の評価基準を重み付け加算して適合度Ｑｋが算出された。それに対し、本実施形態で用いられるSPEA2では、まず、１つの個体Ｉｋに対して複数の評価基準についての評価値ｆ１ｋ、ｆ２ｋ、…がそれぞれ個別に割り当てられるようになっている。
【０１０５】
具体的には、適合度算出手段６２は、初期化手段６１で生成された各個体の中から１つの個体Ｉｋを選択し、その個体Ｉｋに含まれる制御パラメータＰ１ｋ〜Ｐｎｋをエンジン制御ユニットＥＣＵに送信して試行を行い、センサ類Ｅから送信されてくる測定結果やエンジン制御ユニットＥＣＵから出力される制御記録等のレスポンスＲｋに基づいて複数の評価基準についての評価値ｆ１ｋ、ｆ２ｋ、…をそれぞれ算出するようになっている。なお、本実施形態では、評価値ｆ１、ｆ２はともに数値が大きいほど優良な個体であることを示す。
【０１０６】
以下では、評価基準が燃費とバッテリ残存量であり、評価値ｆ１を燃費についての評価値、評価値ｆ２をバッテリ残存量についての評価値とする場合について述べる。また、各個体Ｉｋについて算出された各評価値ｆ１、ｆ２に基づいて、評価値ｆ１を横軸、評価値ｆ２を縦軸としたグラフに各個体Ｉｋをプロットすると、図１５のように表すことができる。
【０１０７】
適合度算出手段６２は、ある個体Ｉｋより評価値ｆ１および評価値ｆ２がともに劣る個体の数をその個体Ｉｋの支配数Ｄｋとして、各個体Ｉｋについてそれぞれ支配数Ｄｋを算出する。例えば、図１５の個体Ｉｋの場合、評価値ｆ１、ｆ２がともに劣る個体は４個であるから、この個体Ｉｋの支配数Ｄｋは４となる。なお、図１５では各個体を表すドットの下方にその個体の支配数が記載されている。
【０１０８】
適合度算出手段６２は、さらに、各個体Ｉｋに対してその個体Ｉｋよりも評価値ｆ１、ｆ２がともに優れている個体の支配数を足し合わせて、その個体Ｉｋの適合度Ｑｋを算出するようになっている。例えば、図１５の個体Ｉｋの場合、評価値ｆ１、ｆ２がともに優個体の支配数は９、６、１０であるから、この個体Ｉｋの適合度Ｑｋは２５と算出される。なお、図１６ではこのようにして算出された各個体の適合度が各個体を表すドットの上方に記載されている。
【０１０９】
なお、本実施形態では、適合度Ｑｋが小さい値であるほど評価が高い。また、このようにして算出された適合度Ｑｋが０となる個体Ｉｋをパレート最適解という。図１６では、パレート最適解である個体Ｉpは３個存在する。
【０１１０】
適合度算出手段６２は、各個体Ｉｋの適合度Ｑｋを算出すると、記憶手段６６にパレート最適解である個体Ｉpを復元抽出して保存させる、すなわち個体Ｉpをコピーしそのコピーを個体群に残すようにして保存させるようになっている。
【０１１１】
終了判定手段６３は、前記第１の実施形態の終了判定手段２３と同様に、適合度算出手段６２による適合度Ｑｋの算出が終了すると、設定された終了条件が満たされたか否かを判定し、終了条件が満たされたと判定すると記憶手段６６に記憶されているパレート最適解である個体Ｉpに含まれる制御パラメータＰ１ｐ〜Ｐｎｐをそれぞれ制御パラメータの最適値としてインターフェース７を介して出力するようになっている。
【０１１２】
なお、本実施形態では、このように制御パラメータの最適値が制御パラメータの複数の組として出力される場合を示すが、この他にも、例えば、それらのパレート最適解の中で、評価値ｆ１、ｆ２のうち特定の評価値が最良の個体Ｉｋに含まれる制御パラメータＰ１ｋ〜Ｐｎｋのみを制御パラメータの最適値として出力するように構成することも可能である。
【０１１３】
親選択手段６４は、個体群の中から個体群中の個体Ｉｋの全体数より少ない一部の個体を親個体として選択するようになっている。本実施形態においても前記第１の実施形態と同様に後述する世代交代手段６５で単峰性正規分布交叉の手法を用いて子個体の生成が行われるため、親選択手段６４は、個体群の中から単峰性正規分布交叉で用いられる３つの個体Ｉａ、Ｉｂ、Ｉｃをトーナメント方式やルーレット方式等の選択手法で選択し親個体として抽出するようになっている。
【０１１４】
また、本実施形態では、親選択手段６４は、前世代に世代交代手段６５で生成された子個体がパレート最適解であった場合には、その個体を現世代で親個体の１つとして選択するようになっている。さらに、親選択手段６４は、前世代に世代交代手段６５で生成された子個体がパレート最適解でなかった場合には、記憶手段６６に記憶されているパレート最適解である個体Ｉpの中から１つを選択し親個体の１つとするようになっている。従って、この場合、３つの親個体のうち前世代で生成されたパレート最適解である個体以外の２つの親個体がトーナメント方式等の選択手法で選択される。
【０１１５】
なお、世代交代手段６５では単峰性正規分布交叉以外の手法で子個体を生成させるように構成することも可能であり、その場合でも、親選択手段６４は、前世代に世代交代手段６５で生成された子個体がパレート最適解であった場合にはその個体を現世代で親個体の１つとして選択し、前世代に世代交代手段６５で生成された子個体がパレート最適解でなかった場合には、記憶手段６６に記憶されているパレート最適解である個体Ｉpの中から１つを選択し親個体の１つとする。
【０１１６】
世代交代手段６５は、親選択手段６４で選択された親個体Ｉａ、Ｉｂ、Ｉｃから遺伝的操作により子個体を生成させるようになっており、本実施形態では、第１の実施形態と同様に単峰性正規分布交叉により子個体が生成される。
【０１１７】
本実施形態では、世代交代手段６５は子個体Ｉｋ＊を１個体のみ生成するようになっている。そのため、本実施形態では、第１の実施形態のように個体群の中から３つの親個体Ｉａ、Ｉｂ、Ｉｃを非復元抽出するのではなく、それらのコピーを個体群に残すようにしている。
【０１１８】
前述した適合度算出手段６２は、世代交代手段６５により生成された子個体Ｉｋ＊について前記と同様にして適合度Ｑｋを算出するようになっている。また、新たに生成された子個体Ｉｋ＊により他の個体Ｉｋの支配数Ｄｋが変わる可能性があり適合度Ｑｋも変わり得るから、適合度算出手段６２は、他の個体Ｉｋについても適合度Ｑｋを改めて算出するようになっている。
【０１１９】
適合度算出手段６２は、各個体Ｉｋの適合度Ｑｋを算出すると、前述したように記憶手段６６にパレート最適解である個体Ｉpを保存させるようになっている。
【０１２０】
また、適合度算出手段６２は、２世代目以降は、環境選択を行うようになっている。環境選択では、下記の基準に従って残存させる個体Ｉｋを決定する。
基準（E−１）：個体群中に存在するパレート最適解の数が設定された個体群の所定個数（本実施形態の場合は１００個）に等しい場合は環境選択を終了する、
基準（Ｅ−２）：個体群中に存在するパレート最適解の数が設定された個体群の所定個数より少ない場合は個体群中の非パレート最適解から不足分だけランダムに選択して追加する、
基準（Ｅ−３）：個体群中に存在するパレート最適解の数が設定された個体群の所定個数より多い場合は端切り法により前記所定個数になるまで個体を削除する。
【０１２１】
なお、基準（Ｅ−３）が満たされる場合とは、本実施形態の場合、個体群中の１００個すべての個体Ｉｋがパレート最適解であり、しかも世代交代手段６５で生成された子個体Ｉｋ＊もパレート最適解であった場合である。
【０１２２】
また、端切り法とは、図１７に示すように、すべての個体Ｉｋの中で最も近接している２個体Ｉｖ、Ｉｗのうち、個体Ｉｖ、Ｉｗと個体Ｉｖ、Ｉｗ以外に近接している個体との距離ｒｖ、ｒｗが小さい方の個体、すなわち図１７では個体Ｉｗを削除する手法をいう。
【０１２３】
終了判定手段２３は、このようにして環境選択された次世代の個体Ｉｋについて設定された終了条件が満たされたか否かを判定する。
【０１２４】
処理部２は、以上のようにして終了条件が満たされない限り上記の進化過程を繰り返すようになっている。そして、終了判定手段２３が設定された終了条件が満たされたと判定した時点で記憶手段６６に記憶されているパレート最適解である個体Ｉpに含まれる制御パラメータＰ１ｐ〜Ｐｎｐの組或いはその中から特定されたパレート最適解の個体Ｉｋに含まれる制御パラメータＰ１ｋ〜Ｐｎｋを制御パラメータの最適値Ｐ１suit〜Ｐｎsuitとしてインターフェース７を介して出力するようになっている。
【０１２５】
次に、本実施形態に係る制御パラメータの自動調整装置５の作用について説明する。
【０１２６】
自動調整装置５の処理部６では、前述したように、遺伝的アルゴリズムの進化過程の最初期、すなわち初期化手段６１により生成された所定個数の初期個体に対しては各個体Ｉｋに対してそれぞれ適合度Ｑｋを得るために個体数分の試行が行われるが、２世代目以降は世代交代手段６５により生成された１個の子個体Ｉｋ＊に対してのみ試行が行われる。そのため、１世代当たりの試行回数が低減される。
【０１２７】
また、本実施形態では、多目的最適化手法の一種であるSPEA2の手法を用いて処理が行われる。多目的最適化手法を用いることで、例えば燃費とバッテリ残存量というトレードオフの関係にあり１つの適合度評価関数では容易に表すことが難しい評価基準についてもパレート最適解という形で制御パラメータの最適値が算出される。
【０１２８】
また、SPEA2の手法を用いることで効率良くパレート最適解を求めることが可能となる。さらに、通常のSPEA2の手法では、世代交代手段６５で生成された子個体がパレート最適解であってもその子個体が次世代で活用されるとは限らないが、本実施形態のように、前世代に世代交代手段６５で生成された子個体がパレート最適解であった場合にはその個体を現世代で親個体の１つとして選択し、前世代に世代交代手段６５で生成された子個体がパレート最適解でなかった場合にはパレート最適解である個体Ｉpの中から１つを選択し親個体の１つとすることで、個体群中に属する個体Ｉｋの適合度Ｑｋの最良値をより高速に向上させることが可能となる。
【０１２９】
その結果、図１８（Ａ）に示すように、例えば評価数すなわち試行を行って適合度を算出した回数に対するパレート最適解の数の増加を、通常のSPEA2（II）と本実施形態の手法（I）とで比較した場合、本実施形態の手法の方が少ない評価数でパレート最適解の数が最高値に達する。また、図１８（Ｂ）に示すように、例えば評価数あたりの目標燃費の伸びを通常のSPEA2（II）と本実施形態の手法（I）とで比較した場合、やはり本実施形態の手法の方がより少ない評価数で目標燃費の最適値に到達する。
【０１３０】
以上のように、本実施形態に係る制御パラメータの自動調整装置５によれば、前記第１の実施形態と同様に、従来の遺伝的アルゴリズムの手法のように、進化過程の各世代毎に個体群中の全個体に対して試行を行い交叉や突然変異等を生じさせる代わりに、各世代毎に個体群の中から一部の個体のみを選択し、選択された親個体から子個体を生成させるようにすることで、１世代あたりの学習速度が格段に向上することが可能となり、より高い適合度を有する個体の探索が可能となる。
【０１３１】
そのため、車両制御における制御パラメータの自動調整において上記手法を用いることで、制御パラメータの最適値が求められるまでの時間が短縮され実用的な時間内で制御パラメータの調整を行うことが可能となり、車両を実際にテストコース等で走行させて試行を行うことが十分可能となる。また、それにより得られた制御パラメータの最適値は十分精度が高いものとなる。
【０１３２】
特に、本実施形態では、遺伝的アルゴリズムの進化過程の２世代目以降は世代交代手段６５により生成された１個の子個体Ｉｋ＊に対してのみ試行が行われる。そのため、１世代当たりの試行回数が格段に低減される。
【０１３３】
また、本実施形態では、多目的最適化手法の一種であるSPEA2の手法を用いて処理が行われる。多目的最適化手法を用いることで、例えば燃費とバッテリ残存量というトレードオフの関係にあり１つの適合度評価関数では容易に表すことが難しい評価基準についてもパレート最適解という形で制御パラメータの最適値が容易かつ的確に算出される。
【０１３４】
また、本実施形態では、遺伝的アルゴリズムの手法としてSPEA2の手法を用いることで効率良くパレート最適解を求めることが可能となる。さらに、前世代に世代交代手段６５で生成されたパレート最適解である子個体或いは記憶手段６６に記憶されたパレート最適解である個体の１つを親個体の１つとすることで、個体群中に属する個体の適合度の最良値をより高速にかつ確実に向上させることが可能となる。
【図面の簡単な説明】
【０１３５】
【図１】本発明の制御パラメータの自動調整装置を含む設定条件を説明する図である。
【図２】第１の実施形態に係る制御パラメータの自動調整装置の構成を示すブロック図である。
【図３】個体の構造を説明する図である。
【図４】制御パラメータの各値を表すグラフである。
【図５】ＭＧＧの手法を説明する図である。
【図６】単峰性正規分布交叉を説明する図である。
【図７】制御パラメータをマップ表現で表したマップを説明する図である。
【図８】マップの格子点を各座標とする多次元関数を説明する図である。
【図９】適正な範囲内に収まらない多次元関数を説明する図である。
【図１０】（Ａ）等間隔に割り付けられた格子点、および（Ｂ）座標が変化した格子点を表す図である。
【図１１】制御パラメータのグループを説明する図である。
【図１２】変形例４における個体の構造を説明する図である。
【図１３】変形例５における個体の構造を説明する図である。
【図１４】第２の実施形態に係る制御パラメータの自動調整装置の構成を示すブロック図である。
【図１５】ｆ１−ｆ２平面にプロットされた各個体を表す図である。
【図１６】SPEA2における適合度の計算手法を説明する図である。
【図１７】端切り法を説明する図である。
【図１８】第２の実施形態におけるパレート最適解の数と評価数との関係（Ａ）および目標燃費と評価数との関係（Ｂ）を表すグラフである。
【符号の説明】
【０１３６】
１、５  制御パラメータの自動調整装置
２、６  処理部
２２、６２  適合度算出手段
２４、６４  親選択手段
２５、６５  世代交代手段
Ａ〜Ｎ  パラメータ
ａ〜ｊ  係数
F(k)  適合度評価関数
Ｇａ〜Ｇｃ  グループ
Ｉｋ  個体
Ｉａ、Ｉｂ、Ｉｃ  親個体
Ｉｋ＊  子個体
Ｉp  パレート最適解の個体
Ｐ１〜Ｐｎ  制御パラメータ
Ｐ１suit〜Ｐｎsuit  制御パラメータの最適値
Ｑｋ  適合度
Ｑres (k)  制御パラメータに関する制約条件についての適合度
【図１】
2008117059.tif 000003
【図２】
2008117059.tif 000004
【図３】
2008117059.tif 000005
【図４】
2008117059.tif 000006
【図５】
2008117059.tif 000007
【図６】
2008117059.tif 000008
【図７】
2008117059.tif 000009
【図８】
2008117059.tif 000010
【図９】
2008117059.tif 000011
【図１０】
2008117059.tif 000012
【図１１】
2008117059.tif 000013
【図１２】
2008117059.tif 000014
【図１３】
2008117059.tif 000015
【図１４】
2008117059.tif 000016
【図１５】
2008117059.tif 000017
【図１６】
2008117059.tif 000018
【図１７】
2008117059.tif 000019
【図１８】
2008117059.tif 000020