(58)【調査した分野】(Int.Cl.,DB名)
前記形状計算部は、前記複数の制約の各々について、前記制約を満足する前記パラメータ空間における領域の形状として、楕円体を計算する請求項1記載の情報処理装置。
前記楕円体計算部は、前記評価部による前記サンプルについての評価結果に基づいて、前記制約を満足する前記パラメータ空間と、前記制約を満足しない前記パラメータ空間とに分離し、前記分離された前記制約を満足する前記パラメータ空間の最大近似楕円体を、前記制約を満足する前記パラメータ空間における領域の形状として計算する請求項3記載の情報処理装置。
前記サンプル生成部は、前記楕円体計算部によって前回計算された楕円体の境界、又は、過去に生成した前記サンプルに基づいて、前記制約に関するパラメータセットのサンプルを生成する請求項3又は4記載の情報処理装置。
【発明の概要】
【発明が解決しようとする課題】
【0004】
一般的な製品では、複数の現象や複数の制約に対して、すべてを満足する解を探したい。
【0005】
しかしながら、ある現象を記述するモデルに含まれるパラメータと、異なる現象を記述するモデルに含まれるパラメータは、全く同じではなく、一部のパラメータが異なっている場合が多い。
【0006】
上記の特許文献1の技術では、異なるパラメータを含む対象に対する複数の制約充足問題を扱う手段を提供していない。
【0007】
本発明は、上記の事情を鑑みてなされたもので、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算することができる情報処理装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記の目的を達成するために本発明に係る情報処理装置は、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算する情報処理装置であって、前記複数の制約と、前記複数の制約の各々についての前記制約に関連するパラメータを含むパラメータセットとを受け付ける入力部と、ただし、前記制約に関連するパラメータセットに含まれる少なくとも1つのパラメータは、他の制約に関連するパラメータセットに含まれるパラメータと共通であるか、又は、前記パラメータとの間でパラメータ間制約を有し、前記複数の制約の各々について、前記制約を満足する、前記パラメータセットの値の範囲を表す、パラメータ空間における領域の形状を計算する形状計算部と、前記複数の制約の各々について計算された形状の全てを内包する最小の楕円体を、前記複数のパラメータからなるパラメータ空間において計算し、前記計算された最小の楕円体から、複数のパラメータの最適解を計算する内包最小楕円体計算部と、を含んで構成されている。
【0009】
本発明に係る情報処理方法は、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算する情報処理装置における情報処理方法であって、入力部が、前記複数の制約と、前記複数の制約の各々についての前記制約に関連するパラメータを含むパラメータセットとを受け付け、ただし、前記制約に関連するパラメータセットに含まれる少なくとも1つのパラメータは、他の制約に関連するパラメータセットに含まれるパラメータと共通であるか、又は、前記パラメータとの間でパラメータ間制約を有し、形状計算部が、前記複数の制約の各々について、前記制約を満足する、前記パラメータセットの値の範囲を表す、パラメータ空間における領域の形状を計算し、内包最小楕円体計算部が、前記複数の制約の各々について計算された形状の全てを内包する最小の楕円体を、前記複数のパラメータからなるパラメータ空間において計算し、前記計算された最小の楕円体から、複数のパラメータの最適解を計算する。
【0010】
本発明に係るプログラムは、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算するためのプログラムであって、コンピュータを、前記複数の制約と、前記複数の制約の各々についての前記制約に関連するパラメータを含むパラメータセットとを受け付ける入力部、ただし、前記制約に関連するパラメータセットに含まれる少なくとも1つのパラメータは、他の制約に関連するパラメータセットに含まれるパラメータと共通であるか、又は、前記パラメータとの間でパラメータ間制約を有し、前記複数の制約の各々について、前記制約を満足する、前記パラメータセットの値の範囲を表す、パラメータ空間における領域の形状を計算する形状計算部、及び前記複数の制約の各々について計算された形状の全てを内包する最小の楕円体を、前記複数のパラメータからなるパラメータ空間において計算し、前記計算された最小の楕円体から、複数のパラメータの最適解を計算する内包最小楕円体計算部として機能させるためのプログラムである。
【0011】
本発明によれば、入力部が、前記複数の制約と、前記複数の制約の各々についての前記制約に関連するパラメータを含むパラメータセットとを受け付ける。そして、形状計算部が、前記複数の制約の各々について、前記制約を満足する、前記パラメータセットの値の範囲を表す、パラメータ空間における領域の形状を計算する。内包最小楕円体計算部が、前記複数の制約の各々について計算された形状の全てを内包する最小の楕円体を、前記複数のパラメータからなるパラメータ空間において計算し、前記計算された最小の楕円体から、複数のパラメータの最適解を計算する。
【0012】
このように、複数の制約の各々について、前記制約を満足する、前記パラメータセットの値の範囲を表す、パラメータ空間における領域の形状を計算し、計算された形状の全てを内包する最小の楕円体を、前記複数のパラメータからなるパラメータ空間において計算し、前記計算された最小の楕円体から、複数のパラメータの最適解を計算することにより、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算することができる。
【発明の効果】
【0013】
以上説明したように、本発明の情報処理装置、方法、及びプログラムによれば、複数の制約の各々について、前記制約を満足する、前記パラメータセットの値の範囲を表す、パラメータ空間における領域の形状を計算し、計算された形状の全てを内包する最小の楕円体を、前記複数のパラメータからなるパラメータ空間において計算し、前記計算された最小の楕円体から、複数のパラメータの最適解を計算することにより、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算することができる、という効果が得られる。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0016】
図1に示すように、第1の実施の形態に係る情報処理装置10は、CPU12、ROM14、RAM16、HDD18、通信インタフェース20、及びこれらを相互に接続するためのバス22を備えている。
【0017】
CPU12は、各種プログラムを実行する。ROM14には、各種プログラムやパラメータ等が記憶されている。RAM16は、CPU12による各種プログラムの実行時におけるワークエリア等として用いられる。記録媒体としてのHDD18には、後述する最適解計算処理ルーチンを実行するためのプログラムを含む各種プログラムや各種データが記憶されている。
【0018】
第1の実施の形態における情報処理装置10を、最適解計算処理ルーチンを実行するためのプログラムに沿って、機能ブロックで表すと、
図2に示すようになる。情報処理装置10は、入力部30、楕円体決定部321〜32N、内包最小楕円体計算部34、及び出力部36を備えている。なお、楕円体決定部321〜32Nが、形状計算部の一例である。
【0019】
入力部30は、所定の現象に関するN個の制約rと、N個の制約rの各々についての当該制約rに関連するパラメータを含むパラメータセットx、及びパラメータセットxの初期サンプルと、各パラメータが取り得る値の範囲とを受け付ける。ただし、制約rに関連するパラメータセットxに含まれる少なくとも1つのパラメータは、他の制約に関連するパラメータセットxに含まれるパラメータと共通であるか、又は、パラメータとの間でパラメータ間制約を有する。
【0020】
楕円体決定部321〜32Nは、N個の制約rの各々に対応して設けられている。以下では、楕円体決定部321〜32Nを区別しない場合には楕円体決定部32と表記する。
【0021】
楕円体決定部32は、対応する制約rを満足する、パラメータセットxの値の範囲を表す、パラメータセットxのパラメータ空間における領域の形状として、楕円体を計算する。
【0022】
楕円体決定部32は、
図3に示すように、シミュレーション部40、分離器導出部42、最大近似楕円体分離器導出部44、収束判定部46、及びサンプル生成部48を備えている。なお、シミュレーション部40が、評価部の一例であり、分離器導出部42及び最大近似楕円体分離器導出部44が、楕円体計算部の一例である。
【0023】
シミュレーション部40は、パラメータセットxの初期サンプル、又はサンプル生成部48によって生成されたサンプルについて、予め用意したシミュレーションプログラムにより、サンプル毎に、当該サンプルの場合において生じる所定の現象をシミュレーションし、制約rを満たすか否かを評価した評価量y
rを計算する。
【0024】
なお、本実施の形態では、シミュレーションを行う場合を例に説明したが、これに限定されるものではなく、自動又は手動で行う実験により、評価量y
rを計算するようにしてもよい。例えば、自動適合ベンチなどを用いた実験により、評価量y
rを計算するようにしてもよい。
【0025】
分離器導出部42は、シミュレーション部40によってパラメータセットxのサンプル集合の各サンプルについて計算した評価量y
rに基づいて、制約rを満足するパラメータ空間と、制約rを満足しないパラメータ空間とに分離する非線形関数f
r(分離器)を導出する(
図4参照)。
【0026】
ここで、非線形関数f
rと評価量y
rとの関係は、以下の式で表わされる。
【0028】
非線形関数f
rは何でも良く、線形分離でもよいし、非線形分離でもよい。サポートベクターマシンでは、ガウスカーネルや、多項式カーネルを用いて分離する。
【0029】
例えば、ガウスカーネルによる分離では、ガウスカーネルのハイパーパラメータ次第で、
図5に示すような複雑な分離平面も可能である。
【0030】
また、以下の式に従って、2次曲面による分離(Quadratic discrimination)を行っても良い。
【0032】
2次曲面による分離では、サポートベクターマシンによる2次の多項式カーネルを用いた分離と等価であり、分離面がガウスカーネルよりもシンプルとなる。また、行列Aの固有値の符号次第で、楕円体や双曲面(一葉、二葉)の場合もある(
図6参照)。
【0033】
本実施の形態では、以下の式に示すように、行列Aを限定して、楕円体による分離を行う。
【0034】
【数3】
なお、ξ
r(1),・・・,ξ
r(N)のように、1〜Nのサンプルごとにξ
rを変更しているが、計算コストを考慮して、ξ
r(1)=・・・=ξ
r(N)としてもよい。
【0035】
最大近似楕円体分離器導出部44は、分離器導出部42によって導出された非線形関数f
rと、パラメータセットxの各パラメータが取り得る値の範囲とに基づいて、非線形関数f
rにより分離される制約rを満足するパラメータ空間の最大近似楕円体を計算する。
【0036】
例えば、以下の式に従って、非線形関数f
r(x)≧0となるパラメータセットxの範囲ε
r(x)内であって、かつ、パラメータセットxの各パラメータが取り得る値の範囲で規定されるパラメータ範囲P内となるパラメータ空間に含まれる最大の楕円体である最大近似楕円体を計算する(
図7参照)。
【0038】
ただし、行列B
rは、最大近似楕円体の方向(回転)及び大きさを表す行列であり、d
rは、最大近似楕円体の中心の原点からの相対位置であり、nはパラメータセットの次元数とすると、m=2nである。
【0039】
収束判定部46は、予め定められた収束判定条件を満たしたか否かを判定し、収束判定条件を満たすまで、サンプル生成部48、シミュレーション部40、分離器導出部42、最大近似楕円体分離器導出部44の各処理を繰り返させる。
【0040】
収束判定条件としては、例えば、前回計算された最大近似楕円体の方向(回転)及び大きさからの変化量が、閾値以下となることを用いればよい。
【0041】
サンプル生成部48は、最大近似楕円体分離器導出部44によって前回計算された最大近似楕円体の境界に基づいて、制約rに関するパラメータセットのサンプルを生成し、サンプル集合に追加する。
【0042】
例えば、前回計算された最大近似楕円体上の境界およびその付近から追加サンプル点を選択して制約rに関するパラメータセットのサンプルを生成する。なお、前回計算された最大近似楕円体の頂点を追加サンプル点として選択してもよいし、当該最大近似楕円体の頂点よりランダムな角度だけ回転した点を追加サンプル点として選択してもよいし、当該最大近似楕円体の境界にあるサンプル点から、正規分布(平均は境界)を用いてランダムに半径方向に移動した点を追加サンプル点として選択してもよい。また、追加候補の予測分布で不確かさが大きな追加サンプル点を選択して、サンプルを生成してもよい。また、サンプル集合に基づいて、追加候補から追加サンプル点を選択するようにしてもよい。例えば、現在までに選択された追加サンプル点から離れた点から追加サンプル点を選択するようにしてもよい。
【0043】
内包最小楕円体計算部34は、楕円体決定部321〜32NによってN個の制約の各々について計算された最大近傍楕円体の全てを内包する最小の楕円体を、N個の制約に関連する全てのパラメータからなるパラメータ空間において計算し、計算された最小の楕円体から、複数のパラメータのロバスト最適解を計算する。
【0044】
例えば、2つの制約の各々について、一つの制約に関連するパラメータセットがx
1,x
2であり、
図8(A)に示す最大近傍楕円体が計算され、もう一つの制約に関連するパラメータセットがx
1´,x
3であり、
図8(B)に示す最大近傍楕円体が計算され、x
1とx
1´との間に、パラメータ間制約
【0046】
が与えられている場合、以下の式のように、パラメータx
1´をパラメータx
1に置き換える。
【0048】
そして、以下に説明するように、
図8(C)に示すように、最大近傍楕円体の全てを内包する最小の楕円体を、全てのパラメータx
1,x
2,x
3からなるパラメータ空間において計算する。
【0049】
まず、m個の楕円体は以下の式で表わされる。
【0051】
また、m個の楕円体を内包する楕円体は、以下の式で表わされる。
【0053】
また、m個の楕円体を内包する楕円体のうち、最小のvolumeの楕円体は、以下の式で表わされる(
図9参照)。
【0055】
A、
〜b、{τ
1,...,τ
m}について凸となる凸問題となるように変形すると、以下の式で表わされる。
【0057】
内包最小楕円体計算部34は、上記の式に従って、最大近傍楕円体の全てを内包する最小の楕円体を、全てのパラメータx
1,x
2,x
3からなるパラメータ空間において計算する。
【0058】
内包最小楕円体計算部34は、計算された内包最小楕円体の中心に対応する複数のパラメータの値を、複数のパラメータのロバスト最適解として計算し、出力部36により出力する。
【0059】
次に、第1の実施の形態に係る情報処理装置10により複数の制約を満足するロバスト最適解を計算する際の動作について説明する。
【0060】
まず、情報処理装置10に、所定の現象に関するN個の制約rと、N個の制約rの各々についての当該制約rに関連するパラメータを含むパラメータセットx、及びパラメータセットxの初期サンプルと、各パラメータが取り得る値の範囲とが入力されると、情報処理装置10によって、
図10に示す最適解計算処理ルーチンが実行される。
【0061】
まず、ステップS100において、制約r毎に、入力されたパラメータセットxと制約rとパラメータセットxの初期サンプルとパラメータセットxの各パラメータが取り得る値の範囲とを受け付ける。
【0062】
次のステップS102では、処理対象の制約rについて、当該制約rを満足するパラメータセットxの値の範囲を表す、パラメータセットxのパラメータ空間における領域の形状として、楕円体を計算する。
【0063】
上記ステップS102は、
図11に示す楕円体計算処理ルーチンにより実現される。
【0064】
ステップS110では、パラメータセットxの初期サンプル、又は後述するステップS118で生成されたサンプルについて、予め用意したシミュレーションプログラムにより、サンプル毎に、当該サンプルの場合において生じる所定の現象をシミュレーションし、制約rを満たすか否かを評価した評価量y
rを計算する。
【0065】
ステップS112では、初期サンプル、又は生成されたサンプルを含むサンプル集合の各サンプルについて上記ステップS110で計算した評価量y
rに基づいて、制約rを満足するパラメータ空間と、制約rを満足しないパラメータ空間とに分離する非線形関数f
r(分離器)を導出する。
【0066】
次のステップS114では、上記ステップS112で導出された非線形関数f
rと、パラメータセットxの各パラメータが取り得る値の範囲とに基づいて、非線形関数f
rにより分離される制約rを満足するパラメータ空間の最大近似楕円体を計算する。
【0067】
そして、ステップS116では、予め定められた収束判定条件を満たしたか否かを判定する。収束判定条件を満たしていないと判定された場合には、ステップS118へ移行する。一方、収束判定条件を満たした場合には、ステップS120へ移行する。
【0068】
ステップS118では、上記ステップS114で計算された最大近似楕円体の境界に基づいて、制約rに関するパラメータセットのサンプルを生成し、サンプル集合に追加して、ステップS110へ戻り、追加したサンプルについて評価量y
rを計算する。
【0069】
ステップS120では、上記ステップS114で最終的に計算された最大近似楕円体を、制約rを満足するパラメータセットxの値の範囲の最大近似楕円体として決定し、楕円体計算処理ルーチンを終了する。
【0070】
図10のステップS104では、全ての制約について上記ステップS102の処理を実行したか否かを判定し、上記ステップS102の処理を実行していない制約が存在する場合、上記ステップS102へ戻り、当該制約について処理を実行する。一方、全ての制約について上記ステップS102の処理を実行した場合には、ステップS106へ移行する。
【0071】
ステップS106では、上記ステップS102で全ての制約の各々について計算された最大近傍楕円体の全てを内包する最小の楕円体を、N個の制約に関連する全てのパラメータからなるパラメータ空間において計算する。そして、ステップS108において、計算された内包最小楕円体の中心に対応する複数のパラメータの値を、複数のパラメータのロバスト最適解として計算し、出力部36により出力し、最適解計算処理ルーチンを終了する。
【0072】
以上説明したように、第1の実施の形態に係る情報処理装置によれば、ある現象に関する複数の制約の各々について、当該制約を満足する、パラメータセットの値の範囲の最大近似楕円体を計算し、計算された最大近似楕円体の全てを内包する最小の楕円体を、複数のパラメータからなるパラメータ空間において計算し、計算された内包最小楕円体から、複数のパラメータの最適解を計算することにより、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算することができる。
【0073】
また、各現象に対する各制約条件を満足する多くの制約充足問題を個別に解くと共に、制約を充足する解の形式(パラメータ領域)を楕円体に制限することにより、異なるパラメータで記述可能な複数の現象・複数の制約を同時に満足する最適解を効率的に導出することができる。たとえば、ドラビリ制約、ノイズ・振動制約、操縦安定制約、乗心地制約などの複数の制約を開発上流工程にて、同時に検討することが可能となり、後戻りのない開発、開発下流工程での膨大な適合が不要となることが期待できる。
【0074】
また、計算された最大近似楕円体の境界に基づいて、制約rに関するパラメータセットのサンプルを生成することにより、少ないサンプル数で正確な楕円体を導出することができる。
【0075】
なお、各要求・制約を記述するパラメータ間制約(関係式)に基づいてパラメータの次元を低減し、低減したパラメータ空間上で、複数の要求・制約に対応する全ての楕円体を内包する最小楕円体を計算する場合を例に説明したが、各制約のパラメータセット間で共通するパラメータを有しており、パラメータ間の制約がない場合には、パラメータの次数を低減する処理は省略することができる。
【0076】
次に、第2の実施の形態について説明する。なお、第2の実施の形態に係る情報処理装置は、第1の実施の形態と同様の構成となるため、同一符号を付して説明を省略する。
【0077】
第2の実施の形態では、パラメータセットに、制約に関する閾値を含んでいる点が、第1の実施の形態と異なっている。
【0078】
入力部30は、所定の現象に対するN個の制約rと、N個の制約rの各々についての当該制約rに関連するパラメータを含むパラメータセットx、及びパラメータセットxの初期サンプルと、各パラメータが取り得る値の範囲とを受け付ける。ただし、制約rに関連するパラメータセットxに含まれる少なくとも1つのパラメータは、他の制約に関連するパラメータセットxに含まれるパラメータと共通であるか、又は、パラメータとの間でパラメータ間制約を有する。また、少なくとも1つの制約に関連するパラメータセットには、当該制約に関する閾値を含んでいる。例えば、
図12に示すように、制約が伝達関数、すなわち、ドライブシャフトトルク/エンジントルクに関するものである場合、伝達関数に関する閾値が、パラメータセットに含まれている。
【0079】
サンプル生成部48は、最大近似楕円体分離器導出部44によって前回計算された最大近似楕円体の境界に基づいて、制約rに関するパラメータセットのサンプルを生成し、サンプル集合に追加する。このとき、パラメータセットに閾値が含まれる場合、制約rに関する閾値を含むパラメータセットのサンプルを生成する。
【0080】
最大近似楕円体分離器導出部44は、制約に関する分離器導出部42によって導出された非線形関数f
rと、各パラメータが取り得る値の範囲とに基づいて、非線形関数f
rにより分離される制約rを満足するパラメータ空間の最大近似楕円体を計算する。このとき、パラメータセットに閾値が含まれる場合、制約rに関する閾値を含むパラメータセットのパラメータ空間の最大近似楕円体を計算する。
【0081】
なお、第2の実施の形態に係る情報処理装置の他の構成及び作用については、第1の実施の形態と同様であるため、説明を省略する。
【0082】
以上説明したように、第2の実施の形態に係る情報処理装置によれば、ある現象に関する複数の制約の各々について、制約に関するパラメータセットに、制約に関する閾値を含み、当該制約を満足する、パラメータセットの値の範囲の最大近似楕円体を計算し、計算された最大近似楕円体の全てを内包する最小の楕円体を、複数のパラメータからなるパラメータ空間において計算し、計算された内包最小楕円体から、複数のパラメータの最適解を計算することにより、制約に関する閾値もパラメータとし、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算することができる(
図13参照)。
【0083】
<実施例>
次に、第2の実施の形態に係る情報処理装置の実施例について説明する。エンジントルクを入力したときにドライブシャフトトルクが振動する、という現象に関する複数の制約として、ドライバビリティに関する制約と騒音及び振動に関する制約とが設定される。
【0084】
騒音及び振動に関する制約は、伝達関数、すなわち、ドライブシャフトトルク/エンジントルクの値が閾値(例えば、−20dB)以下であり、かつ、ドライブシャフトの共振周波数が閾値(例えば、30Hz)以上となることであり、以下の式で表わされる(
図12参照)。
【0086】
また、騒音及び振動に関する制約のパラメータセットは、LU部剛性k
m、DS剛性k
ds、当該制約のドライブシャフトトルク/エンジントルクの値に関する閾値dB
NVmaxであり、LU部剛性k
m、DS剛性k
dsは、
図14に示すドライブラインモデルのパラメータであり、ドライブライモデルは、以下の式で表わされる。
【0088】
また、ドライバビリティに関する制約は、ドライブシャフトの共振周波数が閾値(例えば、5Hz)以上となることであり、以下の式で表わされる。
【0090】
また、ドライバビリティに関する制約のパラメータセットは、LU部剛性k
m、DS剛性k
dsである。また、シミュレーションでは、上記のドライブラインモデルを用いて、ドライブシャフトトルクの振動のシミュレーションを行い、パラメータセットのサンプルが、制約を満たすか否かを評価する。
【0091】
また、第2の実施の形態に係る情報処理装置では、制約に関する閾値もパラメータとし、関連するパラメータセットが予め定められた複数の制約を満足する複数のパラメータの最適解を計算する。
【0092】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【0093】
例えば、本発明のプログラムは、記憶媒体に格納して提供するようにしてもよい。