0 / 0
영어 버전 문서로 돌아가기

Decision Optimization 노트북

마지막 업데이트 날짜: 2024년 11월 21일
Decision Optimization 노트북

Decision Optimization용 원시 Python API인 DOcplex를 사용하여 Python 노트북 에서 Decision Optimization 모델을 작성하고 실행할 수 있습니다. 여러 Decision Optimization 노트북 을 이미 사용할 수 있습니다.

Python 3.11 and 3.10 (deprecated)와 함께 Decision Optimization 을 사용할 수 있습니다. 다음 런타임은 CPLEX 엔진의 Community Edition 에 대한 액세스를 제공합니다. Community Edition 은 최대 1000개의 제약조건 및 1000개의 변수가 있는 문제점 또는 제약조건 프로그래밍 문제점에 대한 1000개의 1000개의 검색 공간이 있는 문제점을 해결하는 것으로 제한됩니다.
  • Runtime 24.1 on Python 3.11 S/XS/XXS
  • Runtime 23.1 on Python 3.10 (deprecated) S/XS/XXS
더 큰 문제점을 실행하려면 전체 CPLEX 상업판을 포함하는 런타임을 선택하십시오. Decision Optimization 환경 (DOcplex) 은 다음 런타임 (전체 CPLEX 상용 에디션) 에서 사용 가능합니다.
  • CPLEX 22.1.1.0이(가) 있는 NLP + DO runtime 24.1 on Python 3.11
  • CPLEX 20.1.0.1이(가) 있는 DO + NLP runtime 23.1 on Python 3.10 (deprecated)

환경 탭 을 사용하여 노트북 내의 환경 (런타임 및 Python 버전) 을 쉽게 변경할 수 있습니다 ( 노트북의 환경 변경참조). 따라서 최적화 모델을 공식화하고 하나의 환경에서 작은 데이터 세트로 테스트할 수 있습니다. 그런 다음 더 큰 데이터 세트를 사용하여 모델을 해결하기 위해 노트북 코드를 다시 쓰거나 복사하지 않고도 다른 환경으로 전환할 수 있습니다.

Decision Optimization 노트북 의 여러 예는 다음을 포함하여 자원 허브에서 사용 가능합니다.
  • 스도쿠 예제 - 9x9 스도쿠 그리드를 푸는 것이 목표인 제약 프로그래밍 예제.
  • 파스타 생산 문제점 예제, 일부 파스타 제품의 생산 비용을 최소화하고 제품에 대한 고객의 수요가 충족되도록 하는 것이 목표인 선형 프로그래밍 예제입니다.
이러한 예제 및 추가 예제는 DO-samplesjupyter 폴더에서도 사용 가능합니다.

모든 Decision Optimization 노트북DOcplex를 사용합니다.

docplex

Decision Optimization 노트북Decision Optimization 문제점을 모델링하고 해결하기 위해 원시 Python API인 DOcplex를 사용합니다. API는 기본적으로 Python 환경의 일부로 사용 가능합니다.

이는 다음 두 개의 모듈로 구성되어 있습니다.
  • docplex.mp 를 사용하는 Python 에 대한 수학적 프로그래밍 모델링
  • docplex.cp 를 사용하는 Python 용 제약조건 프로그래밍 모델링
사용자의 코드에서 예를 들어 수리 계획 라이브러리의 경우 다음과 같이 사용할 라이브러리를 지정할 수 있습니다.
from docplex.mp.model import Model

API는 Apache License V2.0에서 라이센스가 부여되며 numpy/pandas 친화적입니다.

전체 rawgit에 대한 DOcplex API 문서를 읽을 수 있습니다. Decision Optimization GitHub에서 DOcplex 예제를 찾을 수 있습니다.

Decision Optimization 클라이언트 API

DOcplex외에도 Decision Optimization 클라이언트 API를 사용하여 시나리오를 작성하고 Decision Optimization 실험 UI에서 작성된 모델을 처리할 수 있습니다. 예를 들어 여러 Decision Optimization 시나리오 생성하기를 참조하세요.

Decision Optimization 클라이언트 API 문서를 참조하십시오. DO-samplesjupyter 폴더에서 이전 예제를 찾을 수도 있습니다.

Decision Optimization 노트북 실행

제한조건 프로그래밍 또는 선형 프로그래밍에 관심이 있는지 여부에 따라 이전에 제공된 두 개의 노트북 중 하나를 선택하고 다음과 같이 실행하십시오.

watsonx.ai에 이미 프로젝트가 있는 경우:
  1. 자원 허브에서 작업할 노트북 을 여십시오.
  2. 프로젝트를 이미 작성한 경우 프로젝트에 추가를 클릭하십시오.
  3. 드롭다운 목록에서 기존 프로젝트를 선택하고 runtime(예: Python 3.11에서 Runtime 24.1 XS(또는 CPLEX 엔진의 상용 버전이 필요한 더 큰 모델의 경우 DO + NLP 런타임 24.1(Python 3.11 XS)를 선택하고 생성를 클릭합니다. 노트북 이 프로젝트에 추가됩니다.

아직 프로젝트가 없는 경우, 다운로드 단추 다운로드 단추 를 클릭하여 컴퓨터에 예제를 다운로드하십시오.

  1. 새 프로젝트 작성: 메뉴에서 프로젝트 > 모든 프로젝트 보기 를 선택하고 새 프로젝트 단추를 클릭하십시오.
  2. 빈 프로젝트 작성 을 선택하고 열리는 창에서 이름을 입력하고 작성을 클릭하십시오.
  3. 자산 탭을 선택하십시오.
  4. 모델에 대한 작업 섹션에서 새 자산 > Python 또는 R 노트북에서 데이터 및 모델에 대한 작업 을 선택하십시오.
  5. 로컬 파일을 선택하십시오. 그런 다음 파일 끌어서 놓기 또는 업로드 를 클릭하고 컴퓨터에서 노트북 을 찾아보십시오.
  6. 노트북 작성을 클릭하십시오. 노트북 이 프로젝트에 추가됩니다.
노트북 이 자동으로 열립니다.

노트북을 실행하려면 셀 > 모두 실행을 누르십시오.

예제 Python 노트북Decision Optimization GitHub에서 제공됩니다. 이 노트북을 사용하려면 Jupyter 노트북 샘플을 참조하십시오. 이러한 예에서는 실험 UI를 사용하지 않습니다.

또한 다중 시나리오를 생성하는 방법과 무작위 데이터를 사용하는 방법을 보여주는 Python 노트북DO-samplesjupyter 폴더에 제공됩니다. 이 접근 방식은 다른 데이터 세트를 사용하여 실험 UI 에서 작성된 모델을 테스트하는 데 유용할 수 있습니다. 자세한 정보는 다중 시나리오 생성을 참조하십시오.

Decision Optimization 튜토리얼

DOcplex 예제에서 DOcplex Python API를 소개하는 더 많은 Decision Optimization GitHub: 예제를 확인할 수 있습니다

선형 프로그래밍
선형 프로그래밍 (CPLEX 파트 1) 학습서에서 이 노트북 에 대한 자세한 설명을 읽을 수 있습니다. 이 Github의 Decision Optimization 선형 계획법 노트북를 복제하거나 다운로드할 수 있습니다.
선형 프로그래밍 이상
선형 프로그래밍 (CPLEX 파트 2) 학습서에서 이 노트북 에 대한 자세한 설명을 읽을 수 있습니다. 이 Github의 Decision Optimization Beyond Linear Programming 노트북를 복제하거나 다운로드할 수 있습니다.
Python 용 CPLEX에서 스케줄링 시작하기
노트북 에 대한 자세한 설명은 이 Python 학습서에서 읽을 수 있습니다. 이 Github에서 Python 용 CPLEX 노트북 에서 스케줄링 시작하기를 복제하거나 다운로드할 수 있습니다.