Output タブ
このセクションでは、Output タブの各機能を紹介します。 Tunny の Output 画面は、Wallacei からインスピレーションを受けて設計されています。
最適化を実行すると、指定したトライアル数だけの解が結果ファイルに残ります。 ですが、実際に設計へ持ち帰りたいのは、そのうちのごく一部であることがほとんどです。 そのため Output タブは、候補を集めてから絞り込んでいく流れで構成されています。 まず ③ から ⑥ の機能で候補トライアルを一覧に集め、次に ⑦ でその中から出力するものを選び、最後に ⑧ で Grasshopper へ、⑨ と ⑩ で表とチャートへ出力します。
① リスト出力 - 選択
出力モードは 1 種類のみです。 ユーザーの選択に基づいて出力を選択する画面が表示されます。
② Target Study
出力するスタディ名を選択します。
1 つの結果保存ファイルには、Optimize タブの Create New や Copy
で作成した複数のスタディが入ります。
以降の操作はすべてここで選んだスタディが対象になるため、候補を集め始める前に、まず対象を合わせておいてください。
③ トライアル番号を使用
このグループでは、トライアル番号を直接入力して出力設定を構成します。
番号を入力後に Add to List
をクリックすると、右側のリストに追加され、出力候補として利用できるようになります。
Reinstate Sliders をクリックすると、入力した番号がトライアルの値として
Grasshopper のスライダーに反映されます。 スライダーが動くことで Grasshopper
の定義が再計算されるため、その解の形状をキャンバス上でそのまま確認したり、続きのモデリングの出発点として使ったりできます。
Optuna Dashboard や Visualize タブのプロットで気になるトライアルを見つけたときは、その番号を控えてここに入力するのが、もっとも手数の少ない確認方法になります。
④ グループ追加
このボタングループを使用すると、特定のグループを出力候補リストに追加できます。
Allはすべてのグループを追加します。Pareto Frontはパレートフロント上の個体を追加します。Feasibleはすべての制約条件を満たす実行可能解を追加します。
多目的最適化では 1 つの目的だけを見て優劣を決められないため、まず Pareto Front
でほかの解に劣っていない解だけを集め、そこから比較していくのが基本的な進め方になります。
制約条件を設定している場合は、Feasible
を使うことで、制約を満たさない解を最初から候補から外せます。
ですが、制約を満たさない解も、どの程度外れているかがわかれば条件の見直しの材料になります。 完全に排除してしまうのではなく、どの程度なら許容できるか、ほかの部分で対応できるかといった実務的な判断の材料として扱うことをおすすめします。
⑤ Dashboard 選択を使用
このボタングループでは、Optuna Dashboard を使用して出力するトライアルを選択できます。
Open Dashboardは Optuna Dashboard を起動します。Load Selection CSVは Optuna Dashboard からエクスポートされた選択トライアルを含む CSV ファイルをインポートするために使用します。
トライアル数が数百を超えてくると、番号を 1 つずつ入力するのは現実的ではありません。 そのような場合は、グラフ上で範囲を指定して選べるこちらの方法が便利です。 具体的な手順は、本ページ末尾の「Optuna Dashboard でのトライアル選択方法」で紹介します。
⑥ TT-DesignExplorer を使用
このボタングループでは、TT-DesignExplorer を使用して出力するトライアルを選択できます。
Open DesignExplorerは TT-DesignExplorer を起動します。Load Selection CSVは TT-DesignExplorer からエクスポートされた選択トライアルを含む CSV ファイルをインポートするために使用します。
どちらのツールも CSV ファイルを経由して Tunny に取り込む形なので、選択そのものはブラウザ上で完結します。
⑦ 候補トライアル一覧
候補解がここに表示されます。 リストに追加された項目の目的関数値と変数値の両方を確認できます。 どの変数の組み合わせでその性能が出ているのかが、並んで表示されます。 目的関数の値が近い解どうしを見比べることで、効いている変数の見当をつけられます。
左側のチェックされた項目は、テーブル下部のボタンの対象になります。
Add Output Trial Listはチェックされた個体を右側の出力トライアルリストに追加します。Remove Selectionはチェックされた個体をリストから削除します。Clear Listはリストからすべてのトライアルを削除します。
⑧ 出力対象トライアル
操作方法は候補トライアル一覧と同様です。
チェックボックスにチェックを入れて Output Selection
を押すと、選択されたトライアルが Grasshopper の Tunny コンポーネントの Fishes
出力として出力されます。 出力された Fishes は、Fish Market
コンポーネントにつなぐことで Rhino のビューポートに並べて表示でき、Deconstruct
Fish コンポーネントを使えば個々の値を取り出せます。
ここではじめて、最適化の結果が Grasshopper 側で扱えるデータになります。 Output
タブでのここまでの操作は、この出力を作るための絞り込みだと考えるとわかりやすくなります。
⑨ 出力分析テーブル
リストに追加されたトライアルを分析するためのテーブルです。
対象リストを選択して Generate
をクリックすると、そのリスト内のトライアルが表示されます。 このテーブルは Excel
と互換性があり、テーブルをコピーして Excel に直接貼り付けることができます。
結果ファイルを直接開かなくても、数値をそのまま持ち出せます。 比較検討の資料や提出用の一覧表を Excel でまとめる場合に役立ちます。
⑩ 出力分析チャート
リストに追加されたトライアルを分析するチャートを作成できます。
対象リストと各軸に表示する値を選択し、Draw
を押すことでチャートを作成できます。
軸に取る値を変えながら見ていくことで、目的関数どうしのトレードオフや、変数と性能の関係を確認できます。
なお、Optuna が用意している可視化は Visualize タブにまとまっています。 絞り込んだ候補どうしを比べるならこちら、最適化全体の傾向をつかむなら Visualize タブ、というように使い分けてください。
Optuna Dashboard でのトライアル選択方法
実験的な機能ですが、Optuna Dashboard を通じて出力するトライアルを選択できるようになりました。 グラフ上で条件を指定して絞り込めるので、トライアル数が多い場合でも目的の解にたどり着きやすくなります。
まず、以下のように実験的機能の表示を有効にします。
次に、表示された Trials (Selection) インターフェースを使用して選択を行います。 Trials Selection ページには、Parallel Coordinate プロットが表示されます。 このグラフの任意の部分を選択すると、下部のパレートフロントプロットがダイナミックに更新されます。 色付きのトライアルが選択されたものです。
プロットの下には、選択されたすべてのトライアルをリストアップしたテーブルがあります。
テーブルの下部には Download CSV File
ボタンがあり、クリックすると選択されたトライアルがエクスポートされます。
最後に、生成されたこの CSV ファイルを Tunny
に読み込むことで、選択されたトライアルをユーザーインターフェースにインポートできます。
読み込みには、⑤ で紹介した Load Selection CSV を使用します。