[数据分析方法] 数据包络分析(DEA 模型)
适用问题
投入与产出的匹配问题;投入产出比
Python实现
引用库:Gurobi
Gurobi优化器是一个数学优化软件库,用于解决混合整数线性和二次优化问题。
https://blog.****.net/qq_40206371/article/details/121711906
DEA方法介绍
数据包络分析是一种用于测量具有多个输入和多个输出的决策单元( DMU) 相对效率的线性规划方法。该方法不需设定具体的函数形式和参数权重,无须量纲归一即可得到科学清晰的效率评价,被广泛应用于各行业投入产出效率测算。
美国运筹学家Charnes、Cooper、Rhodes 以“相对效率”概念为基础,根据多指标投入和多指标产出对相同类型的决策单元进行相对有效性或效益评价,称为 CCR 模型。之后该模型得到了进一步发展,Banker、Charnes、Cooper假定规模收益是可变的,将CCR模型扩展为BCC模型。
结果解读
数理解释
① DEA综合技术效益评估模型 (CCR模式):
综合技术效益反映的是决策单元在一定(最优规模时)投入要素的生产效率,是对决策单元的资源配置能力、资源使用效率等多方面能力的综合衡量与评价。
若最优解OE=1且松弛变量s‑=s+=0,说明决策单元是 “DEA 强有效”的,即任何一项投入的数量都无法减少,除非减少产出或增加另外一种投入的数量;任何一种产出的数量都无法增加,除非增加投入的数量或减少另外一种产出的数量。即:同时达到技术有效和规模有效。
若最优解OE=1且松弛变量s‑或s+不为0,说明决策单元是 “DEA 弱有效” 的,无法等比例减少各项投入的数量,除非减少产出的数量;无法等比例增加各项产出的数量,除非增加投入的数量。即:技术有效和规模有效只满足一个。
若最优解OE<1,说明决策单元是“非 DEA 有效”的,存在资源浪费现象(没有合理利用资源),既不是效率最佳也不是规模最佳。
对“DEA 弱有效”的决策按照s‑和s+的冗余情况进行调整,使之变得“DEA 强有效”。
② DEA技术效益评估模型(BBC模式):
BCC模式是从产出的角度探讨效率,即在相同的投入水准下,比较产出资源的达成情况,所得到的是“技术效益”(TE),DEA =1称为“技术有效”。
③DEA规模效益评估模型(SE):
规模效益是由于企业规模因素影响的生产效率。从投入资源的角度来看,在当前产出的水准下,比较投入资源的使用情况。综合技术效益、技术效益、规模效益满足关系式:
技术效益 = 1,规模效益 < 1,表示在目前的技术水平上,其投入资源的使用是有效率的,未能达到综合有效的根本原因在于其规模无效,因此其改革的重点在于如何更好地发挥其规模效益。
参考资料:
- DEA模型数学公式详解:https://zhuanlan.zhihu.com/p/60853027
- 谢锦园,金晓斌,张志宏,项晓敏,陆昱颖,周寅康.居住用地市场与区域社会经济发展协调性分析——以中国主要城市群为例[J].经济地理,2017,37(09):26-35+56.
一些有用的信息网站:
- 中国土地市场网,https://www.landchina.com/#/
- 中国地价监测网,https://www.landvalue.com.cn/
上一篇: 经验模式分解
下一篇: 数学建模的常用模型 - II.分类模型
推荐阅读
-
正负偏差变量 即 d2+、d2- 分别表示决策值中超出和未达到目标值的部分。而 di+、di- 均大于 0 刚性约束和目标约束(柔性目标约束有偏差) 在多目标规划中,>=/<= 在刚性约束中保持不变。当需要将约束条件转换为柔性约束条件时,需要将 >=/<= 更改为 =(因为已经有 d2+、d2- 用来表示正负偏差),并附加上 (+dii-di+) 注意这里是 +di、-di+!之所以是 +di,-di+,是因为需要将目标还原为最接近的原始刚性约束条件 优先级因素和权重因素 对多个目标进行优先排序和优先排序 目标规划的目标函数 是所有偏差变量的加权和。值得注意的是,这个加权和都取最小值。而 di+ 和 dii- 并不一定要出现在每个不同的需求层次中。具体分析需要具体问题具体分析 下面是一个例子: 题目中说设备 B 既要求充分利用,又要求尽可能不加班,那么列出的时间计量表达式即为:min z = P3 (d3- + d3 +) 使用 + 而不是 -d3 + 的原因是:正负偏差不可能同时存在,必须有 di+di=0 (因为判定值不可能同时大于目标值和小于目标值),而前面是 min,所以只要取 + 并让 di+ 和 dii- 都为正值即可。因此,得出以下规则: 最后,给出示例和相应的解法: 问题:某企业生产 A 和 B 两种产品,需要使用 A、B、C 三种设备。下表显示了与工时和设备使用限制有关的产品利润率。问该企业应如何组织生产以实现下列目标? (1) 力争利润目标不低于 1 500 美元; (2) 考虑到市场需求,A、B 两种产品的生产比例应尽量保持在 1:2; (3)设备 A 是贵重设备,严禁超时使用; (4)设备 C 可以适当加班,但要控制;设备 B 要求充分利用,但尽量不加班。 从重要性来看,设备 B 的重要性是设备 C 的三倍。 建立相应的目标规划模型并求解。 解:设企业生产 A、B 两种产品的件数分别为 x1、x2,并建立相应的目标计划模型: 以下为顺序求解法,利用 LINGO 求解: 1 级目标: 模型。 设置。 variable/1..2/:x;! s_con_num/1...4/:g,dplus,dminus;!所需软约束数量(g=dplus=dminus 数量)及相关参数; s_con(s_con_num);! s_con(s_con_num,variable):c;!软约束系数; 结束集 数据。 g=1500 0 16 15. c=200 300 2 -1 4 0 0 5; 结束数据 min=dminus(1);!第一个目标函数;!对应于 min=z 的第一小部分;! 2*x(1)+2*x(2)<12;!硬约束 @for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i)=g(i)); !使用设置完成的数据构建软约束表达式; ! !软约束表达式 @for(variable:@gin(x)); !将变量约束为整数; ! 结束 此时,第一级目标的最优值为 0,第一级偏差为 0: 第二级目标: !求 dminus(1)=0,然后求解第二级目标。 模型。 设置。 变量/1..2/:x;!设置:变量/1..2/:x; ! s_con_num/1...4/:g,dplus,dminus;!软约束数量及相关参数; s_con(s_con_num(s_con_num));! s_con(s_con_num,variable):c;! 软约束系数; s_con(s_con_num,variable):c;! 结束集 数据。 g=1500 0 16 15; c=200 300 2 -1 4 0 0 5; 结束数据 min=dminus(2)+dplus(2);!第二个目标函数 2*x(1)+2*x(2)<12;!硬约束 @for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i)=g(i)); ! 软约束表达式;! dminus(1)=0; !第一个目标结果 @for(variable:@gin(x)); ! 结束 此时,第二个目标的最优值为 0,偏差为 0: 第三目标 !求 dminus(2)=0,然后求解第三个目标。 模型。 设置。 变量/1..2/:x;!设置:变量/1..2/:x; ! s_con_num/1...4/:g,dplus,dminus;!软约束数量及相关参数; s_con(s_con_num(s_con_num));! s_con(s_con_num,variable):c;! 软约束系数; s_con(s_con_num,variable):c;! 结束集 数据。 g=1500 0 16 15; c=200 300 2 -1 4 0 0 5; 结束数据 min=3*dminus(3)+3*dplus(3)+dminus(4);!第三个目标函数。 2*x(1)+2*x(2)<12;!硬约束 @for(s_con_num(i):@sum(variable(j):c(i,j)*x(j))+dminus(i)-dplus(i)=g(i)); ! 软约束表达式;! dminus(1)=0; !第一个目标约束条件; ! dminus(2)+dplus(2)=0; !第二个目标约束条件 @for(variable:@gin(x));! 结束 最终结果为 x1=2,x2=4,dplus(1)=100,最优利润为
-
深入探索 C++ 对象模型的数据成员访问效率分析 (3)
-
R 语言与 Garch 模型和回归模型对股价的分析--原文来源:顶端数据部落公众号
-
测试用例设计方法 II(数据关联边界值分析)
-
数据包络分析(DEA)
-
数据包络分析(DEA)详解(基于第八届宁夏省级比赛)
-
数据包络分析入门
-
数学建模常用模型 10:数据包络(DEA)分析(投入产出法)
-
数学建模 - 数据包络分析的详细步骤和程序
-
数据包络分析(DEA)