首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事
您的当前位置:首页正文

DEA的Matlab程序

2024-09-12 来源:画鸵萌宠网
--

模型((PC2R)的MATLAB程序 clear

X=[6,8,9]; %用户输入多指标输入矩阵X Y=[5,7,8]; %用户输入多指标输出矩阵Y n=size(X',1); m=size(X,1); s=size(Y,1); A=[-X' Y']; b=zeros(n, 1);

LB=zeros(m+s,1); UB=[]; for i=1:n;

f= [zeros(1,m) -Y(:,i)'];

Aeq=[X(:,i)' zeros(1,s)]; beq=1;

w(:,i)=LINPROG(f,A,b,Aeq,beq,LB,UB); %解线性规划,得DMU;的最佳权向量w; E(i, i)=Y(:,i)'*w(m+1:m+s,i); %求出DMUi的相对效率值Eii end

w %输出最佳权向量 E %输出相对效率值Eii

Omega=w(1:m,:) %输出投入权向量。 mu=w(m+1:m+s,:) %输出产出权向量。

模型(DC2R)的MATLAB程序 clear

X=[]; %用户输入多指标输入矩阵X Y=[]; %用户输入多指标输出矩阵Y n=size(X',1); m=size(X,1); s=size(Y,1);

epsilon=10^-10; %定义非阿基米德无穷小=10-10

f=[zeros(1,n) -epsilon*ones(1,m+s) 1]; %目标函数的系数矩阵:的系数为0,s-,s+的系数为-e,的系数为1;

A=zeros(1,n+m+s+1); b=0; %<=约束; LB=zeros(n+m+s+1,1); UB=[]; %变量约束;

LB(n+m+s+1)= -Inf; %-Inf表示下限为负无穷大。 for i=1:n;

Aeq=[X eye(m) zeros(m,s) -X(:,i)

Y zeros(s,m) -eye(s) zeros(s,1)]; beq=[zeros(m, 1 ) Y(:,i)];

w(:,i)=LINPROG (f,A,b,Aeq,beq,LB,UB); %解线性规划,得DMU的最佳权向量w; end

w %输出最佳权向量

lambda=w(1:n,:) %输出 s_minus=w(n+1:n+m,:) %输出s- s_plus=w(n+m+1:n+m+s,:) %输出s+ theta=w(n+m+s+1,:) %输出

--

--

w =

1.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0713 0.0000 0.0000 1.0000 0.2495 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000

lambda =

1.0000 0.0000 0.0000 0.0000

s_minus =

0.0000 0.0000 0.0000 0.0000

s_plus =

1.0e-005 *

0.0000

theta =

1.0000 0.0000 0.0000 0.0000 0.0000 1.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0010 0.0037 1.0000 1.0000 28.5097 0.0000 0.8553 0.0000 0.0713 0.2495 0.0000 0.0000 0.0000 0.0000 28.5097 0.1474 0.8553

--

因篇幅问题不能全部显示,请点此查看更多更全内容