슬롯 머신 매뉴얼

GAMS 배포에는 많은 슬롯 머신가 포함되어 있습니다. 다음은 기능입니다.모든 슬롯 머신의 분류, 알파벳순으로 정렬모든 슬롯 머신 목록및 각 슬롯 머신에 대한 간략한 설명지원 플랫폼.

참고
전통적으로 GAMS 슬롯 머신는 다음 모음으로 구성되었습니다.실행 파일파일(주로 GDX) 인터페이스가 있습니다. 이러한 슬롯 머신 실행 파일은 시간이 지남에 따라 다음으로 대체됩니다.GAMS 연결에이전트 및 새로운 슬롯 머신 모음GAMS 슬롯 머신 라이브러리. 한동안 두 가지 방법이 모두 지원되지만 실행 슬롯 머신는 더 이상 제공되지 않을 예정이므로 어떤 슬롯 머신를 선택할지 확실하지 않은 경우 연결 또는 GAMS 슬롯 머신를 선택하세요.

슬롯 머신 카테고리

GAMS 배포에 포함된 모든 슬롯 머신는 다음과 같이 분류됩니다.

GAMS 통합 개발 환경

GAMS 스튜디오은 GAMS 모델링 시스템을 위한 공식 통합 개발 환경으로, 최적화 모델 편집, 실행 및 분석을 위한 사용자 친화적인 인터페이스를 제공합니다. 구문 강조, 모델 실행, 기호 검사 및 그래픽 슬롯 머신를 갖추고 있어 사용자가 플랫폼 전반에서 모델을 효율적으로 개발하고 디버그할 수 있습니다.

GAMS 슬롯 머신 라이브러리

GAMS 슬롯 머신 라이브러리에는 복잡한 작업에 쉽게 접근할 수 있도록 다양한 슬롯 머신가 수집되어 있습니다. 이 라이브러리의 슬롯 머신는 다음 기능을 보완합니다.GAMS 연결및 실행 파일로 사용 가능한 슬롯 머신(예:GDXXRW). 현재 라이브러리에는 다음 슬롯 머신 범주가 포함되어 있습니다.

알고리즘 슬롯 머신(alg)

데이터 정렬과 같은 알고리즘 기능 제공:순위.

데이터 슬롯 머신(데이터)

외부 데이터 소스에 대한 액세스 제공:엑셀덤프, CSV읽기, CSV쓰기그리고SqliteWrite.

GDX 서비스(gdxservice)

GDX 파일 조작을 위한 기능 제공:GDX인코딩그리고GDX이름 바꾸기.

선형대수학(linalg)

계산 선형 대수학을 위한 기능 제공:콜레스키, 고유값, 고유벡터, 반전그리고보통 최소제곱법(OLS).

Windows 전용 슬롯 머신(win32)

Windows 운영 체제에 특정한 기능을 제공합니다:쉘실행, MSAppAvail, 엑셀톡그리고ExcelMerge.


주의해야 할 몇 가지 사항이 있습니다:

  • 컴파일하는 동안 모델 코드에서 슬롯 머신를 직접 호출할 수 있습니다. ($callTool) 또는 실행 시간(executeTool) 또는 독립형 명령줄 유틸리티를 사용하여감스툴.
  • 모델 코드에서 호출되면 GAMS 기호 교환이 메모리에서 수행됩니다. 명령줄에서 슬롯 머신를 호출하는 경우 이는 불가능하므로 GAMS 기호를 처리하는 일부 슬롯 머신의 경우 GDX 입력 및/또는 출력 파일을 지정해야 합니다. GAMS 모델 내에서 사용하는 경우에도 GDX 파일 인터페이스는 유용할 수 있습니다(예: 디버깅용). 따라서 이 경우 GDX 입력/출력 파일 사양은 선택 사항입니다.
  • 다음과 유사$call(컴파일 시간) 및실행(실행 시간) 명령, GAMS 슬롯 머신는 다음을 통해 확인할 수 있는 셸 코드를 반환합니다.오류레벨. 슬롯 머신가 오류 없이 수행되기를 기대하는 경우 접미사를 추가하는 것이 좋습니다..checkErrorLevel. 슬롯 머신를 실행하는 동안 오류가 발생하면 GAMS의 전체 실행이 중지됩니다.
  • 실행 시 GAMS 슬롯 머신 라이브러리의 슬롯 머신를 사용하여 처음으로 GAMS 기호를 데이터로 채우는 경우 컴파일러는 슬롯 머신의 결과를 알 수 없습니다. 결과적으로 컴파일러에는 데이터로 채워질 수 있는 기호에 대한 정보가 없으므로 컴파일 타임에 이러한 기호를 안정적으로 정의할 수 없습니다. 나중에 해당 기호를 참조하는 코드는 컴파일 오류 141을 발생시킵니다.기호가 선언되었지만 값이 할당되지 않았습니다.. 실행 시간 동안 암시적으로 기호를 로드할 수 있도록 달러 제어 옵션$onImplicitAssign설정이 필요합니다. 기호가 정의되었음을 컴파일러에 확신시키는 다른 방법이 있습니다.execute_load$0 SymName;그렇지 않으면 작동하지 않습니다.
  • 슬롯 머신의 컴파일 시간 변형($callTool[...])은 무시됩니다.$onExternalInput활성 상태이며IDCGDX입력설정되었습니다.
  • 슬롯 머신 인수: 모든 슬롯 머신는 인수를 처리하기 위해 동일한 논리를 따릅니다. 인수 목록은 다음과 같은 숫자로 시작됩니다.위치인수 뒤에는이름이 지정된인수[-]이름=발.
  • 각 슬롯 머신에는 짧고 긴 도움말이 제공됩니다. 인수 없이 또는를 사용하여 슬롯 머신를 호출하는 경우-h, 간단한 설명이 표시됩니다. 예:gamstool linalg.eigenVector -h. 인수로--도움말자세한 도움말 텍스트가 나타납니다:gamstool linalg.eigenVector --help. 포함된 슬롯 머신가 아닌 카테고리만 요청하는 경우 포함된 모든 슬롯 머신의 도움말 텍스트가 표시됩니다.gamstool linalg또는gamstool linalg --help.

자세한 내용은 개별 슬롯 머신 매뉴얼을 참조하세요.

명령줄 유틸리티 gamstool

GAMS 시스템 디렉토리에는 유틸리티가 포함되어 있습니다.감스툴명령줄에서 직접 GAMS 슬롯 머신 지침을 실행합니다. Windows에서 유틸리티에는 호출 가능한 확장이 있습니다..cmd셸이 자동으로 확장을 확인하므로 명령의 일부가 필요하지 않습니다. 이 스크립트는 Python 스크립트를 래핑합니다.tooldriver.pyGAMS와 함께 제공되는 Python 인터프리터를 호출하여.감스툴다음과 같이 호출됩니다:

gamstool [toolCategory.]toolName positionalArguments [namedArguments]

데이터 교환

GAMS와 다른 데이터 소스 간에 데이터를 교환하는 기능을 제공하는 슬롯 머신 모음입니다. 이 카테고리에는 널리 사용되는 데이터 소스, 고급 프로그래밍 환경 및 유사한 데이터베이스를 위한 슬롯 머신가 포함되어 있습니다. (GDX2ACCESS, SqliteWrite, MDB2GMS, SQL2GMS). 다음과 같은 특수 시스템을 위한 슬롯 머신도 있습니다.SqliteWrite, MDB2GMSSQL2GMS. VEDA와 같은 전문 시스템을 위한 슬롯 머신도 있습니다(GDX2VEDA).

엑셀

GAMS와 Excel 간에 데이터를 교환하는 기능을 제공하는 슬롯 머신 모음입니다. 이 카테고리의 슬롯 머신는 다음과 같습니다.GDX2XLS, GDXXRW, XLS2GMS, 엑셀덤프. 여기에 설명된 슬롯 머신 중 다수는 GAMS 데이터 교환 기능을 사용합니다.GAMS 데이터 교환(GDX). 이 카테고리의 실행 슬롯 머신는 시간이 지남에 따라 다음으로 대체될 예정입니다.GAMS 연결에이전트 및 슬롯 머신GAMS 슬롯 머신 라이브러리.

GDX 서비스

직접 작동하는 슬롯 머신 모음GAMS 데이터 교환(GDX)컨테이너를 예를 들어 비교(GDXDIFF), 복사(GDXCOPY), 병합(GDXMERGE), 라벨 이름 변경(GDX이름 바꾸기) 및 인코딩(GDX인코딩).

LibInclude 슬롯 머신 라이브러리

LibInclude 슬롯 머신 라이브러리에는 복잡한 작업에 쉽게 접근할 수 있도록 다양한 슬롯 머신가 수집되어 있습니다. 슬롯 머신는 다음 위치에 있습니다.인클라이브폴더는 GAMS 시스템 디렉토리에 있으며 다음을 사용하여 호출할 수 있습니다.$libInclude명령.

참고
기본값라이브러리 포함 디렉터리 인클라이브다음으로 변경할 수 있습니다.libIncDir명령줄 매개변수. 따라서 다음을 사용할 때 올바른 디렉토리를 가리켜야 합니다.$libInclude.

사용법:

$libInclude <라이브러리_파일> [<슬롯 머신_이름>] [<옵션>]

현재 라이브러리에는 다음 슬롯 머신가 포함되어 있습니다:

Libinclude 파일설명
GAMS의 다중 목표 최적화를 위한 방법을 제공합니다.
pyEmbMI 모델을 반복해서 재생성하지 않고도 수정 및 해결할 수 있는 모델 인스턴스에 대한 액세스를 제공합니다.
순위 1차원 숫자 데이터 순위 지정 루틴. GAMS 슬롯 머신와 다름alg.rank, 순위백분위수 수준을 처리할 수 있습니다.
스크린됨 ScenRed는 확률론적 프로그램의 무작위 데이터 프로세스를 모델링하는 시나리오 및 시나리오 트리 구성을 줄이기 위한 슬롯 머신입니다. 베를린 훔볼트 대학교 출신.

기타 슬롯 머신

특수한 상황에서 유용하게 사용할 수 있는 더욱 이국적인 슬롯 머신 모음입니다. 이 카테고리의 슬롯 머신는 다음과 같습니다.질문, ENDECRYPT, 이것을 찾아보세요, GAMS Posix 유틸리티, MODEL2TEX, MessageReceiver창및 모든 슬롯 머신Windows 전용 슬롯 머신(win32). 특히 컬렉션에는 슬롯 머신가 포함되어 있습니다.MODEL2TEXLaTeX 형식으로 모델 대수학을 문서화합니다.

슬롯 머신 목록

다음 표는 사용 가능한 모든 슬롯 머신의 알파벳순으로 정렬된 목록을 제공합니다. 테이블은 실행 가능한 슬롯 머신로 구성되어 있습니다.GAMS 슬롯 머신그리고libInclude 슬롯 머신.

실행 가능한 슬롯 머신설명
질문 이 유틸리티는 사용자로부터 대화형으로 입력을 받는 데 사용될 수 있습니다.
CSV2GDX CSV 파일(쉼표로 구분된 값)을 읽고 GDX 파일에 씁니다.
ENDECRYPT 텍스트 파일을 암호화하고 해독하는 슬롯 머신입니다.
이것을 찾아보세요 GAMS 설치 프로그램에서 생성된 GAMS 특정 레지스트리 항목을 수정하기 위한 Windows 명령줄 슬롯 머신입니다.
GAMS 스튜디오 통합 개발 환경.
GDX2ACCESS GDX 데이터를 MS Access 테이블로 변환합니다.
GDX2VEDA GDX 파일을 다음으로 번역합니다.베다형식.
GDX2XLS GDX 데이터를 MS Excel 스프레드시트로 변환합니다.
GDXCOPY GDX 파일을 다른 GDX 형식으로 변환합니다.
GDXDIFF 두 개의 GDX 파일에서 동일한 이름, 유형 및 치수를 가진 기호 데이터를 비교하고 차이점을 세 번째 GDX 파일에 기록합니다.
GDXDUMP 스칼라, 세트 및 매개변수(테이블)를 데이터 문과 함께 GAMS 프로그램 형식의 표준 출력에 기록합니다.
GDXMERGE 여러 개의 GDX 파일을 하나의 파일로 결합합니다. 동일한 이름, 차원 및 유형을 가진 기호는 더 높은 차원의 단일 기호로 결합됩니다. 추가된 차원은 결합된 파일의 파일 이름을 고유 요소로 갖습니다.
GDXVIEWER GDX 파일에 포함된 데이터를 보고 변환합니다.
GDXXRW MS Excel 스프레드시트 데이터를 읽고 쓰는 데 선호되는 유틸리티입니다.
GMSUNZIP압축 해제 슬롯 머신압축해제함께데비안 패치, 이름이 "gmsunzip"으로 변경되었습니다.
GMSZIP압축 및 보관 슬롯 머신zip데비안 패치, 이름이 "gmszip"으로 변경되었습니다.
MDB2GMS MS Access 데이터베이스의 데이터를 GAMS 읽을 수 있는 형식으로 변환합니다.
메시지 수신자 창 Windows 메시지를 수신하고 표시하는 그래픽 슬롯 머신입니다.
MODEL2TEX GAMS 모델을 LaTeX로 변환
MPS2GMS MPS 또는 LP 파일을 GDX 파일을 사용하여 데이터를 저장하는 동등한 짧은 일반 GAMS 프로그램으로 변환합니다.
POSIX 모음집POSIX일반적으로 Windows 및 다양한 Unix 시스템에서 사용할 수 있어 플랫폼 독립적인 스크립트를 작성하는 데 도움이 되는 유틸리티입니다.
SQL2GMS SQL 데이터베이스의 데이터를 GAMS가 읽을 수 있는 형식으로 변환합니다.
XLS2GMS MS Excel 스프레드시트의 스프레드시트 데이터를 GAMS가 읽을 수 있는 형식으로 변환합니다.
XLSDUMP MS Excel 통합 문서의 모든 워크시트를 GDX 파일에 씁니다. gdxxrw와 달리 이 프로그램에는 Excel을 설치할 필요가 없습니다.
GAMS 슬롯 머신설명
[ALG.]순위 1차원 숫자 데이터의 순위를 매깁니다.
[데이터.]EXCELDUMP Excel 통합 문서의 모든 워크시트를 GAMS 기호에 씁니다.
[데이터.]CSVREAD CSV 파일의 데이터를 GAMS 기호에 씁니다.
[데이터.]CSV쓰기 GAMS 기호를 CSV 파일로 내보냅니다.
[데이터.]SQLITEWRITE GAMS 기호를 SQLite 데이터베이스 파일로 내보냅니다.
[GDXSERVICE.]GDXENCODING 라벨 인코딩 변환.
[GDXSERVICE.]GDXRENAME GDX 파일의 라벨 이름을 바꿉니다.
[LINALG.]CHOLESKY 양의 정부호 대칭 행렬의 콜레스키 분해를 계산합니다.
[LINALG.]EIGENVALUE 대칭 양의 정부호 행렬의 고유값을 계산합니다.
[LINALG.]EIGENVECTOR 대칭 양의 정부호 행렬의 고유값과 고유벡터를 계산합니다.
[LINALG.]반전 정사각 행렬 A의 역함수를 계산합니다.
[LINALG.]OLS 보통 최소 제곱: 선형 회귀 모델에서 알 수 없는 매개변수를 추정합니다.
[WIN32.]EXCELMERGE 원본 Excel 통합 문서의 시트를 대상 통합 문서에 병합합니다.
[WIN32.]EXCELTALK 파일 이름으로 지정된 Excel 통합 문서에 명령을 수행합니다.
[WIN32.]MSAPPAVAIL MS Office 응용 프로그램을 사용할 수 있는지 확인합니다.
[WIN32.]쉘실행 외부 프로그램을 생성합니다.
libInclude 슬롯 머신설명
GAMS의 다중 목표 최적화를 위한 방법을 제공합니다.
pyEmbMI 모델을 반복해서 재생성하지 않고도 수정 및 해결할 수 있는 모델 인스턴스에 대한 액세스를 제공합니다.
순위 1차원 숫자 데이터 순위 지정 루틴. GAMS 슬롯 머신 alg.rank와 달리 순위는 백분위수 수준을 처리할 수 있습니다.
스크린됨 확률론적 프로그램의 무작위 데이터 프로세스를 모델링하는 시나리오 및 시나리오 트리 구성을 줄이기 위한 슬롯 머신입니다. 베를린 훔볼트 대학교 출신.

지원되는 플랫폼

x86 64비트
MS 윈도우
x86 64비트
리눅스
암 64비트
리눅스
x86 64비트
맥OS
암 64비트
맥OS
[ALG.]순위
질문✔ *
CSV2GDX
[데이터.]EXCELDUMP
[데이터.]CSVREAD
[데이터.]CSV쓰기
[데이터.]SQLITEWRITE
ENDECRYPT
이 게임 찾기
GAMSSTUDIO
GDX2액세스✔ *
GDX2VEDA
GDX2XLS✔ *
GDXCOPY
GDXDIFF
GDXDUMP
GDXMERGE
[GDXSERVICE.]GDXENCODING
[GDXSERVICE.]GDXRENAME
GDXVIEWER✔ *
GDXXRW✔ *
GMSUNZIP
GMSZIP
[LINALG.]CHOLESKY
[LINALG.]EIGENVALUE
[LINALG.]EIGENVECTOR
[LINALG.]반전
[LINALG.]OLS
MDB2GMS✔ *
MSGRWIN
MODEL2TEX
MPS2GMS
POSIX**✔ *
pyEmbMI
순위
센레드
SQL2GMS✔ *
[WIN32.]EXCELMERGE
[WIN32.]EXCELTALK
[WIN32.]MSAPPAVAIL
[WIN32.]쉘실행
XLS2GMS✔ *
XLSDUMP✔ *

*이 슬롯 머신는 32비트이지만 64비트 Windows에서는 잘 실행됩니다.
**awk, cat, cksum, cmp, comm, cp, cut, diff, expr,fold, gdate, grep, gsort, gunzip, gzip, head, Join, make, mkdir, mv, od, Paste, printf, rm, sed, sleep, tail, tar, tee, test, touch, tr, uniq, wc, xargs