数据包络分析(DEA)——BCC模型

写在前面:

博主本人大学期间参加数学建模竞赛十多余次,获奖等级均在二等奖以上。为了让更多学生在数学建模这条路上少走弯路,故将数学建模常用数学模型算法汇聚于此专栏,希望能够对要参加数学建模比赛的同学们有所帮助。


目录

  • [1. 引言](#1. 引言)
  • [2. 模型建立](#2. 模型建立)
  • [3. 模型求解](#3. 模型求解)

1. 引言

  关于数据包络分析法的CCR模型已经在上文中进行了介绍,CCR模型是规模收益不变(CRS)假设下的径向EDA模型,即模型中的 λ \lambda λ满足 λ ⩾ 0 \lambda \geqslant 0 λ⩾0,具体的模型原理可参阅链接: 数据包络分析------CCR模型
  但是在实际生产过程中,生产技术的规模收益并非CRS,若采用CRS假设,得出的技术效率并非完全是纯技术效率,而是包含了规模效率成分的综合效率。
一般来说,生产技术的规模收益要先后经历规模收益递增(IRS)、规模收益不变(CRS)、规模收益递减(DRS)三个阶段。如果无法确定研究样本处于哪个阶段,那么评价技术效率是应该选择可变规模收益(VRS)模型,即模型中的 λ \lambda λ满足 ∑ λ = 1 \sum \lambda=1 ∑λ=1。此时VRS模型得出的技术效率就是纯技术效率。

2. 模型建立

  BCC模型即规模收益可变(VRS)假设下的径向DEA模型。它与CCR模型的区别就是增加了等式约束 ∑ λ = 1 \sum \lambda=1 ∑λ=1。
  投入导向的BCC对偶模型:
min ⁡ θ \min \theta minθ s . t . { ∑ i = 1 n λ i x i j ⩽ θ x i j ∑ i = 1 n λ i y i r ⩾ y k r ∑ i = 1 n λ i = 1 λ i ⩾ 0 , j = 1 , ⋯   , m ; r = 1 , ⋯   , 3 q s.t.\left\{\begin{array}{c}\sum_{i=1}^{n} \lambda_{i} x_{i j} \leqslant \theta x_{i j} \\ \sum_{i=1}^{n} \lambda_{i} y_{i r} \geqslant y_{k r} \\ \sum_{i=1}^{n} \lambda_{i}=1 \\ \lambda_{i} \geqslant 0, j=1, \cdots, m ; r=1, \cdots, 3 q\end{array}\right. s.t.⎩ ⎨ ⎧∑i=1nλixij⩽θxij∑i=1nλiyir⩾ykr∑i=1nλi=1λi⩾0,j=1,⋯,m;r=1,⋯,3q
其中, k = 1 , ⋯   , n k=1, \cdots, n k=1,⋯,n。
  产出导向的BCC对偶模型:
max ⁡ ϕ \max \phi maxϕ s . t . { ∑ i = 1 n λ i x i j ⩽ x i j ∑ i = 1 n λ i y i r ⩾ ϕ y k r ∑ i = 1 n λ i = 1 λ i ⩾ 0 , j = 1 , ⋯   , m ; r = 1 , ⋯   , 3 q s.t.\left\{\begin{array}{c}\sum_{i=1}^{n} \lambda_{i} x_{i j} \leqslant x_{i j} \\ \sum_{i=1}^{n} \lambda_{i} y_{i r} \geqslant \phi y_{k r} \\ \sum_{i=1}^{n} \lambda_{i}=1 \\ \lambda_{i} \geqslant 0, j=1, \cdots, m ; r=1, \cdots, 3 q\end{array}\right. s.t.⎩ ⎨ ⎧∑i=1nλixij⩽xij∑i=1nλiyir⩾ϕykr∑i=1nλi=1λi⩾0,j=1,⋯,m;r=1,⋯,3q 其中, k = 1 , ⋯   , n k=1, \cdots, n k=1,⋯,n。

3. 模型求解

还是以下面这个问题为例:

  某市教委需要对六所重点中学进行评价,其相应的指标如表所示。表中的生均投入和非低收入家庭百分比是输入指标,生均写作得分和生均科技得分是输出指标。请根据这些指标,评价哪些学校是相对有效的。

根据上述建立的模型,编写投入导向的BCC模型的MATLAB程序如下:

matlab 复制代码
%投入导向BCC
w=[];
for i=1:n
    f=[zeros(1,n) 1];
    A=[X -X(:,i); -Y zeros(q,1)];
    b=[zeros(1,m) -Y(:,i)']';
    Aeq=[ones(1,n) 0];
    beq=1;
    LB=[zeros(n+1,1)];
    UB=[];
    w(:,i)=linprog(f,A,b,Aeq,beq,LB,UB);
end
BCC_IN=w(n+1,:)'

  得到的结果为:1,0.9804,1,0.9395,1,1
产出导向的BCC模型的MATLAB程序如下:

matlab 复制代码
%产出导向BCC
w=[];
for i=1:n
    f=[zeros(1,n) -1];
    A=[X zeros(m,1); -Y Y(:,i)];
    b=[X(:,i)' zeros(1,q)]';
    Aeq=[ones(1,n) 0];
    beq=1;
    LB=[zeros(n+1,1)];
    UB=[];
    w(:,i)=linprog(f,A,b,Aeq,beq,LB,UB);
end
BCC_OUT=1./w(n+1,:)'

  得到的结果为:1,0.9948,1,0.9466,1,1

  观察投入导向的BCC模型和产出导向的BCC模型结果可以发现,学校A、C、E、F这几个学校的投入产出是比较有效的。


相关推荐
兜里只有三分钱~2 天前
快递索赔场景评测|魔珐星云职场法务数字人线下落地实测
数学建模·数字人·数字
一切皆是因缘际会2 天前
RLHF奖励坍塌:大模型Reward漂移机理
人工智能·数学建模·ai
一切皆是因缘际会2 天前
VLM注视头GazeHead:视觉注意力分区机理
人工智能·数学建模·ai
一切皆是因缘际会3 天前
LLM轻量化联邦微调机理
数据结构·人工智能·数学建模·ai
汉克老师3 天前
GESP7级C++考试语法知识(二、指数函数(3、综合练习)
c++·算法·数学建模·指数函数·gesp7级·复利
88号技师3 天前
2026年2月一区SCI-交叉传播优化算法Propagation Alongside Crossover-附Matlab免费代码
开发语言·算法·数学建模·matlab·优化算法
Leo.yuan3 天前
数据建模怎么做?一文解析8种经典数据建模方法
大数据·数学建模
一切皆是因缘际会4 天前
隐层表征解构:LLM感知式幻觉稀疏成因
算法·数学建模·ai·架构
2301_764441335 天前
番茄钟+AI:高效专注的秘密武器
人工智能·算法·数学建模·动态规划·交互
hai3152475436 天前
一种通过空间几何转换进行软件编程计算的方式与现有计算的对比
人工智能·深度学习·数学建模·硬件架构·几何学·图论·拓扑学