슬롯 머신gms : 데이터 포괄 분석 - 슬롯 머신

설명

슬롯 머신(Data Envelopment Analysis)는 상대적인 데이터를 측정하는 기술입니다.
다양한 입력이 존재하는 조직 단위의 성과
출력이 비교를 어렵게 만듭니다.

     효율성 = 출력의 가중합 / 입력의 가중합

한 유닛의 효율성을 극대화하면서 동시에 효율성을 극대화하는 중량을 찾아보세요.
이 가중치를 사용하는 다른 장치의 효율성은 1 미만입니다. 원시
이중 공식이 제시됩니다.

소형 모델 유형 :LP


카테고리 : 슬롯 머신 모델 라이브러리


메인 파일 : 슬롯 머신gms

$title 데이터 봉투 분석 - 슬롯 머신 (슬롯 머신SEQ=192)

$onText
슬롯 머신(Data Envelopment Analysis)는 상대적인 데이터를 측정하는 기술입니다.
다양한 입력이 존재하는 조직 단위의 성과
출력이 비교를 어렵게 만듭니다.

     효율성 = 출력의 가중합 / 입력의 가중합

한 유닛의 효율성을 극대화하면서 동시에 효율성을 극대화하는 중량을 찾아보세요.
이 가중치를 사용하는 다른 장치의 효율성은 1 미만입니다. 원시
이중 공식이 제시됩니다.

Dyson, Thanassoulis 및 Boussofiane, 슬롯 머신 튜토리얼.
워릭 경영대학원. http://www.deazone.com/tutorial/

키워드: 선형 계획법, 데이터 포괄 분석, 통계
$offText

세트
   나는 '단위'
   (i) '선택된 단위'입니다.
   j '입력 및 출력'
   ji(j) '입력'
   jo(j) '출력';

매개변수
   data(i,j) '단위 입력 출력'
   vlo 'v 하한'
   ulo 'u 하한'
   표준 '정규화 상수';

변수
   v(ji) '입력 가중치'
   u(jo) '출력 가중치'
   eff '효율성'
   var '이중 볼록성'
   lam(i) '이중 가중치'
   vs(ji) '입력 이중'
   us(jo) '출력 이중'
   z;

양수 변수 u, v, vs, us, lam;

방정식
   defe(i) '효율성 정의 - 가중 출력'
   denom(i) '가중 입력'
   라임(i) '출력 / 입력 < 1'
   dii(i,ji) '입력 쌍대'
   dio(i,jo) '출력 이중'
   defvar '규모에 따른 가변 복귀'
   dobj '이중 목표';

* 원시 모델
defe(is).. eff =e= sum(jo, u(jo)*data(is,jo)) - 1*var;

denom(is).. sum(ji, v(ji)*data(is,ji)) =e= 규범;

라임(i).. sum(jo, u(jo)*data(i,jo)) =l= sum(ji, v(ji)*data(i,ji)) + var;

* 듀얼 모델
dii(is,ji).. sum(i, lam(i)*data(i,ji)) + vs(ji) =e= z*data(is,ji);

dio(is,jo).. sum(i, lam(i)*data(i,jo)) - us(jo) =e= data(is,jo);

defvar..sum(i, lam(i)) =e= 1;

dobj..eff =e= norm*z - vlo*sum(ji, vs(ji)) - ulo*sum(jo, us(jo));

모델
   deap 'primal' / 디페, 데놈, 라임 /
   deadc 'CRS와 듀얼' / dobj, dii, dio /
   deadv 'Dual with VRS' / dobj, dii, dio, defvar /;

세트
   i '단위' / Depot1*Depot20 /
   j '입력 및 출력' / 재고, 임금, 발행물, 영수증, 요청 /
   ji(j) '입력' / 주식, 임금 /
   jo(j) '출력' / 문제, 영수증, 요청 /;

테이블 데이터(i,j)
            재고 임금 발행 영수증 요청
   디포1 3 5 40 55 30
   디포2 2.5 4.5 45 50 40
   디포3 4 6 55 45 30
   디포4 6 7 48 20 60
   디포5 2.3 3.5 28 50 25
   디포6 4 6.5 48 20 65
   창고7 7 10 80 65 57
   디포8 4.4 6.4 25 48 30
   창고9 3 5 45 64 42
   디포10 5 7 70 65 48
   디포11 5 7 45 65 40
   디포12 2 4 45 40 44
   디포13 5 7 65 25 35
   디포14 4 4 38 18 64
   디포15 2 3 20 50 15
   디포16 3 6 38 20 60
   디포17 7 11 68 64 54
   디포18 4 6 25 38 20
   디포19 3 4 45 67 32
   창고20 3 6 57 60 40;

$eolCom //
option limCol = 0 // 열 목록 없음
       limRow = 0 // 행 목록 없음
       solvOpt = 대체;  // 이전 var 및 equ 값을 유지하지 마세요.

var.fx = 0;       // 원시 모델로 CRS를 실행합니다.
*var.lo = -inf;   // 원시 모델로 VRS를 실행합니다.
*var.up = +inf;   // 원시 모델로 VRS를 실행합니다.
vlo = 1e-4;
ulo = 1e-4;
표준 = 100;

v.lo(ji) = vlo;
u.lo(jo) = ulo;

*deadc.solPrint = %solPrint.quiet%;
*deadv.solPrint = %solPrint.quiet%;
*deap.solPrint = %solPrint.quiet%;

Set ii(i) '분석할 단위 집합' / depot1, depot2, depot18 /;

*ii(i) = 예;      // 모든 저장소를 실행하는 데 사용
이다(i) = 아니오;

매개변수 담당자 '요약 보고서';

루프(ii,
   이다(ii) = 그렇습니다;

   우리에게 lp max eff를 해결하십시오;
   rep(i,ii) = sum(jo, u.l(jo)*data(i,jo))/sum(ji, v.l(ji)*data(i,ji));
   담당자('MSt-p',ii) = deap.modelStat;

   문제 해결 lp min eff;
   담당자('MSt-d',ii) = deadc.modelStat;
   담당자('obj-check',ii) = deadc.objVal - deap.objVal;
   이다(ii) = 아니오;
);

담당자(i,'Min') = smin(ii, 담당자(i,ii));
담당자(i,'최대') = smax(ii, 담당자(i,ii));
담당자(i,'Avg') = 합계(ii, 담당자(i,ii))/카드(ii);

디스플레이 담당자;