pollut.gms : 산업 오염 관리

설명

이것은 특정 오염 기준 내에서 생산을 계획하는 예입니다.

소형 모델 유형 :NLP


카테고리 : 슬롯 무료체험 모델 라이브러리


메인 파일 : pollut.gms

$title 산업 오염 통제(POLLUT,SEQ=96)

$onText
이는 특정 오염 기준 내에서 생산을 계획하는 예입니다.

망가사리안, OL, 비선형 계획법. 1973년 뉴욕 맥그로 힐.

키워드: 비선형 프로그래밍, 생산 계획, 오염 제어, 에너지
          경제학
$offText

세트
   j '분야' / 식품, 섬유, 의류, 목재, 가구
                   펄프+제지, 인쇄, 화학, 석탄+석유, 고무
                   가죽, 점토+석재, 강철, nf-금속, 금속-pr
                   기계, 전기 기계, 운송, 예비 기계, 기타 /
   나는 '오염물질' / 대구, so2, 땅, 물 /;

테이블 w(j,i) '단위 하중'
                   대구 so2 육지 물
   음식 .08488 .00909 .02990 .07195
   직물 .03353 .02470 .08980 .17032
   의류 .03353 .02470 .02780 .01345
   목재 .00135 .00084 .06890 .01606
   가구 .00153 .00084 .03500 .01429
   펄프+종이 .23368 .07461 .04690 .15532
   인쇄 .07609 .05767 .01290 .01850
   화학물질 .07689 .05767 .05370 .09680
   석탄+석유 .03736 .01663 .27080 .02900
   고무 .02794 .00456 .06040 .09200
   가죽 .02794 .00456 .04980 .07320
   점토+석재 .00213 .08800 .11510 .09520
   강철 .00633 .02361 .08900 .07780
   nf-금속 .00091 .03376 .02670 .03720
   금속-pr .00125 .00860 .06790 .04930
   기계 .00089 .00376 .06210 .02480
   전자-마하 .00123 .00369 .02950 .02300
   운송 .00079 .00127 .07870 .04300
   prec-mach .00396 .00252 .03830 .03010
   기타 .00931 .00252 .04240 .03500;

테이블 z(j,*) '기타 데이터'
                     abkk0l0
   식품 9.600 .121 .1064 29406 24709
   직물 6.353 .194 .1611 21375 18918
   의류 9.818 .204 .0848 8423 20636
   목재 7.371 .181 .1428 13873 10457
   가구 10.220 .171 .0955 8470 9739
   펄프+종이 6.255 .145 .1759 36375 18880
   인쇄 8.149 .304 .2190 66016 44480
   화학물질 7.794 .146 .1439 80134 36526
   석탄+석유 8.400 .173 .1314 1327 758
   고무 9.933 .174 .0987 4414 4921
   가죽 11.069 .167 .0817 3709 6766
   점토+석재 6.528 .192 .1665 14496 9368
   강철 7.928 .116 .1448 102399 31127
   nf-금속 10.559 .091 .1026 28008 1166
   금속-pr 6.606 .227 .1567 69314 59525
   기계 7.153 .208 .1506 90014 63048
   일렉-마하 11.146 .151 .0895 29360 29839
   운송 6.884 .199 .1602 27687 16945
   prec-mach 6.660 .253 .1446 4009 4828
   기타 7.929 .182 .1256 24323 24569;

스칼라
   알파 / .6 /
   베타 / 1.4 /
   감마1 / 1.4 /
   감마2 / .9 /;

매개변수 tau(i) / cod .153e6, so2 .12e6, (땅, 물) .25e6 /;

변수
   k(j) '자본'
   l(j) '노동'
   ㅋㅋㅋ
   tl
   출력;

방정식
   객체
   eq4(i)
   eq5a
   eq5b
   kdef
   ldef;

obj.. 출력 =e= sum(j, z(j,"a")*k(j)**(1 - z(j,"b"))*l(j)**z(j,"b"));

eq4(i).. sum(j, w(j,i)/z(j,"k")*k(j)) =l= tau(i);

eq5a..tk =g= 감마2*tl;

eq5b..tk =l= 감마1*tl;

kdef..tk =e= sum(j, k(j));

ldef..tl =e= sum(j, l(j));

k.lo(j) = alpha*z(j,"k0"); k.up(j) = beta*z(j,"k0"); k.l(j) = z(j,"k0");
l.lo(j) = alpha*z(j,"l0"); l.up(j) = beta*z(j,"l0"); l.l(j) = z(j,"l0");

모델 1개/모두/;

nlp를 사용하여 최대 출력을 해결합니다.