楼主: 萨蒂云桀
1309 8

初学DEA者。。。。。 [推广有奖]

  • 0关注
  • 1粉丝

初中生

33%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
251 点
帖子
13
精华
0
在线时间
0 小时
注册时间
2014-11-14
最后登录
2015-12-14

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
在MATLAB中如何实现DEA???????求求。。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:DEA MATLAB atlab matla 如何实现 如何

沙发
whqisong 发表于 2014-11-14 22:20:54 |只看作者 |坛友微信交流群
DEA很高大上的样子

使用道具

藤椅
枫回路转 发表于 2014-11-14 22:37:43 |只看作者 |坛友微信交流群
给你提供一个程序,按提示添加X和Y矩阵就行了

%数据包络分析程序
clear
X=[ … ]; %用户输入多指标输入矩阵X
Y=[ … ]; %用户输入多指标输出矩阵Y
n=size(X',1);m=size(X,1);s=size(Y,1);
epsilon=10^-10;
f=[zeros(1,n) -epsilon*ones(1,m+s) 1];
A=zeros(1,n+m+s+1); b=0;
LB=zeros(n+m+s+1,1);UB=[];
LB(n+m+s+1)=-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); %解线性规划,得DMUi 的最佳权向量wi
end
w %输出最佳权向量
lambda=w(1:n,:) %输出l *
s_minus=w(n+1:n+m,:) %输出s*-
s_plus=w(n+m+1:n+m+s,:) %输出s*+
theta=w(n+m+s+1,:) %输出q *

使用道具

板凳
萨蒂云桀 发表于 2014-11-18 18:34:03 |只看作者 |坛友微信交流群
枫回路转 发表于 2014-11-14 22:37
给你提供一个程序,按提示添加X和Y矩阵就行了

%数据包络分析程序
添加了,不同行和列的矩阵就无法出结果

使用道具

报纸
萨蒂云桀 发表于 2014-11-18 18:35:24 |只看作者 |坛友微信交流群
枫回路转 发表于 2014-11-14 22:37
给你提供一个程序,按提示添加X和Y矩阵就行了

%数据包络分析程序
不知道怎么修改

使用道具

地板
萨蒂云桀 发表于 2014-11-18 18:35:58 |只看作者 |坛友微信交流群
枫回路转 发表于 2014-11-14 22:37
给你提供一个程序,按提示添加X和Y矩阵就行了

%数据包络分析程序
还是非常谢谢你

使用道具

7
萨蒂云桀 发表于 2014-11-18 19:15:57 |只看作者 |坛友微信交流群
枫回路转 发表于 2014-11-14 22:37
给你提供一个程序,按提示添加X和Y矩阵就行了

%数据包络分析程序
不好意思我看错了,是另一个程序

使用道具

8
萨蒂云桀 发表于 2014-11-18 19:19:35 |只看作者 |坛友微信交流群
枫回路转 发表于 2014-11-14 22:37
给你提供一个程序,按提示添加X和Y矩阵就行了

%数据包络分析程序
这个怎么修正

使用道具

9
萨蒂云桀 发表于 2014-11-18 19:23:55 |只看作者 |坛友微信交流群
枫回路转 发表于 2014-11-14 22:37
给你提供一个程序,按提示添加X和Y矩阵就行了

%数据包络分析程序
clear
X=[
60   70   85   106  35
156  200  157  263  105
50   180  100   86   30
];
Y=[
80  60  90  96  30
12  13  20  17  8
27  25  15  28  3
4   2   5   5   1
];
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);
      E(i,i)=Y(:,i)'*w(m+1:m+s,i);
end
w
E
omega=w(1:m,:)
mu=w(m+1:m+s,:)
    如何修改啊???拜托了

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-27 14:55