目的関数

目的関数は、最適化探索で最小化または最大化すべき計量情報です。よくある例として、軽量設計を求めるための質量の最小化があります。

目的関数が1つの最適化問題と複数の最適化問題

最適化問題は、考慮する目的関数の数に応じて、目的関数が1つの最適化問題と目的関数が複数の最適化問題に分類できます。目的関数が複数の最適化(MOO)の目的関数は次のように定式化されます:
min f ( x ) = { f 1 ( x ) , f 2 ( x ) , ... , f n ( x ) }

such that g j ( x ) < 0

複数の目的関数 ( f 1 , f 2 , ... ) を扱う場合、1つの設計ですべての目的関数に対して最小値が得られることはほとんどありません。したがって、MOOアプリケーションでは、最適設計ではなく、最適なパレートフロントが検索されます。最適なパレートフロントとは、非支配的な設計の集合です。非支配的な設計は、少なくとも1つの目的関数について、他の設計より小さい値を持ちます。

MOO問題を解くために必要な計算能力は、目的関数が1つの最適化問題の場合よりも著しく大きいことが普通です。MOO問題を解くことが禁止されている状況では、すべての目的関数を加算すること(加重和法)により、これらの問題が目的関数が1つの問題に変換されてきました。

確率論的変数を扱う場合は、目的関数にも関連する分布が伴います。堅牢な最適化を実行すると、目的関数は決定論的な目的関数値ではなく、累積分布関数(CDF)の指定値でのその目的関数分布の値になります。最小化問題ではCDFの95%値(デフォルト値)を使用し、最大化問題ではCDFの5%値を使用します。

目的関数のタイプ

HyperWorksで最適化をセットアップする際に定義できる目的関数のタイプです。
最小化と最大化
最小化タイプまたは最大化タイプの目的関数を作成するとき、Weighted sum欄を編集してすべての目的関数の加重和を作成できます。Weighted sum欄を編集すると、指定ステップで使用できる方法はAdaptive Response Surface MethodMethod of Feasible DirectionsGenetic AlgorithmSequential Quadratic Programmingのみになります。最小化タイプまたは最大化タイプ(あるいはその両方)の目的関数を複数作成したが、加重が定義されていない場合は、Multi - Objective Genetic AlgorithmGlobal Response Search Methodのみが使用できます。
この加重目的関数は必ず最小化されるので、目的関数が最小化される場合、これは正になり、目的関数が最大化される場合、これは負になります。 f x 1 = w i x i
システム同定
出力応答値と、選択された目的関数のターゲット値との差を最小にすることが試みられます。一般的なアプリケーションの例として、実験曲線のフィッティングやパラメータのフィッティングがあります。目的関数は、最小2乗法の式で定式化されます。ここで、 f ˜ i は、i番目の出力応答のターゲット値です。 min ( f i f ˜ i f ˜ i ) 2 このターゲット値がゼロの場合、ゼロによる除算を避けるために分母は1.0に設定されます。この場合、合計に寄与するのは、正規化されていない生の値のみとなります。
システム同定タイプの目的関数を作成する場合は、Target value欄を編集する必要があります。システム同定をSequential Optimization and Reliability Assessment法または ARSM-Based Sequential Optimization and Reliability Assessment 法で使用することはできません。
システム同定タイプの目的関数を他のタイプの目的関数と組み合わせることはできません。1つの目的関数をこのタイプに割り当てた場合は、すべての目的関数をこのタイプに割り当てる必要があります。
ミニマックス法とマックスミニ法
出力応答の最大値を最小にする問題または最小値を最大にする問題を解くために使用されます。
ミニマックス問題は次のように定式化されます:
min max ( f 1 ( x ) / f ˜ 1 , f 2 ( x ) / f ˜ 2 , ... , f k ( x ) / f ˜ k )

Subject to:

g j ( x ) 0 x i L x i x i U j = 1 , ... , m i = 1 , ... , n
これらの問題はベータ法を使用して解きます。この方法では、次のように追加の入力変数を導入することにより、問題が通常の最適化問題に変換されます。
min β

Subject to:

f ι / f ˜ ι ( x ) β g j ( x ) 0 ι = 1 , ... , k j = 1 , ... , m
ミニマックスタイプまたはマックスミニタイプの目的関数を作成するときは、Reference Value欄を編集して、それぞれの関数値を正規化できます。信頼性ベースの最適化手法では、ミニマックス法とマックスミニ法を使用することはできません。
ミニマックスタイプとマックスミニタイプの目的関数を他のタイプの目的関数と組み合わせることはできません。1つの目的関数をこのタイプに割り当てた場合は、すべての目的関数をこのタイプに割り当てる必要があります。

目的関数の作成

目的関数ツールを使用して、既存の応答から最適化に使う目的関数を作成します。

目的関数は、の最適化の探索にのみ適用できます。

  1. 設計探索リボンで目的関数ツールをクリックします。


    図 1.
  2. ガイドバーで、をクリックします。
    Advanced Selectionダイアログが開きます。
  3. このダイアログで既存の応答を選択してOKをクリックします。
    目的関数が作成されます。
  4. マイクロダイアログで次の手順を実行します。
    1. オプション: 目的関数の名前を変更します。
    2. ドロップダウンメニューから目的関数のタイプを選択します。