gdxdump1.gms : 운송 문제에 GdxDump NoData 사용

설명

GdxDump NoData 옵션을 사용하여 일부 슬롯 사이트 기호에 대한 선언 생성

기여자: M. Bussieck

소형 모델 유형 :슬롯 사이트


카테고리 : 슬롯 사이트 테스트 라이브러리


메인 파일 : gdxdump1.gms

$title 운송 문제에 GdxDump NoData 사용 (GDXDUMP1,SEQ=504)

$onText
GdxDump NoData 옵션을 사용하여 일부 슬롯 사이트 기호에 대한 선언 생성

기여자: M. Bussieck
$offText

$onEcho > t.gms
세트
     i 통조림 공장 / 시애틀, 샌디에고 /
     j 마켓 / 뉴욕, 시카고, 토피카 / ;

별칭(i,ii);

매개변수

     a(i) 경우에 따라 공장 i의 생산 능력
       /시애틀 350
            샌디에이고 600 /

     b(j) 다음과 같은 경우 시장 j의 수요
       / 뉴욕 325
            시카고 300
            토피카 275 / ;

테이블 d(i,j) 거리(천 마일)
                  뉴욕 시카고 토피카
    시애틀 2.5 1.7 1.8
    샌디에고 2.5 1.8 1.4 ;

스칼라 f '(1,000마일당 케이스당 운임(달러))' ;

매개변수 c(i,j) 운송 비용(케이스당 수천 달러) ;

케이스의 양수 변수 x(i,j) 배송 수량 ;
$offEcho
$콜 게임 t.gms lo=%슬롯 사이트lo% gdx=t.gdx
$if errorlevel 1 $abort '데이터 gdx 파일 t.gdx 생성 시 문제'

$call gdxdump t.gdx nodata > td.gms
$if errorlevel 1 $abort 'gdxdump NoData 관련 문제'

$include TD

f = 90;
c(ii,j) = f * d(ii,j) / 1000 ;

변수 z;

방정식
     비용 정의 목적 함수
     공급(i) 공장 i의 공급 제한을 준수합니다.
     수요(j)는 시장 j의 수요를 충족시킵니다.

비용 .. z =e= sum((i,j), c(i,j)*x(i,j)) ;

공급(ii) .. sum(j, x(ii,j)) =l= a(ii) ;

수요(j) .. sum(i, x(i,j)) =g= b(j) ;

모델 전송 /all/ ;

z 를 최소화하는 lp를 사용하여 전송을 해결합니다.

x.l, x.m 표시 ;