CPLEX
| 개발자 | IBM |
|---|---|
| 안정화 버전 | 22.1.2[1]
|
| 종류 | 기술 컴퓨팅 |
| 라이선스 | 사유 |
| 웹사이트 | www |
IBM ILOG CPLEX Optimization Studio는 흔히 단순히 CPLEX라 불리는 IBM의 수학적 최적화 소프트웨어 패키지이다.
역사
[편집]CPLEX 옵티마이저는 C 프로그래밍 언어로 구현된 단순법의 이름을 따서 명명되었다. 그러나 오늘날에는 다른 종류의 수학적 최적화도 지원하며 C 외의 인터페이스도 제공한다. 이 소프트웨어는 원래 로버트 E. 빅스비가 개발하여 1988년 CPLEX Optimization Inc.에서 상업적으로 판매했다. 이 회사는 1997년 ILOG에 인수되었고, ILOG는 2009년 1월 IBM에 인수되었다.[2] CPLEX는 IBM에 의해 계속해서 활발하게 개발되고 있다.
기능
[편집]IBM ILOG CPLEX 옵티마이저는 정수 계획법 문제, 매우 큰[3] 선형 계획법 문제를 단순법의 원시 또는 이중 변형 또는 장벽 내점법을 사용하여 해결하며, 볼록 및 비볼록 2차 계획법 문제, 그리고 볼록 2차 제약 문제(SOCP, 2차 원뿔 계획법을 통해 해결)를 해결한다.
CPLEX 옵티마이저에는 C++, C 샤프, 자바 언어에 대한 인터페이스를 제공하는 Concert라는 모델링 계층이 있다. C 인터페이스를 기반으로 하는 파이썬 언어 인터페이스도 있다. 마지막으로, 디버깅 및 기타 목적을 위해 독립 실행형 대화형 옵티마이저 실행 파일이 제공된다.
CPLEX 옵티마이저는 AIMMS, AMPL, 일반 대수 모델링 시스템, OptimJ, TOMLAB과 같은 독립적인 모델링 시스템을 통해 접근할 수 있다. 이 외에도 AMPL은 CPLEX CP 옵티마이저에 대한 인터페이스를 제공한다.
전체 IBM ILOG CPLEX Optimization Studio는 수학적 프로그래밍을 위한 CPLEX 옵티마이저, 제약 프로그래밍을 위한 CP 옵티마이저,[4] 최적화 프로그래밍 언어(OPL), 그리고 긴밀하게 통합된 IDE로 구성된다.
출시 역사
[편집]IBM이 ILOG를 인수하기 전에 CPLEX 팀은 CPLEX의 출시 기록을 공개했다.[5]
| 버전 | 출시일 | 주요 기능 |
|---|---|---|
| 22.1.1 | 2022년 12월 | Python 3.7 지원 중단, 새로운 솔버 매개변수 추가.[6] |
| 22.1.0 | 2022년 3월 | Python 3.9 및 3.10 지원 추가, 새로운 솔버 매개변수 추가.[7] |
| 20.1 | 2020년 12월 | MIP 성능 개선, 새로운 'emphasis MIP 5' 모드 등.[8] |
| 12.10 | 2019년 12월 | MIP 성능 개선 및 버전 12.8에서 도입된 다른 일반 콜백에 대한 일반 분기 콜백 추가. |
| 12.9 | 2019년 3월 | 다목적 최적화 직접 지원, 콜백 기능 개선. |
| 12.8 | 2017년 12월 | 일반 콜백, 디버깅을 용이하게 하는 API 레코더, subMIP 제어 매개변수, 다운로드 및 실행 제공. |
| 12.7 | 2016년 11월 | 자동 벤더스 분해, 모델링 지원 도구, 성능 변동성을 더 잘 평가하기 위한 runseeds 명령. |
| 12.6.2 | 2015년 6월 | 성능 개선 (주로 SOCP, MISOCP, 비볼록 QP), 클라우드 기반 최적화 지원. |
| 12.6 | 2013년 12월 | 비볼록 QP 및 MIQP 지원, 분산 병렬 MIP 및 MIP의 루트 노드에서 더 많은 병렬 처리. |
| 12.5 | 2012년 10월 | MIP 성능 개선, 성능 변동성을 해결하기 위한 랜덤 시드 매개변수, 원격 객체, QCP의 이중성, 결정론적 튜닝 도구. |
| 12.4 | 2011년 11월 | 결정론적 시간 제한 지원, SOCP의 이중성, Concert의 2차 표현 API, 모든 알고리즘 특히 MIP의 성능 개선. |
| 12.3 | 2011년 6월 | 64비트 인덱싱이 필요한 대규모 비영 개수 지원, 비볼록 QP의 지역 최적점, 전역화. |
| 12.2 | 2010년 6월 | 루트 노드에서 더 많은 병렬 처리, 결정론적 병렬 동시 LP 최적화, 추가적인 장벽 성능 개선 및 MIP에서 불량 조건 기저 행렬 진단을 위한 추가 도구. |
| 12.0 | 2009년 4월 | IBM이 ILOG를 인수한 후 첫 번째 버전. Python, MATLAB 및 Excel용 커넥터 포함. 결정론적 병렬 장벽도 포함. |
| 11.0 | 2007년 10월 | 혼합 정수 계획법(MIP) 모델의 획기적인 성능 향상 및 향상된 병렬 MIP 최적화. MIP 솔루션 풀 기능 및 성능 튜닝 유틸리티 도입. |
| 10.0 | 2006년 1월 | 원시 단순법 및 장벽 방법, 그리고 MIP 옵티마이저의 성능 개선. 지시 제약 조건 및 솔루션 다듬기 휴리스틱 도입 및 실행 불가능성 분석 개선. |
| 9.0 | 2003년 12월 | 원시 및 이중 단순법과 MIP 옵티마이저의 성능 개선. .NET 사용자를 위한 ILOG Concert Technology 및 2차 제약 프로그램 지원 포함. |
| 8.0 | 2002년 7월 | MIP 성능 개선 및 혼합 정수 2차 프로그램 지원. |
| 7.5 | 2001년 12월 | Java 사용자를 위한 ILOG Concert Technology. |
| 7.0 | 2000년 10월 | C++ 사용자를 위한 ILOG Concert Technology. |
| 6.5 | 1999년 3월 | 원시 및 이중 단순법, ILOG CPLEX 혼합 정수 옵티마이저의 상당한 성능 개선. |
| 6.0 | 1998년 4월 | 원시 및 이중 단순법, CPLEX 장벽 옵티마이저의 상당한 성능 개선. |
| 5.0 | 1997년 9월 | 쉬운 C++ 통합을 위한 새로운 메모리 모델. |
| 4.0.5 | 1996년 3월 | 병렬 CPLEX 혼합 정수 솔버 도입. |
| 4.0 | 1995년 12월 | 스레드 안전 애플리케이션을 허용하도록 재설계된 고급 프로그래밍 인터페이스(API). |
| 3.0.8 | 1995년 3월 | 병렬 CPLEX 장벽 솔버 도입. |
| 3.0 | 1994년 4월 | CPLEX 장벽 솔버 도입. |
| 2.1 | 1993년 3월 | CPLEX 사전 해결 알고리즘 도입. |
| 2.0 | 1992년 4월 | 성능 개선. |
| 1.2 | 1991년 | 이중 단순법 및 CPLEX 혼합 정수 옵티마이저 지원. |
| 1.0 | 1988년 | 원시 단순법 |
같이 보기
[편집]각주
[편집]- ↑ “CPLEX Optimization Studio 20.1 is available”. 2020년 12월 14일에 원본 문서에서 보존된 문서. 2021년 3월 4일에 확인함.
- ↑ 《IBM Completes Acquisition of ILOG》, 2009년 1월 6일, 2009년 1월 22일에 원본 문서에서 보존된 문서, 2020년 6월 24일에 확인함
- ↑ Mittelmann, H. D. (2007년 7월 10일), “Recent Benchmarks of Optimization Software”, 《22nd European Conference on Operational Research》 (EURO XXII Prague, Czech Republic: Dept of Math and Stats Arizona State University)
- ↑ Laborie P, Rogerie J, Shaw P, Vilim P (2018). 《IBM ILOG CP optimizer for scheduling》. 《Constraints》 23. 210–250쪽. doi:10.1007/s10601-018-9281-x.
- ↑ “CPLEX History”. 《CPLEX History as published by ILOG》. 2009년 4월 13일에 원본 문서에서 보존된 문서. 2020년 6월 24일에 확인함.
- ↑ “Release notes for CPLEX 22.1.1”. 2023년 1월 11일에 원본 문서에서 보존된 문서. 2023년 1월 11일에 확인함.
- ↑ “Release notes for CPLEX 22.1.0”. 2023년 1월 11일에 확인함.
- ↑ “CPLEX 20.1 Release Notes”. 2021년 3월 4일에 확인함.
외부 링크
[편집]- IBM ILOG CPLEX Optimizer home page - 공식 웹사이트
- IBM ILOG CPLEX CP Optimizer home page - 공식 웹사이트
- Optimization Programming Language (OPL) - 공식 웹사이트
| 이 글은 소프트웨어에 관한 토막글입니다. 여러분의 지식으로 알차게 문서를 완성해 갑시다. |