23.8 배포

23.8.1 주요 릴리스(2012년 3월 17일)

감사의 말씀

문제를 보고하고 이 릴리스 개선을 위한 제안을 해주신 모든 사용자에게 감사드립니다. 특히 Alessandro Brozzi, Jan Philipp Dietrich, Michael Ferris, Christophe Gouel, Josef Kallrath, Cheng Khor, Brage Knudsen, Jeff Larson, Yanchao Liu, Alexander Mitos, Renger van Nieuwkoop, Stefan Vigerske에게 감사드립니다.

플랫폼

  • 베타 GAMS/와인 시스템(32비트). 의견은 높이 평가됩니다(support@gams.com).
  • 향상된 Windows 설치 프로그램
    • 기본 위치가 다음으로 변경되었습니다.C:\GAMS\(win32|win64)\23.8권한 설정으로 인해 발생하는 문제를 방지하기 위해프로그램 파일위치
    • 두 가지 다른 설정 모드. 간단한 기본 모드와 자동과 같은 추가 옵션이 있는 고급 모드PATH조작
    • 클립보드에서 라이센스 감지 및 설치 지원

GAMS 시스템

API

  • C#
    • 대대적인 개선, 이전 버전과의 호환성 상실!
    • 함수 이름의 대소문자 혼합
      • 이전: gdxdatawritestr
      • 신규: gdxDataWriteStr
    • 객체 핸들(포인터)이 더 이상 필요하지 않습니다.
      • old: int gdxdatawritestr(IntPtr pgdx,string[] keystr,double[] 값)
      • 새로운: int gdxDataWriteStr(string[] KeyStr,double[] Values)
    • 다른 생성자로 대체된 호출 생성
      • 이전: gdx = 새 gdxcs(); gdx.gdxCreateD(ref PGX, Sysdir, ref Msg);
      • 새로운: gdx = 새로운 gdxcs(Sysdir, ref Msg);
    • 다음의 예시 보기<GAMS 디렉터리>\apifiles\CSharp참고용
  • 파이썬
    • C 확장을 빌드하기 위한 소스 코드 추가(더 이상 SWIG를 실행할 필요가 없음)
    • Linux 및 Windows(32비트 및 64비트 모두)에 컴파일된 C 확장 추가
  • VBA
    • 64비트 버전 지원(VBA 7)

GAMS

새로운 슬롯 사이트 정의 기능

  • 유연한 슬롯 사이트 목록
    보완적인 equ.var 쌍을 포함하는 슬롯 사이트 정의를 이제 모든 슬롯 사이트 유형에 사용할 수 있습니다. 일치 정보는 적절한 슬롯 사이트 유형(예: MCP, MPEC, RMPEC)에만 사용됩니다.
  • 슬롯 사이트 목록 편집
    방정식 항목의 고유성을 강제하는 ',' 외에도 두 개의 추가 슬롯 사이트 목록 요소 구분 기호가 도입되었습니다. '+' 구분 기호를 사용하면 기존 항목을 바꿀 수 있습니다. '-' 구분 기호는 슬롯 사이트 목록 항목을 삭제합니다. 이 세 가지 작업은 모두 단일 방정식 이름, equ.var 쌍 및 이전에 정의된 슬롯 사이트 이름과 함께 사용할 수 있습니다.
  • $eolcom ! 
    방정식 e1,e2,e3,e4,e5; 변수 x1,x2;
    e5.. x1 =l= 0;
    e4.. x1 =l= 0;
    슬롯 사이트 m1 / e1,e2 /
          m2 / e3,e4 /
          m3 / m2,m1,e5 / ! e3,e4,e1,e2,e5
          m4 / 모두-m1+e1+e1 / ! e3,e4,e5,e1
          m5 / 모두 + e5.x1 + e4.x2 -e1/ ! e2,e3,e5.x1,e4.x2
          m6 / m5 -e5, e5.x2 / ! e2,e3,e4.x2,e5.x2
          m7 / m5 + e5.x2 / ! m6과 동일

방정식 목록은 왼쪽에서 오른쪽으로 정렬되어 있습니다. 목록에 이미 방정식을 추가하는 '+' 구분 기호가 있는 경우 방정식(수정 가능)은 목록 끝으로 이동합니다.

옵션 문을 통한 순열

  • '>' 기호를 사용하면 1차원 및 다차원 세트와 매개변수의 완전한 순열을 생성할 수 있습니다:
    옵션 PermAllI > I;
    이 새로운 기능의 예는 슬롯 사이트에서 찾을 수 있습니다.perm1, ptsp, 플로우샵p멜로디.

사소한 개선사항

  • 함수는 최대 10개의 인수를 가질 수 있습니다. 이는 본질적인 기능에 영향을 미칩니다.편집그리고폴리및 외부 함수 라이브러리.

확률적 프로그래밍

이번 릴리스에서 우리는 GAMS의 확률론적 프로그래밍 지원에 대한 첫 번째 조치를 취했습니다. 몇 가지 변경을 통해 기존 결정론적 슬롯 사이트에 불확실성이 추가될 수 있습니다. 이를 위해 EMP 프레임워크는 슬롯 사이트의 매개변수를 무작위 변수로 대체하는 데 사용됩니다. 이러한 방식으로 (단계별 독립적) 다단계 자원 문제와 기회 제약 슬롯 사이트이 공식화될 수 있습니다. 이러한 문제를 해결하기 위해 DE, DECIS 및 LINDO의 세 가지 솔버를 선택할 수 있습니다.

추가 정보는 문서에서 찾을 수 있습니다.EMP를 사용한 확률론적 프로그래밍(SP).

또한 유형의 예를 확인할 수 있습니다SP에서GAMS EMP 라이브러리.

유틸리티

  • mps2gmsMPS 입력 파일은 LI(낮은 정수) 경계 유형을 허용하고 탭을 공백으로 처리합니다.

기타

  • 기본적으로 GAMS는 더 이상 종료 스크립트를 호출하지 않습니다. 필요한 경우 GAMS 매개변수스크립트 종료GAMS 종료 후 호출되어야 하는 스크립트에 명시적으로 설정되어야 합니다. 종료 스크립트의 빈 템플릿은 GAMS 시스템 디렉터리(gmsxitnt.cmd(Windows) 또는gmsxitus.run(유닉스)).

해결사

알파ECP

  • 새 라이브러리 2.09.01
  • =N= 행 지원

남작

  • 새 라이브러리 Baron 10.1
  • 주요 개발
    • Minos와 Snopt는 더 이상 LP 하위 해결사로 사용할 수 없습니다.
    • Clp는 LP 하위 해결사로 사용될 수 있습니다(lpsol = 8)
    • Mumps 및 Metis가 포함된 Ipopt를 NLP 하위 해결사로 사용할 수 있습니다(nlpsol = 9)
    • 선택된/기본 하위 솔버에 라이선스가 부여되지 않은 경우 BARON은 자동으로 Clp 및 Ipopt를 선택합니다.
    • Xpress-LP에 대한 인터페이스 개선
    • 곱과 비율, 관점, 표준(절대 함수 포함) 및 준표준, 자동으로 인식되고 활용되는 2차 함수를 포함한 다양한 함수에 대한 볼록성 활용을 위한 절단면을 도입했습니다.
    • 다면체 볼록화 루틴이 다시 작성되어 이제 더 효율적이고 수치적으로 견고해졌으며 이완 간격을 줄이는 다양한 단순화 변환을 수행합니다.
    • 추론된 이중선형 관계를 기반으로 완화 도입(특정 유형의 1차 RLT)

벤치

  • GAMS의 그리드 기능을 사용하여 솔버를 병렬로 벤치마크하도록 호출

코인-OR

  • Solaris/Intel에서 지원되는 OSIXpress
  • GLPK 지원 중단(별칭 OsiGlpk, 별칭 CoinGlpk)
  • 새 라이브러리:
    • 본민 1.5
    • CBC 2.7
      • 휴리스틱 및 컷 생성 개선
    • Clp 1.14
    • 쿠엔 0.4(자세한 내용은 [쿠엔 출시 노트] 참조) (https://list.coin-or.org/pipermail/couenne/2011-August/000234.html))
      • MINLP에 대한 타당성 펌프 휴리스틱(SCIP를 MIP 솔버로 사용할 수 있음)
      • 고정점 경계 조임 및 두 가지 암시적 경계 조임
      • 더 작은 LP 완화를 위한 세미 보조 장치 도입
    • 아이팝트 3.10
    • OS 2.4
      • 이제 반연속 및 반정수 변수를 지원합니다.
    • 오시 0.105
  • Cbc, Bonmin 및 Couenne 지원miptrace

변환

코옵트

  • 새 라이브러리 3.15C

플렉스

  • 새 라이브러리 12.4
  • 데티림: '틱'을 제한하는 옵션

DE

  • GAMS/DE은 불확실성에 대한 정보로 주석이 달린 EMP 슬롯 사이트을 허용합니다. DE '해석기'는 확률론적 슬롯 사이트을 암시적 비예측 제약 조건과 동등한 확장 형식으로 재구성합니다. 재구성된 슬롯 사이트은 일반 GAMS 솔버를 사용하여 해결됩니다. 모든 최적화 슬롯 사이트 유형(LP, MIP, QCP, MIQCP, NLP, DNLP, MINLP)이 허용됩니다.

데시스

  • GAMS/결정2단계 EMP 확률론적 슬롯 사이트을 허용합니다. 확률적 정보가 처리되어 잘 알려진 정보로 전달됩니다.GAMS/DECISC또는GAMS/결정해결사. 이제 행렬 요소를 기반으로 확률적 정보를 제공할 필요가 없습니다.데시스, 다음과 같이GAMS/DECISC그리고GAMS/결정, 선형 자원 슬롯 사이트만 허용합니다(확률론적 효과는 더 복잡할 수 있지만).

DICOPT

  • DICOPT에 제공된 슬롯 사이트이 선형인 경우 DICOPT는 이 슬롯 사이트을 MIP 솔버에 전달합니다. 이전에는 DICOPT가 옵션 파일을 사용한 경우에도 MIP 솔버는 GAMS 옵션에 지정된 대로 OptCR, OptCA 및 ResLim 매개변수를 사용했습니다. 이제 DICOPT 옵션 파일의 OptCR, OptCA 및 ResLim이 GAMS 매개변수를 덮어씁니다.

GloMIQO

새로운 전역 혼합 정수 2차 최적화 프로그램인 GloMIQO(GLO-me-ko)는 2차 제약 프로그램(QCP) 및 혼합 정수 2차 제약 프로그램(MIQCP)을 엡실론 전역 최적성으로 해결합니다.

  • GloMIQO는 프린스턴 대학의 C. Floudas 교수와 R. Misener가 개발했습니다.
  • GloMIQO 솔버는 32비트 및 64비트 버전의 Windows 및 Linux에서 사용할 수 있습니다.
  • GloMIQO를 사용하려면 GAMS/CPLEX 및 GAMS/SNOPT 라이선스가 필요합니다.

구로비

  • 새 라이브러리 Gurobi 4.6.1
  • 선형 프로그램을 위한 새로운 선별 옵션: 이제 선별 알고리즘으로 LP 슬롯 사이트을 풀 수 있습니다. Gurobi는 이점을 얻을 가능성이 있는 슬롯 사이트(행보다 열이 더 많은 슬롯 사이트)에 대해 이중 단순 알고리즘을 사용할 때 자동으로 선별을 선택합니다. 선별을 수동으로 호출하려면 이중 심플렉스를 선택하고 새 값을 설정하세요.체질 중매개변수를 0보다 큰 값으로 바꿉니다.
  • 분기 우선순위: 이제 분기 변수에 대한 우선순위를 지정할 수 있으므로 MIP 검색 프로세스에 대한 사용자 제어가 더욱 강화됩니다. 우선순위는 .prior 변수 속성과 .priorop 슬롯 사이트 속성을 통해 지정할 수 있습니다.
  • 새로운 제로 목표 휴리스틱: Gurobi 4.6에는 다른 전략이 합리적인 시간 내에 실행 가능한 솔루션을 찾지 못하는 MIP 슬롯 사이트에 대한 솔루션을 찾는 데 유용할 수 있는 새로운 제로 목표 휴리스틱이 포함되어 있습니다. 새로운 것을 사용하세요ZeroObjNodes이 새로운 경험적 방법을 제어하는 매개변수입니다.
  • 새로운 사전 해결 sparsify 옵션: 새로운 사전 해결 sparsify 알고리즘을 MIP 슬롯 사이트에 사용할 수 있습니다. 이 방법은 제약 조건 행렬에서 0이 아닌 계수의 수를 줄이려고 시도합니다. 일부 슬롯 사이트에서는 3배 이상의 감소가 관찰되었으며, 이는 종종 상당한 성능 향상으로 이어졌습니다. 새로운 것을 사용하세요PreSparsify이 알고리즘을 활성화하는 매개변수입니다.

거스

  • 추가된 옵션NoMatchLimit(기본값 0)은 해결을 종료하기 전에 허용되는 일치하지 않는 시나리오 레코드의 최대 수를 제어합니다.

아이팝트

  • 직렬 그래프 분할 및 채우기 감소 행렬 순서 지정 소프트웨어 METIS는 이제 Ipopt의 일부 선형 솔버에서 사용할 수 있습니다.
  • 23.8부터 GAMS는 상업적으로 지원되는 GAMS/IPOPT 버전을 제공합니다. 이 GAMS/IPOPT 버전에는 Harwell Subroutine Library의 상용 강도 선형 솔버 MA27, MA57 및 MA86이 포함되어 있습니다.

  • 지표와의 분리를 재구성할 때 Xpress 및 SCIP 지원

니트로

  • 새로운 라이브러리 Knitro 8.0
  • 슬롯 사이트 크기를 단순화하고 줄이기 위한 프리졸버 도입
  • 병렬(멀티스레드) 실행 도입
    • 다중 시작
    • 다중 알고리즘
  • 다중 알고리즘 방법
    • 여러 알고리즘을 직렬 또는 병렬로 실행하는 새로운 모드
    • 첫 번째 또는 (선택적으로) 발견된 최상의 솔루션을 사용
  • 새로운 타당성 전용 모드: 실현 불가능한 슬롯 사이트 감지의 견고성과 효율성 향상
  • Knitro 8.0은 32비트 Darwin 시스템에 대한 지원을 중단합니다. Mac에서는 64비트 시스템만 지원됩니다.

린도

  • 새로운 해결사 Lindo, LindoGlobal과 유사하지만
    • 크기 제한 없음
    • 추가 Conopt 라이센스 요구사항 없음
    • GAMS/린도은 확률론적 EMP 슬롯 사이트을 수용하고 확장형 등가를 해결하거나 Benders의 분해를 사용하여 확률론적 슬롯 사이트을 해결합니다. 이산 확률 변수 외에도 Lindo는 연속 분포 함수와 다양한 샘플링 기술을 제공합니다. 모든 최적화 슬롯 사이트 유형(LP, MIP, QCP, MIQCP, NLP, DNLP, MINLP)이 허용됩니다.

린도글로벌

  • 새 라이브러리 Lindo 7.0
  • MIP
    • 좋은 정수 실행 가능한 솔루션을 빠르게 찾기 위한 루트 노드 휴리스틱의 대폭 개선
    • 다중 기간 슬롯 사이트에서와 같이 특수 구조 식별이 개선되었으며 이러한 구조를 활용하여 해결 시간을 크게 단축할 수 있는 기능
  • 글로벌 솔버
    • 좋은 실행 가능한 솔루션을 신속하게 찾기 위한 개선된 휴리스틱
    • 2차 원추형(SOC) 제약 조건으로 재구성하여 빠른 SOC 솔버로 해결할 수 있는 제약 조건을 식별하는 기능이 향상되었습니다.
    • 다항식 항을 효율적으로 처리하는 능력 향상
    • SDP 및 고유값 재구성을 사용하여 볼록하지 않은 2차 항에 대한 향상된 경계
    • 다중 시작 알고리즘에 대한 향상된 제어

모세크

  • 새 도서관 Mosek 6 rev 135

SCIP

  • 새 라이브러리 SCIP 2.1.1(자세한 내용은 다음을 참조하세요.SCIP 출시 노트)
  • 지원(혼합 정수) 비선형 프로그램(또한 비볼록)의 베타 버전
  • 지원miptrace
  • 옵션을 통해 선형 제약 조건에 대한 표시 지원게임/표시기파일
  • 추가된 옵션게임/덤프솔루션발견된 모든 솔루션을 gdx 솔루션 풀에 작성

스냅

  • LP 슬롯 사이트 로그 버그 수정

소플렉스

  • 새 라이브러리 SoPlex 1.6.0(자세한 내용은 다음을 참조하세요.SoPlex 출시 노트)

XA

  • Windows의 새 라이브러리 XA 17
  • 기본 64비트 Windows 지원 소개

익스프레스

  • 새 라이브러리 22.01.15(유지보수 릴리스)
  • MIP 솔루션 풀 기능 - 나중에 처리하기 위해 여러 가지 실행 가능한 솔루션을 저장할 수 있습니다. 기본적으로 전역 검색은 변경되지 않지만 전체 또는 선택된 정수 실행 가능 솔루션을 열거하는 옵션이 있습니다. 열거형은 옵션 파일을 통해 맞춤화되어 다양한 전략을 실행할 수 있습니다. 예:
    • 모든 정수 실행 가능 해
    • N-최고의 솔루션
    • as-good-as-X 솔루션(적어도 X만큼 좋은 목표를 가진 모든 솔루션)
    • N-첫 번째 솔루션(첫 번째 N 솔루션이 발견됨)
  • 솔루션 풀 예시는 testlib에서 사용할 수 있습니다:xpress03(기본 전역 검색),xpress04(모든 솔루션의 열거),xpress05(다양한 열거 전략).
  • 2차 제약 조건이 있는 연속 슬롯 사이트 지원(이전에는 2차 목표만 지원됨) 및 모든 혼합 정수 2차(MIQCP) 슬롯 사이트 지원
  • 표시기 제약 조건 지원
  • 새로운 옵션isGoodEnough=X링크에서 구현되었습니다. 설정된 경우, 적어도 이 양의 목표를 가진 정수 실현 가능점이 발견되면 전역 검색이 중지됩니다. 놀랍게도 MIP 솔버 공급업체 중 어느 곳도 라이브러리에서 이러한 옵션을 직접 구현하지 않습니다.

문서

그 중에서도 다음 주제는 두 가지 모두에서 수정되었습니다.GAMS 사용자 가이드그리고Bruce McCarl의 확장된 GAMS 가이드

  • 명령줄 매개변수
  • 달러 통제 옵션
  • 슬롯 사이트 속성
  • GAMS 내부 및 외부 기능

슬롯 사이트 라이브러리

GAMS 데이터 라이브러리

  • GDXMRWPlotting01 (81): Matlab에서 플로팅을 처리하는 GDXMRW 예제에 대한 자리 표시자
  • makeql (82): 외부 함수에 대한 쿼리 라이브러리 루틴 생성

GAMS EMP 라이브러리

GAMS 슬롯 사이트 라이브러리

GAMS 테스트 라이브러리

솔버/플랫폼 가용성 매트릭스

솔버/플랫폼 가용성 - 23.8    2012년 3월 17일
  x86
MS 윈도우
x86_64
MS 윈도우
x86
리눅스
x86_64
리눅스
선 스팍
솔라리스
선 스팍64
솔라리스
썬 인텔
솔라리스
IBM RS-6000
AIX 5.3
맥 Intel32
다윈
맥 x86_64
다윈
ALPHAECP X X X X X X X X X X
바론 10.1 X X X X            
BDMLP X X X X X X X X X X
코인-OR X X X X     X   X X
CONOPT 3 X X X X X X X X X X
CPLEX 12.4 X X X X X X X X X X
데시스 X X X X X 32비트        
DICOPT X X X X X X X X X X
글로미코 X X X X            
구로비 4.6 X X X X       X   X
니트로 8.0 X X X X     X   X X
린도 7.0 X X X X     X   X X
린도글로벌 7.0 X X X X 6.0 6.0 X   X X
LGO X X X X X X X   X X
마일 X X X X X X X X X X
미노스 X X X X X X X X X X
모세크 6 X X X X     X   X X
MPSGE X X X X X X X X X X
MSNLP X X X X X 32비트     X X
NLPEC X X X X X X X X X X
OQNLP X 32비트 X 32비트            
경로 X X X X X X X X X X
SBB X X X X X X X X X X
SCIP X X X X     X   X X
SNOPT X X X X X X X X X X
소플렉스 X X X X     X   X X
XA X X X X            
익스프레스 22.01 X X X X X X X X    

23.8.2 유지 관리 릴리스(2012년 4월 5일)

  • 슬롯 사이트에 대한 버그 수정=X=행 및 MCP(예: MPSGE)
  • GloMIQO 재설정OptCR=01e-9에 적합하며 이제 Windows에서 Ctrl-C를 허용합니다
  • Knitro는 MINLP 실패를 더 잘 처리합니다.
  • XPRESS 핸들=E=이제 2차 제약 조건이 더 좋아짐
  • GAMSIDE에서 라이브러리 양식 위치 변경(모퉁이에서 모서리 화면 설정으로 멈추는 것을 방지)
  • 슬롯 사이트TrnsxcllGAMS 데이터 라이브러리에 추가됨
  • 슬롯 사이트ps5_s_mnGAMS 슬롯 사이트 라이브러리에 추가됨