TECHNICAL KNOWLEDGEBASE

2023-02-02

パラメトリック最適化入門

VirtualLab Fusion のパラメトリック最適化によりユーザーは Optical Setup に非線形最適化アルゴリズムを適用することができます。ここでは最適化の構成から結果の出力までを案内します。この事例ではさまざまなオプションと設定について説明しています。現在は三つのローカル最適化アルゴリズムと、一つのグローバル最適化アルゴリズムが含まれています。

パラメトリック最適化

Parametric Optimizationは有効なディテクタ、またはアナライザを経由して最適化する数値を出力するOptical Setupに対して生成できます。

Parametric Optimizationは、下記の手順で確認できます。

  • リボンバー Optical Setup > New Parametric Optimization 
  • ショートカット "Ctrl + T"
  • Optical Setup Editor の Tools ボタン

パラメータ選択

パラメータリスト経由で、ユーザーは最適化でどのパラメーターを考慮するかを選択することができます。少なくとも一つ選択する必要があります。

概観しやすくするためのいくつかの機能
  • 行ヘッダーをクリックすると、リストの折りたたみや展開ができます。
  • 可変パラメータのみが表示されるように選択できます。
  • 元の値が常に表示されます。

ディテクタの仕様

下記のいずれかを用いて、光学系に応じた最適化を実行できます。

  • 特定のシミュレーションエンジンとディテクタ
  • アナライザ

※ディテクタとアナライザはそれぞれ、Open をクリックすると編集できます。

制約の仕様

このページでユーザーは、以下に対する制約タイプとそれに関連する値を指定できます。
  • 光学系の選択された自由パラメータ
  • ディテクタまたはアナライザによって計算されるすべてのメリット関数
  • 自由パラメータに依存して直接変更することができない、一般的な構造の量の取り得る範囲

Update をクリックすると、自由パラメータの設定された Start Value が設定された光学系シミュレーションが始動されます。
結果として得られるメリット関数(つまり初期値) が表示されるとともに

  • 最適化への寄与率(関連性または優先度)が表示されます。
  • 一般的なメリット関数値 = Target Function Value 、すべての制約の加重和として定義されます。

重みと寄与率

デフォルトの重みは 1 です。これらは、テーブル内で 直接変更したり、 Tools オ プションを使用して変更することもできます。

たとえば、すべての寄与率を一律に設定することも、 一つの制約に対して明確な割合を割り当てることもできます。

最適化後、その後の最適化のStart Valueとして最適化された値を設定することができます。

最適化方法の選択

提供されているすべての最適化は、Target Function Value を最小化することを目的としています。

1. 最適化方法の選択(ローカルまたはグローバル)

2. ローカル最適化設定の定義

    • 最適化アルゴリズムの選択
    • Maximal Number of Iterations に達する*か、 最後のシミュレーションステップからの偏差が、 Maximum Tolerance よりも小さくなる**とアル ゴリズムは停止します。
    • Initial Step Width Scale Factor を使用すると、Start Values から、すべての自由パラメータの最初の反復試行時の値までのステップ幅がス ケールされます。すなわち、初期設定を中心として探索領域が制御され、例えば、より高い値によって、極小値から飛び出す可能性があります。
      * 結果として得られる表には、より多くの反復計算結果が記載されることがあります。これは、一部の最適化アルゴリズムが中間の結果も示すことが あることに由来します。
      **経験則としてMaximum Tolerance 値は初期の Target Function Value よりも、約 4~5 倍小さい値に設定します。

3, グローバル最適化設定の定義

ローカル最適化とグローバル最適化

ローカル最適化アルゴリズムは高速ですが、グローバル最小値を求められるかは、しばしば初期値の選択に強く依存します。したがって、良い初期値を把握していない場合には、グローバル最適化が望ましいです。

ローカル最適化のアルゴリズム

現バージョンでは、多変量関数を最小化するための3つの非線形ローカルアルゴリズムが提供されています:

  • Nelder & Mead による Downhill Simplex Method
    高速に収束するわけではありませんが、単純でロバストな方法です。典型的には 6 未満の自由パラメータに適切です。
  • Powell’s (direction set) Method
    より多くの自由パラメータに適している可能性があります(>10)。
  • Levenberg-Marquardt Algorithm
    Gauss-Newton アルゴリズムと勾配降下法の間を補間します。多くの場合、最終的な最小値から非常に遠く離れたところから始まっても解を見つ けることができます。収束する可能性はありますが、保証はされていません。

すべてのローカル最小化アルゴリズムは、極小値にはまるリスクがあります。このリスクを最小限に抑えるために、Initial Step Width Scale Factorを大きくする、異なる初期条件で開始する、グローバル最適化アルゴリズムを使用するなどの方法があります。

* 参考文献: https://en.wikipedia.org/wiki/Levenberg%E2%80%93Marquardt_algorithm(Link) 2021-10-13

グローバル最適化のアルゴリズム

VirtualLab Fusion はグローバル最適化に Simulated Annealing* を提供します。これは現在値にランダムな温度項 t を追加することで、目標関数のグローバル最小値の近似探索**を可能にします。

ここで r は 0 から 1 の間のランダム値、T は温度です。これは調整可能な Start Temperature や Number of Annealing Steps を含むアニーリング工程に従って徐々に減少します。

グローバル探索の成果は、Start Temperature と Number of Annealing Steps で選択した値に大きく依存します。Start Temperature が低すぎると、アルゴリズムが極小値の周囲にはまる可能性があります。一方、温度が高すぎるとすでに検出された最小値の周囲から「飛び出してしまう」確率が高くなります。

* このグローバル最適化アルゴリズムの名称とそのパラメータは、賢明な冷却過程を選択することで最適に近い低エネルギー状態に達する、冶金学における焼きなましのアノロジーです。
** 通常は最小値に対する近似解をもたらします。しばしば十分であるか、あるいは後続のローカル探索に使用できます。

最適化の結果

最終テーブルには、パラメータと関連する結果が表示されます。
一部の最適化アルゴリズム(Downhill Simplex など)では、実際に制約が容認されません。その代わりにペナルティルールが適用されます。現在では設定した制約から超過したパラメータに起因する結果のセルは全て空欄になります。

文書情報

タイトル パラメトリック最適化入門
文書コード MISC.0090
バージョン 1.0
ソフトウェア VirtualLab Fusion Basic Edition
使用したバージョン 2021.1 (Build 1.180)
カテゴリー Feature Use Case
参考資料