설명
VI는 X에서 x를 찾는 것입니다: F(x) (y - x) >= 0, X의 모든 y에 대해 X는 닫힌 볼록 집합입니다. X = x >= 0 | g(x) >= 0 이는 MCP로 다시 공식화될 수 있습니다. 0 <= F(x) - \grad g(x) u \perp x >= 0 0 <= g(x) \perp u >= 0 다음에서 모델 개편은 EMP가 갖춰야 할 MCP이다. 기여자: Steven Dirkse 및 Jan-H. Jagla , 2009년 1월
소형 모델 유형 :슬롯 커뮤니티
카테고리 : 슬롯 커뮤니티 테스트 라이브러리
메인 파일 : empvi04.gms
EMP 변이 부등식에 대한 $title 테스트(EMPVI04,SEQ=426)
$onText
VI는 X에서 x를 찾는 것입니다.
F(x) (y - x) >= 0, X의 모든 y에 대해
X는 닫힌 볼록 집합입니다. X = x >= 0 | g(x) >= 0
이는 MCP로 다시 공식화될 수 있습니다.
0 <= F(x) - \grad g(x) u \perp x >= 0
0 <= g(x) \perp u >= 0
다음에서 모델 개편은 EMP가 갖춰야 할 MCP이다.
기여자: Steven Dirkse 및 Jan-H. Jagla , 2009년 1월
$offText
세트
나는 / i1, i2 /
J / j1 * j3 /
;
테이블 A(I,J)
j1 j2 j3
나는1 1 1
i2 1 1 ;
매개변수 b(I) /
i1 6
i2 9
/;
긍정적인 변수
x(J) '원시 변수, perp에서 f(J)'
u(I) '보조 변수, perp to g(I)'
;
방정식
에프(J)
F_aux(J)
지(나)
;
F(J).. 2 * x(J) =N= 0 ;
F_aux(J).. 2 * x(J) + 합계I, -A(I,J)*u(I) =N= 0 ;
g(I).. sum j, A(I,J)*x(J) =g= b(I) ;
* MCP로 재구성된 VI
모델 개혁 / F_aux.x, g.u/;
mcp를 사용하여 개혁을 해결합니다.
모델 niceVI / F, g/;
파일 FX / "%emp.info%" /;
putclose fx 'vi F x';
niceVI.iterlim = 0;
emp를 사용하여 niceVI를 해결합니다.
abort$[niceVI.objval > 1e-6] '모델 vi에 대한 입력은 최적이어야 하지만 그렇지 않았습니다.';