Skip to main content
QUICK REVIEW

[論文レビュー] PySCIPOpt-ML: Embedding Trained Machine Learning Models into Mixed-Integer Programs

Mark Turner, Antonia Chmiela|arXiv (Cornell University)|Dec 13, 2023
Formal Methods in Verification被引用数 4
ひとこと要約

PySCIPOpt-ML は、ニューラルネットワーク、ツリー集合、線形モデルなどの訓練済み機械学習モデルを自動的に混合整数計画法(MIP)に定式化するオープンソースの Python パッケージです。SCIP を介して ML 予測子を MIP にシームレスに統合できるようにし、数値的安定性と幅広いフレームワーク互換性に重点を置いています。また、埋め込まれた ML 制約を持つ半現実的 MIP インスタンスのライブラリである SurrogateLIB を提供しています。

ABSTRACT

A standard tool for modelling real-world optimisation problems is mixed-integer programming (MIP). However, for many of these problems, information about the relationships between variables is either incomplete or highly complex, making it difficult or even impossible to model the problem directly. To overcome these hurdles, machine learning (ML) predictors are often used to represent these relationships and are then embedded in the MIP as surrogate models. Due to the large amount of available ML frameworks and the complexity of many ML predictors, formulating such predictors into MIPs is a highly non-trivial task. In this paper, we introduce PySCIPOpt-ML, an open-source tool for the automatic formulation and embedding of trained ML predictors into MIPs. By directly interfacing with a broad range of commonly used ML frameworks and an open-source MIP solver, PySCIPOpt-ML provides a way to easily integrate ML constraints into optimisation problems. Alongside PySCIPOpt-ML, we introduce, SurrogateLIB, a library of MIP instances with embedded ML constraints, and present computational results over SurrogateLIB, providing intuition on the scale of ML predictors that can be practically embedded. The project is available at https://github.com/Opt-Mucca/PySCIPOpt-ML.

研究の動機と目的

  • 従来の MIP 定式化が変数間の非線形性や不完全な依存関係により不可能となる、現実世界の最適化問題における複雑または未知の関係を扱うための課題に対処すること。
  • 数値的安定性と解のロバストネスを保持する同等の MIP 制約に、人気フレームワークの訓練済み ML モデルを自動的に変換する統一的で自動化されたツールを提供すること。
  • SCIP ソルバーへの直接統合により、ニューラルネットワーク、勾配ブースティング木、線形モデルを含む幅広い ML モデルを MIP 内で使用可能にする。
  • 再現可能で拡張可能な、ML 制約を埋め込んだ MIP インスタンスのライブラリを構築し、機械学習強化最適化分野のベンチマークと研究を支援すること。

提案手法

  • Scikit-Learn、XGBoost、LightGBM、PyTorch と直接インターフェースを接続し、訓練済みモデルを抽出して、区分線形近似と big-M 制約を用いて自動的に同等の MIP 定式化を生成する。
  • ニューラルネットワークに対しては、ReLU 活性化関数に基づく混合整数プログラミング定式化を採用し、非線形性を離散的制約(disjunctive constraints)でモデル化しながら数値的安定性を確保する。
  • ランダムフォレストや勾配ブースティング木などのツリー型モデルに対しては、分枝限定法(branch-and-bound)スタイルの定式化を用い、各意思決定パスをバイナリ変数と論理制約の集合として表現する。
  • 回帰および分類タスクの両方をサポートし、出力変数を MIP 決定変数とタイトでソルバーに優しい制約で結びつける。
  • オープンソースの SCIP MIP ソルバーと統合され、ML サロゲート制約を含む MIP の効率的解法が可能になる。
  • SurrogateLIB ライブラリは、実世界のデータ(例:自動車販売データ)を用いてベースとなる最適化問題(例:自動車設計)をパラメータ化することで生成され、均質的ではあるが多様な複雑性のインスタンスが得られる。
Figure 1: How trained ML predictors can be automatically formulated as MIPs and embedded in an optimisation problem using our Python package PySCIPOpt-ML.
Figure 1: How trained ML predictors can be automatically formulated as MIPs and embedded in an optimisation problem using our Python package PySCIPOpt-ML.

実験結果

リサーチクエスチョン

  • RQ1多様なフレームワークからの訓練済み機械学習モデルを、自動的かつ強固に混合整数計画法に統合する方法は何か?
  • RQ2ML 予測子を最適化モデルに統合する際、数値的安定性と効率的な解法を保証する MIP 定式化戦略は何か?
  • RQ3一貫した MIP フレームワーク内で、深層ニューラルネットワーク、ツリー集合、線形モデルを含む幅広い ML モデルを統合できる統一ソフトウェアツールは存在するか?
  • RQ4ベンチマークと研究を目的として、系統的に生成可能な、現実的で半合成的な ML 制約を埋め込んだ MIP インスタンスはどのように生成できるか?
  • RQ5ML サロゲートの統合が、複雑または未知の関係を有する現実世界の応用において、MIP のモデリング能力をどの程度向上させるか?

主な発見

  • PySCIPOpt-ML は、ReLU、シグモイド、tanh 活性化関数を有するニューラルネットワーク、および XGBoost、LightGBM、Scikit-Learn からのツリー型モデルを含む多様な ML モデルの自動 MIP 定式化を成功裏にサポートしている。
  • このツールは、SCIP を介して ML 予測子を MIP にエンドツーエンド統合可能であり、数値的安定性を高め、ソルバーの収束問題を回避するように設計された定式化を提供している。
  • SurrogateLIB ライブラリは、実世界の自動車設計問題を元に、歴史的自動車販売データを用いて生成された 100 以上の半現実的 MIP インスタンスを提供している。
  • ReLU をベースにしたニューラルネットワークの定式化は、各ニューロンの区分線形挙動を離散的制約でモデル化する混合整数表現を用いて実現されている。
  • このパッケージは回帰および分類タスクを両方サポートし、出力変数がタイトな制約ベースのマッピングを通じて MIP 決定変数と結びつけられている。
  • このツールはオープンソースであり、https://github.com/Opt-Mucca/PySCIPOpt-ML で利用可能で、SurrogateLIB は https://zenodo.org/records/10357875 で入手可能である。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。