메가 슬롯 제약조건의 평형 문제

에서균형 문제우리는 지금까지 논의했으며 각 변수와 각 제약 조건은 단일 에이전트가 소유했습니다. 이 섹션에서는 각 제약 조건이 단일 에이전트에 의해 제어되어야 한다는 가정을 완화하고 다음을 소개합니다.메가 슬롯 제약조건. 메가 슬롯 제약조건은 여러 에이전트의 문제에 나타나는 제약조건입니다. 주로 에이전트 간에 메가 슬롯되는 리소스를 모델링하는 데 사용됩니다. 이 섹션의 예시는 Kim & Ferris(2017) [108].

다음 예를 고려해보세요:

\begin방정식 \tag 14

제약조건 \(g_i\)은 에이전트 \(i\)가 소유하는 반면, 제약조건 \(h\)는 모든 에이전트가 메가 슬롯합니다. 이 예는 각각 고유한 두 가지 방법으로 재구성될 수 있습니다.EMP 주석및 결과 MCP. 그러나 둘 다 아래 모델 공식을 메가 슬롯합니다.

변수 obj(i), x(i);
방정식 deff(i), defg(i), defh;

모델 sharedc / def, defg, defh /;

방정식을 관찰하세요데프메가 슬롯 제약 조건 \(h(x) \leq 0\) 구현은 색인화되지 않습니다. 이는 에이전트당 한 번이 아니라 한 번만 존재합니다. EMP 주석을 작성하는 첫 번째 방법은 다음과 같습니다.

파일 empinfo / '%emp.info%' /;
empinfo '평형' 입력 /;
루프(나,
    'min', obj(i), x(i), deff(i), defg(i), defh를 넣습니다. /;
);
putclose empinfo;

여기 방정식defh각 에이전트의 최소화 문제에 나타납니다. 방정식으로defh에이전트별로 인덱싱되지 않고 각 에이전트의 문제에 나타나므로 메가 슬롯 제약임을 쉽게 알 수 있습니다. 이러한 주석이 제공되면 EMP 프레임워크는 각 에이전트의 FOC를 집계하여 다음 MCP를 생성합니다.

\begin방정식 \tag 15

방정식 \(h(\cdot)\)는 각 에이전트에 대해 복제되며 각 에이전트에는 별도의 승수 \(\mu_i\)가 할당됩니다.

주의
기본적으로 솔버 JAMS는 메가 슬롯 제약조건을 허용하지 않습니다. 옵션SharedEqu옵션 파일에 지정해야 함jams.opt메가 슬롯 제약조건이 의도된 경우, 그렇지 않은 경우 감지되면 오류가 보고됩니다. 이러한 신중한 기본값은 예상치 못한 결과의 수를 최소화하는 데 도움이 됩니다.

JAMS 옵션 파일을 포함한 전체 모델이 제공됩니다.아래.

EMP 주석을 작성하는 두 번째 방법은 다음을 사용합니다.EMP 키워드 비솔다음을 지정하려면변형 평형계산됩니다. 즉, 승수 \(\mu_i\)가 모두 동일한 솔루션입니다.비솔키워드가 나타나야 합니다이후EMP 키워드평형그리고이전에이전트 모델에 대한 설명입니다.

put / 'VIsol defh';

같게 만드는 승수(또는 복제하지 않는 제약 조건)는 키워드 다음에 방정식 이름으로 표시됩니다.비솔. 이러한 제약 조건은 에이전트당 한 번이 아니라 결과 MCP에 한 번 나타납니다. EMP 도구는 다음 MCP를 생성합니다.

\begin방정식 \tag 16

제약 조건이 없는 경우 \(g_i(x)\), 그러면 - 제약 조건을 가정하면 - 메가 슬롯 제약 조건이 있는 평형 문제는 정확히 변분 불평등 \(VI(F,X)\)에 해당합니다. 여기서 \(X=\x \, | \, h(x) \leq 0\\) 및 \(F(x) = ((\bigtriangledown_x_if_i(x)^T)_i=1^N)^T\). 이는 솔루션에 승수 \(\mu_i\)가 모두 동일하다는 속성이 있는 경우 첫 번째 MCP(복제된 메가 슬롯 제약 조건 포함)의 솔루션에 해당합니다. 이것이 후자의 솔루션에 이름을 부여한 것입니다.변형 평형. 메가 슬롯 제약 조건이 있는 평형 문제에 고유한 솔루션이 있는 경우 두 MCP 재공식은 동일한 솔루션을 갖게 됩니다. 그렇지 않으면 두 개의 서로 다른 EMP 주석에 해당하는 두 개의 MCP가 서로 다른 솔루션을 가질 수 있습니다.

메가 슬롯 제약의 예는 Haurie & Krawczyk(1997)의 강 유역 오염입니다. [95] 및 Krawczyk & Uryasev(2000) [110], 강에 버려질 수 있는 오염물질의 총량이 제한되어 있습니다. 이는 일부 오염 물질 생성 물질의 환경적 제약이 메가 슬롯된다는 것을 의미합니다. 이 예는 다음과 같이 공식화될 수 있습니다. 여기서 \(i\)는 에이전트 인덱스이고 \(m\)은 메가 슬롯 제약 조건의 수를 나타냅니다.

\begin방정식 \tag 17

여기서 세 명의 대리인이 일부 상품을 생산하고 이익을 극대화하는 것을 목표로 합니다. \((c_1i + c_2i x_i) \, x_i\) 항은 각 에이전트의 총 비용 \(i\)을 나타내고 \( ( d_1 - d_2 ( \sum_j=1, \, j \neq i^3 x^*_j + x_i )) \, x_i\) 항은 각 에이전트의 수익을 나타냅니다. 각 에이전트가 강에 버리는 오염 물질의 양은 두 가지 메가 슬롯 제약 조건에 의해 제한됩니다. 이 문제는 다음과 같이 EMP를 사용하여 GAMS에서 구현할 수 있습니다.

i / 1*3 / 설정
     m / 1*2 / ;
별칭(i,j) ;

변수 obj(i) ;
양의 변수 x(i) ;

매개변수 K(m) / 1 100, 2 100 /
           d1 / 3 /
           d2 / 0.01 /
           e(i) / 1 0.5, 2 0.25, 3 0.75 / ;

테이블 c(m,i)
       1 2 3
  1 0.1 0.12 0.15
  2 0.01 0.05 0.01 ;

테이블 u(i,m)
       1 2
  1 6.5 4.583
  2 5.0 6.250
  3 5.5 3.750 ;

방정식 objdef(i)
           단점(m) ;

objdef(i).. obj(i) =e= (c('1',i) + c('2',i)*x(i))*x(i) - (d1 - d2*sum(j, x(j)))*x(i);

cons(m).. sum(i, u(i,m)*e(i)*x(i)) =l= K(m);

모델 m_shared / objdef, 단점 /;

파일 empinfo / '%emp.info%' /;
empinfo '평형' 입력 /;
'VIsol 단점'을 입력하세요. /;
루프(나,
    put 'min', obj(i), x(i), objdef(i), 'cons' /;
);
putclose empinfo;

$echo SharedEqu > jams.opt
m_shared.optfile = 1;

emp를 사용하여 m_shared를 해결합니다.
x.l, 단점 표시;

메가 슬롯 환경 제약 조건은 다음 방정식으로 표현됩니다.단점. EMP 주석에서는 EMP 키워드가 포함된 공식을 선택했습니다.비솔. 이는 \(x^*=(21.145, 16.028, 2.726)\) 해로 이어집니다. 또는 EMP 키워드가 있는 줄을 삭제할 수도 있습니다.비솔따라서 프레임워크가 (에서 MCP를 계산하도록 요청합니다.15), 결과는 \(x^*=(0, 6.473, 22.281)\) 해가 됩니다.