[논문 리뷰] PySCIPOpt-ML: Embedding Trained Machine Learning Models into Mixed-Integer Programs
PySCIPOpt-ML은 신경망, 트리 앙상블, 선형 모델과 같은 훈련된 기계학습 모델을 혼합정수계획법(MIP)으로 자동으로 정식화하는 오픈소스 파이썬 패키지입니다. 이는 수치적 안정성과 다양한 프레임워크 지원을 중시하며, SCIP을 통해 MIP에 기계학습 예측기들을 원활하게 통합할 수 있도록 합니다. 또한, 임베디드된 기계학습 제약 조건을 가진 반현실적인 MIP 인스턴스 라이브러리인 SurrogateLIB를 도입합니다.
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 제약 조건으로 자동 변환할 수 있는 통합된 자동화 도구를 제공합니다.
- 신경망, 기울기 부스팅 트리, 선형 모델을 포함한 다양한 기계학습 모델을 SCIP 솔버와 직접 통합하여 MIP 내에서 사용할 수 있도록 지원합니다.
- 재현 가능하고 확장 가능한, 기계학습을 통한 최적화 연구를 위한 벤치마킹과 연구를 지원하는, 임베디드된 기계학습 제약 조건을 가진 MIP 인스턴스 라이브러리를 구축합니다.
제안 방법
- Scikit-Learn, XGBoost, LightGBM, PyTorch와 직접 인터페이스를 연결하여 훈련된 모델을 추출하고, 조각별 선형 근사와 big-M 제약 조건을 사용해 등가의 MIP 정식화를 자동으로 생성합니다.
- 신경망의 경우, ReLU 활성화 함수를 기반으로 한 혼합정수계획법 정식화를 사용하며, 비선형성을 모델링하기 위해 분할 제약 조건을 활용하여 수치적 안정성을 확보합니다.
- 랜덤 포레스트나 기울기 부스팅 트리와 같은 트리 기반 모델의 경우, 각 결정 경로를 이진 변수와 논리 제약 조건의 집합으로 표현하는 브랜치 앤 바운드 방식의 정식화를 사용합니다.
- 정식화는 회귀 및 분류 작업 모두를 지원하며, 출력 변수는 MIP 결정 변수와 밀도 높은, 솔버 友好的 제약 조건을 통해 연결됩니다.
- 오픈소스 SCIP MIP 솔버와 통합되어, 기계학습 대체 제약 조건을 포함한 MIP의 효율적 해를 제공합니다.
- SurrogateLIB 라이브러리는 실제 세계의 데이터로 기반 최적화 문제(예: 자동차 설계)를 파arameter화하여 생성되며, 동일한 구조이지만 다양하고 복잡도가 다른 인스턴스를 제공합니다.

실험 결과
연구 질문
- RQ1다양한 프레임워크에서 훈련된 기계학습 모델을 어떻게 자동으로 안정적으로 혼합정수계획법(MIP)에 통합할 수 있을까요?
- RQ2기계학습 예측기의 최적화 모델 통합 시 수치적 안정성과 효율적인 해법을 보장하는 MIP 정식화 전략은 무엇일까요?
- RQ3일관된 MIP 프레임워크 내에서 딥 신경망, 트리 앙상블, 선형 모델을 포함한 다양한 기계학습 모델을 통합할 수 있는 통합 소프트웨어 도구는 가능한가요?
- RQ4기계학습 제약 조건을 내장한 현실적인, 반합성적인 MIP 인스턴스를 체계적으로 생성하는 방법은 무엇일까요?
- RQ5기계학습 대체 제약 조건의 통합이, 복잡하거나 알 수 없는 관계가 존재하는 실제 응용 분야에서 MIP의 모델링 능력을 얼마나 향상시킬 수 있을까요?
주요 결과
- PySCIPOpt-ML은 ReLU, 시그모이드, 하이퍼볼릭 탄젠트 활성화 함수를 가진 신경망과 XGBoost, LightGBM, Scikit-Learn에서 유래한 트리 기반 모델을 포함한 다양한 기계학습 모델의 자동 MIP 정식화를 성공적으로 지원합니다.
- 이 도구는 수치적 안정성을 향상시키고 솔버 수렴 문제를 방지하기 위해 설계된 정식화를 통해, SCIP을 통한 ML 예측기의 엔드 투 엔드 통합을 가능하게 합니다.
- SurrogateLIB 라이브러리는 기존 자동차 판매 데이터를 활용해 실제 세계의 자동차 설계 문제에서 유도된 100개 이상의 반현실적인 MIP 인스턴스를 제공합니다.
- ReLU 기반 신경망의 정식화는 각 뉴런의 조각별 선형 행동을 분할 제약 조건을 통해 모델링하는 혼합정수 표현 방식을 사용합니다.
- 이 패키지는 정규화 및 분류 작업을 모두 지원하며, 출력 변수는 MIP 결정 변수와 조밀한 제약 기반 매핑을 통해 연결됩니다.
- 이 도구는 오픈소스이며, https://github.com/Opt-Mucca/PySCIPOpt-ML 에서 이용 가능하며, SurrogateLIB는 https://zenodo.org/records/10357875 에서 접근할 수 있습니다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.