$Title Chapter 3 (Fig. 3.12)
$Title Mathematical formulation of the input-oriented DEA model under strong and weak disposability and congestion index calculation and the corresponding GAMS code
$onText
If using this code, please cite:
---------------------------------------------------------------------------------
Emrouznejad, A., P. Petridis, and V. Charles (2023). Data Envelopment Analysis
with GAMS: A Handbook on Productivity Analysis, and Performance Measurement,
Springer, ISBN: 978-3-031-30700-3.
---------------------------------------------------------------------------------
Website: https://dataenvelopment.com/GAMS/
$offText
Sets j DMUs /DMU1*DMU10/
g Inputs and Outputs /ProdCost, TrnCost, HoldInv, SatDem, Rev/
i(g) Inputs /ProdCost, TrnCost,HoldInv/
r(g) Outputs /SatDem, Rev/;
alias(jj,j);
alias(kk,jj);
Table Data(j,g) Data for inputs and outputs
ProdCost TrnCost HoldInv SatDem Rev
DMU1 0.255 0.161 0.373 20 2.64
DMU2 0.98 0.248 0.606 6 5.29
DMU3 0.507 0.937 0.749 17 2.43
DMU4 0.305 0.249 0.841 2 8.99
DMU5 0.659 0.248 0.979 19 2.94
DMU6 0.568 0.508 0.919 17 0.75
DMU7 0.583 0.628 0.732 17 6.36
DMU8 0.627 0.675 0.738 10 7.2
DMU9 0.772 0.657 0.486 9 2.16
DMU10 0.917 0.639 0.234 8 7.3;
Variables efficiency objective function for model 1
efficiency1 objective function for model 2
Theta Strong disposability efficiency
Theta_tilde Weak disposability efficiency
Lambda(j) dual weights (Lambda values);
Nonnegative variables
Lambda(j) dual weights (Lambda values)
Parameters DMU_data(g) slice of data
eff_Theta(j) Strong disposability efficiency values
eff_Theta_tilde(j) Weak disposability efficiency values
Congestion(j) Congestion for each DMU
Lamres_s(j,j) peers for each DMU for strong disposability model
Lamres_w(j,j) peers for each DMU for weak disposability model;
Equations OBJ_s objective function for strong disposability
CON1_s(i) input constraint for strong disposability
CON2_s(r) output constraint for strong disposability
OBJ_w objective function for weak disposability
CON1_w(i) input constraint for weak disposability
CON2_w(r) output constraint for weak disposability
VRS VRS constraint;
OBJ_s.. efficiency=E=Theta;
CON1_s(i).. SUM(j, Lambda(j)*Data(j,i))=L=Theta*DMU_data(i);
CON2_s(r).. SUM(j, Lambda(j)*Data(j,r))=G=DMU_data(r);
OBJ_w.. efficiency1=E=Theta_tilde;
CON1_w(i).. SUM(j, Lambda(j)*Data(j,i))=E=Theta_tilde*DMU_data(i);
CON2_w(r).. SUM(j, Lambda(j)*Data(j,r))=G=DMU_data(r);
VRS.. SUM(j, Lambda(j))=E=1;
model Input_DEA_strong_disposability Input oriented DEA model for strong disposability /OBJ_s, CON1_s, CON2_s, VRS/;
model Input_DEA_weak_disposability Input oriented DEA model for weak disposability /OBJ_w, CON1_w, CON2_w, VRS/;
loop(jj,
DMU_data(g) = Data(jj,g);
solve Input_DEA_strong_disposability using LP minimizing Theta;
eff_Theta(jj)=Theta.l;
solve Input_DEA_weak_disposability using LP minimizing Theta_tilde;
eff_Theta_tilde(jj)=Theta_tilde.l;
Congestion(jj)=eff_Theta(jj)/eff_Theta_tilde(jj);
);
Display eff_Theta, eff_Theta_tilde, congestion;
execute_unload