설명
전형적인 2계층의 생산, 유통, 재고의 예입니다. 문제(pdi)는 arcnet 사용자 가이드에서 가져왔습니다.
소형 모델 유형 :LP
카테고리 : 크레이지 슬롯 모델 라이브러리
메인 파일 : pdi.gms
$title ARCNET - 생산 유통 및 재고(PDI,SEQ=10)
$onText
전형적인 2계층의 생산, 유통, 재고의 예입니다.
문제(pdi)는 arcnet 사용자 가이드에서 가져왔습니다.
ARCNET, ARCNET 사용자 가이드, 분석, 연구 및 계산,
1982년 텍사스 주 오스틴.
키워드: 선형 계획법, 유통 문제, 생산 계획, 재고 문제
$offText
세트
p '생산시설' / 하나, 둘, 셋 /
d '물류센터' / 동, 남, 서, 북 /
c '고객 영역' / 1*5 /
m '월' / 1월, 2월, 3월, 4월 /;
테이블 pfd(p,*) '생산 시설 데이터(표 12.1)'
최소 생산 최대 생산 초과 생산 생산 비용 초과 비용
* (단위) (단위) ( 단위) ($/단위) ($/단위)
하나 5000 1000 35 45
2개 1200 3000 500 40 43
3개 700 1500 38 ;
테이블 fdec(p,d) '첫 번째 분포 단계 비용(단위당 $)'
동쪽 남쪽 서쪽 북쪽
하나 10 12
둘 8 4 5
3 6 8;
테이블 sdec(d,c) '두 번째 분포 단계 비용(단위당 $)'
1 2 3 4 5
동쪽 15 19
남쪽 20 22 18
서쪽 16 18 19
북쪽 15 21;
테이블 dcd(d,*) '물류센터 데이터(표 12.3)'
최대 발명 유지 비용
* (단위) ($/단위)
동쪽 3000 2
남쪽 2500 2
서쪽 4000 1
북쪽 2500 3;
테이블 czd(c,*) '고객 영역 데이터 (표 12.5)'
최소 수요 최대 수요 수익
* (단위) (단위) ($/단위)
1 2000 2500 70
2 2500 68
3 2000 3000 65
4 1500 2000 72
5 1500 3000 71;
세트
크레이지 슬롯(p,d)
dc(d,c);
크레이지 슬롯(p,d) = 예$fdec(p,d);
dc(d,c) = 예$sdec(d,c);
크레이지 슬롯, dc, sdec를 표시합니다.
매개변수
pc(p,m) '생산비 정상 이동'
pco(p,m) '생산 비용 초과 근무'
revfac(m) '수익 요소' / (1월,2월) 1, (3월,4월) 1.1 /;
pc(p,m) = pfd(p,"생산 비용") + Floor(2**(ord(m)-1)/2);
pco(p,m)= pfd(p,"비용 초과") + ord(m) - (ord(m) < 카드(m));
디스플레이 PC, pco, revfac;
변수
x(p,d,m) '생산에서 유통까지의 배송'
y(d,c,m) '유통 센터에서 시장으로의 배송'
pn(p,m) '생산'
po(p,m) '생산: 초과 근무'
s(d,m) '저장 수준'
dm(c) '수요 수준'
h(d,m) '처리'
이익
수익
수송
생산
보유;
양수 변수 x, y, pn, po, s, h;
방정식
ib(d,m) '재고 잔고'
pb(p,m) '생산수지'
hb(d,m) '잔액 처리'
db(c,m) '수요잔고'
ar '수익 잔액'
'운송 잔액'에서
ap '제작비 잔액'
아 '재고보유비용 정의'
apr '이익 정의';
ib(d,m)..h(d,m) =e= s(d,m-1) + sum(p$크레이지 슬롯(p,d), x(p,d,m));
pb(p,m).. pn(p,m) + po(p,m) =e= sum(d$크레이지 슬롯(p,d), x(p,d,m));
hb(d,m)..s(d,m) =e= h(d,m) - sum(c$dc(d,c), y(d,c,m));
db(c,m).. sum(d$dc(d,c), y(d,c,m)) =e= dm(c);
ar.. 수익 =e= sum((d,c,m)$dc(d,c), revfac(m)*czd(c,"수익")*y(d,c,m));
at.. Transport =e= sum((d,m), sum(p$크레이지 슬롯(p,d), fdec(p,d)*x(p,d,m)) + sum(c$dc(d,c), sdec(d,c)*y(d,c,m)));
ap.. 생산 =e= sum((p,m), pc(p,m)*pn(p,m) + pco(p,m)*po(p,m));
아.. 보유 =e= sum((d,m), dcd(d,"hold-cost")*s(d,m));
4월..이익 =e= 수익 - 운송 - 생산 - 보유 + 10;
s.lo(d,"4월") = 200;
h.up(d,m) = dcd(d,"max-invent");
pn.lo(p,m) = pfd(p,"최소 생산");
pn.up(p,m) = pfd(p,"최대-생산");
po.up(p,m) = pfd(p,"과잉 생산");
dm.lo(c) = czd(c,"최소 수요");
dm.up(c) = czd(c,"최대 수요");
h.up, pn.lo를 표시합니다.
모델 pdi / 모두 /;
lp를 사용하여 이익을 극대화하는 pdi를 해결합니다.