楼主: jacobwww
3220 10

[问答] 关于DEA在Matlab里面实现,报错了 [推广有奖]

  • 1关注
  • 8粉丝

讲师

41%

还不是VIP/贵宾

-

威望
0
论坛币
13553 个
通用积分
3.8893
学术水平
23 点
热心指数
21 点
信用等级
9 点
经验
9327 点
帖子
416
精华
0
在线时间
330 小时
注册时间
2012-7-25
最后登录
2022-11-28

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
4.95 3.69 3.53 4.01 4.15
0.14 0.19 0.84 0.67 0.28
15.49 14.88 18.75 21.03 28.63
15.08 18.28 18.94 20.35 53.48
99.71 113.82 118.03 115.10 140.73
以上可以作为Matlab中X=[]输入,也就是输入指标
245.63 321.77 372.52 400.03 576.93
0.20 2.30 2.49 1.97 2.55
22.28 29.22 20.31 8.96 9.98
83.70 193.59 105.34 109.94 127.27
99.63 102.10 98.29 94.08 95.04
8.22 1.13 7.58 3.49 3.42
Y=[],输出指标

主要是求解DEA的CCR模型,你看网上给的模型的代码,看在你的Matlab上可以运行吗?谢谢
clear
X=[ ]; %用户输入多指标输入矩阵X
Y=[ ]; %用户输入多指标输出矩阵Y
[m,n]=size(X);s=size(Y,1);
epsilon=10^-10; %定义非阿基米德无穷小e =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 *
附上一个pdf里面讲解的
               
                 DMU1 DMU2 DMU3 DMU4 DMU5
投入
教职工(人)       60 70 85 106 35
教职工工资(万元) 156 200 157 263 105
运转经费(万元)   50 180 100 86 30
产出
毕业的本科生(人)  80 60 90 96 30
毕业的研究生(人)  12 13 20 17 8
发表的论文(篇)    27 25 15 28 3
完成的科研项目(项)4 2 5 5 1
用同样的程序运行后,得到结果了(我困惑了,为什么的我那个矩阵就不行呢,报错“Subscripted assignment dimension mismatch.”)
         DMU1 DMU2 DMU3 DMU4 DMU5
入*  1.0000 0.8472 0.0000 1.0964 0.0000
     0.0000 0.0000 0.0000 0.0000 0.0000
     0.0000 0.1417 1.0000 0.0536 0.0000
     0.0000 0.0000 0.0000 0.0000 0.0000
     0.0000 0.0000 0.0000 0.3464 1.0000
     0.0000 0.0000 0.0000 4.5215 0.0000
(以上也就是lambda的符号)
s*- 0.0000 25.2345 0.0000 0.0000 0.0000
     0.0000 105.1508 0.0000 0.0000 0.0000
     0.0000 20.5278 0.0000 6.9272 0.0000
(以上是松弛变量)
s*+ 0.0000 0.0000 0.0000 0.0000 0.0000
     0.0000 0.0000 0.0000 3.4454 0.0000
     0.0000 2.0972 0.0000 0.0000 0.0000
(也是松弛变量)
q *  1.0000 0.8982 1.0000 0.8206 1.0000
(效率值,1.000表示有效)
帮忙看看吧,我的那个X=[],和Y=[];为什么无法运行啊?往共同探讨,一起共享经验。

二维码

扫码加我 拉你入群

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

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

关键词:MATLAB matla atlab Lab Atl 指标 阿基米德 用户

Fortune does favor the bold and you'll never know what you're capable of if you don't try.
沙发
jacobwww 发表于 2012-9-15 21:46:34 |只看作者 |坛友微信交流群
问题已经解决了,现在看比较简单。
Fortune does favor the bold and you'll never know what you're capable of if you don't try.

使用道具

藤椅
zw_connie 发表于 2012-9-25 15:15:53 |只看作者 |坛友微信交流群
jacobwww 发表于 2012-9-15 21:46
问题已经解决了,现在看比较简单。
樓上您好!!想麻煩問您,您有用過Matlab解決超效率DEA嗎?謝謝啊

使用道具

板凳
尛布奌 发表于 2015-4-19 21:42:59 |只看作者 |坛友微信交流群
楼主,我想问问你那个错误怎么处理的,我也遇到了,我做人家给的例子是正确的,可是用自己的数据,就报错了,跟你说的错误一样的。

使用道具

报纸
尛布奌 发表于 2015-5-6 16:08:51 |只看作者 |坛友微信交流群
已经解决了。谢谢楼主。

使用道具

地板
jacobwww 发表于 2015-6-4 11:48:14 |只看作者 |坛友微信交流群
zw_connie 发表于 2012-9-25 15:15
樓上您好!!想麻煩問您,您有用過Matlab解決超效率DEA嗎?謝謝啊
Matlab解决S-EDA有现成模板套用,去百度搜索即可。

使用道具

7
magicsun 发表于 2015-6-5 06:20:03 来自手机 |只看作者 |坛友微信交流群
应该说下怎么解决的。

使用道具

8
jacobwww 发表于 2015-6-8 16:54:43 |只看作者 |坛友微信交流群
magicsun 发表于 2015-6-5 06:20
应该说下怎么解决的。
如果你不想用Matlab,直接下载超效率软件即可用Excel解决,很方便。
PS:不要问我要软件,我这里都删掉了,几年前的东西了。百度就有,自己动手,论文无忧。
三大城市群超效率对比9.9.jpg
Fortune does favor the bold and you'll never know what you're capable of if you don't try.

使用道具

9
magicsun 发表于 2015-6-8 16:59:02 |只看作者 |坛友微信交流群
这个可以做三阶段吗?

使用道具

10
jacobwww 发表于 2015-6-14 08:40:28 |只看作者 |坛友微信交流群
magicsun 发表于 2015-6-8 16:59
这个可以做三阶段吗?

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

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

GMT+8, 2024-4-28 15:51