HS-4230: 離散変数を用いた最適化スタディ

離散変数の使い方について学習します。

開始に先がけ、本チュートリアルで使用されるモデルファイルを<hst.zip>/HS-4230/から自身の作業ディレクトリにコピーします。

本チュートリアルの目的は、プレートの最初の5つのモードの最小振動数を最大にすることです。入力変数は、PSHELLカードを介して入力デック内で定義される3つのコンポーネントの各板厚です。板厚は、0.05から0.15までの間の値で、ファイル内の板厚の初期値は0.1です。最適化のタイプは寸法最適化です。さらに最適設計は、3つの板厚すべてについて、0.05、0.08、0.11、0.14の離散セットからの入力変数を有していなければなりません。HyperStudyはデフォルトにより、下限および上限からの値をこのセットに追加します。したがって、結果のセットは0.05、0.08、0.11、0.14、および0.15です。これらの変数はいずれも、必要に応じて削除してかまいません。

1. 2つの対象条件を持つ板モデル


スタディのセットアップの実行

  1. HyperStudyを開始します。
  2. 以下の方法で新規スタディを開始します:
    • メニューバーから、File(ファイル) > New(新規)をクリックします。
    • リボン上でをクリックします。
  3. Add Study(スタディの追加)ダイアログでスタディの名前を入力し、スタディの場所を選んでOKをクリックします。
  4. Define Models(モデルの定義)ステップに進みます。
  5. パラメータ化ファイルモデルを1つ追加します。
    1. Directory(ディレクトリ)から、plate.tplファイルをワークエリアにドラッグ&ドロップします。
      2.


    2. Solver input file(ソルバー入力ファイル)列にplate.femと入力します。
      これが、評価中にHyperStudyが書き出すソルバー入力ファイルの名称となります。
    3. Solver execution script(ソルバー実行スクリプト)列に、OptiStruct (os)を選択します。
  6. Import Variables(変数のインポート)をクリックします。
    3つの入力変数がplate.tplリソースファイルからインポートされます。
  7. Define Input Variables(入力変数の定義)ステップに進みます。
  8. Property 21を離散に変更します。
    1. Modes(モード)タブをクリックします。
    2. Property 21のModes(モード)列に、Discrete(離散)を選択します。
      3.


    3. Property 21のValues(値)列で、(...)をクリックします。
    4. Step Size(ステップサイズ)をクリックして0.03と入力し、Set(設定)をクリックします。
      4.


    5. OKをクリックします。
  9. Property 22とProperty 23について、8を繰り返します。

ベースランの実行

  1. Test Models(モデルをテスト)ステップに進みます。
  2. Run Definition(計算実行)をクリックします。
    スタディのDirectory(ディレクトリ)内に、approaches/setup_1-def/ディレクトリが作成されます。approaches/setup_1-def/run__00001/m_1には、ベースランの結果である入力ファイルが含まれます。

出力応答の作成と評価

ここでは2つの出力応答を作成します。

  1. Define Output Responses(出力応答の定義)パネルに進みます。
  2. Freq1出力応答を作成します。
    1. Directory(ディレクトリ)から、approaches/setup_1-def/run__00001/m_1にあるplate.outファイルをワークエリアにドラッグ&ドロップします。
    2. File Assistant(ファイルアシスタント)ダイアログで、Reading technology(読み取り技術)をAltair® HyperWorks®にセットし、Next(次)をクリックします。
    3. Single Item in a Time Series(タイムシリーズの単一アイテム)を選択し、Next(次)をクリックします。
    4. 以下のオプションを定義し、Next(次)をクリックします。
      • TypeをFrequencyにセットします。
      • RequestをMode 1にセットします。
      • ComponentをValueにセットします。
      5.


    5. 出力応答のラベルをFreq1とします。
    6. Expression(式)をFirst Element(最初の要素)にセットします。
    7. Finish(終了)をクリックします。
      6.


  3. Volume出力応答を作成します。
    1. Directory(ディレクトリ)から、approaches/setup_1-def/run__00001/m_1にあるplate.outファイルをワークエリアにドラッグ&ドロップします。
    2. File Assistant(ファイルアシスタント)ダイアログで、Reading technology(読み取り技術)をAltair® HyperWorks®にセットし、Next(次)をクリックします。
    3. Single Item in a Time Series(タイムシリーズの単一アイテム)を選択し、Next(次)をクリックします。
    4. 以下のオプションを定義し、Next(次)をクリックします。
      • TypeをVolumeにセットします。
      • RequestをVolumeにセットします。
      • ComponentをValueにセットします。
    5. 出力応答のラベルをValueとします。
    6. Expression(式)をFirst Element(最初の要素)にセットします。
    7. Finish(終了)をクリックします。
  4. Evaluate(評価)をクリックして出力応答値を抽出します。

最適化の実行

  1. Optimization(最適化)を追加します。
    1. Explorer(エクスプローラ)内で右クリックし、コンテキストメニューからAdd(追加)を選択します。
    2. Add(追加)ダイアログでOptimization(最適化)を選択します。
    3. Definition from(定義元)に、Setup(セットアップ)を選択しOKをクリックします。
  2. Optimization(最適化) > Definition(定義) > Define Output Responses(出力応答の定義)ステップに進みます。
  3. Objectives/Constraints - Goals(目的 / 制約条件 - 目標)タブをクリックします。
  4. Volume出力応答に目的を適用します。
    1. Add Goal(目標を追加)をクリックします。
    2. Apply On(応答)列に、Volume (r_2)を選択します。
    3. Type (タイプ)列に、Minimizeを選択します。
    7.


  5. Freq1出力応答に制約条件を適用します。
    1. Add Goal(目標を追加)をクリックします。
    2. Apply On(応答)列で、Freq1を選択します。
    3. Type (タイプ)列に、Constraintを選択します。
    4. Deterministic
    5. column 1に>=(以上)を選択します。
    6. column 2に32と入力します。
    8.


  6. Optimization(最適化) > Specifications(スタディ仕様)ステップに進みます。
  7. ワークエリア内でModes(モード)をAdaptive Response Surface Method (逐次更新型応答曲面法)(ARSM)にセットします。
    注: 問題の定式化に有効な手法のみが使用可能です。
  8. Apply(適用)をクリックします。
  9. Optimization(最適化) > Evaluate(評価)ステップに進みます。
  10. Evaluate Tasks(評価タスク)をクリックします。
  11. Iteration History(反復計算履歴)タブをクリックし、最適化反復計算の進捗を監視します。
    9.


DOEの実行

DOEを実行し、真の最良設計を求めます。

  1. DOEを追加します。
    1. Explorer(エクスプローラ)内で右クリックし、コンテキストメニューからAdd(追加)を選択します。
      Add(追加)ダイアログが開きます。
    2. Select Type(タイプの選択)からDOEを選択します。
    3. Definition from(定義元)に、アプローチを選択します。
    4. Setup(セットアップ)を選択し、OKをクリックします。
  2. DOE 1 > Specifications(スタディ仕様)ステップに進みます。
  3. ワークエリア内でMode(モード)をFull Factorial(完全要因)にセットします。
  4. Levels(水準)タブをクリックし、各入力変数の水準の数値を5に変更します。
    10.


  5. Apply(適用)をクリックします。
  6. DOE 1 > Evaluate(評価)ステップに進みます。
  7. Evaluate Tasks(計算実行)をクリックします。
  8. DOE 1 > Post Processing(ポスト処理)ステップに進みます。
  9. Summary(サマリー)タブをクリックします。
  10. Volume列上を右クリックしてコンテキストメニューから昇順を選択し、体積(最小化されるべきであった)に基づき実行データを並び替えます。制約条件(周波数 > 32)を満足する最小の体積の設計は、最適化エンジンにより見出されたものと同じです。
    注: DOEは、すべての組み合わせを網羅するために125のソルバーコールを行い、8個のソルバーコールで最適化が見つかりました。
    11.