Tunny Icon
TunnyDocs

The next-gen Grasshopper optimization tool.

Optimize タブ

このセクションでは、Optimize タブの各機能を紹介します。

image

① クイックアクセス

左側のアイコン を押すと、新しい結果保存ファイルを指定できます。右側のアイコン を押すと、 既存の結果保存ファイルを開くことができます。

.../fish.log と表示されている部分は、現在の結果保存ファイルのパスを示しています。

... Mode と表示されている部分は、現在の最適化モードを示しています。目的関数の種類や制約条件の有無に 応じて自動的に調整され、適用可能な最適化手法のみが有効になります。

② Optimize タブ

利用可能な最適化手法の一覧です。利用できる最適化手法は最適化モードによって異なります。 手法の選択ガイドラインについては、サンプラーの選び方 をご参照ください。

③ トライアル数

トライアルの反復回数を設定します。GA とその他の最適化手法ではトライアル数の表示形式が異なります。

GA ベースの手法では、Wallacei や Galapagos と同様に世代数と 1 世代あたりの個体数を指定します。 それ以外の手法では、トライアルの合計数を指定します。

トライアル数 に「負の整数」または「inf」を設定すると、最適化が無制限に継続されます。

最適化時間が Timeout の制限を超えた場合、最適化は停止します。

④ Study

最適化トライアルの集合を表すスタディの設定を構成します。

新しいスタディを作成する際は、Create New で名前を指定します。AUTO を設定すると名前が自動生成されます。

InMemory にチェックを入れると、最適化中は結果をメモリに保存し、すべての最適化が完了した後に結果ファイルへ 書き出します。これにより、このオプションを使用しない場合と比べて最適化が高速に実行されます。ただし、 最適化中は結果が保存されないため、途中で中断した場合は結果を確認できなくなります。最適化が正常に完了すると、 結果をファイルに保存するかどうかの確認ダイアログが表示されます。

Continue を使用すると、既存のスタディを再開できます。既存の結果に基づいて最適化を継続したい場合は、 このオプションにチェックを入れ、Existing Study コンボボックスから継続したいスタディを選択してください。

Copy は対象のスタディのコピーを作成し、新しい名前で継続します。

⑤ その他の設定

最適化を高速化するために、レンダリングを停止したり、冗長なサンプリングを防いだりする設定ができます。 最適化が不安定になる可能性があるため、デフォルトでは無効になっています。

⑥ 実行・停止ボタン

最適化の開始と終了を操作できます。

停止ボタンを押すと、Tunny は設定ファイルが保存されている .tunny_env フォルダ内に quit.fishing という名前の空ファイルを作成します。このファイルの存在が、Tunny が最適化を停止すると判断するための 条件となっています。

そのため、Tunny UI がフリーズした場合は、quit.fishing ファイルを手動で作成することで 最適化プロセスを停止できます。

⑦ サンプラー詳細設定

Tunny は Optuna のサンプラーをそのまま使用しています。各サンプラー設定の値については、 以下の表に記載されている Optuna のサンプラーページをご参照ください。

ほとんどの場合、デフォルト設定で要件を満たすか、それ以上の性能が得られます。

NSGA-II、SPEA-II、HypE では、一般的な最適化戦略のプリセット設定ボタンが用意されています。 Exploitation Default プリセットは既知の優良な領域を絞り込むことに重点を置き、Exploration Default は探索空間の新しい領域の発見を優先します。NSGA-II については、Wallacei のデフォルト設定に合わせた プリセットも利用できます。ただし、これは実装の完全な複製ではなく、できるだけ近い設定を目指したものです。

名前 リンク
AUTO Sampler https://hub.optuna.org/samplers/auto_sampler/
TPE https://optuna.readthedocs.io/en/stable/reference/samplers/generated/optuna.samplers.TPESampler.html
cTPE https://hub.optuna.org/samplers/ctpe/
GP-Optuna https://optuna.readthedocs.io/en/stable/reference/samplers/generated/optuna.samplers.GPSampler.html
GP-BoTorch https://optuna-integration.readthedocs.io/en/stable/reference/generated/optuna_integration.BoTorchSampler.html
GP-Preferential https://optuna-dashboard.readthedocs.io/en/stable/_generated/optuna_dashboard.preferential.samplers.gp.PreferentialGPSampler.html#optuna_dashboard.preferential.samplers.gp.PreferentialGPSampler
HEBO https://hub.optuna.org/samplers/hebo/
TuRBO https://hub.optuna.org/samplers/turbo/
CARBO https://hub.optuna.org/samplers/carbo/
Robust GP https://hub.optuna.org/samplers/robust_gp/
NSGA-II https://optuna.org/samplers/nsgaii_with_initial_trials/
NSGA-III https://optuna.readthedocs.io/en/stable/reference/samplers/generated/optuna.samplers.NSGAIIISampler.html
MOEA/D https://hub.optuna.org/samplers/moead/
DE https://hub.optuna.org/samplers/differential_evolution/
SPEA-II https://hub.optuna.org/samplers/spea2/
HypE https://hub.optuna.org/samplers/hype/
CMA-ES https://optuna.readthedocs.io/en/stable/reference/samplers/generated/optuna.samplers.CmaEsSampler.html
MO-CMA-ES https://hub.optuna.org/samplers/mocma/
PSO https://hub.optuna.org/samplers/pso/
GreyWolf https://hub.optuna.org/samplers/grey_wolf_optimization/
Whale https://hub.optuna.org/samplers/whale_optimization_algorithm/
Random https://optuna.readthedocs.io/en/stable/reference/samplers/generated/optuna.samplers.RandomSampler.html
QMC https://optuna.readthedocs.io/en/stable/reference/samplers/generated/optuna.samplers.QMCSampler.html
BruteForce https://optuna.readthedocs.io/en/stable/reference/samplers/generated/optuna.samplers.BruteForceSampler.html

⑧ 目的関数の設定

目的関数の名称と最適化の方向を表示します。デフォルトでは最小化に設定されています。最大化したい場合は Max にチェックを入れてください。

⑨ 変数の設定

各変数の設定を確認できます。

LowHighStep は NumberSlider の設定を表示します。TunnyValueList を使用したカテゴリカル変数の場合、 これらの設定は表示されません。

デフォルトでは線形スケールでサンプリングが行われます。LogScale にチェックを入れると対数スケールで サンプリングされます。

線形スケール は値の範囲が明確な場合に変数をそのままの値として使用し、対数スケール は変数を log(x) に変換することで複数のオーダーにまたがる探索を効率的に行います。

⑩ ライブチャート

最適化結果をリアルタイムで可視化できます。コンボボックスから選択することで軸の値を変更できます。 単目的最適化を使用している場合、2 つ目のライブチャートはデフォルトで無効(チェックなし)になっています。