DEA matlab
时间: 2023-10-31 13:54:30 浏览: 66
DEA Matlab代码是一种用于评价决策单元(DMU)效率的方法。在该方法中,通过选取决策单元的多项投入和产出数据,利用线性规划,以最优投入与产出作为生产前沿,构建数据包络曲线。有效点位于前沿面上,效率值为1,而无效点位于前沿面外,并被赋予一个大于0但小于1的相对效率值指标。这种方法的优势在于避免了确定各指标权重和输入/输出关系的繁琐过程。DEA方法可以用于评价天津市的可持续发展。
下面是一段DEA Matlab代码的示例:
```matlab
clc;clear
P = [14.40 0.65 31.30;16.90 0.72 32.20; 15.53 0.72 31.87;15.40 0.76 32.23; 14.17 0.76 32.40;13.33 0.69 30.77; 12.83 0.61 29.23;13.00 0.63 28.20; 13.40 0.75 28.80;14 0.84 29.10];
Q = [3621.00 0.00 ;3943 0.09;4086.67 0.07;4904.67 0.13; 6311.67 0.37;8173.33 0.59;10236.00 0.51; 12094.33 0.44;13603.33 0.58;14841 1];
P = P';
Q = Q';
size(-P')
size(Q')
n = size(P',1);
m = size(P,1);
s = size(Q,1);
A = [-P' Q'];
b = zeros(n,1);
LB = zeros(m,s,1);
UB = [];
for i = 1:n
f = [zeros(1,m) -Q(:,i)'];
Aeq = [P(:,i)',zeros(1,s)];
beq = 1;
w(:,i) = linprog(f,A,b,Aeq,beq,LB,UB);
E(i,i) = Q(:,i)'*w(m 1:m s,i);
end
theta = diag(E)';
fprintf('评价的结果如下:\n');
disp(theta);
```
这段代码用于计算评价结果,并将结果打印输出。评价结果如下:
1 至 5 列: 0.290184294242394, 0.285357129485820, 0.296826091916998, 0.342515144587570, 0.459471192759165
6 至 10 列: 0.718260869565217, 0.906910831773891, 1.000000000000000, 1.000000000000000, 1.000000000000000
这些结果表示了不同决策单元在DEA评价中的效率值。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>