0-1variables을 이용할 수 있는 fixed cost 예제를 풀어보자
a fuel additive, a solvent base, a carpet cleaning fluid를 만드는데 3가지 원료가 든다.
a fuel additive는 40달러, a solvent base 30달러, a carpet cleaning fluid 50달러의 이익이 생긴다.
fuel additive 1톤을 만드는 데에 0.4 원료1+0.6 원료3가, solvent base 1톤에는 0.5재료1+0.2 재료2+0.3 재료3가, carpet cleaning fluid 1톤에는 0.6 원료1+ 0.1 원료2, 0.3 원료3 만큼 든다.
원료 1은 21톤, 원료2는 5톤, 원료3은 21톤 만큼 갖고 있다.
그러나 이러한 제품을 생산하기 위해서는 set up cost가 든다. 생산을 할거면 고정비가 들고, 생산을 하지 않을거면 들지 않는다.
고정비를 제외하고도 만드는 비용이 최대이익이 될지 결정해야한다. 이 때 0-1variables를 이용해서 생산을 할지 말지라는 제약조건이 추가 된다. 제품을 최대로 만들 수 있는 양도 제한되어있다.
최대화 목적함수식을 세우면
Max 40F+30S+50c-200SF-50SS-400Sc
0.4F+0.5S+0.6C<20
0.2S+0.1C<5
0.6F+0.3S+0.3C<21
F<50SF
S<25SS
C<40SC
F,S,C>0; SF,SS,SC=0,1
이렇게 된다.
여기서 세팅비용을 S를 붙여서 나타내고 F의 최대 생산량 50보다 작은 의미인 F<50이라고만 나타내서는 안된다.
그러면 SF가 만약에 0이면 F를 생산자체를 하지 않는데 F가 값을 가질 수도 있기 때문이다.
SF가 0일때 F가 생산되지 않기 위해서 F<50이 아닌 F<50SF라고 나타내야한다.
고정비용을 지출하지 않으면 생산할 수 없으니깐 고정비용을 고려한 제약조건식을 세우는 것에 주의해야 한다.
이렇게 식을 세운 것을 MS60을 통해 실습해보면
이때 SF, SS, SCSMS 0-1 variables로 선택해야하고 F,S,C는 integer로 선택을 해도 되고 안해도 된다.
이러한 결과값이 나오게 된다.
그런데 만약에 식을 F<50SF가 아닌 F<50이런 식으로 제약조건식을 세웠다면 값이 어떻게 나왔을지도 MS60을 통해 확인해 보겠다.
이렇게 되면 SF, SS, SC가 모두 0으로 고정비용이 없기 때문에 제품을 생산할 수 없게되지만 FSC는 생산하는 값을 가지는 이상한 최적해가 나오게 된다. 그렇기 때문에 제약조건식을 세울 때 주의하여 세워야 함을 알 수 있다.
첫댓글 실험도 잘 했구나.