設計最適化

最適化実行の目標は、次の積分形式で指定される目的関数 ψ を最小化することです:(1)
ψ = ψ 0 ( b ) + t 0 t f L ( x , λ , b , t ) d τ

ψ 0 ( b ) は、複数のシミュレーションが関与する場合に以前の解析から累積される可能性のある ψ の初期値を表します。

上記の式を時間に関して微分することで、以下の同等の関係を得ることができます:(2)
z ˙ = L ( x , b , t ) z ( t 0 ) Ψ 0 ( b ) Ψ = z ( t f )

MotionSolveでは、式 z ˙ = L ( x , b , t ) は新しいモデリング要素RVを通じて定義されます。RVは、関数式を入力として受け取ります。初期条件も指定されます。これは、式 L の時間積分を出力として返します。RVALは前述の y 出力です。

DSAが実行されると、MotionSolveは各設計変数に対するRVALの偏導関数を計算します。これはDSARY配列で返されます。

目的関数 ψ b の感度はDSARYの形式です。

MotionSolveのPythonインターフェースは、いくつかの最適化機能をサポートしています。このインターフェースは、明確に定義された一連の手順に従って、ユーザー入力が最小限で済むように設計されています。

最適化を実行するための主な手順:

  • このインターフェースを使用してシステムの設計可能モデルを作成します。
  • このモデルに対して最適化に向けた準備を行います。
  • 最適化するモデル応答を作成します。これらはメトリックと呼ばれます。
  • 定義したメトリックに必要なターゲット値を定義します。
  • メトリック関数とターゲット値から目標を作成します。
  • 最適化エンジンを作成し、定義した目標をこのエンジンに付与します。
  • システムを最適化するように最適化エンジンに指示します。