赞
踩
写在前面:
博主本人大学期间参加数学建模竞赛十多余次,获奖等级均在二等奖以上。为了让更多学生在数学建模这条路上少走弯路,故将数学建模常用数学模型算法汇聚于此专栏,希望能够对要参加数学建模比赛的同学们有所帮助。
前面我们已经介绍了数据包络分析的CCR模型和BCC模型,具体可参阅链接: 数据包络分析——CCR模型和链接: 数据包络分析——BCC模型,而CCR模型和BCC模型都是径向模型,在径向模型中,效率改善主要指的是投入或产出的等比例线性缩放,同时忽略了平行于坐标轴的弱有效的情形,而SBM模型纳入无效率的松弛改进,保证最终的结果是强有效的。
基本的SBM模型形式为
min
ρ
=
1
−
1
m
∑
j
=
1
m
s
j
−
/
x
k
j
1
+
1
q
∑
r
=
1
q
s
r
−
/
y
k
r
s.t.
{
X
λ
+
s
−
=
x
k
Y
λ
−
s
+
=
y
k
λ
,
s
−
,
s
+
⩾
0
,
j
=
1
,
⋯
,
m
;
r
=
1
,
⋯
,
q
目标函数
ρ
∗
\rho^{*}
ρ∗表示效率值,该模型同时从投入和产出两个方面考察无效率的表现,故称为非径向模型。由于该模型为非线性模型,将该模型转化为线性模型,同时向模型中加入非期望产出得:
τ
∗
=
min
(
t
−
1
m
∑
j
=
1
m
s
j
−
x
k
j
)
s.t.
{
t
+
1
s
1
+
s
2
(
∑
r
=
1
s
1
s
r
g
y
k
r
g
+
∑
r
=
1
s
2
s
r
b
y
k
r
g
)
=
1
x
k
t
=
X
Λ
+
S
−
y
k
g
t
=
X
Λ
−
S
g
y
k
b
t
=
X
Λ
+
S
b
Λ
,
S
−
,
S
g
,
S
b
⩾
0
t
>
0
我们仍然用前面的例子:
某市教委需要对六所重点中学进行评价,其相应的指标如表所示。表中的生均投入和非低收入家庭百分比是输入指标,生均写作得分和生均科技得分是输出指标。请根据这些指标,评价哪些学校是相对有效的。
根据模型编写MATLAB代码如下:
%非期望产出SBM模型
clc,clear
X=[89.39 86.25 108.13 106.38 62.4 47.19;
64.3 99 99.6 96 96.2 79.9];
Y=[25.2 28.2 29.4 26.4 27.2 25.2;
223 287 317 291 295 222];
Z=[72 85 95 63 81 70]; %非期望产出:生均艺术得分
[m,n]=size(X);
s1=size(Y,1);
s2=size(Z,1);
c=1/(s1+s2);
rho=[];
w=[];
for i=1:n
f=[-1./(m*X(:,i)') zeros(1,s1) zeros(1,s2) zeros(1,n) 1];
A=[];
b=[];
UB=[];
LB=zeros(m+s1+s2+n+1,1);
Aeq=[zeros(1,m) c*1./Y(:,i)' c*1./Z(:,i)' zeros(1,n) 1;
eye(m) zeros(m,s1) zeros(m,s2) X -X(:,i);
zeros(s1,m) -eye(s1) zeros(s1,s2) Y -Y(:,i);
zeros(s2,m) zeros(s2,s1) eye(s2) Z -Z(:,i)];
beq=[1 zeros(m,1)' zeros(s1,1)' zeros(s2,1)'];
[w(:,i),rho(i)]=linprog(f,A,b,Aeq,beq,LB,UB);
end
rho'
得到每个学校的效率值为
可见在带非期望产出的情况下,学校A、D、E、F是有效的。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。