Tunny Icon
TunnyDocs

The next-gen Grasshopper optimization tool.

分析ワークフロー

このページでは、推奨する分析ワークフローを順を追って説明します。

各ステップでは、使用するウィジェットと、そのウィジェットが用いる手法の理論ページへのリンクを併せて示します。

初めて最適化結果を分析するときは、ステップ 1、2、6 だけでも十分です。 ステップ 3、4、5 は、より深く分析するときに使います。

flowchart TD
    s1["1. Dashboard にデータを読み込む"] --> s2["2. 全体像を掴む"]
    s2 --> s3["3. 分布と相関を把握する"]
    s3 --> s4["4. 効いているパラメータを特定する"]
    s4 --> s5["5. 結果の形を見る"]
    s5 --> s6["6. 良いトライアルを選ぶ"]
    s6 --> s7["7. 選んだ設計案を検証する"]
    s7 --> s8["8. さらに探索する(任意)"]
    s8 -. "新しい候補を次の最適化へ" .-> s1
    s2 -. "まずは結果が欲しい場合" .-> s6

1. Dashboard にデータを読み込む

分析したい最適化結果を開きます。 ダッシュボードは Optuna のストレージファイル(Journal、SQLite、PostgreSQL、MySQL)を直接読み込めるため、変換は不要です。


2. 全体像を掴む

詳細な分析に入る前に、そもそも最適化がうまくいったのかを確認します。

単目的最適化の場合

  • Trial TableOptimization History で結果を眺め、トライアルの数と目的関数の改善傾向を確認します。
  • 目的関数がトライアル数の増加とともに改善しているかを見ます。改善していなければ、最適化はうまくいっていません。

多目的最適化の場合

  • Convergence Indicators チャートで収束状況を確認します。
  • このチャートでは、Hypervolume、IGD+、ε-indicator、R2 の 4 指標を共通スケールで追跡でき、複数の Study も比較できます。指標の選び方と定義は同ページを参照してください。
  • 結果の線が平坦にならず増加(または減少)し続けているなら、最適化にはまだ改善の余地があります。

3. 分布と相関を把握する

パラメータと目的関数がどう分布し、互いにどう関係しているかを把握します。


4. 効いているパラメータを特定する

Importance Chart で、各目的関数に対するパラメータの影響度をランク付けします。 次の 2 段階で進めるのがおすすめです。

  1. まず SpearmanRidge の結果を確認
    • どちらも高速で、符号付き(影響の方向が分かる)です。ただし線形を前提とするため、交互作用や非線形性は考慮しません。
  2. 交互作用や非線形性を確認
    • Sobol(交互作用)、SHAP(説明可能性)、Permutation(安定性)などによって、より精度の高い影響度を確認できますが、計算コストが高くなります。

手法の比較と使い分けは、選択ガイドを参照してください。


5. 結果の形を見る

どのパラメータが効くか分かったら、次は、それが目的関数へどう影響するかを見ます。

サロゲートモデルの選択(Ridge、Random Forest、GP 系)には、速度と表現力のトレードオフがあります。 詳細は、モデル比較を参照してください。


6. 良いトライアルを選ぶ

トライアルを、実際に採用する設計案まで絞り込みます。


7. 選んだ設計案を検証する

計算上は最適値でも、実際の設計では製作誤差や環境変動によって性能が変わることがあります。

  • 入力ノイズに対する安定性は、Robustness ウィジェットで確認します(サロゲート上のモンテカルロによるノイズ伝播)。
  • 設計空間に複数の領域がありそうなら、クラスタリング(k-means階層クラスタリングPCA BiplotSOM Map)で、候補が孤立した外れ値でないことを確認します。詳しくはクラスタリング概要を参照してください。

8. さらに探索する(任意)

十分なトライアルが見つからないときは、Surrogate Optimizer を使い、学習済みモデル上で有望な新候補を探索できます。 すでに得られているトライアルよりさらに改善が見込める領域を、実際の評価を追加せずに探せます。