POLab
2017/01/29
【回到首頁】
本篇範例資料取自高強教授於2007發表的Paper:Efficiency decomposition in network data envelopment analysis: A relational model
※此為DEA中固定規模報酬(constant return to scale, CRS)的模型建構說明,並以投入導向的模組為例
固定規模報酬是指每一單位的投入可得到的產出量是固定的,並不會因為規模大小而改變,也就是說當投入量以等比例增加時,產出亦會以等比例增加,並在固定規模報酬的假設下,藉由將各決策單位(Decision Making Unit, DMU)的各項投入加權組合與各項產出加權組合互相比較計算其比值,以得出各個決策單位的相對效率值,且效率值介於0到1之間,而在CRS模式中所求得的效率值又稱之為總體效率值(overall efficiency, OE);投入導向指的是在相同產出水準下,比較各決策單位投入資源的使用效率。
- ErCRS: 決策單位r的效率值
- K: 決策單位(DMU)個數 r,k∈K
- I: 投入項個數 i∈I
- J: 產出項個數 j∈J
- ε: 極小的正值稱之為非阿基米德數(non-Archimedean constant),通常設為10-4或10-6(目的為了使任一投入或產出項皆不會被忽略)
- Xki: 決策單位k (k=1,...,K)使用第i (i=1,...,I)個投入項
- Ykj: 決策單位k (k=1,...,K)使用第j (j=1,...,J)個產出項
- urj: 決策單位r的第j個產出項之權重
- vri: 決策單位r的第i個投入項之權重
- 目標式: 找出一組對於受評決策單位r最有利的投入項與產出項之權重,以最大化其效率值
- 限制式: 效率值必須介於0到1之間,且各權重皆為正值
由於上述的數學模型為分數線性規劃(fractional linear programming)形式,除了會發生多重解的情況外,求解也較不易,因此透過轉換,將其變成下列線性規劃的模式,以方便求解。
※在此以一個簡單的範例來建構上述的數學模型,並說明如何利用Python-Gurobi進行建模
- 此範例為一個具有兩項投入及三項產出的系統,系統內部的各製程均被視為黑盒子般,在此不被考量。
- 共有五個決策單位要進行比較,其各自的產出項與投入項情形如下圖所示:
- 並能形成如下所示的CRS Model:
在此說明如何運用Python-Gurobi來建構CRS model
※完整程式碼可點擊這裡
from gurobipy import*
E={}
I=2 # 兩項投入
O=3 # 三項產出
#X、Y為各DMU的投入與產出情形
DMU,X,Y=multidict({('A'):[[11,14],[2,2,1]],('B'):[[7,7],[1,1,1]],('C'):[[11,14],[1,1,2]],('D'):[[14,14],[2,3,1]],('E'):[[14,15],[3,2,3]]})
- 透過for loop來計算每個決策單位r的效率
for r in DMU:
m=Model("CRS_model")
- 建立決策變數投入項與產出項權重 vri、 urj
v,u={},{}
for i in range(I):
v[r,i]=m.addVar(vtype=GRB.CONTINUOUS,name="v_%s%d"%(r,i),lb=0.0001)
for j in range(O):
u[r,j]=m.addVar(vtype=GRB.CONTINUOUS,name="u_%s%d"%(r,j),lb=0.0001)
m.update()
m.setObjective(quicksum(u[r,j]*Y[r][j] for j in range(O)),GRB.MAXIMIZE)
m.addConstr(quicksum(v[r,i]*X[r][i] for i in range(I))==1)
for k in DMU:
m.addConstr(quicksum(u[r,j]*Y[k][j] for j in range(O))-quicksum(v[r,i]*X[k][i] for i in range(I))<=0)
m.optimize()
E[r]="The efficiency of DMU %s:%0.3g"%(r,m.objVal)
for r in DMU:
print (E[r])
最後可得到如下所示的結果
從結果我們可知決策單位A、D、E與其他決策單位相比是相較有效率的,其效率值皆為1。
The efficiency of DMU A:1
The efficiency of DMU B:0.898
The efficiency of DMU C:0.848
The efficiency of DMU D:1
The efficiency of DMU E:1