チュートリアル#
Cross-layer
具体的な最適化シナリオに対する実装例を示します。 単目的、多目的、制約、混合変数など、目的に合うページを選べます。 シナリオごとの実装例であり、構成の深さを前提にしません。
最適化シナリオ#
単目的最適化
アルゴリズム、サロゲートモデル、評価戦略を選び、評価コストの高い単目的問題をminimize()で解きます。
多目的最適化
目的間にトレードオフのある問題を解き、パレートフロントを抽出します。
制約付き最適化
不等式制約を定義し、実行不可能解の扱い方を制御します。
混合変数最適化
連続変数に加えて整数変数、カテゴリ変数を含む問題を解きます。
動的な切り替え
サロゲートの予測精度に応じて、評価戦略やSurrogateManagerを実行中に切り替えます。
再現性とチェックポイント
長時間実行する最適化を再現可能かつ再開可能にします。
進捗のログ記録
標準のloggingモジュールで、最適化の進捗を記録します。
外部ライブラリとの連携
アダプターを通じて、scikit-learnとPyTorchのモデルをサロゲートとして、pymooの演算子、アルゴリズム、問題を組み込みます。
構成と制御#
ビルトインコンポーネントの選択、低レベルAPIの構成、実行経路へのHookやCallbackの追加を扱います。 詳細な内容は各ガイドで扱い、ここでは概要とリンクを示します。
ビルトインコンポーネントを選んで差し替える
責務に対応するビルトインコンポーネントを選びます。
Optimizerを低レベルAPIで組み立てる
サロゲート込みの完全な構成、終了条件の組み合わせ、iterate() による世代ごとの取得を扱います。
Hook、Stage、Callbackを選ぶ
実行経路への追加と観測を選びます。
高レベルAPIで最適化を実行する
高レベルAPIを使った最適化の実行とResultの読み方を確認します。
独自Componentを実装する
既存の契約に沿った独自Componentを実装し、登録してテストします。外部Operatorのnative移植も扱います。