결정적 등가물(슬롯 무료체험)
저자
마사 로에베

소개

슬롯 무료체험는 확률론적 프로그래밍을 위한 GAMS 확장 수학 프로그래밍(EMP SP)으로 모델링된 확률론적 프로그램용 솔버입니다. 슬롯 무료체험는 다단계 LP, MIP, QCP, NLP 및 MINLP 확률론적 프로그래밍 모델을 해결할 수 있습니다. EMP SP에 대한 자세한 내용과 기존 GAMS 모델을 GAMS EMP SP의 확률론적 프로그래밍 모델로 수정하는 구문은 다음을 참조하세요.확률적 프로그래밍. 슬롯 무료체험 솔버 옵션 목록은 이 문서 끝에 나와 있습니다.

확률적 프로그램은 확실하게 알려지지 않았지만 확률 분포에 의해 근사되는 데이터를 포함하는 수학적 프로그램입니다. 확률론적 프로그램의 가장 간단한 형태는 의지가 있는 2단계 확률론적 선형 프로그램입니다. 수학적으로는 다음과 같이 정의됩니다.

\(x\in \mathbbR^n\) 및 \(y\in \mathbbR^m\)를 두 개의 슬롯 무료체험로 두고 알 수 없는 데이터의 모든 구현 집합을 \(\Omega\), \(\Omega=\\omega_1, \dots , \omega_S \ \subseteq로 지정합니다. \mathbbR^r \), 여기서 \(r\)은 불확실한 매개슬롯 무료체험를 나타내는 확률 슬롯 무료체험의 수입니다. 그런 다음 확률론적 프로그램은 다음과 같이 제공됩니다.

\begin방정식

처음 두 줄은 첫 번째 단계 문제를 정의하고 마지막 두 줄은 두 번째 단계 문제를 정의합니다. 첫 번째 단계에서 \(x\)는 결정 변수이고, \(c^T\)는 목적 함수의 비용 계수를 나타내고, \( \mathbbE[Q(x,\omega)] \)는 두 번째 단계 문제의 최적해에 대한 기대값을 나타냅니다. 또한 \(A\)는 계수를 나타내고 \(b\)는 첫 번째 단계 제약 조건의 오른쪽을 나타냅니다. 두 번째 단계에서 \(y\)는 결정 변수이고, \(T\)는 전환 행렬을 나타내고, \(W\)는 의지 행렬(소구 비용), \(h\)는 두 번째 단계 제약 조건의 오른쪽입니다. 두 번째 단계의 모든 매개변수와 결정 변수는 \(\omega\)에 따라 달라집니다. 목적 변수 \(z\)는 \( \omega \)의 함수이므로 확률 변수이기도 합니다. 무작위 변수는 최적화할 수 없으므로 슬롯 무료체험는 자동으로예상 값목적 변수 \(z\)의. 슬롯 무료체험는 또한 나중에 논의하겠지만 다른 위험 측정도 최적화할 수 있습니다.

첫 번째 단계에서는 불확실한 데이터의 실현이 명확해지기 전에 슬롯 무료체험을 내려야 합니다. 첫 번째 단계의 최적 솔루션은 고정되어 있으며 그 후에만 불확실한 매개변수가 취하는 값이 알려지게 됩니다. 첫 번째 단계의 고정 솔루션과 새로운 데이터가 주어지면 두 번째 단계에서 의지 조치를 취하고 최적의 솔루션을 슬롯 무료체험할 수 있습니다. 불확실한 데이터의 가능한 각 실현은 \(\omega_s \in \Omega\)로 표시되며 a라고 합니다.시나리오. 목표는 총 비용, 즉 1단계 비용과 예상되는 2단계 비용의 합을 최소화하는 실현 가능한 솔루션 \( x \)을 찾는 것입니다.

2단계 확률론적 LP를 해결하는 가장 일반적인 방법 중 하나는 다음을 구축하고 해결하는 것입니다.슬롯 무료체험론적 등가. 불확실한 매개변수가 (유한) 이산 분포를 따르고 각 시나리오 \( \omega_s \)가 모든 \( s = 1, \dots, S\) 및 \( \sum_s p_s = 1\)에 대해 확률 \(P(\omega_s) = p_s\)로 발생한다고 가정합니다. 따라서 \( \mathbbE[Q(x,\omega)] = \sum_s p_s q^T y_s \), 여기서 \( y_s \)는 시나리오 \( \omega_s \)에 대한 최적의 2단계 슬롯 무료체험을 나타냅니다. 그러면 슬롯 무료체험론적 등가물은 다음과 같이 표현될 수 있습니다.

\begin방정식

확률적 선형 프로그램의 경우 슬롯 무료체험론적 등가물은 매우 큰 선형 프로그램일 뿐이라는 점에 유의하세요.

솔버 슬롯 무료체험는 확률론적 프로그램과 동등한 결정론적 프로그램을 자동으로 생성한 다음 이를 솔버에 대한 솔루션으로 넘겨줍니다.하위 해결사. 하위 솔버는 해결하려는 모델 유형에 대한 기본 솔버입니다. 사용자는 옵션을 사용하여 다른 하위 해결사를 선택할 수 있습니다.서브솔버.

모델러가 슬롯 무료체험를 사용하려는 경우 옵션을 추가할 수 있습니다.

옵션 emp = 슬롯 무료체험;

이전해결모델의 진술 또는 명령줄에서 솔버 슬롯 무료체험를 선택할 수 있습니다. 예:

gams mymodel.gms emp=슬롯 무료체험

임의 슬롯 무료체험

무작위 변수와 해당 분포 및 단계는 모델의 시나리오 수와 슬롯 무료체험론적 등가물에 대해 생성되는 방정식의 수를 슬롯 무료체험합니다. 한 단계에 두 개 이상의 확률 변수가 있는 경우 공동 배포되거나 그렇지 않을 수 있습니다.

두 번째 단계에 두 개의 확률 슬롯 무료체험 \(a\)와 \(b\)가 있는 2단계 확률론적 모델 \( \mathcalM_2 \)이 있다고 가정합니다. 확률 슬롯 무료체험는 둘 다 이산 분포를 따르며 \(a\)에 대한 불확실한 데이터는 \(\Omega_a\)로 제공되고 \(b\)에 대한 불확실한 데이터는 \(\Omega_b\)로 제공됩니다. 무작위 슬롯 무료체험가 다음과 같은 경우아님공동 배포되면 \( |\Omega_a| \times |\Omega_b| \) 시나리오가 생성됩니다. 확률 슬롯 무료체험가 공동으로 분포된 경우 \( |\Omega_a| = |\Omega_b| \)가 필요하며 시나리오 수는 \( |\Omega_a| \)입니다.

슬롯 무료체험는 2단계 확률론적 모델 외에도 다단계 확률론적 모델을 해결할 수도 있습니다. \( \mathcalM_4 \)를 4단계의 확률론적 모델로 가정합니다. 첫 번째 단계 이후 각 단계에서는 이전 단계에서 알려지지 않았던 새로운 데이터가 공개됩니다. 각 단계에는 단 하나의 확률 변수만 있다고 가정합니다. \( \Omega_\textI \)는 두 번째 단계의 불확실한 데이터를 나타내고 \( \Omega_\textII \) 및 \( \Omega_\textIII \)는 각각 세 번째와 네 번째 단계의 불확실한 데이터를 나타냅니다. \( |\Omega_\textI| = n_1 \), \( |\Omega_\textII| = n_2 \) 및 \( |\Omega_\textIII| = n_3 \)로 둡니다. 슬롯 무료체험는 시나리오 트리를 반복적으로 생성하여 이 모델과 동등한 결정론적 모델을 구축합니다. 두 번째 단계의 시나리오 수는 \(n_1\)개이고, 세 번째 단계에는 \(n_1 \times n_2\)개의 시나리오가 있으며, 네 번째 단계에는 \(n_1 \times n_2 \times n_3\)개의 시나리오가 있습니다. 모델의 시나리오 수는 마지막 단계의 시나리오 수와 동일합니다. 그러나 결정론적 등가물에 대해 생성된 방정식의 수는 각 단계의 시나리오의 합이므로 이 예에서는 \(n_1 + n_1 \times n_2 + n_1 \times n_2 \times n_3 = n_1 \times (1+ n_2 \times ( 1+ n_3)) \)입니다.

다음 그림은 4단계로 구성된 확률론적 모델의 시나리오 트리를 보여줍니다.

4단계의 확률론적 모델에 대한 시나리오 트리

시나리오 트리의 구조는 제한되어 있습니다. 단계의 각 노드는 정확히 동일한 수의 호를 갖습니다.

단계당 하나 이상의 무작위 슬롯 무료체험가 있는 경우 그에 따라 시나리오 수가 증가합니다. 단계와 확률 슬롯 무료체험의 수에는 절대적인 제한이 없지만 단계와 확률 슬롯 무료체험의 수가 증가하면 모델이 매우 빠르게 커질 수 있습니다. 또한 확률 슬롯 무료체험는 단계적으로 독립적이라는 점에 유의하세요. 한 단계의 확률슬롯 무료체험 구현은 이후 단계의 확률슬롯 무료체험 구현에 영향을 미치지 않습니다.

샘플링 절차

슬롯 무료체험는 이산 확률 분포를 따르는 무작위 변수를 사용하여 확률론적 프로그램만 풀 수 있습니다. 무작위 데이터가 연속 확률 분포를 따르는 경우 집합 \( \Omega \)에는 무한한 수의 요소가 있습니다. 샘플링은 \(\Omega_N\)에서 \(\Omega\)까지의 유한 근사치를 생성하는 프로세스입니다. \( \Omega_N \)의 크기는 \(N\)이고 \( \Omega_N \)의 각 요소는 동일한 확률 \( p=\frac1N \)을 갖습니다. 따라서 연속 확률 분포는 이산 분포로 근사화됩니다. EMP SP는 키워드를 제공합니다.샘플샘플링을 용이하게 합니다. 다음은 예시입니다.

randvar d 일반 45 10
샘플 d 100

이 두 줄은 다음의 일부입니다.emp.info파일. 첫 번째 줄에d은(는) 평균이 45이고 표준 편차가 10인 정규 분포를 따르는 무작위 변수로 정의됩니다. 두 번째 줄에서는 연속 분포가 크기 100의 표본으로 근사됨을 지정합니다. 표본 크기 \(N\)은 사용자가 슬롯 무료체험합니다. 키워드 사용에 유의하세요.샘플은 연속 분포를 갖는 무작위 슬롯 무료체험의 경우 필수입니다. 그렇지 않으면 다음 오류 메시지가 나타납니다.

*** 샘플링된 연속 분포가 있는 무작위 슬롯 무료체험만 지원됩니다.

배후에서 샘플링이 LINDO 시스템에 의해 수행되는 것을 관찰하십시오. 따라서 모델러는 10보다 큰 샘플 크기에 대해 LINDO 라이센스가 필요합니다(더 작은 샘플 크기는 데모 버전에 포함되어 있습니다). LINDO 시스템은 Antithetic 알고리즘, Latin Square 알고리즘 및 Monte Carlo 알고리즘의 세 가지 분산 감소 알고리즘을 제공합니다. 다음 옵션 중 하나를 사용하여 활성화할 수 있습니다.svr_ls_antithetic또는svr_ls_latinsquare또는svr_ls_montecarlo각각.

또는 모델러는 먼저 분포 표본을 생성한 다음 해당 표본을 이산 분포로 입력하도록 선택할 수 있습니다.emp.info파일. 이 절차에 사용할 수 있는 두 가지 확률론적 라이브러리가 있습니다: GAMS 확률론적 라이브러리와 LINDO 샘플링 라이브러리. LINDO 라이브러리를 사용하는 절차에 대한 예와 세부 사항은 섹션에 나와 있습니다.샘플링EMP 매뉴얼에 있습니다.

기대값 문제

샘플 크기가 1이고 "샘플링된" 값이 무작위 변수의 예상 값과 동일한 특별한 경우를 고려하십시오. 이는 확률 변수가 예상 값으로 대체됨을 의미합니다. 결과 모델은 결정적이며 Expesetd Value Program이라고 합니다. 슬롯 무료체험는 옵션을 통해 기대값 문제 해결을 촉진합니다.solveEVProb. 이 옵션이 옵션 파일에 지정되면(아래 예 참조) 원래 확률 모델 이후 기대값 문제가 해결되고 솔루션이 보고됩니다. 또한 슬롯 무료체험는 예상 값 문제에 대해 별도의 하위 해결사를 선택할 수 있는 옵션을 제공합니다.evsubsolver.

다음 예에서 확률론적 모델은 하위 솔버 Conopt로 해결되고 기대값 문제는 하위 솔버 Minos로 해결됩니다.

$onecho > 슬롯 무료체험opt
하위 해결사 개념
해결EVProb 
evsubsolver 미노스
$offecho
mymodel.optfile=1;
emp 시나리오 dict를 사용하여 mymodel min obj를 해결합니다.

옵션에 유의하세요solveEVProb은 기회 제약이 있는 모델과 VaR 및 CVaR을 갖춘 모델에 대해 정의되지 않습니다. 이러한 모델 유형은 다음 섹션에서 논의됩니다.

슬롯 무료체험가 처리할 수 있는 모델 유형은 무엇입니까?

앞서 언급했듯이 슬롯 무료체험는 2단계 및 다단계 확률론적 선형, 2차 및 비선형 모델과 이러한 모든 모델의 혼합 정수 버전을 풀 수 있습니다. 슬롯 무료체험가 해결하기 위해 장착된 확률론적 모델에는 기회 제약이 있는 확률론적 프로그램과 VaR(위험에서의 분산) 및 CVaR(위험에서의 조건적 분산)과 같은 다른 위험 측정이 포함된 확률론적 프로그램이라는 두 가지 추가 클래스가 있습니다. CVaR은 예상 부족분이라고도 합니다.

기회 제약이 있는 확률론적 프로그램에서 목표는 특정 확률로 제약 조건을 위반하도록 허용하면서 무작위 데이터를 실현하기 전에 최적의 슬롯 무료체험을 내리는 것입니다. 수학적으로 확률 제약이 있는 확률적 선형 계획은 다음과 같이 표현될 수 있습니다.

\begin방정식

여기서 \( x \in \mathbbR^n \)은 슬롯 무료체험 변수이고 \( c^T \)는 목적 함수의 계수를 나타냅니다. \( A \in \mathbbR^m \times n \)는 확률 행렬이고 계수를 나타내며 \( b \in \mathbbR^m \)은 확률 벡터이며 제약 조건의 오른쪽을 나타냅니다. 기회 제약이 있는 확률론적 프로그램의 독특한 특징은 제약 조건(또는 그 중 일부)이 \( \epsilon = 1-p \) 확률로 위반될 수 있다는 것입니다. 여기서 \(0 < p \leq 1\)

슬롯 무료체험는 기회 제약이 있는 확률론적 프로그램을 풀기 위한 세 가지 재구성 옵션을 제공합니다. 즉, 큰 \( M \) 표기법이 있는 혼합 정수 프로그램을 사용한 재구성, 볼록 껍질 재구성 및 표시 변수 및 표시 제약 조건의 사용입니다. 기본값은 MIP 재구성입니다(\(M\)의 기본값은 10000으로 설정되어 있으며 사용자 정의할 수 있음). 옵션 포함ccreform재공식화 방법은 사용자가 슬롯 무료체험할 수 있습니다.

단일 및 공동 기회 제약 조건과 옵션 사용 방법에 대한 자세한 내용은ccreform, 섹션 참조EMP의 기회 제약EMP 매뉴얼에 있습니다. 기회 제약이 있는 프로그램의 확률 슬롯 무료체험는 이산적이거나 연속적인 확률 분포를 따를 수 있습니다. 확률적 제약이 있는 확률론적 프로그램에는 단계가 없다는 점에 유의하세요.

앞서 언급했듯이 슬롯 무료체험는 목적 함수 변수의 예상 값을 자동으로 최적화합니다. 슬롯 무료체험는 VaR 및 CVaR과 같은 다른 위험 측정도 지원합니다. 수학적인 측면에서 슬롯 무료체험는 다음을 해결할 수 있습니다.

\begin방정식

여기서 \( z \)는 목적 함수 슬롯 무료체험를 나타내고 \( \mathcalR \)는 기대 값, VaR 및 CVaR 또는 위험 측정의 조합(예: 기대 값과 CVaR의 가중 합계)과 같은 위험 측정값을 나타냅니다. 또한 모델러는 위험 측정을 절충하도록 선택할 수도 있습니다. 위험 조치에 대한 자세한 내용은 섹션을 참조하세요.EMP를 통한 위험 조치EMP 매뉴얼에 있습니다.

재공식화 기술

이 섹션에서는 슬롯 무료체험가 배후에서 수행하는 재공식화에 대한 일부 세부정보가 제공됩니다.

간단한 2단계 확률 모델

앞서 언급했듯이 슬롯 무료체험는 확률론적 모델을 결정론적 모델로 변환합니다. 모델 사용nbsimple.gms45721_45894간단한 예: 뉴스 공급업체 문제EMP 매뉴얼 중.

모델은 다음 방정식으로 제공됩니다:

\begin방정식

어디에서

\beginalign

여기서 \(c\), \(v\), \(h\) 및 \(p\)는 일부 주어진 매개변수이고, 첫 번째 단계 슬롯 무료체험 변수는 \(x\)이고, 두 번째 단계 슬롯 무료체험 변수는 \(s\), \(i\) 및 \(l\)이며 불확실한 데이터는 무작위 변수 \(d(\omega)\)로 표시됩니다. 주석은 \(d\)가 정규 분포를 따르고 이 연속 분포를 근사화하기 위한 표본 크기가 4라고 가정합니다(여기서 모든 시나리오의 가능성은 동일하므로 \(p(s) = 0.25\)).

먼저 슬롯 무료체험는 주석에 지정된 정규 분포에서 4개의 값을 그립니다. 이 4가지 값은 생성되는 4가지 시나리오의 기초입니다. 각 시나리오에 대해 두 개의 2단계 제약 조건에 대한 별도의 방정식이 구축됩니다(즉, 8개의 방정식). 이 과정에서 2단계 의사결정변수는 시나리오별로 서로 다른 값을 가질 수 있으므로 2단계 의사결정변수 3개 각각에 대해 4개의 변수가 생성된다. 다음으로 시나리오별 수익에 대한 방정식을 생성하고(4개 방정식), 마지막으로 평균 이익을 계산하는 방정식을 구축한다. 그래서 총 13개의 방정식이 있습니다. 여기에 제공됩니다:

\begin방정식

1단계 슬롯 무료체험 변수 \(x\)의 실현은 단 한 번뿐인 반면, 2단계 슬롯 무료체험 변수의 경우 시나리오 수만큼 많은 실현이 있다는 점에 유의하세요.

다단계 확률론적 모델

슬롯 무료체험는 시나리오 트리를 반복적으로 구축하여 다단계 모델과 동등한 결정론적 모델을 생성합니다. 우리는 모델을 취합니다인벤토리에서EMP 매뉴얼이 작업이 어떻게 수행되는지 보여줍니다. 4단계 모델은 다음 방정식으로 제공됩니다.

\beginalign

어디에서

\beginalign

여기서 \(y_1\) 및 \(i_1\)은 첫 번째 단계 슬롯 무료체험 변수이고 \(y_t\), \(i_t\) 및 \(s_t\)는 이후 단계의 슬롯 무료체험 변수입니다. \(\alpha\), \(\beta\), \(\gamma\), \(\delta\) 및 \(\kappa\)는 고정 매개변수를 나타냅니다. 불확실한 데이터는 확률 변수 \(d_t(\omega_\zeta)\)로 표시됩니다. 여기서 \(\omega_\zeta \in \Omega_\zeta\) 및 \(\zeta = \textI, \textII, \textIII\)입니다. \(s_t\), \(y_t\) 및 \(i_t\)는 \(d_t\)의 실현에 따라 달라집니다. 이제 \(d_t\)가 연속 분포를 따르고 이 분포를 근사화하기 위한 표본 크기가 단계 2~4에 대해 단지 3이라고 가정합니다. 다단계 모델에서는 표본 크기가 각 단계마다 다를 수 있습니다. 모든 실제적인 목적을 위해 이 샘플 크기가 너무 작으므로 설명의 명확성을 이유로 여기에서 선택되었습니다. 평소와 같이 분포와 표본 크기는 주석에 지정됩니다. 마지막 제약 조건( \( i_t \leq \kappa \))은 방정식이 아닌 변수 \(i_t\)에 대한 경계로 구현됩니다. 그래서 목적방정식 외에 첫 번째 단계에는 하나의 방정식이 있고, 이후 단계에는 각각 세 개의 방정식이 있습니다.

이 모델은 다음과 같은 방식으로 재구성됩니다. 먼저, 첫 번째 단계 제약에 대한 방정식이 생성됩니다. 둘째, \(d_2\)의 세 가지 구현이 샘플링 절차를 통해 선택되므로 단계 2에는 세 가지 시나리오가 있습니다. 랜덤 슬롯 무료체험의 이러한 세 가지 구현 각각에 대해 두 번째 단계에 대한 방정식이 생성됩니다(9개 방정식). 세 번째로 \(d_3\)의 세 가지 실현이 3단계에서 샘플링됩니다. 이 세 가지 실현 각각은 두 번째 단계의 세 가지 시나리오 중 하나를 따를 수 있으므로 3단계에는 9개의 시나리오가 있으므로 \(9 \times 3 = 27\) 방정식이 3단계에서 생성됩니다. 이 절차는 27개의 시나리오와 \( 27 \times 3 = 81 \) 방정식이 있는 4단계에서 반복됩니다. 다음으로 \(z_s\)에 대해 27개의 방정식을 생성하여 각 시나리오에 대한 목적 슬롯 무료체험의 값을 계산하고 마지막으로 \(z\)를 계산하는 방정식을 구축합니다. 여기서 \( z = \sum_s p(s) z_s \)

기회 제약

기회 제약이 있는 모델은 기본적으로 혼합 정수 문제로 재구성됩니다. 이 재구성은 섹션에서 자세히 논의됩니다.EMP의 기회 제약EMP 매뉴얼에 있습니다. 볼록 껍질이나 표시 변수 및 표시 제약 조건을 사용한 재공식화도 가능합니다. 재구성 방법은 옵션을 사용하여 사용자가 슬롯 무료체험할 수 있습니다.ccreform.

VaR 계산

VaR과 관련된 모델은 큰 \(M\) 표기법을 사용하는 혼합 정수 프로그램을 사용하여 재구성됩니다. 예시 모델에 따라portfolio.gms우리는 이것이 어떻게 이루어지는지 보여줍니다. 이 모델은 섹션에서 논의됩니다.위험 가치(VaR)EMP 매뉴얼에 있습니다. 모델은 다음 방정식으로 제공됩니다.

\begin방정식

여기서 \(\underlineVaR_\theta\)는 하위 \(\theta\)번째 백분위수에서의 VaR이고, 변수 \(R\)는 수익입니다(랜덤 변수 \(v_j(\omega)\)의 함수임). \(w_j\) 각 자산과 관련된 가중치 \(j\) 및 \(v_j(\omega)\)는 (랜덤 변수) 각 자산 \(j\)의 수익. 가중치는 투자할 금액의 비율로 해석될 수도 있으며 그 합은 1이어야 합니다. \(w_j\)가 이 문제의 슬롯 무료체험 변수라는 점에 유의하세요.

\( y(s) \)를 표시 슬롯 무료체험로 작동하는 이진 슬롯 무료체험로 둡니다. 각 시나리오에서 \( R \geq \underlineVaR_\theta[R] \)를 반환하면 1이고 그렇지 않으면 0입니다. 그런 다음 모델은 다음 MIP로 재구성됩니다.

\begin방정식

여기서 \( r(s) \)는 시나리오별 수익을 나타내고 \( cc \)는 위반 가능성을 나타내는 슬롯 무료체험입니다(시나리오에서 수익이 \( \underlineVaR_\theta[R] \)보다 작으면 위반이 발생합니다). 평소와 같이 \( p(s) \)는 시나리오가 발생할 확률이고 \( M \)은 가장 큰 \( M \)입니다. \( cc \)의 경계와 함께 처음 세 가지 제약 조건은 위반 확률이 \( \theta \)보다 작거나 같음을 보장합니다.

VaR이 있는 모델의 큰 \(M\)에 대한 기본값은 1000이라는 점에 유의하십시오(그리고 이는 확률 제약에 대한 큰 \(M\)의 기본값과 다릅니다). 옵션으로 맞춤설정할 수 있습니다.varbigm.

CVaR 계산 중

CVaR이 있는 모델은 주석을 새로운 슬롯 무료체험 및 방정식으로 변환하여 재구성됩니다. 모델 사용portfolio.gms예를 들어 이것이 어떻게 수행되는지 보여줍니다. 이 모델은 GAMS EMP 라이브러리에 포함되어 있으며 섹션에서도 논의됩니다.위험 조건부 가치(CVaR)EMP 매뉴얼에 있습니다. 모델은 다음과 같이 제공됩니다.

\begin방정식

여기서 \(\underlineCVaR_\theta\)는 신뢰 수준 \(\theta\)에서 분포의 왼쪽 꼬리에 있는 CVaR이고 다른 모든 변수는 위에 정의된 것과 같습니다. 다시 한 번, \(w_j\)가 이 문제의 슬롯 무료체험 변수라는 점에 유의하세요.

슬롯 무료체험는 세 가지 새로운 변수와 세 가지 관련 방정식을 도입하여 이 모델을 재구성합니다. \(r(s)\)는 시나리오당 수익, \(t\)는 대략 \(1-\theta\) 및 \(d(s)\), \(d(s) \geq 0\) 확률로 달성할 목표 수익, \(d(s) \geq 0\), 시나리오당 \(t\)의 낮은 편차를 나타냅니다. 방정식은 다음과 같습니다.

\begin방정식

따라서 모델은 LP로 재구성되며 적절한 솔버로 해결될 수 있습니다. \(t\)가 \( \underlineVaR_\theta[R] \)와 같다는 것을 쉽게 알 수 있습니다.

로그파일

로그 파일은 솔버 진행에 대한 많은 정보를 제공합니다. 다음은를 실행하여 얻은 슬롯 무료체험 로그 출력입니다.nbdiscjointGAMS EMP 모델 라이브러리의 모델:

--- 컴파일 시작
--- nbdisjoint.gms(74) 3Mb
--- 실행 시작: 경과 0:00:00.024
--- nbdisjoint.gms(72) 4Mb
---
--- gdx 파일 수집 및 작성 
---
--- EMP 모델 nb 생성
--- nbdisjoint.gms(72) 6MB
--- 5행 9열 0이 아닌 숫자 19개
--- 6개의 nl 코드 2개의 nl-0이 아닌 값
--- nbdisjoint.gms(72) 4Mb
--- 슬롯 무료체험 실행 중: 0:00:00.083 경과
--- 입력 모델 유형이 LP로 식별 및 해결됨
슬롯 무료체험 24.5.1 r54187 2015년 9월 23일 출시 DEG x86 64bit/MacOS X
--- 슬롯 무료체험에는 행 26개, 열 50개, 0이 아닌 값 116개가 있습니다.

IBM ILOG CPLEX 24.5.1 r54187 2015년 9월 23일 출시 DEG x86 64bit/MacOS X
클플렉스 12.6.2.0

데이터를 읽는 중...
클플렉스를 시작하는 중...
이름을 로드할 수 없습니다.
애그리게이터를 1회 시도했습니다.
LP Presolve는 14개의 행과 31개의 열을 제거했습니다.
축소된 LP에는 행 12개, 열 19개, 0이 아닌 값 36개가 있습니다.
사전 해결 시간 = 0.01초 (0.02틱)

반복 로그 . . .
반복: 1 쌍대 실행 불가능성 = 52.800000
반복: 10 이중 목표 = 2660.700000
LP 상태(1): 최적
Cplex 시간: 0.06초(디트. 0.05틱)

최적의 솔루션을 찾았습니다.
목표 : 1173.900000

--- 실행 다시 시작
--- nbdisjoint.gms(72) 2Mb
--- 모델 nb에 대한 읽기 솔루션
--- nbdisjoint.gms(72) 3Mb
---
--- gdx 파일 분산 및 읽기
---
--- randvar Id = d는 s_d에 매핑됩니다.
--- nbdisjoint.gms(72) 3Mb
--- randvar Id = r은 s_r에 매핑됩니다.
--- 레벨 ID = s는 s_s에 매핑됩니다.
--- 레벨 ID = x는 s_x에 매핑됩니다.
--- nbdisjoint.gms(72) 4Mb
--- 2ms 안에 분산 완료
--- nbdisjoint.gms(74) 4Mb
*** 상태 : 정상완료
--- 작업 nbdisjoint.gms 중지 12/06/15 18:02:47 경과 0:00:00.382

먼저, 스칼라 형식의 모델이 생성됩니다. 5개의 방정식이 있으므로 모델 통계는 5개의 행을 보고합니다. 또한 6개의 양수 변수, 1개의 자유 변수 및 2개의 확률 변수가 있으므로 9개의 열이 있습니다. 변수를 열로, 방정식을 행으로 사용하는 모델의 행렬 형식 표현에는 0이 아닌 항목이 19개 있습니다. 다음으로 슬롯 무료체험는 결정론적 등가물을 생성합니다. 결정론적 등가물에 대한 통계는 26개의 행, 50개의 열 및 116개의 0이 아닌 항목이 있음을 나타냅니다. 확률론적 모델에는 6개의 시나리오가 있으므로 각 2단계 방정식에는 결정론적 등가물에 6개의 방정식이 있습니다(즉, 총 24개의 방정식). 또한, 목적변수의 기대값을 계산하기 위한 1단계 방정식과 방정식이 각각 하나씩 있어 총합이 26개의 방정식 또는 행이 됩니다. 마찬가지로 확률론적 모델의 각 2단계 변수에는 결정론적 등가물에 6개의 변수가 있습니다(즉, 총 48개의 변수). 또한 1단계 결정 변수와 목표의 기대값에 대한 변수를 합산하여 총 50개의 변수 또는 열이 있습니다.

모델 유형이 LP로 식별되므로 기본 LP 솔버가 호출됩니다. 이 경우 하위 해결사는 Cplex이며 로그 파일의 나머지 대부분은 하위 해결사에서 출력됩니다. 마지막에는 사전에 지정된 매핑이 수행됩니다.

VaR 또는 CVaR을 사용하여 확률론적 모델을 해결하는 로그 파일은 유사합니다. 모델 유형이 결정되고 결정론적 등가물이 구축된 다음 해결되도록 적절한 하위 해결사에 전달되었음을 보고합니다. 그러나 기회 제약이 있는 확률론적 프로그램을 해결할 때 그 뒤에서는 훨씬 더 많은 일이 발생합니다. 슬롯 무료체험는 자동으로 모델을 하위 해결사 JAMS에 넘깁니다. 기본적으로 JAMS는 모델을 다시 공식화하고 해당 모델의 스칼라 버전을 생성합니다. 그러면 재구성된 모델의 스칼라 버전이 GAMS 시스템으로 다시 전달되어 적절한 하위 해결사에 의해 해결됩니다. 로그 파일은 모델이 해결될 때까지 하위 해결 프로그램의 진행 상황을 보고합니다. 그런 다음 GAMS 하위 해결 프로그램의 솔루션이 JAMS로 전달되고 분리 목록과 해당 활동 수준이 보고됩니다. (만족되지 않을 수 있는 재구성된 모델의 스칼라 버전 방정식을 호출합니다.분리. 활성접합은 만족되는 방정식을 참조하며활성화되지 않음접합은 만족되지 않는 방정식을 나타냅니다.)

실행 중 슬롯 무료체험 로그 파일의 일부단순한 우연62840_63028

...
--- EMP 모델 sc 생성
--- simplechance.gms(79) 6Mb
--- 행 3개, 열 5개, 0이 아닌 숫자 9개
--- 9 nl 코드 4 nl-0이 아닌 값
--- simplechance.gms(79) 4Mb
--- 슬롯 무료체험 실행 중: 0:00:00.024 경과
--- 입력 모델 유형이 LP로 식별 및 해결됨
슬롯 무료체험 24.5.1 r54187 2015년 9월 23일 출시 DEG x86 64bit/MacOS X

--- Solvelink 재설정 = 2

JAMS 1.0 24.5.1 r54187 2015년 9월 23일 출시 DEG x86 64bit/MacOS X

JAMS - 확장 수학 프로그램(EMP)용 해결사
----------------------------

--- 옵션 파일 사용
"jams.159"에서 매개변수 읽기
>> EMPInfo파일 .../Models/225a/jamsinfo.dat
>> 하위 솔버 CPLEX
"jams.159" 읽기를 마쳤습니다.

--- EMP 요약
    논리적 제약조건 = 0
    분리 = 7
    조정된 제약 = 0
    반전된 제약 조건 = 0
    이중 변수 맵 = 0
    이중 방정식 맵 = 0
    VI 함수 = 0
    평형 에이전트 = 0
    이중 레벨 추종자 = 0

*** BigM 분리 7개 중 경고 7개는 슬롯 무료체험의 bigM 기본값(10000)을 사용합니다.

--- 모델 .../Models/225a/emp.dat는 GAMS로 해결됩니다.
---
--- 작업 emp.dat 시작 12/06/15 18:43:18 24.5.1 r54187 DEX-DEG x86 64bit/MacOS X
GAMS 24.5.1 저작권 (C) 1987-2015 GAMS 개발. 모든 권리 보유
...
--- MIP 모델 m 생성
--- emp.dat(68) 3Mb
--- 행 10개, 열 19개, 0이 아닌 숫자 40개
--- 7개의 개별 열
--- CPLEX 실행 중: 0:00:00.016 경과

IBM ILOG CPLEX 24.5.1 r54187 2015년 9월 23일 출시 DEG x86 64bit/MacOS X
클플렉스 12.6.2.0

데이터를 읽는 중...
클플렉스를 시작하는 중...
....
MIP 솔루션: 4.750000(11번 반복, 0노드)
최종 해결: 4.750000(2회 반복)
...
--- 모델 m에 대한 판독 솔루션
*** 상태 : 정상완료
--- 작업 emp.dat 중지 12/06/15 18:43:18 경과 0:00:00.299
--- GAMS 단계에서 복귀
---
--- 분리 요약
    분리 1이 활성화되지 않았습니다.
    분리 2가 활성화되었습니다.
    분리 3이 활성화되었습니다.
    분리 4가 활성화되었습니다.
    분리 5가 활성화되지 않았습니다.
    분리 6이 활성화되었습니다.
    분리 7이 활성화되었습니다.
---
--- 실행 다시 시작
--- simplechance.gms(79) 2Mb
--- 모델 sc에 대한 읽기 솔루션
--- simplechance.gms(79) 3Mb
---
--- gdx 파일 분산 및 읽기
---
--- randvar Id = om1은 s_om1에 매핑됩니다.
--- simplechance.gms(79) 3Mb
--- randvar Id = om2는 s_om2에 매핑됩니다.
--- 레벨 ID = x1은 x1_l에 매핑됩니다.
--- 한계 Id = x1은 x1_m에 매핑됩니다.
--- 레벨 ID = x2는 x2_l에 매핑됩니다.
--- 레벨 ID = e1은 e1_l에 매핑됩니다.
--- 레벨 ID = e2는 e2_l에 매핑됩니다.
--- simplechance.gms(79) 4Mb
--- 2ms 안에 분산 완료
--- simplechance.gms(81) 4Mb
*** 상태: 정상완료

슬롯 무료체험 옵션 요약

일반 옵션

옵션설명기본값
상관관계 유형 샘플 상관관계 유형0
empinfofile randvar, jrandvar, stage 등의 추가 EMP-SP 정보를 포함하는 파일의 경로 및 이름
하위 해결사 실행할 하위 해결사
서브솔버롭트 하위 솔버에 전달할 Optfile 값1
svr_ls_antithetic Lindo Antithetic 알고리즘에 대한 샘플 분산 감소 맵
svr_ls_latinsquare Lindo Latin Square 알고리즘에 대한 샘플 분산 감소 맵
svr_ls_montecarlo Lindo Montecarlo 알고리즘에 대한 샘플 분산 감소 맵

기회 제약 모델 옵션

옵션설명기본값
ccreform 재공식화 옵션이 JAMS에 전달되었습니다.빅엠
jamsopt JAMS 옵션 파일

리코스 모델 옵션

옵션설명기본값
evsubsolver 기대값 문제에서 실행되는 하위 해결사
evsubsolverop 기대값 문제에 대한 하위 해결사에 전달할 Optfile 값1
최대 노드 트리 크기 제한100000
solveEVProb 기대값 솔루션 해결 및 보고0
varbigm 위험 가치 재구성을 위한 Big M1000.0

슬롯 무료체험 옵션에 대한 자세한 설명

ccreform (문자열): 재구성 옵션이 JAMS에 전달됨

이 옵션은 슬롯 무료체험론적 동등 항목에서 확률 제약 조건의 표시 제약 조건을 공식화하는 방법을 슬롯 무료체험합니다. 실제 재공식화 및 하위 해결 프로그램을 사용한 솔루션을 위해 모델이 JAMS로 전달됩니다. 가능한 재구성 옵션은 다음과 같습니다.bigM [큰 EPS 임계값], 철 [큰 EPS]인딕.인딕설정은 GAMS 옵션 파일의 표시기 구문을 이해하는 솔버에서만 작동합니다.

기본값:빅엠

상관관계 유형 (정수): 샘플 상관 유형

기본값:0

의미
0 피어슨
1 켄달
2 스피어맨

empinfofile (문자열): randvar, jrandvar, stage 등의 추가 EMP-SP 정보가 포함된 파일의 경로 및 이름

evsubsolver (문자열): 기대값 문제에 대해 실행되는 하위 해결사

evsubsolverop (정수): 기대값 문제에 대한 하위 해결사에 전달할 Optfile 값

범위:1, ...,999}

기본값:1

jamsopt (문자열): JAMS 옵션 파일

최대 노드 (정수): 트리 크기 제한

범위:1000, ..., 무한

기본값:100000

solveEVProb (값 없음): 기대값 솔루션을 풀고 보고합니다.

기본값:0

하위 해결사 (문자열): 실행할 하위 해결 프로그램

서브솔버롭트 (정수): 하위 해결사에 전달할 Optfile 값

범위:1, ...,999}

기본값:1

svr_ls_antithetic (문자열): Lindo Antithetic 알고리즘에 대한 샘플 분산 감소 맵

svr_ls_latinsquare (문자열): Lindo Latin Square 알고리즘에 대한 샘플 분산 감소 맵

svr_ls_montecarlo (문자열): Lindo Montecarlo 알고리즘에 대한 샘플 분산 감소 맵

varbigm (진짜): 위험 가치 재구성을 위한 Big M

기본값:1000.0