(57)【要約】【課題】制約条件を有する最適化対象の決定変数を短時間で精度良く最適化することが可能な多目的最適化装置、多目的最適化方法および多目的最適化プログラムを提供する。【解決手段】多目的進化型アルゴリズム部２により評価された決定変数の値、最適化対象６から出力された適応度および最適化対象６から出力された制約変数値が制約条件に違反するか否かを示す制約違反フラグは、探索履歴として対応付けられて探索履歴記憶部３に記憶される。評価すべき決定変数の値を判定する際には、探索履歴記憶部３に記憶された探索履歴から、未評価の決定変数の値により近い所定数の評価済みの決定変数の値が選択され、選択された所定数の決定変数の値に対応する制約違反フラグが制約条件の違反を示すか否かに基づいて未評価の決定変数の値を評価すべきか否かが判定される。【選択図】図１
2010152851.tif 000002
【特許請求の範囲】
【請求項１】
複数の目的関数を有する最適化対象の決定変数を制約条件の範囲で最適化する多目的最適化装置であって、
多目的最適化において評価すべき決定変数の値を判定し、評価すべきと判定された決定変数の値を前記最適化対象に与えるとともに、前記最適化対象から出力される目的関数の値を用いて多目的最適化を行い、前記最適化対象から出力される制約関数の値が前記制約条件を満たす範囲で決定変数のパレート近似解集合を求める多目的最適化部と、
前記多目的最適化部により評価された決定変数の値、前記最適化対象から出力された目的関数の値および前記最適化対象から出力された制約関数の値が前記制約条件に違反するか否かを示す制約違反情報を探索履歴として対応付けて記憶する記憶部とを備え、
前記多目的最適化部は、評価すべき決定変数の値を判定する際に、前記記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値を選択し、選択された前記所定数の決定変数の値に対応する制約違反情報が前記制約条件の違反を示すか否かに基づいて前記未評価の決定変数の値を評価すべきか否かを判定する、多目的最適化装置。
【請求項２】
前記所定数は１であり、前記多目的最適化部は、評価すべき決定変数の値を判定する際に、未評価の決定変数の値に最も近い１個の評価済みである決定変数の値を選択し、選択された１個の評価済みである決定変数の値に対応する制約違反情報が前記制約条件の違反を示さない場合に前記未評価の決定変数の値を評価すべきと判定し、前記選択された１個の評価済みである決定変数の値に対応する制約違反情報が前記制約条件の違反を示す場合に前記未評価の決定変数の値を評価すべきでないと判定する、請求項１記載の多目的最適化装置。
【請求項３】
前記所定数はｋ個であり（ｋは２以上の自然数）、前記多目的最適化部は、評価すべき決定変数の値を判定する際に、未評価の決定変数の値により近くかつｋ個の評価済みである決定変数の値を選択し、選択されたｋ個の評価済みである決定変数の値に対応する制約違反情報が前記制約条件の違反を示すか否かの多数決により前記未評価の決定変数の値を評価すべきか否かを判定する、請求項１記載の多目的最適化装置。
【請求項４】
前記多目的最適化部は、決定変数空間においてユークリッド距離に基づいて未評価の決定変数の値により近くかつ前記所定数の評価済みである決定変数の値を選択する、請求項１〜３のいずれかに記載の多目的最適化装置。
【請求項５】
前記多目的最適化部は、決定変数空間において、前記未評価の決定変数の値と制約違反情報が制約条件に違反しないことを示す評価済みの決定件数の値とのユークリッド距離および前記未評価の決定変数の値と制約違反情報が制約条件に違反することを示す評価済みの決定件数の値とのユークリッド距離にそれぞれ重み付けを行い、重み付けが行われたユークリッド距離に基づいて前記未評価の決定変数の値により近くかつ前記所定数の評価済みである決定変数の値を選択する、請求項１〜３のいずれかに記載の多目的最適化装置。
【請求項６】
前記多目的最適化部は、多目的進化型アルゴリズムにより未評価の決定変数の値を生成する、請求項１〜５のいずれかに記載の多目的最適化装置。
【請求項７】
複数の目的関数を有する最適化対象の決定変数を制約条件の範囲で最適化する多目的最適化方法であって、
多目的最適化において評価すべき決定変数の値を判定し、評価すべきと判定された決定変数の値を前記最適化対象に与えるとともに、前記最適化対象から出力される目的関数の値を用いて多目的最適化を行い、前記最適化対象から出力される制約関数の値が前記制約条件を満たす範囲で決定変数のパレート近似解集合を求めるステップと、
前記評価された決定変数の値、前記最適化対象から出力された目的関数の値および前記最適化対象から出力された制約関数の値が前記制約条件に違反するか否かを示す制約違反情報を探索履歴として対応付けて記憶部に記憶するステップとを備え、
前記パレート近似解集合を求めるステップは、評価すべき決定変数の値を判定する際に、前記記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の
評価済みである決定変数の値を選択し、選択された前記所定数の決定変数の値に対応する制約違反情報が前記制約条件の違反を示すか否かに基づいて前記未評価の決定変数の値を評価すべきか否かを判定するステップを含む、多目的最適化方法。
【請求項８】
複数の目的関数を有する最適化対象の決定変数を制約条件の範囲で最適化する多目的最適化方法をコンピュータに実行させる多目的最適化プログラムであって、
多目的最適化において評価すべき決定変数の値を判定し、評価すべきと判定された決定変数の値を前記最適化対象に与えるとともに、前記最適化対象から出力される目的関数の値を用いて多目的最適化を行い、前記最適化対象から出力される制約関数の値が前記制約条件を満たす範囲で決定変数のパレート近似解集合を求める処理と、
前記評価された決定変数の値、前記最適化対象から出力された目的関数の値および前記最適化対象から出力された制約関数の値が前記制約条件に違反するか否かを示す制約違反情報を探索履歴として対応付けて記憶部に記憶する処理とを備え、
前記パレート近似解集合を求める処理は、評価すべき決定変数の値を判定する際に、前記記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値を選択し、選択された前記所定数の決定変数の値に対応する制約違反情報が前記制約条件の違反を示すか否かに基づいて前記未評価の決定変数の値を評価すべきか否かを判定する処理を含む、多目的最適化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制約条件を有する最適化対象のパラメータ（決定変数）を最適化する多目的最適化装置、多目的最適化方法および多目的最適化プログラムに関する。
【背景技術】
【０００２】
従来、多目的最適化問題と呼ばれる問題クラスが存在する。例えば、ある製品のコストを最小化し、性能を最大化するという問題を考えた場合、これは２つの目的関数の多目的最適化問題となる。この場合、コストおよび性能が２つの目的関数となる。一般的には、コストを下げると性能が悪化し、性能を上げるとコストがかさむというトレードオフの関係が生じるために、多目的最適化問題の解は一つではない。
【０００３】
図３０は多目的最適化問題をエンジンの最適化に適用した例を示す図である。多目的最適化問題をエンジンの燃費およびトルクの最適化に適用する場合、燃費およびトルクが２つの目的関数ｆ１，ｆ２である。この場合、燃料噴射量、点火時期等のパラメータを調整することにより目的関数ｆ１，ｆ２の値を最適化する。
【０００４】
解Ａは、燃費が解Ｂに比べて優れているが、トルクが解Ｂに比べて劣っている。このように、エンジンの燃費とエンジンのトルクとはトレードオフの関係を有するため、複数の最適解が存在する。使用者は、複数の最適解から目的に合った解を選択することができる。例えば、スポーツ走行に適した自動二輪車に用いるエンジンには解Ａを選択し、ロングツーリングに適した自動二輪車に用いるエンジンには解Ｂを選択する。
【０００５】
一般に多目的最適化問題は、Ｎ個のパラメータについてＭ個の目的関数の値を、各パラメータの制約条件の範囲で最小化する問題と定義される。目的関数の値を最大化する場合は、目的関数に負の符号を付けて目的関数の値を最小化する問題に変換することとする。
【０００６】
このような多目的最適化問題は、一般的に単一の最適解を持たず、パレート最適解と呼ばれる概念で定義される最適解集合を持つ。ここで、パレート最適解とは、ある目的関数の値を改善するためには、少なくとも１つの他の目的関数の値を改悪せざるを得ない解のことをいい、以下のように定義される（例えば、非特許文献１参照）。
【０００７】
〔定義１〕あるｐ個の目的関数ｆｋ（ｋ＝１，・・・，ｐ）の２つの解ｘ１，ｘ２∈Ｆに関して、ｆｋ（ｘ１）≦ｆｋ（ｘ２）（∀ｋ＝１，・・・，ｐ）∧ｆｋ（ｘ１）＜ｆｋ（ｘ２）（∃ｋ＝１，・・・，ｐ）のとき、ｘ１はｘ２に優越するという。ここで、Ｆは解の集合である。
【０００８】
〔定義２〕ある解ｘ０が他のすべての解ｘ∈Ｆに優越するとき、ｘ０は最適解である。
【０００９】
〔定義３〕ある解ｘ０に優越する解ｘ∈Ｆが存在しないとき、ｘ０はパレート最適解（または非劣解）である。
【００１０】
パレート最適解集合を求めることは、目的関数のトレードオフに関して最適な解の集合を求めることになる。
【００１１】
図３１はパレート最適解について説明するための図である。図３１は２つの目的関数ｆ１，ｆ２の例を示す。解ａについての目的関数ｆ１の値ｆ１（ａ）は解ｂについての目的関数ｆ１の値ｆ１（ｂ）よりも小さく、解ａについての目的関数ｆ２  の値ｆ２（ａ）は解ｂについての目的関数ｆ２の値ｆ２（ｂ）よりも小さい。したがって、解ａは解ｂに優越する。
【００１２】
同様に、解ａは解ｃ，ｄに優越する。解ａに優越する解は存在しない。同様に、解ｅ，ｆに優越する解も存在しない。したがって、解ａ，ｅ，ｆはパレート最適解である。
【００１３】
なお、解ｇは、弱パレート最適解である。弱パレート最適解とは、ある目的関数についてのみパレート最適解に優越されないパレート解である。弱パレート最適解は、合理的な解ではなく、本来求める必要のない解である。
【００１４】
多目的最適化問題の解法は多数提案されている。最近注目されている方法に多目的進化型アルゴリズム（ＭＯＥＡｓ：Multiobjective Evolutionary Algorithm）がある。
【００１５】
この方法の最大の特徴は、進化型アルゴリズムの多点探索を利用してパレート最適解集合を一度に求めることである。得られたパレート最適解集合は、その中から目的に合致し
た解を探す意志決定、またはパレート最適解集合（パレート境界）の形状からの知見の獲得等に用いられる。
【００１６】
進化型アルゴリズムとして遺伝的アルゴリズム（ＧＡ：Genetic Algorithm）を多目的最適化問題に適用する研究が数多く行われている。遺伝的アルゴリズムは、生物の適応進化を模倣した計算手法である。遺伝的アルゴリズムでは、解の候補を個体と呼ぶ。また、目的関数を適応度関数と呼び、適応度関数の値を適応度と呼ぶ。
【００１７】
この遺伝的アルゴリズムは、自然進化に見られる過程（染色体の選択、交叉および突然変異）をヒントにして、Ｊ．Ｈｏｌｌａｎｄにより提案されたアルゴリズムである。設計変数を遺伝子とみなして、初期設計の個体集合をランダムに生成し、各個体の適応度を評価する。適応度の良い個体ほど親として選択される可能性が高くなるように親を選択する。そして、交叉（遺伝子の入れ換え）および突然変異（遺伝子のランダムな変化）により子孫を作る。さらに、評価、選択、交叉および突然変異により世代を繰り返し、最適解を探索する。
【００１８】
具体的には、ＦｏｎｓｅｃａらのＭＯＧＡ（Multiobjective Genetic Algorithm：例えば、非特許文献１参照）、ＤｅｂらのＮＳＧＡ−ＩＩ（Non-Dominated Sorting Genetic Algorithm-II：例えば、非特許文献２参照）、ＺｉｔｚｌｅｒらのＳＰＥＡ２（Strength
Pareto Evolutionary Algorithm ２： 例えば、非特許文献３参照）等が提案されている。特に、ＮＳＧＡ−ＩＩおよびＳＰＥＡ２は優秀な多目的進化型アルゴリズムとして知られている。
【特許文献１】特開２００８−０４５４７６号
【非特許文献１】C.M.fonseca，p.J.Flemimg:genetic algorithms for multiobjective optimization：formulation,discussion and generalization，of the 5th international conference on genetic algorithms，pp.416-423(1993)
【非特許文献２】K.Deb，S.Agrawal，A.Pratab，and T.Meyarivan:A Fast Elitist Non-Dominated Sorting Genetic Algorithm for Multi-Objective Optimization:NSGA-II，KanGAL report 20001，Indian Institute of Technology，Kanpur，India(20OO)
【非特許文献３】E.Zitzler,M.Laumanns,L.Thiele:SPEA2:Improving the Performance of the Strength Pareto Evolutionary A1gorithm,Technical Report 103,Computer Engineering and Communication Networks Lab(TIK),Swiss Federal Institute of Technology(ETH)Zurich(2001)
【非特許文献４】A.Zhou et al.: Prediction-based Population Re-initialization for Evolutionary Dynamic Multi-objective Optimization， Proc. of EMO2007
【非特許文献５】U. Bazarsuren, M. Knaak, S. Schaum, and C. Guhmann, “Determining Adjustment Ranges for Model-based Approaches Using Support Vector Machines,” Proc. of CCA 2006, pp. 2066-2071, 2006
【非特許文献６】H. Kaji, and H. Kita, “Acceleration of Experiment-Based Evolutionary Multi-objective Optimization of Internal-Combustion Engine Controllers using Fitness Estimation,” Proc. of CEC 2007, pp. 1777-1784, 2007
【発明の開示】
【発明が解決しようとする課題】
【００１９】
近年の自動車用エンジンには、排出ガスに含まれる有害成分を低減して環境問題に対応しつつ動力性能を向上するために、燃料噴射装置等の様々な電子制御装置が搭載され、高精度な制御が行われている。
【００２０】
エンジンは非線形性が強い制御対象であるため、電子制御装置によるエンジン制御としてはマップ制御と呼ばれるフィードフォワード制御が主流である。マップ制御では、例えば負荷トルクおよびエンジン回転速度のような運転条件ごとに設定された電子制御装置の制御パラメータが用いられる。マップ制御の制御パラメータは運転条件ごとに事前実験を行って決定される。この作業は適合（Calibration）と呼ばれる。
【００２１】
従来の適合は、エンジン試験機に接続されたエンジンを技術者が手動で調整することにより行われる。しかし、このような適合は、排出ガスの有害成分量（ＣＯ濃度、ＨＣ濃度
およびＮＯｘ濃度）、燃費および出力トルク等の多目的評価となり、これらは一般にトレードオフの関係にある。さらに、電子制御装置およびその制御パラメータの数は増加する傾向にある。そのため、手動による最適化は困難さを増してきている。
【００２２】
図３２はエンジンの適合を説明するための図である。
【００２３】
エンジンの適合では、負荷トルクおよびエンジン回転速度という運転条件（条件変数ｗ１，ｗ２）の値を選択する。そして、選択された運転条件でのＮＯｘ濃度および燃費（目的関数ｆ１，ｆ２の値）を最適にするような燃料噴射時期および点火時期（制御パラメータ（決定変数ｘ１，ｘ２））を探索する。
【００２４】
図３２においては、条件変数ｗ１，ｗ２の値を選択し、選択された条件変数ｗ１，ｗ２の値について目的関数ｆ１，ｆ２の多目的最適化を行い、決定変数ｘ１，ｘ２のパレート最適解を得る。その後、パレート最適解から好適な解を選択し、その解に対応する決定変数ｘ１の値と条件変数ｗ１，ｗ２の値との関係を示すマップＭ１、およびその解に対応する決定変数ｘ２の値と条件変数ｗ１，ｗ２との値の関係を示すマップＭ２を作成する。
【００２５】
マップＭ１，Ｍ２を完成させるためには、マップＭ１，Ｍ２の格子の数に相当する条件変数ｗ１，ｗ２の値について多目的最適化を繰り返す必要がある。
【００２６】
エンジンの適合とは、マップ制御に必要な運転条件（条件変数）ごとに、与えられた制限の範囲内（制約条件）で、複数の対立する評価規範（目的関数）を満たすような制御パラメータ値（決定変数の値）の組を探索する多目的最適化問題を解くことである。制約条件を満たす制御パラメータ値の組が存在する範囲を実行可能領域と呼び、それ以外の範囲を実行不能領域と呼ぶ。
【００２７】
従来、最適化対象の制御パラメータを最適化しようとする場合は、物理法則等に基づき最適化対象のモデル化を行い、最適化問題に帰着させて準ニュートン法等の勾配法または遺伝的アルゴリズムに代表されるメタヒューリスティクスを適用する。そして、得られた最適解を実際の最適化対象に適用するというアプローチがとられる。一方で、理論的なモデルの構築が困難な最適化対象の場合には、実験を通して最適化を行うことになる。
【００２８】
実験を通して最適化を実施すると、最適化対象の目的関数および制限したい項目（制約関数）の値は実際の最適化対象の出力である場合がある。このような最適化対象に対しては、応答曲面法と呼ばれるアプローチが広く適用されている。応答曲面法では、まず実験計画法に基づいて定められた制御パラメータ値の組に対する最適化対象の出力である目的関数値および制約関数値を求める。次に、多項式または人工ニューラルネットワーク等の統計的手法を用いて最適化対象の目的関数および制約関数の近似モデルを求める。そして、この近似モデルにおいて、計算機上で上記の勾配法またはメタヒューリスティクスにより制約関数が与える制約条件の範囲内、すなわち実行可能領域で目的関数値を最適とする制御パラメータ値の組を求める。
【００２９】
一方で、近年の計測制御環境の発展により、最適化手法を実際の最適化対象に直接適用するアプローチも現実的になってきている。以下、このアプローチを実験ベースの最適化と呼ぶ。実験ベースの最適化では、実験計画またはモデル選択が不要であり、近似モデルにおけるモデル化誤差を考える必要がないという特徴がある。
【００３０】
応答曲面法および実験ベースの最適化のいずれを用いる場合でも、上記のように、コンピュータは電子制御装置の制御パラメータ値を自由に変更できるが、実際に運転可能な組み合わせには一定の制約条件がある。ここで、制約条件とは、制御パラメータ値を電子制御装置に設定して運転を行った場合に、エンジンの始動不能、排出ガス濃度が高すぎることによる最適化対象および計測器の不調、または温度が高すぎることによるエンジンの破損等、不具合の発生を回避するための物理的な制約条件を指す。
【００３１】
制約条件が制御パラメータの関数として数式で表される場合には、制御パラメータ値を実機で評価する前に、その制御パラメータ値を数式に入力し、算出結果が制約条件に違反するか否かを調べることができる。
【００３２】
しかしながら、上記のように、制約条件には実験を通して観測されるものがある。この場合には、制御パラメータ値を電子制御装置に設定し、エンジンを運転して初めて制約条件に違反するか否かが判明する。 
【００３３】
応答曲面法では、計測する制御パラメータ値の組は実験計画法により定められる。この場合に用いられる直交計画、中央複合計画またはＤ最適計画と呼ばれる方法では、探索すべき制御パラメータ値の組により形成される空間（制御パラメータ空間または決定変数空間）の全領域で統計モデルの近似精度を高めるために、制御パラメータ空間に幅広く分布するように制御パラメータ値の組を決定する。したがって、制約条件に違反する制御パラメータ値の組が存在する可能性がある。
【００３４】
応答曲面法において制御パラメータ値の組の制約条件を設定する方法として、例えば非特許文献４および５に示される方法が提案されている。これらの方法は、概略以下のように行われる。
【００３５】
図３３は応答曲面法において制御パラメータ値の組の制約条件を設定する方法を説明するための概念図である。
【００３６】
図３３において、まず、予め安全とわかっている制御パラメータ値の組を初期パラメータ値ＩＰとし、その初期パラメータ値ＩＰと実験計画法で設定された制御パラメータ値ＬＡ１〜ＬＡ８の組との内分点を算出し、離散的または連続的に初期パラメータ値ＩＰから設定された制御パラメータ値ＬＡ１〜ＬＡ８へ向かって順に評価する。そして、ある制御パラメータ値の評価時に制約条件の違反が発生した場合（例えば排気温度が予め定められたしきい値を超えた場合）には、その制御パラメータ値から１段階前の制御パラメータ値に戻り、その制御パラメータ値を限界パラメータ値ＬＰ１〜ＬＰ８と判定する。
【００３７】
図３３では、制約条件の違反が発生しない制御パラメータ値を白丸印で示し、制約条件の違反が発生した制御パラメータ値を黒丸印で示す。
【００３８】
このようにして判定された全ての限界パラメータ値ＬＰ１〜ＬＰ８に対して凸包またはサポートベクトルマシンによる２クラス分類器を作成することにより点線で示す実行可能領域の近似モデルを作成する。このようにして得られた実行可能領域の近似モデルは境界モデルとも呼ばれる。
【００３９】
しかしながら、上記の方法では、非常に少ない点を用いて実行可能領域の境界を推定するために、複雑な形状の境界を表現することが難しい。図３３に示すように、真の実行可能領域と推定された実行可能領域とが大きく異なる場合も生じる。
【００４０】
そのため、境界モデルの外側に真のパレート最適解が存在した場合に、そのパレート最適解を発見することができない。また、境界モデルが真の実行不能領域を含む場合に、得られたパレート最適解集合の一部が実際の制約条件に違反している可能性がある。さらに、境界モデルの中央付近にパレート最適解集合が存在した場合に、境界モデルを求める手間が無駄になる。
【００４１】
一方、多目的進化型アルゴリズムを用いた実験ベースの最適化では、適応的に探索領域を変化させることができるため、上記のような問題は回避される。しかしながら、確率的に個体が生成されるために、特にパレート最適個体集合が実行可能領域の境界付近に存在する場合に、交叉オペレータまたは突然変異オペレータにより実行不能領域に個体が生成される可能性が高くなる。その結果、制約条件に違反した状態での個体の評価が増える可能性がある。
【００４２】
上記のように、制約条件に違反した状態で個体を評価すると、最適化対象または計測器の故障または破損を招く可能性がある。
【００４３】
本発明の目的は、制約条件を有する最適化対象の決定変数を短時間で精度良く最適化することが可能な多目的最適化装置、多目的最適化方法および多目的最適化プログラムを提供することである。
【課題を解決するための手段】
【００４４】
（１）第１の発明に係る多目的最適化装置は、複数の目的関数を有する最適化対象の決定変数を制約条件の範囲で最適化する多目的最適化装置であって、多目的最適化において評価すべき決定変数の値を判定し、評価すべきと判定された決定変数の値を最適化対象に与えるとともに、最適化対象から出力される目的関数の値を用いて多目的最適化を行い、最適化対象から出力される制約関数の値が制約条件を満たす範囲で決定変数のパレート近似解集合を求める多目的最適化部と、多目的最適化部により評価された決定変数の値、最
適化対象から出力された目的関数の値および最適化対象から出力された制約関数の値が制約条件に違反するか否かを示す制約違反情報を探索履歴として対応付けて記憶する記憶部とを備え、多目的最適化部は、評価すべき決定変数の値を判定する際に、記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値を選択し、選択された所定数の決定変数の値に対応する制約違反情報が制約条件の違反を示すか否かに基づいて未評価の決定変数の値を評価すべきか否かを判定するものである。
【００４５】
その多目的最適化装置においては、多目的最適化部により多目的最適化において評価すべき決定変数の値が判定される。評価すべきと判定された決定変数の値が最適化対象に与えられるとともに、最適化対象から出力される目的関数の値を用いて多目的最適化部により多目的最適化が行われ、最適化対象から出力される制約関数の値が制約条件を満たす範囲で決定変数のパレート近似解集合が求められる。
【００４６】
多目的最適化部により評価された決定変数の値、最適化対象から出力された目的関数の値および最適化対象から出力された制約関数の値が制約条件に違反するか否かを示す制約違反情報は、探索履歴として対応付けられて記憶部に記憶される。
【００４７】
評価すべき決定変数の値を判定する際には、記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値が選択され、選択された所定数の決定変数の値に対応する制約違反情報が制約条件の違反を示すか否かに基づいて未評価の決定変数の値を評価すべきか否かが判定される。
【００４８】
それにより、最適化対象に与えられた決定変数の値に対応する制約関数の値が制約条件に違反する可能性が低減される。したがって、制約条件の違反を回避しつつ精度良くパレート近似解集合を得ることができる。
【００４９】
（２）所定数は１であり、多目的最適化部は、評価すべき決定変数の値を判定する際に、未評価の決定変数の値に最も近い１個の評価済みである決定変数の値を選択し、選択された１個の評価済みである決定変数の値に対応する制約違反情報が制約条件の違反を示さない場合に未評価の決定変数の値を評価すべきと判定し、選択された１個の評価済みである決定変数の値に対応する制約違反情報が制約条件の違反を示す場合に未評価の決定変数の値を評価すべきでないと判定してもよい。
【００５０】
この場合、簡単な方法で最適化対象に与えられた決定変数の値に対応する制約関数の値が制約条件に違反する可能性およびパレート最適解の近傍で制約条件に違反しない決定変数の値が評価されない可能性を確実に低減することができる。
【００５１】
（３）所定数はｋ個であり（ｋは２以上の自然数）、多目的最適化部は、評価すべき決定変数の値を判定する際に、未評価の決定変数の値により近くかつｋ個の評価済みである決定変数の値を選択し、選択されたｋ個の評価済みである決定変数の値に対応する制約違反情報が制約条件の違反を示すか否かの多数決により未評価の決定変数の値を評価すべきか否かを判定してもよい。
【００５２】
この場合、簡単な方法で最適化対象に与えられた決定変数の値に対応する制約関数の値が制約条件に違反する可能性およびパレート最適解の近傍で制約条件に違反しない決定変数の値が評価されない可能性を確実に低減することができる。
【００５３】
（４）多目的最適化部は、決定変数空間においてユークリッド距離に基づいて未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値を選択してもよい。
【００５４】
この場合、簡単な方法で未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値を正確に選択することができる。
【００５５】
（５）  多目的最適化部は、決定変数空間において、未評価の決定変数の値と制約違反情報が制約条件に違反しないことを示す評価済みの決定件数の値とのユークリッド距離および未評価の決定変数の値と制約違反情報が制約条件に違反することを示す評価済みの決定件数の値とのユークリッド距離にそれぞれ重み付けを行い、重み付けが行われたユークリッド距離に基づいて未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値を選択してもよい。
【００５６】
この場合、重みを調整することにより評価すべきと決定変数の値の範囲を調整すること
が可能となる。それにより、パレート最適解の近傍で評価される決定変数の値の範囲を調整することができるとともに、求められるパレート近似解集合とパレート最適解集合との誤差を調整することができる。
【００５７】
（６）多目的最適化部は、多目的進化型アルゴリズムにより未評価の決定変数の値を生成してもよい。この場合、効率的にパレート近似解集合を求めることができる。
【００５８】
（７）第２の発明に係る多目的最適化方法は、複数の目的関数を有する最適化対象の決定変数を制約条件の範囲で最適化する多目的最適化方法であって、多目的最適化において評価すべき決定変数の値を判定し、評価すべきと判定された決定変数の値を最適化対象に与えるとともに、最適化対象から出力される目的関数の値を用いて多目的最適化を行い、最適化対象から出力される制約関数の値が制約条件を満たす範囲で決定変数のパレート近似解集合を求めるステップと、評価された決定変数の値、最適化対象から出力された目的関数の値および最適化対象から出力された制約関数の値が制約条件に違反するか否かを示す制約違反情報を探索履歴として対応付けて記憶部に記憶するステップとを備え、パレート近似解集合を求めるステップは、評価すべき決定変数の値を判定する際に、記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値を選択し、選択された所定数の決定変数の値に対応する制約違反情報が制約条件の違反を示すか否かに基づいて未評価の決定変数の値を評価すべきか否かを判定するステップを含むものである。
【００５９】
その多目的最適化方法においては、多目的最適化において評価すべき決定変数の値が判定される。評価すべきと判定された決定変数の値が最適化対象に与えられるとともに、最適化対象から出力される目的関数の値を用いて多目的最適化が行われ、最適化対象から出力される制約関数の値が制約条件を満たす範囲で決定変数のパレート近似解集合が求められる。
【００６０】
評価された決定変数の値、最適化対象から出力された目的関数の値および最適化対象から出力された制約関数の値が制約条件に違反するか否かを示す制約違反情報は、探索履歴として対応付けられて記憶部に記憶される。
【００６１】
評価すべき決定変数の値を判定する際には、記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値が選択され、選択された所定数の決定変数の値に対応する制約違反情報が制約条件の違反を示すか否かに基づいて未評価の決定変数の値を評価すべきか否かが判定される。
【００６２】
それにより、最適化対象に与えられた決定変数の値に対応する制約関数の値が制約条件に違反する可能性が低減される。したがって、制約条件の違反を回避しつつ精度良くパレート近似解集合を得ることができる。
【００６３】
（８）第３の発明に係る多目的最適化プログラムは、複数の目的関数を有する最適化対象の決定変数を制約条件の範囲で最適化する多目的最適化方法をコンピュータに実行させる多目的最適化プログラムであって、多目的最適化において評価すべき決定変数の値を判定し、評価すべきと判定された決定変数の値を最適化対象に与えるとともに、最適化対象から出力される目的関数の値を用いて多目的最適化を行い、最適化対象から出力される制約関数の値が制約条件を満たす範囲で決定変数のパレート近似解集合を求める処理と、評価された決定変数の値、最適化対象から出力された目的関数の値および最適化対象から出力された制約関数の値が制約条件に違反するか否かを示す制約違反情報を探索履歴として対応付けて記憶部に記憶する処理とを備え、パレート近似解集合を求める処理は、評価すべき決定変数の値を判定する際に、記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値を選択し、選択された所定数の決定変数の値に対応する制約違反情報が制約条件の違反を示すか否かに基づいて未評価の決定変数の値を評価すべきか否かを判定する処理を含むものである。
【００６４】
その多目的最適化方法によれば、多目的最適化において評価すべき決定変数の値が判定される。評価すべきと判定された決定変数の値が最適化対象に与えられるとともに、最適化対象から出力される目的関数の値を用いて多目的最適化が行われ、最適化対象から出力される制約関数の値が制約条件を満たす範囲で決定変数のパレート近似解集合が求められ
る。
【００６５】
評価された決定変数の値、最適化対象から出力された目的関数の値および最適化対象から出力された制約関数の値が制約条件に違反するか否かを示す制約違反情報は、探索履歴として対応付けられて記憶部に記憶される。
【００６６】
評価すべき決定変数の値を判定する際には、記憶部に記憶された探索履歴から、未評価の決定変数の値により近くかつ所定数の評価済みである決定変数の値が選択され、選択された所定数の決定変数の値に対応する制約違反情報が制約条件の違反を示すか否かに基づいて未評価の決定変数の値を評価すべきか否かが判定される。
【００６７】
それにより、最適化対象に与えられた決定変数の値に対応する制約関数の値が制約条件に違反する可能性が低減される。したがって、制約条件の違反を回避しつつ精度良くパレート近似解集合を得ることができる。
【発明の効果】
【００６８】
本発明によれば、最適化対象に与えられた決定変数の値に対応する制約関数の値が制約条件に違反する可能性が低減される。したがって、制約条件の違反を回避しつつ精度良くパレート近似解集合を得ることができる。
【発明を実施するための最良の形態】
【００６９】
以下、本発明の一実施の形態に係る多目的最適化装置について図面を参照しながら説明する。
【００７０】
（１）多目的最適化装置の機能的な構成
図１は本発明の一実施の形態に係る多目的最適化装置の機能的な構成を示すブロック図である。
【００７１】
本実施の形態では、多目的最適化装置１は、多目的進化型アルゴリズムを利用して多目的最適化問題のパレート近似個体集合を算出する。パレート近似個体集合とは、多目的進化型アルゴリズムにより求まる近似的なパレート最適個体集合であり、具体的には多目的進化型アルゴリズムによる多目的最適化の最終世代で得られる個体集合である。例えば、多目的進化型アルゴリズムとして多目的遺伝的アルゴリズム（ＧＡ）が用いられる。
【００７２】
この多目的最適化装置１は、最適化対象６に接続される。最適化対象６は、機器の性能を評価する評価システムである。評価システムは、実システムを評価する評価装置である。実システムは、例えばエンジンまたはモータであり、評価装置は、例えばエンジン評価装置またはモータ評価装置である。本実施の形態では、最適化対象６はエンジン試験機である。
【００７３】
多目的最適化装置１は、多目的進化型アルゴリズム部２および探索履歴記憶部３を含む。
【００７４】
多目的進化型アルゴリズム部２は、後述するＣＰＵ１０１（図２）が多目的最適化プログラムを実行することにより実現される。探索履歴記憶部３は、後述する外部記憶装置１０６（図２）により構成される。
【００７５】
この多目的最適化装置１には、複数の決定変数、１または複数の条件変数、複数の適応度関数（目的関数）、および１または複数の制約関数が設定される。
【００７６】
決定変数は、最適化対象６の調整可能な値（制御パラメータ）である。条件変数は、多目的最適化問題の条件を表す変数である。適応度関数および制約関数は、決定変数を入力とする関数である。特定の決定変数の値に対する適応度関数の出力を適応度（目的関数値）と呼び、特定の決定変数の値に対する制約関数の出力を制約関数値と呼ぶ。制約関数値が満たすべき条件を制約条件と呼ぶ。
【００７７】
決定変数としては、燃料噴射量、燃料噴射時期、点火時期、スロットル開度等が挙げられる。決定変数は、遺伝的アルゴリズムでは、遺伝子と呼ばれる。多目的遺伝的アルゴリズムの個体とは、多目的最適化問題の解の候補であり、複数の決定変数の値の組からなる。以下、多目的遺伝的アルゴリズムの個体を単に個体と呼ぶ。
【００７８】
適応度関数としては、例えば、燃費（燃料消費量）、トルク、エンジンの排出ガス中のＣＯ（一酸化炭素）濃度、ＨＣ（炭化水素）濃度、ＮＯｘ  （窒素酸化物）濃度、ＳＯＦ（可溶有機成分）量、すす（soot）量等が挙げられる。
【００７９】
ここで、トレードオフの関係としては、トルクと燃費、トルクとＣＯ濃度、トルクとＨＣ濃度、燃費とＮＯｘ  濃度、ＣＯ濃度とＮＯｘ  濃度、ＨＣ濃度とＮＯｘ  濃度、ＮＯｘ濃度とすす量等が挙げられる。
【００８０】
制約関数としては、例えば、トルク変動の量、異常噴射の有無、エンジンの排出ガス中のＣＯ濃度、ＨＣ濃度、ＮＯｘ濃度、ＳＯＦ量、およびすす量等が挙げられる。条件変数としては、例えば、負荷トルク、エンジン回転速度等が挙げられる。
【００８１】
多目的進化型アルゴリズム部２は、条件変数の各値について多目的進化型アルゴリズムにしたがって個体を発生して多点探索を行い、適応度をパレート最適性で評価することにより、制約関数値が制約条件を満足する範囲でパレート近似個体集合を求める。また、多目的進化型アルゴリズム部２は、求められたパレート近似個体集合を使用者に提示する。
【００８２】
具体的には、多目的進化型アルゴリズム部２は、個体（複数の決定変数の値の組）および条件変数の値を最適化対象６に与えるとともに、最適化対象６から出力される複数の適応度の組および制約関数値を受け、制約関数値が制約条件を満足する個体に対応する適応度の組のパレート最適性を評価する。また、多目的進化型アルゴリズム部２は、個体（複数の決定変数の値）、その個体に対応する適応度の組、およびその個体に対応する制約違反フラグを探索履歴記憶部３に与える。詳細は後述する。
【００８３】
探索履歴記憶部３は、多目的進化型アルゴリズム部２から与えられる個体（複数の決定変数の値の組）、その個体に対応する適応度の組、およびその個体に対応する制約違反フラグならびにパレート近似個体集合を記憶する。以下、探索履歴記憶部３に記憶される個体、その個体に対応する適応度の組、およびその個体に対応する制約違反フラグを探索履歴と呼ぶ。また、探索履歴記憶部３に記憶される個体を探索履歴個体と呼ぶ。
【００８４】
以下、多目的進化型アルゴリズム部２が最適化対象６に個体を与えるとともに最適化対象６から出力される適応度を受けることを個体の評価と呼ぶ。
【００８５】
（２）多目的最適化装置のハードウエア構成
図２は図１の多目的最適化装置１のハードウエア構成を示すブロック図である。
【００８６】
多目的最適化装置１は、ＣＰＵ（中央演算処理装置）１０１、ＲＯＭ（リードオンリメモリ）１０２、ＲＡＭ（ランダムアクセスメモリ）１０３、入力装置１０４、表示装置１０５、外部記憶装置１０６、記録媒体駆動装置１０７および入出力インタフェース１０８を含む。
【００８７】
入力装置１０４は、キーボード、マウス等からなり、各種指令および各種データを入力するために用いられる。ＲＯＭ１０２にはシステムプログラムが記憶される。記録媒体駆動装置１０７は、ＣＤ（コンパクトディスク）ドライブ、ＤＶＤ（デジタルバーサタイルディスク）ドライブ、フレキシブルディスクドライブ等からなり、ＣＤ、ＤＶＤ、フレキシブルディスク等の記録媒体１０９に対してデータの読み書きを行う。
【００８８】
記録媒体１０９には、多目的最適化プログラム（以下、多目的最適化プログラムと呼ぶ。）が記録されている。外部記憶装置１０６は、ハードディスク装置等からなり、記録媒体駆動装置１０７を介して記録媒体１０９から読み込まれた多目的最適化プログラムおよび各種データを記憶する。ＣＰＵ１０１は、外部記憶装置１０６に記憶された多目的最適化プログラムをＲＡＭ１０３上で実行する。
【００８９】
表示装置１０５は、液晶表示パネル、ＣＲＴ（陰極線管）等からなり、中途個体集合およびパレート最適個体集合等の各種画像を表示する。入出力インタフェース１０８には最適化対象６が無線通信または有線通信により接続される。入出力インタフェース１０８は、最適化対象６から出力される適応度の組を外部記憶装置１０６に転送するとともに、多目的最適化プログラムにより生成された個体（決定変数の値の組）を最適化対象６に与える。
【００９０】
なお、多目的最適化プログラムを記録する記録媒体１０９として、ＲＯＭ等の半導体メモリ、ハードディスク等の種々の記録媒体を用いることができる。また、多目的最適化プログラムを通信回線等の通信媒体を介して外部記憶装置１０６にダウンロードし、ＲＡＭ１０３上で実行してもよい。
【００９１】
ここで、記録媒体１０９は、コンピュータで読み取り可能な記録媒体であれば、電子的
読み取り方式、磁気的読み取り方式、光学的読み取り方式またはその他のあらゆる読み取り方式の記録媒体を含むものである。例えば、上記のＣＤ、ＤＶＤおよびフレキシブルディスクの他、ＣＤＶ（コンパクトディスクビデオ）等の光学的読取方式記録媒体、ＲＡＭ、ＲＯＭ等の半導体記録媒体、ハードディスク等の磁気記録型記録媒体、ＭＯ（光磁気ディスク）等の磁気記憶型／光学的読取方式記録媒体を用いることができる。
【００９２】
（３）最適化対象の構成
図３は最適化対象６の構成の一例を示すブロック図である。図３の最適化対象６はエンジン評価装置である。
【００９３】
最適化対象６は、エンジン６１、ＥＣＵ（エンジン制御ユニット）６２、計測装置６３、制御用コンピュータ６４および超低慣性ダイナモメータ６５を含む。ＥＣＵ６２、計測装置６３、制御用コンピュータ６４および超低慣性ダイナモメータ６５がエンジン試験機を構成する。このエンジン試験機によれば、エンジン６１単体を用いてエンジン６１を実車に搭載した場合と同等に評価することができる。
【００９４】
超低慣性ダイナモメータ６５は、エンジン６１のクランクシャフトに接続され、エンジン６１に与える負荷トルクを実時間で制御する。エンジン６１は、燃料噴射時期および点火時期を制御するための電子制御装置を有する。
【００９５】
ＥＣＵ６２は、多目的最適化装置１から制御パラメータとして決定変数の値を受信する。決定変数は、燃料噴射時期および点火時期等である。ＥＣＵ６２は、決定変数の値に基づいてエンジン６１の燃料噴射時期および点火時期等を制御する。
【００９６】
また、制御用コンピュータ６４は、多目的最適化装置１から運転条件として条件変数の値を受信する。条件変数は、負荷トルクおよびエンジン回転速度等である。制御用コンピュータ６４には、駆動系モデルおよび車両モデルが搭載される。制御用コンピュータ６４は、条件変数の値に基づいて超低慣性ダイナモメータ６５によりエンジン６１に与えられる負荷トルクを制御する。また、制御用コンピュータ６４は、エンジン６１の回転速度を制御する。
【００９７】
計測装置６３は、排出ガス分析装置、燃焼解析装置および燃料流量計を含み、エンジン６１からの排出ガス中の成分を分析し、適応度としてＮＯx濃度、ＳＯＦ量およびすす量等を多目的最適化装置１に出力する。
【００９８】
（４）制約条件
図４は制約条件について説明するための図である。図４の横軸は時間であり、縦軸は制約関数値である。
【００９９】
上記のように、個体が最適化対象６に入力されると、最適化対象６から適応度および制約関数値が出力される。図４の評価時間の終了時点で得られた適応度が最終的な適応度として採用される。
【０１００】
図４において、致命的制約条件は、制約関数値がその条件の下限値を超えると直ちに最適化対象６が破損またはそれに準ずる状態になる条件である。致命的制約条件の例は、エンジンが破損する限界の回転速度以上または限界の油温以上である。多目的最適化の際に制約関数値は致命的制約条件の下限値を超えることは許されないが、最適化対象６が破損しない限り、致命的制約条件を知ることはできない。したがって、致命的制約条件は概念的な条件である。
【０１０１】
危険制約条件は、制約関数値が短時間その条件の下限値を超えることは問題ないが、制約関数値が長時間その条件の下限値を超えている場合には最適化対象６に悪影響が生じる条件である。危険制約条件の例は、試験で運転可能として設定されているエンジン回転速度または油温の上限値以上でかつ致命的制約条件の下限値よりも低い範囲である。通常、制約関数値が危険制約条件の下限値を超えても直ちに最適化対象６が破損することはないが、制約関数値ができる限り危険制約条件の下限値を超えないように決定変数の値が設定される。
【０１０２】
安全制約条件は、制約関数値が長時間その条件の下限値を超えても最適化対象６が影響を受けない条件である。安全制約条件の例は、法律で定められた騒音の許容範囲または排出ガスの許容範囲である。
【０１０３】
本実施の形態に係る多目的最適化装置１では、制約関数値が危険制約条件の上限値を超えない範囲で決定変数の値を調整しつつ、制約関数値が安全制約条件を満たす範囲で決定変数の値を最適化する。
【０１０４】
以下の説明では、制約関数値が危険制約条件の下限値以下の場合を制約関数値が制約条件を満足しているといい、制約関数値が危険制約条件の下限値を超える場合を制約関数値が制約条件に違反しているという。また、制約関数値が危険制約条件の下限値以下となる個体を制約条件を満たす個体といい、制約関数値が危険制約条件の下限値を超える個体を制約条件に違反する個体という。
【０１０５】
（５）探索履歴個体
次に、探索履歴記憶部３に探索履歴として記憶される探索履歴個体について説明する。
【０１０６】
探索履歴Ｈは次式のように表わされる。
【０１０７】
Ｈ＝｛（ｈ１ ，Ｃ（ｈ１ ）），…，（ｈＬ ，Ｃ（ｈＬ ））｝
ここで、Ｌは自然数であり、ｈ１，…，ｈＬはＬ個の探索履歴個体である。また、Ｃ（ｈ１ ），…，Ｃ（ｈＬ ）はそれぞれ探索履歴個体ｈ１，…，ｈＬに対応するＬ個の制約違反フラグベクトルである。
【０１０８】
ここで、探索履歴個体ｈ１，…，ｈＬの各々をｈとすると、探索履歴個体ｈは次式で表わされる。
【０１０９】
ｈ＝［ｈ１ …ｈｎ ］Ｔ
上式のように、探索履歴個体ｈはｎ個の決定変数ｈ１，…，ｈｎの組からなるｎ次元の決定変数ベクトルである。ｎは自然数である。
【０１１０】
制約違反フラグベクトルＣ（ｈ１ ），…，Ｃ（ｈＬ ）の各々をＣ（ｈ ）とすると、制約違反フラグベクトルＣ（ｈ）は次式で表わされる。
【０１１１】
Ｃ（ｈ）＝［Ｃ１（ｈ），…，ＣＰ（ｈ）］Ｔ
上式において、Ｃ１（ｈ），…，ＣＰ（ｈ）は、ｐ個の制約関数値がそれぞれ制約条件に違反しているか否かを示すｐ個の制約違反フラグである。ｐは自然数である。
【０１１２】
ｉ＝１，．．．，ｐとすると、制約違反フラグＣｉ（ｈ）は次式で表わされる。
【０１１３】
Ｃｉ（ｈ）∈｛０，１｝
各制約違反フラグＣｉ（ｈ）は、探索履歴個体ｈに対応する制約関数値が危険制約条件を満たしている場合に“０”となり、探索履歴個体ｈに対応する制約関数値が危険制約条件に違反している場合に“１”となる。
【０１１４】
最適化対象６に個体が与えられた場合、最適化対象６から得られる制約関数値が危険制約条件に違反した時点で適応度の評価を中止することが望ましい。この場合、最終的な適応度が得られないため、個体に対応する適応度として最悪の値が与えられる。
【０１１５】
（６）多目的進化型アルゴリズム
図５は多目的進化型アルゴリズムを説明するための模式図である。また、図６は多目的進化型アルゴリズムを説明するためのフローチャートである。
【０１１６】
本実施の形態では、Ｄｅｂらにより提案されたＮＳＧＡ−ＩＩ（Non-Dominated Sorting Genetic Algorithm-II）を用いる（非特許文献２参照）。
【０１１７】
まず、多目的進化型アルゴリズム部２は、図５（ａ）に示すように、ｔ世代において、親個体集合Ｐから子個体集合Ｑを生成する（図６のステップＳ１１）。
【０１１８】
次に、多目的進化型アルゴリズム部２は、図５（ｂ）に示すように、親個体集合Ｐと子個体集合Ｑとの和集合Ｒに対して非優越ソートを行う（図６のステップＳ１２）。非優越ソートとは、非優越ランキングにより個体をランク付けし，ランクがより小さい個体を優秀な個体として次世代に残すように個体集合を並び替える（ソートする）方法である。非優越ランキングの詳細は後述する。図５（ｂ）の例では、和集合Ｒがランク１〜４に並び替えられている。
【０１１９】
次いで、多目的進化型アルゴリズム部２は、図５（ｃ），（ｄ）に示すように、和集合Ｒのランクごとに混雑度ソートを行う（図６のステップＳ１３）。混雑度ソートとは、同一ランク内での個体の優劣を評価するために個体分布の疎密を評価し、より疎の部分に存在する個体を優秀な個体として次世代に残すように個体集合を並び替える（ソートする）
方法である。混雑度ソートの詳細は後述する。
【０１２０】
次に、多目的進化型アルゴリズム部２は、上位ｐ（＝｜Ｐ｜）個の個体を次世代（ｔ＋１世代）の親個体集合Ｐとして残す（図６のステップＳ１４）。ここで、｜Ｐ｜は親個体集合の個数を表す。図５の例では、ランク４の個体が淘汰され、ランク３の個体のうち一部の下位の個体が淘汰されている。
【０１２１】
その後、多目的進化型アルゴリズム部２は、世代数が所定の終了条件に達したか否かを判別する（図６のステップＳ１５）。
【０１２２】
世代数が所定の終了条件に到達していない場合には、ステップＳ１１に移行する。世代数が所定の終了条件に到達した場合には、多目的進化型アルゴリズム部２は、ステッブＳ１５で生成された親個体集合Ｐをパレート近似個体集合として使用者に提示し、処理を終了する。
【０１２３】
（７）非優越ランキング
図７は非優越ランキングを説明するための模式図である。図７では、適応度空間の個体集合が示されている。図７の横軸は１つの適応度関数ｆ１であり、縦軸は他の１つの適応度関数ｆ２である。
【０１２４】
非優越ランキングでは、各個体のランク付けに基づいてパレート最適個体集合を求める。各個体のランク付けは次の手順により行う。
【０１２５】
まず、優越比較の定義に基づいてすべての個体について優越比較を行い、他の個体に優越されない個体（非優越個体）を選択し、その非優越個体をランク１とする。次に、個体集合からランク１の個体を取り除き、残った個体集合について同様の操作を行う。残った個体集合における非優越個体をランク２とする。すべての個体のランクが決定するまで上記の操作を繰り返す。
【０１２６】
ここでは、ランク１を最上位ランクとし、それ以上の数値のランクは数値が大きくなるほど下位のランクとなる。
【０１２７】
図７の例では、個体Ｉ１〜Ｉ４は他の個体に優越されていない。したがって、個体Ｉ１〜Ｉ４のランクは１である。
【０１２８】
個体Ｉ１〜Ｉ４を取り除いた状態で個体Ｉ５〜Ｉ８は他の個体に優越されていない。したがって、個体Ｉ５〜Ｉ８のランクは２である。
【０１２９】
個体Ｉ５〜Ｉ８を取り除いた状態で個体Ｉ９，Ｉ１０は他の個体に優越されていない。したがって、個体Ｉ９，Ｉ１０のランクは３である。残った個体Ｉ１１のランクは４である。
【０１３０】
（８）混雑度ソート
図８は混雑度ソートを説明するための図である。図８では、適応度空間の個体集合が示されている。
【０１３１】
混雑度ソートでは、同じランクの各注目個体について、それに隣接する２つの個体を結ぶ線を対角線とする長方形を想定し、長方形の縦および横の辺の長さの合計で混雑度（混雑距離）を表す。混雑度の値が小さいほど注目個体は混雑した領域に存在する。同じランクの両端の個体には最大の混雑度を与える。
【０１３２】
図８の例では、個体Ｉ２の混雑度は、隣接する個体Ｉ１，Ｉ３が作る長方形ｓ１の横の辺の長さｄ１および縦の辺の長さｄ２の合計で表される。個体Ｉ３の混雑度は、隣接する個体Ｉ２，Ｉ４が作る長方形ｓ２の横の辺の長さｄ３および縦の辺の長さｄ４の合計で表される。
【０１３３】
図９は多目的進化型アルゴリズム部２による混雑度ソートの処理を示すフローチャートである。
【０１３４】
まず、多目的進化型アルゴリズム部２は、個体集合を適応度関数ごとにソートし、適応度関数ごとに同一ランク内で各注目個体に隣接する２つの個体を調べる（ステップＳ２１）。
【０１３５】
次に、多目的進化型アルゴリズム部２は、各注目個体に隣接する２つの個体間の数学的距離を適応度関数ごとに算出し、各注目個体についての複数の適応度関数における数学的距離の合計を混雑度として算出する（ステップＳ２２）。ここで、数学的距離としてはユ
ークリッド距離を用いる。
【０１３６】
その後、多目的進化型アルゴリズム部２は、各ランクの個体集合の個体を混雑度の値の大きい順にソートする（ステップＳ２３）。
【０１３７】
このようにして、より上位のランクでより大きな混雑度を有する所定数の個体が選択され、他の個体が削除される。その結果、より優秀な個体が次世代に残される。
【０１３８】
（９）最近傍法による子個体の選別方法
図１０は本実施の形態に係る多目的進化型アルゴリズム部２による子個体の選別方法を説明するためのフローチャートである。本実施の形態では、生成された子個体を多目的最適化における子個体として採用するか否かを最近傍法を用いて判定する。
【０１３９】
まず、多目的進化型アルゴリズム部２は、探索履歴記憶部３に記憶された探索履歴個体から全ての制約条件に違反していない複数の探索履歴個体を親個体として選択する（ステップＳ３１）。
【０１４０】
次に、多目的進化型アルゴリズム部２は、複数の親個体の交叉または突然変異により子個体を生成する（ステップＳ３２）。
【０１４１】
さらに、多目的進化型アルゴリズム部２は、決定変数空間上で生成された子個体の最近傍の探索履歴個体を選択する（ステップＳ３３）。
【０１４２】
そして、多目的進化型アルゴリズム部２は、選択された探索履歴個体に対応する制約違反フラグの少なくとも１つが“１”であるか否かを判別する（ステップＳ３４）。
【０１４３】
選択された探索履歴個体に対応する制約違反フラグの少なくとも１つが“１”である場合には、多目的進化型アルゴリズム部２は、生成された子個体を棄却し（ステップＳ３５）、ステップＳ３２の処理に戻る。
【０１４４】
選択された探索履歴個体に対応する全ての制約違反フラグが“０”の場合には、多目的進化型アルゴリズム部２は、生成された子個体を採用する（ステップＳ３６）。
【０１４５】
その後、多目的進化型アルゴリズム部２は、交叉または突然変異の回数が上限に達したか否かを判別する（ステップＳ３７）。交叉または突然変異の回数が上限に達していない場合には、多目的進化型アルゴリズム部２は、ステップＳ３２の処理に戻り、交叉または突然変異の回数が上限に達するまでステップＳ３２〜Ｓ３７の処理を繰り返す。交叉または突然変異の回数が上限に達した場合には、多目的進化型アルゴリズム部２は、採用された子個体の数が子個体集合サイズに達したか否かを判別する（ステップＳ３８）。
【０１４６】
採用された子個体の数が子個体集合サイズに達していない場合には、多目的進化型アルゴリズム部２は、ステップＳ３１の処理に戻り、採用された子個体の数が子個体集合サイズに達するまでステップＳ３１〜Ｓ３８の処理を繰り返す。
【０１４７】
採用された子個体の数が子個体集合サイズに達した場合には、多目的進化型アルゴリズム部２は処理を終了する。
【０１４８】
このようにして、親個体から生成された子個体は、その最近傍の探索履歴個体に対応する制約違反フラグの少なくとも１つが“１”の場合に最適化における子個体として棄却され、その最近傍の探索履歴個体に対応する制約違反フラグの全てが“０”の場合に多目的最適化における子個体として採用される。
【０１４９】
（１０）最近傍法による子個体の選別方法の例
図１１〜図１５は最近傍法による子個体の選別方法の一例を示す概念図である。図１１〜図１５には、２つの決定変数ｘ１，ｘ２からなる２次元の決定変数空間上の個体が示される。
【０１５０】
図１１〜図１５の決定変数空間において、制約条件に違反しない子個体が生成される領域と制約条件に違反する子個体が生成される領域との実際の境界ＲＥが破線で示される。また、制約条件に違反しない探索履歴個体が白い丸印で示され、制約条件に違反する探索履歴個体が黒い丸印で示される。
【０１５１】
さらに、親個体から生成された子個体のうち多目的最適化における子個体として採用される子個体が斜線パターンを有する丸印で示され、多目的最適化における子個体として棄却される子個体がクロスパターンを有する丸印で示される。
【０１５２】
上記の最近傍法において制約条件に違反しない探索履歴個体が生成可能な領域と制約条
件に違反する探索履歴個体が生成され得る領域との境界はボロノイ境界と呼ばれる境界となる。制約条件に違反しない探索履歴個体が生成可能な領域をボロノイ領域と呼ぶ。図１１〜図１５においては、ボロノイ境界の右側の領域がボロノイ領域となる。
【０１５３】
まず、図１１に示すように、決定変数空間上の２つの探索履歴個体ｈ１，ｈ２が用いられる。２つの探索履歴個体ｈ１，ｈ２を結ぶ線分の垂直二等分線がボロノイ境界ＶＥ１として求められる。
【０１５４】
図１２に示すように、３つの子個体Ｉ３，Ｉ４，Ｉ５が生成される。子個体Ｉ３，Ｉ４の最近傍の個体は制約条件に違反しない探索履歴個体ｈ１である。したがって、子個体Ｉ３，Ｉ４は多目的最適化において採用される。子個体Ｉ５の最近傍の個体は制約条件に違反する探索履歴個体ｈ２である。したがって、子個体Ｉ５は多目的最適化において棄却される。
【０１５５】
子個体Ｉ３，Ｉ４は多目的最適化において評価され、制約関数値が制約条件に違反しているか否かが判定される。
【０１５６】
図１３に示すように、評価された子個体Ｉ３，Ｉ４は探索履歴個体ｈ３，ｈ４として探索履歴記憶部３に記憶される。探索履歴個体ｈ３，ｈ４は制約条件に違反していない。さらに３つの子個体Ｉ６，Ｉ７，Ｉ８が生成される。子個体Ｉ６，Ｉ７の最近傍の個体は制約条件に違反しない探索履歴個体ｈ３である。したがって、子個体Ｉ６，Ｉ７は多目的最適化において採用される。子個体Ｉ８の最近傍の個体は制約条件に違反する探索履歴個体ｈ２である。したがって、子個体Ｉ８は多目的最適化において棄却される。
【０１５７】
子個体Ｉ６，Ｉ７は多目的最適化において評価され、制約関数値が制約条件に違反しているか否かが判定される。
【０１５８】
この場合、２つの探索履歴個体ｈ２，ｈ３を結ぶ線分の垂直二等分線および２つの探索履歴個体ｈ２，ｈ４を結ぶ線分の垂直二等分線がボロノイ境界ＶＥ２として求められる。
【０１５９】
図１４に示すように、評価された子個体Ｉ６，Ｉ７は探索履歴個体ｈ６，ｈ７として探索履歴記憶部３に記憶される。探索履歴個体ｈ６は制約条件に違反しており、探索履歴個体ｈ７は制約条件に違反してない。さらに３つの子個体Ｉ９，Ｉ１０，Ｉ１１が生成される。子個体Ｉ９の最近傍の個体は制約条件に違反しない探索履歴個体ｈ３である。したがって、子個体Ｉ９は多目的最適化において採用される。子個体Ｉ１０の最近傍の個体は制約条件に違反する探索履歴個体ｈ６である。したがって、子個体Ｉ９は多目的最適化において棄却される。子個体Ｉ１１の最近傍の個体は制約条件に違反しない探索履歴個体ｈ４である。したがって、子個体Ｉ１１は多目的最適化において採用される。
【０１６０】
子個体Ｉ９，Ｉ１１は最適化において評価され、制約関数値が制約条件に違反しているか否かが判定される。
【０１６１】
この場合、２つの探索履歴個体ｈ３，ｈ６を結ぶ線分の垂直二等分線、２つの探索履歴個体ｈ６，ｈ７を結ぶ線分の垂直二等分線、２つの探索履歴個体ｈ２，ｈ７を結ぶ線分の垂直二等分線、および２つの探索履歴個体ｈ２，ｈ４を結ぶ線分の垂直二等分線がボロノイ境界ＶＥ３として求められる。
【０１６２】
図１５に示すように、評価された子個体Ｉ９，Ｉ１１は探索履歴個体ｈ９，ｈ１１として探索履歴記憶部３に記憶される。探索履歴個体ｈ９は制約条件に違反しておらず、探索履歴個体ｈ１１は制約条件に違反している。
【０１６３】
この場合、２つの探索履歴個体ｈ６，ｈ９を結ぶ線分の垂直二等分線、２つの探索履歴個体ｈ３，ｈ６を結ぶ線分の垂直二等分線、２つの探索履歴個体ｈ６，ｈ７を結ぶ線分の垂直二等分線、２つの探索履歴個体ｈ２，ｈ７を結ぶ線分の垂直二等分線、２つの探索履歴個体ｈ７，ｈ１１を結ぶ線分の垂直二等分線、および２つの探索履歴個体ｈ４，ｈ１１を結ぶ線分の垂直二等分線がボロノイ境界ＶＥ４として求められる。
【０１６４】
以上のように、新たな探索履歴個体の生成に伴ってボロノイ境界が変化する。
【０１６５】
以下、制約条件に違反しない子個体を生成可能な領域を実行可能領域と呼び、制約条件に違反する子個体が生成され得る領域を実行不能領域と呼ぶ。また、制約条件に違反しない探索履歴個体を実行可能個体と呼び、制約条件に違反する探索履歴個体を実行不能個体と呼ぶ。
【０１６６】
上記のようにして、多目的最適化および実行可能領域の特定を同時に行うことができる。
【０１６７】
ここで、生成された子個体を次式で表わす。
【０１６８】
ｘ＝［ｘ１，…，ｘｎ ］Ｔ
子個体ｘはｎ個の決定変数ｘ１，…，ｘｎからなる。ｎは自然数である。
【０１６９】
ボロノイ領域は次式で表わされる。
【０１７０】
【数１】
2010152851.tif 000003
【０１７１】
上式において、ｄＥはユークリッド距離であり、次式で表わされる。
【０１７２】
ｄＥ（ｘ，ｈｉ）＝√｛（ｘ−ｈｉ）Ｔ （ｘ−ｈｉ）｝
ここで、ｉ＝１，…，Ｌである。上記のように、探索履歴個体の増加に伴って複雑な形状のボロノイ境界を求めることが可能となる。
【０１７３】
（１１）重みパラメータを用いた最近傍法
実行可能領域を調整するために重みパラメータを導入してもよい。この場合、ユークリッド距離ｄＥの代わりに次式により求められる重み付き距離ｄＭを用いる。
【０１７４】
ｄＭ （ｘ，ｈｉ ）＝（１／Ｗｉ ）√｛（ｘ−ｈｉ ）Ｔ （ｘ−ｈｉ ）｝
上式において、Ｗｉは重みパラメータであり、次式で表わされる。
【０１７５】
Ｗｉ ∈｛ＷＦ ，ＷＩ｝
ここで、ｉ＝１，…，Ｌである。ＷＦは実行可能個体についての重みパラメータであり、ＷＩは実行不能個体についての重みパラメータである。
【０１７６】
図１６は重みパラメータを導入した場合のボロノイ境界を示す概念図である。図１６においては、２つの決定変数ｘ１，ｘ２からなる２次元決定変数空間上の個体が示される。
【０１７７】
図１６（ａ）は実行可能個体の重みパラメータＷＦが実行不能個体の重みパラメータＷＩよりも大きい場合のボロノイ境界を示し、図１６（ｂ）は実行可能個体の重みパラメータＷＦが実行不能個体の重みパラメータＷＩよりも小さい場合のボロノイ境界を示す。
【０１７８】
図１６（ａ），（ｂ）に示すように、重みパラメータＷＦおよび重みパラメータＷＩの一方が他方よりも大きい場合、ボロノイ境界は直線ではなく、アポロニウスの円と呼ばれる円の一部となる。
【０１７９】
図１６（ａ）に示すように、重みパラメータＷＦが重みパラメータＷＩよりも大きい場合、実行可能領域は実行不能領域に比べて相対的に広くなる。重みパラメータＷＦが重みパラメータＷＩよりも大きい場合の最近傍法を積極的手法と呼ぶ。
【０１８０】
逆に、図１６（ｂ）に示すように、重みパラメータＷＦが重みパラメータＷＩよりも小さい場合、実行可能領域は実行不能領域に比べて相対的に狭くなる。重みパラメータＷＦが重みパラメータＷＩよりも小さい場合の最近傍法を消極的手法と呼ぶ。
【０１８１】
（１２）ｋ−ＮＮ法による子個体の選別方法
上記の最近傍法による子個体の選別方法の代わりに、ｋ−ＮＮ法（ｋ-nearest-Neighbor Method）による子個体の選別方法を用いてもよい。ｋ−ＮＮ法による子個体の選別方法では、生成された各子個体の近傍の複数の探索履歴個体を調べ、実行可能個体と実行不能個体との多数決で各個体の採用および棄却を決定する。
【０１８２】
図１７はｋ−ＮＮ法による子個体の選別方法の一例を示す概念図である。図１７には、２つの決定変数ｘ１，ｘ２からなる２次元決定変数平面上の個体が示される。
【０１８３】
図１７の決定変数空間上に制約条件に違反しない探索履歴個体ｈ１１，ｈ１２，ｈ１３および制約条件に違反する探索履歴個体ｈ１４，ｈ１５，ｈ１６が存在する。この状態で、３つの子個体Ｉ１７，Ｉ１８，Ｉ１９が生成される。
【０１８４】
子個体Ｉ１７の近傍にある３つの探索履歴個体ｈ１１，ｈ１３，ｈ１４のうち探索履歴個体ｈ１１，ｈ１３は実行可能個体であり、探索履歴個体ｈ１４は実行不能個体である。したがって、子個体Ｉ１７は多目的最適化における子個体として採用され、探索履歴個体ｈ１７となる。
【０１８５】
子個体Ｉ１８の近傍にある３つの探索履歴個体ｈ１３，ｈ１４，ｈ１５のうち探索履歴個体ｈ１３は実行可能個体であり、探索履歴個体ｈ１４，ｈ１５は実行不能個体である。したがって、子個体Ｉ１８は多目的最適化における子個体として棄却され、探索履歴個体
ｈ１８となる。
【０１８６】
子個体Ｉ１９の近傍にある３つの探索履歴個体ｈ１２，ｈ１３，ｈ１４のうち探索履歴個体ｈ１２，ｈ１３は実行可能個体であり、探索履歴個体ｈ１４は実行不能個体である。したがって、子個体Ｉ１９は多目的最適化における子個体として採用され、探索履歴個体ｈ１９となる。
【０１８７】
（１３）実施の形態の効果
本実施の形態に係る多目的最適化装置１によれば、探索履歴記憶部３に探索履歴個体とともに制約違反フラグが記憶される。多目的進化型アルゴリズム部２は、親個体から生成された各子個体の近傍の所定数の探索履歴個体が実行可能個体であるか実行不能個体であるかに基づいて各子個体を多目的最適化における子個体として採用するか否かを判別する。それにより、子個体の評価により出力される制約関数値が制約条件に違反する可能性が低減される。したがって、制約条件の違反を回避しつつ短時間で精度良くパレート近似個体集合を得ることができる。
【０１８８】
（１４）実施例１
以下の実施例１では、数値実験により上記実施の形態に係る多目的最適化装置１による制約条件の違反回数の削減効果について調べた。
【０１８９】
本実施例１では、多目的進化型アルゴリズムとして上記のＮＳＧＡ−ＩＩを用い、親個体集合サイズ｜Ｐ｜を１００とし、子個体数集合サイズ｜Ｑ｜を１００とし、世代数を１００とする。初期親個体集合Ｐおよび１００世代の子個体集合Ｑを評価するため、個体の総評価回数は１０１００回となる。交叉演算としては、ＵＮＤＸ（単峰性正規分布交叉：Unimodal Normal Distribution Crossover）を交叉率１．０で用い、突然変異演算は用いない。
【０１９０】
また、比較例では、多目的進化型アルゴリズムとして制約条件違反の回避を行わないＮＳＧＡ−ＩＩを用いる。比較例のＮＳＧＡ−ＩＩでは、制約優越原理と呼ばれる手法により制約条件を取り扱う。
【０１９１】
図１８は実施例１においてテスト関数として用いる２条件２目的問題を示す図である。ｆ１，ｆ２は適応度関数であり、ｇ１，ｇ２は制約関数であり、ｘ１，ｘ２は決定変数である。
【０１９２】
多目的進化型アルゴリズムは確率的な最適化手法であるため、初期個体集合の配置および探索過程での多目的進化型アルゴリズムによる操作により結果に違いが生じる。したがって、実施例１および比較例では、上記実施の形態の多目的最適化装置１の平均的な性能を評価するために、３０回の最適化結果の平均値を求める。実施例１では、重みパラメータＷＦとして０．５（消極的手法）、１．０（中立手法）および１．５（積極的手法）を用いた。もう１つの重みパラメータＷＩは１．０である。
【０１９３】
評価指標としては、ＧＤ（Generational Distance）およびＤ１Ｒを用いた。また、評価した子個体のうち制約条件に違反した子個体の数を求めた。上記のように、制約条件を満足した探索履歴個体を実行可能個体と呼び、制約条件に違反した探索履歴個体を実行不能個体と呼ぶ。
【０１９４】
図１９はＧＤを説明するための図であり、図２０はＤ１Ｒを説明するための図である。
【０１９５】
図１９および図２０には、２つの適応度関数ｆ１，ｆ２からなる適応度空間におけるパレート最適個体集合Ｐ１およびパレート近似個体集合Ｐ２が示されている。パレート最適個体集合Ｐ１は、個体ｐ１１〜ｐ１７を含み、パレート近似個体集合Ｐ２は、個体ｐ２１〜ｐ２７を含む。
【０１９６】
図１９において、パレート近似個体集合Ｐ２内の個体ｐ２１〜ｐ２７からパレート最適個体集合Ｐ１内の最も近い個体ｐ１１〜ｐ１３，ｐ１５，ｐ１６までの距離をそれぞれ矢印で示す。ＧＤは、パレート近似個体集合Ｐ２からパレート最適個体集合Ｐ１への最短距離の平均値である。
【０１９７】
また、図２０において、パレート最適個体集合Ｐ１内の個体ｐ１１〜ｐ１７からパレート近似個体集合Ｐ２内の最も近い個体ｐ２２，ｐ２３〜ｐ２７までの距離をそれぞれ矢印で示す。Ｄ１Ｒは、パレート最適個体集合Ｐ１からパレート近似個体集合Ｐ２への最短距
離の平均値である。
【０１９８】
図２１は実施例１および比較例におけるＧＤ、Ｄ１Ｒおよび実行不能個体数を示す図である。図２１においては、３０回の最適化結果におけるＧＤの平均値および標準偏差、３０回の最適化結果におけるＤ１Ｒの平均値および標準偏差、ならびに３０回の最適化結果における世代当たりの実行不能個体数（ＮｏＶ）の平均値および標準偏差が示される。
【０１９９】
図２１に示すように、実施例１におけるＧＤおよびＤ１Ｒは比較例におけるＧＤおよびＤ１Ｒに比べてほとんど悪化していない。一方、実施例１における世代当たりの実行不能個体数（ＮｏＶ）は、比較例における世代当たりの実行不能個体数（ＮｏＶ）に比べて著しく少なくなっている。すなわち、実施例１によると、比較例に比べて探索性能を悪化することなく、実行不能個体数を少なくすることができることがわかる。
【０２００】
図２２は比較例の探索履歴における実行可能個体および実行不能個体の決定変数空間上の分布を示す図である。図２３〜図２５は実施例１の探索履歴における実行可能個体および実行不能個体の決定変数空間上の分布を示す図である。図２２〜図２５の横軸は１つの決定変数ｘ１であり、縦軸は他の１つの決定変数ｘ２である。
【０２０１】
図２２〜図２５では、ＴＮＫ関数を用いた場合の結果を示す。図２３は重みパラメータＷＦが０．５（消極的手法）の場合を示し、図２４は重みパラメータＷＦが１．０（中立手法）の場合を示し、図２５は重みパラメータＷＦが１．５（積極的手法）の場合を示す。比較例および実施例１において、全個体数は１０１００である。
【０２０２】
図２２の比較例では、実行不能個体の数が５６９０個となった。一方、図２３の実施例１（ＷＦ＝０．５）では、実行不能個体数が２８８個となり、図２４の実施例１（ＷＦ＝１．０）では、実行不能個体数が５２７個となり、図２５の実施例１（ＷＦ＝１．５）では、実行不能個体数が１２５１個となった。
【０２０３】
図２３〜図２５の結果から、重みパラメータＷＦを変化させることにより、実行不能個体数を調整できることがわかる。また、図２２〜図２５の結果から、実施例１によると、比較例に比べて実行不能個体数を少なくすることができることがわかる。
【０２０４】
（１５）実施例２
以下の実施例２では、上記実施の形態に係る多目的最適化装置１を並列４気筒のコモンレールディーゼルエンジンの多段噴射パラメータ最適化に適用した場合を説明する。
【０２０５】
ディーゼルエンジンでは、高圧直噴システムであるコモンレールシステムにより、１燃焼サイクルの間に複数回の燃料噴射（多段噴射）が可能である。この多段噴射は、排出ガスの清浄化に大きく貢献するが、適合すべき決定変数（制御パラメータ）の数が多いため、適切な決定変数の組み合わせを手動で求めることは困難である。
【０２０６】
そこで、本実施例２では、３目的７変数の多目的最適化問題を設定し、実験ベースで３段噴射のエンジンの最適化を実施した。
【０２０７】
多目的進化型アルゴリズムとして評価回数を低減するための手法である“Ｐｒｅ−ｓｅｌｅｃｔｉｏｎ”アルゴリズム（上記の非特許文献５）を組み合わせたＮＳＧＡ−ＩＩを用い、親個体集合サイズ｜Ｐ｜を５０とし、候補子個体集合サイズ｜Ｑｃ｜を１００とし、子個体数集合サイズ｜Ｑ｜を４とした。重みパラメータＷＦを１．０とし、重みパラメータＷＩも１．０とした。“Ｐｒｅ−ｓｅｌｅｃｔｉｏｎ”アルゴリズムの近似モデリング手法として局所重み付き回帰（ＬＷＲ）を用いた．
図２６は実施例２における噴射タイミングおよび噴射量を示す概念図である。
【０２０８】
図２６に示すように、３段噴射は、パイロット噴射Ｐｉ、プリ噴射Ｐｒおよびメイン噴射Ｍｉからなる。図２６において、ＭＩタイミングは、上死点（ＴＤＣ）から進角方向に見たメイン噴射Ｍｉの通電開始タイミングである。Ｐｒｅ−ＭＩインターバルは、プリ噴射Ｐｒの通電開始タイミングとメイン噴射Ｍｉの通電開始タイミングとの間隔である。Ｐｉｌ−Ｐｒｅインターバルは、パイロット噴射Ｐｉの通電開始タイミングとプリ噴射Ｐｒの通電開始タイミングとの間隔である。
【０２０９】
本実施例２では、３つの適応度関数（目的関数）として、排出ガス中のＮＯｘ濃度、可溶有機成分（ＳＯＦ）量およびすす量を用いる。また、制約関数として、排出ガス中のＳＯＦ量、排出ガス中のすす量、排出ガス中のＨＣ濃度、エンジンのトルク変動および異常
噴射の有無を用いる。ＳＯＦおよびすすは、粒子状物質（ＰＭ）と呼ばれる排出ガス成分の構成要素である。
【０２１０】
７つの決定変数（制御パラメータ）としては、ＭＩタイミング、Ｐｒｅ−ＭＩインターバル、Ｐｉｌ−Ｐｒｅインターバル、パイロット噴射量（Pil Quantity）、プリ噴射量（Pre Quantity）、吸入空気量（Fresh Air Mass）、および燃料圧力を用いる。パイロット噴射量は、パイロット噴射時の燃料噴射量であり、プリ噴射量は、プリ噴射時の燃料噴射量である。吸入空気量は、ＥＧＲ（排出ガス再循環装置）バルブ等により制御される吸入空気の量である。燃料圧力は、コモンレールの燃料圧力である。
【０２１１】
実施例２の実験は、一定のエンジン回転速度および一定トルクの条件で実施された。多目的最適化装置１から図３のＥＣＵ６２にシリアル通信によりＮＳＧＡ−ＩＩの個体として表現されている決定変数（制御パラメータ）が一定のタイミングで送信される。計測装置６３により、適応度関数値および制約関数値が所定の時間測定される。
【０２１２】
本実施例２では、２１０回の決定変数の評価が行われた。ここで、親個体集合Ｐの再評価は行っていない。
【０２１３】
図２７は最終世代の個体集合（パレート近似個体集合）の分布を示す図である。本実施例２は３目的最適化であるので、パレート近似個体集合は３次元適応度空間上に分布する。図２８はＮＯｘ濃度、ＳＯＦ量およびすす量を６つの２次元適応度平面へ射影することによりパレート近似個体集合を示している。図２７において、適応度平面Ｄ１，Ｄ２の縦軸はＮＯｘ濃度であり、横軸はそれぞれＳＯＦ量およびすす量である。適応度平面Ｄ３，Ｄ４の縦軸はＳＯＦ量であり、横軸はそれぞれＮＯｘ濃度およびすす量である。適応度平面Ｄ５，Ｄ６の縦軸はすす量であり、横軸はそれぞれＮＯｘ濃度およびＳＯＦ量である。ＮＯｘ濃度、ＳＯＦ量およびすす量の値は正規化されている。
【０２１４】
適応度平面Ｄ１〜Ｄ６の各々において、左下方向が最適化の方向となる。適応度平面Ｄ１と適応度平面Ｄ３とは互いに縦軸と横軸とが入れ替わっており、適応度平面Ｄ２と適応度平面Ｄ５とは互いに縦軸と横軸とが入れ替わっており、適応度平面Ｄ４と適応度平面Ｄ６とは互いに縦軸と横軸とが入れ替わっている。
【０２１５】
適応度平面Ｄ１，Ｄ３においては、ディーゼルエンジンでよく知られているように、ＮＯｘ濃度とすす量との間にトレードオフの関係が明確に見られる。
【０２１６】
図２８は探索履歴個体の分布を示す図である。図２８では、実行可能個体、実行不能個体およびパレート近似個体が４２個の２次元決定変数平面上に示されている。
【０２１７】
１段目の６個の決定変数平面の縦軸はＭＩタイミングであり、２段目の６個の決定変数平面の縦軸はＰｒｅ−ＭＩインターバルであり、３段目の６個の決定変数平面の縦軸はプリ噴射量であり、４段目の６個の決定変数平面の縦軸はＰｉｌ−Ｐｒｅインターバルであり、５段目の６個の決定変数平面の縦軸はパイロット噴射量であり、６段目の６個の決定変数平面の縦軸は吸入空気量であり、７段目の６個の決定変数平面の縦軸は燃料圧力である。
【０２１８】
１列目の６個の決定変数平面の横軸はＭＩタイミングであり、２列目の６個の決定変数平面の横軸はＰｒｅ−ＭＩインターバルであり、３列目の６個の決定変数平面の横軸はプリ噴射量であり、４列目の６個の決定変数平面の横軸はＰｉｌ−Ｐｒｅインターバルであり、５列目の６個の決定変数平面の横軸はパイロット噴射量であり、６段目の６個の決定変数平面の横軸は吸入空気量であり、７列目の６個の決定変数平面の横軸は燃料圧力である。
【０２１９】
図２８において、濃い丸印が実行可能個体を示し、やや濃い丸印が実行不能個体を示し、薄い丸印がパレート近似個体を示す。
【０２２０】
探索履歴個体が疎らに存在する領域では、実行不能個体が集中しているが、探索履歴個体が密に存在する領域では、実行可能個体およびパレート近似個体が集中的に分布している。図２８の探索履歴個体の偏った分布は、子個体が制約条件の違反を回避するように生成されることを示している。
【０２２１】
図２９は実際のエンジンから得られる実行不能個体の数の推移を示す図である。初期個体集合の評価（０世代の評価）では、５０個の個体中４５個の個体が実行不能個体となっ
た。その後、１世代につき４個の個体で実際のエンジンを評価した。その結果、１２世代までは実行不能個体の数は２個以下であることがわかる。それ以降は、実行不能個体の数がやや増加していることがわかる。これは、パレート最適個体集合が実行可能領域の境界付近に存在していることを示唆している。特に、“Ｐｒｅ−ｓｅｌｅｃｔｉｏｎ”アルゴリズムでは、パレート最適個体集合に近い有望な個体が積極的に評価されるため、最終世代に近づくにつれて制約条件に違反する可能性が若干増加していると考えられる。
【０２２２】
本実施例２において得られたパレート近似個体集合の特徴は、実験に用いたディーゼルエンジンの特性として妥当性があることを確認した。したがって、上記実施の形態に係る多目的最適化装置１によれば、制約条件の違反を回避しつつ短時間で精度良くパレート近似個体集合を得られることがわかった。
【０２２３】
（１６）他の実施の形態
（ａ）上記実施の形態では、多目的進化型アルゴリズムとしてＮＳＧＡ−ＩＩを用いているが、これに限定されず、ＮＳＧＡ−ＩＩの代わりに、ＳＰＥＡ２（非特許文献３）等の同様のアイデアに基づく計算法を用いてもよい。
【０２２４】
（ｂ）上記実施の形態では、多目的進化型アルゴリズム部２がＣＰＵ１０１およびプログラムにより実現されるが、多目的進化型アルゴリズム部２の一部または全てが電子回路等のハードウエアにより実現されてもよい。
【０２２５】
（ｃ）多目的進化型アルゴリズムの代わりに他の最適化アルゴリズムを用いてもよい。
【０２２６】
（ｄ）初期の探索履歴個体を生成するために、図３３に示した方法で実行可能領域を推定してもよい。この場合、推定された実行可能領域の境界の近くに探索履歴個体を生成することができるので、探索効率を向上させることができる。
【０２２７】
（１７）請求項の構成要素と実施の形態の各部との対応
以下、請求項の各構成要素と実施の形態の各部との対応の例について説明するが、本発明は下記の例に限定されない。
【０２２８】
上記実施の形態では、多目的進化型アルゴリズム部４が多目的最適化部の例であり、探索履歴記憶部５が記憶部の例である。また、パレート近似個体集合がパレート近似解集合の例であり、制約違反フラグが制約違反情報の例である。
【０２２９】
請求項の各構成要素として、請求項に記載されている構成または機能を有する他の種々の要素を用いることもできる。
【産業上の利用可能性】
【０２３０】
本発明は、条件により目的関数が変化する最適化対象の決定変数を最適化するため等に利用することができる。
【図面の簡単な説明】
【０２３１】
【図１】本発明の一実施の形態に係る多目的最適化装置の機能的な構成を示すブロック図である。
【図２】図１の多目的最適化装置のハードウエア構成を示すブロック図である。
【図３】最適化対象の構成の一例を示すブロック図である。
【図４】制約条件について説明するための図である。
【図５】多目的進化型アルゴリズムを説明するための模式図である。
【図６】多目的進化型アルゴリズムを説明するためのフローチャートである。
【図７】非優越ランキングを説明するための模式図である。
【図８】混雑度ソートを説明するための図である。
【図９】多目的進化型アルゴリズム部による混雑度ソートの処理を示すフローチャートである。
【図１０】本実施の形態に係る多目的進化型アルゴリズム部による子個体の生成方法を説明するためのフローチャートである。
【図１１】最近傍法による子個体の選別方法の一例を示す概念図である。
【図１２】最近傍法による子個体の選別方法の一例を示す概念図である。
【図１３】最近傍法による子個体の選別方法の一例を示す概念図である。
【図１４】最近傍法による子個体の選別方法の一例を示す概念図である。
【図１５】最近傍法による子個体の選別方法の一例を示す概念図である。
【図１６】重みパラメータを導入した場合のボロノイ境界を示す概念図である。
【図１７】ｋ−ＮＮ法による子個体の選別方法の一例を示す概念図である。
【図１８】実施例１においてテスト関数として用いる２条件２目的問題を示す図である。
【図１９】ＧＤを説明するための図であり、
【図２０】Ｄ１Ｒを説明するための図である。
【図２１】実施例１および比較例におけるＧＤ、Ｄ１Ｒおよび実行不能個体数を示す図である。
【図２２】比較例の探索履歴における実行可能個体および実行不能個体の決定変数空間上の分布を示す図である。
【図２３】実施例１の探索履歴における実行可能個体および実行不能個体の決定変数空間上の分布を示す図である。
【図２４】実施例１の探索履歴における実行可能個体および実行不能個体の決定変数空間上の分布を示す図である。
【図２５】実施例１の探索履歴における実行可能個体および実行不能個体の決定変数空間上の分布を示す図である。
【図２６】実施例２における噴射タイミングおよび噴射量を示す概念図である。
【図２７】最終世代の個体集合（パレート近似個体集合）の分布を示す図である。
【図２８】探索履歴個体の分布を示す図である。
【図２９】実際のエンジンから得られる実行不能個体の数の推移を示す図である。
【図３０】多目的最適化問題をエンジンの最適化に適用した例を示す図である。
【図３１】パレート最適解について説明するための図である。
【図３２】エンジンの適合を説明するための図である。
【図３３】応答曲面法において制御パラメータ値の組の制約条件を設定する方法を説明するための概念図である。
【符号の説明】
【０２３２】
１  多目的最適化装置
２  多目的進化型アルゴリズム部
３  探索履歴記憶部
６  最適化対象
６１  エンジン
６２  ＥＣＵ
６３  計測装置
６４  制御用コンピュータ
６５  超低慣性ダイナモメータ
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  入力装置
１０５  表示装置
１０６  外部記憶装置
１０７  記録媒体駆動装置
１０８  入出力インタフェース
１０９  記録媒体
Ｄ１〜Ｄ６  適応度平面
ｄ１〜ｄ４  長さ
ｈ１，ｈ２，ｈ３，ｈ４，ｈ６，ｈ７，ｈ１１，ｈ１２，ｈ１３，ｈ１４，ｈ１５，ｈ１６，ｈ１７，ｈ１８，ｈ１９  探索履歴個体
Ｉ１〜Ｉ１１  個体
Ｉ３，Ｉ４，Ｉ５，Ｉ６，Ｉ７，Ｉ８，Ｉ９，Ｉ１０，Ｉ１１，Ｉ１７，Ｉ１８，Ｉ１９  子個体
Ｐ  親個体集合
Ｐ１  パレート最適個体集合
Ｐ２  個体集合
ｐ１１〜ｐ１７，ｐ２１〜ｐ２７  個体
ｓ１，ｓ２  長方形
ＶＥ１〜ＶＥ４  ボロノイ境界
ＷＦ，ＷＩ  重みパラメータ
ｘ１，ｘ２  決定変数
【図１】
2010152851.tif 000004
【図２】
2010152851.tif 000005
【図３】
2010152851.tif 000006
【図４】
2010152851.tif 000007
【図５】
2010152851.tif 000008
【図６】
2010152851.tif 000009
【図７】
2010152851.tif 000010
【図８】
2010152851.tif 000011
【図９】
2010152851.tif 000012
【図１０】
2010152851.tif 000013
【図１１】
2010152851.tif 000014
【図１２】
2010152851.tif 000015
【図１３】
2010152851.tif 000016
【図１４】
2010152851.tif 000017
【図１５】
2010152851.tif 000018
【図１６】
2010152851.tif 000019
【図１７】
2010152851.tif 000020
【図１８】
2010152851.tif 000021
【図１９】
2010152851.tif 000022
【図２０】
2010152851.tif 000023
【図２１】
2010152851.tif 000024
【図２２】
2010152851.tif 000025
【図２３】
2010152851.tif 000026
【図２４】
2010152851.tif 000027
【図２５】
2010152851.tif 000028
【図２６】
2010152851.tif 000029
【図２７】
2010152851.tif 000030
【図２８】
2010152851.tif 000031
【図２９】
2010152851.tif 000032
【図３０】
2010152851.tif 000033
【図３１】
2010152851.tif 000034
【図３２】
2010152851.tif 000035
【図３３】
2010152851.tif 000036